:root{--bg-page:#1e1e2e;--bg-card:#272739;--bg-elevated:#30304a;--bg-hover:#3a3a58;--border:#44445e;--border-subtle:#52526e;--accent:#646cff;--accent-hover:#7a82ff;--text-primary:#ffffffde;--text-muted:#9090ae;--text-disabled:#666680;--text-error:#f87171;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text-primary);background-color:var(--bg-page);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}body{min-width:320px;height:100vh;margin:0;overflow:hidden}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.btn{color:var(--text-primary);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-family:inherit;font-size:.875rem;font-weight:600;line-height:1;transition:background-color .15s,color .15s,border-color .15s,box-shadow .15s,opacity .15s,transform .1s;display:inline-flex}.btn:disabled{cursor:not-allowed}.btn--full{width:100%}.btn--lg{padding:.85rem 1.5rem;font-size:1rem}.btn--sm{border-radius:8px;padding:.38rem .85rem;font-size:.8rem}.btn--xs{border-radius:6px;padding:.28rem .6rem;font-size:.72rem}.btn--icon{border-radius:6px;flex-shrink:0;width:28px;height:28px;padding:0;font-size:1rem;line-height:1}.btn--primary{background:var(--accent);color:#fff;border-color:#0000;box-shadow:0 4px 20px #646cff4d}.btn--primary:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 28px #646cff80}.btn--primary:active:not(:disabled){transform:translateY(0)}.btn--primary:disabled{background:var(--bg-elevated);color:var(--text-disabled);box-shadow:none}.btn--secondary{background:var(--bg-elevated);color:var(--text-muted);border-color:var(--border)}.btn--secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-subtle);color:var(--text-primary)}.btn--secondary.btn--active{border-color:var(--accent);color:var(--accent);background:#646cff1a}.btn--secondary:disabled{opacity:.4}.btn--outline{color:var(--accent);background:0 0;border-color:#646cff66}.btn--outline:hover:not(:disabled){border-color:var(--accent);background:#646cff1a}.btn--outline:disabled{opacity:.4}.btn--ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn--ghost:hover:not(:disabled){color:var(--text-primary);background:var(--bg-elevated)}.btn--ghost.btn--active{background:var(--bg-hover);color:var(--text-primary)}.btn--tab{color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;padding:.55rem 1.1rem}.btn--tab:hover:not(:disabled){color:var(--text-primary);background:0 0}.btn--tab:focus{outline:none}.btn--tab.btn--active{color:var(--accent);border-bottom-color:var(--accent)}.btn--danger{color:var(--text-muted);background:0 0;border-color:#0000}.btn--danger:hover:not(:disabled){color:var(--text-error);background:#f871711a;border-color:#f871714d}.btn--destructive{color:#ef4444;background:#ef44441f;border-color:#ef444459}.btn--destructive:hover:not(:disabled){background:#ef444438}.btn--success{color:#22c55e;background:#22c55e1a;border-color:#22c55e}.btn--success:hover:not(:disabled){background:#22c55e2e}.btn--dashed{color:var(--text-muted);border:1px dashed var(--border-subtle);background:0 0}.btn--dashed:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--accent);color:var(--accent);border-style:dashed}.btn--tool{min-width:32px;height:32px;color:var(--text-muted);background:0 0;border-color:#0000;border-radius:6px;padding:0 .5rem;font-size:.9rem}.btn--tool:hover:not(:disabled){background:var(--bg-elevated);color:var(--text-primary)}.btn--tool.btn--active{border-color:var(--accent);color:var(--accent);background:#646cff26}.btn--tile{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border);text-align:left;white-space:normal;border-radius:10px;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:.5rem;padding:1.25rem;line-height:1.4;display:flex}.btn--tile:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-subtle)}.btn--tile.btn--active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:#646cff1a}.btn--tile .btn-tile-label{color:var(--text-primary);font-size:1rem;font-weight:600}.btn--tile .btn-tile-desc{color:var(--text-muted);font-size:.8rem;font-weight:400}.input{border:1px solid var(--border);background-color:var(--bg-elevated);width:100%;color:var(--text-primary);box-sizing:border-box;border-radius:10px;outline:none;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:var(--text-disabled)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #646cff26}.input--sm{border-radius:8px;padding:.5rem .75rem;font-size:.875rem}.input--lg{padding:.9rem 1.2rem;font-size:1.1rem}.input:disabled{opacity:.5;cursor:not-allowed}.input--error{border-color:var(--text-error)}.input--error:focus{box-shadow:0 0 0 3px #f8717126}.login-container{justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login-card{background-color:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:2rem;width:100%;max-width:420px;padding:1rem;display:flex}.login-title{text-align:center;letter-spacing:-.5px;color:var(--text-primary);margin:0;font-size:2rem;font-weight:700}.login-section{flex-direction:column;gap:.75rem;display:flex}.login-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0;font-size:.8rem;font-weight:600}.login-tabs{background-color:var(--bg-elevated);border-radius:10px;gap:4px;padding:4px;display:flex}.login-tabs .btn{border-radius:8px;flex:1;padding:.5rem;font-size:.9rem}.avatar-upload{border:2px dashed var(--border-subtle);cursor:pointer;background-color:var(--bg-elevated);border-radius:50%;justify-content:center;align-self:center;align-items:center;width:120px;height:120px;transition:border-color .2s,background-color .2s;display:flex;overflow:hidden}.avatar-upload:hover{border-color:var(--accent);background-color:var(--bg-hover)}.avatar-placeholder{color:var(--text-disabled);text-align:center;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem;font-size:.75rem;display:flex}.avatar-upload-icon{color:var(--border-subtle);font-size:1.75rem;line-height:1}.avatar-preview{object-fit:cover;width:100%;height:100%}.file-input-hidden{display:none}.login-error{color:var(--text-error);text-align:center;margin:0;font-size:.875rem}.app-header{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-shrink:0;justify-content:space-between;align-items:center;height:50px;padding:0 1.5rem;display:flex}.header-left{align-items:center;gap:1rem;display:flex}.header-brand{letter-spacing:-.3px;color:var(--text-primary);white-space:nowrap;font-size:1rem;font-weight:700}.header-action-btn:hover:not(:disabled){color:var(--text-error)!important;background:#f8717114!important;border-color:#f871714d!important}.header-user{align-items:center;display:flex}.user-menu{margin-bottom:-12px;padding-bottom:12px;position:relative}.header-user-trigger{cursor:pointer;border-radius:8px;align-items:center;gap:.5rem;margin:-.25rem -.5rem;padding:.25rem .5rem;transition:background .15s;display:flex}.user-menu:hover .header-user-trigger{background:var(--bg-elevated)}.header-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:28px;height:28px;display:block}.header-username{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:140px;font-size:.875rem;font-weight:600;overflow:hidden}.user-dropdown{background:var(--bg-card);border:1px solid var(--border);opacity:0;pointer-events:none;border-radius:10px;min-width:180px;padding:.35rem;transition:opacity .15s,transform .15s;position:absolute;top:calc(100% - 12px);right:0;transform:translateY(-6px);box-shadow:0 8px 24px #00000059}.user-menu:hover .user-dropdown{opacity:1;pointer-events:all;transform:translateY(0)}.dropdown-item{text-align:left!important;border-radius:7px!important;justify-content:flex-start!important;width:100%!important;padding:.55rem .75rem!important;font-size:.9rem!important;display:block!important}.dropdown-item-danger{color:var(--text-error)!important}.dropdown-item-danger:hover{color:var(--text-error)!important;background:#f871711a!important}.qpm-list-body{overflow-y:auto}.quiz-type-card{border:1px solid var(--border);background:var(--bg-elevated);text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:1rem;width:100%;padding:1rem 1.1rem;font-family:inherit;transition:border-color .15s,background-color .15s;display:flex}.quiz-type-card:hover{border-color:var(--accent);background:#646cff0f}.quiz-type-info{flex-direction:column;flex:1;gap:.2rem;display:flex}.quiz-type-name{color:var(--text-primary);font-size:.95rem;font-weight:600}.quiz-type-desc{color:var(--text-muted);font-size:.78rem;line-height:1.4}.quiz-type-arrow{color:var(--text-muted);flex-shrink:0;font-size:1rem}.qpm-new-btn{margin-bottom:.5rem}.qpm-status{text-align:center;color:var(--text-muted);margin:0;padding:1rem 0;font-size:.875rem}.qpm-status--error{color:var(--text-error)}.qpm-row{border:1px solid var(--border);background:var(--bg-elevated);border-radius:8px;align-items:center;gap:.75rem;margin-bottom:.375rem;padding:.7rem .875rem;transition:border-color .15s,background-color .15s;display:flex}.qpm-row--selectable{cursor:pointer}.qpm-row--selectable:hover{border-color:var(--accent);background:#646cff12}.qpm-row-info{flex-direction:column;flex:1;gap:.2rem;display:flex;overflow:hidden}.qpm-row-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.qpm-row-count{color:var(--text-muted);font-size:.75rem}.qpm-row-actions{flex-shrink:0;align-items:center;gap:.375rem;display:flex}.modal-overlay{z-index:200;background:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;width:100%;max-width:400px;max-height:calc(100vh - 3rem);display:flex;overflow:hidden;box-shadow:0 24px 64px #0000008c}.modal-card--full{width:94vw;max-width:94vw;height:92vh;max-height:92vh}.modal-header{border-bottom:1px solid var(--border);background:var(--bg-elevated);flex-shrink:0;align-items:center;gap:.6rem;padding:.9rem 1.1rem;display:flex}.modal-title{color:var(--text-primary);flex:1;margin:0;font-size:.95rem;font-weight:700}.modal-header-actions{align-items:center;gap:.4rem;display:flex}.modal-body{flex-direction:column;gap:.5rem;padding:1rem;display:flex}.lc-config-step{flex-direction:column;gap:1.5rem;display:flex}.lc-config-field{flex-direction:column;gap:.5rem;display:flex}.lc-config-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.8rem;font-weight:600}.lc-challenge-options{flex-direction:column;gap:.5rem;display:flex}.lc-challenge-option{border:1px solid var(--border);background:var(--bg-elevated);text-align:left;cursor:pointer;border-radius:10px;flex-direction:column;gap:.2rem;width:100%;padding:.875rem 1rem;font-family:inherit;transition:border-color .15s,background-color .15s;display:flex}.lc-challenge-option:hover{border-color:var(--accent);background:#646cff0f}.lc-challenge-option--active{border-color:var(--accent);background:#646cff1a}.lc-challenge-option-name{color:var(--text-primary);font-size:.9rem;font-weight:600}.lc-challenge-option-desc{color:var(--text-muted);font-size:.75rem;line-height:1.4}.lc-config-actions{justify-content:space-between;align-items:center;padding-top:.5rem;display:flex}.account-tab{flex-direction:column;gap:2rem;max-width:640px;padding:1rem;display:flex}.account-section{flex-direction:column;gap:.75rem;display:flex}.account-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 .25rem;font-size:.8rem;font-weight:600}.account-profile-row{align-items:center;gap:1rem;display:flex}.account-avatar{object-fit:cover;border:2px solid var(--border);border-radius:50%;flex-shrink:0;width:72px;height:72px}.account-profile-info{flex-direction:column;gap:.5rem;display:flex}.account-username{color:var(--text-primary);font-size:.95rem;font-weight:600}.account-file-input{display:none}.account-save-row{gap:.5rem;display:flex}.account-username-row{align-items:stretch;gap:.5rem;display:flex}.account-username-row>:first-child{flex:1}.account-select{border:1px solid var(--border);background-color:var(--bg-elevated);width:100%;max-width:320px;color:var(--text-primary);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239090ae' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .875rem center;background-repeat:no-repeat;border-radius:10px;outline:none;padding:.6rem 2.25rem .6rem .875rem;font-family:inherit;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.account-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #646cff26}.account-select option{background-color:var(--bg-card);color:var(--text-primary)}.account-status{margin:0;font-size:.85rem}.account-status--success{color:#4ade80}.account-status--error{color:var(--text-error)}.lgn--action-trigger{border-color:#fbbf2480}.lgn--action-trigger.lgn--active{border-color:#fbbf24;box-shadow:0 0 0 3px #fbbf2433,0 4px 20px #0006}.lgn--action-trigger .lgn-header{background:#fbbf2412;border-bottom-color:#fbbf2433}.lgn-badge--action-trigger{color:#fbbf24}.play-sound-picker{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.play-sound-picker-select{border:1px solid var(--border);background:var(--bg-elevated);width:100%;color:var(--text-primary);cursor:pointer;border-radius:8px;padding:.4rem .5rem;font-family:inherit;font-size:.85rem;font-weight:600}.play-sound-picker-select:focus{outline:2px solid var(--accent);outline-offset:1px}.play-sound-picker-actions{gap:.4rem;display:flex}.play-sound-picker-btn{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;border-radius:8px;flex:1;padding:.4rem .6rem;font-family:inherit;font-size:.8rem;font-weight:600;transition:background-color .15s,color .15s,border-color .15s,opacity .15s}.play-sound-picker-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-subtle);color:var(--text-primary)}.play-sound-picker-btn:disabled{opacity:.45;cursor:not-allowed}.play-sound-picker-btn--test.is-playing{border-color:var(--accent);color:var(--accent);background:#646cff26}.play-sound-picker-error{color:var(--text-error);margin:0;font-size:.75rem;font-weight:600}.lgn-group{pointer-events:none;box-sizing:border-box;border:2px solid;border-radius:12px;position:absolute}.lgn-group-header{cursor:grab;pointer-events:all;-webkit-user-select:none;user-select:none;border-bottom:1px solid;border-radius:10px 10px 0 0;align-items:center;gap:6px;padding:6px 8px;display:flex}.lgn-group-header:active{cursor:grabbing}.lgn-group-title{color:#ffffffde;flex:1;min-width:0;font-family:inherit;font-size:.8rem;font-weight:700}.lgn-group-title--view{cursor:inherit;white-space:nowrap;text-overflow:ellipsis;line-height:1.4;display:block;overflow:hidden}.lgn-group-title--empty{color:#ffffff4d;font-weight:400}.lgn-group-title--edit{border:none;border-bottom:1px solid var(--border-subtle);cursor:text;background:0 0;outline:none;width:100%;padding:0}.lgn-group-title--edit::placeholder{color:#ffffff4d;font-weight:400}.lgn-group-title--edit:focus{border-bottom-color:var(--accent)}.lgn-group-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.lgn-group-color-wrap{position:relative}.lgn-group-color-btn{cursor:pointer;border:2px solid #ffffff47;border-radius:50%;width:14px;height:14px;padding:0;transition:border-color .12s,transform .12s;display:block}.lgn-group-color-btn:hover{border-color:#ffffffb3;transform:scale(1.2)}.lgn-group-color-picker{background:var(--bg-elevated);border:1px solid var(--border);z-index:300;pointer-events:all;border-radius:8px;flex-wrap:wrap;gap:5px;width:109px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 16px #00000080}.lgn-group-color-swatch{cursor:pointer;border:2px solid #0000;border-radius:4px;width:20px;height:20px;padding:0;transition:border-color .12s,transform .12s;display:block}.lgn-group-color-swatch:hover{transform:scale(1.18)}.lgn-group-color-swatch--active{border-color:#ffffffbf}.lgn-group-resize{background:var(--bg-card);pointer-events:all;z-index:5;border:2px solid;border-radius:2px;width:10px;height:10px;position:absolute}.lgn-group-resize--se{cursor:se-resize;bottom:-5px;right:-5px}.lgn-group-resize--sw{cursor:sw-resize;bottom:-5px;left:-5px}.lgn-group-resize--ne{cursor:ne-resize;top:-5px;right:-5px}.lgn-group-resize--nw{cursor:nw-resize;top:-5px;left:-5px}.logic-tab{flex-direction:column;flex:1;gap:.75rem;min-height:0;display:flex}.logic-graph-hint{color:var(--text-muted);flex-shrink:0;align-items:center;gap:.75rem;min-height:1.1rem;padding:0 .25rem;font-size:.78rem;display:flex}.logic-graph-hint>span:first-child{flex:1}.logic-graph-hint--connecting{color:var(--accent);font-weight:600}.logic-graph-zoom{font-variant-numeric:tabular-nums;flex-shrink:0;align-items:center;gap:.4rem;display:flex}.logic-graph-zoom-reset{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:5px;padding:1px 7px;font-family:inherit;font-size:.7rem;transition:border-color .12s,color .12s}.logic-graph-zoom-reset:hover{border-color:var(--accent);color:var(--accent)}.logic-graph-canvas-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;padding:3px 5px;font-family:inherit;line-height:1;transition:border-color .12s,color .12s;display:flex}.logic-graph-canvas-btn:hover:not(:disabled),.logic-graph-canvas-btn--active{border-color:var(--accent);color:var(--accent)}.logic-graph-canvas-btn:disabled{opacity:.3;cursor:not-allowed}.logic-graph-canvas{background-color:var(--bg-page);border:1px solid var(--border);background-image:radial-gradient(circle,#44445e8c 1px,#0000 1px);background-size:28px 28px;border-radius:12px;flex:1;min-height:400px;position:relative;overflow:hidden}.logic-graph-empty{text-align:center;pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.logic-graph-empty-icon{opacity:.25;margin-bottom:.5rem;font-size:2.5rem}.logic-graph-empty-text{color:var(--text-muted);max-width:260px;margin:0;font-size:.875rem;line-height:1.5}.lgn-stage{transform-origin:0 0;width:0;height:0;position:absolute;top:0;left:0}.logic-graph-svg{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.logic-graph-edge{fill:none;stroke:var(--accent);stroke-width:2px;stroke-opacity:.55}.logic-graph-edge--pending{stroke-dasharray:7 5;stroke-opacity:.35;animation:.9s linear infinite lgn-dash}@keyframes lgn-dash{to{stroke-dashoffset:-24px}}.lgn-oob{fill:#00000073;pointer-events:none}.lgn{background:var(--bg-card);border:1.5px solid var(--border);-webkit-user-select:none;user-select:none;border-radius:12px;width:240px;position:absolute;box-shadow:0 4px 20px #0006}.lgn--trigger{border-color:#646cff73}.lgn--trigger.lgn--active{border-color:var(--accent);box-shadow:0 0 0 3px #646cff33,0 4px 20px #0006}.lgn--reassignable{cursor:pointer;border-color:#646cff80;box-shadow:0 0 0 2px #646cff1f,0 4px 20px #0006}.lgn--reassignable:hover{border-color:var(--accent);box-shadow:0 0 0 3px #646cff40,0 4px 20px #0006}.lgn--disabled{opacity:.45}.lgn-header{background:var(--bg-elevated);border-bottom:1px solid var(--border);cursor:grab;border-radius:10px 10px 0 0;justify-content:space-between;align-items:center;padding:8px 10px 7px;display:flex}.lgn-header:active{cursor:grabbing}.lgn--trigger .lgn-header{background:#646cff14;border-bottom-color:#646cff2e}.lgn-header-actions{align-items:center;gap:6px;display:flex}.lgn-badge{text-transform:uppercase;letter-spacing:.1em;font-size:.62rem;font-weight:700;line-height:1}.lgn-badge--trigger,.lgn-badge--action,.lgn-badge--add{color:var(--accent)}.lgn-badge--subtract{color:var(--text-error)}.lgn-del{width:20px;height:20px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:.68rem;line-height:1;transition:background-color .12s,color .12s;display:flex}.lgn-del:hover{color:var(--text-error);background:#f8717126}.lgn-body{flex-direction:column;gap:8px;padding:10px 12px 13px;display:flex}.lgn-type-label{color:var(--text-primary);font-size:.875rem;font-weight:600;line-height:1.3}.lgn-info-btn{border:1px solid var(--border-subtle);width:18px;height:18px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:.65rem;font-weight:700;line-height:1;transition:background-color .12s,color .12s,border-color .12s;display:flex}.lgn-info-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--accent)}.lgn-tooltip{z-index:200;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-primary);white-space:normal;border-radius:8px;min-width:160px;max-width:220px;padding:8px 10px;font-size:.72rem;line-height:1.45;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 16px #00000073}.lgn-seg{border:1px solid var(--border);border-radius:7px;display:flex;overflow:hidden}.lgn-seg-btn{border:none;border-right:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;white-space:nowrap;flex:1;padding:5px 4px;font-family:inherit;font-size:.7rem;font-weight:600;transition:background-color .12s,color .12s}.lgn-seg-btn:last-child{border-right:none}.lgn-seg-btn.active{background:var(--accent);color:#fff}.lgn-seg-btn:hover:not(.active){background:var(--bg-hover);color:var(--text-primary)}.lgn-port{background:var(--bg-elevated);border:2.5px solid var(--border-subtle);z-index:2;border-radius:50%;width:14px;height:14px;transition:border-color .15s,background-color .15s,box-shadow .15s;position:absolute;top:36px;transform:translateY(-50%)}.lgn-port--out{cursor:crosshair;right:-8px}.lgn-port--out:hover,.lgn-port--active{border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 4px #646cff38}.logic-ctx-menu{z-index:1000;background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;min-width:250px;max-width:330px;max-height:70vh;padding:6px;position:fixed;overflow-y:auto;box-shadow:0 8px 32px #0000008c}.logic-ctx-title{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);padding:4px 8px 6px;font-size:.62rem;font-weight:700}.logic-ctx-item{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:7px;grid-template-rows:auto auto;grid-template-columns:22px 1fr;column-gap:8px;padding:7px 8px;font-family:inherit;transition:background-color .12s;display:grid}.logic-ctx-item:hover{background:var(--bg-hover)}.logic-ctx-icon{color:var(--accent);grid-row:1/3;justify-content:center;align-items:center;padding-top:1px;font-size:.85rem;font-weight:700;display:flex}.logic-ctx-label{font-size:.825rem;font-weight:600;line-height:1.3}.logic-ctx-desc{color:var(--text-muted);font-size:.7rem;line-height:1.3}.lgn-badge--buzzer-on{color:#4ade80}.lgn-badge--buzzer-off{color:var(--text-error)}.lgn-badge--timer-pause{color:#fb923c}.lgn-badge--timer-reset{color:#22d3ee}.lgn-badge--timer-stop{color:var(--text-error)}.logic-ctx-divider{background:var(--border);height:1px;margin:4px 0}.logic-ctx-group-item{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:7px;grid-template-columns:22px 1fr auto;align-items:center;column-gap:8px;padding:7px 8px;font-family:inherit;transition:background-color .12s;display:grid}.logic-ctx-group-item:hover{background:var(--bg-hover)}.logic-ctx-group-item .logic-ctx-icon{grid-row:auto}.logic-ctx-group-label{font-size:.825rem;font-weight:600}.logic-ctx-arrow{color:var(--text-muted);font-size:.5rem}.logic-ctx-search{padding:2px 2px 6px}.logic-ctx-empty{color:var(--text-muted);text-align:center;padding:10px 8px;font-size:.75rem}.logic-ctx-search-group{padding:2px 0}.logic-ctx-search-group-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);align-items:center;gap:8px;padding:6px 8px 2px;font-size:.62rem;font-weight:700;display:flex}.logic-ctx-search-group-label .logic-ctx-icon{grid-row:auto;padding-top:0}.logic-ctx-item--nested{padding-left:14px}.logic-ctx-submenu{background:var(--bg-elevated);border:1px solid var(--border);z-index:1001;border-radius:10px;min-width:230px;max-width:320px;padding:6px;position:fixed;box-shadow:0 8px 32px #0000008c}.logic-target-row{align-items:center;gap:.4rem;display:flex}.logic-target-label{color:var(--text-muted);white-space:nowrap;font-size:.68rem;font-weight:600}.logic-target-seg{border:1px solid var(--border);border-radius:7px;display:flex;overflow:hidden}.logic-target-btn{border:none;border-right:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);cursor:pointer;white-space:nowrap;padding:.2rem .5rem;font-family:inherit;font-size:.68rem;font-weight:600;line-height:1.5;transition:background-color .12s,color .12s}.logic-target-btn:last-child{border-right:none}.logic-target-btn:hover:not(.active){background:var(--bg-hover);color:var(--text-primary)}.logic-target-btn.active{background:var(--accent);color:#fff}.logic-amount-row{align-items:center;gap:.35rem;display:flex}.logic-amount-btn{border:1px solid var(--border);background:var(--bg-card);width:22px;height:22px;color:var(--text-primary);cursor:pointer;border-radius:5px;justify-content:center;align-items:center;font-family:inherit;font-size:.85rem;font-weight:700;line-height:1;transition:background-color .12s,border-color .12s;display:flex}.logic-amount-btn:hover{background:var(--bg-hover);border-color:var(--accent)}.logic-amount-value{text-align:center;min-width:26px;color:var(--text-primary);font-size:.875rem;font-weight:700}.logic-amount-unit{color:var(--text-muted);font-size:.72rem}.logic-amount-jeopardy-note{color:var(--text-muted);margin:0;font-size:.75rem;font-style:italic;line-height:1.4}.logic-param-row{align-items:center;gap:.35rem;display:flex}.logic-param-label{color:var(--text-muted);white-space:nowrap;flex:1;min-width:0;font-size:.68rem;font-weight:600}.logic-param-input{border:1px solid var(--border);background:var(--bg-card);width:68px;color:var(--text-primary);-moz-appearance:textfield;border-radius:5px;outline:none;padding:.2rem .4rem;font-family:inherit;font-size:.875rem;font-weight:700}.logic-param-input:focus{border-color:var(--accent)}.logic-param-input::-webkit-inner-spin-button{-webkit-appearance:none}.logic-param-input::-webkit-outer-spin-button{-webkit-appearance:none}.logic-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;display:inline-flex;position:relative}.logic-toggle-input{opacity:0;width:0;height:0;position:absolute}.logic-toggle-track{background:var(--bg-page);border:1px solid var(--border);border-radius:9px;width:32px;height:18px;transition:background-color .2s,border-color .2s;display:block;position:relative}.logic-toggle-track:after{content:"";background:var(--text-disabled);border-radius:50%;width:12px;height:12px;transition:transform .2s,background-color .2s;position:absolute;top:2px;left:2px}.logic-toggle-input:checked+.logic-toggle-track{background:var(--accent);border-color:var(--accent)}.logic-toggle-input:checked+.logic-toggle-track:after{background:#fff;transform:translate(14px)}.games-lc-form{flex-direction:column;gap:1.25rem;max-width:540px;padding:1rem;display:flex}.games-lc-field{flex-direction:column;gap:.5rem;display:flex}.games-lc-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.8rem;font-weight:600}.games-lc-challenge-options{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.games-lc-challenge-option{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;text-align:left;border-radius:10px;flex-direction:column;gap:.25rem;padding:.75rem .875rem;font-family:inherit;transition:border-color .15s,background-color .15s;display:flex}.games-lc-challenge-option:hover{background:var(--bg-hover)}.games-lc-challenge-option--active{border-color:var(--accent);background:var(--bg-hover)}.games-lc-challenge-option-name{font-size:.95rem;font-weight:600}.games-lc-challenge-option-desc{color:var(--text-muted);font-size:.8rem}.games-lc-actions{align-items:center;gap:.75rem;display:flex}.games-tab{flex-direction:column;flex:1;min-height:0;padding:0;display:flex}.games-toolbar{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:0 1rem;display:flex}.games-subtabs{gap:.25rem;display:flex}.games-toolbar-actions{align-items:center;gap:.5rem;padding:.5rem 0;display:flex}.games-section{flex-direction:column;flex:1;min-height:0;padding:.75rem 1rem 1rem;display:flex}.games-status{white-space:nowrap;margin:0;font-size:.85rem}.games-status--success{color:#4ade80}.games-status--error{color:var(--text-error)}.games-error{padding:0 1rem .75rem}.audio-tab{flex-direction:column;gap:2rem;padding:1rem;display:flex}.audio-section{flex-direction:column;gap:.75rem;display:flex}.audio-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 .25rem;font-size:.8rem;font-weight:600}.audio-row{grid-template-columns:10rem 1fr;align-items:center;gap:1rem;display:grid}.audio-label{color:var(--text-primary);font-size:.95rem;font-weight:600}.audio-slider-wrap{align-items:center;gap:.75rem;display:flex}.audio-icon{flex-shrink:0;font-size:1rem;line-height:1}.audio-slider{appearance:none;background:var(--border);cursor:pointer;border-radius:2px;outline:none;flex:1;height:4px}.audio-slider::-webkit-slider-thumb{appearance:none;background:var(--accent);cursor:pointer;border-radius:50%;width:18px;height:18px;transition:background-color .15s}.audio-slider::-webkit-slider-thumb:hover{background:var(--accent-hover)}.audio-slider::-moz-range-thumb{background:var(--accent);cursor:pointer;border:none;border-radius:50%;width:18px;height:18px;transition:background-color .15s}.audio-slider::-moz-range-thumb:hover{background:var(--accent-hover)}.audio-value{color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;min-width:2.75rem;font-size:.85rem}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;animation:.9s linear infinite spinner-spin}@keyframes spinner-spin{to{transform:rotate(360deg)}}.ring-gauge{flex-direction:column;align-items:center;gap:.5rem;display:flex}.ring-gauge-svg-wrap{justify-content:center;align-items:center;display:flex;position:relative}.ring-gauge-svg{display:block}.ring-gauge-arc{transition:stroke-dasharray .35s}.ring-gauge-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:.1rem;display:flex;position:absolute;inset:0}.ring-gauge-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700;line-height:1}.ring-gauge-subtitle{color:var(--text-muted);text-align:center;font-variant-numeric:tabular-nums;font-size:.72rem}.ring-gauge-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;text-align:center;font-size:.78rem;font-weight:600}.stacked-bar{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:.6rem;padding:1rem;display:flex}.stacked-bar-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:600}.stacked-bar-track{background:var(--border);border-radius:5px;height:10px;display:flex;overflow:hidden}.stacked-bar-segment{height:100%;transition:width .3s}.stacked-bar-empty{background:var(--border);flex:1}.stacked-bar-legend{flex-wrap:wrap;gap:.5rem 1.25rem;margin:0;padding:0;list-style:none;display:flex}.stacked-bar-legend-row{font-variant-numeric:tabular-nums;align-items:center;gap:.45rem;font-size:.85rem;display:flex}.stacked-bar-swatch{border-radius:2px;flex-shrink:0;width:10px;height:10px}.stacked-bar-legend-label{color:var(--text-muted)}.stacked-bar-legend-value{color:var(--text-primary);font-weight:600}.stats-panel{flex-direction:column;gap:1.75rem;max-width:1080px;display:flex}.stats-section{flex-direction:column;gap:1rem;display:flex}.stats-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-primary);margin:0 0 .25rem;font-size:.85rem;font-weight:700}.stats-gauges{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;padding:1rem;display:grid}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.5rem;display:grid}.stats-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:.25rem;padding:.75rem .9rem;display:flex}.stats-card-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem}.stats-card-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:1.2rem;font-weight:600}.stats-bar-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem;display:grid}.stats-activity-header{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.stats-activity-total{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.8rem}.stats-activity{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;align-items:flex-end;gap:4px;height:120px;padding:.75rem;display:flex}.stats-activity-bar-wrap{cursor:default;flex:1;align-items:flex-end;min-width:4px;height:100%;display:flex}.stats-activity-bar{border-radius:2px;width:100%;min-height:2px;transition:height .25s}.stats-activity-bar[data-empty=true]{min-height:2px;background:var(--border)!important;height:2px!important}.stats-activity-axis{color:var(--text-muted);justify-content:space-between;padding:0 .25rem;font-size:.72rem;display:flex}.match-list{flex-direction:column;gap:.5rem;max-width:960px;display:flex}.match-row{background:var(--bg-elevated);border:1px solid var(--border);color:inherit;text-align:left;cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;font-family:inherit;transition:border-color .12s,background .12s;display:flex}.match-row:hover{border-color:var(--accent);background:var(--bg-hover)}.match-row-main{flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.match-mode-badge{text-transform:uppercase;letter-spacing:.05em;background:var(--bg-hover);color:var(--text-primary);border-radius:999px;flex-shrink:0;padding:.2rem .55rem;font-size:.72rem;font-weight:600}.match-mode-jeopardy{color:#f4c27b;background:#4c3a1f}.match-mode-fifty-questions{color:#7bc4f4;background:#1f3a4c}.match-mode-liars-cards{color:#f47bc4;background:#4c1f3a}.match-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.95rem;font-weight:600;overflow:hidden}.match-date{color:var(--text-muted);flex-shrink:0;font-size:.8rem}.match-row-side{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.match-avatars{align-items:center;gap:.25rem;display:flex}.match-avatar{object-fit:cover;border:1px solid var(--border);border-radius:50%;width:24px;height:24px}.match-avatars-more{color:var(--text-muted);font-size:.75rem}.match-outcome{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:600}.match-outcome-won{color:#4ade80;background:#4ade8026}.match-outcome-lost{color:#f87171;background:#f871711f}.match-outcome-watched{background:var(--bg-hover);color:var(--text-muted)}.player-breakdown{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.player-breakdown-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.player-breakdown-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:600}.player-breakdown-legend{color:var(--text-muted);flex-wrap:wrap;gap:.75rem;margin:0;padding:0;font-size:.78rem;list-style:none;display:flex}.player-breakdown-legend li{align-items:center;gap:.35rem;display:flex}.player-breakdown-swatch{border-radius:2px;flex-shrink:0;width:10px;height:10px}.player-breakdown-rows{flex-direction:column;gap:.45rem;display:flex}.player-breakdown-row{grid-template-columns:9rem 1fr 3rem;align-items:center;gap:.75rem;display:grid}.player-breakdown-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;overflow:hidden}.player-breakdown-bar-wrap{background:0 0;align-items:stretch;height:18px;display:flex}.player-breakdown-bar{background:var(--border);border-radius:4px;min-width:2px;height:100%;transition:width .25s;display:flex;overflow:hidden}.player-breakdown-segment{height:100%;transition:flex .2s}.player-breakdown-total{text-align:right;font-variant-numeric:tabular-nums;color:var(--text-primary);font-weight:600}.match-detail{flex-direction:column;flex:1;gap:1.5rem;min-height:0;padding:1rem;display:flex;overflow-y:auto}.match-detail-header{align-items:center;gap:1rem;display:flex}.match-detail-title{flex-direction:column;gap:.1rem;display:flex}.match-detail-title h3{margin:0;font-size:1.1rem;font-weight:600}.match-detail-mode{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.72rem}.match-detail-date{color:var(--text-muted);font-size:.8rem}.match-section{flex-direction:column;gap:.75rem;display:flex}.match-section h4{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0;font-size:.8rem;font-weight:600}.match-participants{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.match-participant{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;align-items:center;gap:.6rem;padding:.5rem .75rem;display:flex}.match-participant-avatar{object-fit:cover;border-radius:50%;width:28px;height:28px}.match-participant-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.match-participant-role{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem}.match-participant-score{font-variant-numeric:tabular-nums;color:var(--accent);font-weight:600}.match-charts{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:.75rem;display:grid}.match-table{border-collapse:collapse;width:100%;font-size:.9rem}.match-table th,.match-table td{text-align:left;border-bottom:1px solid var(--border);padding:.5rem .75rem}.match-table th{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.72rem;font-weight:600}.match-table td{font-variant-numeric:tabular-nums}.match-timeline{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;flex-direction:column;gap:.25rem;max-height:400px;margin:0;padding:.5rem;list-style:none;display:flex;overflow-y:auto}.match-event{gap:.75rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.85rem;display:flex}.match-event-time{color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;min-width:5rem}.match-event-label{color:var(--text-primary)}.stats-tab{flex-direction:column;flex:1;min-height:0;padding:0;display:flex}.stats-subtabs{border-bottom:1px solid var(--border);flex-shrink:0;gap:.25rem;padding:0 1rem;display:flex}.stats-content{flex:1;min-height:0;padding:1rem;overflow-y:auto}.stats-loading{justify-content:center;padding:2rem;display:flex}.stats-empty{color:var(--text-muted);margin:0;padding:1rem 0;font-size:.95rem}.stats-error{color:var(--text-error);margin:0;padding:1rem 0;font-size:.9rem}.settings-body{flex:1;gap:0;min-height:0;padding:0}.settings-tabs{border-bottom:1px solid var(--border);flex-shrink:0;gap:.25rem;padding:0 1rem;display:flex}.settings-tab-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}.page-layout{flex-direction:column;gap:.75rem;height:100vh;padding:.75rem;display:flex;overflow:hidden}.page-layout-body{flex:1;grid-template-columns:1fr auto;gap:.75rem;min-height:0;display:grid}@media (width<=700px){.page-layout-body{grid-template-columns:1fr;gap:.75rem}}.lobby-main{flex:1;grid-template-columns:1fr 360px;gap:.75rem;min-height:0;display:grid}.lobby-left,.lobby-right{background-color:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:1rem}.lobby-left{flex-direction:column;gap:2rem;display:flex;overflow-y:auto}.lobby-right{flex-direction:column;display:flex;overflow:hidden}.lobby-section{flex-direction:column;gap:.75rem;display:flex}.lobby-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0;font-size:.8rem;font-weight:600}.role-buttons{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.lobby-quiz-box{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;align-items:center;gap:.75rem;padding:.875rem 1rem;display:flex}.lobby-quiz-info{flex:1;min-width:0}.lobby-quiz-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:600;display:block;overflow:hidden}.lobby-quiz-placeholder{color:var(--text-disabled);font-size:.9rem}.lobby-quiz-select-btn{flex-shrink:0}.lobby-users-section{flex:1;min-height:0;overflow:hidden}.lobby-users{flex-direction:column;flex:1;gap:.5rem;min-height:0;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.lobby-user{background:var(--bg-elevated);border:1px solid #0000;border-radius:10px;align-items:center;gap:.75rem;padding:.625rem .75rem;display:flex}.lobby-user.self{border-color:var(--border-subtle)}.lobby-user-avatar{object-fit:cover;background:var(--bg-hover);border-radius:50%;flex-shrink:0;width:36px;height:36px}.lobby-user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.95rem;overflow:hidden}.lobby-user-you{color:var(--text-muted);font-size:.85rem}.user-ready-badge{letter-spacing:.06em;text-transform:uppercase;color:#22c55e;background:#22c55e26;border-radius:6px;flex-shrink:0;padding:.2rem .55rem;font-size:.7rem;font-weight:600}.lobby-user-role{letter-spacing:.06em;text-transform:uppercase;border-radius:6px;flex-shrink:0;padding:.2rem .55rem;font-size:.7rem;font-weight:600}.role-game-master{color:#f59e0b;background:#f59e0b26}.role-player{color:var(--accent);background:#646cff26}.role-spectator{color:var(--text-muted);background:#6b6b8226}.lobby-actions{border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.gm-status{color:var(--text-muted);text-align:center;margin:0;font-size:.875rem}@media (width<=768px){.lobby-main{grid-template-columns:1fr;overflow-y:auto}.lobby-right{min-height:300px;overflow:visible}.lobby-users-section,.lobby-users{overflow:visible}}.toast{z-index:9999;background:var(--bg-elevated);color:#4ade80;opacity:0;pointer-events:none;border:1px solid #4ade80;border-radius:10px;padding:.75rem 1.25rem;font-size:.9rem;font-weight:600;transition:opacity .2s,transform .2s;position:fixed;bottom:1.5rem;right:1.5rem;transform:translateY(6px);box-shadow:0 4px 20px #00000080}.toast--visible{opacity:1;transform:translateY(0)}.ffe-editor{border:1px solid var(--border);background:var(--bg-card);border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.ffe-editor--fill{flex:1;min-height:0}.ffe-format-bar{border-bottom:1px solid var(--border);background:var(--bg-elevated);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.2rem;padding:.35rem .6rem;display:flex}.ffe-format-sep{background:var(--border);flex-shrink:0;width:1px;height:1.25rem;margin:0 .2rem}.ffe-canvas{box-sizing:border-box;cursor:text;flex-direction:column;width:100%;padding:.75rem;display:flex;position:relative}.ffe-canvas[data-valign=top]{justify-content:flex-start}.ffe-canvas[data-valign=center]{justify-content:center}.ffe-canvas[data-valign=bottom]{justify-content:flex-end}.ffe-canvas--fill{scrollbar-gutter:stable;flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.ffe-canvas--fill[data-valign=top] .ffe-text{flex:1}.ffe-editor--fill .ffe-image-picker{flex-shrink:0;max-height:260px;overflow-y:auto}.ffe-text{color:var(--text-primary);word-break:break-word;outline:none;font-size:.95rem;line-height:1.55}.ffe-text:empty:before{content:attr(data-placeholder);color:var(--text-disabled);pointer-events:none}.ffe-text font[size="1"],.ffe-text font[size="2"]{font-size:.75em}.ffe-text font[size="3"]{font-size:1em}.ffe-text font[size="4"],.ffe-text font[size="5"]{font-size:1.5em}.ffe-text font[size="6"],.ffe-text font[size="7"]{font-size:2.2em}.ffe-proxy{background:0 0}.ffe-media{box-sizing:border-box;cursor:grab;-webkit-user-select:none;user-select:none;background:var(--bg-card);border:1px solid #0000;border-radius:8px;transition:border-color .1s,box-shadow .1s;position:absolute;overflow:hidden}.ffe-media:hover{border-color:var(--border)}.ffe-media--selected{border-color:var(--accent);box-shadow:0 0 0 2px #646cff40}.ffe-media--dragging{cursor:grabbing;opacity:.9}.ffe-media-img,.ffe-media-video{object-fit:contain;pointer-events:none;background:#000;width:100%;height:100%;display:block}.ffe-media-audio{background:var(--bg-card);box-sizing:border-box;justify-content:center;align-items:center;width:100%;height:100%;padding:.35rem .5rem;display:flex}.ffe-media-audio audio{width:100%}.ffe-media-delete{z-index:3;width:24px;height:24px;padding:0;font-size:.7rem;position:absolute;top:4px;right:4px}.ffe-resize-handle{background:var(--accent);border:2px solid var(--bg-card);z-index:3;border-radius:50%;width:12px;height:12px;position:absolute}.ffe-resize-handle--nw{cursor:nwse-resize;top:-6px;left:-6px}.ffe-resize-handle--ne{cursor:nesw-resize;top:-6px;right:-6px}.ffe-resize-handle--sw{cursor:nesw-resize;bottom:-6px;left:-6px}.ffe-resize-handle--se{cursor:nwse-resize;bottom:-6px;right:-6px}.ffe-anchor-grid{pointer-events:none;z-index:2;position:absolute;top:0;left:0}.ffe-anchor-dot{background:#646cff73;border:2px solid #ffffffb3;border-radius:50%;width:12px;height:12px;transition:background-color .1s,box-shadow .1s;position:absolute;box-shadow:0 0 0 2px #1e1e2e99}.ffe-anchor-dot--active{background:var(--accent);box-shadow:0 0 0 4px #646cff4d}.ffe-toolbar{border-top:1px solid var(--border);background:var(--bg-elevated);flex-wrap:wrap;flex-shrink:0;gap:.4rem;padding:.5rem .6rem;display:flex}.ffe-url-row{align-items:center;gap:.4rem;padding:0 .6rem .6rem;display:flex}.ffe-image-picker{border-top:1px solid var(--border);overflow:hidden}.ffe-picker-loading{color:var(--text-muted);align-items:center;gap:.6rem;padding:.875rem 1rem;font-size:.85rem;display:flex}.ffe-picker-msg{color:var(--text-muted);margin:0;padding:.875rem 1rem;font-size:.85rem}.ffe-picker-msg--error{color:var(--text-error)}.ffe-picker-grid{grid-template-columns:repeat(3,1fr);gap:2px;padding:2px;display:grid}.ffe-picker-item{all:unset;cursor:pointer;background:var(--bg-card);border-radius:6px;flex-direction:column;transition:opacity .15s;display:flex;overflow:hidden}.ffe-picker-item:hover{opacity:.8}.ffe-picker-thumb{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.ffe-picker-caption{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;padding:.3rem .4rem;font-size:.68rem;overflow:hidden}.qem-body{flex:1;gap:.75rem;min-height:0;padding:1rem;overflow:hidden}.qem-controls-bar{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:1rem;display:flex}.qem-section-label{text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted);white-space:nowrap;font-size:.72rem;font-weight:700}.qem-value-row{align-items:center;gap:.75rem;display:flex}.qem-value-field{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;flex-shrink:0;align-items:center;gap:.2rem;padding:0 .75rem;display:flex}.qem-dollar{color:var(--accent);font-size:1.1rem;font-weight:800;line-height:1}.qem-value-input{width:5.5rem;color:var(--accent);-moz-appearance:textfield;background:0 0;border:none;outline:none;padding:.45rem 0;font-family:inherit;font-size:1.1rem;font-weight:800}.qem-value-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.qem-value-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.qem-daily-double-row{align-items:center;gap:.65rem;display:flex}.qem-dd-label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.45rem;display:flex}.qem-dd-checkbox{accent-color:#f59e0b;cursor:pointer;flex-shrink:0;width:15px;height:15px}.qem-dd-text{color:var(--text-primary);white-space:nowrap;font-size:.875rem;font-weight:600}.qem-dd-desc{color:var(--text-muted);font-size:.75rem}.qem-generator{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;flex-direction:column;flex-shrink:0;gap:.65rem;padding:.875rem 1rem;display:flex}.qem-gen-field{flex-direction:column;gap:.4rem;display:flex}.qem-gen-error{color:var(--text-error);margin:0;font-size:.8rem}.qem-gen-footer{flex-wrap:wrap;gap:.5rem;display:flex}.qem-divider{background:var(--border);flex-shrink:0;height:1px;margin:0 -1rem}.qem-qa-columns{flex-direction:row;flex:1;gap:0;min-height:0;display:flex}.qem-qa-section{flex-direction:column;flex:1;gap:.6rem;min-width:0;min-height:0;display:flex}.qem-qa-label{text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted);flex-shrink:0;font-size:.72rem;font-weight:700}.qem-qa-section--answer .qem-qa-label{color:#646cffd9}.qem-qa-column-divider{background:var(--border);flex-shrink:0;width:1px;margin:0 .75rem}.qem-footer{border-top:1px solid var(--border);flex-shrink:0;justify-content:flex-end;margin:0 -1rem -.25rem;padding:.75rem 1rem 0;display:flex}.qem-footer--has-delete{justify-content:space-between}.genre-tags-input{border:1px solid var(--border);background:var(--bg-card);cursor:text;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.35rem;min-height:2.25rem;padding:.4rem .7rem;display:flex}.genre-tags-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #646cff1f}.genre-tag{color:var(--accent);white-space:nowrap;background:#646cff26;border:1px solid #646cff4d;border-radius:6px;align-items:center;gap:.3rem;padding:.2rem .55rem;font-size:.8rem;font-weight:600;display:inline-flex}.genre-tag-remove{width:14px;height:14px;color:var(--accent);cursor:pointer;opacity:.7;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:.85rem;line-height:1;transition:opacity .1s;display:flex}.genre-tag-remove:hover{opacity:1}.genre-input{min-width:80px;color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;padding:0;font-family:inherit;font-size:.875rem}.genre-input::placeholder{color:var(--text-disabled)}.creator-page{flex-direction:column;flex:1;gap:.75rem;min-height:0;display:flex;overflow:hidden}.creator-topbar{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.creator-title-input{flex:1;min-width:200px;font-weight:600}.creator-save-btn{flex-shrink:0}.creator-error{color:var(--text-error);background:#f8717114;border:1px solid #f8717133;border-radius:8px;margin:0;padding:.75rem 1rem;font-size:.875rem}.creator-tab-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.creator-tab-content{flex-direction:column;flex:1;gap:1rem;min-height:0;padding:1rem;display:flex;overflow-y:auto}.creator-tabs{border-bottom:1px solid var(--border);flex-shrink:0;gap:0;display:flex}.creator-tab-badge{min-width:18px;height:18px;color:var(--accent);background:#646cff33;border-radius:9px;justify-content:center;align-items:center;padding:0 5px;font-size:.7rem;font-weight:700;line-height:1;display:inline-flex}.qc-tile-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:.6rem;display:grid}.qc-tile{all:unset;box-sizing:border-box;aspect-ratio:1;background:var(--bg-card);border:1px solid var(--border);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;font-family:inherit;transition:background-color .12s,border-color .12s,color .12s,transform 80ms,opacity .12s;display:flex}.qc-tile:hover{transform:scale(1.03)}.qc-tile:active{transform:scale(.97)}.qc-tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.qc-tile-number{letter-spacing:.02em;font-size:1.35rem;font-weight:800}.qc-tile--empty{border:1px dashed var(--border-subtle);color:var(--text-muted);opacity:.55;background:0 0}.qc-tile--empty:hover{border-color:var(--accent);color:var(--accent);opacity:1;background:#646cff0f}.qc-tile--partial{color:#f59e0b;background:#f59e0b14;border-color:#f59e0b}.qc-tile--partial:hover{background:#f59e0b29;border-color:#f59e0b}.qc-tile--complete{background:var(--bg-card);border-color:var(--accent);color:var(--accent)}.qc-tile--complete:hover{background:#646cff1a}.creator-footer{flex-shrink:0;align-items:center;gap:1rem;display:flex}.creator-question-count{color:var(--text-muted);font-size:.8rem;font-weight:600}.player-sidebar{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;min-width:240px;padding:1rem;display:flex;overflow:hidden}@media (width<=700px){.player-sidebar{min-width:0}}.player-sidebar-players{flex-direction:column;flex:1;gap:1rem;min-height:0;display:flex;overflow-y:auto}.player-sidebar-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);flex-shrink:0;margin:0;font-size:.75rem;font-weight:600}.player-sidebar-empty{color:var(--text-disabled);font-size:.85rem}.player-sidebar-list{grid-template-columns:1fr;gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.player-sidebar-item{background:var(--bg-elevated);border-radius:8px;grid-template-columns:38px 1fr;align-items:center;column-gap:.65rem;padding:.5rem .6rem;display:grid}.player-avatar-wrap{outline-offset:2px;border-radius:50%;outline:2px solid #0000;width:38px;height:38px;transition:outline-color .2s,box-shadow .2s}.player-avatar-wrap.buzzed{outline-color:#ef4444;box-shadow:0 0 0 4px #ef44442e}.player-avatar{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.player-info{grid-template-rows:auto auto;min-width:0;display:grid}.player-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.825rem;font-weight:600;overflow:hidden}.player-score{color:var(--accent);font-size:.75rem;font-weight:600}.sidebar-game-controls{border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:0;margin-top:.75rem;padding-top:.75rem;display:flex}.sidebar-section{border-bottom:1px solid var(--border);flex-direction:column;gap:.6rem;margin-bottom:.75rem;padding-bottom:.75rem;display:flex}.sidebar-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.sidebar-section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0;font-size:.7rem;font-weight:600}.sidebar-timer-display{background:#fbbf2414;border:1.5px solid #fbbf2459;border-radius:10px;justify-content:center;align-items:center;padding:.35rem .75rem;display:flex}.sidebar-timer-value{color:#fbbf24;font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:700}.sidebar-timer-value--urgent{color:#ef4444;animation:.5s ease-in-out infinite alternate sidebar-timer-pulse}@keyframes sidebar-timer-pulse{0%{opacity:1}to{opacity:.6}}.sidebar-timer-controls{flex-direction:column;gap:.4rem;display:flex}.sidebar-timer-input-row{align-items:center;gap:.4rem;display:flex}.sidebar-timer-btn-row{gap:.4rem;display:flex}.sidebar-timer-input{border:1px solid var(--border);background:var(--bg-elevated);width:4rem;color:var(--text-primary);text-align:center;appearance:textfield;border-radius:8px;padding:.3rem .4rem;font-family:inherit;font-size:.875rem;font-weight:600}.sidebar-timer-input::-webkit-inner-spin-button{appearance:none}.sidebar-timer-input::-webkit-outer-spin-button{appearance:none}.sidebar-timer-input:focus{outline:2px solid var(--accent);outline-offset:1px}.sidebar-timer-unit{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:600}.sidebar-buzz-actions{justify-content:center;gap:.6rem;display:flex}.sidebar-buzz-btn{cursor:pointer;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;padding:0;font-family:inherit;transition:background-color .15s,color .15s,border-color .15s,box-shadow .15s,opacity .15s,transform .1s;display:inline-flex}.sidebar-buzz-btn svg{width:22px;height:22px;display:block}.sidebar-buzz-btn:hover:not(:disabled){transform:translateY(-1px)}.sidebar-buzz-btn:active:not(:disabled){transform:translateY(0)}.sidebar-buzz-btn:disabled{cursor:not-allowed;opacity:.45;color:var(--text-disabled)!important;border-color:var(--border)!important;box-shadow:none!important;background:0 0!important;transform:none!important}.sidebar-buzz-btn--approve{color:#22c55e;background:#22c55e26;border-color:#22c55e;box-shadow:0 0 #22c55e00}.sidebar-buzz-btn--approve:hover:not(:disabled){background:#22c55e47;box-shadow:0 4px 16px #22c55e59}.sidebar-buzz-btn--decline{color:#ef4444;background:#ef444426;border-color:#ef4444}.sidebar-buzz-btn--decline:hover:not(:disabled){background:#ef444447;box-shadow:0 4px 16px #ef444459}.sidebar-buzz-btn--reset{color:#fbbf24;background:#fbbf241f;border-color:#fbbf2499}.sidebar-buzz-btn--reset:hover:not(:disabled){background:#fbbf2438;border-color:#fbbf24;box-shadow:0 4px 16px #fbbf244d}.sidebar-last-buzzed{color:#ef4444;text-align:center;margin:0;font-size:.8rem;font-weight:600}.sidebar-buzzer-btn{color:#fff;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:linear-gradient(#f05252 0%,#dc2626 100%);border:none;border-radius:100px;width:100%;padding:1.1rem 1rem;font-family:inherit;font-size:1.1rem;font-weight:800;transition:transform 80ms,box-shadow 80ms;box-shadow:0 6px #991b1b,0 8px 20px #00000073}.sidebar-buzzer-btn:hover:not(:disabled){background:linear-gradient(#f87171 0%,#ef4444 100%)}.sidebar-buzzer-btn:active:not(:disabled){transform:translateY(4px);box-shadow:0 2px #991b1b,0 4px 10px #00000059}.sidebar-buzzer-btn--me{cursor:default;background:linear-gradient(#34d399 0%,#10b981 100%);box-shadow:0 4px #065f46,0 6px 16px #0006}.sidebar-buzzer-btn--other{color:#1a1a2e;cursor:default;background:linear-gradient(#fbbf24 0%,#f59e0b 100%);box-shadow:0 4px #92400e,0 6px 16px #00000059}.sidebar-buzzer-btn--disabled{cursor:not-allowed;opacity:.55;background:var(--bg-elevated)!important;color:var(--text-disabled)!important;box-shadow:none!important;transform:none!important}.mps{z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);width:22px;height:22px;color:var(--text-muted);pointer-events:none;-webkit-user-select:none;user-select:none;background:#0000008c;border-radius:6px;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;line-height:1;display:inline-flex;position:absolute;bottom:6px;right:6px}.mps--ready{color:var(--accent)}.mps-icon{letter-spacing:-.05em}.mps-spinner{border:1.5px solid #fff3;border-top-color:var(--text-muted);border-radius:50%;width:10px;height:10px;animation:.8s linear infinite mps-spin;display:block}@keyframes mps-spin{to{transform:rotate(360deg)}}.media-text{flex-direction:column;flex:1;gap:.75rem;min-height:0;display:flex}.mt-ffe-canvas{flex-direction:column;flex:1;width:100%;min-height:0;display:flex;position:relative}.mt-ffe-canvas[data-valign=top]{justify-content:flex-start}.mt-ffe-canvas[data-valign=center]{justify-content:center}.mt-ffe-canvas[data-valign=bottom]{justify-content:flex-end}.mt-ffe-text{color:var(--text-primary);word-break:break-word;font-size:.95rem;line-height:1.55}.mt-ffe-media-img{object-fit:contain;background:#000;border-radius:8px;position:absolute}.mt-media-item-wrap{align-self:flex-start;display:block;position:relative}.mt-ffe-img-outer{background:#000;border-radius:8px;position:absolute;overflow:hidden}.mt-ffe-img-outer .mt-ffe-media-img{width:100%;height:100%;left:unset;top:unset;position:relative}.mt-ffe-media-wrap{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;flex-direction:column;display:flex;position:absolute;overflow:hidden}.mt-ffe-media-wrap--audio{background:var(--bg-card);justify-content:center;align-items:center}.mt-ffe-media-wrap video{object-fit:contain;background:#000;flex:1;width:100%;min-height:0}.mt-ffe-media-wrap audio{width:90%}.quiz-block-text font[size="1"],.quiz-block-text font[size="2"]{font-size:.75em}.quiz-block-text font[size="3"]{font-size:1em}.quiz-block-text font[size="4"],.quiz-block-text font[size="5"]{font-size:1.5em}.quiz-block-text font[size="6"],.quiz-block-text font[size="7"]{font-size:2.2em}.mt-av-wrap{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;flex-direction:column;display:flex;position:relative;overflow:hidden}.mt-video{object-fit:contain;background:#000;width:100%;max-height:480px;display:block}.mt-av-wrap--audio{background:var(--bg-card)}.mt-av-wrap--audio audio,.mt-ffe-media-wrap--audio audio{width:90%}.mt-controls-overlay{z-index:2;cursor:not-allowed;position:absolute;inset:0}.fifty-page{height:100vh;overflow:hidden}.fifty-main{flex-direction:column;flex:1;align-items:center;min-height:0;padding:2rem 1rem;display:flex;overflow-y:auto}.fifty-card{background-color:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:2rem;width:100%;max-width:680px;padding:1rem;display:flex}.quiz-ready-card{text-align:center;align-items:center;gap:1.25rem;padding:4rem 2.5rem}.quiz-ready-icon{color:var(--accent);font-size:3rem;font-weight:700;line-height:1}.quiz-ready-title{color:var(--text-primary);margin:0;font-size:1.4rem;font-weight:700}.quiz-ready-subtitle{color:var(--accent);margin:0;font-size:.875rem;font-weight:600}.quiz-waiting-msg{color:var(--text-muted);margin:0;font-size:.925rem}.quiz-active-card-area{flex-direction:column;min-width:0;min-height:0;display:flex}.quiz-active-card-area .fifty-card{flex:1;max-width:none;min-height:0;overflow:hidden}.quiz-card{gap:1.5rem}@media (width<=700px){.quiz-blocks-row{flex-direction:column;overflow-y:auto}.quiz-blocks-row .quiz-block{overflow:visible}.quiz-blocks-row .quiz-block-content{overflow-y:visible}}.quiz-counter{align-items:baseline;gap:.6rem;display:flex}.quiz-counter-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.75rem;font-weight:600}.quiz-counter-value{color:var(--accent);font-size:1.5rem;font-weight:700;line-height:1}.quiz-counter-total{color:var(--text-muted);font-size:1rem;font-weight:400}.quiz-nav{align-items:center;gap:.75rem;display:flex}.quiz-nav-counter{text-align:center;min-width:5rem;color:var(--text-muted);flex-shrink:0;font-size:.875rem;font-weight:600}.remote-cursor{pointer-events:none;z-index:9999;filter:drop-shadow(0 2px 3px #0006);will-change:left, top;width:22px;height:22px;margin:-2px 0 0 -2px;position:fixed}.selector-banner{z-index:9998;pointer-events:none;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-primary);letter-spacing:.01em;white-space:nowrap;border-radius:999px;padding:.625rem 1.25rem;font-size:.95rem;font-weight:600;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #00000059}.selector-banner.selector-banner--me{color:#fecaca;background:#f871712e;border-color:#f8717199}.selector-frame{pointer-events:none;z-index:9997;border:4px solid #f87171;animation:2.4s ease-in-out infinite selector-frame-pulse;position:fixed;inset:0;box-shadow:inset 0 0 24px #f8717159}@keyframes selector-frame-pulse{0%,to{box-shadow:inset 0 0 24px #f8717159}50%{box-shadow:inset 0 0 32px #f871718c}}.cell-flight{z-index:9998;pointer-events:none;color:#fff;border:1px solid var(--border);box-sizing:border-box;will-change:left, top, width, height, background-color, opacity;justify-content:center;align-items:center;display:flex;position:fixed}.cell-flight-label{letter-spacing:.02em;font-size:2.5rem;font-weight:700}@media (prefers-reduced-motion:reduce){.cell-flight{transition-duration:.01ms!important}}.jeopardy-page{height:100vh;overflow:hidden}.jeopardy-main{background-color:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;flex:1;align-items:stretch;gap:1.5rem;min-height:0;padding:1rem;display:flex;overflow-y:auto}.jeopardy-header{flex-shrink:0;align-items:baseline;gap:1rem;display:flex}.jeopardy-title{color:var(--text-primary);margin:0;font-size:1.4rem;font-weight:700}.jeopardy-progress{color:var(--text-muted);white-space:nowrap;font-size:.875rem;font-weight:600}.jeopardy-empty{color:var(--text-muted);text-align:center;padding:3rem 0}.jeopardy-board{gap:.5rem;width:100%;display:grid;overflow-x:auto}.jeopardy-cat-header{background:var(--accent);color:#fff;text-align:center;letter-spacing:.08em;border-radius:10px;justify-content:center;align-items:center;min-height:3rem;padding:.75rem .5rem;font-size:.75rem;font-weight:700;line-height:1.3;display:flex}.jeopardy-cell{box-sizing:border-box;background:var(--bg-elevated);border:1px solid var(--border);color:var(--accent);cursor:pointer;letter-spacing:.02em;border-radius:10px;justify-content:center;align-items:center;min-height:4.5rem;padding:.5rem;font-family:inherit;font-size:1.25rem;font-weight:700;transition:background-color .12s,border-color .12s,color .12s;display:flex}.jeopardy-cell:hover:not(:disabled){background:var(--bg-hover);border-color:var(--accent)}.jeopardy-cell:active:not(:disabled){opacity:.8}.jeopardy-cell.answered{background:var(--bg-elevated);border-color:var(--border);color:#0000;cursor:default;opacity:.4}.jeopardy-cell.answered-gm{background:var(--bg-elevated);border-color:var(--border);color:var(--text-disabled);opacity:.55;text-decoration:line-through}.jeopardy-cell.empty{cursor:default;background:0 0;border-color:#0000}.jeopardy-cell:disabled:not(.answered):not(.empty){cursor:not-allowed;opacity:.7}.jeopardy-active-area{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.jeopardy-card{background-color:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;flex:1;gap:1.5rem;width:100%;min-height:0;padding:1rem;display:flex;overflow:hidden}.quiz-blocks-row{flex:1;gap:1.5rem;min-height:0;display:flex}.quiz-blocks-row .quiz-block{flex:1;min-width:0;min-height:0;overflow:hidden}.quiz-blocks-row .quiz-block-content{flex:1;min-height:0;overflow-y:auto}.quiz-blocks-row .content-hidden-placeholder{flex:1;justify-content:center;align-items:center;padding:2rem 1.5rem;display:flex}@media (width<=700px){.quiz-blocks-row{flex-direction:column;overflow-y:auto}.quiz-blocks-row .quiz-block{overflow:visible}.quiz-blocks-row .quiz-block-content{overflow-y:visible}}.jeopardy-question-meta{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.jeopardy-question-value{color:var(--accent);font-size:2rem;font-weight:800;line-height:1}.jeopardy-question-category{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.75rem;font-weight:700}.quiz-block{border:1px solid var(--border);background:var(--bg-elevated);border-radius:12px;flex-direction:column;gap:.75rem;padding:1.25rem 1.5rem;display:flex}.quiz-block-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);align-items:center;gap:.6rem;font-size:.75rem;font-weight:600;display:flex}.block-reveal-btn{text-transform:uppercase;letter-spacing:.06em;margin-left:auto}.answer-block.revealed{background:#646cff12;border-color:#646cff66}.answer-block.revealed .quiz-block-label{color:var(--accent)}.answer-block.gm-only{border-style:dashed;border-color:var(--border-subtle);opacity:.75}.gm-only-badge{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);background:#6b6b8226;border-radius:4px;padding:.15rem .5rem;font-size:.68rem;font-weight:600}.quiz-block-content{flex-direction:column;gap:.5rem;display:flex}.quiz-block-text{color:var(--text-primary);margin:0;font-size:1.05rem;line-height:1.6}.question-block .quiz-block-text{font-size:1.15rem}.answer-block.revealed .quiz-block-text{font-weight:600}.quiz-block-image{border:1px solid var(--border);border-radius:8px;max-width:100%}.quiz-block-audio{width:100%}.content-hidden-placeholder{border:1px dashed var(--border-subtle);text-align:center;color:var(--text-disabled);border-radius:10px;padding:1.25rem 1.5rem;font-size:.9rem}.quiz-controls{border-top:1px solid var(--border);flex-direction:column;gap:.75rem;padding-top:.5rem;display:flex}.jc-page{flex-direction:column;flex:1;gap:.75rem;min-height:0;display:flex;overflow:hidden}.jc-topbar{align-items:center;gap:.75rem;display:flex}.jc-title-input{flex:1}.jc-save-btn{flex-shrink:0}.jc-error{color:var(--text-error);background:#f8717114;border:1px solid #f8717133;border-radius:8px;margin:0;padding:.6rem .875rem;font-size:.875rem}.jc-tab-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.jc-tabs{border-bottom:1px solid var(--border);background:var(--bg-elevated);flex-shrink:0;gap:.25rem;padding:0 1rem;display:flex}.jc-tab-badge{background:var(--accent);color:#fff;border-radius:99px;justify-content:center;align-items:center;min-width:1.25rem;height:1.25rem;margin-left:.4rem;padding:0 .35rem;font-size:.7rem;font-weight:700;display:inline-flex}.jc-tab-content{flex-direction:column;flex:1;gap:1rem;min-height:0;padding:1.25rem;display:flex;overflow-y:auto}.jc-footer{flex-shrink:0;align-items:center;gap:1rem;padding-top:.25rem;display:flex}.jc-stats{color:var(--text-muted);font-size:.8rem;font-weight:600}.jcb-scroll-wrap{flex:1;min-height:0;overflow:auto visible}.jcb-empty{color:var(--text-muted);text-align:center;padding:2rem 0;font-size:.9rem}.jcb-board{gap:.4rem;min-width:max-content;display:grid}.jcb-cat-header{background:var(--accent);border-radius:10px;align-items:center;gap:.4rem;min-height:3.25rem;padding:.5rem .65rem;display:flex}.jcb-cat-input{color:#fff;text-transform:uppercase;letter-spacing:.07em;text-align:center;background:0 0;border:none;outline:none;flex:1;min-width:0;padding:0;font-family:inherit;font-size:.8rem;font-weight:700;line-height:1.3}.jcb-cat-input::placeholder{color:#ffffff80;text-transform:none;letter-spacing:0;font-weight:400}.jcb-cat-input:focus{text-underline-offset:3px;-webkit-text-decoration:underline #ffffff80;text-decoration:underline #ffffff80}.jcb-cat-delete{color:#fffc;cursor:pointer;background:#ffffff26;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:.65rem;transition:background-color .12s;display:flex}.jcb-cat-delete:hover{color:#fff;background:#ef44448c}.jcb-cell{background:var(--bg-card);border:1px solid var(--border);color:var(--accent);cursor:pointer;letter-spacing:.02em;border-radius:10px;justify-content:center;align-items:center;min-height:4.5rem;padding:.5rem;font-family:inherit;font-size:1.2rem;font-weight:700;transition:background-color .12s,border-color .12s,transform 80ms;display:flex}.jcb-cell:hover{background:var(--bg-hover);border-color:var(--accent);transform:scale(1.02)}.jcb-cell:active{transform:scale(.97)}.jcb-cell--daily-double{color:#f59e0b;border-color:#f59e0b;position:relative}.jcb-cell--daily-double:hover{background:#f59e0b1a;border-color:#f59e0b}.jcb-dd-badge{letter-spacing:.04em;color:#f59e0b;opacity:.85;font-size:.55rem;font-weight:800;line-height:1;position:absolute;top:4px;right:5px}.jcb-cell--empty{border:1px dashed var(--border-subtle);color:var(--text-muted);opacity:.6;background:0 0;font-size:1.4rem;font-weight:400}.jcb-cell--empty:hover{border-color:var(--accent);color:var(--accent);opacity:1;background:#646cff0f;transform:scale(1.02)}.jcb-add-cat-cell{justify-content:center;align-items:center;min-height:3.25rem;display:flex}.jcb-add-cat-btn{border:1px dashed var(--border-subtle);width:100%;height:100%;min-height:3.25rem;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:10px;font-family:inherit;font-size:1.4rem;font-weight:400;transition:background-color .12s,border-color .12s,color .12s}.jcb-add-cat-btn:hover{border-color:var(--accent);color:var(--accent);background:#646cff12}.jcb-add-cell{justify-content:center;align-items:center;padding:.25rem 0;display:flex}.jcb-add-btn{border:1px dashed var(--border-subtle);width:100%;height:2.25rem;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;font-family:inherit;font-size:1.1rem;transition:background-color .12s,border-color .12s,color .12s}.jcb-add-btn:hover{border-color:var(--accent);color:var(--accent);background:#646cff12}.lc-player-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.lc-player-item{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;align-items:center;gap:.75rem;padding:.625rem .875rem;transition:border-color .2s,opacity .2s;display:flex}.lc-player-item--active{border-color:var(--accent);background:#646cff14}.lc-player-item--eliminated{opacity:.45}.lc-player-avatar{flex-shrink:0;width:36px;height:36px}.lc-player-info{flex-direction:column;flex:1;gap:.15rem;display:flex;overflow:hidden}.lc-player-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.lc-player-you{color:var(--text-muted);font-weight:400}.lc-player-cards{color:var(--text-muted);font-size:.72rem}.lc-player-right{flex-shrink:0}.lc-lives{align-items:center;gap:4px;display:flex}.lc-life-pip{border:1.5px solid var(--border);background:0 0;border-radius:50%;width:10px;height:10px;transition:background .2s,border-color .2s;display:inline-block}.lc-life-pip--alive{background:#f87171;border-color:#f87171}.lc-life-pip--lost{border-color:var(--border-subtle);background:0 0}.lc-eliminated-badge{text-transform:uppercase;letter-spacing:.06em;color:var(--text-error);border:1px solid var(--text-error);border-radius:4px;padding:1px 5px;font-size:.7rem;font-weight:600}.lc-my-hand{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;flex-shrink:0;gap:1rem;padding:1rem;display:flex}.lc-hand-label{min-height:1.2rem}.lc-hand-required{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.8rem;font-weight:600}.lc-cards{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.lc-card{border:2px solid var(--border);background:var(--bg-elevated);cursor:pointer;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;width:72px;height:100px;padding:.5rem;font-family:inherit;transition:border-color .15s,background-color .15s,transform .12s;display:flex}.lc-card:hover:not(.lc-card--disabled){border-color:var(--accent);background:#646cff14;transform:translateY(-4px)}.lc-card--selected{border-color:var(--accent);background:#646cff2e;transform:translateY(-8px)}.lc-card--disabled{cursor:default;opacity:.55}.lc-card--joker{background:#a78bfa14;border-color:#a78bfa}.lc-card--joker.lc-card--selected{background:#a78bfa33}.lc-card-rank{color:var(--text-primary);font-size:1.6rem;font-weight:700;line-height:1}.lc-card--joker .lc-card-rank{color:#a78bfa}.lc-card-joker-label{text-transform:uppercase;letter-spacing:.1em;color:#a78bfa;font-size:.5rem;font-weight:700}.lc-hand-empty{color:var(--text-muted);text-align:center;margin:0;font-size:.875rem}.lc-hand-actions{justify-content:space-between;align-items:center;gap:1rem;display:flex}.lc-select-hint{color:var(--text-muted);font-size:.8rem}.lc-play-area{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;align-items:center;gap:1.5rem;padding:1rem;display:flex;overflow:hidden}.lc-turn-banner{text-align:center;letter-spacing:.01em;border-radius:10px;justify-content:center;align-items:center;min-height:2.75rem;padding:.625rem 1.75rem;font-size:1.625rem;font-weight:800;display:flex}.lc-turn-banner--mine{color:var(--accent);background:#646cff1f;border:1px solid #646cff40}.lc-turn-banner--other{color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border)}.lc-facedown-cards{justify-content:center;gap:.5rem;display:flex}.lc-facedown-cards--placeholder{opacity:.2}.lc-facedown-card{border:2px solid var(--border);background:var(--bg-elevated);border-radius:8px;justify-content:center;align-items:center;width:64px;height:90px;display:flex}.lc-facedown-card--ghost{border-style:dashed;border-color:var(--border-subtle);background:0 0}.lc-facedown-card-pattern{color:var(--text-muted);opacity:.4;font-size:1.4rem}.lc-play-display{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;width:100%;min-height:0;display:flex}.lc-play-active{flex-direction:column;align-items:center;gap:1rem;display:flex}.lc-play-claim{color:var(--text-muted);text-align:center;font-size:.95rem}.lc-play-claimer{color:var(--text-primary);font-weight:700}.lc-play-rank{color:var(--accent);font-weight:600}.lc-play-empty{flex-direction:column;align-items:center;gap:1rem;display:flex}.lc-play-empty-text{color:var(--text-disabled);font-size:.85rem}.lc-timer-track{align-items:center;gap:.5rem;width:100%;max-width:320px;display:flex}.lc-timer-bar-bg{background:var(--bg-elevated);border-radius:999px;flex:1;height:6px;position:relative;overflow:hidden}.lc-timer-bar{background:var(--accent);border-radius:999px;height:100%;transition:width .9s linear,background .3s;position:absolute;top:0;left:0}.lc-timer-bar--urgent{background:#f87171}.lc-timer-label{color:var(--text-muted);white-space:nowrap;text-align:right;min-width:2.5rem;font-size:.75rem;font-weight:600}.lc-play-actions{align-items:center;gap:.75rem;display:flex}.lc-challenge-result{background:var(--bg-card);border:1px solid var(--border);text-align:center;box-sizing:border-box;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:1.25rem;width:100%;padding:2rem 2.5rem;display:flex;position:relative}.lc-result-header{font-size:1rem;font-weight:700}.lc-result-verdict--caught{color:var(--text-error)}.lc-result-verdict--wrong{color:#fb923c}.lc-revealed-cards{justify-content:center;gap:.5rem;min-height:72px;display:flex}.lc-revealed-card-slot{width:52px;height:72px;position:relative}.lc-revealed-card{border:2px solid var(--border);background:var(--bg-elevated);border-radius:8px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.lc-revealed-card--valid{background:#4ade8014;border-color:#4ade80}.lc-revealed-card--invalid{border-color:var(--text-error);background:#f8717114}.lc-revealed-rank{color:var(--text-primary);font-size:1.4rem;font-weight:700}.lc-revealed-card-ghost{border:2px dashed var(--border-subtle);border-radius:8px;position:absolute;inset:0}.lc-life-flip-wrapper{flex-direction:column;align-items:center;gap:.75rem;display:flex}.lc-life-flip-scene{perspective:600px;width:84px;height:84px}.lc-life-flip-card{width:100%;height:100%;position:relative}.lc-life-face{backface-visibility:hidden;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.lc-life-face--front{background:var(--bg-elevated);border:3px solid #f87171}.lc-life-icon{color:#f87171;font-size:2.2rem;line-height:1}.lc-life-face--back{transform:rotateY(180deg)}.lc-life-face--safe{background:#4ade801f;border:3px solid #4ade80}.lc-life-face--bad{border:3px solid var(--text-error);background:#f871711f}.lc-life-result-icon{font-size:2.4rem;font-weight:900;line-height:1}.lc-life-face--safe .lc-life-result-icon{color:#4ade80}.lc-life-face--bad .lc-life-result-icon{color:var(--text-error)}.lc-life-flip-label{text-align:center;max-width:220px;margin:0;font-size:.85rem;font-weight:600}.lc-life-flip-label--safe{color:#4ade80}.lc-life-flip-label--bad{color:var(--text-error)}.lc-game-over{text-align:center;flex-direction:column;align-items:center;gap:1.5rem;padding:3rem 2rem;display:flex}.lc-game-over-trophy{font-size:4rem;line-height:1;animation:.6s cubic-bezier(.36,.07,.19,.97) both lc-trophy-bounce}@keyframes lc-trophy-bounce{0%{opacity:0;transform:scale(.5)translateY(-20px)}to{opacity:1;transform:scale(1)translateY(0)}}.lc-game-over-title{color:var(--text-primary);margin:0;font-size:1.5rem;font-weight:700}.lc-winner-card{flex-direction:column;align-items:center;gap:.75rem;display:flex}.lc-winner-avatar{border:3px solid #facc15;border-radius:50%;width:80px;height:80px}.lc-winner-name{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:600}.lc-round-banner{background:var(--bg-card);border:1px solid var(--border);text-align:center;box-sizing:border-box;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:1.75rem;width:100%;padding:2rem 2.5rem;display:flex;overflow:hidden}.lc-round-banner-round-label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);font-size:.8rem;font-weight:700}.lc-round-banner-rank-section{flex-direction:column;align-items:center;gap:.5rem;display:flex}.lc-round-banner-rank-badge{color:var(--accent);text-shadow:0 0 32px #646cff80;font-size:5rem;font-weight:900;line-height:1}.lc-round-banner-rank-sub{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.8rem;font-weight:600}.lc-round-banner-deck-section{background:var(--bg-elevated);border-radius:10px;flex-direction:column;align-items:center;gap:.75rem;width:100%;max-width:360px;padding:1rem 1.25rem;display:flex}.lc-round-banner-deck-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.75rem;font-weight:600}.lc-round-banner-pips{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.lc-round-banner-pip{border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);border-radius:6px;padding:.3rem .7rem;font-size:.9rem;font-weight:700}.lc-round-banner-pip--required{border-color:var(--accent);color:var(--accent);background:#646cff1f}.lc-round-banner-pip--joker{color:#a78bfa;background:#a78bfa14;border-color:#a78bfa}.lc-round-banner-cards-per-player{color:var(--text-disabled);font-size:.78rem}.lc-round-banner-hint{color:var(--text-disabled);letter-spacing:.05em;font-size:.72rem}.lc-timeout-penalty{background:var(--bg-card);border:1px solid var(--border);text-align:center;box-sizing:border-box;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;width:100%;padding:2rem 2.5rem;display:flex;position:relative}.lc-timeout-icon{font-size:3rem;line-height:1}.lc-timeout-title{color:var(--text-primary);margin:0;font-size:1.2rem;font-weight:700}.lc-timeout-subtitle{color:var(--text-muted);margin:0;font-size:.9rem}.lc-result-dismiss{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:.85rem;line-height:1;transition:color .15s;position:absolute;top:.625rem;right:.625rem}.lc-result-dismiss:hover{color:var(--text-primary)}.lc-page{flex:1;grid-template:"header header""main sidebar"1fr/1fr 280px;gap:.75rem;min-height:0;display:grid}.lc-header{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-shrink:0;grid-area:header;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.lc-header-info{align-items:center;gap:1rem;display:flex}.lc-round-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.85rem;font-weight:600}.lc-required-rank-badge{color:var(--accent);background:#646cff1f;border:1px solid #646cff4d;border-radius:6px;padding:2px 8px;font-size:.85rem;font-weight:700}.lc-header-actions{align-items:center;gap:.5rem;display:flex}.lc-sidebar{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;grid-area:sidebar;gap:1rem;min-height:0;padding:1rem;display:flex;overflow-y:auto}.lc-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);flex-shrink:0;margin:0;font-size:.8rem;font-weight:600}.lc-main{flex-direction:column;grid-area:main;gap:.75rem;min-height:0;display:flex;position:relative;overflow:hidden}.lc-play-slot{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.lc-play-slot>*{flex:1;min-height:0}.lc-liar-flash{z-index:10;color:#f87171;text-shadow:0 0 40px #f87171b3,0 0 80px #f871714d;letter-spacing:-.02em;pointer-events:none;white-space:nowrap;justify-content:center;align-items:center;font-size:5rem;font-weight:900;display:flex;position:absolute;inset:0}.reconnect-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#1e1e2ecc;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.reconnect-dialog{background:var(--bg-card);border:1px solid var(--border);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:1rem;min-width:280px;padding:1rem;display:flex}.reconnect-title{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:600}.reconnect-subtitle{color:var(--text-muted);margin:0;font-size:.9rem}
