@font-face{font-family:Gaegu;src:url(/assets/Gaegu-Regular-SmfYGL-f.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0000-024F,U+2000-206F,U+20B9,U+2190-21FF,U+2600-26FF}@font-face{font-family:Gaegu;src:url(/assets/Gaegu-Bold-TydcLdah.woff2) format("woff2");font-style:normal;font-weight:700;font-display:swap;unicode-range:U+0000-024F,U+2000-206F,U+20B9,U+2190-21FF,U+2600-26FF}:root{color-scheme:dark;font-family:var(--font-body, "Gaegu", "Segoe Print", cursive);line-height:1.5;font-weight:400;color:#f7f3e8;background:#111417;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #111417;--surface: #1b2024;--surface-2: #242b30;--surface-3: #2e373c;--border: rgba(255, 255, 255, .13);--muted: #aab6b2;--gold: #f4c64f;--gold-dark: #654b0f;--teal: #1e6a69;--green: #6bc47e;--red: #e05c67;--coral: #ef6a5b;--cobalt: #4f8cff;--leaf: #65c96f;--mustard: #e0b84a;--violet: #9d78ff;--rose: #e86c9f;--radius: 8px}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at top left,rgba(244,198,79,.08),transparent 28rem),linear-gradient(135deg,#111417,#17201f)}button,input,select{font:inherit}button{min-height:44px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:#f7f3e8;padding:0 14px;font-size:.9rem;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:transform .14s ease,background .14s ease,border-color .14s ease}button:hover:not(:disabled){background:var(--surface-3);transform:translateY(-1px)}button:disabled{opacity:.45;cursor:not-allowed;transform:none}input,select{width:100%;min-height:44px;border:1px solid var(--border);border-radius:var(--radius);background:#121719;color:#f7f3e8;padding:0 12px;font-size:.95rem}label{display:grid;gap:7px;color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.app-shell{width:min(1560px,100%);margin:0 auto;padding:18px}.play-shell{width:100%;max-width:100%;height:100dvh;padding:10px clamp(10px,1.6vw,18px);overflow:hidden;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0 20px}.brand,.topbar-actions,.panel-title,.turn-card,.podium-player{display:flex;align-items:center}.brand{gap:12px;min-width:0}.brand-mark{width:42px;height:42px;border-radius:var(--radius);background:var(--gold);color:#15120a;display:grid;place-items:center;flex:0 0 auto}h1,h2,p{margin:0}h1{font-size:clamp(1.05rem,3.8vw,1.7rem);line-height:1.05;letter-spacing:0}.brand p,.hint,.turn-card span,.podium-player span,.login-copy p{color:var(--muted)}.topbar-actions{flex:0 0 auto;gap:8px;border:1px solid var(--border);border-radius:999px;background:#1b2024bf;padding:8px 12px;font-size:.82rem;font-weight:800}.status-dot{width:8px;height:8px;border-radius:999px;background:var(--green);box-shadow:0 0 0 5px #6bc47e24}.login-panel{min-height:calc(100vh - 120px);display:grid;place-items:center;gap:24px;grid-template-columns:minmax(0,1fr) minmax(280px,420px)}.login-copy h2{font-size:clamp(2rem,8vw,4.6rem);line-height:.95;max-width:760px}.login-copy p{max-width:520px;margin-top:16px;font-size:1.05rem}.login-form,.panel{border:1px solid var(--border);border-radius:var(--radius);background:#1b2024db;box-shadow:0 18px 50px #00000040}.login-form{width:100%;display:grid;gap:16px;padding:18px}.page-frame{display:grid;gap:16px;align-items:start}.mode-page{min-height:calc(100dvh - 120px);grid-template-columns:repeat(3,minmax(220px,1fr));align-content:center}.mode-card{min-height:180px;display:grid;justify-items:start;align-content:center;gap:10px;text-align:left;padding:22px;background:#1b2024eb}.mode-card svg{color:var(--gold)}.mode-card strong{font-size:1.15rem}.mode-card span{color:var(--muted);font-weight:650}.setup-page{grid-template-columns:minmax(280px,760px);justify-content:center}.loadouts-page{grid-template-columns:minmax(0,1080px);justify-content:center}.play-page{grid-template-columns:minmax(0,1fr) minmax(260px,340px)}.play-shell .topbar{padding:6px 0 10px}.play-shell .brand-mark{width:34px;height:34px}.play-shell .play-page{align-items:stretch;align-content:start;grid-template-columns:minmax(0,1fr) minmax(250px,320px);gap:12px;flex:1 1 auto;min-height:0;overflow:hidden}.play-shell .turn-panel{align-self:start;max-height:100%;overflow:auto;display:flex;flex-direction:column}.play-shell .board-column{align-content:start;gap:8px;min-height:0;overflow:hidden}.play-shell .power-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.play-shell .power-actions button{padding-inline:7px;font-size:.72rem}.event-log-panel{display:grid;gap:8px;margin-top:12px;border-top:1px solid var(--border);padding-top:12px}.event-log-title{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase}.event-log-title span{color:#f7f3e8}.event-log-title small{color:var(--gold);font-size:.68rem}.event-log-list{display:grid;gap:7px}.event-log-row{display:grid;gap:3px;border:1px solid var(--border);border-radius:var(--radius);background:#0d1112c7;padding:8px}.event-log-row span{width:fit-content;border-radius:5px;background:#f4c64f1f;color:var(--gold);padding:2px 6px;font-size:.65rem;font-weight:850;text-transform:uppercase}.event-log-row p{color:#d7e5e5;font-size:.8rem;line-height:1.3}.event-log-row.empty p{color:var(--muted)}.board-column{min-width:0;display:grid;gap:14px}.panel{padding:15px}.panel-title{gap:8px;margin-bottom:13px;color:var(--gold)}.panel-title h2{font-size:1rem;color:#f7f3e8}.loadout-title{width:fit-content;margin-bottom:16px;border:1px solid rgba(244,198,79,.4);border-radius:var(--radius);background:#f4c64f1f;color:var(--gold);padding:8px 12px}.loadout-title h2{color:#ffe08a;font-size:1.15rem}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.single-field{display:grid}.settings-fields{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.player-editor,.loadout-list,.power-actions{display:grid;gap:10px}.player-editor{margin-top:12px}.player-editor-heading{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.player-editor-heading strong{color:#f7f3e8;font-size:.9rem;text-transform:none}.player-edit-row{display:grid;grid-template-columns:minmax(0,1fr) 100px 82px;gap:8px}.button-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}.button-row>button{flex:1 1 130px}.button-row>.add-player-button{flex:0 0 54px;min-height:52px;padding:0;font-size:1.5rem;line-height:1}.primary-button{border-color:#f4c64f80;background:var(--gold);color:#171205}.primary-button:disabled{border-color:var(--border);background:var(--surface-2);color:#f7f3e8}.primary-button:hover:not(:disabled){background:#ffd86b}.quiet-button{margin-top:10px;background:#121719c2}.full{width:100%}.turn-card{gap:10px;border:1px solid var(--border);border-radius:var(--radius);background:#121719;padding:12px;margin-bottom:12px}.turn-card div:last-child{min-width:0;display:grid}.turn-card strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.token,.mini-token{border-radius:999px;border:2px solid rgba(255,255,255,.8);flex:0 0 auto}.token{width:28px;height:28px}.mini-token{width:10px;height:10px}.coral{background:var(--coral)}.cobalt{background:var(--cobalt)}.leaf{background:var(--leaf)}.mustard{background:var(--mustard)}.violet{background:var(--violet)}.rose{background:var(--rose)}.decision-box{border:1px solid rgba(244,198,79,.35);border-radius:var(--radius);background:#f4c64f14;padding:12px}.decision-box strong{color:var(--gold);font-size:.88rem}.target-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.target-list button{justify-content:flex-start;min-width:0;padding-inline:10px}.target-list .token{width:18px;height:18px}.power-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:11px}.power-actions button{min-width:0;font-size:.78rem}.loadout-player{display:grid;gap:9px;border:1px solid var(--border);border-radius:var(--radius);background:#121719;padding:12px}.loadout-count{color:var(--muted);font-size:.78rem;font-weight:800}.muted-player{opacity:.72}.room-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.room-code-panel{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid rgba(244,198,79,.42);border-radius:var(--radius);background:#f4c64f1a;padding:12px 14px}.room-code-panel>span{color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase}.room-code-panel>strong{color:#ffe08a;font-size:1.7rem;letter-spacing:.12em}.waiting-message{display:flex;align-items:center;gap:8px;margin-top:10px;color:#d2e1df;font-weight:750}.lobby-settings{margin-top:16px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:14px 0}.lobby-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.lobby-section-heading>span{color:var(--muted);font-size:.75rem;font-weight:700}.players-heading{margin-top:14px}.lobby-player{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(120px,150px);align-items:center;gap:10px;border:1px solid var(--border);border-radius:var(--radius);background:#121719;padding:10px}.lobby-player.duplicate-name{border-color:#ff5b62;background:#5b181c42;box-shadow:inset 0 0 0 1px #ff5b622e}.lobby-player-info{min-width:0;display:grid}.lobby-player-info>span,.color-name{color:var(--muted);font-size:.75rem}.lobby-color-field{gap:4px;font-size:.68rem}.lobby-color-field select{min-height:38px}.lobby-name-editor{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;border-top:1px solid var(--border);padding-top:8px}.lobby-name-editor label{gap:4px;font-size:.68rem}.lobby-name-editor input,.lobby-name-editor button{min-height:38px}.duplicate-name-warning,.lobby-blocker{color:#ff9297;font-size:.76rem;font-weight:800}.duplicate-name-warning{grid-column:1 / -1}.lobby-blocker{margin-top:12px;border:1px solid rgba(255,91,98,.45);border-radius:var(--radius);background:#5b181c38;padding:10px}.color-name{justify-self:end;text-transform:capitalize}.invite-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid var(--border);border-radius:var(--radius);background:#121719;padding:8px}.invite-row code{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#ffe2a0}.power-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.power-chip{display:grid;grid-template-columns:1fr auto;align-items:start;gap:3px 10px;min-height:58px;justify-content:stretch;font-size:.78rem;padding:8px 10px}.power-chip.selected{border-color:#f4c64f8c;background:#f4c64f2b;color:#ffe4a3}.power-chip small{color:var(--muted);font-size:.7rem;white-space:nowrap}.power-chip-name{display:inline-flex;align-items:center;gap:6px}.power-chip em{grid-column:1 / -1;color:var(--muted);font-size:.72rem;font-style:normal;font-weight:650;line-height:1.25}.power-chip:disabled{cursor:not-allowed}.game-board-wrap{width:min(100%,calc((100dvh - 145px)*1.66),820px);justify-self:center;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(160deg,#184948f2,#152122f2);padding:8px;overflow:hidden}.board-header{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.play-shell .board-header{margin-bottom:7px}.play-shell .board-header span{padding:4px 8px;font-size:.7rem}.board-header span{border:1px solid rgba(255,255,255,.14);border-radius:999px;background:#0003;padding:5px 9px;color:#dfe9e5;font-size:.76rem;font-weight:800}.game-board{display:grid;gap:3px;width:100%}.board-tile{min-width:0;min-height:0;position:relative;border:1px solid rgba(255,255,255,.1);border-radius:5px;background:#233138;color:#eaf3ef;overflow:hidden;display:grid;place-items:center}.board-tile.normal{background:#26383d}.board-tile.chaos{background:linear-gradient(145deg,#f3cc55,#b98522);color:#1b1202}.board-tile.snake{background:linear-gradient(145deg,#e05c67,#8e2f3a)}.board-tile.ladder{background:linear-gradient(145deg,#6bc47e,#2d7a4a);color:#071a0d}.board-tile.start,.board-tile.finish{background:#f7f3e8;color:#17201f}.tile-number{position:absolute;left:4px;top:3px;font-size:clamp(.45rem,1.4vw,.72rem);font-weight:900}.tile-icon,.tile-symbol{font-weight:950;opacity:.95}.token-stack{position:absolute;right:3px;bottom:3px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:2px;max-width:70%}.podium-strip{width:min(100%,calc((100dvh - 145px)*1.66),820px);justify-self:center;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.strategy-strip{width:min(100%,calc((100dvh - 145px)*1.66),820px);justify-self:center;display:grid;grid-template-columns:.8fr 1.2fr 1.4fr;gap:8px}.strategy-strip span,.self-chip{border:1px solid var(--border);border-radius:var(--radius);background:#121719cc;padding:8px 10px;color:var(--muted);font-size:.74rem;font-weight:750;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.podium-player{min-width:0;gap:9px;border:1px solid var(--border);border-radius:var(--radius);background:#1b2024db;padding:8px}.podium-player div{min-width:0;display:grid}.podium-player strong,.podium-player span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.host-name{display:inline-flex;align-items:center;gap:5px}.host-name svg{color:var(--gold);flex:0 0 auto}.no-match-panel{width:min(100%,520px);justify-self:center}.toast{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translate(-50%);width:min(520px,calc(100vw - 28px));border:1px solid rgba(244,198,79,.35);border-radius:var(--radius);background:#171b1f;color:#ffe2a0;padding:12px 14px;box-shadow:0 20px 45px #0006;z-index:20}@media(max-width:1180px){.setup-page,.loadouts-page,.play-page{grid-template-columns:1fr}}@media(max-width:820px){.app-shell{padding:12px}.topbar{align-items:flex-start}.topbar-actions{font-size:0;padding:10px}.login-panel,.page-frame,.mode-page{grid-template-columns:1fr}.login-panel{min-height:auto;padding-top:36px;place-items:stretch}.field-grid,.power-grid,.power-actions,.target-list,.room-roster,.strategy-strip{grid-template-columns:1fr}.room-code-panel{grid-template-columns:1fr auto}.room-code-panel>span{grid-column:1 / -1}.lobby-player{grid-template-columns:auto minmax(0,1fr)}.lobby-color-field,.color-name{grid-column:1 / -1;justify-self:stretch}.lobby-name-editor{grid-template-columns:1fr}.game-board-wrap{padding:8px}.game-board{gap:2px}.board-tile{border-radius:3px}.tile-number{left:2px;top:1px;font-size:clamp(.42rem,2.1vw,.62rem)}.podium-strip{grid-template-columns:1fr}}@media(max-width:900px)and (orientation:landscape){.play-shell{padding:6px 10px}.play-shell .topbar{padding:2px 0 6px}.play-shell .brand p{display:none}.play-shell .play-page{grid-template-columns:minmax(0,1fr) minmax(210px,280px);gap:10px}.play-shell .game-board-wrap,.play-shell .podium-strip{width:min(100%,calc((100dvh - 118px)*1.35),360px)}.play-shell .panel{padding:10px}.play-shell .turn-card{margin-bottom:8px;padding:8px}.play-shell button{min-height:36px}.play-shell .podium-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.play-shell .strategy-strip{grid-template-columns:1fr}}@media(max-width:820px)and (orientation:portrait){.play-shell{padding-inline:0}.play-shell .topbar,.play-shell .turn-panel{margin-inline:10px}.play-shell .play-page{grid-template-columns:1fr;gap:8px}.play-shell .turn-panel{max-height:none;overflow:visible}.play-shell .button-row,.play-shell .power-actions{margin-top:8px}.play-shell .game-board-wrap{width:100vw;border-left:0;border-right:0;border-radius:0;padding:6px}.play-shell .podium-strip{width:calc(100vw - 20px);margin-inline:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.play-shell .strategy-strip{width:calc(100vw - 20px);margin-inline:10px}.play-shell .podium-player{padding:6px;gap:6px}}@media(max-width:520px){.brand-mark{width:38px;height:38px}.brand p{display:none}.panel{padding:12px}.player-edit-row{grid-template-columns:1fr}.player-edit-row button{width:100%}.board-header span{font-size:.68rem;padding:4px 7px}.board-tile .tile-icon{width:12px;height:12px}.mini-token{width:8px;height:8px;border-width:1px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.brand-mark{overflow:hidden;background:transparent}.brand-mark img{width:100%;height:100%;display:block}.current-player-label{color:var(--muted);font-size:.68rem;font-weight:850;text-transform:uppercase}.status-badge{width:fit-content;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);border-radius:999px;padding:3px 8px;font-size:.68rem;font-weight:850;line-height:1.2}.status-badge.ready{color:#9de4aa;background:#6bc47e1f;border-color:#6bc47e52}.status-badge.leader{color:#ffe08a;background:#f4c64f1f;border-color:#f4c64f52}.status-badge.choosing{color:#c5d0cc;background:#ffffff0d}.status-badge.bot{color:#b9d6ff;background:#4f8cff1f;border-color:#4f8cff52}.loadout-player-status{min-height:54px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--border);border-radius:var(--radius);background:#121719;padding:10px 12px}.modal-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:18px;background:#06090ab8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.exit-dialog{width:min(420px,100%);display:grid;gap:12px;border:1px solid var(--border);border-radius:var(--radius);background:#1b2024;padding:20px;box-shadow:0 24px 70px #00000080}.exit-dialog>svg{color:var(--red)}.exit-dialog p{color:var(--muted)}.danger-button,.exit-game-button{border-color:#e05c676b;color:#ffadb4;background:#e05c671a}.exit-game-button{margin-top:10px;flex:0 0 auto}.dice-result{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;border:1px solid var(--border);border-radius:var(--radius);background:#121719;padding:10px;margin-bottom:10px}.dice-result.has-roll{border-color:#f4c64f70;background:#f4c64f17}.dice-result>div{min-width:0;display:grid;gap:2px}.dice-result strong{color:#ffe08a;font-size:.92rem}.dice-result span:not(.die-face){color:#d5dfdc;font-size:.72rem;overflow-wrap:anywhere}.die-face{width:44px;height:44px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:1px;border-radius:7px;background:#f7f3e8;padding:7px;box-shadow:inset 0 0 0 1px #0000001f}.pip{width:min(clamp(6px,.34rem,8px),100%);height:min(clamp(6px,.34rem,8px),100%);place-self:center;border-radius:50%;background:transparent}.pip.visible{background:#17201f}.turn-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:10px}.turn-roster-player{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:3px 6px;border:1px solid var(--border);border-radius:6px;background:#121719;padding:7px}.turn-roster-player.current{border-color:#f4c64f80;background:#f4c64f17}.turn-roster-player strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:.76rem}.turn-roster-player>span:last-child{grid-column:2 / -1;color:var(--muted);font-size:.66rem}.turn-roster-player small{color:var(--gold);font-size:.62rem;font-weight:850}.bot-label{display:inline-flex;align-items:center;gap:3px;color:#9fc4ff!important}.shield-inventory{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.shield-inventory>span{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);border-radius:999px;background:#4f8cff14;color:#cfe0ff;padding:4px 7px;font-size:.66rem;font-weight:750}.has-tooltip{position:relative}@media(hover:hover)and (pointer:fine){.has-tooltip:after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 8px);z-index:60;width:max-content;max-width:230px;transform:translate(-50%,4px);border:1px solid var(--border);border-radius:6px;background:#0d1112;color:#f7f3e8;padding:7px 9px;box-shadow:0 12px 30px #00000061;font-size:.68rem;font-weight:650;line-height:1.3;opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease}.has-tooltip:hover:after,.has-tooltip:focus-visible:after{opacity:1;transform:translate(-50%)}}.game-board-wrap{width:min(100%,calc(100dvh - 90px),760px);aspect-ratio:1;padding:6px}.game-board{position:relative;height:100%}.board-tile{z-index:1}.board-tile>*{position:relative;z-index:3}.board-tile .tile-number,.board-tile .token-stack{position:absolute}.board-connections{position:absolute;inset:0;z-index:2;width:100%;height:100%;overflow:visible;pointer-events:none}.ladder-path line{stroke:#ffe59a;stroke-width:.055;stroke-linecap:round}.snake-path path{fill:none;stroke:#ff8c98;stroke-width:.12;stroke-linecap:round}.snake-path circle{fill:#ff8c98}.snake-path .snake-eye{fill:#171b1f}.mobile-game-guide{display:none}.play-shell .play-page{height:100%;grid-template-columns:minmax(0,1fr) clamp(300px,24vw,360px)}.play-shell .board-column{display:grid;place-items:start center;align-content:start}.play-shell .turn-panel{align-self:stretch;max-height:none;overflow:hidden}.play-shell .event-log-panel{min-height:0;flex:1 1 auto}.play-shell .event-log-list{min-height:0;overflow-y:auto;padding-right:3px}@media(max-width:1180px){.play-page{grid-template-columns:minmax(0,1fr) minmax(280px,330px)}}@media(max-width:900px)and (orientation:landscape){.play-shell .game-board-wrap{width:min(100%,calc(100dvh - 64px),620px)}.play-shell .play-page{grid-template-columns:minmax(0,1fr) minmax(250px,300px)}.play-shell .turn-panel{overflow-y:auto}}@media(max-width:820px)and (orientation:portrait){.play-shell{height:auto;min-height:100dvh;overflow:visible}.play-shell .play-page{display:flex;flex-direction:column;height:auto;overflow:visible}.play-shell .turn-panel{order:-1;margin-inline:10px;overflow:visible}.play-shell .event-log-list{max-height:170px}.play-shell .game-board-wrap{width:100vw;aspect-ratio:1}.mobile-game-guide{width:calc(100vw - 20px);display:grid;gap:10px;margin:4px 10px 20px;border-top:1px solid var(--border);padding-top:14px}.mobile-game-guide h2{font-size:.88rem;color:#ffe08a}.mobile-power-guide,.mobile-board-guide{display:grid;gap:7px}.mobile-power-guide>div,.mobile-board-guide>span{display:grid;gap:2px;border:1px solid var(--border);border-radius:6px;background:#121719;padding:9px}.mobile-power-guide span,.mobile-power-guide small,.mobile-board-guide>span{color:var(--muted);font-size:.72rem}.mobile-board-guide>span{grid-template-columns:auto auto 1fr;align-items:center}.mobile-board-guide em{color:var(--muted);font-style:normal}.guide-snake b{color:#ff8c98}.guide-ladder b{color:#8ce09c}.guide-start{width:12px;height:12px;border-radius:3px;background:#f7f3e8}.toast{top:calc(env(safe-area-inset-top) + 90px);bottom:auto}}:root{color-scheme:light;font-family:var(--font-body, "Gaegu", "Segoe Print", cursive);color:#2d261c;background:#e8d8b8;--bg: #e8d8b8;--surface: #f8efdd;--surface-2: #eee0c3;--surface-3: #dfc99e;--border: rgba(62, 46, 27, .2);--muted: #6d604d;--ink: #2d261c;--ink-soft: #6d604d;--paper: #f8efdd;--paper-bright: #fff9ec;--paper-deep: #dcc59a;--terracotta: #b64f32;--terracotta-dark: #7c3021;--forest: #315a46;--forest-dark: #1e3d31;--gold: #bd8b27;--gold-dark: #765116;--green: #527c57;--red: #a43d32;--coral: #c85943;--cobalt: #356f91;--leaf: #5f8b5e;--mustard: #c59028;--violet: #77629a;--rose: #a9536d;--focus: #0c6258;--radius: 10px;--shadow-soft: 0 7px 20px rgba(65, 43, 18, .12);--shadow-board: 0 12px 30px rgba(39, 27, 14, .24)}html{min-width:320px;background:var(--bg)}body{min-width:320px;min-height:100dvh;background:var(--bg);background-image:none;color:var(--ink)}button,input,select,textarea{color:var(--ink)}button,[role=button],input,select{min-height:44px}button{border:1px solid transparent;border-radius:8px;background:var(--surface-2);color:var(--ink);box-shadow:none;font-weight:750;transition:background-color .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease,transform .14s ease}button:hover:not(:disabled){border-color:#3e2e1b33;background:var(--surface-3);transform:translateY(-1px)}button:active:not(:disabled){transform:translateY(0)}button:disabled{opacity:.5}input,select{border:1px solid rgba(62,46,27,.28);border-radius:7px;background:var(--paper-bright);color:var(--ink)}input::placeholder{color:#8a7c68}label{color:var(--ink-soft);font-size:.76rem;letter-spacing:.045em}:where(button,input,select,textarea,a,[tabindex]):focus-visible{outline:3px solid var(--focus);outline-offset:3px}::selection{background:#d9ae59;color:#241b10}.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}h1,h2,.mode-card strong,.room-code-panel>strong{font-family:var(--font-display, "Gaegu", cursive);letter-spacing:0}.app-shell{width:min(1280px,100%);min-height:100dvh;padding:14px clamp(14px,2vw,24px) 20px}.app-shell:has(.mode-page),.app-shell.compact-home{height:100dvh;overflow:hidden;display:flex;flex-direction:column}.topbar{min-height:54px;padding:4px 0 10px;border-bottom:1px solid rgba(62,46,27,.15)}.brand{gap:10px}.brand-mark{width:38px;height:38px;border-radius:8px;background:var(--terracotta);box-shadow:0 3px #592a1b3d}.brand h1{color:var(--ink);font-size:clamp(1.04rem,2.2vw,1.42rem);line-height:1.05}.brand p,.hint,.turn-card span,.podium-player span,.login-copy p{color:var(--ink-soft)}.topbar-actions{gap:7px;border:0;border-radius:6px;background:transparent;color:var(--forest-dark);padding:7px 0 7px 10px}.sound-toggle{width:36px;min-height:36px;flex:0 0 36px;border-color:#315a4638;border-radius:999px;background:#fff9ecb8;color:var(--forest-dark);padding:0}.sound-toggle:hover:not(:disabled){border-color:#315a4666;background:var(--paper-bright)}.status-dot{background:var(--forest);box-shadow:none}.page-frame{gap:14px}.panel,.login-form{border:0;border-radius:12px;background:var(--surface);box-shadow:var(--shadow-soft)}.panel{padding:clamp(14px,2vw,22px)}.panel-title{gap:8px;margin-bottom:12px;color:var(--terracotta)}.panel-title h2{color:var(--ink);font-size:1.04rem}.mode-page{min-height:0;flex:1 1 auto;grid-template-columns:1fr;align-content:center;gap:clamp(14px,2vh,22px);padding-bottom:4vh}.mode-intro{display:grid;justify-items:center;gap:5px;max-width:720px;margin-inline:auto;text-align:center}.mode-intro h2,.screen-heading h2,.turn-command h2,.mode-card h3{margin:0;font-family:var(--font-display, "Gaegu", cursive);color:var(--ink);letter-spacing:0}.mode-intro h2{font-size:clamp(1.85rem,4vw,3rem);line-height:1}.mode-intro p,.screen-heading p,.mode-card p,.recommended-callout p{margin:0;color:var(--ink-soft)}.eyebrow,.mode-kicker{display:inline-flex;align-items:center;gap:6px;color:var(--terracotta-dark);font-size:.69rem;font-weight:850;letter-spacing:.07em;line-height:1.2;text-transform:uppercase}.mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;gap:clamp(10px,1.5vw,18px);width:min(100%,980px);margin-inline:auto}.mode-card{min-height:clamp(188px,24vh,226px);display:grid;grid-template-rows:auto 1fr auto;align-content:stretch;gap:14px;border:0;border-radius:12px;background:var(--paper);color:var(--ink);padding:clamp(17px,2vw,24px);box-shadow:var(--shadow-soft);transition:background-color .42s cubic-bezier(.22,1,.36,1),color .36s ease,box-shadow .42s cubic-bezier(.22,1,.36,1)}.mode-card :is(h3,p,.mode-kicker,.mode-icon,button,button svg){transition:background-color .38s ease,border-color .38s ease,color .36s ease,box-shadow .38s ease,transform .24s ease}.mode-card button svg{color:inherit}.mode-card.is-selected{background:var(--terracotta);color:#fffaf0;box-shadow:0 9px 22px #692d1b3d}.mode-card svg{color:var(--forest)}.mode-card h3{margin-top:4px;font-size:clamp(1.2rem,1.7vw,1.5rem);line-height:1.08}.mode-card p{margin-top:7px;color:var(--ink-soft);font-size:.88rem;line-height:1.35}.mode-card.is-selected h3,.mode-card.is-selected p,.mode-card.is-selected .mode-kicker{color:#fff8ea}@media(hover:hover)and (pointer:fine){.mode-card:hover{border-color:transparent;background:#a7462e;color:#fffaf0;box-shadow:0 13px 28px #692d1b4d}.mode-card:hover h3,.mode-card:hover p,.mode-card:hover .mode-kicker{color:#fff8ea}}.mode-card-topline,.mode-card-actions,.mode-proof{display:flex;align-items:center}.mode-card-topline{justify-content:space-between;min-height:38px}.mode-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:8px;background:#dfc8a0;color:var(--terracotta-dark)}.mode-icon.online{background:#d6e2d6;color:var(--forest-dark)}.mode-icon.bot{background:#d7e0d2;color:var(--forest-dark)}.mode-icon.join{background:#e5d9ba;color:var(--gold-dark)}.mode-card.is-selected .mode-icon{background:#fff9ec2e;color:#fff8ea}@media(hover:hover)and (pointer:fine){.mode-card:hover .mode-icon{background:#fff9ec2e;color:#fff8ea}}.mode-card-actions{gap:8px}.mode-card-actions>button{flex:1 1 auto}.mode-card-actions .quiet-button{margin-top:0;background:transparent;color:var(--forest-dark)}.mode-card-actions .quiet-button svg{color:inherit}.mode-card-actions .quiet-button:hover:not(:disabled){border-color:#fff9ec59;background:var(--paper-bright)}.mode-card.is-selected .primary-button{border-color:#f7e3b8;background:#f7e3b8;color:var(--terracotta-dark);box-shadow:0 3px #642719}.mode-card.is-selected .primary-button svg{color:var(--terracotta-dark)}.mode-card.is-selected .primary-button:hover:not(:disabled){border-color:#fff8e8;background:#fff8e8;color:#642719;box-shadow:0 4px #642719}.mode-card.is-selected .primary-button:hover:not(:disabled) svg{color:#642719}.mode-card.is-selected .primary-button:active:not(:disabled){border-color:#efd39d;background:#efd39d;box-shadow:0 1px #642719}.mode-card.is-selected .quiet-button{border-color:#fff9ec4d;color:#fff8ea}@media(hover:hover)and (pointer:fine){.mode-card:hover .primary-button,.mode-card:hover .mode-card-cta,.mode-card:hover .join-inline button{border-color:#f7e3b8;background:#f7e3b8;color:var(--terracotta-dark);box-shadow:0 3px #642719}.mode-card:hover .primary-button svg,.mode-card:hover .mode-card-cta svg,.mode-card:hover .join-inline button svg{color:var(--terracotta-dark)}.mode-card:hover .mode-card-cta{border-radius:8px;padding-inline:12px}.mode-card:hover .quiet-button{border-color:#fff9ec4d;background:transparent;color:#fff8ea}.mode-card:hover .primary-button:hover:not(:disabled),.mode-card:hover .mode-card-cta:hover:not(:disabled),.mode-card:hover .join-inline button:hover:not(:disabled){border-color:#fff8e8;background:#fff8e8;color:#642719;box-shadow:0 4px #642719}.mode-card:hover .mode-card-actions .quiet-button:hover:not(:disabled){border-color:#fff9ec8c;background:#fff9ec1f;color:#fff8ea}.mode-card:hover :is(.primary-button,.mode-card-cta,.join-inline button,.quiet-button) svg{color:inherit}}.mode-card-cta{width:100%;justify-content:space-between;border-color:var(--terracotta);border-radius:8px;background:var(--terracotta);color:#fffaf0;padding-inline:12px;box-shadow:0 3px 0 var(--terracotta-dark)}.mode-card-cta:hover:not(:disabled){border-color:var(--terracotta-dark);background:var(--terracotta-dark);color:#fffaf0;box-shadow:0 4px #642719}.mode-card-cta svg{color:inherit}.mode-card.is-selected .mode-card-cta,.mode-card.is-selected .join-inline button{border-color:#f7e3b8;border-radius:8px;background:#f7e3b8;color:var(--terracotta-dark);padding-inline:12px;box-shadow:0 3px #642719}.mode-card.is-selected .mode-card-cta svg,.mode-card.is-selected .join-inline button svg{color:var(--terracotta-dark)}.join-inline{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:7px}.join-inline label{min-width:0}.join-inline input{font-weight:850;letter-spacing:.12em;text-transform:uppercase}.join-inline button{width:44px;padding:0;background:var(--forest);color:#fff8ea}.join-inline button:hover:not(:disabled){border-color:var(--forest-dark);background:var(--forest-dark);color:#fff8ea}.join-inline button svg{color:inherit}.mode-proof{justify-content:center;gap:clamp(14px,3vw,34px);color:var(--forest-dark);font-size:.78rem;font-weight:750}.mode-proof span{display:inline-flex;align-items:center;gap:5px}.mode-card__eyebrow,.recommended-label{width:fit-content;border-radius:4px;background:#fff3dc;color:var(--terracotta-dark);padding:3px 7px;font-size:.67rem;font-weight:850;letter-spacing:.055em;text-transform:uppercase}.setup-page{grid-template-columns:minmax(280px,820px);padding-top:clamp(16px,5vh,42px)}.loadouts-page{grid-template-columns:minmax(0,980px);padding:16px 0 28px}.setup-panel,.loadout-panel{background:var(--paper)}.screen-heading{display:grid;gap:5px;margin-bottom:18px}.screen-heading h2{font-size:clamp(1.45rem,3vw,2rem);line-height:1.08}.screen-heading p{max-width:680px;line-height:1.45}.recommended-callout{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:10px;margin-top:14px;border-left:4px solid var(--forest);border-radius:7px;background:#e1e8d9;padding:11px 12px}.recommended-callout>span{width:34px;height:34px;display:grid;place-items:center;color:var(--forest-dark)}.recommended-callout p{margin-top:2px;font-size:.8rem}.recommended-toggle{min-height:64px;display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:11px;margin-top:14px;border-left:4px solid var(--forest);border-radius:7px;background:#e1e8d9;padding:10px 12px;color:var(--ink);font-size:.82rem;letter-spacing:0;text-transform:none}.recommended-toggle input[type=checkbox]{width:20px;height:20px;min-height:20px;margin:0;accent-color:var(--forest)}.recommended-toggle>span{display:grid;gap:2px}.recommended-toggle small{color:var(--ink-soft);font-weight:600}.settings-fields{gap:12px;margin-top:6px}.settings-fields label>span{color:var(--ink-soft);font-weight:850}.settings-fields label>small{min-height:2.5em;color:var(--ink-soft);font-size:.68rem;font-weight:600;letter-spacing:0;line-height:1.25;text-transform:none}.player-editor{gap:7px;margin-top:18px;padding-top:14px;border-top:1px solid rgba(62,46,27,.14)}.player-editor-heading,.lobby-section-heading>span,.loadout-count,.current-player-label,.color-name{color:var(--ink-soft)}.player-editor-heading strong{color:var(--ink)}.piece-picker-hint{display:block;margin:-2px 0 7px;color:var(--ink-soft);font-size:.68rem;font-weight:650}.player-edit-row{grid-template-columns:minmax(0,1fr) 78px 86px}.player-color-control{display:block}.piece-color-picker{width:72px;min-height:52px;display:flex;align-items:center;justify-content:center;gap:4px;border-color:#315a463d;background:#efe4cd;color:var(--forest-dark);padding:4px 6px}.piece-color-picker:hover:not(:disabled){border-color:var(--forest);background:#e2dcc4}.piece-choice-preview{position:relative;inset:auto;width:38px;height:38px;flex:0 0 38px;overflow:visible;filter:drop-shadow(0 1px 1px rgba(35,24,13,.36));transform:none;will-change:auto}.piece-color-picker>svg:last-child{flex:0 0 auto}.seat-kind{width:fit-content;display:inline-flex;grid-column:1;align-items:center;gap:4px;border-radius:4px;background:#d9e8d5;color:var(--forest-dark);padding:3px 7px;font-size:.68rem;font-weight:800}.seat-kind.bot{background:#d6e3e8;color:#295168}.button-row>.add-bot-button{flex-basis:126px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:inherit;font-size:.82rem;line-height:1;white-space:nowrap}.player-edit-row.has-error input{border-color:var(--red);box-shadow:0 0 0 2px #a43d321f}.player-inline-error{grid-column:1 / -1;color:var(--red);font-size:.72rem;font-weight:800}.button-row{gap:9px}.button-row>button:not(.primary-button):not(.danger-button),.quiet-button{background:transparent;color:var(--ink-soft)}.primary-button{border-color:var(--terracotta);background:var(--terracotta);color:#fffaf0;box-shadow:0 3px 0 var(--terracotta-dark)}.primary-button:hover:not(:disabled){border-color:var(--terracotta-dark);background:var(--terracotta-dark)}.primary-button:active:not(:disabled){box-shadow:0 1px 0 var(--terracotta-dark)}.primary-button:disabled{border-color:#3e2e1b24;background:#d8cab0;color:#746957;box-shadow:none}.loadout-title{width:auto;margin-bottom:6px;border:0;border-radius:0;background:transparent;color:var(--terracotta);padding:0}.loadout-title h2{color:var(--ink)}.room-code-panel{border:0;border-left:5px solid var(--gold);border-radius:7px;background:var(--surface-2);padding:11px 14px}.room-code-panel>span{color:var(--ink-soft)}.room-code-panel>strong{color:var(--terracotta-dark)}.waiting-message{color:var(--forest-dark)}.lobby-settings{border-color:#3e2e1b24}.room-roster{gap:0 14px;border-radius:8px;background:#dfc99e38;padding:2px 12px}.lobby-player,.loadout-player,.loadout-player-status{border:0;border-bottom:1px solid rgba(62,46,27,.14);border-radius:0;background:transparent;box-shadow:none}.lobby-player:nth-last-child(-n+2),.loadout-player:last-child,.loadout-player-status:last-child{border-bottom-color:transparent}.lobby-player.duplicate-name{border:1px solid rgba(164,61,50,.5);border-radius:7px;background:#f2d5c9;box-shadow:none}.roster-piece{width:50px;height:50px;display:grid;place-items:center;justify-self:end}.roster-piece .piece-choice-preview{width:44px;height:44px}.lobby-name-editor{border-top-color:#3e2e1b24}.duplicate-name-warning,.lobby-blocker{color:#8d3029}.lobby-blocker{border-color:#a43d3261;background:#f2d5c9}.status-badge{border:0;border-radius:4px;padding:3px 6px}.status-badge.ready{background:#d9e8d5;color:#274c35}.status-badge.leader{background:#ead7a9;color:#6f4a10}.status-badge.choosing{background:#e4d9c4;color:#625744}.status-badge.bot{background:#d6e3e8;color:#295168}.power-grid{gap:7px}.power-chip{min-height:64px;border:1px solid rgba(62,46,27,.16);background:var(--paper-bright);text-align:left}.power-chip:hover:not(:disabled){border-color:#315a4670;background:#f4ead5}.power-chip.selected{border-color:var(--forest);background:#dce6d7;color:var(--forest-dark);box-shadow:inset 4px 0 0 var(--forest)}.power-chip small,.power-chip em{color:var(--ink-soft)}.power-kind{margin-left:auto;border-radius:4px;background:var(--surface-3);color:var(--ink-soft);padding:2px 5px;font-size:.62rem;letter-spacing:.04em;text-transform:uppercase}.power-kind.shield{background:#dce8e3;color:var(--forest-dark)}.play-shell{width:100%;max-width:100%;height:100dvh;padding:8px clamp(10px,1.4vw,18px) 10px;overflow:hidden;background:var(--bg)}.play-shell .topbar{min-height:48px;padding:0 0 7px}.play-shell .brand-mark{width:32px;height:32px}.play-shell .play-page{height:100%;min-height:0;grid-template-columns:minmax(0,1fr) clamp(292px,24vw,350px);align-items:stretch;gap:clamp(10px,1.2vw,16px);overflow:hidden}.play-shell .board-column{min-height:0;display:grid;place-items:start center;align-content:start;overflow:hidden}.game-board-wrap{width:min(100%,calc(100dvh - 76px),760px);aspect-ratio:1;justify-self:center;border:3px solid var(--forest-dark);border-radius:9px;background:var(--forest-dark);background-image:none;padding:7px;overflow:hidden;box-shadow:var(--shadow-board)}.game-board{position:relative;width:100%;height:auto;aspect-ratio:1 / 1;display:block;isolation:isolate;border:1px solid rgba(26,47,37,.6);background:var(--forest-dark)}.opening-roll-overlay{position:absolute;inset:0;z-index:6;display:grid;place-items:center;padding:clamp(10px,7%,54px);pointer-events:none}.opening-roll-card{width:min(78%,350px);max-height:100%;overflow-y:auto;display:grid;gap:8px;border:2px solid var(--forest);border-radius:15px;background:#fff9ecf5;color:var(--ink);padding:clamp(10px,2.2vw,16px);box-shadow:0 12px 28px #23180d4d;pointer-events:auto;animation:opening-roll-in .26s ease-out both}.opening-roll-card .eyebrow{display:inline-flex;align-items:center;gap:5px;color:var(--terracotta-dark)}.opening-roll-card h2{color:var(--forest-dark);font-size:clamp(1rem,2.7vw,1.38rem);line-height:1.08}.opening-roll-card>p{color:var(--ink-soft);font-size:clamp(.68rem,1.5vw,.78rem);line-height:1.25}.opening-roll-players{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.opening-roll-player{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px;border:1px solid rgba(62,46,27,.14);border-radius:7px;background:var(--surface-2);padding:4px 5px;opacity:.72}.opening-roll-player.current{border-color:var(--terracotta);background:#f5dfc4;opacity:1;box-shadow:inset 3px 0 0 var(--terracotta)}.opening-roll-player.rolled{opacity:1}.opening-roll-player-name{min-width:0;display:grid;gap:1px}.opening-roll-player-name strong{overflow:hidden;font-size:clamp(.62rem,1.5vw,.75rem);text-overflow:ellipsis;white-space:nowrap}.opening-roll-player-name small{color:var(--terracotta-dark);font-size:.56rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.opening-roll-player.leader{border-color:#ba7b16;background:#f7e6ad;opacity:1;box-shadow:inset 3px 0 #c38b25}.opening-roll-player.winner{border-color:#d39624;background:#fff2ad;opacity:1;box-shadow:0 0 0 2px #fff2adeb,0 7px 18px #754a0c47;transform:scale(1.025)}.opening-roll-player .die-face{width:30px;height:30px;min-height:30px;padding:3px}.opening-roll-button,.opening-roll-wait{width:100%;min-height:42px}.opening-roll-wait{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--ink-soft);font-size:.76rem;font-weight:750}.opening-roll-overlay.resolved .opening-roll-card{width:min(82%,380px);justify-items:stretch;text-align:center}.opening-roll-overlay.resolved .opening-roll-card .eyebrow,.opening-roll-overlay.resolved .opening-roll-card h2,.opening-roll-overlay.resolved .opening-roll-card>p{justify-self:center}@keyframes opening-roll-in{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.board-tile-layer,.board-content-layer{position:absolute;inset:0;display:grid;gap:2px;min-width:0;min-height:0}.board-tile-layer{z-index:1}.board-content-layer{z-index:3;pointer-events:none}.board-tile{z-index:auto;border:1px solid rgba(68,50,28,.17);border-radius:2px;background:#f4e6c8;background-image:none;color:var(--ink);overflow:hidden}.board-tile.normal{background:#f4e6c8}.board-tile.normal:nth-child(2n){background:#ead7b3}.board-tile.chaos{background:#d9a840;color:#2c1f0c}.board-tile.snake{background:#d9a28b;color:#2e201a}.board-tile.ladder{background:#a9bb9d;color:#183024}.board-tile.start{background:#f9f2df;box-shadow:inset 0 0 0 2px var(--forest)}.board-tile.finish{background:#e1ba5e;color:#2c1f0c;box-shadow:inset 0 0 0 2px #80601f}.board-content-cell{position:relative;min-width:0;min-height:0;display:grid;place-items:center;overflow:visible;color:var(--ink)}.board-content-cell.snake,.board-content-cell.ladder,.board-content-cell.start{color:#263126}.board-content-cell.chaos,.board-content-cell.finish{color:#2c1f0c}.tile-number{z-index:4;left:3px;top:2px;color:currentColor;font-size:clamp(.46rem,1.1vw,.68rem);font-variant-numeric:tabular-nums;text-shadow:0 1px 0 rgba(255,250,232,.92),0 0 3px rgba(255,250,232,.65)}.board-content-cell .tile-icon,.board-content-cell .tile-symbol{position:relative;z-index:4}.tile-symbol{opacity:.62}.board-player-layer{position:absolute;inset:0;z-index:4;max-width:none;display:block;pointer-events:none}.board-piece{position:absolute;overflow:visible;filter:drop-shadow(0 1px 1px rgba(35,24,13,.36));transform-origin:center;will-change:transform}.board-content-cell.is-chaos-active:after{position:absolute;inset:8%;border:2px solid rgba(255,248,207,.92);border-radius:50%;content:"";animation:chaos-tile-pulse .62s ease-out infinite}@keyframes chaos-tile-pulse{0%{opacity:.95;transform:scale(.45)}to{opacity:0;transform:scale(1.35)}}.board-piece.is-current{filter:drop-shadow(0 1px 1px rgba(35,24,13,.4)) drop-shadow(0 0 2px rgba(255,248,219,.92))}.piece-turn-ring{opacity:.7;stroke-dasharray:.08 .055}.token,.mini-token{border-color:#fff9ec;box-shadow:0 1px 3px #20170d7a}.mini-token{width:11px;height:11px}.play-shell .turn-panel,.control-rail{align-self:stretch;max-height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#a98a59 transparent;border:0;border-top:5px solid var(--forest);border-radius:10px;background:var(--paper);box-shadow:var(--shadow-soft);padding:13px}.turn-critical{display:grid;gap:8px;flex:0 0 auto}.turn-support{min-height:0;display:flex;flex:1 1 auto;flex-direction:column;margin-top:10px}.turn-command{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-left:4px solid var(--terracotta);border-radius:7px;background:var(--surface-2);padding:8px 9px}.turn-command-player{min-width:0;display:flex;align-items:center;gap:9px}.turn-command-player>div{min-width:0;display:grid;gap:2px}.turn-command h2{overflow:hidden;font-size:1rem;line-height:1.1;text-overflow:ellipsis}.turn-progress{margin:0;color:var(--ink-soft);font-size:.68rem;font-weight:720;line-height:1.25}.turn-command .eyebrow{color:var(--terracotta-dark);font-size:.6rem}.turn-number{flex:0 0 auto;border-radius:4px;background:var(--paper-bright);color:var(--ink-soft);padding:4px 6px;font-size:.67rem;font-weight:850;font-variant-numeric:tabular-nums}.play-shell .turn-panel .panel-title{margin-bottom:8px}.turn-card,.dice-result,.turn-roster-player,.event-log-row,.strategy-strip span,.self-chip,.podium-player{border:0;border-radius:7px;background:var(--surface-2);color:var(--ink)}.turn-card{margin-bottom:8px;padding:9px}.dice-result{margin-bottom:8px;padding:8px}.dice-result.has-roll,.latest-outcome{border:0;border-left:4px solid var(--gold);background:#efe0bc}.dice-result.is-rolling{border-color:#b56c2b80;background:#f5e4c0}.dice-result strong{color:var(--terracotta-dark)}.dice-result span:not(.die-face){color:var(--ink-soft)}.roll-route{display:flex;flex-wrap:wrap;align-items:center;gap:3px;margin-top:2px;color:var(--ink);font-size:.76rem;line-height:1.2}.roll-route em{border-radius:4px;background:var(--surface-3);padding:2px 4px;color:var(--forest-dark);font-style:normal;font-weight:800}.roll-route em.snake{color:var(--terracotta-dark)}.die-face{width:42px;height:42px;border:1px solid rgba(62,46,27,.18);background:var(--paper-bright);box-shadow:0 2px #3e2e1b29}.die-face.is-rolling{border-color:var(--terracotta);background:#fff8df;box-shadow:0 4px 10px #5b351438;animation:die-tumble .18s ease-in-out infinite alternate}.dice-is-rolling svg,.opening-roll-wait .status-dot{animation:dice-icon-rock .32s ease-in-out infinite alternate}@keyframes die-tumble{0%{transform:rotate(-8deg) scale(.96)}to{transform:rotate(8deg) scale(1.04)}}@keyframes dice-icon-rock{0%{transform:rotate(-10deg)}to{transform:rotate(10deg)}}.pip.visible{background:var(--ink)}.turn-roster{gap:5px;margin-bottom:8px}.turn-roster-player{background:#dfc99e6b}.turn-roster-player.current{border:0;box-shadow:inset 4px 0 0 var(--forest);background:#dce6d7}.turn-roster-player>span:last-child,.event-log-row p{color:var(--ink-soft)}.play-shell .button-row{margin-top:8px}.play-shell .button-row>button{min-height:46px}.action-buttons{width:100%;display:flex;margin-top:0!important}.action-buttons>.turn-action-button{width:100%;min-height:52px;flex:1 1 100%;font-size:.98rem}.waiting-control{width:100%;min-height:46px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:7px;background:var(--surface-2);color:var(--ink-soft);font-size:.79rem;font-weight:750}.motion-handoff{min-height:52px;display:flex;align-items:center;gap:9px;border-radius:7px;background:#e7ddc8;padding:8px 10px;color:var(--ink)}.motion-handoff>span:last-child{min-width:0;display:grid;gap:2px}.motion-handoff strong,.motion-handoff small{display:block}.motion-handoff small{color:var(--ink-soft);font-size:.7rem}.power-prelude{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px;color:var(--ink);font-size:.7rem;font-weight:850}.power-prelude small{color:var(--ink-soft);font-size:.65rem;font-weight:700}.power-target{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;color:var(--ink-soft);font-size:.68rem;font-weight:800}.power-target select{min-width:0;height:34px;padding:4px 8px;font-size:.72rem;font-weight:750}.play-shell .power-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.power-actions button{border:1px solid rgba(49,90,70,.22);background:#e1e7d9;color:var(--forest-dark)}.power-actions .power-action{min-width:0;min-height:58px;display:grid;justify-items:stretch;gap:5px;padding:7px 8px;text-align:left}.power-action>span{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:5px}.power-action strong,.power-action em,.power-action small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.power-action strong{color:var(--forest-dark);font-size:.75rem}.power-action em{grid-column:2;color:var(--ink-soft);font-size:.64rem;font-style:normal;font-weight:650}.power-action small{color:var(--forest-dark);font-size:.64rem;font-weight:800}.power-action.cooldown,.power-action.empty,.power-action.spent{background:#e8e1d2;color:var(--ink-soft)}.power-action.spent{text-decoration-color:#3e2e1b59}.power-action:disabled{opacity:.72}.shield-inventory>span{border:0;border-radius:4px;background:#d9e4df;color:#294e44}.shield-inventory>span>span{display:grid;gap:1px}.shield-inventory strong{font-size:.68rem}.shield-inventory small{color:#47675f;font-size:.6rem;font-weight:720}.shield-inventory>.spent,.shield-inventory>.empty{background:#e5dfd2;color:var(--ink-soft)}.decision-box{border:0;border-left:5px solid #80602a;border-radius:7px;background:#e5ddce;box-shadow:inset 0 0 0 1px #3e2e1b14}.decision-box>strong{display:block;color:var(--ink);font-size:1.02rem;line-height:1.25}.decision-box>.eyebrow{margin-bottom:5px;color:#6b5c46;font-size:.66rem}.decision-box>p{margin:6px 0 0;color:#463c30;font-size:.88rem;line-height:1.45}.decision-box>.button-row,.decision-box>.target-list{margin-top:11px}.decision-box>.button-row>button:not(.primary-button){border-color:#3e2e1b33;background:#fff9ec85;color:var(--ink)}.chaos-reveal{min-height:76px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;margin-bottom:8px;border-left:5px solid #80602a;border-radius:7px;background:#e5ddce;box-shadow:inset 0 0 0 1px #3e2e1b14;padding:10px;color:var(--ink);animation:chaos-card-arrive .26s ease-out both}.chaos-reveal.pending_shield,.chaos-reveal.blocked{border-left-color:#3f7669;background:#d8dfda}.chaos-reveal-icon{display:grid;place-items:center;border-radius:50%;background:#80602a;color:#fff8e8;padding:7px}.chaos-reveal>div{min-width:0;display:grid;gap:3px}.chaos-reveal-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.chaos-reveal-heading .eyebrow{color:#6b5c46;font-size:.64rem}.chaos-status{border:1px solid rgba(62,46,27,.16);border-radius:999px;background:#fff9ec5c;color:#5d5140;padding:2px 6px;font-size:.62rem;font-weight:800;letter-spacing:.035em;text-transform:uppercase}.chaos-reveal strong{color:var(--ink);font-size:1.04rem;line-height:1.2}.chaos-reveal .chaos-rule,.chaos-reveal .chaos-outcome{margin:0;color:#514638;font-size:.84rem;line-height:1.4}.chaos-reveal .chaos-outcome{margin-top:3px;border-top:1px solid rgba(62,46,27,.13);color:var(--ink);padding-top:5px;font-size:.9rem;font-style:normal;font-weight:800}@keyframes chaos-card-arrive{0%{opacity:0;transform:translateY(-5px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.target-list{grid-template-columns:1fr}.target-list button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;text-align:left}.target-list button>span:nth-child(2){min-width:0;display:grid;gap:1px}.target-list button>span:nth-child(2) strong{overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.target-list button>span:nth-child(2) small{color:var(--ink-soft);font-size:.68rem}.event-log-panel{border-top-color:#3e2e1b24}.event-log-title,.event-log-title span{color:var(--ink-soft)}.event-log-title small{color:var(--terracotta-dark)}.event-log-row{background:#dfc99e57}.event-log-row span{width:fit-content;border-radius:3px;background:transparent;color:var(--terracotta-dark);padding:0}.exit-game-button,.danger-button{border-color:#a43d3240;background:transparent;color:#8d3029}.modal-backdrop{background:#2d261ca8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.exit-dialog{border:0;border-top:5px solid var(--terracotta);border-radius:10px;background:var(--paper-bright);color:var(--ink);box-shadow:0 22px 60px #2d1f1057}.exit-dialog p{color:var(--ink-soft)}.toast{border:0;border-left:5px solid var(--gold);border-radius:7px;background:var(--forest-dark);color:#fff6e5;box-shadow:0 14px 34px #221b124d}.has-tooltip:after{border:0;background:var(--forest-dark);color:#fff8e9}.board-connections{z-index:2;pointer-events:none}.board-connector,.snake-path,.ladder-path{opacity:1;transition:opacity .15s ease}.board-connector{pointer-events:visibleStroke;cursor:help}.board-connector:focus-visible{outline:none!important}.board-connector.is-muted,.snake-path.is-muted,.ladder-path.is-muted{opacity:1}.board-connector.is-active,.board-connector:hover,.board-connector:focus-visible,.snake-path.is-active,.ladder-path.is-active{opacity:1}.connector-hit-area{fill:none;stroke:transparent;stroke-width:.52;pointer-events:stroke}.connector-label{fill:#fff9ec;stroke:var(--forest-dark);stroke-width:.035;paint-order:stroke;font-family:var(--font-body, "Gaegu", "Segoe Print", cursive);font-size:.2px;font-weight:900;text-anchor:middle}.snake-connector{--snake-color: #94513b;--snake-mark: #d2a06c}.snake-connector[data-variant=moss]{--snake-color: #5d7046;--snake-mark: #b3a66a}.snake-connector[data-variant=ochre]{--snake-color: #a46d2e;--snake-mark: #e1bc70}.snake-connector[data-variant=clay]{--snake-color: #a8523b;--snake-mark: #d99969}.snake-connector .snake-outline{fill:none;stroke:#493326;stroke-width:.2;stroke-linecap:round;stroke-linejoin:round}.snake-connector .snake-body{stroke-linecap:round;stroke-linejoin:round}.snake-path path{fill:none;stroke:var(--snake-color, #94513b);stroke-width:.145;stroke-linecap:round;stroke-linejoin:round}.snake-connector .snake-markings{pointer-events:none}.snake-connector .snake-head{stroke-linejoin:round}.snake-path circle:not(.snake-eye){fill:var(--snake-color, #94513b);stroke:#493326;stroke-width:.025}.snake-path .snake-eye{fill:#201b15}.snake-connector .snake-eye-highlight{fill:#fff9ec}.snake-connector .snake-tongue{fill:none;stroke:#7c3021;stroke-width:.018;stroke-linecap:round}.ladder-connector{--ladder-color: #d0a64b}.ladder-connector .ladder-rail,.ladder-connector .ladder-rung{stroke-linecap:round}.ladder-path line{stroke:var(--ladder-color, #d0a64b);stroke-width:.06;stroke-linecap:round}.ladder-connector .ladder-outline{stroke-width:.1;stroke-linecap:round}.guide-snake b{color:#94513b}.guide-ladder b{color:var(--forest)}@media(min-width:901px)and (max-height:800px){.app-shell{padding-top:10px}.topbar{min-height:48px}.mode-page{min-height:0;padding-bottom:2vh}.mode-card{min-height:228px}.play-shell .turn-panel{padding:11px}}@media(max-width:900px){.mode-page{grid-template-columns:1fr;align-content:start;padding:18px 0 30px}.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell:has(.mode-page),.app-shell.compact-home{height:auto;min-height:100dvh;overflow:visible;display:block}.mode-card{min-height:200px;align-content:stretch}.settings-fields{grid-template-columns:1fr}}@media(max-width:900px)and (orientation:landscape){.app-shell:has(.mode-page),.app-shell.compact-home{height:auto;min-height:100dvh;display:block;overflow:visible}.mode-page{align-content:start;gap:8px;padding:6px 0 8px}.mode-intro{justify-items:start;max-width:none;margin:0;text-align:left}.mode-intro h2{font-size:1.45rem}.mode-intro p,.mode-proof{display:none}.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mode-card{min-height:205px;gap:8px;padding:12px}.mode-card p{font-size:.73rem}.mode-card-actions{gap:5px}.mode-card-actions button{padding-inline:8px;font-size:.75rem}.play-shell{height:100dvh;padding:5px 8px 7px;overflow:hidden}.play-shell .topbar{min-height:38px;padding-bottom:5px}.play-shell .brand-mark{width:30px;height:30px}.play-shell .brand p,.play-shell .topbar-actions span:last-child{display:none}.play-shell .play-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(258px,292px);gap:8px;height:calc(100dvh - 50px);overflow:hidden}.play-shell .board-column{order:0;min-height:0;overflow:hidden}.play-shell .game-board-wrap{width:min(100%,calc(100dvh - 54px));padding:5px}.play-shell .turn-panel,.play-shell .control-rail{order:1;display:flex;flex-direction:column;height:100%;max-height:100%;overflow-y:auto;padding:9px}.play-shell .turn-panel .panel-title,.play-shell .turn-card,.play-shell .dice-result,.play-shell .turn-roster{margin-bottom:5px}.mobile-game-guide{display:none}}@media(max-width:719px){.mode-grid{grid-template-columns:1fr;grid-auto-rows:auto}.mode-card{min-height:190px}}@media(max-width:820px)and (orientation:portrait){.app-shell{padding:9px 10px 20px}.topbar{min-height:50px;align-items:center;padding-bottom:7px}.topbar-actions{padding-left:4px;font-size:0}.brand-mark{width:34px;height:34px}.mode-page{gap:9px;padding-top:12px}.mode-intro{justify-items:start;margin:0;text-align:left}.mode-intro h2{font-size:1.7rem}.mode-intro p{font-size:.86rem}.mode-grid{gap:9px}.mode-card{min-height:198px;padding:15px}.mode-proof{display:grid;grid-template-columns:1fr;justify-items:start;gap:6px}.setup-page,.loadouts-page{padding-top:10px}.panel{padding:13px}.player-edit-row,.room-roster,.power-grid{grid-template-columns:1fr}.room-roster{padding:0 10px}.lobby-player:nth-last-child(-n+2){border-bottom-color:#3e2e1b24}.lobby-player:last-child{border-bottom-color:transparent}.play-shell{width:100%;height:auto;min-height:100dvh;padding:6px 0 18px;overflow:visible}.play-shell .topbar{min-height:44px;margin:0 9px;padding-bottom:5px}.play-shell .brand-mark{width:30px;height:30px}.play-shell .play-page{display:flex;flex-direction:column;height:auto;min-height:0;gap:9px;overflow:visible}.play-shell .board-column{display:contents}.play-shell .game-board-wrap{order:0;width:100%;max-width:100%;aspect-ratio:1;border:3px solid var(--forest-dark);border-radius:0;padding:5px}.opening-roll-card{width:min(82%,320px);gap:6px;padding:10px}.play-shell .turn-panel,.play-shell .control-rail{order:1;width:calc(100vw - 18px);max-height:none;margin:0 9px;overflow:visible}.play-shell .turn-panel{display:contents}.play-shell .turn-critical{order:1;width:calc(100vw - 18px);max-height:none;grid-template-columns:minmax(0,1fr) minmax(118px,.72fr);gap:6px;margin:0 9px;overflow:visible;border-top:4px solid var(--forest);border-radius:9px;background:var(--paper);box-shadow:var(--shadow-soft);padding:8px}.play-shell .turn-critical .turn-command{grid-column:1 / -1;min-height:42px;padding:5px 7px}.play-shell .turn-critical .turn-command h2{font-size:.88rem}.play-shell .turn-critical .turn-command .token{width:24px;height:24px}.play-shell .turn-critical>.dice-result{grid-column:1;min-height:48px;margin:0;padding:5px}.play-shell .turn-critical .die-face{width:36px;height:36px;padding:6px}.play-shell .turn-critical>.action-buttons{grid-column:2;align-self:stretch}.play-shell .turn-critical .turn-action-button{min-height:48px;padding-inline:8px;font-size:.84rem}.play-shell .turn-critical .waiting-control{min-height:48px;padding:5px;font-size:.68rem;text-align:center}.play-shell .turn-critical>.power-prelude,.play-shell .turn-critical>.power-target,.play-shell .turn-critical>.power-actions,.play-shell .turn-critical>.shield-inventory,.play-shell .turn-critical>.decision-box,.play-shell .turn-critical>.chaos-reveal,.play-shell .turn-critical>.motion-handoff{grid-column:1 / -1}.play-shell .turn-support{order:2;width:calc(100vw - 18px);margin:0 9px;border-radius:9px;background:var(--paper);box-shadow:var(--shadow-soft);padding:10px}.play-shell .turn-roster{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-game-guide{order:3;width:calc(100vw - 18px);display:grid;gap:10px;margin:9px 9px 0;border:1px solid rgba(62,46,27,.14);border-radius:9px;background:var(--paper);padding:12px;box-shadow:var(--shadow-soft)}.mobile-game-guide h2{color:var(--ink);font-size:.86rem}.mobile-power-guide,.mobile-board-guide{display:grid;gap:7px}.mobile-power-guide>div,.mobile-board-guide>span{border-color:#3e2e1b24;background:var(--surface-2);color:var(--ink-soft)}.mobile-power-guide span,.mobile-power-guide small,.mobile-board-guide>span,.mobile-board-guide em{color:var(--ink-soft)}.loadout-panel:has(.lobby-heading){display:flex;flex-direction:column}.lobby-heading{order:0}.room-code-panel{order:1}.waiting-message{order:2}.players-heading{order:3}.room-roster{order:4}.lobby-blocker{order:5}.lobby-settings{order:6}.recommended-toggle{order:7}.loadout-panel:has(.lobby-heading)>.button-row{order:8}.board-tile:focus-visible{z-index:6;outline-offset:-3px}.toast{top:calc(env(safe-area-inset-top) + 52px);bottom:auto}}@media(max-width:360px)and (orientation:portrait){.opening-roll-overlay{padding:5px}.opening-roll-card,.opening-roll-overlay.resolved .opening-roll-card{width:calc(100% - 10px);max-height:calc(100% - 10px);gap:4px;padding:6px}.opening-roll-card .eyebrow{font-size:.56rem}.opening-roll-card h2{font-size:.92rem}.opening-roll-card>p{font-size:.58rem;line-height:1.15}.opening-roll-players{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px}.opening-roll-player{gap:3px;padding:2px 3px}.opening-roll-player strong{font-size:.56rem}.opening-roll-player .mini-token{width:8px;height:8px}.opening-roll-player .die-face{width:28px;height:28px;min-height:28px;padding:2px}.opening-roll-button,.opening-roll-wait{min-height:32px;font-size:.68rem}}@media(max-width:340px)and (orientation:portrait){.opening-roll-players{grid-template-columns:repeat(2,minmax(0,1fr))}.passive-shield small{display:none}}@media(max-width:380px){.play-shell .turn-roster{grid-template-columns:1fr}.brand h1{font-size:.98rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.board-connector,.snake-path,.ladder-path{transition:none}}@media(prefers-contrast:more){button,input,select,.power-chip{border-color:currentColor}.board-connector,.snake-path,.ladder-path{opacity:.58}.board-connector.is-active,.snake-path.is-active,.ladder-path.is-active{opacity:1}}@media(forced-colors:active){.mode-card,.panel,.game-board-wrap,.turn-panel{border:1px solid CanvasText}.board-connector,.snake-path,.ladder-path{opacity:1}}.play-shell{height:100dvh;min-height:0;overflow:hidden}.play-shell .topbar{min-height:48px}.play-shell .brand p,.play-shell .topbar-actions>span:not(.status-dot){display:none}.play-shell .play-page{height:calc(100dvh - 62px);min-height:0;grid-template-columns:minmax(0,1fr) clamp(260px,24vw,350px);grid-template-rows:minmax(0,1fr);align-content:stretch;gap:clamp(8px,1vw,14px);overflow:hidden}.play-shell .board-column{display:grid;min-height:0;place-items:center;height:100%;grid-template-rows:minmax(0,1fr);align-content:stretch}.play-shell .game-board-wrap{width:auto;height:100%;max-width:100%;aspect-ratio:10 / 11.2;padding:6px}.play-shell .game-board{width:100%;height:100%;aspect-ratio:auto}.board-tile.snake,.board-tile.ladder,.board-tile.start,.board-tile.finish{background:#f4e6c8;color:var(--ink);box-shadow:none}.board-tile.snake:nth-child(2n),.board-tile.ladder:nth-child(2n),.board-tile.start:nth-child(2n),.board-tile.finish:nth-child(2n){background:#ead7b3}.board-content-cell.snake,.board-content-cell.ladder,.board-content-cell.start,.board-content-cell.finish{color:var(--ink)}.snake-symbol,.ladder-symbol{display:none}.play-shell .turn-panel{position:relative;align-self:center;display:grid;gap:8px;width:100%;max-height:100%;padding:10px;overflow:visible;border:1px solid rgba(51,43,30,.16);border-top:4px solid var(--forest);background:var(--paper)}.play-shell .turn-panel.active-coral{border-top-color:#c34f3d}.play-shell .turn-panel.active-cobalt{border-top-color:#2f7da6}.play-shell .turn-panel.active-leaf{border-top-color:#4d8552}.play-shell .turn-panel.active-mustard{border-top-color:#ba8522}.play-shell .turn-panel.active-violet{border-top-color:#7d5ca6}.play-shell .turn-panel.active-rose{border-top-color:#b85f77}.game-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(64px,1fr));gap:8px}.control-cell{min-width:0;min-height:64px;display:grid;grid-template-columns:auto 1fr;align-items:center;justify-items:start;gap:7px;border:1px solid rgba(36,76,60,.22);border-radius:10px;background:#e3eadf;color:var(--forest-dark);padding:9px 11px;font:inherit;font-weight:850;box-shadow:0 3px #1e3d3138}button.control-cell{cursor:pointer;transition:transform .15s ease,background .18s ease,box-shadow .18s ease}button.control-cell:hover:not(:disabled){background:#d4dfcf;transform:translateY(-1px);box-shadow:0 4px #1e3d3147}button.control-cell:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #1e3d3140}.control-cell:disabled{cursor:default;opacity:.48}.control-cell.roll-cell{background:var(--terracotta);color:#fffaf0;box-shadow:0 3px 0 var(--terracotta-dark)}button.control-cell.roll-cell:hover:not(:disabled){background:var(--terracotta-dark)}.control-cell.dice-cell{cursor:default;background:var(--surface-2)}.dice-cell .die-face{width:42px;height:42px;padding:7px}.control-cell.is-armed{border-color:var(--gold);background:#f3dfaa;box-shadow:0 0 0 3px #d9a8403d,0 3px #9b7628}.use-pips{grid-column:1 / -1;display:flex;gap:5px}.use-pip{width:9px;height:9px;border:1px solid currentColor;border-radius:50%;opacity:.35}.use-pip.filled{background:currentColor;opacity:.9}.play-shell .chaos-reveal{position:absolute;z-index:7;right:10px;bottom:calc(100% + 8px);width:min(320px,calc(100vw - 20px));min-height:0;padding:9px 11px;box-shadow:var(--shadow-soft)}.play-shell .chaos-reveal .chaos-reveal-heading,.play-shell .chaos-reveal .chaos-rule{display:none}.play-shell .chaos-reveal strong,.play-shell .chaos-reveal em{font-size:.78rem}.compact-decision{display:grid;gap:9px}.compact-targets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.compact-targets button,.compact-decision-footer button{min-height:52px;display:flex;align-items:center;justify-content:center;gap:6px}.compact-targets .game-piece{width:30px;height:38px}.compact-decision-footer{display:grid;grid-template-columns:1fr 1fr;gap:7px}.hint-sheet{width:min(520px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;border-radius:16px;background:var(--paper);color:var(--ink);padding:18px;box-shadow:var(--shadow-board)}.play-shell .opening-roll-card{gap:8px;text-align:center}.play-shell .opening-roll-card h2{font-size:clamp(1.25rem,3vw,1.75rem)}.play-shell .opening-roll-wait{min-height:30px;justify-content:center;font-weight:900}.hint-heading,.hint-settings,.theme-choice{display:flex;align-items:center;justify-content:space-between;gap:8px}.hint-heading h2{margin:0}.hint-sheet ol{display:grid;gap:9px;margin:16px 0;padding-left:23px}.hint-settings{border-top:1px solid rgba(51,43,30,.15);padding-top:12px}.hint-settings button{min-height:42px;text-transform:capitalize}.theme-choice .selected{border-color:var(--terracotta);background:var(--terracotta);color:#fffaf0}html[data-theme=dark]{--paper: #24322d;--surface-2: #31433c;--ink: #fff4df;--ink-soft: #dccfb7;--forest: #82aa92;--forest-dark: #d8eadf;--shadow-soft: 0 8px 24px rgba(0, 0, 0, .28);color-scheme:dark}html[data-theme=dark] body,html[data-theme=dark] .app-shell{background:#121a17;color:var(--ink)}html[data-theme=dark] .topbar,html[data-theme=dark] .turn-panel,html[data-theme=dark] .hint-sheet{border-color:#fff4df1f;background:#24322d}html[data-theme=dark] .control-cell{border-color:#fff4df29;background:#31433c;color:#fff4df}html[data-theme=dark] .dice-cell{background:#3b4c45}@media(prefers-color-scheme:dark){html[data-theme=system]{--paper: #24322d;--surface-2: #31433c;--ink: #fff4df;--ink-soft: #dccfb7;--forest: #82aa92;--forest-dark: #d8eadf;color-scheme:dark}html[data-theme=system] body,html[data-theme=system] .app-shell{background:#121a17;color:var(--ink)}html[data-theme=system] .topbar,html[data-theme=system] .turn-panel,html[data-theme=system] .hint-sheet{background:#24322d;border-color:#fff4df1f}html[data-theme=system] .control-cell{background:#31433c;color:#fff4df}}@media(max-width:820px)and (orientation:portrait){.play-shell{height:100dvh;min-height:0;padding:max(4px,env(safe-area-inset-top)) 0 max(4px,env(safe-area-inset-bottom));overflow:hidden}.play-shell .topbar{height:42px;min-height:42px;margin:0 8px;padding:0}.play-shell .brand h1{font-size:clamp(.92rem,4.4vw,1.12rem)}.play-shell .play-page{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;height:calc(100dvh - 50px - env(safe-area-inset-top) - env(safe-area-inset-bottom));gap:5px;overflow:hidden}.play-shell .board-column{display:grid;min-height:0;order:0;place-items:center}.play-shell .game-board-wrap{width:auto;height:100%;max-width:100vw;max-height:100%;aspect-ratio:10 / 11.2;border-radius:0;padding:4px}.play-shell .turn-panel{order:1;display:block;width:calc(100vw - 12px);margin:0 6px;padding:5px;border-top-width:3px;border-radius:9px}.game-control-grid{grid-template-rows:repeat(3,minmax(48px,1fr));gap:5px}.control-cell{min-height:48px;padding:5px 9px;border-radius:8px}.dice-cell .die-face{width:34px;height:34px;padding:4px}.use-pips{position:absolute;right:8px;bottom:6px}button.control-cell{position:relative}.play-shell .chaos-reveal{right:0;bottom:calc(100% + 5px)}}:root{color-scheme:light;font-family:Gaegu,Segoe Print,cursive;font-size:20px;--font-display: "Gaegu", "Segoe Print", cursive;--font-body: "Gaegu", "Segoe Print", cursive;--wallpaper-pattern: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201672%20941'%20preserveAspectRatio='xMidYMid%20slice'%20shape-rendering='geometricPrecision'%3e%3cdefs%3e%3c!--%20Smooth%20vectors%20fitted%20to%20the%20approved%20wallpaper%20silhouettes.%20--%3e%3cg%20id='ladder'%20fill='none'%20stroke='%23fff'%20stroke-width='3'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M60.5%20.5%20.5%2060.5M74.5%2014.5%2014.5%2074.5'/%3e%3cpath%20d='M54%207%2068%2021M44.5%2016.5%2058.5%2030.5M35%2026%2049%2040M26%2035%2040%2049M16.5%2044.5%2030.5%2058.5M7%2054%2021%2068'/%3e%3c/g%3e%3cpath%20id='snake'%20fill='%23fff'%20d='M67.9%203.55C66.8%203.45%2066%203.05%2065.5%202.35C65.1%201.75%2065.25.95%2065.85.15C64.95.45%2064.4%201.2%2064.4%202.05C64.4%202.85%2063.45%203.5%2062%203.7C60.1%202.1%2057.6.9%2054.4.9C50.1.9%2046.3%203.2%2043.9%206.9C41.6%2010.3%2041.2%2015.1%2041.7%2019.7C42.1%2024.2%2044.9%2028.3%2043.7%2031.2C42.4%2034.3%2039.5%2035.5%2036.7%2034.7C31.9%2033.4%2027.4%2030.1%2022.4%2030.8C17.9%2031.4%2015.2%2035.1%2015.7%2039.7C16.1%2043.6%2019.8%2047.1%2019.1%2050.3C18.5%2053.1%2014.4%2051.5%209.5%2052.1C6.7%2052.5%204.8%2057.4%200%2061C5.5%2060%207.3%2056.8%2010.1%2056.2C13.3%2055.5%2017.4%2058.3%2021.6%2056.7C25.1%2055.3%2027%2052.2%2026.2%2048.1C25.5%2044.7%2022.4%2042.4%2023%2039.7C23.7%2036.8%2026.2%2036.2%2029.2%2037.7C32.7%2039.4%2035.7%2041.7%2040.8%2041.2C46.8%2040.6%2050.2%2037%2050.3%2031.7C50.4%2027.1%2047.3%2023.1%2047.4%2019.5C47.5%2016.6%2049.5%2016%2052.5%2015.6C56.8%2015%2059.7%2011.3%2060.1%207.4C60.3%205.8%2061%204.7%2062%204.3C64.3%204.2%2066.4%204.5%2067.9%204.45C68.25%204.44%2068.4%204.23%2068.4%204C68.4%203.77%2068.2%203.58%2067.9%203.55Z'/%3e%3cpattern%20id='motifs'%20width='257'%20height='941'%20patternUnits='userSpaceOnUse'%3e%3cuse%20href='%23ladder'%20x='131'%20y='-21'/%3e%3cuse%20href='%23snake'%20x='242'%20y='7'/%3e%3cuse%20href='%23snake'%20x='-15'%20y='7'/%3e%3cuse%20href='%23ladder'%20x='33'%20y='74'/%3e%3cuse%20href='%23snake'%20x='144'%20y='101'/%3e%3cuse%20href='%23ladder'%20x='192'%20y='168'/%3e%3cuse%20href='%23ladder'%20x='-65'%20y='168'/%3e%3cuse%20href='%23snake'%20x='46'%20y='195'/%3e%3cuse%20href='%23ladder'%20x='94'%20y='262'/%3e%3cuse%20href='%23snake'%20x='205'%20y='289'/%3e%3cuse%20href='%23snake'%20x='-52'%20y='289'/%3e%3cuse%20href='%23ladder'%20x='253'%20y='356'/%3e%3cuse%20href='%23ladder'%20x='-4'%20y='356'/%3e%3cuse%20href='%23snake'%20x='107'%20y='383'/%3e%3cuse%20href='%23ladder'%20x='155'%20y='450'/%3e%3cuse%20href='%23snake'%20x='9'%20y='477'/%3e%3cuse%20href='%23ladder'%20x='57'%20y='544'/%3e%3cuse%20href='%23snake'%20x='168'%20y='572'/%3e%3cuse%20href='%23ladder'%20x='216'%20y='638'/%3e%3cuse%20href='%23ladder'%20x='-41'%20y='638'/%3e%3cuse%20href='%23snake'%20x='70'%20y='666'/%3e%3cuse%20href='%23ladder'%20x='118'%20y='733'/%3e%3cuse%20href='%23snake'%20x='229'%20y='760'/%3e%3cuse%20href='%23snake'%20x='-28'%20y='760'/%3e%3cuse%20href='%23ladder'%20x='20'%20y='827'/%3e%3cuse%20href='%23snake'%20x='131'%20y='854'/%3e%3cuse%20href='%23ladder'%20x='179'%20y='921'/%3e%3c/pattern%3e%3c/defs%3e%3crect%20width='1672'%20height='941'%20fill='url(%23motifs)'/%3e%3c/svg%3e");--wallpaper-base: #eddab7;--wallpaper-motif: #a47f4b;--wallpaper-motif-opacity: .92;--wallpaper-vignette: rgba(80, 49, 21, .08);--bg: #ead9b7;--surface: #f8eed9;--surface-2: #eeddbb;--surface-3: #e0c79a;--paper: #f8eed9;--paper-bright: #fff8e8;--paper-deep: #dbc092;--ink: #2c2117;--ink-soft: #6d5941;--muted: #6d5941;--border: rgba(69, 48, 27, .22);--terracotta: #b84f32;--terracotta-hover: #9d4029;--terracotta-dark: #6f2c20;--forest: #315c48;--forest-dark: #1d4334;--gold: #d6a73d;--gold-dark: #6f4b11;--focus: #176b5b;--board-cell-a: #f2e1bd;--board-cell-b: #e8d2a9;--board-chaos: #d9a43a;--board-grid: #294b3d;--board-number: #251b12;--panel-glass: rgba(248, 238, 217, .94);--header-glass: rgba(248, 238, 217, .86);--shadow-soft: 0 8px 24px rgba(75, 45, 18, .14);--shadow-board: 0 14px 34px rgba(50, 31, 15, .28);--theme-motion: .72s cubic-bezier(.4, 0, .2, 1)}html[data-theme=dark]{color-scheme:dark;--wallpaper-base: #35281c;--wallpaper-motif: #8f6839;--wallpaper-motif-opacity: .82;--wallpaper-vignette: rgba(0, 0, 0, .12);--bg: #2b1d13;--surface: #3b281b;--surface-2: #4a3220;--surface-3: #5a3c26;--paper: #3b281b;--paper-bright: #503620;--paper-deep: #24170f;--ink: #fff0d3;--ink-soft: #d8bd94;--muted: #d8bd94;--border: rgba(238, 192, 124, .25);--terracotta: #ce6847;--terracotta-hover: #a64a34;--terracotta-dark: #8f3e2a;--forest: #83ad8d;--forest-dark: #d5ead7;--gold: #d7a54b;--gold-dark: #f2d28d;--focus: #ffd184;--board-cell-a: #4a3422;--board-cell-b: #543a24;--board-chaos: #bd8432;--board-grid: #c8965b;--board-number: #fff1d2;--panel-glass: rgba(56, 37, 24, .95);--header-glass: rgba(48, 31, 20, .88);--shadow-soft: 0 9px 26px rgba(0, 0, 0, .3);--shadow-board: 0 16px 38px rgba(0, 0, 0, .42)}html,body,#root{min-width:320px;min-height:100%;background-color:var(--bg)}body{font-family:var(--font-body);background-color:var(--bg);color:var(--ink);transition:background-color var(--theme-motion),color var(--theme-motion)}#root{background:transparent;position:relative;isolation:isolate}#root:before,#root:after{content:"";position:fixed;inset:0;pointer-events:none}#root:before{z-index:-2;background-color:var(--wallpaper-base);box-shadow:inset 0 0 clamp(80px,16vw,190px) var(--wallpaper-vignette);transition:background-color var(--theme-motion),box-shadow var(--theme-motion)}#root:after{z-index:-1;background-color:var(--wallpaper-motif);opacity:var(--wallpaper-motif-opacity);-webkit-mask-image:var(--wallpaper-pattern);-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;-webkit-mask-size:cover;mask-image:var(--wallpaper-pattern);mask-position:center;mask-repeat:no-repeat;mask-size:cover;transition:background-color var(--theme-motion),opacity var(--theme-motion)}button,input,select,textarea{font-family:var(--font-body)}button{font-size:1rem}h1,h2,h3,.room-code-panel>strong{font-family:var(--font-display);letter-spacing:0}h1,h2,h3{font-weight:700}button:disabled{opacity:.66}.app-shell,.play-shell,html[data-theme=dark] .app-shell{background:transparent;color:var(--ink)}html[data-theme=dark] body{background-color:var(--bg);color:var(--ink)}:where(.topbar,.theme-toggle,.sound-toggle,.panel,.setup-panel,.loadout-panel,.game-board-wrap,.game-board,.board-tile,.board-content-cell,.control-cell,.die-face,.chaos-reveal,.opening-roll-card,.opening-roll-player,.hint-sheet,.exit-dialog,input,select,textarea){transition:background-color var(--theme-motion),border-color var(--theme-motion),color var(--theme-motion),box-shadow var(--theme-motion)}.topbar{border:0;border-radius:0;background:transparent;padding:4px 2px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme=dark] .topbar{border-color:transparent;background:transparent;color:var(--ink)}.brand h1,.brand p,.topbar-actions,html[data-theme=dark] .brand h1,html[data-theme=dark] .brand p{color:var(--ink)}.brand p{color:var(--ink-soft);font-family:var(--font-display);font-size:1.04rem;font-weight:400;letter-spacing:.01em;line-height:1}.brand-mark{background:var(--gold);box-shadow:0 3px #462a1347}.brand-mark img{width:76%;height:76%}.topbar-actions{gap:8px}.theme-toggle,.sound-toggle{min-height:36px;border:1px solid var(--border);background:var(--paper-bright);color:var(--forest-dark);box-shadow:0 2px #3421111f}.theme-toggle{padding-inline:11px;border-radius:999px}.theme-toggle:hover:not(:disabled),.sound-toggle:hover:not(:disabled){border-color:var(--forest);background:var(--surface-3);color:var(--ink)}.status-dot{background:var(--forest)}.mode-page,.setup-page,.loadouts-page{position:relative}.mode-intro{width:min(100%,980px);max-width:980px;justify-items:start;margin-inline:auto;border:0;border-radius:0;background:transparent;padding:0;box-shadow:none;text-align:left;-webkit-backdrop-filter:none;backdrop-filter:none}.mode-intro .mode-proof{justify-content:flex-start;flex-wrap:wrap}.app-shell:has(.mode-page),.app-shell.compact-home{height:auto;min-height:100dvh;overflow-x:hidden;overflow-y:auto}.mode-page{align-content:start;padding-block:clamp(16px,2.4vh,28px)}.mode-intro h2,.screen-heading h2,.mode-card h3{color:var(--ink)}.mode-intro p,.screen-heading p,.mode-card p,.recommended-callout p{color:var(--ink-soft)}.eyebrow,.mode-kicker{color:var(--terracotta-dark)}html[data-theme=dark] .eyebrow,html[data-theme=dark] .mode-kicker{color:#f1bc91}.mode-card,.panel,.login-form,.setup-panel,.loadout-panel{border:1px solid var(--border);background:var(--panel-glass);color:var(--ink);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mode-card{transition:background-color .56s cubic-bezier(.22,1,.36,1),color .5s ease,border-color .5s ease,box-shadow .56s ease,transform .5s cubic-bezier(.22,1,.36,1)}.mode-card :is(h3,p,.mode-kicker,.mode-icon,button,button svg){transition-duration:.46s}@media(hover:hover)and (pointer:fine){.mode-card:hover{border-color:color-mix(in srgb,var(--terracotta) 68%,var(--border));background:var(--terracotta-hover);color:#fff8e9;transform:translateY(-3px)}.mode-card:hover h3,.mode-card:hover p,.mode-card:hover .mode-kicker{color:#fff8e9}}.mode-card.is-selected{background:var(--terracotta);color:#fff8e9}.mode-card.is-selected :is(h3,p,.mode-kicker){color:#fff8e9}.mode-icon,.mode-icon.online,.mode-icon.bot,.mode-icon.join{background:var(--surface-3);color:var(--forest-dark)}.primary-button,.mode-card-cta,.join-inline button{border-color:var(--terracotta);background:var(--terracotta);color:#fffaf0;box-shadow:0 3px 0 var(--terracotta-dark)}.primary-button:hover:not(:disabled),.mode-card-cta:hover:not(:disabled),.join-inline button:hover:not(:disabled){border-color:var(--terracotta-hover);background:var(--terracotta-hover);color:#fffaf0}.primary-button svg,.mode-card-cta svg,.join-inline button svg{color:currentColor}.quiet-button,.button-row>button:not(.primary-button):not(.danger-button){border-color:var(--border);background:var(--surface-2);color:var(--ink)}input,select,textarea{border-color:var(--border);background:var(--paper-bright);color:var(--ink)}input::placeholder{color:var(--ink-soft);opacity:.78}label,.hint,.waiting-message{color:var(--ink-soft)}.game-board-wrap,.play-shell .game-board-wrap{border-color:var(--board-grid);background:var(--board-grid);box-shadow:var(--shadow-board)}.game-board,.play-shell .game-board{border-color:var(--board-grid);background:var(--board-grid)}.board-tile,.board-tile.normal,.board-tile.snake,.board-tile.ladder,.board-tile.start,.board-tile.finish,.board-tile.snake:nth-child(2n),.board-tile.ladder:nth-child(2n),.board-tile.start:nth-child(2n),.board-tile.finish:nth-child(2n){border-color:color-mix(in srgb,var(--board-grid) 45%,transparent);background:var(--board-cell-a);color:var(--board-number);box-shadow:none}.board-tile:nth-child(2n),.board-tile.normal:nth-child(2n),.board-tile.snake:nth-child(2n),.board-tile.ladder:nth-child(2n),.board-tile.start:nth-child(2n),.board-tile.finish:nth-child(2n){background:var(--board-cell-b)}.board-tile.start{box-shadow:inset 0 0 0 2px var(--forest)}.board-tile.finish{box-shadow:inset 0 0 0 2px var(--gold)}.board-tile.chaos{background:var(--board-chaos);color:#25190b}.board-content-cell,.board-content-cell.snake,.board-content-cell.ladder,.board-content-cell.start,.board-content-cell.finish{color:var(--board-number)}.board-content-cell.chaos{color:#25190b}.tile-number{color:currentColor;font-family:var(--font-body);font-weight:850;text-shadow:0 1px 2px rgba(255,248,226,.52)}html[data-theme=dark] .tile-number{text-shadow:0 1px 2px rgba(15,8,4,.85)}.natural-board-connections .natural-connector:not(.is-muted){opacity:1!important}.natural-board-connections .natural-connector.is-muted{opacity:.7!important}.natural-board-connections .natural-connector.is-active{opacity:1!important}.play-shell .turn-panel,html[data-theme=dark] .play-shell .turn-panel{border-color:var(--border);background:var(--panel-glass);color:var(--ink);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-cell,html[data-theme=dark] .control-cell{border-color:var(--border);background:var(--surface-2);color:var(--forest-dark);box-shadow:0 3px color-mix(in srgb,var(--paper-deep) 68%,transparent)}button.control-cell:hover:not(:disabled),html[data-theme=dark] button.control-cell:hover:not(:disabled){border-color:var(--forest);background:var(--surface-3);color:var(--ink)}.control-cell.roll-cell,html[data-theme=dark] .control-cell.roll-cell{border-color:var(--terracotta-dark);background:var(--terracotta);color:#fff9ec;box-shadow:0 3px 0 var(--terracotta-dark)}button.control-cell.roll-cell:hover:not(:disabled),html[data-theme=dark] button.control-cell.roll-cell:hover:not(:disabled){background:var(--terracotta-hover);color:#fff9ec}.control-cell.dice-cell,html[data-theme=dark] .control-cell.dice-cell{border-style:dashed;background:color-mix(in srgb,var(--paper-bright) 68%,transparent);color:var(--ink-soft);box-shadow:none}.control-cell.passive-shield:disabled{opacity:.76}.control-cell.passive-shield.no-chaos:disabled{opacity:.48}.control-cell small{color:currentColor;font-size:.72rem}.aftergame-results{min-height:100%;display:flex;flex-direction:column;justify-content:center;gap:12px;color:var(--ink)}.aftergame-heading{display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--border);padding-bottom:11px}.aftergame-heading>div{min-width:0;display:grid;gap:1px}.aftergame-heading span:not(.aftergame-crown){color:var(--terracotta);font-size:.67rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.aftergame-heading h2{margin:0;overflow:hidden;color:var(--ink);font-family:var(--font-display);font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.aftergame-heading h2:focus{outline:none}.aftergame-crown{width:44px;height:44px;display:grid;flex:0 0 44px;place-items:center;border-radius:12px;background:var(--gold);color:#2b1d0f;box-shadow:0 3px color-mix(in srgb,var(--gold-dark) 62%,transparent)}.aftergame-standings{display:grid;gap:6px;margin:0;padding:0;list-style:none}.aftergame-standings li{min-width:0;min-height:48px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);padding:5px 9px}.aftergame-standings li.is-winner{border-color:color-mix(in srgb,var(--gold) 78%,var(--border));background:color-mix(in srgb,var(--gold) 34%,var(--surface))}.aftergame-piece{width:34px;height:38px;display:grid;place-items:center}.aftergame-piece .board-piece{position:static!important;width:27px!important;height:36px!important;transform:none!important}.aftergame-player-copy{min-width:0;display:grid;gap:1px}.aftergame-player-copy strong{overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.aftergame-player-copy small{color:var(--ink-soft);font-size:.72rem}.aftergame-standings li>b{color:var(--ink-soft);font-size:.8rem}.aftergame-home{width:100%;min-height:48px;border-color:var(--terracotta-dark);background:var(--terracotta);color:#fff9ec;box-shadow:0 3px 0 var(--terracotta-dark)}.aftergame-home:hover:not(:disabled){background:var(--terracotta-hover);color:#fff9ec}.die-face,html[data-theme=dark] .die-face{border:1px solid color-mix(in srgb,var(--ink) 20%,transparent);background:#fff8e8;box-shadow:0 3px #3d261238}.pip.visible,html[data-theme=dark] .pip.visible{background:#2c2117;box-shadow:none}.play-page[data-phase=target_decision] .chaos-reveal,.play-page[data-phase=shield_decision] .chaos-reveal{display:none}.compact-decision{display:grid;gap:10px;color:var(--ink)}.decision-heading{display:flex;align-items:center;gap:9px}.decision-heading>div{display:grid;gap:1px}.decision-heading small{color:var(--terracotta);font-size:.66rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.decision-heading strong{font-family:var(--font-display);font-size:1.15rem}.decision-icon{width:38px;height:38px;display:grid;flex:0 0 38px;place-items:center;border-radius:10px;background:var(--gold);color:#2b1d0f}.compact-decision>p,.decision-waiting{color:var(--ink-soft);font-size:.82rem}.compact-targets,.shield-choice-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.swap-target-card{min-width:0;min-height:58px;display:grid!important;grid-template-columns:40px minmax(0,1fr);justify-content:stretch!important;gap:8px!important;border:1px solid var(--border);background:var(--surface-2);color:var(--ink);padding:6px 8px;text-align:left}.target-piece{width:38px;height:44px;display:grid;place-items:center}.target-piece .board-piece{position:static!important;width:28px!important;height:40px!important;transform:none!important}.target-copy{min-width:0;display:grid;align-content:center;gap:2px}.target-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.target-copy small{color:var(--ink-soft)}.stay-put-button,.take-hit-button{width:100%;border-color:var(--border);background:transparent;color:var(--ink)}.shield-use-button{border-color:var(--forest);background:var(--forest);color:#fff9ec}.compact-decision-footer{border-top:1px solid var(--border);padding-top:8px}.compact-decision-footer button{min-height:44px;border-color:var(--border);background:transparent;color:var(--ink-soft)}.compact-decision-footer .compact-exit-button{border-color:color-mix(in srgb,var(--terracotta) 48%,var(--border));background:color-mix(in srgb,var(--terracotta) 14%,transparent);color:var(--terracotta-dark)}.control-cell.exit-cell{border-color:color-mix(in srgb,var(--terracotta) 48%,var(--border));background:color-mix(in srgb,var(--terracotta) 18%,var(--surface-2));color:var(--terracotta-dark);box-shadow:0 3px color-mix(in srgb,var(--terracotta-dark) 38%,transparent)}button.control-cell.exit-cell:hover:not(:disabled){background:color-mix(in srgb,var(--terracotta) 28%,var(--surface-2));color:var(--terracotta-dark)}html[data-theme=dark] .compact-decision-footer .compact-exit-button,html[data-theme=dark] .control-cell.exit-cell{border-color:color-mix(in srgb,var(--terracotta) 62%,var(--border));background:color-mix(in srgb,var(--terracotta) 26%,var(--surface-2));color:#ffd7bd;box-shadow:0 3px color-mix(in srgb,var(--terracotta-dark) 58%,transparent)}html[data-theme=dark] button.control-cell.exit-cell:hover:not(:disabled){border-color:color-mix(in srgb,var(--terracotta) 72%,var(--border));background:color-mix(in srgb,var(--terracotta) 38%,var(--surface-2));color:#fff0dd}.chaos-reveal{border-color:var(--border);background:var(--panel-glass);color:var(--ink)}.chaos-reveal strong,.chaos-reveal em,.chaos-reveal p{color:var(--ink)}.modal-backdrop{background:#1c1109ad;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.hint-sheet,.exit-dialog,html[data-theme=dark] .hint-sheet,html[data-theme=dark] .exit-dialog{border:1px solid var(--border);background:var(--paper);color:var(--ink);box-shadow:0 22px 60px #11090475}.hint-sheet h2,.exit-dialog h2,.hint-sheet li,.hint-sheet button,.exit-dialog button{color:var(--ink)}.exit-dialog p,.help-theme-note{color:var(--ink-soft)}.hint-settings{border-color:var(--border)}.hint-settings button,.hint-heading button,.exit-dialog .button-row>button:not(.danger-button){border-color:var(--border);background:var(--surface-2)}.exit-dialog .danger-button{border-color:var(--terracotta-dark);background:var(--terracotta);color:#fff9ec}.opening-roll-card,html[data-theme=dark] .opening-roll-card{border-color:var(--forest);background:var(--paper);color:var(--ink)}.opening-roll-card h2,.opening-roll-card>p,.opening-roll-wait{color:var(--ink)}.opening-roll-player{border-color:var(--border);background:var(--surface-2);color:var(--ink)}.opening-roll-player.current{background:color-mix(in srgb,var(--terracotta) 25%,var(--surface-2))}.opening-roll-player.leader,.opening-roll-player.winner{background:color-mix(in srgb,var(--gold) 46%,var(--paper));color:var(--ink)}.rolling-curtain{position:fixed;inset:0;z-index:9999;overflow:hidden;pointer-events:auto}.rolling-curtain-sheet{position:absolute;inset:0;display:grid;place-items:center;isolation:isolate;overflow:hidden;background-color:var(--wallpaper-base);box-shadow:inset 0 0 clamp(80px,16vw,190px) var(--wallpaper-vignette),-18px 0 42px #2013094d;will-change:transform;transition:background-color var(--theme-motion),box-shadow var(--theme-motion)}.rolling-curtain-sheet:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-color:var(--wallpaper-motif);opacity:var(--wallpaper-motif-opacity);-webkit-mask-image:var(--wallpaper-pattern);-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;-webkit-mask-size:cover;mask-image:var(--wallpaper-pattern);mask-position:center;mask-repeat:no-repeat;mask-size:cover;transition:background-color var(--theme-motion),opacity var(--theme-motion)}.rolling-curtain.is-closing .rolling-curtain-sheet{animation:curtain-close .48s cubic-bezier(.68,0,.32,1) both}.rolling-curtain.is-closed .rolling-curtain-sheet{transform:translate(0)}.rolling-curtain.is-opening .rolling-curtain-sheet{animation:curtain-open .52s cubic-bezier(.68,0,.32,1) both}.rolling-curtain-roller{position:absolute;left:-18px;top:-2%;width:40px;height:104%;border-right:3px solid rgba(255,240,204,.66);border-radius:50%;background:linear-gradient(90deg,#6e421e,#c18b4e 50%,#6d401d);box-shadow:10px 0 24px #26150952;z-index:1}.rolling-curtain-copy{display:grid;justify-items:center;gap:5px;border:1px solid var(--border);position:relative;z-index:1;border-radius:18px;background:var(--panel-glass);color:var(--ink);padding:18px 24px;box-shadow:var(--shadow-board);text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.rolling-curtain-copy img{width:48px;height:48px}.rolling-curtain-copy strong{font-family:var(--font-display);font-size:clamp(1.35rem,4vw,2.1rem)}.rolling-curtain-copy span{color:var(--ink-soft);font-weight:650}@keyframes curtain-close{0%{transform:translate(104%)}to{transform:translate(0)}}@keyframes curtain-open{0%{transform:translate(0)}to{transform:translate(104%)}}@media(max-width:719px){.app-shell:has(.mode-page),.app-shell.compact-home{height:auto;min-height:100dvh;overflow:visible}.mode-page{align-content:start;padding-bottom:18px}.mode-intro{width:100%;padding:0 3px}.mode-intro .eyebrow{display:none}.mode-intro p{display:block;font-size:.86rem}.mode-intro .mode-proof{display:flex;justify-content:flex-start;gap:3px 13px;font-size:.72rem}.mode-intro h2{font-size:clamp(1.35rem,7vw,1.8rem)}.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;gap:8px}.mode-card{min-height:202px;gap:8px;padding:11px}.mode-card p{display:block;font-size:.82rem;line-height:1.3}.mode-card h3{font-size:clamp(1rem,5vw,1.18rem)}.mode-icon{width:34px;height:34px}.mode-card-actions{display:grid;grid-template-columns:1fr;gap:6px}.mode-card :is(button,input){min-height:42px;padding-inline:8px}.mode-card button{font-size:1rem}.mode-card input{font-size:.78rem}.join-inline{grid-template-columns:minmax(0,1fr) 42px}}@media(min-width:821px){.play-shell{display:flex;flex-direction:column;gap:10px;padding:10px clamp(10px,1.4vw,18px)}.play-shell .topbar{min-height:52px;flex:0 0 auto;margin:0;padding:8px 10px}.play-shell .play-page{min-height:0;height:auto;flex:1 1 auto}.play-shell .game-board-wrap{width:min(100%,calc(100dvh - 92px),760px)}}@media(max-width:479px){.mode-grid{grid-template-columns:1fr}.mode-card{min-height:160px;gap:10px;padding:14px}.mode-card-actions{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:400px){.mode-card-actions{grid-template-columns:1fr}}@media(max-width:560px){.mode-label{display:none}}@media(min-width:720px)and (max-height:800px){.mode-page{gap:12px;padding-block:12px}.mode-intro{gap:0}.mode-intro .eyebrow{display:none}.mode-intro p{display:block}.mode-intro .mode-proof{display:flex}.mode-intro h2{font-size:clamp(1.8rem,3.2vw,2.4rem)}.mode-grid{gap:10px}.mode-card{min-height:0;gap:9px;padding:15px 18px}.mode-card p{margin-top:4px;font-size:.82rem}}@media(max-width:820px)and (orientation:portrait){.play-shell .topbar{border-radius:10px;padding-inline:7px}.play-shell .brand p,.play-shell .topbar-actions>span:not(.status-dot),.play-shell .theme-toggle span{display:none}.play-shell .theme-toggle,.play-shell .sound-toggle{width:40px;min-height:40px;flex-basis:40px;padding:0}.play-shell .turn-panel{border-color:var(--border);background:var(--panel-glass)}.game-control-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(48px,1fr))}.control-cell{font-size:1rem}.compact-decision{padding:3px}.rolling-curtain-copy{max-width:calc(100vw - 36px);padding:15px 19px}}@media(min-width:480px)and (max-width:639px){.mode-grid{grid-template-columns:1fr}}@media(max-width:360px){.app-shell:not(.play-shell) .topbar-actions>span:not(.status-dot),.theme-toggle span{display:none}.theme-toggle{width:36px;padding:0}.mode-card{min-height:194px;padding:9px}.mode-card h3{font-size:.96rem}.mode-card button{gap:4px;padding-inline:5px;white-space:nowrap}.mode-kicker{font-size:.58rem}}.mode-page{gap:clamp(9px,1.6vh,15px);padding-block:clamp(8px,1.8vh,18px)}.mode-intro{gap:0;margin-bottom:3px}.mode-intro .mode-proof{width:100%;gap:clamp(10px,2.5vw,26px);font-size:.86rem}.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;gap:clamp(8px,1.4vw,14px)}.mode-card{min-height:clamp(176px,21vh,200px);gap:9px;padding:clamp(14px,1.8vw,19px)}.mode-card-topline{min-height:36px}.mode-card .mode-kicker{font-size:.83rem;letter-spacing:.035em;text-transform:none}.mode-card h3{margin-top:0;font-size:clamp(1.23rem,1.98vw,1.52rem)}.mode-card p{margin-top:4px;font-size:clamp(.88rem,1.38vw,.99rem);line-height:1.25}@media(max-width:319px){.mode-intro .mode-proof{flex-wrap:wrap;justify-content:flex-start}.mode-page .mode-grid{grid-template-columns:1fr}.mode-page .mode-card{min-height:162px}}.join-inline{grid-template-columns:minmax(0,1fr) minmax(76px,auto);gap:0;overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--paper-bright);box-shadow:0 3px #592a1b38}.join-inline input,.join-inline button{min-height:44px;border:0;border-radius:0;box-shadow:none}.join-inline input{padding-inline:10px;letter-spacing:.08em}.join-inline button{width:auto;min-width:76px;gap:5px;border-left:1px solid var(--border);padding-inline:10px}@media(max-width:639px){.mode-page{gap:8px;padding-block:5px 14px}.mode-intro{padding-inline:2px}.mode-intro .mode-proof{flex-wrap:nowrap;justify-content:space-between;gap:6px;font-size:.79rem}.mode-intro .mode-proof span{gap:3px;white-space:nowrap}.mode-intro .mode-proof svg{width:14px;height:14px}.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;gap:8px}.mode-card{min-height:clamp(172px,46vw,194px);gap:6px;padding:clamp(10px,3vw,14px)}.mode-card-topline{min-height:32px}.mode-icon{width:32px;height:32px}.mode-icon svg{width:20px;height:20px}.mode-card h3{font-size:clamp(1.1rem,6.05vw,1.27rem);line-height:1.02}.mode-card p{min-height:2.35em;display:-webkit-box;overflow:hidden;margin-top:4px;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:clamp(.79rem,4.4vw,.88rem);line-height:1.18}.mode-card-actions{grid-template-columns:minmax(0,1.16fr) minmax(0,.84fr)}.mode-card-actions>:is(.primary-button,.quiet-button),.mode-card-cta,.join-inline :is(input,button){min-height:44px;font-size:clamp(.84rem,4.4vw,.92rem)}.mode-card-actions>:is(.primary-button,.quiet-button){padding-inline:6px}.mode-card-cta{padding-inline:9px}.join-inline{grid-template-columns:minmax(0,1fr) minmax(54px,.44fr)}.join-inline input{min-width:0;padding-inline:7px;letter-spacing:.045em}.join-inline button{min-width:54px;padding-inline:6px}}@media(max-width:479px){.mode-card .mode-kicker{display:none}.mode-card-actions svg,.join-inline button svg{display:none}}@media(max-width:340px){.mode-intro .mode-proof{font-size:.75rem}.mode-card{min-height:170px;padding:9px}.mode-card h3{font-size:1.06rem}.mode-card p,.mode-card-actions>:is(.primary-button,.quiet-button),.mode-card-cta,.join-inline :is(input,button){font-size:.77rem}}@media(prefers-reduced-motion:reduce){#root:before,#root:after,:where(.topbar,.theme-toggle,.sound-toggle,.panel,.setup-panel,.loadout-panel,.game-board-wrap,.game-board,.board-tile,.board-content-cell,.control-cell,.die-face,.chaos-reveal,.opening-roll-card,.opening-roll-player,.hint-sheet,.exit-dialog,input,select,textarea){transition-duration:1ms!important}.rolling-curtain.is-opening{pointer-events:none}.rolling-curtain.is-closing .rolling-curtain-sheet,.rolling-curtain.is-opening .rolling-curtain-sheet{animation-duration:1ms!important}}:root{--teal: #3f887f}.teal{background:var(--teal)}.play-shell .turn-panel.active-teal{border-top-color:var(--teal)}.brand-wordmark{min-width:0;max-width:100%;overflow:hidden;color:var(--ink);line-height:1;white-space:nowrap}.brand-full{display:inline;white-space:nowrap}.wordmark-letter{width:.82em;height:1.18em;display:inline-block;overflow:visible;margin-inline:.01em;vertical-align:-.27em}.wordmark-snake>path:first-child{fill:none;stroke:var(--forest);stroke-width:3.6;stroke-linecap:round}.wordmark-snake .snake-head-cap{fill:var(--forest);stroke:none}.wordmark-snake circle{fill:var(--paper-bright)}.wordmark-snake .snake-tongue-mark{fill:none;stroke:var(--terracotta);stroke-width:1.2;stroke-linecap:round}.wordmark-ladder g{fill:none;stroke-width:2.2;stroke-linecap:round}.wordmark-ladder .ladder-vertical{stroke:var(--gold-dark)}.wordmark-ladder .ladder-horizontal{stroke:var(--terracotta)}.wordmark-chaos{width:.861em;height:1.239em;vertical-align:-.32em}.wordmark-chaos .chaos-orb-disc{fill:var(--forest);opacity:.58}.wordmark-chaos .chaos-orb-ring{fill:none;stroke:var(--gold-dark);stroke-width:2}.wordmark-chaos .chaos-star-main{fill:var(--ink)}.wordmark-chaos .chaos-star-small{fill:var(--gold-dark)}.wordmark-chaos .chaos-orbit-dot{fill:var(--forest)}.brand-glyph{display:inline-flex;align-items:end;gap:2px;color:var(--ink)}.brand-glyph .wordmark-letter{width:34px;height:44px;margin:0;vertical-align:0}.topbar-actions{position:relative;z-index:1;gap:7px;border:0;background:transparent;padding:0}.topbar .brand{flex:1 1 auto;min-width:0;overflow:hidden}.mode-label{color:var(--ink-soft);font-size:.78rem;font-weight:800}.sound-toggle,.theme-toggle{flex:0 0 auto}.topbar .sound-toggle,.topbar .theme-toggle{width:44px;min-height:44px;flex-basis:44px;padding:0;border-radius:50%;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.piece-carousel{width:166px;min-height:60px;display:grid;grid-template-columns:47px 70px 47px;align-items:stretch;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);box-shadow:inset 0 1px #ffffff52}.piece-carousel button{width:100%;min-width:0;min-height:58px;display:flex;align-items:center;justify-content:center;gap:0;border:0;border-radius:0;background:transparent;padding:3px;box-shadow:none}.piece-carousel button:hover:not(:disabled){background:color-mix(in srgb,var(--surface-3) 72%,transparent);transform:none}.piece-carousel-current{position:relative;z-index:1;border-inline:1px solid var(--border)!important;background:var(--paper-bright)!important;box-shadow:0 0 0 1px #ffffff38,0 4px 12px #301f1024!important}.piece-carousel-current:hover:not(:disabled){background:var(--surface-3)!important}.piece-carousel-side{color:var(--ink-soft);opacity:.78}.piece-carousel-side:disabled,.piece-carousel-current:disabled{opacity:.48}.piece-choice-preview{position:relative;inset:auto;width:48px;height:48px;flex:0 0 48px;overflow:visible;transform:none}.piece-choice-side{position:relative;inset:auto;width:30px;height:38px;flex:0 0 30px;overflow:visible;filter:grayscale(.55) saturate(.65) opacity(.78);transform:none}.player-edit-row{grid-template-columns:minmax(0,1fr) 166px 86px}.player-color-control{min-width:0}.setup-appearance-error{margin:2px 0 0}.lobby-color-field{min-width:166px}.roster-piece{width:58px;min-height:58px;display:grid;place-items:center;border:1px solid var(--border);border-radius:10px;background:var(--paper-bright)}.resume-dialog{width:min(420px,100%);display:grid;gap:12px;border:1px solid var(--border);border-top:5px solid var(--forest);border-radius:10px;background:var(--paper);color:var(--ink);padding:20px;box-shadow:0 22px 60px #11090475}.resume-dialog>svg{color:var(--forest)}.resume-dialog p{color:var(--ink-soft)}.resume-dialog .button-row>button:not(.primary-button){border-color:var(--border);background:var(--surface-2);color:var(--ink)}.rolling-curtain-copy .brand-glyph{min-height:48px}@media(max-width:820px)and (orientation:portrait){.play-shell{gap:8px;padding-top:max(8px,env(safe-area-inset-top))}.play-shell .topbar{height:42px;min-height:42px;gap:6px;margin:0 2px;padding:0 2px}.play-shell .brand h1{font-size:clamp(.92rem,4.4vw,1.12rem)}.play-shell .play-page{height:calc(100dvh - 58px - env(safe-area-inset-top) - env(safe-area-inset-bottom));gap:8px}.play-shell .topbar-actions>.mode-label,.play-shell .theme-toggle span{display:none}.play-shell .sound-toggle,.play-shell .theme-toggle{width:40px;min-height:40px;flex-basis:40px;padding:0}.play-shell:has(.play-page:is([data-phase=target_decision],[data-phase=shield_decision],[data-phase=finished])){height:auto;min-height:100dvh;overflow-x:hidden;overflow-y:auto}.play-shell .play-page:is([data-phase=target_decision],[data-phase=shield_decision],[data-phase=finished]){height:auto;flex:0 0 auto;grid-template-rows:auto auto;align-content:start;overflow:visible}.play-shell .play-page:is([data-phase=target_decision],[data-phase=shield_decision],[data-phase=finished]) .board-column{width:100%;height:calc(100dvh - max(8px,env(safe-area-inset-top)) - max(4px,env(safe-area-inset-bottom)) - 243px)}.play-shell .play-page:is([data-phase=target_decision],[data-phase=shield_decision],[data-phase=finished]) .game-board-wrap{width:100%;height:100%;max-height:none}}@media(max-width:719px){.player-edit-row{grid-template-columns:minmax(0,1fr) 86px;gap:8px}.player-edit-row>input,.player-edit-row>.seat-kind,.player-edit-row>.player-inline-error{grid-column:1 / -1}.player-edit-row>.player-color-control{grid-column:1}.player-edit-row>button{grid-column:2}.piece-carousel,.lobby-color-field{width:100%}.piece-carousel{grid-template-columns:minmax(42px,1fr) 72px minmax(42px,1fr)}}@media(max-width:430px){.topbar{gap:8px}.brand-mark{width:34px;height:34px}.brand h1{font-size:clamp(.94rem,4.65vw,1.13rem)}.brand p,.mode-label,.theme-toggle span{display:none}.theme-toggle,.sound-toggle{width:40px;min-height:40px;flex-basis:40px;padding:0}}@media(max-width:680px){.brand-full{display:inline;min-width:0;max-width:100%}.brand h1{font-size:clamp(.8rem,3.8vw,1.15rem)}.brand{gap:0}}@media(max-width:340px){.brand h1{font-size:.8rem}.topbar .brand{gap:0}}.home-masthead{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand actions" "punchline punchline";align-items:center;column-gap:clamp(12px,2vw,24px);row-gap:5px;padding-block:clamp(7px,1.2vw,13px)}.home-masthead .brand{grid-area:brand;width:100%;overflow:visible}.home-masthead .brand h1{font-size:clamp(1.6rem,3.3vw,2.3rem);line-height:1}.masthead-punchline{grid-area:punchline;min-width:0;color:var(--ink-soft);font-family:var(--font-display);font-size:clamp(.9rem,1.65vw,1.15rem);font-weight:500;letter-spacing:.01em;line-height:1}.topbar-actions{display:flex;align-items:stretch;gap:0;overflow:hidden;border:1px solid var(--border);border-radius:999px;background:var(--panel-glass);padding:0;box-shadow:0 2px #34211124;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.home-masthead .topbar-actions{grid-area:actions}.topbar .topbar-actions>.sound-toggle,.topbar .topbar-actions>.theme-toggle{width:42px;min-width:42px;min-height:40px;flex:0 0 42px;border:0;border-radius:0;background:transparent;padding:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.topbar .topbar-actions>.theme-toggle{border-left:1px solid var(--border)}.topbar .topbar-actions>:is(.sound-toggle,.theme-toggle):hover:not(:disabled){border-color:var(--border);background:var(--surface-3);color:var(--ink);transform:none}.topbar .topbar-actions>:is(.sound-toggle,.theme-toggle):focus-visible{position:relative;z-index:1;outline:0;box-shadow:inset 0 0 0 2px var(--forest)}.mode-card-actions{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:0;overflow:hidden;width:100%;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);box-shadow:0 3px #592a1b38}.mode-card-actions>:is(.primary-button,.quiet-button){min-width:0;min-height:44px;border:0;border-radius:0;padding-inline:8px;box-shadow:none;font-size:clamp(.92rem,1.6vw,1.05rem);white-space:nowrap}.mode-card-actions>.quiet-button{border-left:1px solid var(--border)}@media(max-width:719px){.home-masthead{column-gap:10px;row-gap:4px;padding-block:5px 7px}.home-masthead .brand h1{font-size:clamp(1.19rem,6.8vw,1.49rem)}.masthead-punchline{font-size:clamp(.78rem,4.4vw,.93rem)}.mode-card-actions{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:0}}@media(max-width:360px){.home-masthead .brand h1{font-size:clamp(1.1rem,6.7vw,1.21rem)}.masthead-punchline{font-size:.76rem}.topbar .topbar-actions>.sound-toggle,.topbar .topbar-actions>.theme-toggle{width:40px;min-width:40px;min-height:40px;flex-basis:40px}.mode-card-actions>:is(.primary-button,.quiet-button){gap:4px;padding-inline:5px;font-size:.9rem}.home-masthead .topbar-actions>.sound-toggle,.home-masthead .topbar-actions>.theme-toggle{width:44px;min-width:44px;min-height:44px;flex-basis:44px}}.home-masthead .topbar-actions>.sound-toggle,.home-masthead .topbar-actions>.theme-toggle{width:34px;min-width:34px;min-height:34px;flex-basis:34px}.home-masthead .topbar-actions svg{width:15px;height:15px}.home-masthead .masthead-punchline{font-size:clamp(1.1rem,2.1vw,1.32rem)}@media(max-width:719px){.home-masthead .masthead-punchline{font-size:clamp(.99rem,5.3vw,1.1rem)}}@media(min-width:331px)and (max-width:380px){.home-masthead{column-gap:5px}.home-masthead .brand h1{font-size:calc(.99rem + 6.8vw - 22.44px)}.home-masthead .topbar-actions>.sound-toggle,.home-masthead .topbar-actions>.theme-toggle{width:32px;min-width:32px;min-height:32px;flex-basis:32px}.mode-card-actions{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr)}}@media(min-width:381px)and (max-width:430px){.home-masthead .brand h1{font-size:1.24rem}}@media(min-width:431px)and (max-width:480px){.home-masthead{column-gap:5px}.home-masthead .topbar-actions>.sound-toggle,.home-masthead .topbar-actions>.theme-toggle{width:32px;min-width:32px;min-height:32px;flex-basis:32px}}@media(max-width:330px){.home-masthead{column-gap:5px}.home-masthead .brand h1{font-size:.99rem}.home-masthead .topbar-actions>.sound-toggle,.home-masthead .topbar-actions>.theme-toggle{width:32px;min-width:32px;min-height:32px;flex-basis:32px}.home-masthead .masthead-punchline{font-size:.97rem}.mode-card-actions{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr)}}.boost-cell .control-copy{min-width:0;display:grid;justify-items:start;gap:0;line-height:1}.boost-cell .control-copy small{opacity:.58;font-size:.68rem;font-weight:650}.mode-card-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"icon kicker" "title title";align-items:center;gap:6px 10px}.mode-card-heading>.mode-icon{grid-area:icon}.mode-card-heading-copy{display:contents}.mode-card-heading .mode-kicker{grid-area:kicker;justify-self:end}.mode-card-heading h3{grid-area:title}@media(max-width:560px){.mode-page .mode-grid{width:100%;grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;gap:10px}.mode-page .mode-card{min-height:0;grid-template-rows:auto auto auto;align-content:start;gap:6px;padding:12px 13px}.mode-card-heading{grid-template-columns:32px minmax(0,1fr);grid-template-areas:"icon title";gap:10px}.mode-card-heading .mode-kicker{display:none}.mode-card-heading h3{align-self:center;margin:0;font-size:clamp(1.2rem,5.8vw,1.34rem);line-height:1}.mode-page .mode-card-description{min-height:0;display:block;overflow:visible;margin:0;-webkit-line-clamp:unset;font-size:clamp(.84rem,4.1vw,.94rem);line-height:1.2}.mode-page .mode-card-actions,.mode-page .mode-card-cta,.mode-page .join-inline{width:100%;margin-top:2px}.mode-page .mode-card-actions{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)}.mode-page .mode-card-actions svg,.mode-page .join-inline button svg{display:none}}
