.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;color:#f3dfa5;background-color:#040a14;color-scheme:dark;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--color-text: #f3dfa5;--color-text-secondary: #f3dfa5cc;--color-text-muted: #dbca97;--color-text-dark: #0c1923;--color-border: #3a312d;--color-border-light: #19242c;--color-border-frame: #52504a;--color-bg: #040a14;--color-bg-frame: #050f18;--color-bg-frame-glow: #243a4a;--color-bg-mid: #7e6945;--color-bg-card: #050f18;--color-bg-card-top: #19242c;--color-bg-card-bottom: #050f18;--color-bg-light: #f3dfa5;--color-bg-hover: #3a312d;--color-primary: #e4b95e;--color-primary-hover: #bf9948;--color-secondary: #956639;--color-secondary-hover: #764d25;--color-accent: #f3dfa5;--color-accent-hover: #bf834d;--color-success: #dbca97;--color-success-light: #08692f;--color-error: #d9736b;--color-error-light: #210000;--color-warning: #f59e0b;--color-warning-dark: #d97706;--color-warning-light: #2e2516;--color-warning-alt: #ffb74d;--color-error-dark: #c93e40;--color-info: #64b5f6;--color-lobby: #bd9b65;--color-lobby-hover: #705d40;--color-lobby-light: #1a3a4a;--color-draft: #d4a017;--color-ready: #b9d8cc;--color-ready-hover: #27ae60;--color-perm-play: #c7b481;--color-perm-view: #648af6;--color-perm-playback: #ce93d8;--color-perm-report: #ffb74d;--color-perm-edit: #ef9a9a;--color-sqa-yes: #2e7d4f;--color-sqa-no: #e84848;--font-size-h1: 2rem;--font-weight-h1: 700;--font-size-h2: 1.25rem;--font-weight-h2: 600;--font-size-body: 1rem;--font-weight-body: 400;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .2), 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px -1px rgba(0, 0, 0, .3), 0 2px 4px -1px rgba(0, 0, 0, .2);--shadow-lg: 0 10px 25px -3px rgba(0, 0, 0, .4), 0 4px 10px -2px rgba(0, 0, 0, .25);--shadow-xl: 0 20px 40px -4px rgba(0, 0, 0, .5), 0 8px 16px -4px rgba(0, 0, 0, .3);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--transition-fast: .15s ease;--transition-normal: .2s ease}:root[data-theme=high-contrast]{color-scheme:dark;--color-text: #ffffff;--color-text-secondary: #ffffffdd;--color-text-muted: #e0e0e0;--color-text-dark: #000000;--color-border: #888888;--color-border-light: #555555;--color-border-frame: #aaaaaa;--color-bg: #000000;--color-bg-frame: #0a0a0a;--color-bg-frame-glow: #1a3050;--color-bg-mid: #a08050;--color-bg-card: #0a0a0a;--color-bg-card-top: #1a1a1a;--color-bg-card-bottom: #0a0a0a;--color-bg-light: #ffffff;--color-bg-hover: #333333;--color-primary: #ffd700;--color-primary-hover: #e6c200;--color-secondary: #cc7a30;--color-secondary-hover: #a05a18;--color-accent: #ffffff;--color-accent-hover: #e6a040;--color-success: #00e676;--color-success-light: #003d1a;--color-error: #ff1744;--color-error-light: #3d0000;--color-error-dark: #ff5252;--color-warning: #ffab00;--color-warning-dark: #ff8f00;--color-warning-light: #3d2e00;--color-warning-alt: #ffc107;--color-info: #40c4ff;--color-lobby: #ffd54f;--color-lobby-hover: #a08030;--color-lobby-light: #1a3550;--color-draft: #ffca28;--color-ready: #69f0ae;--color-ready-hover: #00c853;--color-perm-play: #fff176;--color-perm-view: #82b1ff;--color-perm-playback: #ea80fc;--color-perm-report: #ffcc80;--color-perm-edit: #ff8a80;--color-sqa-yes: #00e676;--color-sqa-no: #ff1744;--shadow-sm: 0 1px 4px rgba(0, 0, 0, .5), 0 1px 3px rgba(0, 0, 0, .5);--shadow-md: 0 4px 10px rgba(0, 0, 0, .6), 0 2px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .7), 0 4px 12px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 50px rgba(0, 0, 0, .8), 0 8px 20px rgba(0, 0, 0, .6)}:root[data-theme=high-contrast] .main-frame{border-width:3px}:root[data-theme=high-contrast] input,:root[data-theme=high-contrast] textarea,:root[data-theme=high-contrast] select{border-color:#888}:root[data-theme=high-contrast] input:focus,:root[data-theme=high-contrast] textarea:focus,:root[data-theme=high-contrast] select:focus{outline:3px solid var(--color-primary);outline-offset:1px}:root[data-theme=high-contrast] button:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}:root[data-theme=light]{color:#111118;background-color:#f5f5f0;color-scheme:light;--color-text: #111118;--color-text-secondary: #2a2a35;--color-text-muted: #3d3d4a;--color-text-dark: #ffffff;--font-weight-body: 450;--font-weight-h2: 700;--font-weight-h1: 800;--color-border: #b0afa8;--color-border-light: #d0cfc8;--color-border-frame: #908f88;--color-bg: #f5f5f0;--color-bg-frame: #ffffff;--color-bg-frame-glow: #e8e0c8;--color-bg-mid: #8a7550;--color-bg-card: #ffffff;--color-bg-card-top: #f0efe8;--color-bg-card-bottom: #ffffff;--color-bg-light: #111118;--color-bg-hover: #e8e7e0;--color-primary: #7a6220;--color-primary-hover: #5e4a16;--color-secondary: #6a4220;--color-secondary-hover: #4e3014;--color-accent: #111118;--color-accent-hover: #7a4a20;--color-success: #1a6b3a;--color-success-light: #d4edda;--color-error: #b71c1c;--color-error-light: #fce4e4;--color-error-dark: #a01616;--color-warning: #c44200;--color-warning-dark: #a03600;--color-warning-light: #fff3e0;--color-warning-alt: #c44200;--color-info: #0d47a1;--color-lobby: #5e4e1e;--color-lobby-hover: #463a14;--color-lobby-light: #d4e6f1;--color-draft: #7a6220;--color-ready: #1a6b3a;--color-ready-hover: #14532a;--color-perm-play: #5a4a18;--color-perm-view: #0d47a1;--color-perm-playback: #6a1b9a;--color-perm-report: #c44200;--color-perm-edit: #b71c1c;--color-sqa-yes: #1a6b3a;--color-sqa-no: #b71c1c;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .08);--shadow-md: 0 4px 8px -1px rgba(0, 0, 0, .12), 0 2px 4px -1px rgba(0, 0, 0, .08);--shadow-lg: 0 10px 25px -3px rgba(0, 0, 0, .15), 0 4px 10px -2px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 40px -4px rgba(0, 0, 0, .18), 0 8px 16px -4px rgba(0, 0, 0, .12)}:root[data-theme=light] .main-frame{background:radial-gradient(ellipse at top right,var(--color-bg-frame-glow) 0%,transparent 60%),var(--color-bg-frame);border-color:var(--color-border-frame);box-shadow:var(--shadow-lg)}:root[data-theme=light] input,:root[data-theme=light] textarea,:root[data-theme=light] select{background:#fff;color:#111118;border-color:#b0afa8}:root[data-theme=light] input:focus,:root[data-theme=light] textarea:focus,:root[data-theme=light] select:focus{outline:2px solid var(--color-primary);outline-offset:1px;border-color:var(--color-primary)}:root[data-theme=light] .pill-no-avatar{background:var(--color-primary);color:#fff}:root[data-theme=light] .header-brand{color:var(--color-primary)}:root[data-theme=light] .mobile-menu{background:#fff;border-color:var(--color-border-frame)}:root[data-theme=light] .mobile-menu-overlay{background:#0000004d}:root[data-theme=light] body{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}:root[data-theme=light] h1,:root[data-theme=light] h2,:root[data-theme=light] h3,:root[data-theme=light] h4{color:var(--color-text);font-weight:700}:root[data-theme=light] label,:root[data-theme=light] .form-label,:root[data-theme=light] th{font-weight:600;color:var(--color-text)}:root[data-theme=light] td{color:var(--color-text)}:root[data-theme=light] button{font-weight:500}:root[data-theme=light] input::placeholder,:root[data-theme=light] textarea::placeholder{color:#6b6b78}:root[data-theme=light] *::-webkit-scrollbar-thumb{background:#a09f98}:root[data-theme=light] *::-webkit-scrollbar-thumb:hover{background:#808078}:root[data-theme=light] *::-webkit-scrollbar-track{background:#e0dfd8}:root[data-theme=light] .social-post-card-name{color:inherit}:root[data-theme=light] .social-post-card-handle{color:inherit;opacity:.7}:root[data-theme=light] .social-post-card-body p{color:inherit;opacity:.85}:root[data-theme=light] .social-post-reaction{color:inherit;opacity:.7}:root[data-theme=light] .social-post-card-reactions{border-top-color:currentColor;border-top-color:color-mix(in srgb,currentColor 20%,transparent)}:root[data-theme=light] .social-post-reaction svg{opacity:.85}:root[data-theme=light] .session-card-voted{background:#fff;color:#111118;box-shadow:0 2px 8px #00000026}:root[data-theme=light] .row-action.row-action-disabled,:root[data-theme=light] .row-action:disabled{background:#0000000a!important;color:#00000040!important;border-color:#0000001a!important}:root[data-theme=light] .row-action:disabled:hover{background:#0000000a!important}:root[data-theme=light] .perm-toggle-off{background:#0000000a;color:#0000004d;border-color:#0000001a}:root[data-theme=light] .perm-toggle-off:not(:disabled):hover{background:#00000014;color:#00000080}:root[data-theme=light] .perm-toggle-unavailable{background:#00000008;color:#0003;border-color:#00000014}:root[data-theme=light] .btn-advance-turn{border-color:#0000004d!important;box-shadow:0 0 12px #8c6e1e33}:root[data-theme=light] .btn-advance-turn:hover:not(:disabled){border-color:#00000080!important;box-shadow:0 0 18px #8c6e1e59}:root[data-theme=light] .role-tab{background:#0000000a;color:var(--color-text-secondary)}:root[data-theme=light] .role-tab:hover{background:#00000014}:root[data-theme=light] .role-tab.active{background:#1964c81f;border-color:#1565c0;color:#0d47a1}:root[data-theme=light] .role-selector-label{color:var(--color-text-muted)}:root[data-theme=light] .role-selector-btn{background:#0000000a;color:var(--color-text-secondary)}:root[data-theme=light] .role-selector-btn:hover{background:#00000014;color:var(--color-text)}:root[data-theme=light] .role-selector-btn.active{background:#1964c81f;border-color:#1565c0;color:#0d47a1}:root[data-theme=light] .panel-role-badge{background:#1964c826;color:#0d47a1}:root[data-theme=light] .role-prompts-tabs{background:#00000008}:root[data-theme=light] .role-prompt-hint,:root[data-theme=light] .option-video-hint{color:var(--color-text-muted)}:root[data-theme=light] .bg-anim-card{background:#00000005}:root[data-theme=light] .bg-anim-card:hover{background:#0000000d;border-color:#00000026}:root[data-theme=light] .bg-anim-card-settings{border-top-color:var(--color-border-light)}:root[data-theme=light] .panel-node--leaf:hover{border-color:#0003}:root[data-theme=light] .qt-header h3,:root[data-theme=light] .qt-modal h3{color:var(--color-text)}:root[data-theme=light] .qt-summary,:root[data-theme=light] .qt-empty{color:var(--color-text-muted)}:root[data-theme=light] .qt-node{background:#00000005}:root[data-theme=light] .qt-node:hover{border-color:#0003;background:#0000000a}:root[data-theme=light] .qt-node-root{border-left-color:#1450a080}:root[data-theme=light] .qt-node-branch{border-left-color:#b4641e80}:root[data-theme=light] .qt-node-index{color:var(--color-text-muted)}:root[data-theme=light] .qt-node-branch .qt-node-index{color:#a05014cc}:root[data-theme=light] .qt-node-condition{background:#b4641e1a;color:#a05014d9}:root[data-theme=light] .qt-node-title{color:var(--color-text)}:root[data-theme=light] .qt-node-type{background:#0000000f;color:var(--color-text-muted)}:root[data-theme=light] .qt-action-btn{background:#0000000a;color:var(--color-text-secondary)}:root[data-theme=light] .qt-action-btn:hover{background:#00000014;color:var(--color-text)}:root[data-theme=light] .qt-action-delete{color:#b71c1c;border-color:#b71c1c40}:root[data-theme=light] .qt-action-delete:hover{background:#b71c1c1a;color:#a01616}:root[data-theme=light] .qt-children{border-left-color:#0000001a}:root[data-theme=light] .qt-modal-field select,:root[data-theme=light] .qt-modal-field input[type=text],:root[data-theme=light] .qt-modal-field input[type=number]{background:#fff;color:var(--color-text)}:root[data-theme=light] .qt-view-toggle-btn{color:var(--color-text-muted)}:root[data-theme=light] .qt-view-toggle-btn:hover{color:var(--color-text-secondary)}:root[data-theme=light] .qt-view-toggle-btn.active{background:#00000014;color:var(--color-text)}:root[data-theme=light] .scenario-editor-toolbar{background:#fffffff2;border-bottom-color:var(--color-border)}:root[data-theme=light] .scenario-editor-tab{background:#0000000a;color:var(--color-text-muted)}:root[data-theme=light] .scenario-editor-tab:hover{background:#00000014}:root[data-theme=light] .scenario-editor-tab.active{background:var(--color-bg);color:var(--color-text)}:root[data-theme=light] .scenario-editor-tab-branch{border-left-color:#a0501466}:root[data-theme=light] .scenario-editor-tab-branch.active{border-left-color:#a05014b3}:root[data-theme=light] .qt-modal{background:#fff;border-color:var(--color-border)}:root[data-theme=light] .qt-modal h3{color:var(--color-text)}:root[data-theme=light] .qt-modal-hint{color:var(--color-text-muted)}:root[data-theme=light] .qt-modal-field label{color:var(--color-text-secondary)}:root[data-theme=light] .qt-modal-field select,:root[data-theme=light] .qt-modal-field input[type=text],:root[data-theme=light] .qt-modal-field input[type=number]{background:#fff;color:var(--color-text);border-color:var(--color-border)}:root[data-theme=light] .qt-graph-edge{stroke:#0003}:root[data-theme=light] .qt-graph-edge-converge{stroke:#1464b480}:root[data-theme=light] .qt-graph-rect-root{fill:#0000000a;stroke:#00000040}:root[data-theme=light] .qt-graph-rect-branch{fill:#a050140f;stroke:#a0501459}:root[data-theme=light] .qt-graph-node:hover .qt-graph-rect-root{fill:#00000014;stroke:#00000073}:root[data-theme=light] .qt-graph-node:hover .qt-graph-rect-branch{fill:#a050141f;stroke:#a0501499}:root[data-theme=light] .qt-graph-label{fill:#00000080}:root[data-theme=light] .qt-graph-type{fill:#00000059}:root[data-theme=light] .qt-graph-title{fill:#000000d9}:root[data-theme=light] .qt-graph-cond{fill:#a05014b3}:root[data-theme=light] .qt-graph-converge-dot{fill:#1464b4b3}:root[data-theme=light] .qt-list-item:hover{background:#0000000a}:root[data-theme=light] .qt-list-item-branch{border-left-color:#a050144d}:root[data-theme=light] .qt-convergence-badge{background:#1464b41f;color:#1464b4d9}:root[data-theme=light] .qt-action-converge{color:#1464b4b3!important;border-color:#1464b433!important}:root[data-theme=light] .qt-action-converge:hover{background:#1464b41a!important;color:#1464b4!important}:root[data-theme=light] .qt-converge-picker{background:#1464b40f}:root[data-theme=light] .qt-converge-label{color:#1464b4b3}:root[data-theme=light] .qt-converge-picker select{background:#fff;color:var(--color-text)}:root[data-theme=light] .qt-converge-picker select option{background:#fff;color:var(--color-text)}:root[data-theme=light] .map-editor-preview .leaflet-container{background:#e8e8e0}:root[data-theme=light] .map-renderer-wrap .leaflet-container{background:#e8e8e0}:root[data-theme=light] .playback-player-badge{background:#ffffffeb;color:var(--color-text-secondary)}:root[data-theme=light] select{color-scheme:light}:root[data-theme=light] .role-dropdown{color-scheme:light}:root[data-theme=light] .pe-insert-menu-item{color:var(--color-text)}:root[data-theme=light] .pe-insert-menu-icon{color:var(--color-text-secondary)}:root[data-theme=light] .pe-element{background:#00000005}:root[data-theme=light] .onboarding-role-card{background:#fff;color:var(--color-text)}:root[data-theme=light] .onboarding-role-card:hover{background:#f0efe8}:root[data-theme=light] .admin-hub-bar{background:#ffffffeb;border-color:var(--color-border);box-shadow:0 4px 20px #00000026}:root[data-theme=light] .admin-hub-counter{background:#0000000f}:root[data-theme=light] .admin-hub-counter:hover{background:#0000001a}:root[data-theme=light] .admin-hub-feed{background:#fffffff2;border-color:var(--color-border)}:root[data-theme=light] .session-card-action{background:#ffffffd9;color:var(--color-text-secondary);box-shadow:0 1px 3px #00000026}:root[data-theme=light] .session-card-action:hover{background:#fff;color:var(--color-primary)}:root[data-theme=light],:root[data-theme=light] *{scrollbar-color:#a09f98 #e0dfd8}:root[data-theme=light] a{color:var(--color-primary)}:root[data-theme=light] a:hover{color:var(--color-primary-hover)}*{box-sizing:border-box}body{margin:0;min-height:100dvh;min-height:100vh;background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--font-size-body);font-weight:var(--font-weight-body);overscroll-behavior-y:none}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}*::-webkit-scrollbar-thumb:hover{background:#ffffff73}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent}@supports (min-height: 100dvh){body{min-height:100dvh}}.app-shell{position:relative;z-index:1;overflow-x:clip;overflow-y:visible;padding:var(--space-4) var(--space-8) var(--space-8);background:transparent;min-height:100dvh;min-height:100vh}@supports (min-height: 100dvh){.app-shell{min-height:100dvh}}.app-shell>*:not(canvas):not(.mobile-menu-overlay):not(.modal-overlay):not(.persona-gate-overlay):not(.wakeup-overlay){position:relative;z-index:1}.main-frame{position:relative;z-index:1;background:radial-gradient(ellipse at top right,var(--color-bg-frame-glow) 0%,transparent 60%),var(--color-bg-frame);border:2px solid var(--color-border-frame);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-6) var(--space-6);min-height:calc(100vh - var(--space-4) - var(--space-8))}body.modal-open{overflow:hidden}.skip-to-main{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:10000;padding:var(--space-2) var(--space-4);background:var(--color-accent);color:var(--color-text-dark);font-weight:600;text-decoration:none;border-radius:var(--radius)}.skip-to-main:focus{position:fixed;top:var(--space-2);left:var(--space-2);width:auto;height:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) 0;border-bottom:2px solid var(--color-border-frame);margin-bottom:var(--space-8);font-size:1rem}.password-banner{background:var(--color-warning-light);color:var(--color-warning);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);font-size:.875rem;text-align:center}.password-banner-link{background:none;border:none;color:inherit;text-decoration:underline;cursor:pointer;font-size:inherit;font-weight:600;padding:0}.password-banner-link:hover{opacity:.8}.header-left{display:flex;align-items:center;gap:var(--space-5)}.header-brand{font-size:1.2rem;font-weight:800;color:var(--color-primary);letter-spacing:-.03em;text-decoration:none}.header-nav{display:flex;gap:var(--space-4)}.header-nav a{color:var(--color-text-secondary);text-decoration:none;font-size:.9rem;font-weight:500;transition:color var(--transition-fast);padding:var(--space-1) 0;display:inline-flex;align-items:center;gap:4px}.header-nav a:hover{color:var(--color-text)}.header-nav a.active{color:var(--color-primary);font-weight:600}.header-right{display:flex;align-items:center;gap:var(--space-3)}.header-user{font-size:.85rem;color:var(--color-text-secondary);font-weight:500}.theme-switcher{position:relative}.header-contrast-toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:2px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.header-contrast-toggle:hover{background:var(--color-bg-hover);color:var(--color-text);border-color:var(--color-primary)}.header-contrast-toggle--active{border-color:var(--color-primary);color:var(--color-primary)}.theme-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:100;min-width:160px;background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-1) 0;overflow:hidden}.theme-menu-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:none;color:var(--color-text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);text-align:left}.theme-menu-item:hover{background:var(--color-bg-hover);color:var(--color-text)}.theme-menu-item--active{color:var(--color-primary);font-weight:600}.btn-logout{padding:var(--space-1) var(--space-3);font-size:.8rem;font-weight:500;background:transparent;color:var(--color-text-muted);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.btn-logout:hover{background:var(--color-bg-hover);color:var(--color-text);border-color:var(--color-border)}.wakeup-overlay{position:fixed;inset:0;z-index:10000;overflow:hidden;opacity:1;transition:opacity .7s ease-out}.wakeup-overlay.wakeup-fading{opacity:0}.wakeup-stars{position:absolute;inset:0;z-index:1}.wakeup-star{position:absolute;border-radius:50%;background:#fff;animation:wakeup-twinkle ease-in-out infinite}@keyframes wakeup-twinkle{0%,to{opacity:.9;transform:scale(1)}50%{opacity:.15;transform:scale(.5)}}.wakeup-sun{position:absolute;left:50%;transform:translate(-50%);width:clamp(60px,10vw,100px);height:clamp(60px,10vw,100px);border-radius:50%;background:radial-gradient(circle at 35% 35%,#fffde8,#fc3 50%,#ff9500);z-index:2}.wakeup-sun-bob{animation:wakeup-bob 3s ease-in-out infinite}@keyframes wakeup-bob{0%,to{transform:translate(-50%) translateY(0) scale(1)}50%{transform:translate(-50%) translateY(-8px) scale(1.03)}}.wakeup-hills{position:absolute;bottom:0;left:0;width:100%;height:25%;z-index:3}.wakeup-text{position:absolute;z-index:4;top:25%;left:50%;transform:translate(-50%);text-align:center;white-space:nowrap;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.5),0 0 40px rgba(0,0,0,.2)}.wakeup-title{font-size:clamp(1.4rem,4vw,2.2rem);font-weight:700;margin:0 0 var(--space-2);letter-spacing:-.02em;color:#fff}.wakeup-subtitle{font-size:clamp(.9rem,2.5vw,1.15rem);font-weight:400;margin:0;opacity:.85}.wakeup-dots span{display:inline-block;animation:wakeup-dot 1.4s ease-in-out infinite;opacity:0}.wakeup-dots span:nth-child(1){animation-delay:0s}.wakeup-dots span:nth-child(2){animation-delay:.2s}.wakeup-dots span:nth-child(3){animation-delay:.4s}@keyframes wakeup-dot{0%,20%{opacity:0}50%{opacity:1}80%,to{opacity:0}}.page{max-width:1040px;margin:0 auto;padding:var(--space-4) 0}.page--wide{max-width:none;padding-left:var(--space-6);padding-right:var(--space-6)}.auth-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;padding:var(--space-8) var(--space-4)}.auth-card{width:100%;max-width:400px;background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-xl)}.auth-card fieldset{border:none;margin:0;padding:0}.auth-card h1{text-align:center;font-size:1.5rem;font-weight:700;margin:0 0 var(--space-2);color:var(--color-text)}.auth-subtitle{text-align:center;color:var(--color-text-muted);font-size:.9rem;margin:0 0 var(--space-6)}.password-input-wrap{position:relative}.password-input-wrap input{padding-right:2.5rem}.password-toggle{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;padding:var(--space-1);cursor:pointer;color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:color var(--transition-fast)}.password-toggle:hover{color:var(--color-text);background:transparent;box-shadow:none;transform:translateY(-50%)}.password-toggle svg{width:18px;height:18px}.password-reveal-row{position:relative;display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.password-reveal-input{flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:1rem;padding:var(--space-2) var(--space-3);padding-right:2.5rem;background:var(--color-bg-hover)}.password-reveal-eye{position:absolute;right:.5rem;top:50%;transform:translateY(-50%)}.password-reveal-eye:hover{transform:translateY(-50%)}.auth-card button[type=submit]{width:100%;padding:var(--space-3) var(--space-4);font-size:.95rem;font-weight:600;margin-top:var(--space-2)}.auth-success{text-align:center;color:var(--color-text);font-size:.95rem;margin:0 0 var(--space-4);padding:var(--space-3);background:#28a7451a;border:1px solid rgba(40,167,69,.35);border-radius:var(--radius-sm)}.auth-footer-link{margin:var(--space-4) 0 0}.auth-footer-link a{color:var(--color-text-muted);text-decoration:underline}.auth-footer-link a:hover{color:var(--color-text)}h1{font-size:var(--font-size-h1);font-weight:var(--font-weight-h1);margin:0 0 var(--space-4);letter-spacing:-.02em;color:var(--color-text)}h2{font-size:var(--font-size-h2);font-weight:var(--font-weight-h2);margin:0 0 var(--space-3);letter-spacing:-.01em;color:var(--color-text)}h3{font-size:1rem;font-weight:600;margin:0 0 var(--space-2);color:var(--color-text)}label{display:block;font-weight:600;margin-bottom:var(--space-1);font-size:.875rem;color:var(--color-text-secondary)}input,textarea{display:block;width:100%;padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:.9rem;color:var(--color-text);background:var(--color-bg-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}input[type=checkbox],input[type=radio]{display:inline-block;width:16px;height:16px;padding:0;margin:0;border:revert;border-radius:revert;flex-shrink:0;accent-color:var(--color-primary)}input:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #b8d46333}input:focus-visible,textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}textarea{resize:vertical;min-height:80px}button{padding:var(--space-2) var(--space-4);font-size:.875rem;font-weight:600;font-family:inherit;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-text-dark);cursor:pointer;transition:all var(--transition-fast);box-shadow:0 1px 2px #0000000d;line-height:1.5}button:hover{background:var(--color-primary-hover);box-shadow:0 2px 4px #b8d46340;transform:translateY(-1px)}button:active{transform:translateY(0);box-shadow:0 1px 2px #0000000d}button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.error{color:var(--color-error);margin:var(--space-2) 0;font-size:.875rem}.success{color:var(--color-success);margin:var(--space-2) 0;font-size:.875rem}.info{color:var(--color-text-muted);font-style:italic}.turn-card{border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);margin:var(--space-4) 0;background:var(--color-bg-card);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-normal)}.turn-card:hover{box-shadow:var(--shadow-md)}.cb-editor{margin:var(--space-3) 0}.cb-insert-point{display:flex;justify-content:center;padding:var(--space-1) 0;position:relative}.cb-insert-btn{width:28px;height:28px;padding:0;border-radius:50%;background:var(--color-bg-hover);color:var(--color-text-muted);font-size:1.1rem;line-height:1;opacity:.5;transition:all var(--transition-fast)}.cb-insert-btn:hover{opacity:1;background:var(--color-primary);color:var(--color-text-dark);transform:none}.cb-insert-menu{position:absolute;top:100%;z-index:10;display:flex;gap:var(--space-1);background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2);box-shadow:var(--shadow-md)}.cb-insert-menu-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--color-bg-hover);border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;white-space:nowrap}.cb-insert-menu-item:hover{background:var(--color-primary);color:var(--color-text-dark)}.cb-insert-menu-icon{font-size:1.2rem}.cb-block{border:2px solid var(--color-border);border-radius:var(--radius-md);background:#ffffff05;overflow:hidden}.cb-block-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:#ffffff08;border-bottom:2px solid var(--color-border);gap:var(--space-2)}.cb-block-type{display:flex;align-items:center;gap:var(--space-2);font-size:.8rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.cb-block-icon{font-size:1rem}.cb-block-controls{display:flex;align-items:center;gap:var(--space-1)}.cb-phase-select{padding:2px 6px;font-size:.75rem;border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text-secondary);border:2px solid var(--color-border)}.cb-block-body{padding:var(--space-3)}.cb-text-input{width:100%;min-height:60px;resize:vertical}.cb-display{display:flex;flex-direction:column;gap:var(--space-3)}.cb-display-block{scroll-margin-top:var(--space-4)}.cb-display-text{color:var(--color-text-secondary);line-height:1.6}.cb-display-image,.cb-display-video{max-width:100%;border-radius:var(--radius-md)}.prompt{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-8);color:var(--color-text);font-size:1.1rem;line-height:1.7;text-align:center;max-width:640px;margin:var(--space-6) auto var(--space-8);box-shadow:var(--shadow-md)}.submitted-banner{display:flex;align-items:center;justify-content:space-between;background:var(--color-success-light);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4)}.submitted-label{font-weight:600;color:var(--color-success);font-size:.875rem}.btn-cancel{background:transparent;color:var(--color-text-secondary);border:2px solid var(--color-border);box-shadow:none}.btn-cancel:hover{background:var(--color-bg-hover);color:var(--color-text);box-shadow:none;transform:none}.turn-card fieldset:disabled,.turn-card textarea:disabled,.turn-card input:disabled,.turn-card select:disabled{opacity:.6;cursor:not-allowed}.response-summary{margin-bottom:var(--space-4)}.response-summary-label{font-size:.8rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2)}.response-summary-text{margin:0;padding:var(--space-3) var(--space-4);background:var(--color-bg);border-left:3px solid var(--color-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:.95rem;line-height:1.6;color:var(--color-text);white-space:pre-wrap}.response-summary-choices{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-1)}.response-summary-choice{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:.95rem;color:var(--color-text-muted)}.response-summary-choice.selected{background:var(--color-success-light);color:var(--color-text);font-weight:600}.response-summary-check{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;min-width:1.25rem;height:1.25rem;border-radius:50%;font-size:.75rem;font-weight:700}.response-summary-choice.selected .response-summary-check{background:var(--color-success);color:#fff}.response-summary-scale{padding:var(--space-2) 0}.response-summary-scale-track{position:relative;height:8px;background:var(--color-border-light);border-radius:4px;margin-bottom:var(--space-4)}.response-summary-scale-fill{position:absolute;top:0;left:0;height:100%;background:var(--color-primary);border-radius:4px}.response-summary-scale-marker{position:absolute;top:-28px;transform:translate(-50%);background:var(--color-primary);color:#fff;font-size:.8rem;font-weight:700;padding:2px 8px;border-radius:var(--radius-sm);white-space:nowrap}.response-summary-scale-range{display:flex;justify-content:space-between;font-size:.8rem;color:var(--color-text-muted)}.response-summary-ranking{margin:0;padding:0;list-style:none;counter-reset:rank}.response-summary-rank-item{counter-increment:rank;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-1);background:var(--color-bg);border-radius:var(--radius-md);font-size:.95rem}.response-summary-rank-item:before{content:counter(rank) ".";font-weight:700;color:var(--color-primary);min-width:1.5rem;text-align:right}.admin-controls{margin-top:var(--space-6);padding-top:var(--space-5);border-top:2px solid var(--color-border)}.toast-container{position:fixed;bottom:var(--space-8);left:50%;transform:translate(-50%);z-index:9999;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);pointer-events:none}.toast{padding:var(--space-3) var(--space-6);border-radius:9999px;font-size:.875rem;font-weight:500;color:#fff;white-space:nowrap;animation:toast-in .3s ease-out;pointer-events:auto;box-shadow:var(--shadow-lg)}.toast-success{background:var(--color-success)}.toast-error{background:var(--color-error)}.toast-info{background:var(--color-primary)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.btn-link{display:inline-block;margin-top:var(--space-3);padding:var(--space-2) var(--space-4);font-size:.875rem;font-weight:600;font-family:inherit;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-text-dark);text-decoration:none;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 1px 2px #0000000d}.btn-link:hover{background:var(--color-primary-hover);box-shadow:0 2px 4px #b8d46340}.admin-tabs{display:flex;gap:var(--space-1);border-bottom:2px solid var(--color-border);margin-bottom:var(--space-6)}.admin-tabs .tab{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);text-decoration:none;color:var(--color-text-muted);font-size:.875rem;font-weight:500;border-bottom:2px solid transparent;margin-bottom:-1px;border-radius:var(--radius-md);transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.admin-tabs .tab:hover{color:var(--color-text-secondary);background:var(--color-bg-hover)}.admin-tabs .tab.active{color:#fff;background:var(--color-primary);border-bottom-color:transparent;font-weight:600}.admin-tabs .tab svg{width:16px;height:16px;flex-shrink:0}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-5)}.admin-toolbar h2{margin:0}.admin-inline-form{border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-5);background:var(--color-bg-card);box-shadow:var(--shadow-sm)}.admin-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:2px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-card);box-shadow:var(--shadow-sm)}.admin-table{width:100%;border-collapse:collapse;font-size:.875rem}.admin-table-fixed{table-layout:fixed}.admin-table th,.admin-table td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:2px solid var(--color-border);white-space:nowrap;cursor:default}.admin-table td.col-truncate{overflow:hidden;text-overflow:ellipsis;max-width:0}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr{transition:background var(--transition-fast)}.admin-table tbody tr:hover{background:var(--color-bg-hover)}.admin-table th{font-weight:600;color:var(--color-text-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;background:var(--color-bg);position:sticky;top:0;padding-top:var(--space-3);padding-bottom:var(--space-3)}.table-link{color:var(--color-primary);font-weight:600;text-decoration:none;transition:color var(--transition-fast)}.table-link:hover{color:var(--color-primary-hover);text-decoration:underline}.table-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.badge{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:99px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:var(--color-bg-hover);color:var(--color-text-muted)}.badge-draft{background:var(--color-warning-light);color:var(--color-draft)}.badge-published{background:var(--color-success-light);color:var(--color-success)}.badge-it-admin{background:#ff66b32e;color:#d64d9b;font-weight:600}.badge-pending{background:var(--color-bg-hover);color:var(--color-text-muted)}.badge-active{background:#b8d4631f;color:var(--color-primary)}.badge-lobby{background:var(--color-lobby-light);color:var(--color-lobby)}.badge-completed{background:var(--color-success-light);color:var(--color-success)}.badge-error{background:var(--color-error-light);color:var(--color-error)}.ml{margin-left:var(--space-2)}.row-all-responded{background:var(--color-success-light)}.progress-complete{color:var(--color-success);font-weight:600}.admin-section{margin-bottom:var(--space-8)}.section-heading{font-size:.95rem;font-weight:600;color:var(--color-text-secondary);margin:var(--space-4) 0 var(--space-2);text-transform:uppercase;letter-spacing:.04em}.btn-row{display:flex;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap}.btn-sm{padding:var(--space-1) var(--space-3);font-size:.8rem}.btn-danger{background:var(--color-error);border-color:var(--color-error);color:#fff}.btn-danger:hover{background:var(--color-error-dark);color:#fff;box-shadow:0 2px 4px #e8545640}.btn-file-select{display:inline-block;padding:.55rem 1.2rem;background:var(--color-bg-card);color:var(--color-text);border:2px dashed var(--color-text-muted);border-radius:var(--radius-md);cursor:pointer;font-size:.9rem;transition:border-color var(--transition-fast),background var(--transition-fast)}.btn-file-select:hover{border-color:var(--color-accent);background:#ffffff08}.import-config{margin-top:var(--space-4)}.import-config-header p{margin:0 0 var(--space-4)}.import-categories{display:flex;flex-direction:column;gap:var(--space-3)}.import-category-card{border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);transition:opacity var(--transition-fast),border-color var(--transition-fast)}.import-category-card:not(.import-category-disabled):hover{border-color:#fff3}.import-category-disabled{opacity:.45}.import-category-header{display:flex;align-items:center;justify-content:space-between}.import-category-toggle{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:.95rem}.import-category-toggle input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--color-accent)}.import-category-summary{display:flex;gap:.4rem;flex-wrap:wrap}.import-badge{display:inline-block;padding:.1rem .45rem;border-radius:var(--radius-sm);font-size:.78rem;font-weight:500}.import-badge-new{background:#4caf5026;color:var(--color-success, #4caf50)}.import-badge-changed{background:#f0ad4e26;color:var(--color-warning, #f0ad4e)}.import-badge-identical{background:#ffffff0d;color:var(--color-text-muted)}.import-nothing-to-do{padding:var(--space-6);text-align:center;border:2px solid var(--color-border);border-radius:var(--radius-md)}.import-nothing-to-do p:first-child{margin:0 0 var(--space-2);font-size:1.05rem}.import-nothing-to-do .text-muted{margin:0}.import-unchanged-summary{margin-top:var(--space-3)}.import-unchanged-toggle{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:.85rem;padding:.4rem 0;width:100%;text-align:left;display:flex;align-items:center;gap:var(--space-2)}.import-unchanged-toggle:hover{color:var(--color-text)}.import-unchanged-chevron{font-size:.7rem;margin-left:auto}.import-unchanged-details{margin-top:var(--space-1);padding:var(--space-2) var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--space-1)}.import-unchanged-row{display:flex;justify-content:space-between;font-size:.85rem}.import-impact{font-size:.85rem;font-weight:500;margin:var(--space-2) 0 0;color:var(--color-text-secondary)}.import-impact-danger{color:var(--color-error, #c53436)}.import-category-body{margin-top:var(--space-2);padding-left:var(--space-6)}.import-mode-selector{display:flex;flex-direction:column;gap:.35rem}.import-mode-option{display:flex;align-items:baseline;gap:.4rem;cursor:pointer;font-size:.9rem;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:background .1s}.import-mode-option:hover{background:#ffffff0a}.import-mode-active{background:#ffffff0f}.import-mode-option input[type=radio]{accent-color:var(--color-accent)}.import-mode-label{font-weight:500;min-width:6rem}.import-mode-desc{color:var(--color-text-muted);font-size:.82rem}.import-replace-warning{color:var(--color-error, #c53436);font-size:.85rem;font-weight:500;margin:var(--space-2) 0 0;padding:.4rem .6rem;background:#c5343614;border-radius:var(--radius-sm);border-left:3px solid var(--color-error, #c53436)}.import-dep-warning{color:var(--color-warning, #f0ad4e);font-size:.82rem;margin:.4rem 0 0}.import-mode-badge{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-sm);font-size:.82rem;font-weight:500;background:#ffffff14;color:var(--color-text)}.import-mode-badge-replace{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-sm);font-size:.82rem;font-weight:500;background:#c5343626;color:var(--color-error, #c53436)}.btn-secondary{display:inline-flex;align-items:center;gap:var(--space-2);background:var(--color-bg-card);color:var(--color-text);border:2px solid var(--color-border);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background:var(--color-bg-hover);box-shadow:var(--shadow-sm);transform:none}.btn-text{background:none;border:none;color:var(--color-text-muted);padding:0;font-size:.875rem;font-weight:500;cursor:pointer;margin-bottom:var(--space-4);transition:color var(--transition-fast);box-shadow:none}.btn-text:hover{color:var(--color-text);background:none;box-shadow:none;transform:none}.btn-back{display:inline-flex;align-items:center;gap:var(--space-1);background:none;border:none;color:var(--color-text-muted);padding:var(--space-1) var(--space-2);font-size:.875rem;font-weight:600;cursor:pointer;transition:color var(--transition-fast);box-shadow:none;text-decoration:none;border-radius:var(--radius-sm);margin:0;line-height:1}.btn-back:hover{color:var(--color-text);background:var(--color-bg-hover);box-shadow:none;transform:none}.turn-meta{font-size:.8rem;color:var(--color-text-muted);margin:var(--space-1) 0 0}.turn-meta code{background:var(--color-bg);padding:.1rem .35rem;border-radius:var(--radius-sm);font-size:.78rem}select{display:block;width:100%;padding:var(--space-2) var(--space-3);padding-right:2.2rem;margin-bottom:var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:.9rem;color:var(--color-text);background-color:var(--color-bg-card);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;background-size:14px;-webkit-appearance:none;-moz-appearance:none;appearance:none;color-scheme:dark;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #b8d46333}select:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}select:disabled{opacity:.5;cursor:not-allowed}.mc-fieldset{border:none;padding:0;margin:0 0 var(--space-3)}.mc-fieldset legend{font-weight:600;margin-bottom:var(--space-2)}.mc-option{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-weight:400;cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast)}.mc-option:hover{background:var(--color-bg-hover)}.mc-option input[type=radio],.mc-option input[type=checkbox]{width:auto;margin:0}.scale-input{margin-bottom:var(--space-3)}.scale-input label{margin-bottom:var(--space-2)}.scale-labels{display:flex;justify-content:space-between;font-size:.8rem;color:var(--color-text-muted);margin-bottom:var(--space-1)}.scale-input input[type=range]{width:100%;margin-bottom:var(--space-1);accent-color:var(--color-primary);-webkit-appearance:none;appearance:none;box-sizing:border-box;padding:0}.scale-input input[type=range]::-webkit-slider-runnable-track{width:100%;height:6px;background:var(--color-border);border-radius:3px}.scale-input input[type=range]::-moz-range-track{width:100%;height:6px;background:var(--color-border);border-radius:3px}.scale-input input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;margin-top:-7px}.scale-input input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:none}.scale-ticks{display:flex;justify-content:space-between;font-size:.75rem;color:var(--color-text-muted)}.ranking-fieldset{border:none;padding:0;margin:0 0 var(--space-3)}.ranking-fieldset legend{font-weight:600;margin-bottom:var(--space-2)}.ranking-keyboard-hint{font-size:.8rem;color:var(--color-text-muted);margin:0 0 var(--space-2)}.ranking-row{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);padding:var(--space-2) var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.ranking-row:hover{box-shadow:var(--shadow-sm);border-color:var(--color-border)}.ranking-row:active{cursor:grabbing;box-shadow:var(--shadow-md)}.ranking-position{font-weight:700;min-width:1.5rem;text-align:right;color:var(--color-text-muted);font-size:.85rem}.ranking-grip{color:var(--color-text-muted);font-size:.85rem}.ranking-label{flex:1}fieldset[disabled] .ranking-row{opacity:.6;cursor:default}.config-editor{border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-3);background:#ffffff05}.config-editor label{font-size:.85rem}.config-option-list{display:flex;flex-direction:column;gap:.35rem;margin-bottom:var(--space-2)}.config-option-row{display:flex;gap:.35rem;align-items:center}.config-option-row input[type=text]{flex:1;margin-bottom:0}.config-option-row .btn-sm{flex-shrink:0}.btn-add-option{background:var(--color-bg-card);color:var(--color-text-secondary);border:2px dashed var(--color-border);margin-bottom:var(--space-3);box-shadow:none}.btn-add-option:hover{background:var(--color-bg-hover);border-style:solid;border-color:var(--color-border);box-shadow:none;transform:none}.config-checkbox-label{display:flex;align-items:center;gap:var(--space-2);font-weight:400;cursor:pointer}.config-checkbox-label input[type=checkbox]{width:auto;margin:0}.config-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-2)}.config-row-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.admin-page-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5)}.admin-page-header h1{margin:0;font-size:1.35rem}.modal-overlay{position:fixed;inset:0;background:#0f0f0fb3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fade-in .2s ease-out;outline:none}.modal-card{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);max-width:420px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:modal-slide-up .2s ease-out;position:relative}.modal-close-btn{position:absolute;top:var(--space-3);right:var(--space-3);background:none;border:none;cursor:pointer;padding:4px;color:var(--color-text-muted);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast),background var(--transition-fast)}.modal-close-btn:hover{color:var(--color-text);background:var(--color-bg-hover)}.modal-close-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.modal-card h3{font-size:1.1rem;margin-bottom:var(--space-3)}.modal-card p{color:var(--color-text-secondary);font-size:.9rem;line-height:1.6}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.confirm-discard-overlay{z-index:1100;background:#0f0f0fbf}.confirm-discard-card{max-width:380px}@keyframes spin{to{transform:rotate(360deg)}}.spinner-ring{display:inline-block;width:2rem;height:2rem;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.spinner-ring-sm{width:1rem;height:1rem;border-width:2px}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-4);color:var(--color-text-muted)}.loading-spinner p{margin:0;font-size:.9rem}.loading-spinner-inline{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:.875rem}.error-alert{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-error-light);border:2px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-text);font-size:.875rem}.error-alert p{margin:0;flex:1}.empty-state{text-align:center;padding:var(--space-8) var(--space-4);color:var(--color-text-muted);background:var(--color-bg-card);border:2px dashed var(--color-border);border-radius:var(--radius-lg)}.empty-state p{margin:0;font-size:.9rem}.empty-state p+p{margin-top:var(--space-2)}.filter-panel{border:2px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-card);margin-bottom:var(--space-5);box-shadow:var(--shadow-sm);overflow:hidden}.filter-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:2px solid var(--color-border-light);background:var(--color-bg)}.filter-panel-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.filter-panel-list{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-4);max-height:180px;overflow-y:auto}.filter-option{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border:2px solid var(--color-border);border-radius:99px;font-size:.82rem;font-weight:400;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);margin:0}.filter-option:hover{background:var(--color-bg-hover);border-color:var(--color-border)}.filter-option input[type=checkbox]{width:auto;margin:0}.filter-option .badge{font-size:.65rem}.filter-active{border-color:var(--color-primary)!important;color:var(--color-primary)!important;background:#b8d4631a}.row-actions{display:flex;gap:var(--space-1);align-items:center;flex-wrap:nowrap}.row-actions.row-actions-grid{display:flex;flex-wrap:nowrap;gap:var(--space-1)}.row-action{display:inline-flex;align-items:center;gap:5px;padding:var(--space-2) var(--space-3);font-size:.8rem;font-weight:500;font-family:inherit;border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text-secondary);text-decoration:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;box-shadow:none}.row-action:hover{background:var(--color-bg-hover);color:var(--color-text);transform:none;box-shadow:none}.row-action.row-action-disabled{position:relative;cursor:not-allowed;pointer-events:none;background:#ffffff08;color:#fff3;border-color:#ffffff14}.row-action.row-action-disabled:after{content:"";position:absolute;inset:3px;background:linear-gradient(to top right,transparent calc(50% - .5px),rgba(255,80,80,.55) calc(50% - .5px),rgba(255,80,80,.55) calc(50% + .5px),transparent calc(50% + .5px));pointer-events:none;border-radius:calc(var(--radius-sm) - 3px)}.row-action:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.row-action svg{flex-shrink:0}.row-action-edit{color:var(--color-primary);border-color:var(--color-primary)}.row-action-edit:hover{background:#b8d4631a;color:var(--color-primary-hover)}.row-action-report{color:var(--color-primary);border-color:var(--color-primary)}.row-action-report:hover{background:#b8d4631a;color:var(--color-primary-hover)}.row-action-results{color:var(--color-info);border-color:var(--color-info)}.row-action-results:hover{background:#40c4ff1a;color:var(--color-info)}.row-action-export{color:var(--color-primary);border-color:var(--color-primary)}.row-action-export:hover{background:#b8d4631a;color:var(--color-success)}.row-action-warning{color:var(--color-warning);border-color:var(--color-warning)}.row-action-warning:hover{background:var(--color-warning-light);color:var(--color-warning-dark)}.row-action-delete{color:var(--color-error);border-color:var(--color-error)}.row-action-duplicate{color:var(--color-primary);border-color:var(--color-primary)}.row-action-duplicate:hover{background:#b8d4631a;color:var(--color-primary-hover)}.row-action-delete:hover:not(:disabled){background:var(--color-error-light);color:var(--color-error-dark)}.row-action:disabled{position:relative;cursor:not-allowed;pointer-events:auto;background:#ffffff08;color:#fff3;border-color:#ffffff14}.row-action:disabled:after{content:"";position:absolute;inset:3px;background:linear-gradient(to top right,transparent calc(50% - .5px),rgba(255,80,80,.55) calc(50% - .5px),rgba(255,80,80,.55) calc(50% + .5px),transparent calc(50% + .5px));pointer-events:none;border-radius:calc(var(--radius-sm) - 3px)}.row-action:disabled:hover{background:#ffffff08}@media(max-width:640px){.app-shell{padding:var(--space-2) var(--space-3) var(--space-3)}.app-header{flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-5)}.admin-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;gap:0}.admin-tabs .tab{padding:var(--space-2) var(--space-3);font-size:.82rem;white-space:nowrap}.folder-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-left:0}.folder-tab{padding:var(--space-2) var(--space-3);font-size:.72rem;white-space:nowrap}.folder-page-content{padding:var(--space-4)}.folder-page-toolbar{flex-wrap:wrap;padding:var(--space-2) var(--space-3)}.admin-table-wrap{border:none;box-shadow:none;background:transparent}.admin-table,.admin-table thead,.admin-table tbody,.admin-table tr,.admin-table th,.admin-table td{display:block}.admin-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.admin-table tbody tr{border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-3);background:var(--color-bg-card);box-shadow:var(--shadow-sm)}.admin-table tbody tr:hover{background:var(--color-bg-card)}.admin-table td{padding:var(--space-1) 0;border-bottom:none;white-space:normal;display:flex;align-items:center;justify-content:space-between}.admin-table td:before{content:attr(data-label);font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin-right:var(--space-2);flex-shrink:0}.admin-toolbar{flex-direction:column;align-items:stretch;gap:var(--space-2)}.admin-toolbar h2{margin-bottom:0}.btn-row{flex-direction:column}.btn-row button,.btn-row .btn-link{width:100%;text-align:center}.turn-card-header .btn-row{flex-direction:row;width:100%}.turn-card-header .btn-row button{width:auto;flex:1}.config-row-3,.config-row-2{grid-template-columns:1fr}.row-actions{flex-wrap:wrap;justify-content:flex-end}.row-actions.row-actions-grid{flex-wrap:wrap;gap:var(--space-1);justify-content:flex-start}.admin-table td[data-label=Actions]{flex-direction:column;align-items:stretch}.admin-table td[data-label=Actions]:before{margin-bottom:var(--space-1)}.modal-card{margin:var(--space-4);padding:var(--space-6)}.auth-card{padding:var(--space-6)}.auth-page{min-height:50vh;padding:var(--space-6) var(--space-3)}}.session-image-wrap{margin:var(--space-4) auto var(--space-5);max-width:720px;border-radius:var(--radius-lg);overflow:hidden;border:2px solid var(--color-border);box-shadow:var(--shadow-md)}.session-image{display:block;width:100%;height:auto;max-height:480px;object-fit:contain}.session-description{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-8);color:var(--color-text);font-size:1.1rem;line-height:1.7;text-align:center;max-width:640px;margin:var(--space-6) auto var(--space-8);box-shadow:var(--shadow-md)}.image-upload{margin:var(--space-3) 0}.image-upload-preview{position:relative;display:inline-block;margin-bottom:var(--space-2)}.image-upload-preview img{display:block;max-width:240px;max-height:180px;object-fit:cover;border-radius:var(--radius-md);border:2px solid var(--color-border)}.image-upload-controls{display:flex;align-items:center;gap:var(--space-2)}.image-upload-controls input[type=file]{font-size:.85rem;border:none;padding:0;margin:0}.image-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-4)}.image-library-card{border:2px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-bg-card);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-normal),transform var(--transition-normal)}.image-library-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.image-library-thumb{width:100%;aspect-ratio:4 / 3;overflow:hidden;background:var(--color-bg)}.image-library-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.image-library-card:hover .image-library-thumb img{transform:scale(1.03)}.image-library-info{padding:var(--space-3) var(--space-3)}.image-library-filename{font-size:.82rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.image-library-meta{font-size:.72rem;color:var(--color-text-muted);margin-top:2px}.image-library-usage{font-size:.75rem;margin-top:2px}.image-library-actions{padding:0 var(--space-3) var(--space-3);display:flex;gap:var(--space-1)}.image-picker-modal{background:var(--color-bg-card);border-radius:var(--radius-xl);padding:var(--space-6);width:90%;max-width:640px;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.image-picker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.image-picker-header h3{margin:0}.image-picker-hint{font-size:.82rem;color:var(--color-text-muted);margin:0 0 var(--space-3);font-style:italic}.image-picker-actions{display:flex;gap:var(--space-2);align-items:center;margin-bottom:var(--space-4)}.image-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:var(--space-2)}.image-picker-item{position:relative;border:2px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;padding:0;background:var(--color-bg);cursor:pointer;aspect-ratio:1;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.image-picker-item:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm);transform:scale(1.02)}.image-picker-item.selected{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary)}.image-picker-item img{display:block;width:100%;height:100%;object-fit:cover}.image-picker-item-meta{position:absolute;bottom:0;left:0;right:0;background:#231f1ed9;color:#fff;font-size:.65rem;padding:2px 4px;text-align:center}.image-picker-check{position:absolute;top:4px;right:4px;background:var(--color-primary);color:var(--color-text-dark);width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700}.btn-upload-label{display:inline-block;cursor:pointer}@media(max-width:640px){.image-library-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.image-picker-modal{width:95%;padding:var(--space-4)}.image-picker-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}}.video-upload{margin:var(--space-3) 0}.video-upload-preview{position:relative;display:inline-block;margin-bottom:var(--space-2)}.video-upload-preview video{display:block;max-width:360px;max-height:240px;border-radius:var(--radius-md);border:2px solid var(--color-border);background:#000}.video-upload-controls{display:flex;align-items:center;gap:var(--space-2)}.video-picker-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.video-picker-item{display:flex;flex-direction:column}.video-picker-thumb{position:relative;width:100%;aspect-ratio:16 / 9;background:#000}.video-picker-thumb video{display:block;width:100%;height:100%;object-fit:cover}.video-picker-duration{position:absolute;bottom:4px;right:4px;background:#000000bf;color:#fff;font-size:.7rem;padding:1px 6px;border-radius:3px}.video-picker-card{display:flex;flex-direction:column;border-radius:var(--radius-md);overflow:hidden}.video-subtitle-controls{display:flex;align-items:center;gap:var(--space-1);padding:4px 6px;background:#0000004d;font-size:.75rem}.subtitle-badge{background:var(--color-accent);color:var(--color-text-dark, #0a0a0a);font-weight:700;font-size:.65rem;padding:1px 5px;border-radius:3px}.subtitle-upload-label{cursor:pointer;font-size:.7rem!important;padding:2px 8px!important}.subtitle-remove-btn{font-size:.7rem!important;padding:2px 6px!important}.picker-active-uploads{margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-bg);border-radius:var(--radius-md);border:2px solid var(--color-border)}.picker-upload-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-1) 0;font-size:.82rem}.picker-upload-name{color:var(--color-text-secondary)}.picker-upload-status{color:var(--color-primary);font-weight:500;font-size:.78rem}.media-tabs{display:flex;gap:var(--space-1);margin-bottom:var(--space-4);border-bottom:2px solid var(--color-border)}.media-tab{padding:var(--space-2) var(--space-4);background:none;border:none;border-bottom:2px solid transparent;color:var(--color-text-muted);font-size:.9rem;font-weight:500;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast)}.media-tab:hover{color:var(--color-text)}.media-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.video-library-thumb{position:relative;background:#000}.video-library-thumb video{display:block;width:100%;height:100%;object-fit:cover}.video-duration-badge{position:absolute;bottom:6px;right:6px;background:#000000c7;color:#fff;font-size:.72rem;padding:2px 8px;border-radius:3px;font-variant-numeric:tabular-nums}.upload-progress-float{position:fixed;bottom:calc(var(--space-8) + 40px);left:50%;transform:translate(-50%);width:340px;background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:998;overflow:hidden}.upload-progress-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-3);background:var(--color-bg);cursor:pointer;font-size:.82rem;font-weight:500;-webkit-user-select:none;user-select:none}.upload-progress-header-actions{display:flex;align-items:center;gap:var(--space-2)}.upload-progress-clear{background:none;border:none;color:var(--color-text-muted);font-size:.75rem;cursor:pointer;padding:2px 6px;border-radius:var(--radius-sm)}.upload-progress-clear:hover{background:var(--color-border);color:var(--color-text)}.upload-progress-chevron{font-size:.65rem;color:var(--color-text-muted)}.upload-progress-list{max-height:132px;overflow-y:auto}.upload-progress-task{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:2px solid var(--color-border);font-size:.8rem}.upload-progress-icon{font-size:.9rem;flex-shrink:0}.upload-progress-info{flex:1;min-width:0}.upload-progress-name{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.78rem}.upload-progress-bar{height:4px;background:var(--color-border);border-radius:2px;margin-top:3px;overflow:hidden}.upload-progress-fill{height:100%;background:var(--color-primary);border-radius:2px;transition:width .3s ease}.upload-progress-error{font-size:.72rem;color:var(--color-danger)}.upload-progress-status{font-size:.72rem;color:var(--color-text-muted);flex-shrink:0}.upload-progress-task--done .upload-progress-status{color:var(--color-success, #4caf50)}.upload-progress-task--error .upload-progress-status{color:var(--color-danger)}.upload-progress-dismiss{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:1rem;padding:0 2px;line-height:1;flex-shrink:0}.upload-progress-dismiss:hover{color:var(--color-text)}.session-control-page{display:flex;flex-direction:column;gap:var(--space-6)}.session-control-header{margin-bottom:0}.session-control-breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:.8rem;margin-bottom:var(--space-2)}.breadcrumb-link{color:var(--color-text-muted);text-decoration:none;font-weight:500;transition:color var(--transition-fast)}.breadcrumb-link:hover{color:var(--color-primary)}.breadcrumb-separator{color:var(--color-border)}.breadcrumb-current{color:var(--color-text-secondary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}.session-control-title{margin:0 0 var(--space-1);font-size:1.15rem}.session-control-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.session-control-meta{display:flex;align-items:center;gap:var(--space-2);font-size:.85rem;color:var(--color-text-secondary);margin:0}.session-control-meta .badge{vertical-align:middle}.meta-separator{color:var(--color-text-muted)}.change-scenario-row{display:flex;align-items:center;margin-top:var(--space-2)}.change-scenario-row select{max-width:300px}.control-card{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5)}.control-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.control-card-title{margin:0;font-size:1rem;font-weight:600}.control-card-empty{color:var(--color-text-muted);font-size:.9rem;margin:0;padding:var(--space-4) 0 var(--space-2);text-align:center}.participant-list{display:flex;flex-direction:column}.participant-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-2);border-top:2px solid var(--color-border-light);transition:background var(--transition-fast)}.participant-row:hover{background:#ffffff05}.participant-row:first-child{border-top:none}.participant-row-creator{border:1.5px solid var(--color-text-secondary);border-radius:var(--radius-md);margin:var(--space-1) 0;padding:var(--space-3)}.creator-tag{font-size:.65rem;font-weight:700;letter-spacing:.05em;color:var(--color-text-secondary);flex-shrink:0;white-space:nowrap;width:4.5rem;text-align:center;box-sizing:border-box}.participant-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-bg);color:var(--color-text-secondary);font-size:.8rem;font-weight:600;flex-shrink:0}.participant-info{flex:1;min-width:0;display:flex;flex-direction:column}.participant-name{font-size:.9rem;font-weight:500;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.participant-email{font-size:.75rem;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-remove-participant{background:none;border:2px solid transparent;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;font-size:.75rem;padding:var(--space-1) var(--space-2);transition:all var(--transition-fast);flex-shrink:0;width:4.5rem;text-align:center;box-sizing:border-box}.btn-remove-participant:hover{color:var(--color-error);border-color:var(--color-error);background:var(--color-error-light)}.progress-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:2px solid var(--color-border);border-radius:var(--radius-md);margin:0}.progress-table{width:100%;border-collapse:collapse;font-size:.85rem}.progress-table th,.progress-table td{padding:var(--space-2) var(--space-3);border-bottom:2px solid var(--color-border);text-align:center;white-space:nowrap}.progress-table thead th{font-weight:600;color:var(--color-text-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;background:var(--color-bg);position:sticky;top:0}.progress-table-stage-header{text-align:left!important;min-width:180px}.progress-table-user-header{min-width:80px;cursor:default;-webkit-user-select:none;user-select:none}.progress-user-number{display:block;font-size:.9rem;font-weight:700;color:var(--color-text)}.progress-user-name{display:block;font-size:.65rem;font-weight:400;color:var(--color-text-muted);max-width:100px;overflow:hidden;text-overflow:ellipsis}.progress-stage-cell{text-align:left!important;display:flex;align-items:center;gap:var(--space-2)}.progress-stage-index{font-weight:700;color:var(--color-text-muted);min-width:1.5rem}.progress-stage-title{font-weight:500}.progress-current-badge{font-size:.6rem;padding:.1rem .4rem}.progress-row-current{background:#b8d46314}.progress-row-current td{border-bottom-color:#b8d46340}.progress-row-past{background:var(--color-bg-card)}.progress-row-future{background:var(--color-bg-card);opacity:.5}.progress-cell{width:60px;height:40px;cursor:default;transition:background var(--transition-fast)}.progress-cell-done{background:var(--color-success-light);cursor:pointer}.progress-cell-done:hover{background:#00b75c26}.progress-cell-locked,.progress-cell-skipped{background:var(--color-error-light)}.progress-cell-not-relevant{background:#ffffff08}.progress-timeout{color:var(--color-error);font-size:1rem;font-weight:700}.progress-not-relevant{color:var(--color-text-muted);font-size:1rem}.progress-check{color:var(--color-success);font-size:1rem;font-weight:700}.progress-lock{color:var(--color-text-muted);font-size:.9rem}.progress-cell-avg{background:#ffffff08}.progress-avg-time{color:var(--color-text-secondary);font-size:.8rem;font-weight:600}.progress-legend{display:flex;gap:var(--space-4);font-size:.75rem;color:var(--color-text-muted)}.progress-legend>span{display:inline-flex;align-items:center;gap:var(--space-2)}.progress-legend-swatch{display:inline-block;width:14px;height:14px;border-radius:var(--radius-sm);border:2px solid var(--color-border)}.progress-legend-done{background:var(--color-success-light)}.progress-legend-locked{background:var(--color-error-light)}.progress-legend-pending{background:var(--color-bg-card)}.response-modal{max-width:560px}.response-modal-prompt{font-size:.9rem;line-height:1.55;color:var(--color-text-secondary);margin:var(--space-2) 0 var(--space-3);padding:var(--space-3);background:var(--color-bg);border-left:3px solid var(--color-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.response-modal-config{font-size:.82rem;color:var(--color-text-secondary);margin-bottom:var(--space-2)}.response-modal-config p{margin:var(--space-1) 0}.response-modal-options{margin:var(--space-1) 0 var(--space-2);padding-left:var(--space-5)}.response-modal-options li{margin:2px 0}.response-modal-divider{border:none;border-top:2px solid var(--color-border-light);margin:var(--space-3) 0}.response-modal-meta p{margin:var(--space-1) 0;font-size:.85rem}.response-modal-value{margin-top:var(--space-3)}.response-modal-value>strong{display:block;margin-bottom:var(--space-2);font-size:.85rem;color:var(--color-text-secondary)}.response-modal-content{background:var(--color-bg);padding:var(--space-4);border-radius:var(--radius-md);border:2px solid var(--color-border);font-family:inherit;font-size:.9rem;line-height:1.6;white-space:pre-wrap;word-break:break-word;margin:0}@media(max-width:640px){.session-control-title-row{flex-direction:column}.session-control-meta{flex-wrap:wrap}.control-card-header{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.progress-legend{flex-direction:column;gap:var(--space-1)}.participant-row{flex-wrap:wrap}}.lobby-columns{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-6);align-items:start}.lobby-column{min-width:0}.lobby-column .session-list{grid-template-columns:1fr}.lobby-column .admin-table-wrap{margin-top:0}@media(max-width:900px){.lobby-columns{grid-template-columns:1fr}}.status-all-done{font-weight:700}.session-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-4)}.session-card{position:relative;display:flex;flex-direction:column;padding:0;background:linear-gradient(180deg,var(--color-bg-card-top) 0%,var(--color-bg-card) 40%,var(--color-bg) 100%);border:2px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-decoration:none;color:inherit;overflow:visible;transition:box-shadow var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.session-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-primary);transform:scale(1.02)}.session-card-unavailable{opacity:.65;border-color:var(--color-border-light)}.session-card-unavailable:hover{border-color:var(--color-border);box-shadow:var(--shadow-sm)}.session-card-completed{opacity:.75}.session-card-header{padding:var(--space-4) var(--space-5) var(--space-3);background:#ffffff0a;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.session-card-title{margin:0;font-size:1.15rem;font-weight:700;line-height:1.3}.session-card-image{width:100%;height:160px;overflow:hidden}.session-card-image img{width:100%;height:100%;object-fit:cover}.session-card-voted{position:absolute;top:-10px;right:-8px;z-index:1;padding:3px var(--space-3);background:#fff;border-radius:999px;font-size:.75rem;font-weight:700;color:#111;white-space:nowrap;box-shadow:0 2px 8px #00000059}.session-card-voted-complete{background:var(--color-primary);color:var(--color-text-dark)}.session-card-admin-actions{position:absolute;top:var(--space-2);right:var(--space-2);z-index:2;display:flex;gap:var(--space-1)}.session-card-action{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:var(--radius-sm);background:#00000080;color:var(--color-text-secondary);text-decoration:none;transition:all var(--transition-fast)}.session-card-action svg{width:18px;height:18px}.session-card-action:hover{background:#000000bf;color:var(--color-primary)}.section-subheading{font-size:.85rem;font-weight:500;color:var(--color-text-muted);margin:var(--space-3) 0 var(--space-2)}.admin-table-compact{font-size:.85rem}.admin-table-compact th,.admin-table-compact td{padding:var(--space-2) var(--space-3)}.session-card-body{flex:1;min-width:0;padding:var(--space-4) var(--space-5) var(--space-5)}.session-card-meta{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;font-size:.85rem}.session-card-turn{color:var(--color-text-secondary)}.session-card-completed-label{color:var(--color-success);font-weight:700;letter-spacing:.05em}.session-card-unavailable-msg{margin:var(--space-2) 0 0;color:var(--color-error);font-size:.85rem;font-weight:500}.session-card-lobby{border-color:var(--color-lobby)}.session-card-lobby:hover{border-color:var(--color-lobby-hover)}.session-card-started-without{border-color:var(--color-error);opacity:.6;cursor:not-allowed;pointer-events:auto}.session-card-started-without:hover{transform:none;box-shadow:none;border-color:var(--color-error)}.session-card-started-label{color:var(--color-error);font-weight:700}.text-muted{color:var(--color-text-muted);font-size:.9rem}.admin-table th.col-center,.admin-table td.col-center{text-align:center}.admin-table th.col-expand{width:100%}.admin-table th.col-actions{text-align:center!important}.admin-table td.col-actions .row-actions{justify-content:flex-end}.btn-add-people{background:var(--color-primary);color:var(--color-text-dark);border:none;padding:.5rem 1.2rem;border-radius:var(--radius-sm);font-weight:600;font-size:.9rem;cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.btn-add-people:hover{background:var(--color-primary-hover)}.participant-permissions{display:flex;gap:.3rem;flex-wrap:wrap}.perm-toggle{display:inline-block;font-size:.68rem;font-weight:600;padding:.15rem .45rem;border-radius:var(--radius-sm);white-space:nowrap;text-transform:uppercase;letter-spacing:.02em;border:2px solid transparent;cursor:pointer;transition:all var(--transition-fast)}.perm-toggle:disabled{cursor:default}.perm-toggle-off{background:#ffffff0a;color:#ffffff40;border-color:#ffffff14}.perm-toggle-off:not(:disabled):hover{background:#ffffff14;color:#ffffff80}.perm-toggle-on.perm-player{background:#4caf502e;color:var(--color-perm-play);border-color:#4caf504d}.perm-toggle-on.perm-viewer{background:#42a5f52e;color:var(--color-info);border-color:#42a5f54d}.perm-toggle-on.perm-playback{background:#ab47bc2e;color:var(--color-perm-playback);border-color:#ab47bc4d}.perm-toggle-on.perm-report{background:#ffa7262e;color:var(--color-warning-alt);border-color:#ffa7264d}.perm-toggle-on.perm-edit{background:#ef53502e;color:var(--color-perm-edit);border-color:#ef53504d}.perm-toggle-unavailable{position:relative;opacity:.35;cursor:not-allowed!important;background:#ffffff08;color:#fff3;border-color:#ffffff0f}.perm-toggle-unavailable:after{content:"";position:absolute;inset:3px;background:linear-gradient(to top right,transparent calc(50% - .5px),rgba(255,80,80,.55) calc(50% - .5px),rgba(255,80,80,.55) calc(50% + .5px),transparent calc(50% + .5px));pointer-events:none}.perm-toggle-locked{cursor:default!important;opacity:.85}.text-warning{color:var(--color-warning-alt);font-size:.9rem}.add-people-modal{width:600px;max-width:95vw;max-height:85vh;display:flex;flex-direction:column}.add-people-controls{display:flex;gap:var(--space-3);align-items:center;margin-bottom:var(--space-3)}.add-people-search{flex:1;padding:var(--space-2) var(--space-3);background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:.9rem}.add-people-search::placeholder{color:var(--color-text-muted)}.add-people-sort{display:flex;align-items:center;gap:.4rem;white-space:nowrap;font-size:.85rem;color:var(--color-text-muted)}.add-people-sort select{padding:.35rem .5rem;background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:.85rem}.add-people-list{flex:1;overflow-y:auto;max-height:400px;border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg)}.add-people-empty{padding:var(--space-6);text-align:center;color:var(--color-text-muted)}.add-people-row{border-bottom:2px solid var(--color-border-light)}.add-people-row:last-child{border-bottom:none}.add-people-row-selected{background:#b8d4630f}.add-people-row-main{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);cursor:pointer;transition:background .12s;flex-wrap:wrap}.add-people-row-main:hover{background:var(--color-bg-hover)}.add-people-user-info{flex:1;min-width:0;display:flex;flex-direction:column}.add-people-user-name{display:block;font-weight:500;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.add-people-user-sub{display:flex;align-items:center;gap:var(--space-2);font-size:.78rem;line-height:1.3}.add-people-user-email{font-size:.78rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.add-people-checkbox{flex-shrink:0;display:flex;align-items:center;justify-content:center}.checkbox-indicator{width:22px;height:22px;border-radius:4px;border:2px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;font-size:.85rem;color:#fff;transition:background var(--transition-fast),border-color var(--transition-fast)}.checkbox-checked{background:var(--color-accent, #b8d463);border-color:var(--color-accent, #b8d463);color:#1a1a2e;font-weight:700}.add-people-user-role{font-size:.75rem;font-weight:500;padding:.1rem .4rem;border-radius:var(--radius-sm);white-space:nowrap;text-transform:capitalize}.add-people-user-role.role-super_admin{background:#ffa72626;color:var(--color-warning-alt)}.add-people-user-role.role-admin{background:#42a5f526;color:var(--color-info)}.add-people-user-role.role-user{background:#ffffff14;color:var(--color-text-muted)}.add-people-footer{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-4);padding-top:var(--space-4);border-top:2px solid var(--color-border-light)}.add-people-count{font-size:.85rem;color:var(--color-text-muted)}@media(max-width:640px){.add-people-controls{flex-direction:column;align-items:stretch}}.sim-role-badge{display:inline-block;background:#b8d46326;color:var(--color-primary);font-size:.78rem;font-weight:500;padding:.15rem .5rem;border-radius:var(--radius-sm);white-space:nowrap}.participant-sim-role{display:inline-block;background:#b8d46326;color:var(--color-primary);font-size:.75rem;font-weight:500;padding:.1rem .4rem;border-radius:var(--radius-sm);white-space:nowrap}.participant-role-select{flex-shrink:0}.role-dropdown{font-size:.78rem;padding:3px 6px;border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text);color-scheme:dark;cursor:pointer;max-width:150px;width:auto;margin-bottom:0}.role-dropdown:focus{outline:none;border-color:var(--color-primary)}.progress-user-role{display:block;font-size:.7rem;font-weight:500;color:var(--color-primary);opacity:.8;margin-top:.15rem}.not-relevant-label{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-bg-hover);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:.9rem;color:var(--color-text-secondary);transition:border-color var(--transition-fast)}.not-relevant-label:hover{border-color:var(--color-primary)}.not-relevant-label input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--color-primary);cursor:pointer}.not-relevant-text{font-style:italic;color:var(--color-text-muted)}.session-report-page{display:flex;flex-direction:column;gap:var(--space-6)}.report-header-actions{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.report-download-pdf-btn{font-size:.85rem}.report-close-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--color-bg-card);border:2px solid var(--color-border);color:var(--color-text-secondary);font-size:.85rem;text-decoration:none;transition:all var(--transition-fast);cursor:pointer;flex-shrink:0}.report-close-btn:hover{background:var(--color-bg-hover);color:var(--color-text);border-color:var(--color-text-muted)}.report-summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-4)}.report-summary-item{display:flex;flex-direction:column;gap:var(--space-1)}.report-summary-label{font-size:.8rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.report-summary-value{font-size:1rem;color:var(--color-text)}.report-turn-card{overflow:visible}.report-turn-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4)}.report-turn-number{color:var(--color-primary);margin-right:var(--space-3);font-weight:600}.report-turn-prompt{color:var(--color-text-secondary);font-size:.95rem;margin:0 0 var(--space-4);line-height:1.5}.badge-muted{background:#b0b0b026;color:var(--color-text-muted);border:2px solid var(--color-border);font-size:.75rem;padding:.15rem .5rem;border-radius:var(--radius-sm);white-space:nowrap}.report-completion-summary{display:flex;gap:var(--space-6);padding:var(--space-3) var(--space-4);background:#b8d4630f;border:2px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.report-stat{font-size:.9rem;color:var(--color-text-secondary)}.report-stat strong{color:var(--color-text);font-weight:600}.report-chart-container{margin-top:var(--space-4);background:#0a0a14;color:#e0e0e0;border-radius:var(--radius);padding:var(--space-4)}.report-scale-stats{display:flex;gap:var(--space-6);margin-bottom:var(--space-4)}.report-scale-labels{display:flex;justify-content:space-between;padding:var(--space-2) var(--space-4) 0;font-size:.8rem;color:var(--color-text-muted);font-style:italic}.report-ranking-note{color:var(--color-text-muted);font-size:.85rem;margin:0 0 var(--space-3)}.report-ranking-list{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.report-ranking-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:#ffffff08;border-radius:var(--radius-md);border:2px solid var(--color-border)}.report-ranking-position{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--color-bg);border:2px solid var(--color-primary);color:var(--color-primary);font-weight:700;font-size:.9rem;flex-shrink:0}.report-ranking-name{flex:1;font-size:.95rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}.report-ranking-avg{color:var(--color-text-muted);font-size:.8rem;flex-shrink:0}.report-free-text-list{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.report-free-text-item{border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);background:#ffffff09}.report-free-text-author{font-size:.8rem;font-weight:600;color:var(--color-primary);margin-bottom:var(--space-2)}.report-free-text-content{font-size:.95rem;color:var(--color-text-secondary);white-space:pre-wrap;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.report-free-text-content:hover{-webkit-line-clamp:unset;overflow:visible}.report-free-text-counts{font-size:.75rem;color:var(--color-text-muted);margin-top:var(--space-1)}.report-turn-header-right{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.report-view-toggle{display:flex;border:2px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.report-view-btn{padding:var(--space-1) var(--space-3);font-size:.8rem;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast)}.report-view-btn:hover{color:var(--color-text);background:#ffffff0d}.report-view-btn-active{background:var(--color-primary);color:var(--color-text-dark);font-weight:600}.report-view-btn-active:hover{background:var(--color-primary);color:var(--color-text-dark)}.report-individual-section{margin-top:var(--space-4)}.report-individual-controls{display:flex;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap}.report-individual-search{flex:1;min-width:180px;padding:.4rem .75rem;font-size:.85rem;border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text)}.report-individual-select{padding:.4rem .75rem;font-size:.85rem;border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);min-width:200px}.report-individual-list{display:flex;flex-direction:column;gap:var(--space-2);max-height:600px;overflow-y:auto}.report-individual-item{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-3) var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-md);background:#ffffff09}.report-individual-header{display:flex;align-items:center;gap:var(--space-2);min-width:180px;flex-shrink:0}.report-individual-number{font-size:.8rem;font-weight:700;color:var(--color-primary);min-width:2rem}.report-individual-name{font-size:.85rem;font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.report-individual-value{font-size:.9rem;color:var(--color-text-secondary);white-space:pre-wrap;line-height:1.5;flex:1;min-width:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.report-individual-value:hover{-webkit-line-clamp:unset;overflow:visible}.report-individual-skipped{color:var(--color-error);font-style:italic}.report-individual-not-relevant{color:var(--color-text-muted)}.report-individual-no-response{color:var(--color-text-muted);font-style:italic}.report-highlights-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-3);margin-top:var(--space-3)}.report-highlight-item{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-bg-hover);border-left:3px solid var(--color-border)}.report-highlight-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.report-highlight-name{font-size:1rem;font-weight:600;color:var(--color-text)}.report-highlight-detail{font-size:.8rem;color:var(--color-text-muted)}.highlight-fastest{border-left-color:var(--color-success)}.highlight-fastest .report-highlight-label{color:var(--color-success)}.highlight-slowest{border-left-color:var(--color-warning-alt)}.highlight-slowest .report-highlight-label{color:var(--color-warning-alt)}.highlight-consistent{border-left-color:var(--color-primary)}.highlight-consistent .report-highlight-label{color:var(--color-primary)}.highlight-complete{border-left-color:var(--color-info)}.highlight-complete .report-highlight-label{color:var(--color-info)}.highlight-average{border-left-color:var(--color-perm-playback)}.highlight-average .report-highlight-label{color:var(--color-perm-playback)}.highlight-wordiest{border-left-color:#e0a040}.highlight-wordiest .report-highlight-label{color:#e0a040}.highlight-shortest{border-left-color:#a080d0}.highlight-shortest .report-highlight-label{color:#a080d0}.btn-report-link{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);text-decoration:none;font-size:.9rem;font-weight:500;cursor:pointer;transition:background var(--transition-fast)}.btn-report-link:hover{background:var(--color-primary-hover)}.playback-page{position:relative;display:flex;flex-direction:column;overflow:hidden;height:calc(100vh - 140px);margin:0 calc(-1 * var(--space-6))}.playback-close-btn{position:absolute;top:var(--space-4);right:var(--space-4);z-index:1000;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--color-bg-card);border:2px solid var(--color-border);color:var(--color-text-secondary);font-size:1.1rem;text-decoration:none;transition:all var(--transition-fast);cursor:pointer}.playback-close-btn:hover{background:var(--color-bg-hover);color:var(--color-text);border-color:var(--color-text-muted)}.playback-title-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-8) var(--space-4);flex:1;animation:playbackFadeIn .6s ease-out}.playback-title-image{width:200px;height:200px;object-fit:cover;border-radius:var(--radius-xl);border:2px solid var(--color-border);margin-bottom:var(--space-6);box-shadow:var(--shadow-lg)}.playback-session-title{font-size:2rem;font-weight:700;margin:0 0 var(--space-4);background:linear-gradient(135deg,var(--color-text) 0%,var(--color-primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.playback-session-meta{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-size:.95rem;margin-bottom:var(--space-6)}.playback-meta-dot{width:4px;height:4px;border-radius:50%;background:var(--color-text-muted)}.playback-participants-grid{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center;margin-bottom:var(--space-8);max-width:600px}.playback-participant-chip{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-hover);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:.85rem;color:var(--color-text-secondary)}.playback-participant-number{background:var(--color-primary);color:var(--color-text-dark);font-weight:700;font-size:.75rem;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center}.playback-participant-role{color:var(--color-primary);font-size:.8rem;font-weight:500}.playback-start-btn{padding:var(--space-3) var(--space-8);font-size:1.1rem;font-weight:600;border-radius:var(--radius-lg);background:var(--color-primary);color:var(--color-text-dark);border:none;cursor:pointer;transition:all var(--transition-normal);box-shadow:0 4px 20px #b8d4634d}.playback-start-btn:hover{background:var(--color-primary-hover);box-shadow:0 6px 30px #b8d46366;transform:translateY(-2px)}.playback-start-btn-secondary{background:transparent;border:2px solid var(--color-border);color:var(--color-text-secondary);box-shadow:none}.playback-start-btn-secondary:hover{background:var(--color-bg-hover);box-shadow:none;transform:translateY(-2px)}.playback-pick-label{color:var(--color-text-secondary);font-size:.9rem;margin-bottom:var(--space-2)}.playback-participant-clickable{cursor:pointer;transition:all .2s ease}.playback-participant-clickable:hover{border-color:var(--color-primary);background:#b8d46314;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.playback-participant-clickable:disabled{opacity:.5;cursor:not-allowed;transform:none}.playback-player-badge{position:fixed;top:var(--space-4);left:50%;transform:translate(-50%);background:#1e1e1ed9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-4);font-size:.85rem;color:var(--color-text-secondary);z-index:1000}.playback-player-badge strong{color:var(--color-primary)}.playback-player-badge-role{margin-left:var(--space-2);color:var(--color-text-secondary);opacity:.7}.playback-player-response-area{margin-top:var(--space-4);animation:playbackSlideIn .4s ease-out}.playback-player-response-card{background:var(--color-bg-card);border:2px solid var(--color-primary);border-radius:var(--radius-md);padding:var(--space-4);max-width:600px;margin:0 auto}.playback-response-time{margin-top:var(--space-2);font-size:.75rem;color:var(--color-text-secondary);opacity:.7;text-align:right}.playback-turn-view{animation:playbackSlideIn .4s ease-out;flex:1;overflow-y:auto;padding:var(--space-4) var(--space-6);padding-bottom:140px;max-width:960px;width:100%;margin:0 auto}.playback-panel-fullscreen{flex:1;position:relative;overflow:hidden;animation:playbackSlideIn .4s ease-out}.playback-panel-fullscreen .panel-display-root{width:100%;height:100%}.playback-panel-overlay-header{position:absolute;top:var(--space-3);left:var(--space-4);display:flex;align-items:center;gap:var(--space-3);z-index:1000;pointer-events:none}.playback-interaction-area{height:100%;overflow-y:auto;padding:var(--space-4);padding-bottom:140px}.playback-turn-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.playback-stage-badge{background:var(--color-primary);color:var(--color-text-dark);padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);font-size:.8rem;font-weight:700;letter-spacing:.02em}.playback-type-badge{background:var(--color-bg-hover);color:var(--color-text-muted);padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);font-size:.8rem;text-transform:capitalize}.playback-turn-title{font-size:1.5rem;font-weight:700;margin:0 0 var(--space-3)}.playback-turn-prompt{color:var(--color-text-secondary);font-size:1rem;line-height:1.7;margin:0 0 var(--space-4);padding:var(--space-4);background:var(--color-bg);border-left:3px solid var(--color-primary);border-radius:0 var(--radius-md) var(--radius-md) 0}.playback-responses-area{margin-top:var(--space-6)}.playback-response-counter{font-size:.85rem;color:var(--color-text-muted);margin-bottom:var(--space-4);font-weight:500}.playback-responses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-3)}.playback-response-card{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);transition:all .4s cubic-bezier(.16,1,.3,1)}.playback-response-visible{opacity:1;transform:translateY(0);animation:playbackCardIn .5s cubic-bezier(.16,1,.3,1)}.playback-response-skipped{background:var(--color-error-light);border-color:var(--color-error)}.playback-response-skipped-text{color:var(--color-error);font-style:italic;font-weight:600;margin:0}.playback-response-not-relevant-text{color:var(--color-text-muted);font-style:italic;font-weight:600;margin:0}.playback-response-hidden{opacity:0;transform:translateY(20px);pointer-events:none;position:absolute;width:0;height:0;overflow:hidden}.playback-response-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:2px solid var(--color-border-light)}.playback-response-name{font-weight:600;font-size:.9rem}.playback-response-role{color:var(--color-primary);font-size:.8rem;font-weight:500;margin-left:auto}.playback-response-body{font-size:.9rem;color:var(--color-text-secondary)}.playback-response-text{margin:0;line-height:1.6;white-space:pre-wrap}.playback-response-choices{display:flex;flex-wrap:wrap;gap:var(--space-2)}.playback-choice-chip{background:var(--color-success-light);color:var(--color-success);border:2px solid var(--color-border);padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);font-size:.85rem;font-weight:500}.playback-response-ranking{display:flex;flex-wrap:wrap;gap:var(--space-1)}.playback-rank-chip{display:inline-flex;align-items:center;gap:var(--space-1);background:var(--color-bg-hover);border:2px solid var(--color-border);padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:.82rem}.playback-rank-num{color:var(--color-primary);font-weight:700;font-size:.75rem}.playback-scale-indicator{display:flex;align-items:center;gap:var(--space-3)}.playback-scale-track-mini{flex:1;height:8px;background:var(--color-bg-hover);border-radius:4px;overflow:hidden}.playback-scale-fill-mini{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-success));border-radius:4px;transition:width .5s ease}.playback-scale-value{font-size:1.1rem;font-weight:700;color:var(--color-primary);min-width:30px;text-align:center}.playback-aggregate-wrap{margin-top:var(--space-6);animation:playbackFadeIn .5s ease-out}.playback-aggregate{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);min-width:0;overflow:hidden}.playback-aggregate-title{font-size:1rem;font-weight:700;margin-bottom:var(--space-4);color:var(--color-text)}.playback-histogram{display:flex;align-items:flex-end;gap:2px;height:120px;margin-bottom:var(--space-3);min-width:0;overflow:hidden;width:100%}.playback-histogram-bar-wrap{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end}.playback-histogram-bar{width:100%;max-width:40px;background:linear-gradient(180deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);border-radius:4px 4px 0 0;min-height:2px;transition:height .5s cubic-bezier(.16,1,.3,1)}.playback-histogram-label{font-size:.75rem;color:var(--color-text-muted);margin-top:var(--space-1)}.playback-scale-summary{margin-top:var(--space-4)}.playback-scale-avg-track{height:6px;background:var(--color-bg-hover);border-radius:3px;position:relative;margin-bottom:var(--space-2)}.playback-scale-avg-marker{position:absolute;top:-10px;transform:translate(-50%);background:var(--color-primary);color:var(--color-text-dark);font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:var(--radius-sm);transition:left .5s ease}.playback-scale-range{display:flex;justify-content:space-between;font-size:.75rem;color:var(--color-text-muted)}.playback-bar-chart{display:flex;flex-direction:column;gap:var(--space-3)}.playback-bar-row{display:flex;align-items:center;gap:var(--space-3)}.playback-bar-label{width:160px;min-width:160px;max-width:160px;font-size:.85rem;color:var(--color-text-secondary);text-align:right;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default}.playback-bar-track{flex:1;height:24px;background:var(--color-bg-hover);border-radius:var(--radius-sm);overflow:hidden}.playback-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-success));border-radius:var(--radius-sm);transition:width .6s cubic-bezier(.16,1,.3,1);min-width:2px}.playback-bar-count{font-size:.8rem;color:var(--color-text-muted);min-width:60px;font-weight:500}.playback-ranking-list{display:flex;flex-direction:column;gap:var(--space-2)}.playback-ranking-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-bg-hover);border-radius:var(--radius-md)}.playback-ranking-position{background:var(--color-primary);color:var(--color-text-dark);width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0}.playback-ranking-name{flex:1;font-size:.9rem;font-weight:500}.playback-ranking-avg{font-size:.8rem;color:var(--color-text-muted)}.playback-end-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-8) var(--space-4);flex:1;animation:playbackFadeIn .6s ease-out}.playback-end-icon{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-success));display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:var(--color-text-dark);margin-bottom:var(--space-6);box-shadow:0 8px 30px #b8d4634d}.playback-end-title{font-size:1.8rem;font-weight:700;margin:0 0 var(--space-3)}.playback-end-subtitle{color:var(--color-text-muted);margin:0 0 var(--space-8);font-size:1rem}.playback-end-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}.playback-restart-btn{padding:var(--space-2) var(--space-6);background:var(--color-primary);color:var(--color-text-dark);border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:600;transition:all var(--transition-normal)}.playback-restart-btn:hover{background:var(--color-primary-hover)}.playback-report-link,.playback-back-link{padding:var(--space-2) var(--space-6);background:var(--color-bg-hover);color:var(--color-text-secondary);border:2px solid var(--color-border);border-radius:var(--radius-md);text-decoration:none;font-weight:500;transition:all var(--transition-normal)}.playback-report-link:hover,.playback-back-link:hover{background:var(--color-bg);color:var(--color-text)}.playback-controls{position:fixed;bottom:12px;left:50%;transform:translate(-50%);width:100%;max-width:1040px;background:#2c2725f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:2px solid var(--color-border);padding:var(--space-3) var(--space-6);z-index:1000;border-radius:var(--radius-xl);box-shadow:0 -4px 20px #0000004d}.playback-timeline{position:relative;margin-bottom:var(--space-3);padding-top:var(--space-2)}.playback-timeline-bar{height:4px;background:var(--color-bg-hover);border-radius:2px;overflow:hidden}.playback-timeline-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-success));border-radius:2px;transition:width .3s ease}.playback-timeline-turns{position:relative;height:20px}.playback-timeline-turn-group{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.playback-timeline-dot{position:absolute;top:-8px;width:16px;height:16px;border-radius:50%;border:2px solid var(--color-border);background:var(--color-bg-card);cursor:pointer;transform:translate(-50%);transition:all var(--transition-fast);padding:0;pointer-events:auto;z-index:2}.playback-timeline-dot:hover{transform:translate(-50%) scale(1.3);border-color:var(--color-primary)}.playback-timeline-dot-active{background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 0 8px #b8d46380}.playback-timeline-dot-past{background:var(--color-primary);border-color:var(--color-primary);opacity:.6}.playback-timeline-resp-dot{position:absolute;top:-2px;width:6px;height:6px;border-radius:50%;background:var(--color-border);transform:translate(-50%);transition:background .3s ease;z-index:1}.playback-timeline-resp-revealed{background:var(--color-primary);opacity:.7}.playback-transport{display:flex;align-items:center;justify-content:center;gap:var(--space-3)}.playback-transport-btn{background:var(--color-bg-hover);border:2px solid var(--color-border);color:var(--color-text);width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.8rem;transition:all var(--transition-fast)}.playback-transport-btn:hover:not(:disabled){background:var(--color-bg);border-color:var(--color-primary)}.playback-transport-btn:disabled{opacity:.3;cursor:not-allowed}.playback-transport-btn-small{width:32px;height:32px;font-size:.65rem}.playback-play-btn{width:52px;height:52px;font-size:1.2rem;background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-dark)}.playback-play-btn:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:0 4px 16px #b8d4634d}.playback-speed-control{display:flex;gap:2px;margin-left:var(--space-4);background:var(--color-bg);border-radius:var(--radius-md);padding:2px;border:2px solid var(--color-border)}.playback-speed-btn{background:transparent;border:none;color:var(--color-text-muted);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;font-size:.75rem;font-weight:500;transition:all var(--transition-fast)}.playback-speed-btn:hover{color:var(--color-text)}.playback-speed-active{background:var(--color-primary);color:var(--color-text-dark)!important}.session-control-actions{display:flex;gap:var(--space-2)}.btn-advance-turn{border:2px solid rgba(255,255,255,.5)!important;background:var(--color-accent);color:var(--color-text-dark, #0a0a0a);font-weight:700;padding:var(--space-2) var(--space-5);border-radius:var(--radius-md);cursor:pointer;box-shadow:0 0 12px #ffc83240;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.btn-advance-turn:hover:not(:disabled){background:var(--color-accent-hover);border-color:#fffc;box-shadow:0 0 18px #ffc83266}.btn-advance-turn:disabled{opacity:.5;cursor:not-allowed}.btn-playback-link{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-4);background:var(--color-bg-hover);color:var(--color-text-secondary);border:2px solid var(--color-border);border-radius:var(--radius-md);text-decoration:none;font-weight:500;font-size:.875rem;transition:all var(--transition-normal)}.btn-playback-link:hover{background:var(--color-primary);color:var(--color-text-dark);border-color:var(--color-primary)}@keyframes playbackFadeIn{0%{opacity:0}to{opacity:1}}@keyframes playbackSlideIn{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes playbackCardIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.status-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.status-dot-success{background:var(--color-success)}.status-dot-error{background:var(--color-error)}.status-dot-warning{background:var(--color-warning)}.status-dot-muted{background:var(--color-text-muted)}.status-dot-lg{width:16px;height:16px}.session-live-page{position:relative}.session-live-page.has-advance-bar{padding-bottom:0}.lobby-card{background:var(--color-bg-card);border:2px solid var(--color-lobby);border-radius:var(--radius-lg);padding:var(--space-8);text-align:center;max-width:500px;margin:var(--space-6) auto}.lobby-title{margin:0 0 var(--space-6);font-size:1.4rem;color:var(--color-lobby)}.lobby-ready-count{display:flex;align-items:baseline;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-6)}.lobby-ready-number{font-size:3rem;font-weight:800;color:var(--color-primary);line-height:1}.lobby-ready-label{font-size:1.1rem;color:var(--color-text-muted)}.lobby-admin-controls,.lobby-participant-controls{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.btn-ready{padding:var(--space-3) var(--space-8);border:2px solid var(--color-lobby);background:transparent;color:var(--color-lobby);font-size:1.1rem;font-weight:700;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.btn-ready:hover{background:#63b3d426}.btn-ready-active{background:var(--color-ready);border-color:var(--color-ready);color:#fff}.btn-ready-active:hover{background:var(--color-ready-hover);border-color:var(--color-ready-hover)}.btn-start-session{padding:var(--space-3) var(--space-8);border:none;background:var(--color-primary);color:#fff;font-size:1.1rem;font-weight:700;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.btn-start-session:hover:not(:disabled){filter:brightness(1.15)}.btn-start-session:disabled{opacity:.4;cursor:not-allowed}.btn-restart-session{padding:var(--space-2) var(--space-4);border:2px solid var(--color-border);background:transparent;color:var(--color-warning-alt);font-size:.85rem;font-weight:600;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.btn-restart-session:hover:not(:disabled){background:#ffb74d1f;border-color:var(--color-warning-alt)}.btn-restart-session:disabled{opacity:.3;cursor:not-allowed}.lobby-hint{color:var(--color-text-muted);font-size:.9rem;margin:0}.participant-ready-badge{font-size:.75rem;font-weight:700;padding:2px var(--space-2);border-radius:var(--radius-sm)}.participant-ready{background:#63b3d433;color:var(--color-lobby)}.participant-not-ready{background:#ffffff0f;color:var(--color-text-muted)}.session-live-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6)}.session-live-header h1{margin:0}.session-live-meta{display:flex;align-items:center;gap:var(--space-4);flex-shrink:0}.stage-badge{background:var(--color-secondary);color:#fff;font-size:.8rem;font-weight:600;padding:var(--space-1) var(--space-3);border-radius:999px;white-space:nowrap}.completion-counter{display:flex;flex-direction:column;align-items:center;background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-4);min-width:80px}.completion-counter-done{border-color:var(--color-success);background:var(--color-success-light)}.completion-counter-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.completion-counter-value{font-size:1.3rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-text)}@keyframes bubblePop{0%{transform:scale(1)}30%{transform:scale(1.35)}50%{transform:scale(.9)}70%{transform:scale(1.15)}to{transform:scale(1)}}.bubble-pop{animation:bubblePop .5s ease-out}.prompt-timer-row{display:flex;align-items:center;justify-content:center;gap:var(--space-4);margin-bottom:var(--space-4)}.prompt-timer-row .prompt{margin:0;flex:1 1 auto}.prompt-timer-row .countdown-timer{margin-bottom:0;flex-shrink:0;order:-1}.countdown-timer{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--color-bg-card);border:2px solid var(--color-border);margin-bottom:var(--space-4);width:fit-content}.countdown-timer.countdown-warning{border-color:var(--color-warning);background:var(--color-warning-light)}.countdown-timer.countdown-urgent{border-color:var(--color-error);background:var(--color-error-light);animation:timerPulse 1s ease-in-out infinite}@keyframes timerPulse{0%,to{opacity:1}50%{opacity:.7}}.countdown-ring{width:40px;height:40px;transform:rotate(-90deg)}.countdown-ring-bg{fill:none;stroke:var(--color-border);stroke-width:3}.countdown-ring-fill{fill:none;stroke:var(--color-primary);stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset 1s linear}.countdown-warning .countdown-ring-fill{stroke:var(--color-warning)}.countdown-urgent .countdown-ring-fill{stroke:var(--color-error)}.countdown-text{font-size:1.4rem;font-weight:700;font-variant-numeric:tabular-nums;min-width:3ch}.countdown-warning .countdown-text{color:var(--color-warning)}.countdown-urgent .countdown-text{color:var(--color-error)}.countdown-submitted{opacity:.5}.video-gate-page{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-4);padding-top:var(--space-8)}.video-gate-label{color:var(--color-text-muted);font-size:.95rem;margin:0}.video-gate-stage-badge{background:var(--color-secondary);color:#fff;font-size:.8rem;font-weight:600;padding:var(--space-1) var(--space-3);border-radius:999px}.video-gate-wrap{position:relative;width:100%;max-width:720px;border-radius:var(--radius-lg);overflow:hidden;border:2px solid var(--color-border);cursor:default}.video-gate-player{width:100%;display:block;background:#000;pointer-events:none}.video-gate-player::-webkit-media-controls{display:none!important}.video-gate-player::-webkit-media-controls-enclosure{display:none!important}.video-gate-player::-webkit-media-controls-panel{display:none!important}.video-gate-player::-webkit-media-controls-overlay-play-button{display:none!important}.video-gate-click-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);background:#0009;color:#fff;cursor:pointer;font-size:1rem;z-index:2}.video-gate-play-icon{font-size:3rem;line-height:1}.skipped-notice{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-warning-light);border:2px solid var(--color-warning);border-radius:var(--radius-lg);margin-bottom:var(--space-4);animation:slideDown .4s ease-out,fadeOut .5s ease-in 4.5s forwards}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.skipped-notice-icon{font-size:1.5rem;flex-shrink:0}.skipped-notice strong{color:var(--color-warning)}.admin-hub{position:fixed;bottom:var(--space-5);right:var(--space-5);display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2);z-index:9990}.admin-hub-bar{display:flex;align-items:center;gap:var(--space-2);background:#050f18d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;padding:4px;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 20px #0006}.admin-hub-counter{display:flex;align-items:center;justify-content:center;background:#ffffff0f;border:none;border-radius:999px;padding:var(--space-1) var(--space-3);cursor:pointer;transition:background var(--transition-fast);min-width:48px}.admin-hub-counter:hover{background:#ffffff1f}.admin-hub-counter-value{font-weight:700;font-size:.85rem;color:var(--color-text);font-variant-numeric:tabular-nums}.btn-advance{background:var(--color-accent);color:var(--color-text-dark, #0a0a0a);font-weight:700;font-size:.85rem;padding:var(--space-2) var(--space-5);border-radius:999px;border:none;cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);white-space:nowrap}.btn-advance:hover:not(:disabled){background:var(--color-accent-hover);transform:scale(1.04)}.btn-advance:disabled{opacity:.5;cursor:not-allowed}.admin-hub-feed{display:flex;flex-direction:column;gap:2px;background:#050f18e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.08);padding:var(--space-2);max-height:200px;overflow-y:auto;min-width:200px;animation:hub-feed-in .2s ease-out}@keyframes hub-feed-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.admin-hub-feed-item{display:flex;align-items:center;gap:var(--space-2);font-size:.75rem;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border-left:3px solid var(--color-success);white-space:nowrap}.admin-hub-feed-timeout{border-left-color:var(--color-error)}.admin-hub-feed-name{font-weight:600;color:var(--color-text)}.admin-hub-feed-detail{color:var(--color-text-muted)}.admin-hub-feed-detail-timeout{color:var(--color-error);font-style:italic}.waiting-message{text-align:center;color:var(--color-text-muted);font-style:italic;margin-top:var(--space-4);animation:waitingPulse 2s ease-in-out infinite}@keyframes waitingPulse{0%,to{opacity:.5}50%{opacity:1}}.session-completed-card{text-align:center;padding:var(--space-8);background:var(--color-bg-card);border-radius:var(--radius-lg);border:2px solid var(--color-border)}.session-completed-icon{display:inline-flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:var(--color-success);color:#fff;font-size:2rem;margin-bottom:var(--space-4)}.session-completed-card h2{margin:0 0 var(--space-2)}.session-completed-card p{color:var(--color-text-muted);margin:0 0 var(--space-6)}.session-completed-actions{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}.session-completed-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--color-bg-card);border:2px solid var(--color-success);border-radius:var(--radius-lg);font-weight:600;color:var(--color-success);margin-bottom:var(--space-4)}.session-completed-bar-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-success);color:#fff;font-size:.9rem;flex-shrink:0}.session-completed-bar-link{margin-left:auto;color:var(--color-text-muted);font-weight:500;font-size:.85rem;text-decoration:none;transition:color var(--transition-fast)}.session-completed-bar-link:hover{color:var(--color-primary)}.session-completed-bar-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.completed-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border);margin-bottom:var(--space-5)}.completed-tab{padding:var(--space-3) var(--space-5);font-size:.9rem;font-weight:600;font-family:inherit;color:var(--color-text-muted);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast);box-shadow:none}.completed-tab:hover{color:var(--color-text);background:none;box-shadow:none;transform:none}.completed-tab-active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.completed-tab:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.session-results-header{margin-bottom:var(--space-5)}.session-results-title{margin:0 0 var(--space-3);font-size:1.5rem}.session-results-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border)}.session-results-tab{padding:var(--space-3) var(--space-5);font-size:.95rem;font-weight:600;font-family:inherit;color:var(--color-text-muted);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast);box-shadow:none}.session-results-tab:hover{color:var(--color-text);background:none;box-shadow:none;transform:none}.session-results-tab-active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.session-results-tab:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.session-results-back-link{margin-left:auto;display:inline-flex;align-items:center;gap:4px;padding:var(--space-2) var(--space-3);font-size:.85rem;font-weight:500;color:var(--color-text-muted);text-decoration:none;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast)}.session-results-back-link:hover{color:var(--color-text);background:#ffffff14}:root[data-theme=light] .session-results-back-link:hover{background:#0000000f}:root[data-theme=light] .session-results-tab{color:var(--color-text-muted)}:root[data-theme=light] .session-results-tab:hover{color:var(--color-text)}:root[data-theme=light] .session-results-tab-active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.session-report-page .session-results-header{margin-bottom:var(--space-4)}.personal-results{margin-top:0}.personal-results h3{margin:0 0 var(--space-4);font-size:1.1rem}.personal-result-card{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-3)}.personal-result-skipped{border-color:var(--color-error);background:var(--color-error-light)}.personal-result-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.personal-result-stage{background:var(--color-secondary);color:#fff;font-size:.7rem;font-weight:600;padding:2px var(--space-2);border-radius:999px;white-space:nowrap}.personal-result-prompt{color:var(--color-text-muted);font-size:.9rem;margin:0 0 var(--space-3)}.personal-result-skipped-label{color:var(--color-error);font-weight:600;font-style:italic}.personal-result-no-answer{color:var(--color-text-muted);font-style:italic}.personal-result-sqa{margin-top:var(--space-2);padding-top:var(--space-2);border-top:2px solid rgba(255,255,255,.08)}.personal-result-sqa-badge{display:inline-block;font-size:.78rem;font-weight:600;padding:.15rem .6rem;border-radius:999px}.personal-result-sqa-badge.sqa-understood{background:#2ecc7126;color:var(--color-ready)}.personal-result-sqa-badge.sqa-not-understood{background:#e74c3c26;color:var(--color-error)}.personal-result-sqa-comment{margin:.35rem 0 0;font-size:.85rem;color:var(--color-text-muted);font-style:italic}.session-card-new{animation:card-scale-in .5s cubic-bezier(.34,1.56,.64,1)}@keyframes card-scale-in{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.04)}to{transform:scale(1)}}.progress-cell-flash{animation:cell-flash .8s ease-out}@keyframes cell-flash{0%{background:var(--color-success);box-shadow:0 0 12px var(--color-success)}to{background:var(--color-success-light);box-shadow:none}}.timed-out-banner{display:flex;align-items:center;gap:var(--space-3);background:var(--color-error-light);border:2px solid var(--color-error);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin:var(--space-4) 0;color:var(--color-error);font-weight:500}.timed-out-icon{width:1.5rem;height:1.5rem;flex-shrink:0;filter:brightness(0) invert(1)}.btn-advance-ready{animation:advance-pulse .5s ease-in-out 2}@keyframes advance-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@media(max-width:640px){.session-live-header{flex-direction:column}.session-live-meta{width:100%;justify-content:space-between}.admin-hub{bottom:var(--space-3);right:var(--space-3)}}.welcome-page{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 80px);padding:var(--space-6)}.welcome-card{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-8) var(--space-8);max-width:480px;width:100%;text-align:center;box-shadow:var(--shadow-card)}.welcome-heading{font-size:1.8rem;font-weight:700;color:var(--color-text);margin:0 0 var(--space-2)}.welcome-text{text-align:left;color:var(--color-text-secondary);font-size:.95rem;line-height:1.7;margin-bottom:var(--space-6)}.welcome-text p{margin:0 0 var(--space-3)}.welcome-text p:last-child{margin-bottom:0}.welcome-continue{width:100%;padding:var(--space-3) var(--space-5);font-size:1.05rem;font-weight:600;border-radius:var(--radius-md)}.welcome-edit{text-align:left;margin-bottom:var(--space-6)}.welcome-edit-label{display:block;font-size:.85rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-2)}.welcome-edit-textarea{width:100%;min-height:180px;padding:var(--space-3);font:inherit;font-size:.95rem;line-height:1.6;color:var(--color-text);background:var(--color-bg-input, var(--color-bg));border:1px solid var(--color-border);border-radius:var(--radius-md);resize:vertical;box-sizing:border-box}.welcome-edit-hint{margin:var(--space-2) 0 0;font-size:.8rem;color:var(--color-text-secondary)}.welcome-edit-error{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-danger-bg, rgba(220, 60, 60, .1));color:var(--color-danger, #dc3c3c);border-radius:var(--radius-sm);font-size:.85rem}.welcome-edit-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3)}.welcome-edit-cancel,.welcome-edit-save{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-weight:600;cursor:pointer}.welcome-edit-toggle{display:block;width:100%;margin-top:var(--space-3);padding:var(--space-2) var(--space-3);font-size:.85rem;color:var(--color-text-secondary);background:transparent;border:1px dashed var(--color-border);border-radius:var(--radius-sm);cursor:pointer}.welcome-edit-toggle:hover:not(:disabled){color:var(--color-text);border-color:var(--color-text-secondary)}@media(max-width:640px){.welcome-page{padding:var(--space-3)}.welcome-card{padding:var(--space-5) var(--space-4);max-width:100%}.welcome-heading{font-size:1.4rem}.welcome-text{font-size:.88rem;line-height:1.6}}.sqa-checkbox-label{display:flex;align-items:center;gap:var(--space-2);font-size:.9rem;color:var(--color-text-secondary);cursor:pointer;padding:var(--space-2) 0}.sqa-checkbox-label input[type=checkbox]{accent-color:var(--color-primary)}.sqa-understanding-input{display:flex;flex-direction:column;gap:var(--space-3)}.sqa-comment-wrap{margin-top:var(--space-2)}.sqa-comment-wrap label{font-size:.85rem;color:var(--color-text-secondary);margin-bottom:var(--space-1)}.sqa-comment-wrap textarea{font-size:.9rem}.sqa-survey{margin-top:var(--space-5);padding:var(--space-4);background:var(--color-surface);border-radius:var(--radius-lg);border:2px solid var(--color-border)}.sqa-survey h3{margin:0 0 var(--space-2);font-size:1.15rem}.sqa-survey-intro{color:var(--color-text-secondary);font-size:.9rem;margin-bottom:var(--space-4)}.sqa-survey-item{padding:var(--space-3);margin-bottom:var(--space-3);background:var(--color-surface-alt, rgba(255,255,255,.03));border-radius:var(--radius-md);border:2px solid var(--color-border)}.sqa-survey-question{margin-bottom:var(--space-3)}.sqa-survey-stage{display:inline-block;background:var(--color-primary);color:#fff;font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:var(--radius-sm);margin-right:var(--space-2);text-transform:uppercase}.sqa-survey-prompt{color:var(--color-text-secondary);font-size:.9rem;margin-top:var(--space-1)}.sqa-survey-answer{display:flex;flex-direction:column;gap:var(--space-2)}.sqa-radio{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:2px solid transparent;transition:background var(--transition-fast),border-color var(--transition-fast)}.sqa-radio:hover{background:#ffffff0a}.sqa-radio-selected{border-color:var(--color-primary);background:#6366f114}.sqa-radio input[type=radio]{accent-color:var(--color-primary)}.sqa-radio-label{font-size:.9rem}.sqa-radio-yes{color:var(--color-sqa-yes)}.sqa-radio-no{color:var(--color-sqa-no)}.sqa-comment{width:100%;min-height:60px;padding:var(--space-2);border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-size:.9rem;resize:vertical;margin-top:var(--space-1)}.sqa-submit-btn{margin-top:var(--space-4);width:100%;padding:var(--space-3);font-size:1rem;font-weight:600}.session-card-sqa-label{display:inline-block;font-size:.75rem;color:var(--color-primary);font-weight:500;margin-top:var(--space-1)}.row-action-sqa{color:var(--color-primary)!important;border-color:var(--color-primary)!important;font-weight:600;font-size:.8rem}.row-action-sqa:hover{background:#b8d4631a;color:var(--color-primary-hover)!important}.sqa-report-page .control-card{margin-bottom:var(--space-4)}.sqa-grid-hint{color:var(--color-text-secondary);font-size:.8rem;margin-bottom:var(--space-2)}.sqa-grid-wrap{overflow-x:auto;margin-top:var(--space-3)}.sqa-grid{border-collapse:separate;border-spacing:0;font-size:.8rem;white-space:nowrap}.sqa-grid-spaced{border-spacing:4px}.sqa-grid th,.sqa-grid td{padding:var(--space-1) var(--space-2)}.sqa-grid-corner{text-align:left;font-weight:600;min-width:120px;max-width:200px}.sqa-grid-stage-header{text-align:center;font-weight:700;font-size:.75rem;padding:var(--space-1) var(--space-2);color:var(--color-text-secondary);min-width:38px}.sqa-grid-user{font-weight:500;font-size:.8rem;max-width:160px;overflow:hidden;text-overflow:ellipsis;padding-right:var(--space-3)}.sqa-grid-stage{display:inline-block;background:var(--color-primary);color:#fff;font-size:.65rem;font-weight:700;padding:1px 5px;border-radius:3px;margin-right:4px}.sqa-turn-stats{display:flex;flex-direction:column;gap:var(--space-2)}.sqa-turn-stat-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0}.sqa-turn-stat-label{flex:0 0 220px;display:flex;align-items:center;gap:var(--space-2);min-width:0}.sqa-turn-stat-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem}.sqa-turn-stat-bar-wrap{flex:1;display:flex;align-items:center;gap:var(--space-2)}.sqa-turn-stat-bar{flex:1;height:20px;display:flex;border-radius:var(--radius-sm);overflow:hidden;background:#ffffff0d}.sqa-turn-stat-bar-yes{background:var(--color-sqa-yes);transition:width .3s}.sqa-turn-stat-bar-no{background:var(--color-sqa-no);transition:width .3s}.sqa-turn-stat-bar-empty{flex:1;background:#ffffff0d}.sqa-turn-stat-pct{flex:0 0 40px;text-align:right;font-weight:600;font-size:.85rem}.sqa-cell-td{padding:0!important}.sqa-cell{width:38px;height:38px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;position:relative;transition:box-shadow var(--transition-fast),transform var(--transition-fast)}.sqa-cell:hover{transform:scale(1.08);z-index:1}.sqa-cell-yes{background:var(--color-sqa-yes)}.sqa-cell-no{background:var(--color-sqa-no)}.sqa-cell-pending{background:#ffffff0d;border:2px dashed rgba(255,255,255,.15)}.sqa-cell-selected{box-shadow:0 0 0 3px var(--color-primary),0 0 12px #b8d46366;transform:scale(1.1);z-index:2}.sqa-note-icon{font-size:1.2rem;line-height:1;cursor:pointer;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.sqa-detail-member{margin-bottom:var(--space-5)}.sqa-detail-member-name{font-size:1rem;font-weight:600;margin:0 0 var(--space-2);padding-bottom:var(--space-2);border-bottom:2px solid var(--color-border)}.sqa-detail-list{display:flex;flex-direction:column;gap:var(--space-2)}.sqa-detail-item{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:2px solid var(--color-border);background:var(--color-surface-alt, rgba(255,255,255,.02));cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.sqa-detail-item:hover{border-color:var(--color-primary)}.sqa-detail-item-selected{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary),0 0 8px #b8d46333;background:#b8d4630a}.sqa-detail-item-header{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.sqa-detail-item-title{font-size:.85rem;font-weight:500}.sqa-detail-badge{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:10px;margin-left:auto}.sqa-detail-badge-yes{background:#2e7d4f40;color:var(--color-perm-play)}.sqa-detail-badge-no{background:#c6282840;color:var(--color-perm-edit)}.sqa-detail-comment{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);background:#ffffff08;border-radius:var(--radius-sm);font-size:.85rem;color:var(--color-text-secondary);border-left:3px solid var(--color-sqa-no)}.sqa-detail-comment-label{font-weight:600;color:var(--color-text);margin-right:var(--space-1);font-size:.8rem}.burger-btn{display:none;background:none;border:none;cursor:pointer;padding:var(--space-2);margin-left:auto}.burger-icon{display:flex;flex-direction:column;justify-content:center;gap:5px;width:24px;height:24px}.burger-icon span{display:block;width:100%;height:2px;background:var(--color-text);border-radius:2px;transition:all .3s ease;transform-origin:center}.burger-icon.burger-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.burger-icon.burger-open span:nth-child(2){opacity:0}.burger-icon.burger-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:900;animation:fadeIn .2s ease}.mobile-menu{position:absolute;top:0;right:0;width:min(300px,80vw);height:100%;background:var(--color-bg-card);border-left:2px solid var(--color-border);display:flex;flex-direction:column;padding:var(--space-6) var(--space-5);gap:var(--space-5);animation:slideInRight .25s ease;overflow-y:auto}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mobile-menu-user{display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:2px solid var(--color-border)}.mobile-menu-avatar{width:44px;height:58px;border-radius:var(--radius-sm);object-fit:cover;border:2px solid var(--color-border);flex-shrink:0}.mobile-menu-user-info{display:flex;flex-direction:column;gap:2px;min-width:0}.mobile-menu-user-name{font-weight:600;font-size:.95rem;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-menu-links{display:flex;flex-direction:column;gap:var(--space-1)}.mobile-menu-links a{display:flex;align-items:center;gap:6px;padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);text-decoration:none;font-size:1rem;font-weight:500;border-radius:var(--radius-md);transition:all var(--transition-fast)}.mobile-menu-links a:hover{background:var(--color-bg-hover);color:var(--color-text)}.mobile-menu-links a.active{color:var(--color-primary);background:#b8d4631a;font-weight:600}.mobile-menu-actions{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-4);border-top:2px solid var(--color-border)}.mobile-menu-action-btn{width:100%;padding:var(--space-3) var(--space-4);font-size:.9rem;font-weight:500;font-family:inherit;background:var(--color-bg-hover);color:var(--color-text-secondary);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:left}.mobile-menu-action-btn:hover{background:var(--color-bg-card);color:var(--color-text);border-color:var(--color-text-muted)}@media(max-width:640px){.burger-btn,.mobile-menu-overlay{display:block}.header-nav-desktop,.header-right-desktop{display:none}}.personas-layout{display:flex;gap:var(--space-6);align-items:flex-start}.personas-table-section{flex:1;min-width:0}.personas-detail-panel{width:280px;flex-shrink:0}.persona-detail-card{background:var(--color-bg-hover);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;flex-direction:column;align-items:center;text-align:center}.persona-detail-image{width:140px;height:186px;object-fit:cover;border-radius:var(--radius-md);border:2px solid var(--color-border);margin-bottom:var(--space-4)}.persona-detail-no-image{width:140px;height:186px;border-radius:var(--radius-md);border:2px dashed var(--color-border);display:flex;align-items:center;justify-content:center;font-size:.85rem;color:var(--color-text-muted);background:var(--color-bg);margin-bottom:var(--space-4)}.persona-detail-name{margin:0 0 var(--space-2);font-size:1.1rem;font-weight:600}.persona-detail-desc{color:var(--color-text-secondary);font-size:.85rem;line-height:1.5;text-align:left;width:100%;margin-bottom:var(--space-4)}.persona-detail-desc p{margin:0 0 var(--space-2)}.persona-detail-desc p:last-child{margin-bottom:0}.persona-detail-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.row-selected{background:var(--color-bg-hover)}.persona-modal-image-section{margin-top:var(--space-3)}.persona-modal-image-label{display:block;font-size:.85rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-2)}.persona-modal-image-preview{display:flex;align-items:flex-start;gap:var(--space-3)}.persona-modal-image-preview img{width:80px;height:106px;object-fit:cover;border-radius:var(--radius-sm);border:2px solid var(--color-border)}.persona-modal-image-btns{display:flex;flex-direction:column;gap:var(--space-2)}@media(max-width:640px){.personas-layout{flex-direction:column}.personas-detail-panel{width:100%}}.header-user-pill{display:flex;align-items:center;gap:var(--space-2);background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:999px;padding:var(--space-1) var(--space-3) var(--space-1) var(--space-1);cursor:pointer;transition:all var(--transition-fast);font-family:inherit;color:var(--color-text)}.header-user-pill:hover{border-color:var(--color-primary);background:var(--color-bg-hover)}.header-user-pill .pill-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid var(--color-border);flex-shrink:0}.header-user-pill .pill-no-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-bg-hover);border:2px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-size:.75rem;color:var(--color-text-muted);flex-shrink:0}.header-user-pill .pill-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2;min-width:0}.header-user-pill .pill-name{font-size:.8rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.header-user-pill .pill-persona{font-size:.65rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.header-user-pill .pill-role{font-size:.65rem;font-weight:500;color:var(--color-primary);background:#b8d46326;padding:.1rem .4rem;border-radius:var(--radius-sm);white-space:nowrap;flex-shrink:0}.modal-card.user-details-modal{max-width:700px;width:95vw}.user-details-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border);margin-bottom:var(--space-4)}.user-details-tab{background:none;border:none;font-family:inherit;font-size:.9rem;font-weight:500;color:var(--color-text-muted);padding:var(--space-2) var(--space-4);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--transition-fast)}.user-details-tab:hover{color:var(--color-text)}.user-details-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.user-details-layout{display:flex;gap:var(--space-6);min-height:300px}.user-details-persona-col{flex:0 0 180px;display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.user-details-persona-img{width:180px;height:260px;object-fit:cover;border-radius:var(--radius-md);border:2px solid var(--color-border)}.user-details-persona-placeholder{width:180px;height:260px;border-radius:var(--radius-md);border:2px dashed var(--color-border);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:.85rem}.user-details-content-col{flex:1;min-width:0;overflow-y:auto}.user-details-section{margin-bottom:var(--space-4)}.user-details-section h4{font-size:.8rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--space-2) 0}.user-details-field{display:flex;padding:var(--space-1) 0;gap:var(--space-3)}.user-details-label{flex:0 0 90px;font-size:.8rem;color:var(--color-text-muted);font-weight:500}.user-details-value{font-size:.85rem;color:var(--color-text);word-break:break-word}.user-details-info{display:flex;flex-direction:column;height:100%}.user-details-logout-section{margin-top:auto;padding-top:var(--space-4);border-top:2px solid var(--color-border)}.user-details-logout-btn{width:100%;background:var(--color-error);color:#fff}.user-details-logout-btn:hover{background:#a82b2d;box-shadow:0 2px 4px #c5343640}.user-details-admin-actions{display:flex;gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-4);border-top:2px solid var(--color-border)}.user-details-edit-form label{display:block;margin-bottom:var(--space-3)}.radio-label{display:flex!important;align-items:center;gap:var(--space-2);font-size:.85rem;cursor:pointer;margin-bottom:var(--space-1)!important}.radio-label input[type=radio]{width:auto;margin:0;accent-color:var(--color-primary)}@keyframes gateSlideIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.gate-fan-container{display:flex;justify-content:center;align-items:flex-end;gap:var(--space-5);margin:var(--space-6) 0 var(--space-4);padding:var(--space-4) 0;perspective:1200px;flex-wrap:wrap}.gate-fan-card{width:240px;flex-shrink:0;cursor:pointer;transition:all .35s cubic-bezier(.22,1,.36,1);z-index:1;--rotation: calc((var(--card-index) - (var(--card-total) - 1) / 2) * 3deg);--offset-y: calc((var(--card-index) - (var(--card-total) - 1) / 2) * 10px);transform:rotate(var(--rotation)) translateY(var(--offset-y))}.gate-fan-card:hover,.gate-fan-card.focused{z-index:10;transform:translateY(-16px) rotate(0) scale(1.06)}.gate-fan-card-inner{width:100%;background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #0006;transition:all .35s cubic-bezier(.22,1,.36,1)}.gate-fan-card:hover .gate-fan-card-inner,.gate-fan-card.focused .gate-fan-card-inner{border-color:var(--color-primary);box-shadow:0 12px 48px #00000080,0 0 0 1px var(--color-primary)}.gate-fan-img{width:100%;height:300px;object-fit:contain;display:block}.gate-fan-img--placeholder{display:flex;align-items:center;justify-content:center;background:var(--color-bg-hover);color:var(--color-text-muted);font-size:3rem;font-weight:700;height:300px}.gate-fan-info{padding:var(--space-3) var(--space-3) var(--space-4);text-align:center;flex-shrink:0}.gate-fan-name{display:block;font-weight:700;font-size:.95rem;margin-bottom:var(--space-1)}.gate-fan-desc{display:block;font-size:.75rem;color:var(--color-text-secondary);line-height:1.35;max-height:6em;overflow:hidden;text-overflow:ellipsis}.gate-fan-saving{padding:var(--space-2) var(--space-3);text-align:center;font-size:.85rem;font-weight:600;color:var(--color-primary);flex-shrink:0}@media(max-width:640px),(max-height:700px){.gate-fan-container{flex-direction:column;align-items:center;gap:var(--space-3);perspective:none}.gate-fan-card{width:85vw;max-width:320px;--rotation: 0deg;--offset-y: 0;transform:none}.gate-fan-card:hover,.gate-fan-card.focused{transform:scale(1.02)}.gate-fan-card-inner{flex-direction:row}.gate-fan-img{width:100px;height:140px}.gate-fan-img--placeholder{width:100px;height:140px;font-size:2rem}.gate-fan-info{flex:1;text-align:left;padding:var(--space-2) var(--space-3)}}@media(max-width:640px){.user-details-layout{flex-direction:column}.user-details-persona-col{flex:none;flex-direction:row;gap:var(--space-3)}.user-details-persona-img,.user-details-persona-placeholder{width:100px;height:140px}.header-user-pill .pill-name,.header-user-pill .pill-persona{max-width:80px}}.social-post-editor{margin-top:var(--space-3)}.social-post-editor>label{display:block;font-weight:600;margin-bottom:var(--space-2);color:var(--text-primary)}.social-post-editor-delay{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.social-post-editor-delay label{margin:0;font-size:.85rem;color:var(--text-secondary)}.social-post-editor-card{background:var(--surface-raised);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3);margin-bottom:var(--space-3)}.social-post-editor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.social-post-editor-avatar-row{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.social-post-editor-avatar{width:56px;height:64px;border-radius:3px;overflow:hidden;flex-shrink:0;background:#fff;padding:3px 3px 10px;box-shadow:0 1px 4px #0000004d}.social-post-editor-avatar img{width:100%;height:50px;object-fit:cover;border-radius:1px}.social-post-editor-avatar-controls{display:flex;gap:var(--space-2)}.social-post-editor-fields label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:4px;margin-top:var(--space-2)}.social-post-editor-row{display:flex;gap:var(--space-2);flex-wrap:wrap}.social-post-editor-field{flex:1;min-width:120px}.social-post-editor-field-narrow{flex:0 0 80px;min-width:70px}.social-post-editor-fields textarea{resize:vertical}.social-post-alignment-picker{display:flex;gap:var(--space-2);margin-top:4px}.social-post-editor-preview{margin-top:var(--space-2);padding:var(--space-2);background:#00000026;border-radius:var(--radius-lg)}.social-post-editor-preview .social-post-card{font-size:.85rem;padding:var(--space-3);margin-top:28px}.social-post-editor-preview .social-post-card-avatar-float{width:48px;height:54px;padding:3px 3px 8px;top:-28px;left:8px}.social-post-editor-preview .social-post-card-avatar-float img{height:43px}.social-post-editor-preview .social-post-avatar-placeholder{height:43px;font-size:.9rem}.social-post-editor-preview .social-post-card-header,.social-post-editor-preview .social-post-card-body,.social-post-editor-preview .social-post-card-reactions{padding-left:50px}.social-post-display{display:flex;flex-direction:column;gap:var(--space-3);margin:var(--space-3) 0;width:100%}.social-post-align-left{display:flex;justify-content:flex-start;width:100%}.social-post-align-right{display:flex;justify-content:flex-end;width:100%}.social-post-align-left .social-post-card,.social-post-align-right .social-post-card{max-width:75%}.social-post-card{position:relative;border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:10px 14px;margin-top:38px;width:100%;max-width:100%;min-height:80px;transform:scale(.6);opacity:0;height:0;overflow:hidden;transition:transform .5s cubic-bezier(.34,1.56,.64,1),opacity .4s ease;box-shadow:0 4px 24px #0000004d}.social-post-card-visible{transform:scale(1);opacity:1;height:auto;overflow:visible}.social-post-card-typing{transform:scale(1);opacity:1;height:auto;overflow:visible;background:transparent!important;border-color:transparent;box-shadow:none;padding:0;margin-top:38px}.social-post-card-typing>*:not(.social-typing-indicator){display:none}.social-typing-indicator{display:flex;align-items:center;justify-content:center;min-height:80px;animation:typing-fade-in .3s ease forwards}.social-typing-bubble{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;background:#ffffff14;border-radius:18px}.social-typing-dot{width:8px;height:8px;border-radius:50%;background:#ffffff80;animation:typing-bounce 1.2s ease-in-out infinite}.social-typing-dot:nth-child(2){animation-delay:.2s}.social-typing-dot:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}@keyframes typing-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.social-post-card-avatar-float{position:absolute;top:-46px;left:10px;width:80px;height:87px;border-radius:4px;background:#fff;padding:3px 3px 10px;box-shadow:0 3px 12px #0006;z-index:1}.social-post-card-avatar-float img{width:100%;height:74px;object-fit:cover;border-radius:2px}.social-post-avatar-shine{position:absolute;inset:0;border-radius:3px;background:linear-gradient(135deg,#fff0,#ffffff40 45%,#fff0 65%);opacity:0;transition:opacity .4s ease;pointer-events:none}.social-post-card-visible .social-post-avatar-shine{animation:avatar-shine-in .8s ease .3s forwards}.social-post-card:hover .social-post-avatar-shine{opacity:1}@keyframes avatar-shine-in{0%{opacity:0}50%{opacity:1}to{opacity:0}}.social-post-avatar-placeholder{width:100%;height:74px;background:linear-gradient(135deg,#4a6fa5,#3d5a80);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.2rem;border-radius:2px}.social-post-card-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:4px;padding-left:82px}.social-post-card-author{display:flex;flex-direction:column;min-width:0}.social-post-card-name{font-weight:600;color:inherit;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.social-post-card-handle{font-size:.78rem;color:inherit;opacity:.7;line-height:1.2}.social-post-card-body{opacity:0;transition:opacity .6s ease;padding-left:82px}.social-post-card-body p{color:inherit;opacity:.85;font-size:.9rem;line-height:1.45;margin:0;white-space:pre-wrap;word-break:break-word}.social-post-text-visible{opacity:1}.social-post-card-reactions{display:flex;gap:var(--space-3);margin-top:6px;padding-top:4px;padding-left:82px;border-top:2px solid color-mix(in srgb,currentColor 20%,transparent);opacity:0;transition:opacity .6s ease}.social-post-reaction{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;color:inherit;opacity:.7;cursor:default}.social-post-reaction svg{opacity:.7}.social-post-reaction:nth-child(1) svg{color:#4a9eff}.social-post-reaction:nth-child(2) svg{color:#e8537a}.social-post-reaction:nth-child(3) svg{color:#89a}.social-post-card:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,#fff0,#ffffff08 40%,#fff0 70%);opacity:0;transition:opacity .3s ease;pointer-events:none}.social-post-card:hover:after{opacity:1}.social-post-question-deferred{opacity:0;transform:translateY(8px);transition:opacity .5s ease,transform .5s ease}.social-post-question-deferred.social-post-question-visible{opacity:1;transform:translateY(0);animation:interaction-pulse .8s ease-in-out 3}@media(max-width:640px){.social-post-card{max-width:100%;padding:10px 12px;margin-top:30px}.social-post-card-avatar-float{width:56px;height:62px;padding:3px 3px 8px;top:-34px;left:8px}.social-post-card-avatar-float img{height:51px}.social-post-avatar-placeholder{height:51px;font-size:1rem}.social-post-card-header,.social-post-card-body,.social-post-card-reactions{padding-left:56px}.social-post-editor-row{flex-direction:column}.social-post-editor-field-narrow{flex:1}}.scenario-folder{margin-top:var(--space-4)}.folder-tabs{display:flex;align-items:flex-end;gap:2px;padding-left:var(--space-2)}.folder-tab{position:relative;padding:var(--space-2) var(--space-5);font-size:.8rem;font-weight:500;letter-spacing:.03em;text-transform:uppercase;color:var(--color-text-muted);background:var(--color-bg-card);border:2px solid var(--color-border);border-bottom:none;border-radius:6px 6px 0 0;cursor:pointer;transition:all var(--transition-fast);margin-bottom:-1px;z-index:1}.folder-tab:hover{color:var(--color-text-secondary);background:var(--color-bg-hover)}.folder-tab.active{color:var(--color-text);background:var(--color-bg-card);border-color:var(--color-border);font-weight:600;z-index:3;padding-bottom:calc(var(--space-2) + 1px)}.folder-tab-add{font-size:1rem;font-weight:400;padding:var(--space-1) var(--space-4);color:var(--color-text-muted);opacity:.6}.folder-tab-add:hover{opacity:1;color:var(--color-text)}.folder-page{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:0 var(--radius-md) var(--radius-md) var(--radius-md);min-height:400px;position:relative;z-index:2;box-shadow:0 4px 24px #0006,0 1px 3px #0000004d}.folder-page-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);border-bottom:2px solid var(--color-border-light);gap:var(--space-3)}.folder-page-toolbar-left,.folder-page-toolbar-right{display:flex;align-items:center;gap:var(--space-2)}.folder-page-content{padding:var(--space-6)}.btn-cancel-changes{padding:var(--space-2) var(--space-5);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);border:2px solid var(--color-border);cursor:pointer;transition:all var(--transition-fast)}.btn-cancel-changes:hover{background:#ff50501f;color:#ff6b6b;border-color:#ff6b6b}.btn-save-changes{padding:var(--space-2) var(--space-5);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-sm);background:var(--color-border-light);color:var(--color-text-muted);border:2px solid var(--color-border);cursor:default;transition:all var(--transition-fast)}.btn-save-changes:disabled{opacity:.5}.btn-save-dirty{background:var(--color-text);color:var(--color-text-dark);border-color:var(--color-text);cursor:pointer;box-shadow:0 0 12px #fafafa26}.btn-save-dirty:hover{background:#fff;box-shadow:0 0 16px #fafafa40}.btn-discard{color:var(--color-warning)!important;border-color:var(--color-warning)!important;background:transparent!important}.btn-discard:hover{background:#ffaa001a!important}.badge-unsaved{background:var(--color-warning);color:var(--color-text-dark);font-size:.7rem;font-weight:600}.main-tab-section{margin-bottom:var(--space-6)}.main-tab-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin-bottom:var(--space-2)}.main-tab-hint{font-size:.8rem;color:var(--color-text-muted);margin:0 0 var(--space-3) 0;opacity:.7}.theme-colors-editor{display:flex;gap:var(--space-4);flex-wrap:wrap}.theme-color-card{flex:1 1 200px;min-width:200px;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3);background:var(--color-bg-card)}.theme-color-card-title{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);margin-bottom:var(--space-3)}.theme-color-card-body{display:flex;align-items:flex-start;gap:var(--space-4)}.theme-color-pickers{display:flex;gap:var(--space-3)}.theme-color-field{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.theme-color-field-label{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.theme-color-swatch-wrapper{position:relative;cursor:pointer}.theme-color-swatch{width:36px;height:36px;border-radius:var(--radius-md);border:2px solid var(--color-border);transition:border-color .15s ease}.theme-color-swatch-wrapper:hover .theme-color-swatch{border-color:var(--color-text-muted)}.theme-color-native-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.theme-color-preview-wrapper{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.theme-color-preview{border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);font-size:.85rem;font-weight:500;border:1px solid var(--color-border);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bg-wrapper--viewport{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:hidden}.bg-config-editor{display:flex;flex-direction:column;gap:var(--space-4)}.bg-layer-section{border:2px solid var(--color-border);border-radius:var(--radius-lg, 8px);padding:var(--space-3) var(--space-4)}.bg-layer-header{font-size:.85rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.bg-config-type-row{display:flex;flex-wrap:wrap;gap:var(--space-4)}.bg-config-type-label{display:flex;align-items:flex-start;gap:var(--space-2);font-size:.85rem;color:var(--color-text);cursor:pointer}.bg-config-type-label input[type=radio]{margin-top:3px;accent-color:var(--color-primary)}.bg-config-type-label small{color:var(--color-text-muted);font-size:.75rem}.bg-config-animation-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-3)}.bg-anim-card{display:flex;flex-direction:column;gap:4px;padding:var(--space-3) var(--space-4);background:#ffffff08;border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:all var(--transition-fast);color:var(--color-text)}.bg-anim-card:hover{background:#ffffff0f;border-color:#ffffff26}.bg-anim-card.active{background:rgba(var(--color-primary-rgb, 59, 130, 246),.1);border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);grid-column:1 / -1;cursor:default}.bg-anim-card-label{font-weight:600;font-size:.85rem}.bg-anim-card-desc{font-size:.75rem;color:var(--color-text-muted);opacity:.7}.bg-anim-card-settings{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:2px solid rgba(255,255,255,.1);width:100%}.bg-anim-setting{display:flex;align-items:center;gap:var(--space-2);font-size:.8rem;color:var(--color-text);cursor:default}.bg-anim-setting>span:first-child{min-width:60px;color:var(--color-text-muted);font-size:.75rem}.bg-anim-setting input[type=color]{width:28px;height:28px;border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;padding:1px;background:transparent}.bg-anim-setting input[type=range]{flex:1;min-width:60px;max-width:120px;accent-color:var(--color-primary)}.bg-config-image-section{display:flex;flex-direction:column;gap:var(--space-4)}.bg-config-mode-row{margin-top:var(--space-2)}.bg-config-mode-options{display:flex;flex-direction:column;gap:var(--space-3)}.bg-config-common-options{display:flex;flex-direction:column;gap:var(--space-4);padding-top:var(--space-4);border-top:2px solid var(--color-border-light)}.bg-config-color-row{display:flex;flex-wrap:wrap;gap:var(--space-6)}.bg-config-color-label{display:flex;flex-direction:column;gap:var(--space-2);font-size:.85rem;color:var(--color-text)}.bg-config-color-input-group{display:flex;align-items:center;gap:var(--space-2)}.bg-config-color-input-group input[type=color]{width:40px;height:28px;border:2px solid var(--color-border);border-radius:var(--radius-sm);background:transparent;cursor:pointer;padding:1px}.bg-config-color-reset{font-size:.75rem;color:var(--color-text-muted);background:none;border:none;cursor:pointer;text-decoration:underline;padding:0}.bg-config-color-reset:hover{color:var(--color-text)}.bg-config-lw-value{font-size:.8rem;color:var(--color-text-muted);min-width:2.5em;text-align:center}.alpha-color-picker{display:flex;flex-direction:column;gap:4px}.alpha-color-label{font-size:.75rem;color:var(--color-text-muted)}.alpha-color-controls{display:flex;align-items:center;gap:var(--space-2)}.alpha-color-swatch{position:relative;width:28px;height:28px;border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;background-image:linear-gradient(45deg,#555 25%,transparent 25%),linear-gradient(-45deg,#555 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#555 75%),linear-gradient(-45deg,transparent 75%,#555 75%);background-size:8px 8px;background-position:0 0,0 4px,4px -4px,-4px 0;overflow:hidden}.alpha-color-overlay{position:absolute;inset:0;border-radius:inherit;pointer-events:none}.alpha-color-native{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;z-index:1}.alpha-color-slider{flex:1;min-width:50px;max-width:80px;accent-color:var(--color-primary)}.alpha-color-value{font-size:.75rem;color:var(--color-text-muted);min-width:2.5em;text-align:right}.turn-bg-override{margin-bottom:var(--space-3);padding:var(--space-3);border:2px dashed var(--color-border);border-radius:var(--radius-md);background:#ffffff05}.turn-bg-override-row{display:flex;gap:var(--space-6);flex-wrap:wrap}.scenario-title-input-v2{display:block;width:100%;font-size:1.5rem;font-weight:700;color:var(--color-text);background:var(--color-bg);border:2px dashed var(--color-border-frame);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);transition:all var(--transition-fast)}.scenario-title-input-v2:hover{border-color:var(--color-text-muted);border-style:solid}.scenario-title-input-v2:focus{border-color:var(--color-text);border-style:solid;outline:none;background:var(--color-bg-card);box-shadow:0 0 0 3px #f3dfa50f}.scenario-title-readonly{font-size:1.5rem;font-weight:700;margin:0;padding:var(--space-3) 0}.scenario-desc-input-v2{display:block;width:100%;font-size:.95rem;color:var(--color-text-secondary);background:var(--color-bg);border:2px dashed var(--color-border-frame);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);resize:vertical;transition:all var(--transition-fast)}.scenario-desc-input-v2:hover{border-color:var(--color-text-muted);border-style:solid}.scenario-desc-input-v2:focus{border-color:var(--color-text);border-style:solid;outline:none;background:var(--color-bg-card);box-shadow:0 0 0 3px #f3dfa50f}.pe-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4);gap:var(--space-3)}.pe-page-info{display:flex;align-items:center;gap:var(--space-3)}.pe-page-name-input{font-size:.85rem;background:transparent;border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);padding:var(--space-1) var(--space-2);min-width:200px;transition:border-color var(--transition-fast)}.pe-page-name-input:focus{border-color:var(--color-primary);outline:none}.pe-elements{margin:var(--space-3) 0}.pe-insert-point{display:flex;justify-content:center;align-items:center;padding:0;position:relative;height:20px;opacity:0;transition:opacity .2s ease}.pe-insert-point:hover,.pe-insert-point:focus-within,.pe-insert-point--has-menu{opacity:1}.pe-insert-point:before{content:"";position:absolute;left:10%;right:10%;top:50%;height:1px;background:var(--color-border);opacity:0;transition:opacity .2s ease}.pe-insert-point:hover:before{opacity:1}.pe-insert-btn{width:24px;height:24px;padding:0;border-radius:50%;background:var(--color-bg-hover);color:var(--color-text-muted);font-size:1rem;line-height:1;opacity:.7;transition:all var(--transition-fast);z-index:1}.pe-insert-btn:hover{opacity:1;background:var(--color-primary);color:var(--color-text-dark);transform:scale(1.1)}.pe-insert-menu{position:absolute;top:100%;z-index:10;display:flex;gap:var(--space-1);flex-wrap:wrap;justify-content:center;background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2);box-shadow:var(--shadow-md)}.pe-insert-menu-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--color-bg-hover);border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;white-space:nowrap;color:#fff}.pe-insert-menu-item:hover{background:var(--color-primary);color:var(--color-text-dark)}.pe-insert-menu-icon{font-size:1.2rem;color:#fff}.pe-element{border:2px solid var(--color-border);border-radius:var(--radius-md);background:#ffffff05;overflow:hidden}.pe-element-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:#ffffff08;border-bottom:2px solid var(--color-border);gap:var(--space-2)}.pe-element-type{display:flex;align-items:center;gap:var(--space-2);font-size:.8rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.pe-element-icon{font-size:1rem}.pe-element-controls{display:flex;align-items:center;gap:var(--space-1)}.pe-element-body{padding:var(--space-3)}.pe-edit-btn{padding:2px 8px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-sm);background:#ffffff0f;color:var(--color-text-muted);border:2px solid var(--color-border);cursor:pointer;transition:all var(--transition-fast)}.pe-edit-btn:hover{background:var(--color-primary);color:var(--color-text-dark);border-color:var(--color-primary)}.epm-modal{max-width:700px;width:90vw;max-height:85vh;display:flex;flex-direction:column}.epm-title{margin:0 0 var(--space-3) 0;font-size:1.1rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text)}.epm-body{flex:1;overflow-y:auto;padding:var(--space-2) 0}.epm-field{margin-bottom:var(--space-4)}.epm-label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2)}.epm-input{width:100%;background:transparent;border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);padding:var(--space-2);font-size:.95rem}.epm-input:focus{border-color:var(--color-primary);outline:none}.epm-textarea{width:100%;min-height:80px;background:transparent;border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);padding:var(--space-2);font-size:.9rem;resize:vertical}.epm-textarea:focus{border-color:var(--color-primary);outline:none}.epm-select{width:100%;background:var(--color-bg-hover);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);padding:var(--space-2);font-size:.9rem}.epm-preview{margin-top:var(--space-2);padding:var(--space-3);background:#ffffff05;border:2px solid var(--color-border);border-radius:var(--radius-sm)}.epm-hint{color:var(--color-text-muted);font-size:.85rem;font-style:italic}.epm-interaction-editor{display:flex;flex-direction:column;gap:var(--space-3)}.epm-footer{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4);border-top:2px solid var(--color-border);margin-top:var(--space-3)}.epm-footer .btn-primary{padding:var(--space-2) var(--space-5);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-sm);background:var(--color-primary);color:var(--color-text-dark);border:2px solid var(--color-primary);cursor:pointer;transition:all var(--transition-fast)}.epm-footer .btn-primary:hover{filter:brightness(1.1)}.epm-footer .btn-primary:disabled{opacity:.5;cursor:default}.epm-footer .btn-cancel{padding:var(--space-2) var(--space-5);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);border:2px solid var(--color-border);cursor:pointer;transition:all var(--transition-fast)}.epm-footer .btn-cancel:hover{color:var(--color-text);border-color:var(--color-text-muted)}.epm-image-display-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.epm-image-mode-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-2);background:var(--color-bg-hover);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;transition:var(--transition-fast);text-align:center}.epm-image-mode-btn:hover{background:#ffffff14}.epm-image-mode-btn.active{background:var(--color-primary);color:var(--color-text-dark);border-color:var(--color-primary)}.epm-image-mode-label{font-size:.82rem;font-weight:600}.epm-image-mode-desc{font-size:.7rem;opacity:.7;line-height:1.2}.epm-image-align-grid{display:inline-flex;flex-direction:column;gap:2px;padding:var(--space-2);background:var(--color-bg-hover);border-radius:var(--radius-sm);border:2px solid var(--color-border)}.epm-image-align-row{display:flex;gap:2px}.epm-image-align-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#ffffff0a;border:2px solid transparent;border-radius:3px;cursor:pointer;transition:var(--transition-fast)}.epm-image-align-btn:hover{background:#ffffff1a}.epm-image-align-btn.active{background:var(--color-primary);border-color:var(--color-primary)}.epm-image-align-dot{width:6px;height:6px;border-radius:50%;background:var(--color-text-muted)}.epm-image-align-btn.active .epm-image-align-dot{background:var(--color-text-dark)}.epm-image-preview{border-radius:var(--radius-md);overflow:hidden}.pe-title-input{width:100%;font-size:1.2rem;font-weight:700;background:transparent;border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);padding:var(--space-2)}.pe-title-input:focus{border-color:var(--color-primary);outline:none}.pe-text-input{width:100%;min-height:60px;background:transparent;border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);padding:var(--space-2);font-size:.9rem;resize:vertical}.pe-text-input:focus{border-color:var(--color-primary);outline:none}.pe-interaction-editor label{display:block;margin-top:var(--space-3);margin-bottom:var(--space-1);font-weight:600;font-size:.85rem;color:var(--color-text-muted)}.pe-interaction-editor label:first-child{margin-top:0}.pe-interaction-editor textarea,.pe-interaction-editor select,.pe-interaction-editor input[type=number]{width:100%}.pe-chart-placeholder,.pe-map-placeholder{text-align:center;padding:var(--space-4) var(--space-3);border:2px dashed var(--color-border);border-radius:var(--radius);color:var(--color-text-muted)}.pe-chart-placeholder p,.pe-map-placeholder p{margin:var(--space-1) 0}.pe-placeholder-icon{font-size:2rem;display:block;margin-bottom:var(--space-2)}.pe-placeholder-hint{font-size:.8rem;opacity:.7}.chart-editor{display:flex;flex-direction:column;gap:var(--space-2)}.chart-editor-row{display:flex;flex-direction:column;gap:var(--space-1)}.chart-editor-row>label{font-weight:600;font-size:.85rem;color:var(--color-text-muted)}.chart-editor-row select{width:100%}.chart-editor-preview{border:2px solid var(--color-border);border-radius:var(--radius);overflow:hidden;background:var(--color-bg)}.chart-editor-fakedata{display:flex;gap:var(--space-3);flex-wrap:wrap}.chart-editor-fakedata label{display:flex;flex-direction:column;gap:var(--space-1);font-size:.8rem;color:var(--color-text-muted)}.chart-editor-fakedata input[type=number]{width:100px}.chart-editor-json{display:flex;flex-direction:column;gap:var(--space-2)}.chart-json-textarea{font-family:monospace;font-size:.8rem;resize:vertical;background:var(--color-bg);color:var(--color-text);border:2px solid var(--color-border);border-radius:var(--radius);padding:var(--space-2)}.pe-display-chart{width:100%;margin:var(--space-3) 0;border-radius:var(--radius);overflow:hidden;aspect-ratio:16 / 9}.chart-renderer-wrap{position:relative;overflow:hidden;border-radius:var(--radius);background:#0a0a14;color:#e0e0e0;height:100%}.map-editor{display:flex;flex-direction:column;gap:var(--space-2)}.map-editor-row{display:flex;flex-direction:column;gap:var(--space-1)}.map-editor-row>label{font-weight:600;font-size:.85rem;color:var(--color-text-muted)}.map-editor-row select{width:100%}.map-editor-coords{display:flex;gap:var(--space-3);flex-wrap:wrap}.map-editor-coords label{display:flex;flex-direction:column;gap:var(--space-1);font-size:.8rem;color:var(--color-text-muted)}.map-editor-coords input[type=number]{width:100px}.map-editor-preview{border:2px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.map-editor-preview .leaflet-container{background:#1a1a2e}.map-editor-markers{display:flex;flex-direction:column;gap:var(--space-2)}.map-editor-markers>label{font-weight:600;font-size:.85rem;color:var(--color-text-muted)}.map-marker-row{display:flex;gap:var(--space-1);align-items:center;flex-wrap:wrap}.map-marker-coord,.map-marker-color{width:80px}.map-marker-pulse{font-size:.8rem;white-space:nowrap}.map-editor-fakedata{display:flex;gap:var(--space-3);flex-wrap:wrap}.map-editor-fakedata label{display:flex;flex-direction:column;gap:var(--space-1);font-size:.8rem;color:var(--color-text-muted)}.map-editor-fakedata input[type=number]{width:100px}.pe-display-map{width:100%;margin:var(--space-3) 0;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:4 / 3}.map-renderer-wrap{position:relative;border-radius:var(--radius-md);overflow:hidden;height:100%}.map-renderer-wrap .leaflet-container{background:#1a1a2e}.map-renderer-wrap .leaflet-control-attribution a{pointer-events:none;text-decoration:none;color:inherit}.map-marker-icon{background:none!important;border:none!important}.map-marker-dot{border-radius:50%;border:2px solid rgba(255,255,255,.8);position:relative}.map-marker-label{position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap;font-size:11px;color:#eee;text-shadow:0 1px 3px rgba(0,0,0,.8),0 0 6px rgba(0,0,0,.6);pointer-events:none}.map-marker-size{width:72px;font-size:.8rem}.map-pulse-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;border:2px solid currentColor;animation:mapPulse 2s ease-out infinite;pointer-events:none}@keyframes mapPulse{0%{transform:translate(-50%,-50%) scale(.5);opacity:.8}to{transform:translate(-50%,-50%) scale(1.4);opacity:0}}.map-editor-row .btn-active{background:var(--color-primary);color:#fff}@media(max-width:640px){.chart-editor-fakedata,.map-editor-fakedata,.map-editor-coords{flex-direction:column;gap:var(--space-2)}.chart-editor-fakedata input[type=number],.map-editor-fakedata input[type=number],.map-editor-coords input[type=number]{width:100%}.map-marker-row{flex-wrap:wrap;gap:var(--space-1)}.map-marker-label{width:100%;min-width:unset}.map-marker-coord{width:calc(50% - var(--space-1))}.map-marker-color{width:auto;flex:1}.chart-editor-preview,.map-editor-preview{min-height:200px}.pe-display-chart,.pe-display-map{margin:var(--space-2) 0}}.pe-reveal{animation:peRevealIn .4s ease-out both}@keyframes peRevealIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.pe-display-title{margin:var(--space-3) 0 var(--space-2)}.pe-display-text{margin:var(--space-2) 0;color:var(--color-text-secondary);line-height:1.6;white-space:pre-wrap}.pe-display-image{display:flex;flex-direction:column;align-items:center;max-width:100%;max-height:100%}.pe-display-image img{max-width:100%;max-height:100%;border-radius:var(--radius-md)}.pe-image-caption{margin:4px 0 0;color:var(--color-text-secondary);font-size:.9em;line-height:1.3;text-align:center;width:100%;flex-shrink:0}.pe-image-caption:first-child{margin:0 0 4px}.pe-visual-canvas{padding:var(--space-2) 0}.pe-visual-element{position:relative}.pe-hover-controls{position:absolute;top:4px;right:4px;z-index:5;display:flex;gap:2px;opacity:0;transition:opacity .15s ease;pointer-events:none;background:#141210d9;border-radius:var(--radius-sm);padding:2px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pe-visual-element:hover>.pe-hover-controls{opacity:1;pointer-events:auto}.pe-hover-controls--col{top:2px;right:2px}.pe-hover-btn{width:26px;height:26px;padding:0;border-radius:var(--radius-sm);background:#ffffff14;color:var(--color-text-muted);font-size:.8rem;line-height:1;cursor:pointer;transition:all var(--transition-fast);border:none}.pe-hover-btn:hover{background:var(--color-primary);color:var(--color-text-dark)}.pe-hover-btn:disabled{opacity:.3;cursor:default}.pe-hover-btn:disabled:hover{background:#ffffff14;color:var(--color-text-muted)}.pe-hover-btn--danger:hover{background:#f44;color:#fff}.pe-visual-element:hover{outline:1px dashed rgba(255,255,255,.15);outline-offset:2px;border-radius:var(--radius-sm)}.pe-visual-element--col:hover{outline-offset:1px}.pe-page-admin-bar{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:#ffffff08;border-bottom:2px solid var(--color-border);margin-bottom:var(--space-2)}.pe-page-admin-bar .pe-page-name-input{flex:1;font-size:.8rem;padding:var(--space-1) var(--space-2);background:transparent;border:2px solid transparent;color:var(--color-text-muted);border-radius:var(--radius-sm)}.pe-page-admin-bar .pe-page-name-input:focus{border-color:var(--color-border);color:var(--color-text);outline:none}.pe-page-admin-controls{display:flex;gap:2px}.pe-preview-empty{opacity:.5;font-style:italic}.pe-display-chart-wrap,.pe-display-map-wrap{width:100%;display:flex;flex-direction:column;min-height:0}.pe-display-video{margin:var(--space-3) 0}.pe-display-video video{max-width:100%;border-radius:var(--radius-md)}.pe-display-interaction{margin:var(--space-3) 0;padding:var(--space-4);width:100%;background:transparent;border:none;border-radius:0}.pe-display-interaction-preview{margin:var(--space-3) 0;padding:var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-md);background:#ffffff08}.pe-display-interaction-preview>div{width:100%}@keyframes interaction-pulse{0%{border-color:#000;box-shadow:0 0 #0000}50%{border-color:#fff;box-shadow:0 0 14px 3px #ffffff40}to{border-color:#000;box-shadow:0 0 #0000}}.pe-columns-editor{display:flex;flex-direction:column;gap:var(--space-3)}.pe-columns-config{display:flex;align-items:center;gap:var(--space-2)}.pe-columns-label{font-size:.8rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.pe-columns-count-btn{padding:var(--space-1) var(--space-3);font-size:.78rem;font-weight:500;background:var(--color-bg-hover);color:var(--color-text-muted);border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.pe-columns-count-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.pe-columns-count-btn.active{background:var(--color-primary);color:var(--color-text-dark);border-color:var(--color-primary);font-weight:600}.pe-columns-grid{display:grid;gap:var(--space-3)}.pe-column{min-height:80px;background:#ffffff05;border:2px dashed var(--color-border);border-radius:var(--radius-sm);padding:var(--space-2)}.pe-column-header{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);padding:var(--space-1) var(--space-2);border-bottom:2px solid var(--color-border);margin-bottom:var(--space-2)}.pe-column-empty{text-align:center;color:var(--color-text-muted);font-size:.8rem;opacity:.6;margin:var(--space-3) 0}.pe-column-child{margin:var(--space-1) 0}.pe-insert-point--col{padding:2px 0}.pe-insert-btn--col{width:22px;height:22px;font-size:.9rem}.pe-columns-widths-display{font-size:.75rem;color:var(--color-text-muted);opacity:.7;margin-left:var(--space-2)}.pe-column-width-label{font-weight:400;opacity:.6;margin-left:var(--space-1)}.pe-columns-grid-with-dividers{display:grid}.pe-column-slot{position:relative;min-width:0}.pe-column-divider{position:absolute;top:0;left:-6px;width:12px;height:100%;cursor:col-resize;z-index:5;display:flex;align-items:center;justify-content:center;touch-action:none}.pe-column-divider:before{content:"";width:3px;height:100%;max-height:80px;background:var(--color-border);border-radius:2px;transition:background var(--transition-fast),width var(--transition-fast)}.pe-column-divider:hover:before,.pe-column-divider:active:before{background:var(--color-primary);width:4px}.element-resizer{position:relative}.element-resizer>.pe-display-chart,.element-resizer>.pe-display-map{width:100%;height:100%;margin:0}.element-resize-handle{position:absolute;z-index:10;opacity:0;transition:opacity var(--transition-fast);touch-action:none}.element-resizer:hover .element-resize-handle,.element-resizer--dragging .element-resize-handle{opacity:1}.element-resize-handle--right{top:0;right:-4px;width:8px;height:100%;cursor:ew-resize}.element-resize-handle--right:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:3px;height:40px;max-height:60%;background:var(--color-primary);border-radius:2px}.element-resize-handle--bottom{bottom:-4px;left:0;width:100%;height:8px;cursor:ns-resize}.element-resize-handle--bottom:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;max-width:60%;height:3px;background:var(--color-primary);border-radius:2px}.element-resize-handle--corner{bottom:-5px;right:-5px;width:14px;height:14px;cursor:nwse-resize}.element-resize-handle--corner:before{content:"";position:absolute;bottom:3px;right:3px;width:8px;height:8px;border-right:2px solid var(--color-primary);border-bottom:2px solid var(--color-primary);border-radius:0 0 2px}.element-resizer--dragging{outline:1px dashed var(--color-primary);outline-offset:2px}.pe-display-columns{display:grid;gap:var(--space-4);margin:var(--space-3) 0}.pe-display-column{min-width:0}.pe-display-column .pe-display-image img,.pe-display-column .pe-display-video video{max-width:100%}@media(max-width:640px){.pe-display-columns,.pe-columns-grid{grid-template-columns:1fr!important}}.tab-add{font-size:1.1rem;font-weight:700;min-width:36px}.option-video-row{margin-top:4px}.option-video-badge{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;color:var(--clr-accent, #4dabf7);background:#4dabf71f;border-radius:var(--radius-sm, 4px);padding:2px 8px}.option-video-badge .btn-sm{padding:0 4px;font-size:.75rem;line-height:1}.option-video-warning{font-size:.82rem;color:var(--color-draft);margin:6px 0 0;padding:6px 10px;background:#dc78001a;border-radius:var(--radius-sm, 4px);border-left:3px solid rgba(220,120,0,.5)}.option-video-hint{font-size:.82rem;color:#ffffff8c;margin:6px 0 0}.role-based-prompts-editor{margin-top:var(--space-3, 12px)}.role-prompts-tabs{margin-top:var(--space-2, 8px);border:2px solid var(--color-border);border-radius:var(--radius-md, 8px);padding:var(--space-3, 12px);background:#00000026}.role-tabs-bar{display:flex;gap:4px;margin-bottom:var(--space-2, 8px);flex-wrap:wrap}.role-tab{padding:6px 14px;border:2px solid var(--color-border);border-radius:var(--radius-sm, 4px);background:#ffffff0d;color:#ffffffb3;cursor:pointer;font-size:.85rem;position:relative;transition:background var(--transition-fast),border-color var(--transition-fast)}.role-tab:hover{background:#ffffff1a}.role-tab.active{background:#4dabf733;border-color:var(--clr-accent, #4dabf7);color:#fff}.role-tab-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--clr-accent, #4dabf7);margin-left:6px;vertical-align:middle}.role-prompt-hint{font-size:.8rem;color:#ffffff73;margin-top:4px}.session-leave-btn{margin-left:auto;font-size:.8rem}.onboarding-card{padding:var(--space-6, 2rem) var(--space-5, 1.5rem);margin:0 auto;text-align:center;animation:fadeSlideUp .35s ease-out}.onboarding-card--wide{max-width:none}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.onboarding-title{font-size:1.4rem;font-weight:700;margin:0 auto var(--space-4, 1rem);max-width:640px;color:var(--color-text)}.onboarding-subtitle{font-size:1rem;color:var(--color-text-muted);margin:0 auto var(--space-4, 1rem);max-width:640px}.onboarding-image-wrap{margin:0 auto var(--space-4, 1rem);max-width:640px}.onboarding-image{max-width:100%;max-height:320px;border-radius:var(--radius-md, 8px);object-fit:contain}.onboarding-description{color:var(--color-text-muted);font-size:.95rem;line-height:1.6;margin:0 auto var(--space-4, 1rem);max-width:640px;white-space:pre-line}.onboarding-role-badge{display:inline-block;background:var(--color-primary, #4263eb);color:#fff;padding:4px 14px;border-radius:999px;font-size:.85rem;font-weight:600;margin-bottom:var(--space-3, .75rem)}.onboarding-role-title{font-size:1.25rem;font-weight:700;margin-bottom:var(--space-3, .75rem);color:var(--color-text)}.btn-onboarding-continue{display:inline-flex;align-items:center;gap:6px;background:var(--color-primary, #4263eb);color:#fff;border:none;padding:10px 28px;border-radius:var(--radius-md, 8px);font-size:1rem;font-weight:600;cursor:pointer;transition:background var(--transition-normal);margin-top:var(--space-3, .75rem)}.btn-onboarding-continue:hover{background:var(--color-primary-hover, #3b5bdb)}.btn-onboarding-continue:disabled{opacity:.6;cursor:not-allowed}.btn-onboarding-back{display:inline-flex;align-items:center;gap:6px;background:transparent;color:var(--color-text-muted);border:2px solid var(--color-border);padding:8px 20px;border-radius:var(--radius-md, 8px);font-size:.9rem;cursor:pointer;transition:background var(--transition-normal),color var(--transition-normal);margin-top:var(--space-2, .5rem);margin-right:var(--space-2, .5rem)}.btn-onboarding-back:hover{background:var(--color-surface-hover, rgba(255,255,255,.05));color:var(--color-text)}.onboarding-role-grid{display:grid;grid-template-columns:1fr;gap:var(--space-3, .75rem);margin:0 auto var(--space-4, 1rem);max-width:640px}.onboarding-role-card{display:flex;flex-direction:column;gap:var(--space-2, .5rem);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md, 8px);padding:var(--space-4, 1rem);cursor:pointer;transition:border-color var(--transition-normal),transform var(--transition-fast);text-align:left}.onboarding-role-card:hover{border-color:var(--color-primary, #4263eb);transform:translateY(-2px)}.onboarding-role-card.selected{border-color:var(--color-primary, #4263eb);background:#4263eb14}.onboarding-role-name{font-weight:600;font-size:1rem;margin-bottom:4px;color:var(--color-text)}.onboarding-role-desc{font-size:.85rem;color:var(--color-text-muted);line-height:1.4}@media(max-width:640px){.onboarding-card{padding:var(--space-4, 1rem);margin:0 var(--space-2, .5rem)}.onboarding-role-grid{grid-template-columns:1fr}}.help-page{display:flex;gap:var(--space-6);min-height:60vh}.help-sidebar{position:sticky;top:var(--space-4);flex-shrink:0;width:220px;max-height:calc(100vh - 120px);overflow-y:auto;padding-right:var(--space-4);border-right:2px solid var(--color-border)}.help-sidebar-group{margin-bottom:var(--space-4)}.help-sidebar-heading{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin:0 0 var(--space-2) 0;padding:0}.help-sidebar ul{list-style:none;margin:0;padding:0}.help-sidebar li{margin:0}.help-sidebar a{display:block;padding:3px var(--space-2);font-size:.78rem;color:var(--color-text-secondary);text-decoration:none;border-radius:4px;line-height:1.5;transition:background .15s,color .15s}.help-sidebar a:hover{background:var(--color-bg-hover);color:var(--color-text)}.help-sidebar a.active{color:var(--color-primary);background:#b8d46314;font-weight:600}.help-content{flex:1;min-width:0;max-width:780px}.help-content h1{font-size:1.6rem;font-weight:700;margin:0 0 var(--space-2) 0}.help-intro{color:var(--color-text-muted);margin-bottom:var(--space-6);font-size:.95rem}.help-part-header{margin-bottom:var(--space-4)}.help-part-title{font-size:1.25rem;font-weight:700;color:var(--color-primary);margin:0 0 var(--space-1) 0}.help-part-header p{color:var(--color-text-muted);font-size:.9rem;margin:0}.help-content section{margin-bottom:var(--space-8)}.help-content h2{font-size:1.1rem;font-weight:600;margin:var(--space-6) 0 var(--space-3) 0;padding-bottom:var(--space-2);border-bottom:2px solid var(--color-border)}.help-content h3{font-size:.95rem;font-weight:600;margin:var(--space-4) 0 var(--space-2) 0}.help-content p{font-size:.9rem;line-height:1.7;margin:0 0 var(--space-3) 0}.help-content ul,.help-content ol{font-size:.9rem;line-height:1.7;padding-left:var(--space-6);margin:0 0 var(--space-3) 0}.help-content li{margin-bottom:var(--space-1)}.help-content ul ul{margin-top:var(--space-1);margin-bottom:var(--space-1)}.help-tip{background:var(--color-bg-card);border-left:3px solid var(--color-primary);padding:var(--space-3) var(--space-4);margin:var(--space-3) 0;border-radius:0 6px 6px 0;font-size:.85rem;line-height:1.6}.help-table{width:100%;border-collapse:collapse;font-size:.85rem;margin:var(--space-3) 0}.help-table th,.help-table td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:2px solid var(--color-border)}.help-table th{color:var(--color-text-muted);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.help-table td strong{color:var(--color-text)}.help-divider{border:none;border-top:2px solid var(--color-border);margin:var(--space-8) 0}.help-lifecycle{background:var(--color-bg-card);border-radius:8px;padding:var(--space-4);margin:var(--space-4) 0;overflow-x:auto}.lifecycle-flow{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.lifecycle-box{background:var(--color-bg-hover);border:2px solid var(--color-border);border-radius:6px;padding:var(--space-2) var(--space-4);font-size:.8rem;font-weight:700;letter-spacing:.05em;white-space:nowrap}.lifecycle-arrow{color:var(--color-text-muted);font-size:.75rem;white-space:nowrap}@media(max-width:860px){.help-page{flex-direction:column}.help-sidebar{position:static;width:100%;max-height:none;border-right:none;border-bottom:2px solid var(--color-border);padding-right:0;padding-bottom:var(--space-4);display:flex;flex-wrap:wrap;gap:var(--space-4)}.help-sidebar-group{margin-bottom:0}.help-sidebar ul{display:flex;flex-wrap:wrap;gap:var(--space-1)}.help-sidebar a{font-size:.75rem;padding:2px var(--space-2)}}.panel-editor-root{width:100%;height:100%;position:relative}.panel-editor-root .panel-node{width:100%;height:100%;position:relative;box-sizing:border-box}.panel-node--leaf{overflow:auto;position:relative;border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3);transition:border-color .15s ease,box-shadow .15s ease}.panel-node--leaf:hover{border-color:#fff3}.panel-corners-angular.panel-node--leaf,.panel-corners-notched.panel-node--leaf,.panel-corners-beveled.panel-node--leaf{border:none;filter:drop-shadow(0 0 .5px rgba(255,255,255,.15));transition:filter .15s ease}.panel-corners-angular.panel-node--leaf:hover,.panel-corners-notched.panel-node--leaf:hover,.panel-corners-beveled.panel-node--leaf:hover{filter:drop-shadow(0 0 .5px rgba(255,255,255,.4))}.panel-node--empty{display:flex;align-items:center;justify-content:center}.panel-node--split{display:flex;overflow:hidden;gap:var(--space-3)}.panel-node--horizontal{flex-direction:row}.panel-node--vertical{flex-direction:column}.panel-child-wrapper{position:relative;min-width:0;min-height:0;display:flex}.panel-child-wrapper>.panel-node{flex:1}.panel-empty-hint{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);color:var(--color-text-muted);opacity:.5;font-size:.85rem;-webkit-user-select:none;user-select:none;pointer-events:none}.panel-empty-icon{font-size:1.5rem;opacity:.4}.panel-element-container{width:100%;height:100%;overflow:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.panel-element-container>*{margin:0}.panel-divider{position:absolute;z-index:10;flex-shrink:0;background:transparent;transition:background-color .15s ease}.panel-divider:hover,.panel-divider:active{background-color:var(--color-primary)}.panel-divider--horizontal{width:6px;height:100%;left:-3px;top:0;cursor:col-resize}.panel-divider--vertical{height:6px;width:100%;top:-3px;left:0;cursor:row-resize}.panel-ctx-menu{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:200px;padding:var(--space-1);font-size:.85rem}.panel-ctx-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);width:100%;border:none;background:none;color:var(--color-text);cursor:pointer;border-radius:var(--radius-sm);text-align:left;position:relative;white-space:nowrap;font-size:.85rem}.panel-ctx-item:hover{background:var(--color-bg-hover)}.panel-ctx-item--danger:hover{background:#ff505026;color:#ff5050}.panel-ctx-confirm{padding:var(--space-2) var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.panel-ctx-confirm-msg{font-size:.8rem;color:#ff8080;font-weight:500}.panel-ctx-confirm-btns{display:flex;gap:var(--space-2)}.panel-ctx-confirm-yes{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:.78rem;cursor:pointer;border:none;background:#ff505033;color:#ff5050}.panel-ctx-confirm-yes:hover{background:#ff505059}.panel-ctx-confirm-no{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:.78rem;cursor:pointer;border:none;background:#ffffff14;color:var(--color-text-muted)}.panel-ctx-confirm-no:hover{background:#ffffff26}.panel-ctx-item--has-sub:after{content:"▶";margin-left:auto;font-size:.65rem;opacity:.5}.panel-ctx-icon{width:1.2em;text-align:center;flex-shrink:0}.panel-ctx-sep{height:1px;background:var(--color-border);margin:var(--space-1) var(--space-2)}.panel-ctx-submenu{position:absolute;left:100%;top:0;background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:180px;padding:var(--space-1);z-index:1}.panel-ctx-submenu--elements{min-width:160px}.panel-ctx-split-preview{display:inline-flex;gap:2px;width:24px;height:16px;border:2px solid var(--color-border);border-radius:2px;overflow:hidden;flex-shrink:0}.panel-ctx-split-preview--rows{flex-direction:column}.panel-ctx-split-col{flex:1;background:#ffffff1a;border-right:2px solid var(--color-border)}.panel-ctx-split-col:last-child{border-right:none}.panel-ctx-split-row{flex:1;background:#ffffff1a;border-bottom:2px solid var(--color-border)}.panel-ctx-split-row:last-child{border-bottom:none}.role-selector-bar{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff0a;border-bottom:1px solid var(--color-border);flex-shrink:0}.role-selector-label{font-size:.78rem;color:#ffffff80;margin-right:4px;white-space:nowrap}.role-selector-btn{padding:3px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#ffffff0a;color:#fff9;font-size:.78rem;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.role-selector-btn:hover{background:#ffffff1a;color:#fff}.role-selector-btn.active{background:#4dabf733;border-color:var(--clr-accent, #4dabf7);color:#fff}.panel-role-badge{position:absolute;top:4px;right:4px;font-size:.65rem;padding:2px 6px;border-radius:var(--radius-sm);background:#4dabf740;color:#fffc;z-index:2;pointer-events:none;white-space:nowrap}.epm-role-indicator{font-size:.85rem;font-weight:400;color:var(--clr-accent, #4dabf7);margin-left:8px}.panel-style-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.panel-style-modal{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);max-width:520px;width:90%;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-md)}.panel-style-title{margin:0 0 var(--space-4);font-size:1.1rem}.panel-style-section{margin-bottom:var(--space-4)}.panel-style-label{display:block;font-size:.85rem;font-weight:600;color:var(--color-text-muted);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.04em}.panel-style-row{display:flex;gap:var(--space-4);align-items:flex-start;margin-bottom:var(--space-3)}.panel-style-section--half{flex:1;min-width:0}.panel-style-per-mode-toggle{display:flex;align-items:center;gap:var(--space-2);font-size:.85rem;cursor:pointer}.panel-style-per-mode-toggle input[type=checkbox]{accent-color:var(--color-primary)}.panel-style-modes{display:flex;flex-direction:column;gap:var(--space-2)}.panel-style-mode-card{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.panel-style-mode-card-title{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin-bottom:var(--space-2)}.panel-style-mode-card--dimmed{opacity:.4;pointer-events:none}.panel-style-opacity-row{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.panel-style-opacity-row input[type=range]{flex:1}.panel-style-label-inline{font-size:.8rem;font-weight:600;color:var(--color-text-muted);white-space:nowrap}.panel-style-text-color-row{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1)}.panel-style-text-color-row .panel-style-color-input{flex:1;min-width:0}.panel-style-previews-row{display:flex;gap:var(--space-2)}.panel-style-preview-card{flex:1;display:flex;flex-direction:column;gap:var(--space-1)}.panel-style-preview-card-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);text-align:center}.panel-style-preview--small{height:60px;font-size:.7rem}.panel-style-corners{display:flex;flex-wrap:wrap;gap:var(--space-2)}.panel-style-corner-btn{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--color-bg-hover);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;font-size:.78rem;transition:var(--transition-fast)}.panel-style-corner-btn.active{background:var(--color-primary);color:var(--color-text-dark);border-color:var(--color-primary)}.panel-style-corner-btn:hover:not(.active){background:#ffffff14}.panel-corner-preview{width:32px;height:24px;border:2px solid currentColor;display:block;background:#ffffff0f}.panel-corner-preview--normal{border-radius:0}.panel-corner-preview--curved{border-radius:8px}.panel-corner-preview--angular{border:none;background:currentColor;opacity:.3;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}.panel-style-corner-btn.active .panel-corner-preview--angular{opacity:1;background:var(--color-text-dark)}.panel-corner-preview--page-curl{border-radius:0;position:relative;overflow:hidden}.panel-corner-preview--page-curl:after{content:"";position:absolute;top:-1px;right:-1px;width:10px;height:10px;background:linear-gradient(225deg,var(--color-bg-card) 50%,rgba(255,255,255,.3) 50%,rgba(255,255,255,.1) 70%);border-bottom-left-radius:3px}.panel-corner-preview--notched{border:none;background:currentColor;opacity:.3;clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 6px,100% calc(100% - 6px),calc(100% - 6px) 100%,6px 100%,0 calc(100% - 6px),0 6px)}.panel-style-corner-btn.active .panel-corner-preview--notched{opacity:1;background:var(--color-text-dark)}.panel-corner-preview--beveled{border:none;background:currentColor;opacity:.3;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px)}.panel-style-corner-btn.active .panel-corner-preview--beveled{opacity:1;background:var(--color-text-dark)}.panel-corners-normal{border-radius:0}.panel-corners-curved{border-radius:12px}.panel-corners-angular{clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px)}.panel-corners-page-curl{border-radius:0;position:relative;overflow:hidden}.panel-corners-page-curl:after{content:"";position:absolute;top:0;right:0;width:28px;height:28px;background:linear-gradient(225deg,var(--color-bg) 48%,rgba(255,255,255,.15) 48%,rgba(255,255,255,.08) 56%,rgba(0,0,0,.15) 56%);pointer-events:none;z-index:2;border-bottom-left-radius:4px;box-shadow:-2px 2px 4px #0003}.panel-corners-folded{border-radius:0;position:relative;overflow:hidden}.panel-corners-folded:after{content:"";position:absolute;top:0;right:0;width:28px;height:28px;background:linear-gradient(225deg,var(--color-bg) 48%,rgba(255,255,255,.15) 48%,rgba(255,255,255,.08) 56%,rgba(0,0,0,.15) 56%);pointer-events:none;z-index:2;border-bottom-left-radius:4px;box-shadow:-2px 2px 4px #0003}.panel-corners-notched{clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px)}.panel-corners-beveled{clip-path:polygon(16px 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 16px)}.panel-style-bg-type{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1)}.panel-style-bg-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);min-width:2.2em}.panel-style-bg-type label{display:flex;align-items:center;gap:.25rem;cursor:pointer;font-size:.8rem}.panel-style-preview-wrapper{background:repeating-conic-gradient(rgba(255,255,255,.05) 0% 25%,transparent 0% 50%) 0 0 / 12px 12px;border-radius:var(--radius-md);border:2px solid var(--color-border);padding:8px}.panel-style-preview{width:100%;height:80px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:#ffffffb3}.panel-style-preview-text{font-size:.85rem;color:inherit;text-shadow:0 1px 3px rgba(0,0,0,.3);pointer-events:none}.panel-style-color-swatch{width:44px;height:36px;padding:2px;border:2px solid var(--color-border);border-radius:var(--radius-sm);background:transparent;cursor:pointer;flex-shrink:0}.panel-style-color-swatch::-webkit-color-swatch-wrapper{padding:0}.panel-style-color-swatch::-webkit-color-swatch{border:none;border-radius:2px}.panel-style-color-swatch::-moz-color-swatch{border:none;border-radius:2px}.panel-style-color-row,.panel-style-image-row{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.panel-style-color-input,.panel-style-url-input{flex:1;min-width:100px;padding:var(--space-1) var(--space-2);background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:.85rem}.panel-style-gradient-controls{display:flex;flex-direction:column;gap:var(--space-2)}.panel-style-gradient-colors{display:flex;gap:var(--space-3)}.panel-style-gradient-color-pick{display:flex;align-items:center;gap:var(--space-2);flex:1}.panel-style-gradient-color-pick label{font-size:.82rem;color:var(--color-text-muted);white-space:nowrap}.panel-style-gradient-color-pick .panel-style-color-input{min-width:70px}.panel-style-gradient-angle{display:flex;align-items:center;gap:var(--space-2);font-size:.82rem}.panel-style-gradient-angle label{color:var(--color-text-muted);white-space:nowrap}.panel-style-gradient-angle input[type=range]{flex:1}.panel-style-angle-value{min-width:40px;text-align:right;font-variant-numeric:tabular-nums}.panel-style-gradient-preview{height:24px;border-radius:var(--radius-sm);border:2px solid var(--color-border)}.panel-style-checkbox{display:flex;align-items:center;gap:var(--space-2);font-size:.85rem;cursor:pointer;margin-bottom:var(--space-2)}.panel-style-pos-grid{display:flex;gap:var(--space-3);margin-top:var(--space-2)}.panel-style-pos-grid label{display:flex;align-items:center;gap:var(--space-1);font-size:.85rem}.panel-style-pos-grid input[type=number]{width:60px;padding:var(--space-1);background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:.85rem}.panel-style-align-grid{display:inline-flex;flex-direction:column;gap:2px;padding:var(--space-2);background:var(--color-bg-hover);border-radius:var(--radius-sm);border:2px solid var(--color-border)}.panel-style-align-row{display:flex;gap:2px}.panel-style-align-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#ffffff0a;border:2px solid transparent;border-radius:3px;cursor:pointer;transition:var(--transition-fast)}.panel-style-align-btn:hover{background:#ffffff1a}.panel-style-align-btn.active{background:var(--color-primary);border-color:var(--color-primary)}.panel-style-align-dot{width:6px;height:6px;border-radius:50%;background:var(--color-text-muted)}.panel-style-align-btn.active .panel-style-align-dot{background:var(--color-text-dark)}.panel-style-footer{display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-4);padding-top:var(--space-3);border-top:2px solid var(--color-border)}.scenario-editor-fullscreen{position:fixed;inset:0;display:flex;flex-direction:column;overflow:hidden;background:var(--color-bg);z-index:100}.scenario-editor-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:#1e1a19f2;border-bottom:2px solid var(--color-border);flex-shrink:0;gap:var(--space-2);z-index:50}.scenario-editor-toolbar-left,.scenario-editor-toolbar-right{display:flex;align-items:center;gap:var(--space-2)}.scenario-editor-tabs{display:flex;gap:2px;align-items:flex-end;flex:1;justify-content:center;overflow-x:auto}.scenario-editor-tab{padding:var(--space-1) var(--space-3);background:#ffffff0a;border:2px solid var(--color-border);border-bottom:none;border-radius:6px 6px 0 0;color:var(--color-text-muted);cursor:pointer;font-size:.8rem;font-weight:500;text-transform:uppercase;white-space:nowrap;transition:var(--transition-fast)}.scenario-editor-tab:hover{background:#ffffff14}.scenario-editor-tab.active{background:var(--color-bg);color:var(--color-text);border-color:var(--color-border)}.scenario-editor-tab-add{font-size:1rem;opacity:.5}.scenario-editor-tab-add:hover{opacity:1}.scenario-editor-tab-branch{font-size:.7rem;opacity:.7;border-left:2px solid rgba(255,180,100,.3)}.scenario-editor-tab-branch.active{opacity:1;border-left-color:#ffb464b3}.scenario-editor-content{flex:1;overflow:hidden;position:relative}.scenario-editor-main-settings{height:100%;overflow-y:auto;padding:var(--space-6);max-width:800px;margin:0 auto}.panel-display-root{width:100%;height:100%;position:relative}.panel-display-root .panel-display-node{width:100%;height:100%;position:relative;box-sizing:border-box}.panel-display-node--leaf{overflow:hidden;overflow-y:auto;position:relative}.panel-display-node--split{display:flex;overflow:hidden;gap:var(--space-3)}.panel-display-node--horizontal{flex-direction:row}.panel-display-node--vertical{flex-direction:column}.panel-display-child{position:relative;min-width:0;min-height:0;display:flex}.panel-display-child>.panel-display-node{flex:1}.panel-display-container{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;align-items:stretch;justify-content:center;position:relative;background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3)}.panel-display-container>*{margin:0;max-height:100%}.panel-display-container .pe-display-title,.panel-display-container .pe-display-text,.panel-display-container .pe-display-image{text-align:center;align-self:center}.panel-display-container .pe-display-interaction,.panel-display-container .social-post-display{align-self:stretch}.panel-display-container .prompt{max-width:none;width:100%}.panel-display-container .pe-display-chart,.panel-display-container .pe-display-map,.panel-display-container .pe-display-chart-wrap,.panel-display-container .pe-display-map-wrap{flex:1 1 0;min-height:0;width:100%;margin:0}.panel-display-container .pe-display-chart,.panel-display-container .pe-display-map{aspect-ratio:unset}.panel-display-container .pe-display-chart-wrap .pe-display-chart,.panel-display-container .pe-display-map-wrap .pe-display-map{flex:1 1 0}.panel-display-container .pe-display-image{flex:1 1 auto;min-height:0;overflow:hidden}.panel-display-container .pe-display-image img{object-fit:contain}.panel-display-container .pe-display-video{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.panel-display-container .pe-display-video video{max-width:100%;max-height:100%;object-fit:contain}.turn-panel-fullscreen{position:relative;width:100%;height:calc(100vh - 180px);z-index:50;overflow:hidden}.turn-panel-fullscreen .panel-display-root{width:100%;height:100%}.qt-container{padding:24px;height:100%;overflow-y:auto}.qt-header{margin-bottom:24px}.qt-header h3{margin:0 0 4px;font-size:1.2rem;color:#fff}.qt-summary{margin:0;font-size:.85rem;color:#ffffff80}.qt-empty{padding:48px 24px;text-align:center;color:#ffffff80}.qt-tree{display:flex;flex-direction:column;gap:4px}.qt-node-wrapper{position:relative}.qt-connector{position:absolute;left:-16px;top:0;width:16px;height:20px;border-left:2px solid rgba(255,255,255,.15);border-bottom:2px solid rgba(255,255,255,.15);border-bottom-left-radius:8px}.qt-node{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;border:2px solid var(--color-border);background:#ffffff0a;transition:border-color .15s,background .15s}.qt-node:hover{border-color:#fff3;background:#ffffff12}.qt-node-root{border-left:3px solid rgba(100,180,255,.5)}.qt-node-branch{border-left:3px solid rgba(255,180,100,.5)}.qt-node-header{flex:1;display:flex;align-items:center;gap:12px;cursor:pointer;min-width:0}.qt-node-index{font-size:.75rem;font-weight:600;color:#fff6;white-space:nowrap;min-width:40px}.qt-node-branch .qt-node-index{color:#ffb464b3}.qt-node-condition{font-size:.7rem;padding:2px 8px;border-radius:10px;background:#ffb4641f;color:#ffb464b3;white-space:nowrap}.qt-node-title{flex:1;font-size:.9rem;color:#ffffffd9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qt-node-type{font-size:.7rem;padding:2px 8px;border-radius:10px;background:#ffffff14;color:#ffffff73;white-space:nowrap}.qt-node-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s}.qt-node:hover .qt-node-actions{opacity:1}.qt-action-btn{padding:3px 10px;font-size:.7rem;border:2px solid var(--color-border);border-radius:4px;background:#ffffff0f;color:#fff9;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.qt-action-btn:hover{background:#ffffff1f;color:#ffffffe6}.qt-action-delete{color:#ff646499;border-color:#ff646433}.qt-action-delete:hover{background:#ff646426;color:#ff6464e6}.qt-children{margin-top:4px;padding-left:16px;border-left:2px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:4px}.qt-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.qt-modal{background:#1e2030;border:2px solid var(--color-border);border-radius:12px;padding:24px;min-width:380px;max-width:480px}.qt-modal h3{margin:0 0 8px;color:#fff;font-size:1.1rem}.qt-modal-hint{margin:0 0 16px;font-size:.8rem;color:#ffffff73}.qt-modal-field{margin-bottom:16px}.qt-modal-field label{display:block;margin-bottom:6px;font-size:.85rem;color:#ffffffa6}.qt-modal-field select,.qt-modal-field input[type=text],.qt-modal-field input[type=number]{width:100%;padding:8px 10px;border:2px solid var(--color-border);border-radius:6px;background:#ffffff0f;color:#fff;font-size:.9rem}.qt-modal-field input[type=number]{width:auto}.qt-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.qt-view-toggle{display:inline-flex;border-radius:6px;overflow:hidden;border:2px solid var(--color-border)}.qt-view-toggle-btn{padding:3px 10px;font-size:.7rem;background:transparent;color:#ffffff73;border:none;cursor:pointer;transition:background .15s,color .15s}.qt-view-toggle-btn:hover{color:#ffffffb3}.qt-view-toggle-btn.active{background:#ffffff1f;color:#fff}.qt-list{display:flex;flex-direction:column;gap:2px;padding:8px 0}.qt-list-item{display:flex;align-items:center;gap:10px;padding:8px 14px;border-radius:6px;cursor:pointer;transition:background .15s}.qt-list-item:hover{background:#ffffff0f}.qt-list-item-branch{padding-left:28px;border-left:2px solid rgba(255,180,100,.25);margin-left:14px}.qt-convergence-badge{font-size:.65rem;padding:2px 6px;border-radius:8px;background:#64c8ff26;color:#64c8ffd9;white-space:nowrap;font-weight:600}.qt-action-converge{color:#64c8ffb3!important;border-color:#64c8ff33!important}.qt-action-converge:hover{background:#64c8ff1a!important;color:#64c8ff!important}.qt-converge-picker{display:flex;align-items:center;gap:8px;padding:6px 12px;margin-top:4px;background:#64c8ff0f;border:2px solid var(--color-border);border-radius:6px}.qt-converge-label{font-size:.75rem;color:#64c8ffb3;white-space:nowrap}.qt-converge-picker select{flex:1;padding:4px 8px;border-radius:4px;border:2px solid var(--color-border);background:#ffffff0f;color:#fff;font-size:.8rem}.qt-converge-picker select option{background:#1e1e2e;color:#fff}.qt-graph-container{overflow:auto;flex:1;padding:8px;min-height:200px}.qt-graph-svg{display:block;min-width:100%}.qt-graph-edge{fill:none;stroke:#fff3;stroke-width:1.5}.qt-graph-edge-converge{fill:none;stroke:#64c8ff66;stroke-width:1.5;stroke-dasharray:6 3}.qt-graph-rect-root{fill:#ffffff0f;stroke:#ffffff40;stroke-width:1.5;transition:fill .15s,stroke .15s}.qt-graph-rect-branch{fill:#ffb4640f;stroke:#ffb4644d;stroke-width:1.5;transition:fill .15s,stroke .15s}.qt-graph-node:hover .qt-graph-rect-root{fill:#ffffff1f;stroke:#ffffff80}.qt-graph-node:hover .qt-graph-rect-branch{fill:#ffb4641f;stroke:#ffb46499}.qt-graph-label{fill:#ffffff80;font-size:10px;font-weight:700;font-family:inherit}.qt-graph-rect-branch+.qt-graph-label+.qt-graph-type+.qt-graph-title,.qt-graph-node .qt-graph-label{font-family:inherit}.qt-graph-type{fill:#ffffff4d;font-size:9px;font-family:inherit}.qt-graph-title{fill:#ffffffd9;font-size:11px;font-family:inherit}.qt-graph-cond{fill:#ffb46499;font-size:9px;font-style:italic;font-family:inherit}.qt-graph-converge-dot{fill:#64c8ffb3}.pdf-export-active{padding:16px!important}.pdf-export-active .control-card{box-shadow:none!important}.pdf-export-active .report-download-pdf-btn,.pdf-export-active .report-close-btn,.pdf-export-active .report-view-toggle,.pdf-export-active .session-control-breadcrumb{display:none!important}.pdf-export-active .report-free-text-content{-webkit-line-clamp:unset!important;overflow:visible!important;display:block!important}@media print{.app-header,.mobile-menu-overlay,.report-close-btn,.report-download-pdf-btn,.report-header-actions button,.report-view-toggle,.session-control-breadcrumb,canvas,.bg-wrapper{display:none!important}body,.app-shell,.main-frame{background:#fff!important;color:#000!important;min-height:auto!important;overflow:visible!important;padding:0!important}.session-report-page{gap:12pt}.control-card{background:#fff!important;border:1px solid #ccc!important;box-shadow:none!important;break-inside:avoid;padding:12pt}.control-card-title,.session-control-title,.report-summary-label,.report-summary-value,.report-stat,.report-stat strong,.report-free-text-author,.report-free-text-content,.report-free-text-counts,.report-ranking-name,.report-ranking-avg,.report-highlight-name,.report-highlight-detail,.report-highlight-label{color:#000!important}.report-turn-card{break-inside:avoid}.progress-table-wrap{overflow:visible!important}.progress-table{font-size:9pt}.progress-cell-done{background:#d4edda!important}.progress-cell-skipped{background:#f8d7da!important}.report-chart-container{break-inside:avoid;overflow:visible!important}.print-chart-img{display:block!important;max-width:100%!important;height:auto!important}.report-free-text-content{-webkit-line-clamp:unset!important;overflow:visible!important;display:block!important}.report-scale-stats .report-stat,.report-scale-stats .report-stat strong,.report-scale-labels span{color:#000!important}.report-ranking-position,.report-ranking-note{color:#333!important}}.files-summary{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-4);font-size:.9rem;color:var(--color-text-secondary);flex-wrap:wrap}.files-summary-sep{opacity:.4}.files-filters{display:flex;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap}.files-search{flex:1;min-width:200px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:.9rem}.files-search:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-faint, rgba(99, 102, 241, .15))}.files-filter-select{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:.9rem;cursor:pointer}.files-filter-select option{background:var(--color-surface);color:var(--color-text)}.files-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-md)}.files-table{width:100%;border-collapse:collapse;font-size:.85rem;table-layout:fixed}.files-table thead{background:var(--color-surface);position:sticky;top:0;z-index:1}.files-table th{padding:var(--space-2) var(--space-3);text-align:center;font-weight:600;color:var(--color-text-secondary);border-bottom:2px solid var(--color-border);white-space:nowrap;-webkit-user-select:none;user-select:none}.files-th-left{text-align:left}.files-th-center{text-align:center}.files-th-sortable{cursor:pointer}.files-th-sortable:hover{color:var(--color-text)}.files-table th:nth-child(1){width:36%}.files-table th:nth-child(2){width:10%}.files-table th:nth-child(3){width:10%}.files-table th:nth-child(4){width:14%}.files-table th:nth-child(5){width:14%}.files-table th:nth-child(6){width:10%}.files-table th:nth-child(7){width:6%}.files-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);vertical-align:middle}.files-cell-center{text-align:center}.files-row:hover{background:var(--color-surface)}.files-cell-file{overflow:hidden}.files-cell-filename{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-accent);text-decoration:none}.files-cell-filename:hover{text-decoration:underline}.files-cell-detail{display:block;font-size:.75rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:1px}.files-cell-date{white-space:nowrap;font-size:.8rem;color:var(--color-text-secondary)}.files-type-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.files-type-image{background:#3b82f626;color:#60a5fa}.files-type-video{background:#a855f726;color:#c084fc}.files-type-subtitle{background:#eab30826;color:#facc15}.files-cell-usage{white-space:nowrap;font-size:.8rem}.files-delete-warning{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);padding:var(--space-3);margin:var(--space-3) 0;font-size:.9rem;line-height:1.5;color:var(--color-text)}@media(max-width:768px){.files-filters{flex-direction:column}.files-search{min-width:unset}.files-table{font-size:.8rem;table-layout:auto}.files-table-wrap{overflow-x:auto}}
