:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#fff0d2;background:#0e1111;font-family:Trebuchet MS,Segoe UI,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box}body{background:#0e1111;min-width:320px;min-height:100dvh;margin:0;overflow:hidden}button,input{font:inherit}button{color:#fff4dc;cursor:pointer;background:linear-gradient(#473d2bf5,#221e19f5);border:1px solid #ffd47a5c;border-radius:8px;min-height:42px;padding:.68rem .95rem;transition:border-color .14s,transform .14s,filter .14s;box-shadow:inset 0 1px #ffffff14,0 10px 22px #0000003d}button:hover:not(:disabled){filter:brightness(1.08);border-color:#ffdd8beb}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.48;cursor:default}input[type=number]{color:#fff4dc;background:#0a0d0db8;border:1px solid #ffd47a47;border-radius:8px;width:92px;min-height:42px;padding:.45rem .65rem}input[type=text]{color:#fff4dc;background:#0a0d0db8;border:1px solid #ffd47a47;border-radius:8px;width:100%;min-height:42px;padding:.45rem .65rem}label{color:#d8c6a7;gap:.35rem;font-size:.9rem;display:grid}#app,.shell,#scene{width:100vw;height:100dvh}.shell{isolation:isolate;position:relative}.shell:before,.shell:after{z-index:2;content:"";pointer-events:none;height:98px;position:fixed;left:0;right:0}.shell:before{background:linear-gradient(#040505f0,#04050500);top:0}.shell:after{background:linear-gradient(#04050500,#040505f5);height:126px;bottom:0}#scene{background:#0e1111;transition:filter .32s,opacity .32s;display:block}.title-active #scene{filter:blur(5px)brightness(.72)saturate(1.08);opacity:.96}.intro-panel{z-index:9;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:radial-gradient(circle at 50% 40%,#b1742438,#0000 30rem),linear-gradient(#05060661,#0a0d0d8f);place-items:center;padding:1rem;transition:opacity .22s,transform .22s;display:grid;position:fixed;inset:0}.intro-panel:before{content:"";mix-blend-mode:overlay;pointer-events:none;background:linear-gradient(#ffffff05 50%,#00000014 50%) 0 0/100% 6px;position:absolute;inset:0}.intro-exit{opacity:0;transform:scale(1.04)}.match-intro{z-index:91;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:radial-gradient(circle at 50% 42%,#ffd56d1f,#0000 23rem),#000000ad;place-items:center;padding:1rem;animation:.36s both role-fade;display:grid;position:fixed;inset:0}.match-intro-exit{opacity:0;transition:opacity .32s,transform .32s;transform:scale(1.04)}.match-intro-copy{text-align:center;justify-items:center;gap:.62rem;max-width:min(520px,100vw - 2rem);display:grid}.match-intro-copy img{width:84px;height:84px;image-rendering:pixelated;filter:drop-shadow(0 18px 34px #00000080);border-radius:8px}.match-intro-copy h2{color:#ffe1a0;text-shadow:0 3px #5b2415,0 14px 34px #ffa03642,0 0 28px #ffd56d3d;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,6vw,4.35rem);font-weight:900;line-height:.95}.match-intro-copy p:not(.eyebrow){color:#f2dfba;max-width:38ch;margin:0;font-weight:850}.match-intro.saboteur-role .match-intro-copy h2{color:#ffd2c9;text-shadow:0 0 28px #ff48486b}.match-intro.miner-role .match-intro-copy h2{color:#c8ffd5;text-shadow:0 0 28px #62e69457}.intro-content{text-align:center;justify-items:center;gap:1rem;display:grid;position:relative}.game-title{color:#ffe1a0;letter-spacing:0;text-shadow:0 4px #5b2415,0 10px 34px #ffa03659,0 28px 80px #000000a8;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.8rem,12vw,9rem);font-weight:900;line-height:.86;animation:2.8s ease-in-out infinite title-breathe}.setup-title{text-align:left;font-size:clamp(2.4rem,7vw,4.9rem)}@keyframes title-breathe{0%,to{filter:brightness();transform:translateY(0)skew(-2deg)}50%{filter:brightness(1.12);transform:translateY(-4px)skew(2deg)}}.primary-button{min-width:190px;font-weight:900}.title-menu{gap:.72rem;width:min(560px,100vw - 2rem);margin-top:.25rem;display:grid}.title-menu button{color:#3d3d3d;text-shadow:0 1px #fff;background:linear-gradient(#d8d8d8,#bfbfbf);border:3px solid #1c1c1c;border-radius:2px;min-height:58px;font-size:clamp(1.15rem,3vw,1.75rem);font-weight:900;box-shadow:inset 0 0 0 3px #efefef,0 8px #272727,0 18px 42px #0000006b}.title-menu button:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.title-menu button{position:relative}.title-menu button:after,.title-menu button:hover:after,.title-menu button:focus-visible:after{display:none}.title-help-button{z-index:2;color:#ffe7ad;background:#0c0e0db8;border:2px solid #ffe0a0a8;border-radius:50%;place-items:center;width:48px;min-width:0;height:48px;min-height:0;padding:0;display:grid;position:fixed;top:1rem;right:1rem;box-shadow:0 0 0 3px #0000004d,0 16px 34px #0000006b}.title-help-button .ui-icon{width:1.55rem;height:1.55rem}.title-help-button:hover{color:#fff;border-color:#ffd866;transform:translateY(-1px)}.ui-icon{color:currentColor;vertical-align:-.18em;flex:none;width:1.15em;height:1.15em}.ui-icon path,.ui-icon rect,.ui-icon circle,.ui-icon ellipse{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.hud{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none;background:linear-gradient(#151816c2,#0e111094);border:1px solid #ffd47a33;border-radius:8px;gap:.34rem;padding:.44rem;display:grid;position:fixed;top:.46rem;left:.55rem;right:.55rem;box-shadow:inset 0 1px #ffffff14,0 24px 80px #0000004d}.hud.own-turn{border-color:#8ff0b58c;box-shadow:inset 0 1px #ffffff1a,0 0 0 1px #8ff0b529,0 24px 80px #0000004d,0 0 34px #6ae09a29}.hud *{pointer-events:auto}.hud-row{align-items:center;gap:.48rem;min-width:0;display:flex}.current-avatar{width:38px;height:38px;image-rendering:pixelated;background:#101414;border:2px solid #ffe097a6;border-radius:8px}.stat{color:#fff2d6;text-shadow:0 2px #0006;align-items:center;gap:.35rem;min-width:max-content;font-weight:800;display:inline-flex}.stat.role-highlight{background:#ffd87314;border:1px solid #ffe09752;border-radius:999px;padding:.18rem .48rem;box-shadow:0 0 18px #ffd8731f}.stat.role-highlight.saboteur-role{color:#ffd6d0;background:#6e1f2a57;border-color:#ff56568f;box-shadow:0 0 22px #ff3c3c29}.stat.role-highlight.miner-role{color:#d9ffdf;background:#265b3c47;border-color:#8be8ab80}.turn-clock{color:#ffe8b8;font-variant-numeric:tabular-nums;background:#090c0c8f;border:1px solid #ffe09757;border-radius:999px;justify-content:center;align-items:center;min-width:42px;min-height:24px;padding:.1rem .38rem;display:inline-flex}.turn-clock.urgent{color:#ffd0c8;border-color:#ff5b5bd6;animation:.72s ease-in-out infinite timeout-blink;box-shadow:0 0 18px #ff48483d}.stat-muted,.icon-stat{color:#c7b99f;align-items:center;gap:.34rem;font-weight:650;display:inline-flex}.score{text-overflow:ellipsis;white-space:nowrap;color:#f1dfb9;flex:1;min-width:140px;overflow:hidden}.icon-button{place-items:center;width:40px;min-width:40px;min-height:40px;padding:0;display:inline-grid}.icon-button.active{color:#cef;background:linear-gradient(#34535cf5,#142327f5);border-color:#8cdaffeb}.selected{color:#ffe08c;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:160px;overflow:hidden}.players-bar{scrollbar-width:none;gap:.42rem;padding-bottom:.1rem;display:flex;overflow-x:auto}.players-bar::-webkit-scrollbar{display:none}.public-mines::-webkit-scrollbar{display:none}.lobby-players::-webkit-scrollbar{display:none}.sandbox-cards::-webkit-scrollbar{display:none}.action-log::-webkit-scrollbar{display:none}.player-chip{--player-color:#f6c85f;border:1px solid color-mix(in srgb, var(--player-color), #fff 16%);color:#fff0d2;text-align:left;min-width:118px;max-width:210px;min-height:44px;box-shadow:none;background:linear-gradient(#1f2322e6,#101312e0);border-radius:8px;align-items:center;gap:.42rem;padding:.28rem .42rem;display:flex;position:relative}.player-chip.current{border-color:color-mix(in srgb, var(--player-color), #fff 64%);box-shadow:0 0 0 2px color-mix(in srgb, var(--player-color), #fff 28%), 0 0 22px color-mix(in srgb, var(--player-color), transparent 48%);animation:1.15s ease-in-out infinite current-turn-pulse}.player-chip.saboteur-revealed{border-color:#ff5252eb;box-shadow:0 0 0 2px #ff525257,0 0 22px #ff2a2a57}.player-chip:hover:not(:disabled){border-color:color-mix(in srgb, var(--player-color), #fff 54%);filter:brightness(1.08)}.player-chip:disabled{opacity:.7}.player-chip img,.target-button img{width:30px;height:30px;image-rendering:pixelated;border-radius:6px;flex:none}.player-chip span,.target-button span{min-width:0;line-height:1.05;display:grid}.player-chip small,.target-button small{color:#bfae91;margin-top:.25rem;font-size:.72rem}.targets{flex-wrap:wrap;gap:.45rem;display:flex}.target-button{align-items:center;gap:.52rem;min-height:42px;padding:.4rem .62rem;display:inline-flex}.target-button small{gap:.28rem;min-height:1.1rem;display:inline-flex}.target-button small .ui-icon,.player-chip small .ui-icon{width:1rem;height:1rem}.player-speech-layer{z-index:89;pointer-events:none;position:fixed;inset:0}.player-speech{color:#201913;white-space:nowrap;background:#fff7df;border:1px solid #ffedbbd6;border-radius:8px 8px 8px 2px;align-items:center;gap:.3rem;max-width:136px;min-height:38px;padding:.3rem .44rem;font-weight:950;display:inline-flex;position:fixed;transform:rotate(-1.5deg);box-shadow:0 10px 26px #0000005c}.player-speech b{text-overflow:ellipsis;white-space:nowrap;max-width:52px;font-size:.62rem;overflow:hidden}.player-speech .ui-icon{width:1rem;height:1rem}.player-speech small{text-overflow:ellipsis;color:#201913;min-width:0;max-width:66px;margin:0;font-size:.62rem;overflow:hidden}.card-tooltip{z-index:86;color:#fff0d2;pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a0d0df0;border:1px solid #ffd47a5c;border-radius:8px;gap:.35rem;width:min(260px,100vw - 2rem);padding:.72rem .82rem;display:grid;position:fixed;box-shadow:0 18px 60px #00000073}.menu-tooltip{z-index:80;color:#ffe8b8;pointer-events:none;background:#0b0e0df7;border:1px solid #ffe1a085;border-radius:8px;width:min(280px,100vw - 2rem);padding:.52rem .64rem;font-size:.86rem;font-weight:850;line-height:1.28;position:fixed;box-shadow:0 16px 44px #00000070}.card-tooltip strong{color:#ffe08c}.card-tooltip span{color:#cdbd9d;line-height:1.35}.tooltip-meta{font-weight:850;color:#ffe08c!important}.message{z-index:4;color:#fff0d2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(#151816e0,#0c0e0ee6);border:1px solid #ffd47a42;border-radius:8px;align-items:center;gap:.75rem;min-height:54px;padding:.72rem .78rem .72rem 1rem;display:flex;position:fixed;bottom:.85rem;left:1rem;right:1rem;box-shadow:0 18px 70px #00000057}#messageText{flex:1;min-width:0}.log-toggle{width:38px;min-width:38px;min-height:38px;padding:0}.action-log{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);scrollbar-width:none;background:linear-gradient(#141817f0,#0b0d0df0);border:1px solid #ffd47a3d;border-radius:8px;gap:.38rem;max-height:min(42vh,360px);padding:.52rem;display:grid;position:fixed;bottom:4.85rem;left:1rem;right:1rem;overflow:auto;box-shadow:0 20px 70px #0006}.log-entry{--player-color:#ffe0a0;border:1px solid color-mix(in srgb, var(--player-color), #fff 18%);color:#f7e8c9;background:#090c0c8f;border-radius:7px;align-items:center;gap:.48rem;min-height:38px;padding:.36rem .48rem;font-size:.86rem;font-weight:760;display:flex}.log-entry img{width:28px;height:28px;image-rendering:pixelated;border-radius:5px}.comm-menu{z-index:88;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(#1c201efa,#0b0e0dfa);border:1px solid #ffd47a61;border-radius:8px;gap:.48rem;width:236px;padding:.65rem;display:grid;position:fixed;box-shadow:0 22px 70px #00000075}.comm-menu p{color:#ffe08c;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:900}.comm-options{grid-template-columns:repeat(4,1fr);gap:.38rem;display:grid}.comm-options button{place-items:center;min-width:0;min-height:46px;padding:0;display:grid}.comm-options .ui-icon{width:1.35rem;height:1.35rem}.comm-layer{z-index:86;pointer-events:none;justify-items:end;gap:.45rem;display:grid;position:fixed;bottom:5rem;right:1rem}.comm-toast{--player-color:#ffe0a0;border:1px solid color-mix(in srgb, var(--player-color), #fff 35%);color:#201913;background:linear-gradient(#fff8e0f7,#eadab2f7);border-radius:8px;grid-template-columns:34px auto 1fr;align-items:center;gap:.48rem;min-width:210px;max-width:min(340px,100vw - 2rem);padding:.44rem .58rem;font-weight:950;animation:.22s ease-out comm-pop;display:grid;box-shadow:0 18px 48px #00000061}.comm-toast img{width:34px;height:34px;image-rendering:pixelated;border-radius:6px}.comm-toast small{color:#60482f;font-size:.72rem;display:block}.comm-copy{min-width:0;line-height:1.08;display:grid}.comm-copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:178px;overflow:hidden}.comm-icon{color:#30251b;place-items:center;display:inline-grid}@keyframes comm-pop{0%{opacity:0;transform:translateY(10px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}.turn-notice{z-index:84;color:#ffe8b8;pointer-events:none;background:linear-gradient(#1f2322f5,#0b0e0df5);border:1px solid #ffe0979e;border-radius:8px;align-items:center;gap:.58rem;max-width:calc(100vw - 2rem);padding:.58rem .8rem;font-weight:950;display:inline-flex;position:fixed;top:22%;left:50%;transform:translate(-50%);box-shadow:0 18px 70px #0000007a}.turn-notice.your-turn{color:#d9ffdf;border-color:#91e4b3db}.turn-notice.timeout-warning{color:#ffd0c8;border-color:#ff5b5be0;box-shadow:0 18px 70px #0000007a,0 0 32px #ff48483d}.turn-notice b{color:#ffd873}.turn-pop{animation:1.15s both turn-pop}.turn-notice.your-turn.turn-pop{animation-duration:1.6s}@keyframes turn-pop{0%{opacity:0;transform:translate(-50%,10px)scale(.94)}12%,78%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-8px)scale(.98)}}@keyframes current-turn-pulse{0%,to{filter:brightness()}50%{filter:brightness(1.16)}}@keyframes timeout-blink{0%,to{filter:brightness()}50%{filter:brightness(1.32)}}@keyframes event-slam{0%{opacity:0;transform:translateY(18px)scale(.88)}12%,78%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-18px)scale(.96)}}@keyframes tool-break{0%{filter:brightness(1.2);transform:rotate(0)scale(.82)}42%{filter:brightness(1.65);transform:rotate(-10deg)scale(1.18)}58%{transform:rotate(12deg)scale(.96)}to{transform:rotate(-4deg)scale(1)}}@keyframes tool-repair{0%{filter:brightness(.8);transform:scale(.82)}45%{filter:brightness(1.6);transform:scale(1.2)}to{filter:brightness();transform:scale(1)}}@keyframes goal-flip{0%{opacity:0;transform:rotateY(92deg)translateY(18px)scale(.84)}45%{opacity:1;transform:rotateY(-10deg)translateY(0)scale(1.08)}to{opacity:1;transform:rotateY(0)translateY(0)scale(1)}}.panel,.privacy,.peek-panel,.role-reveal,.final-panel{z-index:6;background:radial-gradient(circle at 50% 34%,#a06f313d,#0000 34rem),#07090adb;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.role-reveal{z-index:90;background:radial-gradient(circle at 50% 38%,#ffd17533,#0000 23rem),#050708c7;animation:.42s both role-fade}.role-card{text-align:center;background:linear-gradient(#1d2220f7,#0b0e0df7);border:1px solid #ffe09775;border-radius:8px;justify-items:center;gap:.72rem;width:min(460px,100vw - 2rem);padding:1.15rem;display:grid;box-shadow:0 26px 90px #00000094,0 0 44px #ffd6761f}.role-card img{width:92px;height:92px;image-rendering:pixelated;background:#070a0a99;border-radius:8px}.role-card h2{color:#ffe1a0;text-shadow:0 0 22px #ffd47a3d;margin:0;font-size:clamp(1.85rem,6vw,3.2rem);line-height:.95}.role-card p:not(.eyebrow){color:#e6d4b2;max-width:34ch;margin:0;font-weight:800}.role-reveal.saboteur-role .role-card{border-color:#ff5555b3;box-shadow:0 26px 90px #0000009e,0 0 48px #ff343438}.role-reveal.saboteur-role .role-card h2{color:#ffd4cc;text-shadow:0 0 24px #ff444457}.role-reveal.miner-role .role-card{border-color:#94ebb49e;box-shadow:0 26px 90px #00000094,0 0 48px #56e08e2e}.final-panel{z-index:12;background:radial-gradient(circle at 50% 38%,#ff42421a,#0000 18rem),radial-gradient(circle at 50% 42%,#ffd1752b,#0000 28rem),#050708c2}.final-card{background:linear-gradient(#1c2220f5,#0b0e0df5);border:1px solid #ffd47a6b;border-radius:8px;gap:.8rem;width:min(620px,100vw - 2rem);padding:1.05rem;display:grid;box-shadow:0 28px 90px #00000085}.final-card h2{color:#ffe1a0;margin:0;font-size:clamp(1.8rem,6vw,3.1rem);line-height:1}.final-panel.expedition-complete .final-card{border-color:#ffd866bd;box-shadow:0 28px 90px #00000094,0 0 54px #ffd86621}.final-panel.expedition-complete .final-card h2{color:#fff0b8;text-shadow:0 3px #632f12bf,0 0 34px #ffd45f57}.final-goals{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.final-goal{text-align:center;background:#090c0c94;border:1px solid #ffe09752;border-radius:8px;justify-items:center;gap:.18rem;min-height:86px;padding:.62rem;display:grid}.final-goal.gold{color:#ffe08c}.final-goal.stone{color:#d8e1dc}.final-ranking{gap:.38rem;max-height:min(34vh,300px);display:grid;overflow:auto}.champion-card{color:#ffe8a8;text-align:center;background:radial-gradient(circle at 50% 20%,#ffd35f33,#0000 12rem),#251b0ccc;border:1px solid #ffe081c7;border-radius:8px;justify-items:center;gap:.36rem;padding:.85rem;display:grid;box-shadow:inset 0 0 22px #ffd86614}.champion-avatars{flex-wrap:wrap;justify-content:center;gap:.3rem;display:flex}.champion-avatars img{width:56px;height:56px;image-rendering:pixelated;filter:drop-shadow(0 12px 18px #00000073);border-radius:8px}.champion-card strong{color:#fff;font-size:clamp(1.2rem,4vw,1.75rem);line-height:1}.champion-card span{color:#f7deb0;justify-content:center;align-items:center;gap:.3rem;font-weight:850;display:inline-flex}.ranking-row{--player-color:#ffe0a0;border:1px solid color-mix(in srgb, var(--player-color), #fff 18%);background:#090c0c94;border-radius:8px;grid-template-columns:28px 36px 1fr auto;align-items:center;gap:.5rem;min-height:48px;padding:.38rem .52rem;display:grid}.ranking-row.saboteur{border-color:#ff5252e0;box-shadow:0 0 20px #ff34343d}.ranking-row img{width:36px;height:36px;image-rendering:pixelated;border-radius:6px}.ranking-row span{color:#fff0d2;min-width:0;font-weight:900;display:grid}.ranking-row small{color:#bfae91;font-size:.72rem}.ranking-row strong{color:#ffe08c;align-items:center;gap:.25rem;display:inline-flex}.ranking-gain{color:#a9f0bd;margin-left:.18rem;font-size:.7rem;font-weight:900}.sandbox-panel{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(#141817eb,#0a0c0ceb);border:1px solid #ffd47a47;border-radius:8px;gap:.48rem;width:min(440px,100vw - 1.3rem);padding:.58rem;display:grid;position:fixed;bottom:5rem;right:.65rem;box-shadow:0 18px 70px #00000061}.sandbox-header{color:#ffe08c;justify-content:space-between;align-items:center;gap:.5rem;font-size:.84rem;display:flex}.sandbox-header span{color:#cdbd9d;text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.sandbox-cards{scrollbar-width:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:.34rem;max-height:min(36vh,260px);display:grid;overflow:auto}.sandbox-cards button{text-align:left;justify-content:space-between;align-items:center;gap:.4rem;min-height:40px;padding:.36rem .48rem;font-size:.78rem;display:flex}.sandbox-cards button.selected{color:#d9ffdf;border-color:#8ce4b3e0}.sandbox-cards span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sandbox-cards b{color:#ffe08c}@keyframes role-fade{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}.dialog,.peek-card{background:linear-gradient(#1e2422fa,#0e1211fa);border:1px solid #ffd47a6b;border-radius:8px;gap:1rem;width:min(500px,100%);padding:1.15rem;display:grid;box-shadow:0 28px 90px #0000007a}.peek-card{grid-template-columns:160px 1fr;align-items:center;width:min(680px,100%)}.peek-card canvas{width:160px;height:224px;image-rendering:pixelated;border-radius:8px;box-shadow:0 18px 44px #0006}.peek-actions,.lobby-actions{flex-wrap:wrap;gap:.48rem;display:flex}.peek-actions button,.lobby-actions button{flex:132px}.mine-kind-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.62rem;display:grid}.choice-card{text-align:left;align-content:center;justify-items:start;gap:.32rem;min-width:0;min-height:104px;display:grid;overflow:hidden}.event-banner{z-index:92;pointer-events:none;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.event-card{--actor-color:#ffe0a0;--target-color:#ffe0a0;border:1px solid color-mix(in srgb, var(--actor-color), #fff 22%);background:radial-gradient(circle at 15% 20%, color-mix(in srgb, var(--actor-color), transparent 74%), transparent 16rem), radial-gradient(circle at 85% 80%, color-mix(in srgb, var(--target-color), transparent 74%), transparent 16rem), linear-gradient(180deg, #1a1f1ef7, #090b0bf7);text-align:center;border-radius:8px;justify-items:center;gap:.36rem;width:min(560px,100vw - 2rem);padding:1rem;animation:2.1s both event-slam;display:grid;box-shadow:0 28px 100px #00000094}.event-card strong{color:#ffe08c;font-size:clamp(1.5rem,5vw,2.7rem);line-height:1}.event-card span{color:#fff0d2;font-weight:900}.event-actors{grid-template-columns:minmax(74px,1fr) auto minmax(74px,1fr);align-items:center;gap:.65rem;width:min(340px,100%);display:inline-grid}.event-actors span{justify-items:center;gap:.22rem;min-width:0;display:grid}.event-actors img{border:2px solid color-mix(in srgb, var(--actor-color), #fff 18%);width:52px;height:52px;image-rendering:pixelated;background:#101414;border-radius:8px}.event-actors span:last-child img{border-color:color-mix(in srgb, var(--target-color), #fff 18%)}.event-actors b{color:#ffe08c;font-size:1.45rem}.event-actors small{color:#d4c4a8;text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.event-card small{color:#d4c4a8}.event-tools{gap:.5rem;display:flex}.event-tool{color:#ffe1a0;background:#080a0ab3;border:1px solid #ffe09770;border-radius:8px;place-items:center;width:54px;height:54px;display:grid}.event-tool.break{color:#ffb3a8;animation:.72s both tool-break}.event-tool.repair{color:#b9ffd1;animation:.86s both tool-repair}.goal-reveal-panel{z-index:70;pointer-events:none;background:radial-gradient(circle at 50% 42%,#ffd26226,#0000 22rem),#0406076b;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.goal-reveal-card{text-align:center;width:min(320px,100vw - 2rem);min-height:430px;transform-style:preserve-3d;background:linear-gradient(#1f272afa,#090c0efa);border:2px solid #ffe0978f;border-radius:8px;align-content:center;place-items:center;gap:.5rem;padding:1rem;display:grid;box-shadow:0 30px 110px #0000009e}.goal-reveal-card.flip-in{animation:.98s cubic-bezier(.2,.75,.2,1) both goal-flip}.goal-reveal-card.gold{border-color:#ffda53e6;box-shadow:0 30px 110px #0000009e,0 0 44px #ffcc4047}.goal-reveal-card.stone{border-color:#c9d6dab8}.goal-reveal-icon .ui-icon{width:4rem;height:4rem}.goal-reveal-card h2{color:#ffe1a0;margin:0;font-size:clamp(2.2rem,9vw,4.4rem);line-height:.95}.choice-card .ui-icon{color:#ffe08c;width:1.4rem;height:1.4rem}.choice-card span{color:#fff0d2;overflow-wrap:anywhere;white-space:normal;min-width:0;max-width:100%;font-weight:950}.choice-card small{color:#c8b99b;overflow-wrap:anywhere;white-space:normal;min-width:0;max-width:100%;font-size:.76rem;line-height:1.25}.tutorial-dialog{width:min(760px,100vw - 2rem)}.tutorial-panel{z-index:92}.tutorial-dialog h2{margin-bottom:.2rem}.tutorial-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.tutorial-grid article{background:#080b0b85;border:1px solid #ffda8c3d;border-radius:8px;grid-template-columns:30px 1fr;align-items:start;gap:.12rem .55rem;min-height:92px;padding:.68rem;display:grid}.tutorial-grid .ui-icon{color:#ffe08c;grid-row:span 2;width:1.6rem;height:1.6rem}.tutorial-grid strong{color:#ffe8b8;font-size:.92rem}.tutorial-grid span{color:#cdbd9d;font-size:.78rem;line-height:1.3}.choice-card.selected,.segmented-control button.selected{background:linear-gradient(#564428fa,#251f18fa);border-color:#ffe097db}.choice-card.selected:disabled{opacity:1}.segmented-control{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;display:grid}.segmented-control button{min-width:0}.public-mine-block{gap:.48rem;display:grid}.list-header{color:#d8c6a7;justify-content:space-between;align-items:center;gap:.6rem;font-size:.9rem;font-weight:850;display:flex}.list-header button{width:42px;min-width:42px;padding:0}.public-mines{gap:.42rem;max-height:min(28vh,230px);display:grid;overflow:auto}.public-mine{text-align:left;grid-template-columns:1fr auto;align-items:center;gap:.75rem;min-height:56px;display:grid}.public-mine span{min-width:0;display:grid}.public-mine strong,.public-mine b{color:#fff0d2}.public-mine small{color:#bfae91;font-size:.76rem}.public-mine b{letter-spacing:.06em;background:#080a0a8f;border:1px solid #ffe0975c;border-radius:6px;padding:.3rem .42rem}.empty-list,.mine-visibility{color:#c7b99f;background:#090c0c75;border:1px solid #ffd47a2e;border-radius:8px;margin:0;padding:.62rem .72rem;font-size:.86rem}.room-code-card{background:#090c0c9e;border:1px solid #ffd47a4d;border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:.7rem;min-height:58px;padding:.7rem .85rem;display:grid}.room-code-card span{color:#bfae91;text-transform:uppercase;font-size:.78rem;font-weight:900}.room-code-card strong{color:#ffe08c;letter-spacing:.08em;font-size:clamp(1.6rem,8vw,2.6rem)}.lobby-status{background:#090c0c8a;border:1px solid #ffd47a33;border-radius:8px;min-height:42px;padding:.68rem .75rem}.lobby-players{gap:.42rem;max-height:min(32vh,270px);display:grid;overflow:auto}.lobby-player{--player-color:#f6c85f;border:1px solid color-mix(in srgb, var(--player-color), #fff 18%);background:#0e1110b3;border-radius:8px;align-items:center;gap:.58rem;min-height:48px;padding:.42rem .52rem;display:flex}.lobby-player img,.lobby-avatar{width:34px;height:34px;image-rendering:pixelated;background:#101414;border-radius:6px;place-items:center;display:grid}.lobby-player span{gap:.16rem;min-width:0;font-weight:850;display:grid}.lobby-player small{color:#bfae91;font-size:.72rem}.color-field{gap:.5rem;display:grid}.color-field>span{color:#d8c6a7;font-size:.9rem}.color-choices{grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:.42rem;display:grid}.color-choice{--choice-color:#f6c85f;background:linear-gradient(180deg, color-mix(in srgb, var(--choice-color), #fff 18%), var(--choice-color));border-color:#ffd47a4d;place-items:center;min-width:42px;min-height:42px;padding:0;display:grid;box-shadow:inset 0 0 0 4px #10131261,0 10px 22px #0000003d}.color-choice.random-choice{color:#161616;text-shadow:0 1px #ffffff8c;background:linear-gradient(135deg,#f6c85f 0 25%,#6fc6f0 25% 50%,#8dd17e 50% 75%,#f08a8a 75%);font-size:1.3rem;font-weight:950}.color-choice.selected{border-color:#fff0b8;box-shadow:inset 0 0 0 4px #10131275,0 0 0 3px #ffe09761,0 14px 28px #00000057}.dialog h1,.dialog h2,.peek-card h2{letter-spacing:0;margin:0;line-height:1.05}.dialog h1{font-size:clamp(2rem,5vw,3.25rem)}.dialog h2,.peek-card h2{font-size:1.65rem}.dialog p,.peek-card p{color:#cfbea2;margin:0;line-height:1.45}.eyebrow{color:#ffd873;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.wide-field{grid-column:1/-1}.setup-meter{color:#ffe0a0;background:#0c0f0f8c;border:1px solid #ffd47a38;border-radius:8px;align-self:end;place-items:center;min-height:42px;margin:0;font-weight:800;display:grid}.check-line{align-items:center;gap:.6rem;display:flex}.check-line input{width:18px;height:18px}.role-setup-line{min-height:38px;padding:.25rem 0}.role-setup-line span{color:#ffe0a0;font-weight:850}.hidden{display:none!important}@media (width<=760px){.hud{padding:.42rem;top:.45rem;left:.45rem;right:.45rem}.hud-row{flex-wrap:wrap;align-items:stretch;gap:.34rem}.hud-row button{flex:44px}.current-avatar{width:32px;height:32px}.player-chip{min-width:104px;max-width:150px;font-size:.78rem}.score,.selected{white-space:normal;flex-basis:100%}.peek-card{grid-template-columns:1fr;justify-items:center}.mine-kind-grid,.segmented-control,.public-mine{grid-template-columns:1fr}.message{min-height:48px;font-size:.86rem;bottom:.55rem;left:.55rem;right:.55rem}.action-log{max-height:36vh;bottom:4.2rem;left:.55rem;right:.55rem}.final-goals{grid-template-columns:1fr}.final-card{max-height:calc(100dvh - 2rem);overflow:auto}.sandbox-panel{width:auto;bottom:4.2rem;left:.55rem;right:.55rem}.sandbox-cards{grid-template-columns:1fr;max-height:28vh}.turn-notice{font-size:.88rem;top:26%}}
