/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@import "https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&family=Bungee&display=swap";@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.grid{display:grid}.inline{display:inline}.table{display:table}}:root{--sky-blue:#aee4ff;--doodle-blue:#6bb8d9;--navy:#1e3a5f;--ink:#0a0a0a;--card-white:#fff;--guess-warning:#ff8b8b;--guess-warning-input:#ffb3b3;--purple:#7c3aed;--purple-light:#a78bfa;--purple-pale:#c4b5fd;--orange:#ff9500;--sticker-shadow:5px 5px 0 var(--ink);--sticker-shadow-sm:3px 3px 0 var(--navy);--radius-card:1.25rem;--radius-pill:999px;--brand-teal:var(--navy);--brand-yellow:var(--orange);--primary:var(--navy);--primary-glow:#1e3a5f33;--accent:var(--navy);--text-main:var(--navy);--text-muted:#4a6b8a;--border-glass:#1e3a5f26;--bg-card:var(--card-white);--fluid-padding:clamp(.5rem,2vw,1.25rem);--canvas-logical-w:800;--canvas-logical-h:550;--canvas-aspect:800/550;--canvas-display-max-w:520px}*{box-sizing:border-box}*,body{margin:0;padding:0}body{background:var(--sky-blue);color:var(--text-main);-webkit-font-smoothing:antialiased;width:100vw;font-family:Fredoka,system-ui,sans-serif;position:fixed;overflow:hidden}#app,body{height:100dvh}#app{flex-direction:column;width:100%;max-width:2560px;margin:0 auto;display:flex}.sketch-title:not(.stacked){color:#fff;text-transform:uppercase;letter-spacing:.04em;text-shadow:3px 3px 0 var(--ink),-1px -1px 0 var(--ink),1px -1px 0 var(--ink);font-family:Bungee,Fredoka,sans-serif;font-size:clamp(.85rem,2.5vw,1.2rem);line-height:1.1}.game-dashboard{height:100dvh;max-height:100dvh;padding:var(--fluid-padding);gap:var(--fluid-padding);background:var(--sky-blue);position:relative;overflow:hidden}.glass-card{background:var(--card-white);border:3px solid var(--navy);border-radius:var(--radius-card);box-shadow:var(--sticker-shadow-sm)}.btn-primary{background:var(--navy);color:#fff;border:3px solid var(--navy);border-radius:var(--radius-pill);cursor:pointer;box-shadow:3px 3px 0 var(--ink);padding:.65rem 1.25rem;font-family:Fredoka,sans-serif;font-size:.95rem;font-weight:700;transition:transform .15s,box-shadow .15s}.btn-primary:hover:not(:disabled){box-shadow:5px 5px 0 var(--ink);transform:translate(-2px,-2px)}.btn-primary:active:not(:disabled){box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-danger,.btn-secondary{border:3px solid var(--navy);border-radius:var(--radius-pill);cursor:pointer;box-shadow:var(--sticker-shadow-sm);font-family:Fredoka,sans-serif;font-weight:700}.btn-secondary{background:var(--card-white);color:var(--navy);padding:.65rem 1.25rem}.btn-danger{color:#fff;border-color:var(--ink);background:#ef4444;padding:.5rem 1rem}.input-field{background:var(--card-white);border:3px solid var(--navy);color:var(--navy);box-shadow:2px 2px 0 var(--navy);border-radius:.75rem;outline:none;padding:.7rem 1rem;font-family:Fredoka,sans-serif;font-weight:500}.input-field:focus{border-color:var(--purple);box-shadow:3px 3px 0 var(--navy),0 0 0 3px var(--purple-pale)}.part-title-label{text-transform:uppercase;border:2px solid var(--ink);letter-spacing:.06em;padding:.2rem .65rem;font-family:Bungee,Fredoka,sans-serif;font-size:.75rem}.part-title-label,.word-badge{color:#fff;background:var(--navy);border-radius:var(--radius-pill);box-shadow:2px 2px 0 var(--ink)}.word-badge{border:3px solid var(--ink);text-transform:capitalize;padding:.35rem 1rem;font-size:1.1rem;font-weight:700;display:inline-block}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#1e3a5f14}::-webkit-scrollbar-thumb{background:var(--navy);border-radius:4px}.sketch-canvas-element{width:100%;height:auto;max-width:var(--canvas-display-max-w);aspect-ratio:var(--canvas-aspect);background:#fff;margin:0 auto;display:block}@media (max-width:768px){.game-dashboard{padding:.35rem}}.fade-enter-active,.fade-leave-active{transition:opacity .3s}.fade-enter-from,.fade-leave-to{opacity:0}.chat-wrapper{justify-content:center;align-items:stretch;width:100%;height:100vh;padding:.5rem;display:flex}.chat-container{background:#0f172abf;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;width:100%;max-width:900px;height:100%;display:flex;position:relative;overflow:hidden}.chat-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.chat-title{letter-spacing:.12em;color:#94a3b8;font-size:.75rem;font-weight:700}.status-indicator{align-items:center;gap:.4rem;display:flex}.status-dot{background:#22c55e;border-radius:50%;width:6px;height:6px}.status-text{color:#22c55e;font-size:.65rem}.message-area{scroll-behavior:smooth;flex:1;padding:.5rem 0;overflow-y:auto}.chat-line{padding:.35rem .9rem}.user-message{gap:.6rem;display:flex}.author-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:.75rem;display:flex}.text-content{flex-wrap:wrap;gap:4px;display:flex}.author-name{color:#94a3b8;font-size:.75rem;font-weight:600}.message-text{color:#e2e8f0;word-break:break-word;font-size:.9rem}.system-note{text-align:center;opacity:.7;font-size:.7rem}.input-area{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0000004d;flex-shrink:0;gap:.5rem;padding:.6rem;display:flex}.chat-input{background:0 0;border:1px solid #ffffff1a;flex:1;padding:.6rem .9rem;font-size:.9rem}.chat-input,.send-btn{color:#fff;border-radius:10px}.send-btn{background:var(--primary);width:42px;height:42px;font-size:1rem}.scroll-down-btn{color:#fff;background:#0009;border-radius:20px;padding:.4rem 1rem;font-size:.75rem;position:absolute;bottom:70px;left:50%;transform:translate(-50%)}@media (max-width:1024px){.chat-container{border-radius:10px;max-width:100%}}@media (max-width:600px){.chat-wrapper{padding:0}.chat-container{border-radius:0}.author-avatar{width:20px;height:20px;font-size:.6rem}.chat-input,.message-text{font-size:.8rem}.send-btn{width:36px;height:36px}.scroll-down-btn{font-size:.65rem;bottom:65px}}@media (max-width:380px){.message-text{font-size:.75rem}}.compound-canvas-layout{flex:1;grid-template-columns:1fr 1fr;gap:.5rem;width:100%;height:100%;min-height:100%;display:grid;overflow:hidden}.compound-canvas-layout.layout-single{max-width:min(var(--canvas-display-max-w),100%);grid-template-columns:1fr;width:100%;height:100%;margin:0 auto}@media (max-width:900px){.compound-canvas-layout:not(.layout-single){grid-template-rows:minmax(38dvh,1fr) minmax(38dvh,1fr);grid-template-columns:1fr;overflow-y:auto}}.compound-panel{flex-direction:column;align-items:center;height:100%;min-height:0;display:flex;overflow:hidden}.compound-panel.drawer-focus{width:100%;max-width:var(--canvas-display-max-w);height:100%;margin:0 auto}.compound-panel.drawer-focus .sketch-studio{height:100%}.compound-panel.drawer-focus .sketch-card{flex:1;min-height:0}.guesser-screen{z-index:2;flex-direction:column;flex:1;align-items:stretch;gap:.75rem;max-width:100%;min-height:0;margin:0;padding:.5rem .75rem 1rem}.guesser-screen,.guesser-top{width:100%;display:flex;position:relative}.guesser-top{flex-direction:column;flex-shrink:0;align-items:center}.guesser-timer{transform-origin:100% 0;position:absolute;top:0;right:0;transform:scale(.85)}.guesser-timer .timer-container{min-width:auto;padding:.35rem .65rem}.guesser-card{background:var(--card-white);border:4px solid var(--navy);width:100%;min-height:0;box-shadow:5px 5px 0 var(--navy);border-radius:1.25rem;flex-direction:column;flex:1;transition:background-color .2s,border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.guesser-card.guess-wrong{background:var(--guess-warning);animation:guess-wrong-shake .45s}@keyframes guess-wrong-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.guesser-split{flex:auto;grid-template-columns:1fr auto 1fr;align-items:stretch;min-height:min(44dvh,320px);display:grid;overflow:hidden}.split-divider{background:#a78bfa14;border-left:2px solid #1e3a5f1f;border-right:2px solid #1e3a5f1f;justify-content:center;align-items:center;min-width:2.25rem;padding:0 .25rem;display:flex}.plus{color:var(--purple);font-size:1.25rem;font-weight:800;line-height:1}.word-slots{background:#ffffffe6;border-top:2px solid #1e3a5f1a;flex-wrap:wrap;flex-shrink:0;justify-content:center;gap:.35rem .5rem;padding:.65rem 1rem .85rem;display:flex}.slot-char{color:var(--navy);text-align:center;min-width:1ch;font-family:ui-monospace,Fredoka,monospace;font-size:1.15rem;font-weight:800}.slot-char:not(:empty){color:var(--purple)}.guessed-banner,.reveal-banner{text-align:center;color:var(--navy);border-top:2px solid #1e3a5f1a;padding:.75rem 1rem;font-size:.9rem;font-weight:700}.reveal-banner.quick-reveal{background:#22c55e1f;border-top-color:#22c55e59}.reveal-parts{color:var(--text-muted);margin-top:.25rem;font-size:.8rem;font-weight:600;display:block}.guesser-input-area{z-index:3;flex-direction:column;flex-shrink:0;gap:.35rem;width:100%;display:flex;position:relative}.guesser-input-row{align-items:center;gap:.5rem;width:100%;display:flex}.guesser-input{border:3px solid var(--navy);border-radius:var(--radius-pill);background:var(--card-white);color:var(--navy);box-shadow:3px 3px 0 var(--navy);outline:none;flex:1;padding:.85rem 1.25rem;font-family:Fredoka,sans-serif;font-size:1rem;font-weight:500;transition:background-color .2s,border-color .2s}.guesser-input.guess-wrong{background:var(--guess-warning-input);border-color:var(--navy)}.guesser-input::placeholder{color:#9ca3af}.guesser-input:focus{box-shadow:4px 4px 0 var(--navy),0 0 0 2px var(--purple-pale)}.submit-circle{border:3px solid var(--navy);background:var(--purple);color:#fff;cursor:pointer;width:52px;height:52px;box-shadow:3px 3px 0 var(--navy);touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;transition:transform .12s;display:flex}.submit-circle:hover:not(:disabled){transform:scale(1.05)}.submit-circle:active:not(:disabled){transform:scale(.98)}.submit-circle.is-ready{opacity:1;transform:scale(1.02)}.submit-circle:disabled{opacity:.45;cursor:not-allowed;box-shadow:2px 2px 0 var(--navy)}.submit-arrow{pointer-events:none;line-height:1;display:block}.submit-error{text-align:center;width:100%;color:var(--navy);margin:0;font-size:.85rem;font-weight:600}@media (max-width:720px){.guesser-split{grid-template-rows:1fr auto 1fr;grid-template-columns:1fr}.split-divider{border:2px solid #1e3a5f1f;border-right:none;border-left:none;min-width:0;min-height:2rem;padding:0}}@media (max-width:380px){.guesser-screen{padding:.35rem .5rem .75rem}.submit-circle{width:46px;height:46px}}.guesser-slot{flex-direction:column;flex:1 1 0;width:100%;min-height:0;display:flex;overflow:hidden}.player-label{color:var(--purple);flex-shrink:0;margin:0;padding:.4rem .75rem .3rem;font-size:.95rem;font-weight:600}.slot-num{margin-right:.35rem;font-weight:800}.drawing-tag{text-transform:uppercase;letter-spacing:.04em;color:var(--navy);background:#ffcd0059;border-radius:.25rem;margin-left:.4rem;padding:.1rem .35rem;font-size:.65rem;font-weight:800}.slot-canvas{background:#fff;flex:1;justify-content:center;align-items:center;width:100%;min-height:min(36dvh,280px);display:flex;overflow:hidden}.canvas-wait{color:var(--text-muted);text-align:center;padding:1rem;font-size:.85rem;font-weight:600}.slot-canvas .canvas-viewport--display,.slot-canvas .viewer-studio{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.slot-canvas .sketch-canvas-element{aspect-ratio:800/550;width:auto;max-width:100%;height:auto;max-height:100%;margin:0}.sketch-studio{flex-direction:column;align-items:center;gap:.35rem;width:100%;height:100%;min-height:0;display:flex;position:relative}.viewer-studio{background:#fff;width:100%;min-height:0}.viewer-studio .canvas-viewport--display{background:#fff;flex:none;min-height:0;padding:0}.viewer-studio .sketch-canvas-element{touch-action:pan-y}.watch-badge{z-index:5;background:var(--card-white);border:2px solid var(--ink);border-radius:var(--radius-pill);box-shadow:var(--sticker-shadow-sm);padding:.25rem .65rem;font-size:.7rem;font-weight:700;position:absolute;top:.25rem;right:.5rem}.drawer-focus-studio{width:100%;height:100%}.drawer-focus-studio .sketch-card{flex:1;max-width:100%}.drawer-focus-studio .sketch-controls{max-width:100%}.sketch-card{background:var(--card-white);border:4px solid var(--navy);width:100%;max-width:820px;min-height:0;box-shadow:5px 5px 0 var(--navy);border-radius:1.35rem;flex-direction:column;flex:1;display:flex;overflow:hidden}.sketch-card-header{flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:.5rem;padding:.85rem 1rem .5rem;display:flex}.hint-prefix{color:var(--ink);font-size:1rem;font-weight:600}.canvas-viewport{min-height:120px;padding:0 .5rem;position:relative}.canvas-viewport,.canvas-viewport.drawable-fill{background:var(--card-white);flex:1;justify-content:center;align-items:center;display:flex}.canvas-viewport.drawable-fill{min-height:0;padding:0;overflow:hidden}.canvas-viewport.drawable-fill .sketch-canvas-element{width:100%;max-width:var(--canvas-display-max-w);border-radius:0;height:auto;max-height:100%}.canvas-viewport:not(.drawable-fill){padding:0}.canvas-viewport:not(.drawable-fill) .sketch-canvas-element{border-radius:0}.sketch-canvas-element{touch-action:pan-y}.drawing-cursor{cursor:crosshair}.drawer-focus-studio .canvas-viewport.drawable-fill,.drawer-focus-studio .sketch-card{min-height:0}.brush-slider-row{flex-shrink:0;align-items:center;gap:.4rem;padding:.4rem .65rem .5rem;display:flex}.pencil-icon{width:.95rem;height:.95rem;color:var(--purple);flex-shrink:0}.pencil-icon.thick{width:1.2rem;height:1.2rem}.sketch-slider{appearance:none;background:var(--purple-pale);border:2px solid var(--navy);border-radius:var(--radius-pill);outline:none;flex:1;height:8px}.sketch-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--orange);border:2px solid var(--purple);width:20px;height:20px;box-shadow:2px 2px 0 var(--navy);cursor:pointer;border-radius:50%}.sketch-slider::-moz-range-thumb{background:var(--orange);border:2px solid var(--purple);width:20px;height:20px;box-shadow:2px 2px 0 var(--navy);cursor:pointer;border-radius:50%}.sketch-controls{flex-flow:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:.35rem;width:100%;max-width:820px;padding:.15rem .25rem .25rem;display:flex}.tools-divider{background:var(--navy);opacity:.25;border-radius:1px;flex-shrink:0;width:2px;height:26px;margin:0 .15rem}.tool-circle{border:2px solid var(--navy);background:var(--purple);color:#fff;cursor:pointer;width:34px;height:34px;box-shadow:2px 2px 0 var(--navy);border-radius:50%;justify-content:center;align-items:center;transition:transform .12s;display:flex}.tool-circle:hover{transform:scale(1.05)}.tool-circle.active{background:var(--purple-light);outline:2px solid var(--orange)}.tool-circle.mini-action{background:var(--card-white);width:28px;height:28px;color:var(--ink);font-size:.75rem;font-weight:800}.tool-circle.clear-action{color:#b91c1c;background:#fecaca}.tool-svg{width:1rem;height:1rem}.color-swatch{border:2px solid var(--navy);cursor:pointer;width:28px;height:28px;box-shadow:2px 2px 0 var(--navy);border-radius:50%;flex-shrink:0;transition:transform .12s}.color-swatch:hover{transform:scale(1.06)}.color-swatch.active{outline:2px solid var(--orange);transform:scale(1.08)}@media (max-width:520px){.sketch-controls{gap:.28rem;padding:.1rem .15rem}.tools-divider{height:22px}.tool-circle{width:30px;height:30px}.color-swatch,.tool-circle.mini-action{width:26px;height:26px}}.dual-canvas-layout{flex:1;grid-template-columns:1fr 1fr;gap:.5rem;width:100%;height:100%;min-height:100%;display:grid;overflow:hidden}.dual-canvas-layout.layout-single{max-width:min(var(--canvas-display-max-w),100%);grid-template-columns:1fr;width:100%;height:100%;margin:0 auto}@media (max-width:900px){.dual-canvas-layout:not(.layout-single){grid-template-rows:minmax(42dvh,1fr) minmax(42dvh,1fr);grid-template-columns:1fr;overflow-y:auto}}.dual-panel{flex-direction:column;flex:1;align-items:center;height:100%;min-height:0;display:flex;overflow:hidden}.dual-panel.drawer-focus{width:100%;max-width:100%;height:100%}.dual-panel.drawer-focus .sketch-studio{height:100%}.dual-panel.drawer-focus .sketch-card{flex:1;min-height:0}.panel-header{color:var(--ink);flex-shrink:0;justify-content:space-between;padding:.35rem .5rem}.drawer-label,.panel-header{align-items:center;display:flex}.drawer-label{gap:.5rem;font-size:.85rem;font-weight:700}.side-badge{background:var(--brand-teal);color:#fff;border-radius:.35rem;padding:.15rem .5rem;font-size:.7rem}.you-draw{color:var(--accent);font-size:.75rem}.guessed-badge{color:#22d3ee;background:#22d3ee33;border-radius:1rem;padding:.25rem .75rem;font-size:.7rem;font-weight:800}.word-picker{text-align:center;padding:.75rem 1rem}.picker-title{color:var(--text-muted);margin-bottom:.5rem;font-size:.75rem;font-weight:800}.word-options{flex-wrap:wrap;gap:.5rem}.word-btn{border:1px solid var(--border-glass);color:var(--text-main);cursor:pointer;background:#ffffff26;border-radius:.5rem;padding:.5rem 1rem;font-weight:700}.word-btn:hover{background:var(--brand-teal)}.canvas-slot{flex-direction:column;flex:auto;min-height:0;display:flex}.canvas-slot .canvas-container{background:#ffffff80;flex:1;height:100%;min-height:0}.canvas-slot .canvas-viewport{flex:1;align-items:stretch;min-height:min(42dvh,520px)}.canvas-slot canvas{aspect-ratio:800/550;object-fit:contain;max-width:100%;min-height:240px;max-height:100%;width:100%!important;height:100%!important}.canvas-slot .canvas-toolbar{flex-shrink:0}.canvas-slot .viewing-hint{padding:.25rem .5rem;font-size:.65rem}.word-hint-bar{text-align:center;letter-spacing:.2em;flex-shrink:0;padding:.5rem 1rem;font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:800;line-height:1.2}.word-display.masked{color:var(--accent)}.word-display.full-word{color:#86efac;letter-spacing:.12em;text-transform:uppercase}.guess-row{border-top:1px solid var(--border-glass);background:#00000026;flex-shrink:0;align-items:stretch;gap:.75rem;min-height:3.5rem;padding:.75rem 1rem}.guess-prefix{color:var(--accent);flex-shrink:0;align-items:center;padding:0 .25rem;font-size:clamp(1.25rem,2vw,1.5rem);font-weight:800;display:flex}.guess-input{border:2px solid var(--border-glass);min-width:0;color:var(--text-main);letter-spacing:.08em;background:#00000040;border-radius:.65rem;padding:.75rem 1rem;font-size:clamp(1rem,1.8vw,1.25rem);font-weight:700}.guess-input::placeholder{color:#ffffff73;font-weight:600}.guess-btn{align-self:stretch;min-width:5.5rem;padding:.75rem 1.5rem;font-size:clamp(.9rem,1.5vw,1.1rem);font-weight:800}.mobile-nav{display:none}.game-dashboard{-webkit-overflow-scrolling:touch;background:0 0;flex-direction:column;gap:clamp(.5rem,2vh,1.5rem);min-height:100dvh;padding:clamp(.5rem,2vw,1.5rem);display:flex;overflow:hidden auto}.game-header{z-index:100;grid-template-columns:1fr 2fr 1fr;padding:1rem 1.5rem;display:grid}.header-left{align-items:center;gap:.5rem;display:flex}.game-layout{z-index:1;position:relative}.room-pill .value{color:var(--navy)}.header-center{justify-content:center;display:flex}.header-right{justify-content:flex-end;display:flex}.room-pill{border:1px solid var(--border-glass);color:var(--text-muted);background:#ffffff08;border-radius:2rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:clamp(.7rem,1.5vw,.9rem);font-weight:700;display:flex}.room-id{color:var(--accent);letter-spacing:.05em;font-family:monospace}.word-hint-chamber{flex:1;justify-content:center;display:flex}.word-hint{letter-spacing:.2em;text-transform:uppercase;flex-direction:column;align-items:center;font-size:clamp(1.2rem,3.5vw,2.2rem);font-weight:800;display:flex}.word-length-indicator{color:#fff;letter-spacing:.1em;text-transform:uppercase;background:linear-gradient(135deg,#f59e0b,#ea580c);border-radius:1rem;margin-top:.5rem;padding:.2rem .75rem;font-size:.75rem;font-weight:900;animation:badgeIn .4s cubic-bezier(.34,1.56,.64,1);display:inline-block;box-shadow:0 4px 10px #ea580c4d}.full-word{color:var(--accent);text-shadow:0 0 20px #00968f80}.masked-word-input{color:var(--text-main);font-family:inherit;font-weight:inherit;letter-spacing:inherit;text-align:left;cursor:text;background:0 0;border:none;border-bottom:2px dashed #fff3;outline:none;width:100%;max-width:300px;padding-left:.5rem;transition:all .3s}.input-prefix,.masked-word-input{font-size:inherit;text-transform:uppercase}.input-prefix{color:var(--accent);-webkit-user-select:none;user-select:none;border-right:1px solid #ffffff1a;align-items:center;padding:0 .5rem;font-weight:900;display:flex}.input-prefix.mobile{color:var(--primary);border-right:2px solid #fff3;font-size:1.2rem}.prefix-mode{align-items:center;display:flex!important}.masked-word-input::placeholder{color:var(--text-main);opacity:.8}.masked-word-input:focus{border-bottom:2px dashed var(--primary);background:#ffffff0d;border-radius:.5rem .5rem 0 0}@media (max-width:768px){.masked-word-input{max-width:180px}}.guess-input-wrapper{align-items:center;gap:.75rem;width:100%;max-width:350px;display:flex;position:relative}.guess-send-btn{background:linear-gradient(135deg,var(--brand-teal),#0d9488);color:#fff;cursor:pointer;border:1px solid #ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex;box-shadow:0 4px 15px #00968f66}.guess-send-btn:hover:not(:disabled){filter:brightness(1.1);transform:scale(1.1)rotate(-5deg)}.guess-send-btn:active:not(:disabled){transform:scale(.9)}.guess-send-btn:disabled{opacity:.3;cursor:not-allowed;filter:grayscale();box-shadow:none}.send-icon{margin-bottom:2px;margin-left:2px;font-size:1.2rem}@media (max-width:1024px){.guess-input-wrapper{justify-content:center;gap:.5rem;max-width:100%}.guess-send-btn{width:40px;height:40px}.send-icon{font-size:1rem}}.pulse-text{color:var(--text-muted);letter-spacing:.1em;font-size:1rem;font-weight:700;animation:pulse 2s infinite}@keyframes pulse{50%{opacity:.5}}.game-layout{grid-template-columns:minmax(260px,1fr) 3fr minmax(300px,1.2fr);gap:clamp(.75rem,2vw,1.5rem);width:100%;max-width:1800px;margin:0 auto}.canvas-chamber{gap:.75rem;width:100%;position:relative}.canvas-chamber,.sidebar-left,.sidebar-right{flex-direction:column;height:100%;min-height:0;display:flex}.sidebar-left,.sidebar-right{gap:1rem;overflow:hidden}.sidebar-left .chat-container,.sidebar-left .chat-wrapper,.sidebar-right .player-list-container{flex:1;width:100%;min-height:0;max-height:100%!important}.sidebar-left{order:-1}.lobby-status{flex-direction:column;align-items:center;gap:.75rem;width:100%;display:flex}.lobby-start-btn{cursor:pointer;min-width:160px;padding:.65rem 1.5rem;font-weight:800}.lobby-start-btn:disabled{opacity:.5;cursor:not-allowed}.lobby-actions{justify-content:center;align-items:center;padding-top:1rem;display:flex}.start-btn{letter-spacing:.1em;box-shadow:0 10px 25px -5px var(--primary-glow);padding:1.25rem;font-size:1rem}.error-overlay,.overlay{z-index:500;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);-webkit-overflow-scrolling:touch;background:#000000b3;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow-y:auto}.round-end-overlay{border:2px solid var(--primary);background:#0f172acc}.game-over-overlay{-webkit-backdrop-filter:blur(35px);backdrop-filter:blur(35px);border:1px solid var(--accent);background:#0f172af2;align-items:flex-start;padding:2rem 0}.game-over-title{background:linear-gradient(135deg,var(--accent),#f59e0b);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 20px #ffcd004d);-webkit-background-clip:text;margin-bottom:2rem;font-size:clamp(2rem,8vw,3.5rem);font-weight:900}.overlay-content{text-align:center;margin:auto;animation:zoomIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes zoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.overlay-content.full-width{width:95%;max-width:800px;padding:1rem}.mvp-badges{flex-wrap:wrap;gap:1.5rem;margin-bottom:2.5rem}.mvp-badges,.restart-controls{justify-content:center;display:flex}.restart-controls{margin-top:3rem}.play-again-btn{letter-spacing:.1em;cursor:pointer;background:linear-gradient(135deg,#10b981,#059669);border-radius:1.5rem;padding:1.25rem 5rem;font-size:1.5rem;font-weight:900;transition:all .3s;animation:pulse 2s infinite;box-shadow:0 0 40px #10b98166}.play-again-btn:hover{transform:scale(1.1);box-shadow:0 0 60px #10b98199}.mvp-badge{border:1px solid var(--border-glass);background:#ffffff0d;border-radius:1.25rem;flex-direction:column;flex:1;align-items:center;gap:.5rem;min-width:160px;max-width:240px;padding:1.25rem;animation:bounceIn .6s cubic-bezier(.175,.885,.32,1.275);display:flex}.mvp-badge.drawer-badge{border-color:var(--accent)}.mvp-badge.streak-badge{border-color:#f87171}.badge-icon{font-size:2rem}.badge-label{color:var(--text-muted);letter-spacing:.1em;font-size:.6rem;font-weight:800}.badge-value{color:#fff;font-size:1.1rem;font-weight:700}.final-leaderboard-container{flex-direction:column;gap:.75rem;max-height:40vh;padding-right:1rem;display:flex;overflow-y:auto}.final-player-row{background:#ffffff08;border-radius:1rem;align-items:center;gap:1.5rem;padding:1rem 1.5rem;display:flex}.final-player-row .rank{color:var(--accent);width:40px;font-size:1.2rem;font-weight:800}.final-player-row .name{text-align:left;flex:1;font-size:1.1rem;font-weight:700}.stats-group{gap:2rem;display:flex}.stat-item{flex-direction:column;align-items:flex-start;display:flex}.s-label{color:var(--text-muted);font-size:.5rem;font-weight:800}.s-value{color:#fff;font-size:1rem;font-weight:700}.total-score{color:var(--primary);font-size:1.4rem;font-weight:800}.pts{color:var(--text-muted);font-size:.7rem}@keyframes bounceIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.selection-title{letter-spacing:.05em;margin-bottom:2rem;font-size:1.5rem;font-weight:800;color:#111!important}.word-options{justify-content:center;gap:1.5rem;margin-bottom:2rem;display:flex}.word-choice-btn{border:1px solid var(--border-glass);color:#000;cursor:pointer;background:#ffffff0d;border-radius:1rem;padding:1rem 2rem;font-weight:800;transition:all .3s}.word-choice-btn:hover{background:var(--primary);box-shadow:0 10px 20px var(--primary-glow);transform:translateY(-5px)}.selection-timer{color:#000;font-size:.9rem;font-weight:700}.choosing-overlay .status-text{font-weight:900;color:#000!important}.revealed-word{color:#111;letter-spacing:.1em;text-transform:uppercase;margin:.5rem 0 1.5rem;font-size:3.5rem;font-weight:900}.sidebar-footer{border-top:1px solid var(--border-glass);background:#ffffff05;flex-direction:column;gap:.75rem;margin-top:auto;padding:1rem;display:flex}.host-badge{color:var(--accent);letter-spacing:.2em;text-align:center;text-shadow:0 0 10px var(--accent);font-size:.65rem;font-weight:900}.start-btn-sidebar{letter-spacing:.05em;width:100%;box-shadow:0 4px 15px var(--primary-glow);padding:.8rem;font-size:1rem;font-weight:800;animation:pulse 2s infinite}.hero-actions{margin-top:1rem}.start-btn-hero{background:var(--primary);box-shadow:0 0 50px var(--primary-glow);border-radius:1.5rem;padding:1rem 4rem}.start-btn-hero:hover{box-shadow:0 0 70px var(--primary-glow);transform:scale(1.1)}.btn-danger{background:linear-gradient(135deg,#ef4444,#b91c1c);border:1px solid #ffffff1a;color:#fff!important}.quit-btn-sidebar{letter-spacing:.05em;cursor:pointer;border-radius:.75rem;width:100%;padding:.8rem;font-size:.9rem;font-weight:800;transition:all .3s;box-shadow:0 4px 15px #ef44444d}.quit-btn-sidebar:hover{background:linear-gradient(135deg,#f87171,#dc2626);transform:translateY(-2px);box-shadow:0 0 20px #ef444480}@keyframes heroPulse{0%{box-shadow:0 0 20px var(--primary-glow);transform:scale(1)}50%{box-shadow:0 0 50px var(--primary-glow);transform:scale(1.05)}to{box-shadow:0 0 20px var(--primary-glow);transform:scale(1)}}.mobile-guess-chamber{background:#ffffff0d}.guess-input-container{gap:.5rem}.mobile-input-field{border:1px solid var(--border-glass);color:#fff;background:#0000004d;border-radius:.75rem;flex:1;padding:.8rem 1rem;font-size:1rem}.mobile-send-btn{background:var(--brand-teal);color:#fff;cursor:pointer;border:none;border-radius:.75rem;padding:0 1.5rem;font-weight:800}.mobile-hint-text{text-align:center;color:var(--accent);letter-spacing:.2em;margin-top:.5rem;font-size:.7rem;font-weight:800}@media (max-width:1024px){.show-mobile-tablet{display:block}.hide-mobile-tablet{display:none}}.lobby-hero-actions{justify-content:center;margin-top:1.5rem;display:flex}.start-btn-hero{letter-spacing:.1em;box-shadow:0 0 40px var(--primary-glow);border-radius:1rem;padding:1.2rem 4rem;font-size:1.5rem;font-weight:900;transition:all .3s;animation:heroPulse 2s infinite}.lobby-footer-actions{border-top:1px solid var(--border-glass);background:#ffffff05}.start-btn-under-canvas{letter-spacing:.1em;background:var(--primary);box-shadow:0 0 50px var(--primary-glow);border-radius:1rem;padding:1rem 5rem;font-size:1.5rem;font-weight:900;transition:all .3s;animation:canvasPulse 2s infinite}@keyframes canvasPulse{0%{box-shadow:0 0 30px var(--primary-glow);transform:scale(1)}50%{box-shadow:0 0 70px var(--primary-glow);transform:scale(1.05)}to{box-shadow:0 0 30px var(--primary-glow);transform:scale(1)}}.quit-btn-under-canvas{letter-spacing:.1em;cursor:pointer;background:linear-gradient(135deg,#ef4444,#b91c1c);border-radius:1rem;padding:1rem 5rem;font-size:1.5rem;font-weight:900;transition:all .3s;animation:dangerPulse 2s infinite;box-shadow:0 0 50px #ef444466}@keyframes dangerPulse{0%{transform:scale(1);box-shadow:0 0 30px #ef44444d}50%{transform:scale(1.05);box-shadow:0 0 70px #ef444480}to{transform:scale(1);box-shadow:0 0 30px #ef44444d}}.error-text{color:#ef4444;letter-spacing:.1em;text-align:center;font-size:1.25rem;font-weight:800}.game-layout{gap:var(--fluid-padding);flex:1;grid-template-columns:340px 1fr 300px;height:100%;min-height:0;display:grid}@media (max-width:1440px){.game-layout{grid-template-columns:300px 1fr 240px;gap:1rem}}@media (max-width:1200px){.game-layout{grid-template-columns:280px 1fr 220px}}.sidebars-row{display:contents}@media (max-width:1024px){.game-layout{grid-template-rows:auto auto;grid-template-columns:1fr;gap:1rem}.canvas-chamber{height:auto;min-height:clamp(400px,60dvh,800px)}.sidebars-row{gap:1rem;height:320px;min-height:0;display:flex}.sidebar-left,.sidebar-right{flex:1;height:100%;min-height:0}}@media (max-width:768px){.game-dashboard{padding:max(.5rem,env(safe-area-inset-top)) max(.5rem,env(safe-area-inset-right)) max(.5rem,env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left));flex-direction:column;gap:.75rem;height:auto;min-height:100dvh;display:flex;overflow-y:auto}.game-header{border-radius:.75rem;grid-template-columns:auto 1fr auto;gap:.5rem;padding:.75rem}.game-layout{flex-direction:column;gap:.75rem;height:auto;display:flex}.canvas-chamber{width:100%;height:auto;min-height:clamp(450px,75dvh,900px);margin:0}.sidebars-row{flex-direction:row;order:2;gap:.75rem;height:auto;min-height:320px;display:flex}.sidebar-left,.sidebar-right{flex:1;min-width:0;height:320px}}@media (max-width:480px){.canvas-chamber{min-height:clamp(400px,65dvh,600px)}.sidebars-row{flex-direction:column;gap:.75rem}.sidebar-left,.sidebar-right{height:auto;min-height:280px;max-height:40dvh}}.show-mobile-tablet{display:none}.hide-mobile-tablet{display:flex}@media (max-width:1024px){.show-mobile-tablet{display:flex}.hide-mobile-tablet{display:none!important}}.mobile-guess-chamber{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border-glass);z-index:50;background:#0f172a66;justify-content:center;align-items:center;width:100%;margin-top:auto;padding:1rem}.mobile-guess-chamber .guess-input-wrapper{gap:1rem;max-width:100%}.mobile-guess-chamber .masked-word-input{border-bottom:2px solid var(--primary);background:#ffffff0d;border-radius:.5rem;max-width:100%;padding:.75rem;font-size:1.5rem}.mobile-guess-chamber .guess-send-btn{width:54px;height:54px}.correct-guess-badge{color:#10b981;letter-spacing:.05em;background:#10b9811a;border:1px solid #10b981;border-radius:2rem;align-items:center;gap:.5rem;padding:.5rem 1.5rem;font-size:.9rem;font-weight:800;animation:successSlide .4s cubic-bezier(.34,1.56,.64,1);display:flex;box-shadow:0 0 20px #10b98133}.correct-guess-badge .check{color:#fff;background:#10b981;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.75rem;display:flex}.correct-guess-badge.mobile{justify-content:center;width:100%;padding:1rem;font-size:1rem}@keyframes successSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 15px #f59e0b4d;color:#fff!important}.btn-warning:hover{background:linear-gradient(135deg,#fbbf24,#f59e0b);box-shadow:0 0 20px #f59e0b80}.pause-overlay{-webkit-backdrop-filter:blur(35px);backdrop-filter:blur(35px);background:#0f172ae6}.pause-icon{margin-bottom:1rem;font-size:5rem;animation:float 3s ease-in-out infinite}.pause-title{letter-spacing:.2em;color:#f59e0b;text-shadow:0 0 30px #f59e0b66;font-size:3rem;font-weight:900}.pause-subtitle{color:var(--text-muted);letter-spacing:.1em;margin-bottom:2rem;font-size:1rem;font-weight:700}.pause-btn-under-canvas,.resume-btn-under-canvas{border-radius:1rem;padding:1rem 3rem;font-size:1.2rem;font-weight:900;transition:all .3s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.lobby-footer-actions{justify-content:center;gap:1.5rem;padding:1.5rem;display:flex}.host-action-footer{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;background:#ffffff0d;border-top:1px solid #ffffff1a;gap:1.5rem;margin-top:auto;padding:1rem}.pause-btn-footer,.quit-btn-footer,.resume-btn-footer,.start-btn-footer{text-transform:uppercase;letter-spacing:.05em;border-radius:.75rem;min-width:180px;padding:.75rem 2rem;font-size:1.1rem;font-weight:800;transition:all .3s cubic-bezier(.4,0,.2,1)}.quit-btn-footer{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 15px #ef44444d}.quit-btn-footer:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #ef444480}@media (max-width:768px){.host-action-footer{background:#0f172af2;flex-direction:column;gap:.75rem;padding:1.5rem}.pause-btn-footer,.quit-btn-footer,.resume-btn-footer,.start-btn-footer{width:100%;min-width:unset;padding:1rem}}.tablet-guess-deck{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);z-index:500;background:#0f172af2;border-top:1px solid #ffffff1a;width:100%;padding:clamp(.5rem,2vw,1.25rem);display:none;position:sticky;bottom:0;left:0;box-shadow:0 -10px 40px #0006}@media (max-width:1024px){.tablet-guess-deck{display:block}}.guess-input-container{justify-content:center;width:100%;max-width:800px;margin:0 auto;display:flex}.input-glow-wrapper{background:#ffffff08;border:1px solid #ffffff1a;border-radius:1.5rem;gap:.5rem;width:100%;min-height:54px;padding:.35rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.input-glow-wrapper:focus-within{border-color:var(--primary);background:#ffffff14;box-shadow:0 0 30px #10b98133}.tablet-input-field{color:#fff;background:0 0;border:none;outline:none;flex:1;padding:.75rem 1rem;font-size:1.1rem;font-weight:600}.input-glow-bar{background:#ffffff08;border:1px solid #ffffff1a;border-radius:1rem;align-items:center;gap:.5rem;padding:.25rem .5rem;transition:all .3s;display:flex}.input-glow-bar:focus-within{border-color:var(--primary-glow);background:#ffffff14;box-shadow:0 0 20px #10b9811a}.header-send-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:.75rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:800;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.header-send-btn:active{filter:brightness(.9);transform:scale(.95)}.tablet-send-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:1rem;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:800;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.tablet-send-btn:active{filter:brightness(.9);transform:scale(.95)}.tablet-send-btn .btn-icon{font-size:1.2rem}@media (max-width:480px){.tablet-send-btn .btn-text{display:none}.tablet-send-btn{aspect-ratio:1;padding:.75rem}}.mobile-word-info{justify-content:center;margin-bottom:.5rem;display:flex}.length-badge{color:#fff;letter-spacing:.1em;background:linear-gradient(135deg,#f59e0b,#ea580c);border-radius:2rem;padding:.25rem .75rem;font-size:.8rem;font-weight:900;animation:badgeIn .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 10px #ea580c4d}@keyframes badgeIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@media (max-width:480px){.game-dashboard{padding:.5rem}.game-header{margin-bottom:.25rem;padding:.75rem}.canvas-chamber{height:45dvh;min-height:300px}.sidebars-row{height:35dvh!important}.host-action-footer{gap:.5rem;padding:1rem}}.orientation-hint{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:9999;text-align:center;color:#fff;background:#0f172af2;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;padding:2rem;display:none;position:fixed;top:0;left:0}.rotate-icon{margin-bottom:1.5rem;font-size:4rem;animation:rotatePhone 2s ease-in-out infinite}.orientation-hint h3{letter-spacing:.05em;color:var(--accent);margin-bottom:.5rem;font-weight:900}.orientation-hint p{color:var(--text-muted);max-width:250px;margin-bottom:2rem;font-size:.9rem}.hint-dismiss-btn{border-radius:2rem;width:100%;max-width:200px;padding:.8rem 2rem;font-size:.9rem;font-weight:800}@keyframes rotatePhone{0%{transform:rotate(0)}25%{transform:rotate(90deg)}75%{transform:rotate(90deg)}to{transform:rotate(0)}}@media (max-width:768px) and (orientation:portrait){.orientation-hint{display:flex}}.compound-dashboard{flex-direction:column;gap:.5rem;height:100dvh;max-height:100dvh;padding:.5rem;display:flex;position:relative;overflow:hidden}.compound-body,.compound-bottom,.compound-main,.lobby-panel{z-index:1;position:relative}.compound-body{flex-direction:column;flex:auto;gap:.5rem;min-height:0;display:flex;overflow:hidden}.compound-round-end-banner{text-align:center;border:2px solid var(--ink);flex:none;margin:0 .5rem;padding:.75rem 1rem}.round-end-title{margin:0 0 .35rem;font-size:.95rem;font-weight:800}.round-end-word{margin:0 0 .65rem;font-size:1.1rem;font-weight:700}.round-end-parts{color:var(--text-muted);font-size:.85rem;font-weight:600;display:block}.compound-stage{flex:auto;width:100%;min-width:0;min-height:0;display:flex;overflow:hidden}.compound-stage .guesser-screen{width:100%}.leaderboard-rail{background:var(--card-white);border:2px solid var(--navy);width:100%;box-shadow:var(--sticker-shadow-sm);border-radius:.75rem;flex:none;align-items:center;gap:.45rem;max-height:3.25rem;padding:.32rem .5rem;display:flex;overflow:hidden}.leaderboard-rail--stacked{flex-direction:column;align-items:stretch;height:100%;padding:.8rem}.leaderboard-rail--stacked .rail-title{justify-content:center;margin-bottom:.6rem;font-size:.95rem}.leaderboard-rail--stacked .rail-list{flex-direction:column;gap:.5rem;overflow:hidden auto}.leaderboard-rail--stacked .rail-row{width:100%}.leaderboard-rail--stacked .rail-name{flex:1;max-width:none}.leaderboard-rail--stacked .rail-score{margin-left:auto}.rail-title{letter-spacing:.02em;text-transform:uppercase;color:var(--navy);flex-shrink:0;align-items:center;gap:.25rem;margin:0;font-family:Fredoka,sans-serif;font-size:.7rem;font-weight:800;line-height:1.1;display:flex}.rail-trophy{font-size:.85rem}.rail-list{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-direction:row;flex:1;gap:.35rem;min-width:0;margin:0;padding:0;list-style:none;overflow:auto hidden}.rail-list,.rail-row{align-items:center;display:flex}.rail-row{border-radius:var(--radius-pill);background:#1e3a5f0d;border:2px solid #0000;flex:none;gap:.3rem;padding:.2rem .45rem}.rail-row.is-me{background:var(--purple-pale);border-color:var(--purple)}.rail-row.rank-1{background:#ffc80038}.rail-row.rank-2{background:#94a3b838}.rail-row.rank-3{background:#b453092e}.rail-rank{background:var(--navy);color:#fff;border-radius:50%;justify-content:center;width:1.15rem;height:1.15rem;font-size:.62rem;font-weight:800}.rail-name,.rail-rank{flex-shrink:0;align-items:center;display:flex}.rail-name{max-width:7.5rem;color:var(--navy);white-space:nowrap;text-overflow:ellipsis;gap:.2rem;font-size:.74rem;font-weight:600;line-height:1.15;overflow:hidden}.rail-tag{flex-shrink:0;font-size:.65rem;line-height:1}.rail-team{letter-spacing:.02em;color:var(--navy);background:#1e3a5f1a;padding:.04rem .3rem;font-weight:700}.rail-team,.rail-you{text-transform:uppercase;border-radius:var(--radius-pill);flex-shrink:0;font-size:.56rem}.rail-you{background:#fff;padding:.04rem .28rem}.rail-score,.rail-you{color:var(--purple);font-weight:800}.rail-score{text-align:right;flex-shrink:0;min-width:1.25rem;font-size:.74rem}.compound-main{flex:auto;min-height:min(58dvh,100dvh - 18rem);display:flex;overflow:hidden}.compound-main.drawer-focus-main{justify-content:center;align-items:stretch;min-height:min(72dvh,100dvh - 7rem)}.drawer-header .header-center{flex:1}.compound-bottom{flex-direction:column;flex-shrink:0;gap:.5rem;display:flex}.guess-bar{padding:.75rem 1rem}.guess-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.hint-mask{letter-spacing:.12em;color:var(--text-muted);font-family:ui-monospace,monospace;font-weight:700}.guess-input{border-radius:var(--radius-pill);border:3px solid var(--ink);background:var(--card-white);min-width:140px;color:var(--ink);box-shadow:var(--sticker-shadow-sm);flex:1;padding:.6rem .85rem;font-family:Fredoka,sans-serif;font-size:1rem;font-weight:600}.guess-btn{flex-shrink:0}.guessed-msg,.reveal-msg{text-align:center;padding:.25rem;font-size:.9rem;font-weight:700}.compound-dock{grid-template-columns:1fr minmax(200px,280px);gap:.5rem;min-height:90px;max-height:12dvh;display:grid;overflow:hidden}.compound-dashboard.is-lobby{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;overflow:hidden auto}.lobby-wait-hint{color:var(--navy);background:#ffcd001f;border-radius:.5rem;max-width:520px;margin:0;padding:.65rem .85rem;font-size:.82rem;line-height:1.45}.lobby-msg{color:var(--navy);margin:0;font-size:.88rem;font-weight:600}.lobby-host-note{color:var(--text-muted);margin-top:.35rem;font-size:.8rem;font-weight:500;display:block}@media (max-width:900px){.compound-dock{grid-template-columns:1fr;max-height:18dvh}}@media (max-width:720px){.compound-dashboard{gap:.4rem;padding:.4rem}.game-header{gap:.35rem;padding:.35rem .5rem}.header-left{display:none}.header-center{flex-wrap:wrap;flex:1;gap:.25rem;min-width:0}.header-right{flex-shrink:0}.status-text{font-size:.78rem}.lobby-panel{grid-template-rows:auto auto;grid-template-columns:1fr;align-content:start;gap:.65rem;overflow:visible}.lobby-main{justify-content:flex-start;gap:.75rem;padding:1rem .85rem}.lobby-title{font-size:1.05rem;line-height:1.25}.lobby-hint{max-width:none;font-size:.84rem}.lobby-msg{font-size:.82rem}.start-btn-hero{box-sizing:border-box;width:100%;max-width:100%;padding:.85rem 1rem;font-size:1rem}.leaderboard-rail{gap:.35rem;max-height:3rem;padding:.25rem .45rem}.rail-title{font-size:.66rem}.rail-trophy{font-size:.8rem}.rail-row{gap:.25rem;padding:.16rem .38rem}.rail-name{max-width:6.5rem;font-size:.7rem}.leaderboard-rail--stacked{height:auto;max-height:none;padding:.75rem}.leaderboard-rail--stacked .rail-title{margin-bottom:.5rem;font-size:.88rem}.leaderboard-rail--stacked .rail-list{max-height:none;overflow:visible}.leaderboard-rail--stacked .rail-row{gap:.45rem;min-height:44px;padding:.55rem .65rem}.leaderboard-rail--stacked .rail-name{white-space:normal;flex-wrap:wrap;flex:1;row-gap:.15rem;min-width:0;max-width:none;font-size:.85rem}.leaderboard-rail--stacked .rail-rank{width:1.5rem;height:1.5rem;font-size:.72rem}.leaderboard-rail--stacked .rail-score{font-size:.9rem}.gameover-panel{padding:.65rem}.gameover-card{padding:1.15rem 1rem}.gameover-event{font-size:1.35rem}.gameover-actions{flex-direction:column}.gameover-actions .btn-ghost,.gameover-actions .btn-primary{text-align:center;width:100%}}@media (max-width:400px){.header-center{flex-direction:column;align-items:flex-start}.lobby-title{font-size:.98rem}}.gameover-panel{z-index:1;flex:auto;justify-content:center;align-items:center;min-height:0;padding:1rem;display:flex;position:relative;overflow:auto}.gameover-card{background:var(--card-white);border:3px solid var(--navy);width:100%;max-width:460px;box-shadow:6px 6px 0 var(--navy);text-align:center;border-radius:1.25rem;padding:1.5rem 1.25rem}.gameover-kicker{letter-spacing:.05em;text-transform:uppercase;color:var(--purple);margin:0 0 .25rem;font-size:.8rem;font-weight:800}.gameover-event{color:var(--navy);margin:0 0 .15rem;font-family:Fredoka,sans-serif;font-size:1.6rem;font-weight:800}.gameover-sub{text-transform:uppercase;letter-spacing:.06em;color:var(--navy);opacity:.7;margin:0 0 1rem;font-size:.85rem;font-weight:700}.final-list{text-align:left;flex-direction:column;gap:.5rem;margin:0 0 1.25rem;padding:0;list-style:none;display:flex}.final-row{background:#1e3a5f0d;border:2px solid #0000;border-radius:.75rem;align-items:center;gap:.6rem;padding:.55rem .7rem;display:flex}.final-row.is-me{background:var(--purple-pale);border-color:var(--purple)}.final-row.rank-1{background:#ffc80038}.final-row.rank-2{background:#94a3b838}.final-row.rank-3{background:#b453092e}.final-rank{background:var(--navy);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;width:1.6rem;height:1.6rem;font-size:.8rem;font-weight:800}.final-name,.final-rank{align-items:center;display:flex}.final-name{min-width:0;color:var(--navy);flex:1;gap:.3rem;font-weight:700}.final-score{color:var(--navy);flex-shrink:0;font-family:Fredoka,sans-serif;font-size:1.1rem;font-weight:800}.final-score small{opacity:.7;margin-left:.15rem;font-size:.6rem;font-weight:700}.gameover-actions{justify-content:center;gap:.6rem;display:flex}.btn-ghost{border:3px solid var(--navy);background:var(--card-white);color:var(--navy);cursor:pointer;box-shadow:3px 3px 0 var(--navy);border-radius:.65rem;padding:.7rem 1.4rem;font-family:Fredoka,sans-serif;font-weight:700}.btn-ghost:hover{transform:translate(-1px,-1px)}.dual-dashboard{flex-direction:column;gap:.5rem;height:100dvh;max-height:100dvh;padding:.5rem;display:flex;position:relative;overflow:hidden}.game-header{flex-shrink:0;justify-content:space-between;align-items:center;min-height:0;padding:.5rem 1rem;display:flex}.header-center,.header-left,.header-right{align-items:center;gap:.75rem;display:flex}.game-header{z-index:2;color:var(--navy);position:relative}.dual-bottom-dock,.dual-main,.lobby-panel{z-index:1;position:relative}.status-text{color:var(--ink);font-size:.9rem;font-weight:700}.combo-indicator{color:#fff;background:linear-gradient(135deg,#f59e0b,#ef4444);border-radius:1rem;padding:.25rem .75rem;font-size:.75rem;font-weight:800}.lobby-panel{gap:var(--fluid-padding);flex:1;grid-template-columns:1fr minmax(220px,280px);min-height:0;display:grid;overflow:hidden}.lobby-main{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:0;padding:1.5rem;display:flex}.lobby-title{font-size:1.25rem;font-weight:800}.lobby-hint{color:var(--text-muted);max-width:520px;font-size:.9rem;line-height:1.5}.room-code{color:var(--accent);letter-spacing:.12em}.canvas-preview-row{grid-template-columns:1fr 1fr;gap:1rem;width:100%;max-width:640px;display:grid}.canvas-preview{aspect-ratio:800/550;border:2px dashed var(--border-glass);background:#ffffff14;border-radius:.75rem;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;max-height:28vh;display:flex}.preview-label{font-size:.85rem;font-weight:800}.preview-sub{color:var(--text-muted);font-size:.7rem}.lobby-players{flex-direction:column;min-height:0;display:flex;overflow:hidden}.lobby-msg{color:var(--text-muted);font-size:.95rem}@media (max-width:768px){.lobby-panel{grid-template-columns:1fr;overflow-y:auto}.canvas-preview-row{max-width:100%}}.start-btn-hero{cursor:pointer;min-width:220px;padding:1rem 2.5rem;font-size:1.1rem;font-weight:800}.start-btn-hero:disabled{opacity:.5;cursor:not-allowed}.dual-main{flex:auto;min-height:min(72dvh,100dvh - 11rem);display:flex;overflow:hidden}.dual-main.drawer-focus-main{justify-content:center;min-height:min(72dvh,100dvh - 7rem)}.drawer-header{box-shadow:none;background:0 0;border:none;padding:.25rem .5rem}.dual-bottom-dock{flex-shrink:0;grid-template-columns:1fr minmax(200px,280px);gap:.5rem;min-height:100px;max-height:14dvh;display:grid;overflow:hidden}.dock-chat,.dock-players{flex-direction:column;min-height:0;display:flex;overflow:hidden}.dock-chat .chat-container,.dock-chat .chat-wrapper,.dock-players .player-list-container{flex:1;min-height:0;max-height:100%}@media (max-width:900px){.dual-main{min-height:min(58dvh,100dvh - 14rem)}.dual-bottom-dock{grid-template-columns:1fr;max-height:22dvh}}.host-action-footer{pointer-events:auto;z-index:100;flex-shrink:0;justify-content:center;gap:.75rem;padding:.5rem 0;display:flex;position:relative}.room-pill .label{color:var(--text-muted);margin-right:.35rem;font-size:.65rem}.room-pill .value{font-weight:800}.loading-container{flex-direction:column;align-items:center;gap:.75rem;width:100%;max-width:300px;display:flex}.loading-bar{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:3px;width:100%;height:6px;position:relative;overflow:hidden}.loading-fill{background:linear-gradient(90deg,#4f46e5,#06b6d4);height:100%;transition:width .3s ease-out;box-shadow:0 0 10px #4f46e580}.loading-fill.indeterminate{width:40%;animation:indeterminate-flow 1.5s ease-in-out infinite;position:absolute}@keyframes indeterminate-flow{0%{left:-40%}to{left:100%}}.loading-label{color:#ffffff80;letter-spacing:.2em;text-transform:uppercase;font-size:.65rem;font-weight:800}.lobby-container{justify-content:center;align-items:center;min-height:90vh;display:flex}.lobby-card{text-align:center;width:100%;max-width:480px;padding:3rem}.title{background:linear-gradient(135deg,#fff,var(--text-muted));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:2.5rem}.subtitle{color:var(--text-muted);margin-bottom:2rem}.form-group label{opacity:.8;margin-bottom:.5rem;font-size:.875rem}.w-full{width:100%}.mt-4{margin-top:1rem}.player-list-container{background:#0f172a66;flex-direction:column;height:100%;max-height:100%;display:flex;position:relative;overflow:hidden}.list-header{border-bottom:1px solid var(--border-glass);background:#0f172a33;flex-direction:column;gap:.75rem;padding:1rem 1.25rem;display:flex}.header-main{justify-content:space-between;align-items:center;display:flex}.header-text{letter-spacing:.1em;color:var(--text-muted);font-size:.75rem;font-weight:800}.player-count{color:var(--accent);background:#ffcd001a;border-radius:1rem;padding:.2rem .6rem;font-size:.7rem;font-weight:600}.search-box{position:relative}.search-input{border:1px solid var(--border-glass);color:#fff;background:#ffffff0d;border-radius:.5rem;outline:none;width:100%;padding:.4rem .75rem;font-size:.8rem;transition:all .2s}.search-input:focus{border-color:var(--primary);background:#ffffff1a}.list-content{flex-direction:column;flex:1;gap:.5rem;padding:.75rem;display:flex;overflow-y:auto}.player-card{background:#ffffff08;border:1px solid #0000;border-radius:.75rem;align-items:center;padding:.6rem .8rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.player-card.is-drawer{border-color:var(--accent);z-index:10;background:linear-gradient(135deg,#ffcd0026,#ffcd000d);transform:scale(1.02);box-shadow:0 4px 15px #ffcd001a}.player-card.is-top-3{background:#ffffff0f}.player-card.rank-1{border-left:3px solid gold}.player-card.rank-2{border-left:3px solid silver}.player-card.rank-3{border-left:3px solid #cd7f32}.player-avatar{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;margin-right:.75rem;font-size:1rem;font-weight:800;display:flex;position:relative;box-shadow:0 2px 6px #0003}.rank-badge{background:var(--accent);color:#000;border:1px solid #0003;width:14px;height:14px;font-size:.6rem;font-weight:900;position:absolute;top:-4px;right:-4px}.player-card.is-drawer .player-avatar{background:var(--accent);color:#000;box-shadow:0 0 10px #ffcd0066}.player-info{flex-direction:column;min-width:0;display:flex}.name-row{align-items:center;gap:.5rem;display:flex}.player-name{white-space:normal;word-break:break-word;font-size:.85rem;line-height:1.2}.drawing-tag,.guessed-tag{letter-spacing:.05em;border-radius:4px;padding:.1rem .4rem;font-size:.6rem;font-weight:800}.drawing-tag{color:var(--accent);background:#ffcd001a}.guessed-tag{color:#10b981;background:#10b9811a;font-weight:900}.streak-pill{color:#f87171;background:#f871711a;border-radius:2rem;padding:.1rem .5rem;font-size:.65rem;font-weight:800;animation:pulse 2s infinite}.player-card.has-guessed{background:#10b9810d;border-color:#10b98133}.round-delta{color:#10b981;font-size:.65rem;font-weight:700}.host-tag{color:#6366f1;background:#6366f126}.host-tag,.team-tag{text-transform:uppercase;letter-spacing:.05em;border-radius:1rem;padding:.1rem .4rem;font-size:.55rem;font-weight:800}.team-tag{color:var(--accent);background:#ffcd001f}.points-badge{background:#ffcd001f;border:1px solid #ffcd0059;border-radius:.6rem;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;min-width:46px;margin-left:.5rem;padding:.25rem .5rem;line-height:1;display:flex}.points-value{color:var(--accent);font-size:1rem;font-weight:900}.points-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-top:.1rem;font-size:.55rem;font-weight:700}.player-card.rank-1 .points-value{color:gold}.player-card.rank-1 .points-badge{background:#ffd70029;border-color:#ffd70073}.drawer-badge-pulse{background:var(--accent);width:24px;height:24px;box-shadow:0 0 10px var(--accent);border-radius:50%;justify-content:center;align-items:center;animation:pulse-glow 2s infinite;display:flex}.pencil-icon{font-size:.8rem}.empty-search{padding:2rem;font-size:.8rem;font-style:italic}.empty-search,.list-limit-hint{text-align:center;color:var(--text-muted)}.list-limit-hint{letter-spacing:.05em;background:#ffffff05;border-radius:.5rem;margin-top:.5rem;padding:.5rem;font-size:.65rem;font-weight:600}@keyframes pulse-glow{0%{box-shadow:0 0 5px var(--accent);transform:scale(1)}50%{box-shadow:0 0 15px var(--accent);transform:scale(1.1)}to{box-shadow:0 0 5px var(--accent);transform:scale(1)}}.custom-scrollbar::-webkit-scrollbar{width:4px}.custom-scrollbar::-webkit-scrollbar-track{background:0 0}.custom-scrollbar::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}.custom-scrollbar:hover::-webkit-scrollbar-thumb{background:#fff3}@media (max-width:1024px){.player-card{padding:.5rem .6rem}.player-avatar{width:32px;height:32px;font-size:.9rem}}@media (max-width:768px){.list-header{padding:.75rem}.player-card{border-radius:.5rem;padding:.4rem .5rem}.player-avatar{width:28px;height:28px;margin-right:.5rem}.player-avatar,.player-name{font-size:.8rem}.player-score{font-size:.65rem}.drawing-tag{display:none}.drawer-badge-pulse{width:20px;height:20px}}.scoreboard-container{background:#0f172a66;flex-direction:column;gap:1.5rem;padding:1.5rem;display:flex}.scoreboard-header{justify-content:space-between;align-items:center;display:flex}.title{letter-spacing:.2em;color:var(--text-muted);font-size:.875rem;font-weight:800}.trophy-icon{filter:drop-shadow(0 0 10px #eab30880);font-size:1.5rem}.leaderboard-list{flex-direction:column;gap:.75rem;display:flex}.leaderboard-item{border:1px solid var(--border-glass);background:#ffffff08;border-radius:1rem;align-items:center;padding:.75rem 1rem;transition:transform .2s;display:flex}.leaderboard-item:hover{background:#ffffff0f;transform:translate(5px)}.rank-badge{width:24px;height:24px;color:var(--text-muted);background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;margin-right:1rem;font-size:.75rem;font-weight:800;display:flex}.top-three{background:#ffffff0d;border-color:#ffffff1a}.rank-1{color:#000;background:#eab308;box-shadow:0 0 15px #eab30866}.rank-2{color:#000;background:#94a3b8}.rank-3{color:#fff;background:#b45309}.player-info{flex:1}.player-name{color:var(--text-main);font-size:.95rem;font-weight:600}.score-pill{background:var(--primary-glow);color:var(--primary);border:1px solid var(--primary);border-radius:2rem;padding:.25rem .75rem;font-size:.8rem;font-weight:800}.top-three .score-pill{color:#fff;background:#ffffff1a;border-color:#fff3}.sketch-title{text-transform:uppercase;color:#fff;text-align:center;filter:drop-shadow(4px 4px 0 var(--ink)) drop-shadow(-1px -1px 0 var(--ink));font-family:Bungee,Fredoka,sans-serif;line-height:.95}.sketch-title.stacked{flex-direction:column;align-items:center;gap:.05em;display:flex}.sketch-title.hero .line{letter-spacing:.02em;font-size:clamp(2.5rem,12vw,4.5rem)}.sketch-title.compact .line,.sketch-title.compact.inline{letter-spacing:.04em;font-size:clamp(.85rem,2.5vw,1.2rem)}.sketch-title.medium .line{font-size:clamp(2rem,7vw,3.4rem)}.line{-webkit-text-stroke:2px var(--ink);paint-order:stroke fill;display:block}.theme-doodles{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.doodle{color:var(--doodle-blue);opacity:.55;position:absolute}.doodle-fruit{width:clamp(100px,18vw,160px);top:4%;left:50%;transform:translate(-50%)}.doodle-toast{width:clamp(90px,16vw,140px);bottom:12%;left:6%}.doodle-book{width:clamp(80px,14vw,120px);bottom:14%;right:8%}.timer-container{background:var(--card-white);border:3px solid var(--ink);min-width:140px;box-shadow:var(--sticker-shadow-sm);align-items:center;gap:1rem;padding:.5rem 1rem;transition:all .3s;display:flex}.timer-icon{filter:drop-shadow(0 0 8px #fff3);font-size:1.5rem}.timer-content{flex-direction:column;flex:1;gap:.5rem;display:flex}.timer-text{flex-wrap:wrap;align-items:baseline;gap:.25rem .4rem;display:flex}.round-label{letter-spacing:.04em;text-transform:uppercase;width:100%;color:var(--text-muted);font-size:.65rem;font-weight:800}.seconds{font-variant-numeric:tabular-nums;color:var(--text-main);font-size:1.75rem;font-weight:800}.label{color:var(--text-muted);font-size:.7rem;font-weight:700}.progress-bar-bg{background:#ffffff0d;border-radius:3px;width:100%;height:6px;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:3px;height:100%;transition:width 1s linear}.warning .seconds{color:#fbbf24}.warning .progress-bar-fill{background:#fbbf24}.critical{background:#ef44441a;border-color:#ef444480;animation:shake .5s infinite}.critical .seconds{color:#ef4444}.critical .progress-bar-fill{background:#ef4444}.rotate-countdown{background:#6366f11f;border-color:#6366f1;animation:pulse-countdown .8s ease-in-out infinite}.rotate-countdown .seconds{color:#6366f1;font-size:2.25rem}.rotate-countdown .progress-bar-fill{background:linear-gradient(90deg,#6366f1,#22d3ee)}@keyframes pulse-countdown{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes shake{0%{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}to{transform:translate(0)}}@media (max-width:768px){.timer-container{border-radius:.75rem;gap:.6rem;min-width:0;padding:.4rem .8rem}.timer-icon{font-size:1rem}.seconds{font-size:1.25rem}.progress-bar-bg{height:4px}.timer-content{gap:.25rem}}.page-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.page-sub{max-width:460px}.toolbar{gap:.75rem;margin-bottom:1.1rem;display:flex}.head-create{flex-shrink:0}.btn-primary .plus{margin-right:.15rem;font-weight:900}.events-table{border-collapse:collapse;width:100%;font-size:.9rem}.events-table td,.events-table th{text-align:left;vertical-align:middle;padding:.8rem .95rem}.events-table tbody tr:last-child td{border-bottom:none}.cell-name{font-weight:700}.cell-id{color:var(--text-muted);font-family:Courier New,monospace;font-size:.84rem}.cell-status{flex-wrap:wrap;gap:.35rem;display:flex}.pill .dot{opacity:.8;background:currentColor;border-radius:50%;width:6px;height:6px}.cell-actions{flex-wrap:wrap;gap:.6rem;display:flex}.link-action{padding:.34rem .75rem;font-size:.8rem}@media (max-width:900px){.cell-status .pill{padding:.22rem .4rem;font-size:.62rem}.cell-actions .link-action{min-height:40px;padding:.4rem .65rem}}.empty-cell{text-align:center;color:var(--text-muted);padding:2rem}.pager{justify-content:space-between;align-items:center;gap:.75rem;margin-top:1.1rem;display:flex}.pager-info{color:var(--text-muted);font-size:.82rem}.pager-btns{gap:.5rem;display:flex}@media (max-width:720px){.page-head{flex-direction:column;align-items:stretch;margin-bottom:1rem}.page-sub{max-width:none}.head-create{text-align:center;width:100%}.pager{flex-direction:column;align-items:stretch}.pager-btns .btn-ghost{flex:1}.modal-actions{flex-direction:column-reverse}.modal-actions .btn-ghost,.modal-actions .btn-primary{text-align:center;width:100%}}.modal-card{max-width:420px;padding:1.6rem;animation:pop .14s ease-out}@keyframes pop{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-label{margin-bottom:.35rem;font-size:.78rem;font-weight:700;display:block}.modal-input{box-sizing:border-box;width:100%;padding:.65rem .8rem;font-size:.92rem}.modal-actions{justify-content:flex-end;gap:.6rem;margin-top:1.25rem;display:flex}.admin-main{max-width:960px}.event-head{flex-wrap:wrap;gap:1rem}.page-sub{margin:0;font-size:.9rem}.head-actions,.status-strip{flex-wrap:wrap;gap:.6rem;display:flex}.status-strip{margin:1.1rem 0}.grid{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}@media (max-width:760px){.grid{grid-template-columns:1fr}}.card-sub{margin:0 0 .9rem;font-size:.82rem}.card-head-row{justify-content:space-between;align-items:center;margin-bottom:.6rem;display:flex}.field-input{box-sizing:border-box;width:100%;padding:.55rem .7rem;font-size:.9rem}.settings-row{align-items:center;gap:.7rem;margin-top:.9rem;display:flex}.settings-msg{color:#15803d;font-size:.82rem;font-weight:600}.team-form{flex-direction:column;gap:.5rem;display:flex}.code-in{text-transform:uppercase;letter-spacing:.1em}.team-row--clickable{cursor:pointer}.team-row--clickable:hover{background:#1e3a5f0f;border-radius:.5rem}.t-name{flex:1;font-weight:700}.t-members{color:var(--text-muted);font-size:.72rem}.lb-row--clickable{cursor:pointer}.lb-row--clickable:hover{background:#1e3a5f0d}.stored-badge{color:#15803d}.finished-badge,.stored-badge{margin-left:.35rem;font-size:.72rem;font-weight:700}.finished-badge{color:#1d4ed8}.btn-danger.sm,.btn-ghost.sm{padding:.35rem .7rem;font-size:.8rem}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.lb-table{border-collapse:collapse;width:100%;font-size:.9rem}.lb-table td,.lb-table th{text-align:left;padding:.5rem .6rem}.lb-table th{text-transform:uppercase;font-size:.7rem}.lb-name{font-weight:700}.muted{color:var(--text-muted);font-size:.85rem}.center{text-align:center}.modal-overlay{z-index:60;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-card{width:100%;max-width:460px;padding:1.25rem}.tm-head{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.8rem;display:flex}.modal-x{cursor:pointer;color:var(--text-muted);background:0 0;border:none;font-size:1.1rem}.tm-actions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.dot{border-radius:50%;width:9px;height:9px;display:inline-block}.dot.on{background:#22c55e}.dot.off{background:#cbd5e1}.qr-modal-card{text-align:center;max-width:320px}.qr-wrap{justify-content:center;padding:1rem 0 .5rem;display:flex}.qr-link-text{word-break:break-all;color:var(--text-muted);margin:.4rem 0 0;font-family:Courier New,Consolas,monospace;font-size:.78rem}.auth-label{margin-bottom:.4rem;display:block}.auth-input{letter-spacing:.08em;font-size:.95rem}.auth-error{margin:.6rem 0 0}.auth-btn:disabled{opacity:.6;cursor:not-allowed}.home-screen{background:var(--sky-blue);justify-content:center;min-height:100dvh;overflow:auto}.home-content,.home-screen{align-items:center;display:flex;position:relative}.home-content{z-index:1;flex-direction:column;gap:1.4rem;width:100%;max-width:460px;padding:2rem 1.5rem 3rem}.home-logo{object-fit:contain;width:clamp(90px,28vw,130px);height:auto;display:block}.system-head{text-align:center}.system-title{color:var(--navy);margin:0 0 .4rem;font-family:Fredoka,sans-serif;font-size:1.6rem;font-weight:700}.system-sub{color:var(--navy);opacity:.75;margin:0;font-size:.85rem;line-height:1.4}.tabs{gap:.5rem;width:100%;display:flex}.tab{border:3px solid var(--navy);background:var(--card-white);color:var(--navy);cursor:pointer;box-shadow:2px 2px 0 var(--navy);border-radius:.65rem;flex:1;padding:.6rem;font-family:Fredoka,sans-serif;font-weight:600}.tab.active{background:var(--navy);color:#fff}.panel{background:var(--card-white);border:3px solid var(--navy);width:100%;box-shadow:5px 5px 0 var(--navy);border-radius:1rem;padding:1.25rem}.form-group{text-align:left;margin-bottom:1rem}.form-group label{color:var(--navy);margin-bottom:.35rem;font-size:.8rem;font-weight:600;display:block}.opt{opacity:.6;font-weight:400}.input-field{border-color:var(--navy);width:100%}.code-input{text-transform:uppercase;letter-spacing:.1em;text-align:center}.btn-navy{border:3px solid var(--navy);background:var(--card-white);width:100%;color:var(--navy);cursor:pointer;box-shadow:3px 3px 0 var(--navy);border-radius:.65rem;padding:.75rem 1rem;font-family:Fredoka,sans-serif;font-size:1rem;font-weight:700;transition:transform .12s}.btn-navy-filled{background:var(--navy);color:#fff}.btn-navy:hover:not(:disabled){box-shadow:4px 4px 0 var(--navy);transform:translate(-1px,-1px)}.btn-navy:disabled{opacity:.5;cursor:not-allowed}.err{color:#c0392b;text-align:left;margin:0 0 .7rem;font-size:.82rem;font-weight:600}.hint{color:var(--navy);opacity:.7;text-align:center;margin:.8rem 0 0;font-size:.78rem}.event-head{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:1rem;display:flex}.event-name{color:var(--navy);margin:0 0 .35rem;font-family:Fredoka,sans-serif;font-size:1.1rem;font-weight:700}.event-meta{flex-wrap:wrap;gap:.35rem;margin:0;display:flex}.chip{letter-spacing:.05em;background:var(--navy);color:#fff;border-radius:999px;padding:.2rem .5rem;font-size:.7rem;font-weight:700}.chip.ghost{border:2px solid var(--navy)}.chip.ghost,.link-btn{color:var(--navy);background:0 0}.link-btn{cursor:pointer;border:none;padding:0;font-size:.8rem;font-weight:700;text-decoration:underline}.add-team-row{gap:.5rem;margin-bottom:.8rem;display:flex}.add-team-row .input-field{flex:1}.add-team-row .btn-navy{white-space:nowrap;width:auto;padding:.6rem .9rem}.team-list{flex-direction:column;margin:0 0 .8rem;padding:0;list-style:none}.team-list,.team-row{gap:.5rem;display:flex}.team-row{border:2px solid var(--navy);background:#fff;border-radius:.6rem;justify-content:space-between;align-items:center;padding:.5rem .65rem}.team-info{align-items:center;gap:.4rem;min-width:0;display:flex}.team-name{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.tag{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:.12rem .4rem;font-size:.62rem;font-weight:700}.tag.host{color:var(--navy);background:#ffd23f}.tag.on{color:#fff;background:#2ecc71}.tag.off{color:#555;background:#e6e6e6}.code-pill{letter-spacing:.04em;color:var(--navy);background:var(--sky-blue);border:2px solid var(--navy);cursor:pointer;white-space:nowrap;border-radius:.5rem;padding:.35rem .55rem;font-family:Courier New,monospace;font-size:.82rem;font-weight:700}.code-pill:hover{background:#fff}.admin-actions{justify-content:space-between;align-items:center;gap:.6rem;margin-top:.4rem;display:flex}.admin-actions .btn-navy{flex:1;width:auto}@media (max-width:480px){.home-content{gap:1.2rem;padding-top:2.5rem}.system-title{font-size:1.35rem}}.table-scroll{overflow-x:auto}.sb-table{min-width:720px}.board-empty-note{margin:0;font-size:.88rem;line-height:1.45}.admin-shell,.board-shell{--admin-bg:var(--sky-blue);--admin-surface:var(--card-white);--admin-ink:var(--navy);--admin-muted:var(--text-muted);--admin-doodle:var(--doodle-blue);--admin-shadow:var(--sticker-shadow-sm);--admin-shadow-lg:6px 6px 0 var(--navy);-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;background:var(--admin-bg);min-height:100dvh;color:var(--admin-ink);font-family:Fredoka,sans-serif;position:fixed;inset:0;overflow:hidden auto}.admin-shell .admin-top{background:var(--admin-ink);color:#fff;z-index:20;justify-content:space-between;padding:.75rem 1.5rem;position:sticky;top:0;box-shadow:0 4px #0a0a0a1f}.admin-shell .admin-top,.admin-shell .brand{align-items:center;display:flex}.admin-shell .brand-logo{object-fit:contain;width:auto;height:38px;display:block}.admin-shell .top-nav{align-items:center;gap:1rem;display:flex}.admin-shell .nav-link{color:#ffffffbf;font-size:.88rem;font-weight:600}.admin-shell .nav-link.active{color:#fff}.admin-shell .link-btn,.admin-shell .logout-btn{background:var(--admin-surface);border:2px solid var(--admin-ink);color:var(--admin-ink);cursor:pointer;box-shadow:2px 2px 0 var(--admin-ink);border-radius:.55rem;padding:.4rem .85rem;font-size:.82rem;font-weight:700;transition:transform .1s}.admin-shell .link-btn:hover,.admin-shell .logout-btn:hover{box-shadow:3px 3px 0 var(--admin-ink);transform:translate(-1px,-1px)}.admin-shell .admin-main{max-width:980px;margin:0 auto;padding:1.75rem 1.5rem 3rem}.admin-shell .page-title{color:var(--admin-ink);margin:0 0 .3rem;font-family:Fredoka,sans-serif;font-size:1.75rem;font-weight:800}.admin-shell .card-sub,.admin-shell .page-sub{color:var(--admin-muted);font-size:.9rem;line-height:1.45}.admin-shell .auth-card,.admin-shell .card,.admin-shell .modal-card,.admin-shell .table-wrap{background:var(--admin-surface);border:3px solid var(--admin-ink);border-radius:var(--radius-card);box-shadow:var(--admin-shadow-lg)}.admin-shell .card{padding:1.25rem}.admin-shell .table-wrap{padding:0;overflow:hidden}@media (max-width:900px){.admin-shell .table-wrap:not(.table-wrap--cards){-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-shell .table-wrap:not(.table-wrap--cards) .events-table{min-width:640px}}.admin-shell .card-title{color:var(--admin-ink);margin:0 0 .25rem;font-family:Fredoka,sans-serif;font-size:1.15rem;font-weight:800}.admin-shell .btn-primary{border:3px solid var(--admin-ink);background:var(--admin-ink);color:#fff;cursor:pointer;white-space:nowrap;box-shadow:var(--admin-shadow);border-radius:.65rem;padding:.7rem 1.1rem;font-family:Fredoka,sans-serif;font-weight:700;transition:transform .1s}.admin-shell .btn-primary:hover:not(:disabled){box-shadow:4px 4px 0 var(--admin-ink);transform:translate(-1px,-1px)}.admin-shell .btn-primary:disabled{opacity:.55;cursor:not-allowed}.admin-shell .btn-ghost,.admin-shell .crumb-link,.admin-shell .link-action{border:2px solid var(--admin-ink);background:var(--admin-surface);color:var(--admin-ink);cursor:pointer;box-shadow:2px 2px 0 var(--admin-ink);border-radius:.6rem;padding:.5rem .95rem;font-family:Fredoka,sans-serif;font-weight:700;transition:transform .1s,background .12s}.admin-shell .btn-ghost:hover:not(:disabled),.admin-shell .crumb-link:hover,.admin-shell .link-action:hover{box-shadow:3px 3px 0 var(--admin-ink);background:var(--admin-bg);transform:translate(-1px,-1px)}.admin-shell .btn-ghost:disabled{opacity:.45;cursor:not-allowed}.admin-shell .link-action.danger{color:#b91c1c;border-color:#b91c1c}.admin-shell .link-action.danger:hover{color:#b91c1c;background:#fef2f2}.admin-shell .btn-danger{color:#fff;cursor:pointer;background:#b91c1c;border:3px solid #b91c1c;border-radius:.6rem;padding:.55rem .95rem;font-family:Fredoka,sans-serif;font-weight:700;box-shadow:2px 2px #7f1d1d}.admin-shell .btn-danger:hover{transform:translate(-1px,-1px);box-shadow:3px 3px #7f1d1d}.admin-shell .crumb-link:before{content:"‹";font-size:1rem;line-height:1}.admin-shell .crumb{color:var(--admin-muted);margin:0 0 .75rem;font-size:.85rem}.admin-shell .team-row{border:2px solid var(--admin-ink);background:var(--admin-bg);border-radius:.55rem;align-items:center;gap:.5rem;padding:.45rem .6rem;display:flex}.admin-shell .lb-table th{background:var(--admin-bg);color:var(--admin-ink);border-bottom:2px solid var(--admin-ink)}.admin-shell .field-label{color:var(--admin-ink);margin:.6rem 0 .3rem;font-size:.76rem;font-weight:700;display:block}.admin-shell .field-input,.admin-shell .modal-input,.admin-shell .search-input{border:2px solid var(--admin-ink);background:var(--admin-surface);border-radius:.6rem;outline:none}.admin-shell .field-input:focus,.admin-shell .modal-input:focus,.admin-shell .search-input:focus{box-shadow:0 0 0 3px #aee4ffcc}.admin-shell .search-wrap{flex:1;position:relative}.admin-shell .search-icon{color:var(--admin-muted);pointer-events:none;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.admin-shell .search-input{box-sizing:border-box;width:100%;padding:.7rem .9rem .7rem 2.3rem;font-size:.92rem}.admin-shell .pill,.admin-shell .stat{border-radius:var(--radius-pill);border:2px solid var(--admin-ink);font-weight:700}.admin-shell .pill{align-items:center;gap:.28rem;padding:.18rem .5rem;font-size:.66rem;display:inline-flex}.admin-shell .pill.live{color:#14532d;background:#bbf7d0}.admin-shell .pill.lobby{color:#92400e;background:#fde68a}.admin-shell .pill.done{color:#475569;background:#e2e8f0;border-color:#94a3b8}.admin-shell .stat{padding:.45rem .85rem;font-size:.82rem}.admin-shell .stat.live{color:#14532d;background:#bbf7d0}.admin-shell .stat.lobby{color:#92400e;background:#fde68a}.admin-shell .stat.done{color:#475569;background:#f1f5f9;border-color:#94a3b8}.admin-shell .events-table th{background:var(--admin-bg);color:var(--admin-ink);border-bottom:2px solid var(--admin-ink);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}.admin-shell .events-table td{border-bottom:1px solid #1e3a5f1a}.admin-shell .events-table tbody tr:hover{background:#aee4ff59}.admin-shell .code-pill{letter-spacing:.14em;text-transform:uppercase;border:3px solid var(--admin-ink);color:var(--admin-ink);cursor:pointer;min-width:8.5rem;box-shadow:3px 3px 0 var(--admin-ink);background:#fff;border-radius:.55rem;flex-shrink:0;align-items:center;gap:.55rem;padding:.5rem .7rem;font-family:Courier New,Consolas,monospace;font-size:1.05rem;font-weight:800;transition:transform .1s,box-shadow .1s,background .12s;display:inline-flex}.admin-shell .code-pill:hover{box-shadow:4px 4px 0 var(--admin-ink);background:var(--admin-bg);transform:translate(-1px,-1px)}.admin-shell .code-pill:focus-visible{outline-offset:2px;outline:3px solid #aee4ffe6}.admin-shell .code-pill.is-copied{background:#bbf7d0;border-color:#15803d;box-shadow:3px 3px #15803d}.admin-shell .code-pill-code{text-align:center;flex:1}.admin-shell .code-pill-action{letter-spacing:.04em;text-transform:uppercase;background:var(--admin-bg);border:2px solid var(--admin-ink);white-space:nowrap;border-radius:.35rem;padding:.2rem .45rem;font-family:Fredoka,sans-serif;font-size:.68rem;font-weight:700}.admin-shell .code-pill.is-copied .code-pill-action{color:#15803d;background:#fff;border-color:#15803d}.admin-shell .code-pill.sm{letter-spacing:.12em;min-width:7.5rem;padding:.45rem .65rem;font-size:.95rem}.admin-shell .qr-pill{letter-spacing:.04em;text-transform:uppercase;border:3px solid var(--admin-ink);color:var(--admin-ink);cursor:pointer;box-shadow:3px 3px 0 var(--admin-ink);background:#fff;border-radius:.55rem;flex-shrink:0;justify-content:center;align-items:center;padding:.5rem .6rem;font-family:Fredoka,sans-serif;font-size:.7rem;font-weight:700;transition:transform .1s,box-shadow .1s,background .12s;display:inline-flex}.admin-shell .qr-pill:hover{box-shadow:4px 4px 0 var(--admin-ink);background:var(--admin-bg);transform:translate(-1px,-1px)}.admin-shell .modal-overlay{background:#1e3a5f8c}.admin-shell .modal-title{color:var(--admin-ink);margin:0 0 .25rem;font-family:Fredoka,sans-serif;font-size:1.35rem;font-weight:800}.admin-shell .modal-desc{color:var(--admin-muted);margin:0 0 1.1rem;font-size:.88rem;line-height:1.45}.admin-shell .row-error{color:#b91c1c;font-weight:700}.admin-auth{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;background:var(--sky-blue);justify-content:center;align-items:center;min-height:100dvh;padding:1.5rem;display:flex;position:fixed;inset:0;overflow:hidden auto}.admin-auth .auth-card{background:var(--card-white);border:3px solid var(--navy);border-radius:var(--radius-card);width:100%;max-width:400px;box-shadow:6px 6px 0 var(--navy);padding:1.75rem}.admin-auth .auth-title{color:var(--navy);margin:0 0 .25rem;font-family:Fredoka,sans-serif;font-size:1.8rem;font-weight:800}.admin-auth .auth-desc{color:var(--text-muted);margin:0 0 1.25rem;font-size:.9rem}.admin-auth .auth-label{color:var(--navy);font-size:.8rem;font-weight:700}.admin-auth .auth-input{box-sizing:border-box;border:2px solid var(--navy);border-radius:.6rem;outline:none;width:100%;padding:.7rem .85rem}.admin-auth .auth-btn{border:3px solid var(--navy);background:var(--navy);color:#fff;cursor:pointer;width:100%;box-shadow:3px 3px 0 var(--navy);border-radius:.65rem;margin-top:1.25rem;padding:.8rem;font-family:Fredoka,sans-serif;font-weight:700}.admin-auth .auth-btn:hover:not(:disabled){box-shadow:4px 4px 0 var(--navy);transform:translate(-1px,-1px)}.admin-auth .auth-logo{object-fit:contain;border-radius:.65rem;width:min(100%,280px);height:auto;margin:0 auto 1rem;display:block}.admin-auth .auth-hint{color:var(--text-muted);text-align:center;margin:1rem 0 0;font-size:.78rem;line-height:1.45}.admin-auth .auth-hint code{color:var(--navy);font-family:Courier New,Consolas,monospace;font-size:.72rem;font-weight:700}.admin-shell .crumb-link{align-items:center;gap:.3rem;padding:.3rem .7rem;font-size:.82rem;display:inline-flex}.board-shell .board-top{background:var(--admin-ink);justify-content:center;align-items:center;padding:.75rem 1.5rem;display:flex;box-shadow:0 4px #0a0a0a1f}.board-shell .board-logo{object-fit:contain;width:auto;height:40px;display:block}.board-shell .board-main{max-width:1000px;margin:0 auto;padding:1.75rem 1.5rem 3rem}.board-shell .board-head{text-align:center;margin-bottom:1.5rem}.board-shell .board-eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--admin-muted);margin:0 0 .35rem;font-size:.72rem;font-weight:800}.board-shell .board-title{color:var(--admin-ink);margin:0 0 .5rem;font-family:Fredoka,sans-serif;font-size:clamp(1.6rem,5vw,2rem);font-weight:800}.board-shell .board-lede,.board-shell .board-sub{max-width:560px;color:var(--admin-muted);margin:0 auto;font-size:.9rem;line-height:1.45}.board-shell .board-sub{margin-top:.25rem;font-size:.82rem}.board-shell .board-refresh{color:var(--admin-ink);margin:.6rem 0 0;font-size:.78rem;font-weight:700}.board-shell .board-error{color:#b91c1c;margin-top:.5rem;font-weight:700}.board-shell .board-card{background:var(--admin-surface);border:3px solid var(--admin-ink);border-radius:var(--radius-card);box-shadow:var(--admin-shadow-lg);margin-bottom:1.25rem;padding:1.25rem}.board-shell .board-card-title{color:var(--admin-ink);margin:0 0 .25rem;font-family:Fredoka,sans-serif;font-size:1.2rem;font-weight:800}.board-shell .board-card-sub{color:var(--admin-muted);margin:0 0 1rem;font-size:.85rem;line-height:1.45}.board-shell .sb-table{border-collapse:collapse;width:100%;font-size:.88rem}.board-shell .sb-table th{text-align:left;background:var(--admin-bg);color:var(--admin-ink);border-bottom:2px solid var(--admin-ink);text-transform:uppercase;letter-spacing:.06em;padding:.65rem .75rem;font-size:.7rem}.board-shell .sb-table td{vertical-align:middle;border-bottom:1px solid #1e3a5f1f;padding:.7rem .75rem}.board-shell .sb-table tbody tr:hover td{background:#aee4ff66}.board-shell .sb-table tbody tr:last-child td{border-bottom:none}.board-shell .td-team{color:var(--admin-ink);font-weight:800}.board-shell .code-badge{letter-spacing:.12em;text-transform:uppercase;border:2px solid var(--admin-ink);box-shadow:2px 2px 0 var(--admin-ink);background:#fff;border-radius:.45rem;padding:.25rem .55rem;font-family:Courier New,Consolas,monospace;font-size:.95rem;font-weight:800;display:inline-block}.board-shell .status-chip{border-radius:var(--radius-pill);border:2px solid var(--admin-ink);white-space:nowrap;padding:.22rem .55rem;font-size:.72rem;font-weight:700;display:inline-block}.board-shell .status-chip.st-waiting{color:#475569;background:#f1f5f9;border-color:#94a3b8}.board-shell .status-chip.st-lobby{color:#92400e;background:#fde68a}.board-shell .status-chip.st-live{color:#14532d;background:#bbf7d0}.board-shell .status-chip.st-finished{color:#475569;background:#e2e8f0;border-color:#94a3b8}.board-shell .td-mates{color:var(--admin-ink)}.board-shell .board-muted,.board-shell .dash{color:var(--admin-muted)}.board-shell .td-score{color:var(--admin-ink);font-weight:800}.board-shell .board-hint,.board-shell .board-tip{color:var(--admin-muted);font-size:.78rem;line-height:1.45}.board-shell .board-hint{margin:.75rem 0 0}.board-shell .board-tip{text-align:center;margin-top:.5rem;font-size:.82rem}.board-shell .board-empty{text-align:center;color:var(--admin-muted);padding:1.5rem}.board-shell .ranks{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.board-shell .rank-row{background:var(--admin-bg);border:2px solid var(--admin-ink);box-shadow:2px 2px 0 var(--admin-ink);border-radius:.65rem;align-items:center;gap:.75rem;padding:.65rem .85rem;display:flex}.board-shell .rank-row.rk-1{border-color:var(--admin-ink);background:#fde68a}.board-shell .rk-num{border:2px solid var(--admin-ink);width:28px;height:28px;color:var(--admin-ink);background:#fff;border-radius:50%;flex-shrink:0;place-items:center;font-size:.85rem;font-weight:800;display:grid}.board-shell .rk-1 .rk-num{background:var(--admin-ink);color:#fff}.board-shell .rk-team{color:var(--admin-ink);flex:1;font-weight:800}.board-shell .rk-score{color:#15803d;font-weight:800}.board-shell .rk-time{color:var(--admin-muted);font-size:.8rem}@media (max-width:720px){.admin-shell .admin-top{gap:.5rem;padding:.65rem .85rem}.admin-shell .brand{flex:1;min-width:0}.admin-shell .brand-logo{max-width:min(52vw,200px);height:30px}.admin-shell .top-nav{flex-shrink:0;gap:.45rem}.admin-shell .nav-link{display:none}.admin-shell .admin-main{padding:1rem .85rem 2.5rem}.admin-shell .page-title{font-size:1.45rem}.admin-shell .event-head{flex-direction:column;align-items:stretch}.admin-shell .head-actions{width:100%}.admin-shell .head-actions .btn-danger,.admin-shell .head-actions .btn-ghost{text-align:center;flex:1}.admin-shell .status-strip{gap:.45rem}.admin-shell .stat{text-align:center;flex:calc(50% - .25rem);padding:.4rem .5rem;font-size:.76rem}.admin-shell .team-row{flex-wrap:wrap}.admin-shell .team-row .code-pill{justify-content:center;width:100%;min-width:0;margin-top:.25rem}.admin-shell .table-wrap--cards{box-shadow:none;background:0 0;border:none;border-radius:0;padding:0;overflow:visible}.admin-shell .table-wrap--cards .events-table{min-width:0;display:block}.admin-shell .table-wrap--cards .events-table thead{display:none}.admin-shell .table-wrap--cards .events-table tbody{flex-direction:column;gap:.75rem;display:flex}.admin-shell .table-wrap--cards .events-table tbody tr{background:var(--admin-surface);border:3px solid var(--admin-ink);border-radius:var(--radius-card);box-shadow:var(--admin-shadow);padding:.75rem 1rem;display:block}.admin-shell .table-wrap--cards .events-table tbody tr:hover td{background:0 0}.admin-shell .table-wrap--cards .events-table td{border-bottom:1px solid #1e3a5f1a;grid-template-columns:minmax(4.5rem,34%) 1fr;align-items:center;gap:.5rem .75rem;padding:.5rem 0;display:grid}.admin-shell .table-wrap--cards .events-table td:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.05em;color:var(--admin-muted);font-size:.68rem;font-weight:700}.admin-shell .table-wrap--cards .events-table td:last-child{border-bottom:none;padding-top:.65rem}.admin-shell .table-wrap--cards .events-table td.empty-cell{text-align:center;border:3px solid var(--admin-ink);border-radius:var(--radius-card);background:var(--admin-surface);box-shadow:var(--admin-shadow);grid-template-columns:none;padding:1.5rem;display:block}.admin-shell .table-wrap--cards .events-table td.empty-cell:before{content:none}.admin-shell .table-wrap--cards .events-table td.cell-actions,.admin-shell .table-wrap--cards .events-table td.cell-status{flex-wrap:wrap;align-content:flex-start;align-items:stretch;gap:.45rem;display:flex}.admin-shell .table-wrap--cards .events-table td.cell-actions:before,.admin-shell .table-wrap--cards .events-table td.cell-status:before{flex:0 0 100%;width:100%}.admin-shell .table-wrap--cards .cell-status .pill{text-align:center;flex:calc(33.333% - .3rem);justify-content:center;min-width:0;padding:.3rem .35rem;font-size:.62rem}.admin-shell .table-wrap--cards .cell-actions .link-action{flex:calc(50% - .25rem);justify-content:center;align-items:center;min-width:0;min-height:44px;padding:.45rem .65rem;font-size:.85rem;display:inline-flex}.admin-shell .table-wrap--cards .cell-name{text-align:right;font-size:1rem}.admin-shell .lb-table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.admin-auth{padding:1rem}.admin-auth .auth-card{padding:1.35rem}.board-shell .board-main{padding:1rem .85rem 2.5rem}.board-shell .board-logo{max-width:min(70vw,220px);height:32px}.board-shell .sb-table{-webkit-overflow-scrolling:touch;min-width:0;display:block;overflow-x:auto}}@media (max-width:400px){.admin-shell .table-wrap--cards .cell-status .pill{flex:calc(50% - .25rem)}.admin-shell .table-wrap--cards .cell-actions .link-action{flex:100%}}.app-wrapper{background:var(--sky-blue);min-height:100dvh}.game-view{min-height:100vh}