:root{--bg:#111313;--panel:#191c1b;--panel-2:#202523;--line:#303735;--text:#f4f7f2;--muted:#aeb8b2;--soft:#738079;--p1:#58b6ff;--p2:#ff796d;--gold:#f6b443;--mint:#48d6b0;--green:#81d65d;--danger:#e45e54;--shadow:0 22px 80px #00000052;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans CJK SC,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{background:linear-gradient(140deg, #48d6b014, transparent 38%), linear-gradient(32deg, #f6b4431f, transparent 34%), var(--bg);min-width:320px;min-height:100svh;margin:0}#root{min-height:100svh}:root{--bg:#10120f;--panel:#181a17;--panel-2:#20241f;--panel-3:#11140f;--line:#30362f;--text:#f3f5ef;--muted:#aab2a4;--soft:#778173;--p1:#53b7ff;--p2:#ff725f;--green:#67d69b;--gold:#f4bd55;--danger:#ee5f68;--surface-glow:color-mix(in srgb, var(--game-accent,#67d69b) 18%, transparent);--shadow:0 18px 46px #0000004d;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans CJK SC,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(90deg,#ffffff06 1px,#0000 1px) 0 0/38px 38px,linear-gradient(#ffffff05 1px,#0000 1px) 0 0/38px 38px,linear-gradient(145deg,#10120f 0%,#151712 48%,#0d100f 100%);min-width:320px;min-height:100svh;margin:0;overflow-x:hidden}button,input{font:inherit}button{color:inherit}.app-shell{width:min(1440px,100%);margin:0 auto;padding:18px;overflow-x:hidden}.app-shell:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(115deg, color-mix(in srgb, var(--game-accent) 13%, transparent), transparent 42%), linear-gradient(245deg, #f4bd5514, transparent 38%);position:fixed;inset:0}.topbar{border:1px solid color-mix(in srgb, var(--game-accent) 26%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--game-accent) 10%, transparent), transparent 58%), #121511db;box-shadow:inset 0 1px 0 #ffffff0d, var(--shadow);border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-bottom:14px;padding:12px;display:grid}.brand-mark{border:1px solid color-mix(in srgb, var(--game-accent) 48%, var(--gold));background:linear-gradient(145deg, color-mix(in srgb, var(--game-accent) 28%, transparent), #f4bd551c), #11150f;width:42px;height:42px;color:var(--text);border-radius:8px;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff14}.topbar h1,.topbar p,.game-header h2,.game-header p,.panel-heading h2,.panel-heading p{margin:0}.topbar>div,.panel-heading>div,.game-header>div,.action-dock>div{min-width:0}.topbar p,.game-header p,.panel-heading p,.turn-pill span,.action-button{overflow-wrap:anywhere}.topbar h1{letter-spacing:0;font-size:clamp(1.22rem,1.1rem + .5vw,1.58rem);line-height:1.05}.topbar p,.panel-heading p,.game-header p,.room-panel label,.event-log,.rule-notes,.player-card small{color:var(--muted)}.topbar-status{gap:8px;min-width:0;display:flex}.topbar-status span,.turn-pill,.room-code{border:1px solid var(--line);min-height:34px;color:var(--muted);background:#11140fd1;border-radius:8px;align-items:center;gap:6px;padding:7px 10px;font-size:.83rem;display:inline-flex}.topbar-status span{white-space:nowrap}.layout{grid-template-columns:270px minmax(0,1fr) 292px;align-items:start;gap:14px;min-width:0;display:grid}.mobile-game-switcher,.mobile-room-panel{display:none}.side-panel,.table-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#181b21c7;border-radius:8px}.side-panel{gap:14px;padding:14px;display:grid}.table-panel{border-color:color-mix(in srgb, var(--game-accent) 34%, var(--line));background:linear-gradient(180deg, color-mix(in srgb, var(--game-accent) 8%, transparent), transparent 28%), linear-gradient(145deg, #ffffff0d, #ffffff05), #121612e6;min-width:0;box-shadow:inset 0 1px 0 #ffffff0f, inset 0 0 0 1px #ffffff06, var(--shadow);padding:14px;position:relative}.panel-heading,.game-header,.action-dock{justify-content:space-between;align-items:center;gap:12px;display:flex}.panel-heading h2,.game-header h2{letter-spacing:0;font-size:1.05rem}.icon-button,.mode-tools button{border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.game-list{gap:8px;display:grid}.game-card{text-align:left;border:1px solid var(--line);cursor:pointer;background:linear-gradient(135deg,#ffffff0a,#ffffff03);border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:100%;min-height:66px;padding:10px;display:grid}.game-card.is-active{border-color:color-mix(in srgb, var(--accent) 72%, white 8%);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 18%, transparent), transparent 68%), color-mix(in srgb, var(--accent) 10%, var(--panel));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 20%, transparent)}.game-card__dot{background:var(--accent);border-radius:8px;width:12px;height:38px;box-shadow:inset 0 0 0 1px #ffffff29}.game-card strong,.game-card small,.game-card em{display:block}.game-card small,.game-card em{color:var(--muted);font-size:.78rem;font-style:normal}.strategy-profile{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--line));background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 12%, transparent), transparent 70%), #ffffff08;border-radius:8px;gap:10px;padding:12px;display:grid}.strategy-profile__head{justify-content:space-between;align-items:center;gap:10px;display:flex}.strategy-profile__head span,.strategy-profile article span{color:var(--muted);font-size:.73rem}.strategy-profile__head strong{color:var(--gold);white-space:nowrap;font-size:.8rem}.strategy-profile article{gap:4px;display:grid}.strategy-profile p{overflow-wrap:anywhere;margin:0;font-size:.84rem;line-height:1.42}.strategy-tags{flex-wrap:wrap;gap:6px;display:flex}.strategy-tags em{border:1px solid color-mix(in srgb, var(--accent) 42%, var(--line));background:color-mix(in srgb, var(--accent) 12%, #141922);min-height:26px;color:var(--text);border-radius:8px;align-items:center;padding:4px 8px;font-size:.74rem;font-style:normal;display:inline-flex}.rules-primer{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--line));background:#ffffff06;border-radius:8px;gap:10px;padding:12px;display:grid}.rules-primer__title{color:var(--gold);align-items:center;gap:8px;font-size:.84rem;font-weight:800;display:flex}.rules-primer dl{gap:8px;margin:0;display:grid}.rules-primer dl>div{grid-template-columns:38px minmax(0,1fr);align-items:start;gap:8px;display:grid}.rules-primer dt,.rules-primer dd{margin:0}.rules-primer dt{color:var(--muted);font-size:.72rem;line-height:1.45}.rules-primer dd{color:var(--text);overflow-wrap:anywhere;font-size:.82rem;line-height:1.42}.room-panel,.rule-notes{border-top:1px solid var(--line);gap:10px;padding-top:14px;display:grid}.room-panel.mobile-room-panel{display:none}.room-panel__title{align-items:center;gap:8px;display:flex}.room-panel label{gap:6px;font-size:.82rem;display:grid}.room-panel input{border:1px solid var(--line);background:var(--panel-3);width:100%;min-height:38px;color:var(--text);border-radius:8px;padding:8px 10px}.room-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.room-actions button,.secondary-action,.action-button{border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:38px;display:inline-flex}.room-actions button:disabled,.secondary-action:disabled,.action-button:disabled{cursor:not-allowed;opacity:.52}.room-actions button,.secondary-action,.action-button,.game-card,.icon-button,.mobile-game-switcher button{transition:border-color .18s,background .18s,box-shadow .18s,transform .18s}.room-actions button:not(:disabled):hover,.secondary-action:not(:disabled):hover,.action-button:not(:disabled):hover,.game-card:hover,.icon-button:hover,.mobile-game-switcher button:hover{border-color:color-mix(in srgb, var(--game-accent) 45%, var(--line))}.room-actions button:not(:disabled):active,.secondary-action:not(:disabled):active,.action-button:not(:disabled):active,.game-card:active,.icon-button:active,.mobile-game-switcher button:active{transform:translateY(1px)}button:focus-visible,input:focus-visible{outline:2px solid color-mix(in srgb, var(--game-accent) 70%, white 8%);outline-offset:2px}.secondary-action{width:100%}.room-code{justify-content:space-between}.room-code strong{color:var(--gold);letter-spacing:.12em}.game-header{border-bottom:1px solid var(--line);min-height:86px;padding-bottom:14px}.eyebrow{color:var(--accent);letter-spacing:0;margin-bottom:4px;font-size:.76rem;font-weight:700;display:block}.turn-pill{max-width:230px;color:var(--text)}.table-scene{border:1px solid color-mix(in srgb, var(--accent) 36%, var(--line));background:linear-gradient(90deg, #ffffff08 1px, transparent 1px), linear-gradient(#ffffff06 1px, transparent 1px), linear-gradient(130deg, color-mix(in srgb, var(--accent) 16%, transparent), transparent 52%), #10140f;background-size:28px 28px,28px 28px,auto,auto;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(136px,.36fr);align-items:stretch;gap:14px;min-height:190px;margin-top:14px;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff0f,inset 0 -24px 54px #0000002e}.scene-art{min-width:0;min-height:190px;padding:12px}.scene-art svg{filter:drop-shadow(0 16px 18px #00000029);width:100%;height:100%;min-height:164px;display:block}.scene-summary{border-left:1px solid var(--line);background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 9%, transparent), transparent 72%), #0c0f0c8a;align-content:center;gap:7px;padding:16px;display:grid}.scene-summary span,.scene-summary em{color:var(--muted);font-size:.78rem;font-style:normal}.scene-summary strong{overflow-wrap:anywhere;font-size:1rem;line-height:1.15}.scene-line,.scene-track,.scene-link,.scene-orbit{fill:none;stroke:var(--accent);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.scene-line-alt,.scene-link-alt,.scene-orbit-alt{stroke:#ffffff5c}.scene-track{stroke-width:10px;stroke:#f4bd55b8}.scene-link{stroke-width:5px;stroke:#4fb3ffad}.scene-card,.scene-building,.scene-plot,.scene-node,.scene-bar{stroke:#ffffff57;stroke-width:2px}.scene-card{fill:#ffffff12}.scene-card-a,.scene-card-c{fill:#ff725f26}.scene-card-b,.scene-spark{fill:color-mix(in srgb, var(--accent) 30%, #ffffff0a)}.scene-building,.scene-bar{fill:color-mix(in srgb, var(--accent) 24%, #ffffff0a)}.scene-building-alt{fill:#f4bd5533}.scene-plot{fill:#81d65d29}.scene-plot-bloom{fill:#f4bd5533}.scene-node,.scene-fill-neutral{fill:#151b22}.scene-fill-p1{fill:#53b7ff66}.scene-fill-p2{fill:#ff725f6b}.scene-fill-market{fill:#f4bd553d}.scene-fill-bonus{fill:#67d69b3d}.scene-fill-danger{fill:#ee5f6842}.scene-label{fill:#f3f5efdb;letter-spacing:0;text-anchor:middle;dominant-baseline:middle;font-size:.72rem;font-weight:800}.scene-label-bottom{fill:#a5adbad1;font-size:.62rem}.scene-card-label{fill:#f3f5efb8}.scene-ring{fill:none;stroke-width:3px;opacity:.75}.scene-ring-p1,.scene-deed-p1{stroke:var(--p1);fill:#53b7ff33}.scene-ring-p2,.scene-deed-p2{stroke:var(--p2);fill:#ff725f33}.scene-deed{stroke-width:1.5px}.scene-bar-base{fill:#ffffff0d;stroke:#ffffff2e;stroke-width:1px}.scene-token-p1,.scene-token-p2{stroke:#ffffffbd;stroke-width:3px}.scene-token-p1{fill:var(--p1)}.scene-token-p2{fill:var(--p2)}.status-rail{grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr) minmax(0,1fr);gap:10px;margin-top:12px;display:grid}.status-card{border:1px solid var(--line);background:linear-gradient(145deg,#ffffff0e,#ffffff05);border-radius:8px;align-content:center;gap:6px;min-width:0;min-height:78px;padding:12px;display:grid}.status-card span{color:var(--muted);font-size:.74rem}.status-card strong{overflow-wrap:anywhere;line-height:1.18}.status-meter{background:#101319;border-radius:8px;height:7px;overflow:hidden}.status-meter i{border-radius:inherit;background:linear-gradient(90deg, var(--p1), var(--green), var(--gold));height:100%;display:block}.room-roster{border:1px solid var(--line);background:#ffffff08;border-radius:8px;gap:9px;margin-top:12px;padding:10px;display:grid}.room-roster__head{color:var(--muted);grid-template-columns:auto 1fr auto;align-items:center;gap:8px;font-size:.78rem;display:grid}.room-roster__head strong{color:var(--gold);letter-spacing:.12em;overflow-wrap:anywhere}.room-roster__head em{font-style:normal}.room-seat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.room-seat-card{border:1px solid var(--line);background:#141922;border-radius:8px;gap:3px;min-width:0;padding:10px;display:grid}.room-seat-card span,.room-seat-card em{color:var(--muted);font-size:.72rem}.room-seat-card strong{overflow-wrap:anywhere}.room-seat-card em{font-style:normal}.room-seat-card.is-seat{background:#67d69b1a;border-color:#67d69b8a}.room-seat-card.is-turn{box-shadow:inset 0 0 0 1px #f4bd5580}.turn-timeline{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.turn-step{border:1px solid var(--line);background:linear-gradient(145deg,#ffffff0c,#ffffff04),#12161d;border-radius:8px;align-content:space-between;gap:5px;min-width:0;min-height:88px;padding:10px;display:grid}.turn-step.is-active{background:linear-gradient(145deg,#f4bd5521,#67d69b0b),#12161d;border-color:#f4bd558c}.turn-step span,.turn-step em{color:var(--muted);font-size:.72rem;font-style:normal}.turn-step strong{overflow-wrap:anywhere;line-height:1.18}.action-coach{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--line));background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 11%, transparent), transparent 72%), #ffffff07;border-radius:8px;gap:9px;margin-top:12px;padding:10px;display:grid}.action-coach__head{justify-content:space-between;align-items:center;gap:10px;display:flex}.action-coach__head span{color:var(--gold);align-items:center;gap:7px;font-size:.84rem;font-weight:800;display:inline-flex}.action-coach__head em{color:var(--muted);white-space:nowrap;font-size:.76rem;font-style:normal}.action-coach__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.action-coach__card{border:1px solid var(--line);background:#12161d;border-radius:8px;align-content:start;gap:5px;min-width:0;min-height:78px;padding:10px;display:grid}.action-coach__card span{color:var(--muted);font-size:.72rem}.action-coach__card strong{overflow-wrap:anywhere;font-size:.86rem;line-height:1.28}.coach-focus{border-color:color-mix(in srgb, var(--accent) 46%, var(--line));background:color-mix(in srgb, var(--accent) 10%, #12161d)}.coach-action{background:#f4bd5518;border-color:#f4bd5580}.coach-steady{background:#67d69b13;border-color:#67d69b61}.insight-panel{gap:9px;display:grid}.insight-heading{color:var(--muted);justify-content:space-between;gap:8px;font-size:.78rem;display:flex}.insight-heading em{color:var(--gold);font-style:normal}.insight-grid{gap:8px;display:grid}.insight-card{border:1px solid var(--line);background:#ffffff09;border-radius:8px;gap:4px;padding:10px;display:grid}.insight-card span{color:var(--muted);font-size:.72rem}.insight-card strong{overflow-wrap:anywhere;line-height:1.2}.insight-tone-p1{background:#53b7ff1f;border-color:#53b7ff85}.insight-tone-p2{background:#ff725f1f;border-color:#ff725f85}.insight-tone-good{background:#67d69b1a;border-color:#67d69b7a}.insight-tone-warn{background:#f4bd551c;border-color:#f4bd5580}.player-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0;display:grid}.player-card{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;padding:12px}.player-card.is-turn{border-color:var(--gold)}.player-card.is-seat{box-shadow:inset 0 0 0 1px #67d69b73}.player-card header{justify-content:space-between;gap:8px;display:flex}.player-name{gap:2px;min-width:0;display:grid}.player-name span{overflow-wrap:anywhere}.player-name em{color:var(--muted);font-size:.72rem;font-style:normal}.player-card header strong{font-size:1.4rem}.meters{gap:7px;margin-top:10px;display:grid}.meter{grid-template-columns:62px 1fr 28px;align-items:center;gap:8px;font-size:.75rem;display:grid}.meter div{background:#101319;border-radius:8px;height:7px;overflow:hidden}.meter i{border-radius:inherit;background:linear-gradient(90deg, var(--green), var(--gold));height:100%;display:block}.board-surface{border:1px solid var(--line);background-color:#11151b;background-image:linear-gradient(90deg,#ffffff0a 1px,#0000 1px),linear-gradient(#ffffff0a 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:42px 42px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:8px;padding:12px}.board-title{color:var(--muted);justify-content:space-between;gap:10px;margin-bottom:10px;font-size:.82rem;display:flex}.board-grid{gap:8px;display:grid}.board-grid,.board-grid .board-cell{min-width:0}.board-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.board-track .board-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.board-cards .board-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.board-network .board-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.board-cell{border:1px solid var(--line);background:#ffffff0a;border-radius:8px;align-content:space-between;min-height:74px;padding:9px;display:grid;position:relative;overflow:hidden}.board-cell span{color:var(--muted);overflow-wrap:anywhere;font-size:.75rem}.board-cell strong{overflow-wrap:anywhere;min-height:1.1rem;font-size:.86rem}.tone-p1{background:#53b7ff24;border-color:#53b7ff8f}.tone-p2{background:#ff725f24;border-color:#ff725f94}.tone-bonus,.tone-market{background:#f4bd551f;border-color:#f4bd5580}.tone-danger{background:#ee5f681f;border-color:#ee5f688c}.tokens{gap:4px;min-height:16px;display:flex}.token{border:2px solid #ffffffb3;border-radius:999px;width:14px;height:14px}.token-p1{background:var(--p1)}.token-p2{background:var(--p2)}.hand-rail{margin-top:12px}.hand-rail h3{margin:0 0 8px;font-size:.9rem}.cards{grid-template-columns:repeat(auto-fit,minmax(116px,1fr));gap:8px;display:grid}.mini-card{border:1px solid var(--line);background:#141922;border-radius:8px;align-content:space-between;gap:6px;min-height:106px;padding:10px;display:grid}.mini-card span{color:var(--gold);justify-self:end;font-size:.78rem}.mini-card strong{line-height:1.12}.mini-card p{color:var(--muted);margin:0;font-size:.8rem}.card-attack{border-color:#ff725f8c}.card-guard{border-color:#53b7ff8c}.card-growth{border-color:#67d69b8c}.card-wealth{border-color:#f4bd558c}.action-dock{border:1px solid color-mix(in srgb, var(--game-accent) 32%, var(--line));background:linear-gradient(110deg, color-mix(in srgb, var(--game-accent) 10%, transparent), transparent 58%), #131612f5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:8px;margin-top:12px;padding:10px;position:sticky;bottom:10px;box-shadow:inset 0 1px #ffffff0f,0 16px 36px #00000052}.action-dock strong,.action-dock span{display:block}.action-dock span{color:var(--muted);font-size:.8rem}.action-list{flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0;display:flex}.action-button{text-align:left;white-space:normal;flex-direction:column;align-items:flex-start;min-width:136px;max-width:220px;min-height:56px;padding:0 12px;line-height:1.15;box-shadow:inset 0 1px #ffffff0a}.action-button span,.action-button small{overflow-wrap:anywhere;max-width:100%;display:block}.action-button span{font-weight:700}.action-button small{color:var(--muted);margin-top:3px;font-size:.73rem}.action-button.tone-primary{background:color-mix(in srgb, var(--game-accent) 16%, #141922);border-color:color-mix(in srgb, var(--game-accent) 44%, var(--line))}.action-button.tone-warn{background:#f4bd5529;border-color:#f4bd5573}.action-button.tone-calm{background:#53b7ff24;border-color:#53b7ff66}.action-button.tone-danger{background:#ff725f29;border-color:#ff725f73}.event-log{gap:8px;margin:0;padding-left:20px;font-size:.88rem;display:grid}.rule-notes p{border:1px solid var(--line);background:#ffffff08;border-radius:8px;margin:0;padding:9px}.notice-banner,.error-banner{border-radius:8px;margin-top:10px;padding:10px 12px}.notice-banner{color:#d9ffe9;background:#67d69b1f;border:1px solid #67d69b80}.error-banner{color:#ffd9dd;background:#ee5f6821;border:1px solid #ee5f6880}@media (width<=1100px){.layout{grid-template-columns:240px 1fr}.right-panel{grid-column:1/-1}}@media (width<=760px){.app-shell{padding:10px}.topbar{grid-template-columns:auto 1fr;align-items:start;margin-bottom:10px}.topbar-status{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:visible}.topbar-status span{justify-content:center;min-width:0}.mobile-game-switcher{z-index:10;border:1px solid color-mix(in srgb, var(--accent) 34%, var(--line));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#101319f0;border-radius:8px;gap:8px;margin:0 0 10px;padding:9px;display:grid;position:sticky;top:0}.mobile-game-switcher__head{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;font-size:.78rem;display:flex}.mobile-game-switcher__head strong{color:var(--gold);overflow-wrap:anywhere}.mobile-game-switcher__list{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;gap:6px;margin:0 -2px;padding:0 2px 2px;display:flex;overflow-x:auto}.mobile-game-switcher__list::-webkit-scrollbar{display:none}.mobile-game-switcher button{border:1px solid var(--line);min-width:72px;min-height:54px;color:var(--text);cursor:pointer;scroll-snap-align:start;background:#141922;border-radius:8px;flex:0 0 72px;grid-template-rows:5px auto auto;align-content:center;gap:3px;padding:5px 4px 6px;display:grid}.mobile-game-switcher button i{background:var(--accent);border-radius:8px;width:100%;height:5px}.mobile-game-switcher button span,.mobile-game-switcher button small{overflow-wrap:anywhere;min-width:0;line-height:1.08;display:block}.mobile-game-switcher button span{font-size:.82rem;font-weight:800}.mobile-game-switcher button small{color:var(--muted);font-size:.62rem}.mobile-game-switcher button.is-active{border-color:color-mix(in srgb, var(--accent) 70%, white 8%);background:color-mix(in srgb, var(--accent) 14%, #141922)}.room-panel.mobile-room-panel{box-shadow:var(--shadow);background:linear-gradient(145deg,#53b7ff1a,#0000 72%),#181b21e6;border:1px solid #53b7ff61;border-radius:8px;gap:9px;margin:0 0 10px;padding:10px;display:grid}.mobile-room-panel .room-panel__title{justify-content:space-between}.mobile-room-panel label{min-width:0}.mobile-room-panel input{min-height:36px}.mobile-room-panel .room-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-room-panel .room-code{min-width:0}.side-room-panel{display:none}.layout,.player-strip,.status-rail,.room-seat-grid,.turn-timeline,.action-coach__grid{grid-template-columns:1fr}.side-panel{order:2}.table-panel{order:1;padding:10px}.right-panel{order:3}.game-header,.action-dock{flex-direction:column;align-items:stretch}.table-scene{grid-template-columns:1fr;min-height:0}.scene-art{min-height:118px;padding:8px 8px 0}.scene-art svg{min-height:108px}.scene-summary{border-top:1px solid var(--line);border-left:0;grid-template-columns:1fr auto;align-content:center;gap:3px 10px;padding:10px 12px}.scene-summary strong{grid-column:1/-1}.status-card{min-height:64px}.turn-pill{max-width:none}.board-grid,.board-track .board-grid,.board-cards .board-grid,.board-network .board-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.board-cell{min-height:68px}.action-list{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;display:grid}.action-dock{bottom:max(10px, env(safe-area-inset-bottom))}.action-button{width:100%;min-width:0;max-width:none;min-height:58px;padding:7px 8px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=380px){.board-grid,.board-track .board-grid,.board-cards .board-grid,.board-network .board-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.meter{grid-template-columns:54px 1fr 24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
