@font-face{font-family:Fredoka;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/3e5302f118d6bde7-s.woff2) format("woff2");unicode-range:u+0307-0308,u+0590-05ff,u+200c-2010,u+20aa,u+25cc,u+fb1d-fb4f}@font-face{font-family:Fredoka;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bb36247b0b027bd1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fredoka;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bca7023bf625e650-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fredoka;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/3e5302f118d6bde7-s.woff2) format("woff2");unicode-range:u+0307-0308,u+0590-05ff,u+200c-2010,u+20aa,u+25cc,u+fb1d-fb4f}@font-face{font-family:Fredoka;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bb36247b0b027bd1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fredoka;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bca7023bf625e650-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fredoka;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/3e5302f118d6bde7-s.woff2) format("woff2");unicode-range:u+0307-0308,u+0590-05ff,u+200c-2010,u+20aa,u+25cc,u+fb1d-fb4f}@font-face{font-family:Fredoka;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bb36247b0b027bd1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fredoka;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bca7023bf625e650-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fredoka Fallback;src:local("Arial");ascent-override:95.64%;descent-override:23.17%;line-gap-override:0.00%;size-adjust:101.84%}.__className_160d87{font-family:Fredoka,Fredoka Fallback;font-style:normal}.__variable_160d87{--font-display:"Fredoka","Fredoka Fallback"}:root{--bg-deep:#0a0e13;--bg-panel:#131a20;--bg-panel-2:#182029;--edge:#4a7a8a;--edge-soft:#2a4652;--glow:#4ad9f0;--glow-soft:#8fe3f5;--text:#eaf4f5;--text-dim:#93b8c2;--danger:#ff5f7e;--danger-dim:#c9506a;--warn:#ffc861;--parasite:#7cff4f;--crew:#2f9fd6;--crew-bright:#79c9ee;--inset:#080d11;--dur-fast:180ms;--dur-mid:240ms;--ease-out:cubic-bezier(0.2,0.8,0.3,1);--hit:44px}*{box-sizing:border-box}:focus-visible{outline:2px solid var(--glow);outline-offset:2px;border-radius:6px}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0.01ms;--dur-mid:0.01ms}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}body,html{margin:0;padding:0;height:100%;background:var(--bg-deep);color:var(--text);font-family:var(--font-display),"Segoe UI",system-ui,sans-serif;font-weight:500;overflow:hidden;overscroll-behavior:none}#lobby-code,.mono-note code,code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}button{font-family:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65;filter:saturate(.55)}.shell{display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:240px 1fr 250px;grid-template-areas:"top top top" "left stage right" "bottom bottom bottom";height:100dvh;width:100%;grid-gap:8px;gap:8px;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.panel{background:linear-gradient(180deg,var(--bg-panel) 0,var(--bg-panel-2) 100%);border:1px solid var(--edge);border-radius:10px;box-shadow:inset 0 0 22px rgba(74,217,240,.06)}.panel-title{font-size:11px;letter-spacing:.16em;color:var(--glow);text-transform:uppercase;padding:9px 11px 6px;border-bottom:1px solid var(--edge-soft);margin:0}.topbar{grid-area:top;display:flex;align-items:center;gap:14px;padding:0 14px;height:58px}.brand{display:flex;flex-direction:column;line-height:1.1}.brand-title{font-size:19px;font-weight:700;letter-spacing:.19em;color:var(--glow);text-shadow:0 0 14px rgba(74,217,240,.5)}.brand-sub{font-size:10px;letter-spacing:.2em;color:var(--text-dim)}.topbar-spacer{flex:1 1}.progress-wrap{min-width:190px}.progress-label{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:var(--text-dim);letter-spacing:.1em;margin-bottom:4px}.progress-track{height:9px;background:var(--inset);border:1px solid var(--edge);border-radius:5px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#1f8fa8,var(--glow));box-shadow:0 0 12px rgba(74,217,240,.65);transition:width var(--dur-mid) var(--ease-out)}.role-badge{display:flex;align-items:center;gap:9px;padding:7px 13px;border-radius:8px;border:1px solid var(--edge);background:var(--inset);min-width:168px}.role-badge.parasite{border-color:var(--parasite);background:rgba(124,255,79,.09);box-shadow:0 0 18px rgba(124,255,79,.22)}.role-badge.human{border-color:var(--crew);background:rgba(47,159,214,.09)}.role-dot{width:9px;height:9px;border-radius:50%;background:var(--text-dim)}.role-badge.parasite .role-dot{background:var(--parasite);box-shadow:0 0 10px var(--parasite)}.role-badge.human .role-dot{background:var(--crew);box-shadow:0 0 10px var(--crew)}.role-text{display:flex;flex-direction:column;line-height:1.25}.role-main{font-size:13px;font-weight:700;letter-spacing:.12em}.role-mode{font-size:10px;letter-spacing:.1em;color:var(--text-dim)}.role-mode.inco{color:var(--glow)}.role-mode.sim{color:var(--warn)}.role-badge.has-wallet{padding-right:6px}.role-disconnect{margin-left:auto;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--text-dim);font-size:15px;line-height:1;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.role-disconnect:focus-visible,.role-disconnect:hover{background:rgba(255,95,126,.12);border-color:var(--danger-dim);color:var(--danger)}.btn{background:#16232a;border:1px solid var(--edge);color:var(--text);padding:11px 16px;min-height:var(--hit);border-radius:7px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.btn:hover:not(:disabled){background:#1c3540;border-color:var(--glow);box-shadow:0 0 14px rgba(74,217,240,.3)}.btn:active:not(:disabled){background:#21404d}.btn-danger{background:rgba(255,95,126,.12);border-color:var(--danger-dim);color:#ffd6de}.btn-danger:hover:not(:disabled){background:rgba(255,95,126,.24);border-color:var(--danger);box-shadow:0 0 16px rgba(255,95,126,.35)}.btn-parasite{background:rgba(124,255,79,.13);border-color:#4f9c2f;color:#ddffcc}.btn-parasite:hover:not(:disabled){background:rgba(124,255,79,.26);border-color:var(--parasite);box-shadow:0 0 18px rgba(124,255,79,.4)}.btn-lg{padding:14px 26px;min-height:50px;font-size:13px}.stage{grid-area:stage;position:relative;overflow:hidden;border-radius:10px;border:1px solid var(--edge);background:#04130f}.stage canvas{display:block;width:100%!important;height:100%!important}.sidebar{display:flex;flex-direction:column;min-height:0}.sidebar-left{grid-area:left}.sidebar-right{grid-area:right}.scroll{overflow-y:auto;flex:1 1;min-height:0;padding:8px}.scroll::-webkit-scrollbar{width:6px}.scroll::-webkit-scrollbar-thumb{background:var(--edge);border-radius:3px}.task{display:flex;align-items:flex-start;gap:8px;padding:8px;border-radius:6px;border:1px solid transparent;margin-bottom:4px;font-size:12px;line-height:1.4}.task.active{border-color:var(--glow);background:rgba(74,217,240,.09);box-shadow:0 0 12px rgba(74,217,240,.16)}.task.done{opacity:.62}.task-check{color:var(--glow);font-size:12px;line-height:1.2}.task-name{font-weight:600}.task.done .task-name{text-decoration:line-through}.task-where{color:var(--text-dim);font-size:10.5px;letter-spacing:.06em}.crew{display:flex;align-items:center;gap:8px;padding:5px 7px;border-radius:7px;margin-bottom:4px;border:1px solid transparent;font-size:12px}.crew.me{border-color:var(--glow);background:rgba(74,217,240,.08)}.crew.dead{opacity:.62}.crew-avatar{width:34px;height:34px;border-radius:6px;background:var(--inset);border:1px solid var(--edge);object-fit:contain;object-position:top;flex-shrink:0}.crew-info{flex:1 1;min-width:0}.crew-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.crew-sub{font-size:10.5px;letter-spacing:.05em}.crew-sub,.crew-tag{color:var(--text-dim)}.crew-tag{font-size:10px;padding:2px 6px;border-radius:4px;border:1px solid var(--edge);flex-shrink:0}.actionbar{grid-area:bottom;display:flex;align-items:center;gap:9px;padding:9px 13px;min-height:62px;flex-wrap:wrap}.hint{font-size:11px;color:var(--text-dim);letter-spacing:.08em}.minimap{position:absolute;right:10px;bottom:10px;border:1px solid var(--edge);border-radius:8px;background:rgba(4,19,15,.86);padding:5px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.overlay{position:fixed;inset:0;background:rgba(2,10,8,.86);display:flex;align-items:center;justify-content:center;z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal{background:linear-gradient(180deg,var(--bg-panel) 0,var(--bg-panel-2) 100%);border:1px solid var(--edge);border-radius:13px;padding:26px;max-width:720px;width:min(94vw,720px);max-height:88vh;overflow-y:auto;box-shadow:0 0 60px rgba(74,217,240,.13)}.modal h2{margin:0 0 6px;font-size:20px;letter-spacing:.13em;color:var(--glow)}.modal p{color:var(--text-dim);font-size:13px;line-height:1.65}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:13px}.field .field-label,.field label{font-size:11px;letter-spacing:.14em;color:var(--text-dim);text-transform:uppercase}.field-help{font-size:11px;line-height:1.5;color:var(--text-dim);letter-spacing:.02em;opacity:.85}.field input{background:var(--inset);border:1px solid var(--edge);border-radius:7px;padding:12px;min-height:var(--hit);color:var(--text);font-family:inherit;font-size:14px;outline:none;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.field input:focus-visible{border-color:var(--glow);box-shadow:0 0 12px rgba(74,217,240,.22);outline:2px solid var(--glow);outline-offset:1px}.skins{display:flex;gap:10px;flex-wrap:wrap}.skin{width:68px;height:84px;border-radius:8px;border:2px solid var(--edge);background:var(--inset);padding:3px;position:relative;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.skin:hover:not(.sel){border-color:var(--glow-soft)}.skin.sel{border-color:var(--glow);box-shadow:0 0 16px rgba(74,217,240,.36)}.skin.sel:after{content:"✔";position:absolute;top:-7px;right:-7px;width:19px;height:19px;border-radius:50%;background:var(--glow);color:#04130f;font-size:11px;line-height:19px;text-align:center;font-weight:700}.skin img{width:100%;height:100%;object-fit:contain}.vote-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(184px,1fr));grid-gap:9px;gap:9px;margin:15px 0}.vote-card{display:flex;align-items:center;gap:9px;padding:9px;min-height:56px;border-radius:9px;border:1px solid var(--edge);background:var(--inset);transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out);text-align:left;color:var(--text);font-size:12.5px}button.vote-card:hover:not(:disabled){border-color:var(--glow);background:rgba(74,217,240,.1)}.vote-card.voted{border-color:var(--glow);background:rgba(74,217,240,.16)}.vote-card.voted:after{content:"✔";margin-left:auto;color:var(--glow);font-weight:700}.vote-card img{width:38px;height:38px;object-fit:contain;object-position:top;flex-shrink:0}.vote-count{margin-left:auto;font-size:15px}.timer,.vote-count{color:var(--glow);font-weight:700}.timer{font-size:30px;letter-spacing:.11em;text-align:center;text-shadow:0 0 16px rgba(74,217,240,.45);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin:6px 0}.timer.urgent{color:var(--warn);text-shadow:0 0 18px rgba(255,200,97,.5);animation:timer-pulse 1s var(--ease-out) infinite}@keyframes timer-pulse{0%,to{opacity:1}50%{opacity:.62}}.toasts{position:fixed;top:68px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;gap:6px;z-index:80;pointer-events:none}.toast{padding:9px 15px;border-radius:7px;font-size:12.5px;letter-spacing:.05em;border:1px solid var(--edge);background:rgba(10,35,27,.96);animation:toast-in var(--dur-fast) var(--ease-out)}.toast.warn{border-color:var(--warn);color:var(--warn)}.toast.warn:before{content:"⚠ "}.toast.error{border-color:var(--danger);color:#ffd6de}.toast.error:before{content:"✕ "}@keyframes toast-in{0%{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}.mg-bar{height:22px;background:var(--inset);border:1px solid var(--edge);border-radius:6px;overflow:hidden;margin:13px 0}.mg-fill{height:100%;background:linear-gradient(90deg,#1f8fa8,var(--glow));transition:width .1s linear}.mg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(74px,1fr));grid-gap:10px;gap:10px;margin:15px 0}.mg-cell{aspect-ratio:1;min-height:var(--hit);border-radius:8px;border:1px solid var(--edge);background:var(--inset);color:var(--text);font-size:19px;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.mg-cell.hot{border-color:var(--glow);background:rgba(74,217,240,.2);box-shadow:0 0 14px rgba(74,217,240,.36)}.mg-cell.done{opacity:.55}.mg-slider{width:100%;height:var(--hit);margin:4px 0;accent-color:#3affc0}.banner{text-align:center;padding:13px;border-radius:9px;margin:13px 0;font-size:14px;letter-spacing:.11em}.banner.crew{background:rgba(47,159,214,.15);border:1px solid var(--crew);color:#bfe9ff}.banner.parasite{background:rgba(124,255,79,.14);border:1px solid var(--parasite);color:#ddffcc}.end-title.crew{color:var(--crew-bright)}.end-title.parasite{color:var(--parasite)}.muted{color:var(--text-dim);font-size:12px}.role-reveal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;text-align:center;background:radial-gradient(ellipse at center,rgba(20,6,4,.97) 0,rgba(2,1,1,.99) 75%);cursor:pointer;animation:role-reveal-in var(--dur-mid) var(--ease-out)}.role-reveal.closing{animation:role-reveal-out .24s var(--ease-out) forwards}.role-reveal-noise{position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(124,255,79,.05),rgba(124,255,79,.05) 1px,transparent 0,transparent 3px);animation:role-reveal-flicker 2.4s steps(12) infinite}.role-reveal-body{position:relative;padding:0 24px;max-width:640px}.role-reveal-eyebrow{display:block;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--danger);margin-bottom:14px}.role-reveal-title{margin:0 0 16px;font-size:clamp(32px,8vw,64px);letter-spacing:.06em;color:var(--parasite);text-shadow:0 0 18px rgba(124,255,79,.65),0 0 46px rgba(124,255,79,.35);animation:role-reveal-shake .32s var(--ease-out) 1}.role-reveal-sub{margin:0;color:var(--text-dim);font-size:14px;line-height:1.6}@keyframes role-reveal-in{0%{opacity:0}to{opacity:1}}@keyframes role-reveal-out{0%{opacity:1}to{opacity:0}}@keyframes role-reveal-flicker{0%,to{opacity:.5}50%{opacity:.9}}@keyframes role-reveal-shake{0%{transform:translate(0)}20%{transform:translate(-3px,1px)}40%{transform:translate(3px,-1px)}60%{transform:translate(-2px)}80%{transform:translate(2px,1px)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.role-reveal,.role-reveal-noise,.role-reveal-title,.role-reveal.closing{animation:none}}.mono-note{font-size:11.5px;color:var(--text-dim);line-height:1.6;background:var(--inset);border:1px solid var(--edge);border-radius:7px;padding:10px 12px;margin-top:11px}.mono-note code{color:var(--glow-soft);word-break:break-all}.row{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.pill{font-size:10px;letter-spacing:.11em;padding:4px 9px;border-radius:999px;border:1px solid var(--edge);color:var(--text-dim);white-space:nowrap}.pill.ok{border-color:var(--glow);color:var(--glow)}.pill.bad{border-color:var(--danger);color:var(--danger)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:1080px){.shell{grid-template-columns:190px 1fr 200px}}@media (max-width:820px){body,html{overflow:auto}.shell{grid-template-columns:1fr;grid-template-rows:auto minmax(320px,58vh) auto auto auto;grid-template-areas:"top" "stage" "bottom" "left" "right";height:auto;min-height:100dvh}.sidebar{max-height:42vh}.topbar{flex-wrap:wrap;height:auto;padding:9px 12px}.topbar-spacer{display:none}.progress-wrap{order:3;flex:1 1 100%}}.menu{position:fixed;inset:0;overflow:hidden;background:var(--bg-deep);z-index:50}.menu-canvas{width:100%;height:100%;object-fit:cover;display:block}.menu-canvas,.menu-scrim{position:absolute;inset:0}.menu-scrim{background:radial-gradient(ellipse 46% 62% at 50% 46%,rgba(4,8,12,.82),rgba(4,8,12,.12) 70%),linear-gradient(180deg,rgba(4,8,12,.62),rgba(4,8,12,0) 26%);pointer-events:none}.menu-status{position:absolute;top:max(18px,env(safe-area-inset-top));left:max(18px,env(safe-area-inset-left));display:flex;align-items:center;gap:9px;padding:9px 14px;border-radius:999px;background:rgba(10,14,19,.72);border:1px solid var(--edge);font-size:11px;letter-spacing:.16em;color:var(--text-dim)}.menu-status .dot{width:8px;height:8px;border-radius:50%;background:var(--warn)}.menu-status .dot.live{background:var(--glow);box-shadow:0 0 10px var(--glow)}.menu-icon-btn{position:absolute;top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right));width:var(--hit);height:var(--hit);border-radius:50%;background:rgba(10,14,19,.72);border:1px solid var(--edge);color:var(--text);font-size:18px;font-weight:700;line-height:1;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.menu-icon-btn:hover{border-color:var(--glow);background:rgba(20,32,40,.9)}.menu-stack{position:relative;height:100%;justify-content:center;gap:4px;padding:0 20px;text-align:center}.logo,.menu-stack{display:flex;flex-direction:column;align-items:center}.logo{margin:0 0 6px;line-height:.84;font-family:var(--font-display),ui-monospace,monospace;font-weight:700;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none}.logo-sm{font-size:clamp(26px,5.2vw,58px);letter-spacing:.3em;text-indent:.3em;color:var(--text);text-shadow:0 3px 0 rgba(3,8,11,.9),0 0 26px rgba(74,217,240,.28)}.logo-sm.alt{color:var(--glow)}.logo-lg{font-size:clamp(52px,13vw,152px);letter-spacing:.04em;text-indent:.04em;color:var(--text);text-shadow:0 6px 0 rgba(3,8,11,.95),0 0 44px rgba(74,217,240,.4),0 0 90px rgba(124,255,79,.16)}.tagline{margin:0 0 26px;font-size:clamp(11px,1.5vw,14px);letter-spacing:.14em;color:var(--text-dim)}.btn-play{min-width:min(340px,78vw);min-height:62px;padding:16px 44px;border:none;border-radius:14px;background:linear-gradient(180deg,#ffd25e,#f2a52b);color:#241703;font-family:var(--font-display),ui-monospace,monospace;font-size:clamp(20px,3vw,28px);font-weight:700;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 4px 16px rgba(0,0,0,.4);transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),filter var(--dur-fast) var(--ease-out)}.btn-play:hover:not(:disabled){filter:brightness(1.07)}.btn-play:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px 10px rgba(0,0,0,.4)}.btn-play:disabled{background:#4d545a;color:#d5dde2;box-shadow:0 4px 14px rgba(0,0,0,.35)}.menu-secondary{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:18px}.btn-menu{min-height:var(--hit);padding:12px 26px;border-radius:11px;border:1px solid var(--edge);background:rgba(18,26,33,.86);color:var(--text);font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 3px 12px rgba(0,0,0,.35);transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.btn-menu:hover{border-color:var(--glow)}.btn-menu:active{transform:translateY(2px);box-shadow:0 1px 6px rgba(0,0,0,.35)}.mode-card{position:absolute;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));width:min(310px,68vw);border-radius:12px;overflow:hidden;border:1px solid var(--danger-dim);background:rgba(10,14,19,.9);box-shadow:0 10px 30px rgba(0,0,0,.5)}.mode-card.inco{border-color:var(--edge)}.mode-card>header{padding:8px 13px;background:var(--danger-dim);color:#1b0208;font-size:11px;font-weight:700;letter-spacing:.18em}.mode-card.inco>header{background:var(--glow);color:#04171d}.mode-body{padding:11px 13px;font-size:11.5px;line-height:1.55;color:var(--text-dim)}.waitroom{position:relative;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;padding:24px;text-align:center}.waitroom-title{margin:0;font-family:var(--font-display),ui-monospace,monospace;font-size:clamp(26px,5vw,44px);font-weight:700;letter-spacing:.14em;color:var(--text);text-shadow:0 4px 0 rgba(3,8,11,.9),0 0 34px rgba(74,217,240,.3)}.waitroom-head{display:flex;align-items:center;gap:14px;letter-spacing:.1em}.crew-strip{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:4px 0 8px;padding:0;list-style:none;max-width:720px}.crew-chip{display:flex;align-items:center;gap:8px;padding:7px 13px 7px 8px;border-radius:10px;border:1px solid var(--edge);background:rgba(18,26,33,.88);font-size:12px}.crew-chip img{width:26px;height:30px;object-fit:contain;image-rendering:pixelated}.sheet{max-width:470px;max-height:min(86vh,760px);overflow-y:auto}.how-list{margin:6px 0 4px;padding-left:20px;line-height:1.65;font-size:13px;color:var(--text-dim)}.how-list li+li{margin-top:9px}.how-list strong{color:var(--text)}@media (max-height:620px){.logo-lg{font-size:clamp(40px,9vw,72px)}.logo-sm{font-size:clamp(18px,3.4vw,28px)}.tagline{margin-bottom:16px}}.shell{display:block;position:relative;padding:0;gap:0}.shell>.stage{position:absolute;inset:0;border:none;border-radius:0;z-index:0}.shell>.actionbar,.shell>.sidebar-left,.shell>.sidebar-right,.shell>.topbar{position:absolute;z-index:2;background:rgba(19,26,32,.94);border:1px solid rgba(122,168,184,.22);border-radius:10px;box-shadow:0 6px 20px rgba(0,0,0,.4)}.shell>.topbar{top:max(10px,env(safe-area-inset-top));left:max(10px,env(safe-area-inset-left));height:auto;min-height:0;padding:7px 14px;gap:16px;max-width:min(520px,calc(100vw - 220px));flex-wrap:nowrap}.shell>.topbar .brand,.shell>.topbar .brand-sub,.shell>.topbar .brand-title{white-space:nowrap}.shell>.topbar .topbar-spacer{display:none}.shell>.topbar .brand-title{font-size:15px}.shell>.topbar .brand-sub{font-size:8.5px}.shell>.topbar .progress-wrap{min-width:140px}.shell>.sidebar-left{top:calc(max(10px, env(safe-area-inset-top)) + 84px);left:max(10px,env(safe-area-inset-left));width:216px;max-height:min(46vh,380px)}.shell>.sidebar-right{top:calc(max(10px, env(safe-area-inset-top)) + 172px);right:max(10px,env(safe-area-inset-right));width:210px;max-height:min(42vh,340px)}.shell>.actionbar{left:50%;transform:translateX(-50%);bottom:max(12px,env(safe-area-inset-bottom));background:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;box-shadow:none;min-height:0;padding:0;gap:14px;justify-content:center}.shell>.actionbar .btn{width:66px;height:66px;min-height:66px;padding:0;border-radius:50%;background:rgba(24,34,41,.94);border:1px solid rgba(122,168,184,.3);box-shadow:0 4px 14px rgba(0,0,0,.4);display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font-size:9px;letter-spacing:.08em;line-height:1.1;position:relative;overflow:visible}.shell>.actionbar .btn .ico{font-size:21px;line-height:1}.shell>.actionbar .btn .key{position:absolute;bottom:-9px;left:50%;transform:translateX(-50%);padding:1px 7px;border-radius:4px;background:var(--bg-panel-2);border:1px solid var(--edge-soft);font-size:8px;letter-spacing:.1em;color:var(--text-dim);white-space:nowrap}.shell>.actionbar .btn:hover:not(:disabled){border-color:var(--glow);background:rgba(28,53,64,.95)}.shell>.actionbar .btn:active:not(:disabled){transform:translateY(3px)}.shell>.actionbar .btn-danger{border-color:var(--danger-dim)}.shell>.actionbar .btn-parasite{border-color:#4f9c2f}.shell>.actionbar .hint{display:none}.minimap{top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));bottom:auto;width:132px;height:132px;padding:0;border-radius:50%;border:1px solid rgba(122,168,184,.3);background:rgba(14,20,26,.94);box-shadow:0 6px 18px rgba(0,0,0,.45);overflow:visible;display:grid;place-items:center;z-index:3}.minimap canvas{max-width:84%;max-height:84%;width:auto;height:auto;border-radius:6px}.minimap:after{content:attr(data-room);position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:6px;font-size:9.5px;letter-spacing:.12em;color:var(--text-dim);text-shadow:0 1px 3px #000;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;padding:2px 7px;border-radius:5px;background:rgba(10,14,19,.82)}@media (max-width:880px){.shell>.topbar{max-width:calc(100vw - 170px)}.shell>.sidebar-left{width:172px;max-height:34vh}.shell>.sidebar-right{display:none}.minimap{width:104px;height:104px}.shell>.actionbar .btn{width:58px;height:58px;min-height:58px}}.alert-banner{position:fixed;inset:0;z-index:60;display:grid;place-items:center;pointer-events:none;animation:alert-fade 2.6s var(--ease-out) forwards}.alert-streak{position:absolute;left:0;right:0;height:152px;transform-origin:center;animation:alert-streak 2.6s cubic-bezier(.16,1,.3,1) forwards}.alert-banner.danger .alert-streak{background:linear-gradient(90deg,rgba(255,60,92,0),rgba(255,60,92,.5) 18%,rgba(255,95,126,.95) 50%,rgba(255,60,92,.5) 82%,rgba(255,60,92,0));box-shadow:0 0 90px rgba(255,60,92,.6)}.alert-banner.warn .alert-streak{background:linear-gradient(90deg,rgba(255,200,97,0),rgba(255,200,97,.5) 18%,rgba(255,214,130,.95) 50%,rgba(255,200,97,.5) 82%,rgba(255,200,97,0));box-shadow:0 0 90px rgba(255,200,97,.55)}.alert-inner{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;animation:alert-pop 2.6s var(--ease-out) forwards}.alert-title{font-family:var(--font-display),ui-monospace,monospace;font-size:clamp(34px,7.2vw,84px);font-weight:700;letter-spacing:.06em;text-shadow:0 5px 0 rgba(6,3,5,.92),0 0 34px rgba(0,0,0,.65)}.alert-sub,.alert-title{color:#fff;text-transform:uppercase}.alert-sub{font-size:clamp(11px,1.7vw,15px);letter-spacing:.2em;text-shadow:0 2px 6px rgba(0,0,0,.9)}@keyframes alert-streak{0%{transform:scaleX(.2);opacity:0}14%{transform:scaleX(1);opacity:1}76%{transform:scaleX(1);opacity:1}to{transform:scaleX(1);opacity:0}}@keyframes alert-pop{0%{transform:scale(.82);opacity:0}16%{transform:scale(1);opacity:1}78%{transform:scale(1);opacity:1}to{transform:scale(1.04);opacity:0}}@keyframes alert-fade{0%,92%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.alert-banner,.alert-inner,.alert-streak{animation-duration:2.6s!important;animation-name:alert-hold!important}@keyframes alert-hold{0%,90%{opacity:1;transform:none}to{opacity:0;transform:none}}}.overlay .modal:has(#meeting-heading){border:2px solid var(--danger-dim);box-shadow:0 0 0 1px rgba(0,0,0,.5),0 24px 60px rgba(0,0,0,.6)}.meet-timerbar{height:10px;border-radius:5px;background:var(--inset);border:1px solid var(--edge);overflow:hidden;margin:10px 0 8px}.meet-timerfill{height:100%;background:linear-gradient(90deg,#1f8fa8,var(--glow));transition:width .25s linear}.meet-timerfill.urgent{background:linear-gradient(90deg,#c9506a,var(--danger))}.vote-card.dead{opacity:.42;filter:grayscale(.85);cursor:default;position:relative}.vote-card.dead img{background:linear-gradient(45deg,transparent 46%,var(--danger) 46%,var(--danger) 54%,transparent 54%),linear-gradient(-45deg,transparent 46%,var(--danger) 46%,var(--danger) 54%,transparent 54%)}.dead-tag{margin-left:auto;font-size:8.5px;letter-spacing:.16em;color:var(--danger);border:1px solid var(--danger-dim);border-radius:4px;padding:1px 5px}@media (max-width:560px){.shell>.topbar{max-width:calc(100vw - 128px);padding:6px 10px;gap:9px}.shell>.topbar .brand-sub,.shell>.topbar .progress-wrap{display:none}.shell>.topbar .brand-title{font-size:13px}.role-badge{min-width:0;padding:5px 9px}.minimap{width:92px;height:92px;border-width:3px}.minimap:after{max-width:108px;font-size:8.5px;letter-spacing:.06em}.shell>.sidebar-left{width:158px;max-height:30vh;top:calc(max(10px, env(safe-area-inset-top)) + 58px)}.shell>.actionbar{gap:10px;max-width:calc(100vw - 24px);flex-wrap:wrap}}.gal{height:100dvh;overflow-y:auto;padding:28px 24px 60px;max-width:1180px;margin:0 auto}.gal h1{font-size:26px;letter-spacing:.08em;margin:0 0 6px}.gal h2{font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--glow);margin:30px 0 4px;border-bottom:1px solid var(--edge-soft);padding-bottom:6px}.gal-note{color:var(--text-dim);font-size:12.5px;line-height:1.6;margin:4px 0 12px;max-width:70ch}.gal-row{display:flex;flex-wrap:wrap;gap:10px}.gal-fig{margin:0;padding:6px 6px 4px;border:1px solid rgba(122,168,184,.2);border-radius:10px;background:#131a20;text-align:center}.gal-fig figcaption{font-size:9.5px;letter-spacing:.08em;color:var(--text-dim);margin-top:3px}button.role-badge.needs-wallet{cursor:pointer;border-color:var(--warn);background:rgba(255,200,97,.1);text-align:left;font-family:inherit}button.role-badge.needs-wallet:hover{background:rgba(255,200,97,.18)}button.role-badge.needs-wallet .role-dot{background:var(--warn);box-shadow:0 0 10px var(--warn)}button.role-badge.needs-wallet .role-main{color:var(--warn);font-size:11.5px}.crew-tag.bot{color:var(--text-dim);border-color:var(--edge-soft)}.crew-chip.bot{opacity:.78;border-style:dashed}.chat{display:flex;flex-direction:column;gap:7px;margin-top:12px;width:100%;max-width:520px;margin-left:auto;margin-right:auto}.chat-log{height:132px;overflow-y:auto;padding:8px 10px;border:1px solid var(--edge-soft);border-radius:9px;background:var(--inset);text-align:left}.chat-empty{margin:0;font-size:11.5px;color:var(--text-dim)}.chat-line{margin:0 0 5px;font-size:12.5px;line-height:1.45;word-break:break-word}.chat-who{color:var(--glow);font-weight:600}.chat-line.mine .chat-who{color:var(--crew-bright)}.chat-line.ghost .chat-who{color:var(--text-dim)}.chat-line.ghost .chat-text{color:var(--text-dim);font-style:italic}.chat-input{display:flex;gap:7px}.chat-input input{flex:1 1;min-width:0}.chat-input .btn-menu{padding:10px 16px;font-size:11px}.voice-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px;padding:9px 11px;border:1px solid var(--edge-soft);border-radius:9px;background:var(--inset)}.voice-note{font-size:11px;color:var(--text-dim);letter-spacing:.04em}.btn-menu.ptt{min-width:150px}.btn-menu.ptt.live{border-color:var(--danger);background:rgba(255,95,126,.2);color:#ffd6de}.btn-menu.quiet{padding:8px 12px;font-size:10px;opacity:.75}