:root{--ink:#1d1c18;--paper:#f4ecd9;--paper-light:#fffaf0;--brass:#b58b2a;--jade:#35735d;--indigo:#334d67;--vermilion:#a64736;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:18px;--radius-small:7px;--radius-medium:11px;--radius-large:18px;font-synthesis:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:1024px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer;border:0;border-radius:12px;padding:12px 18px;font-weight:750}button:disabled{cursor:wait;opacity:.45}button.secondary{border:1px solid #cbc5b8}input,select{border:1px solid #cbc5b8;border-radius:10px;width:100%;padding:12px}label{gap:7px;font-size:.86rem;font-weight:700;display:grid}.page{min-height:100vh;padding:20px 26px 28px}.app-header{justify-content:space-between;align-items:center;height:58px;margin-bottom:16px;display:flex}.app-header>div{align-items:baseline;gap:14px;display:flex}.app-header strong{letter-spacing:.08em;font-family:Georgia,serif;font-size:1.45rem}.app-header span{font-size:.82rem}.card{border:1px solid #cec8bb;border-radius:18px;box-shadow:0 8px 30px #332d220f}.hero{text-align:center;max-width:760px;margin:8vh auto 34px}.hero h1{margin:10px 0;font-family:Georgia,serif;font-size:3rem}.hero p:last-child{font-size:1.08rem}.server-status{border-radius:999px;align-items:center;gap:8px;width:fit-content;margin:18px auto 0;padding:8px 12px;font-size:.8rem;font-weight:750;display:flex}.server-status i{background:currentColor;border-radius:50%;width:9px;height:9px}.eyebrow{letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:850}.lobby-grid{grid-template-columns:repeat(2,minmax(320px,430px));justify-content:center;gap:20px;display:grid}.lobby-grid form{gap:18px;padding:26px;display:grid}.lobby-grid h2{margin:0;font-family:Georgia,serif}.lobby-page{min-height:100vh;padding:0 20px 20px}.lobby-page .app-header{border-bottom:1px solid #cda95640;height:72px;margin:0 -20px 18px;padding:0 28px}.lobby-page .app-header strong{font-size:1.6rem}.lobby-page .error-banner{z-index:5;position:fixed;top:76px;left:50%;transform:translate(-50%)}.lobby-shell{grid-template-columns:220px minmax(560px,1fr) 260px;gap:16px;max-width:1540px;min-height:calc(100vh - 110px);margin:0 auto;display:grid}.lobby-menu{border:1px solid #d0b26b40;border-radius:15px;flex-direction:column;gap:7px;padding:18px 12px;display:flex}.lobby-menu>.eyebrow{margin:3px 12px 12px}.lobby-menu button{text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:12px;width:100%;padding:14px 13px;display:flex}.lobby-menu button span{text-align:center;width:22px;font-size:1.2rem}.lobby-menu-footer{border-top:1px solid #ffffff1a;gap:5px;margin:auto 12px 0;padding-top:16px;font-size:.74rem;display:grid}.lobby-content{border-radius:15px;min-height:0;box-shadow:0 18px 50px #00000040}.lobby-form{flex-direction:column;height:100%;padding:38px 48px 28px;display:flex}.lobby-form header{border-bottom:1px solid #d8caa8;justify-content:space-between;align-items:start;gap:24px;padding-bottom:24px;display:flex}.lobby-form h1,.lobby-empty h1{margin:8px 0 0;font-family:Georgia,serif;font-size:2.7rem;line-height:1}.mode-pill,.planned{letter-spacing:.08em;border:1px solid #b99543;border-radius:999px;padding:7px 11px;font-size:.68rem;font-weight:850}.form-row{border-bottom:1px dashed #d9cdb0;grid-template-columns:minmax(190px,1fr) minmax(280px,1.3fr);align-items:center;gap:24px;padding:18px 0;display:grid}.form-row>div:first-child{gap:4px;display:grid}.form-row small,.lobby-form footer p,.lobby-aside small,.saved-game small{font-size:.75rem;line-height:1.4}.segmented{border-radius:11px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.segmented button{background:0 0;border-radius:8px;padding:9px 8px;font-size:.76rem}.segmented button.selected{box-shadow:0 1px 5px #45371d29}.segmented button:disabled{cursor:default;opacity:.55}.lobby-form footer{justify-content:space-between;align-items:center;gap:18px;margin-top:auto;padding-top:28px;display:flex}.lobby-form footer p{max-width:390px;margin:0}.lobby-form footer button{min-width:160px}.compact-form{max-width:680px}.compact-form .intro{margin:28px 0}.compact-form>label{margin-bottom:20px}.room-code-input{letter-spacing:.22em;text-transform:uppercase;font-weight:800}.lobby-empty{text-align:center;min-height:100%;padding:40px 48px}.lobby-empty>.eyebrow,.lobby-empty>h1{text-align:left}.placeholder-mark{border:1px solid #c8b175;border-radius:50%;place-items:center;width:74px;height:74px;margin:15vh auto 22px;font-size:2rem;display:grid}.lobby-empty h2{font-family:Georgia,serif}.lobby-empty>p:not(.eyebrow){max-width:520px;margin:0 auto 24px;line-height:1.55}.saved-game{text-align:left;border:1px solid #d3c49e;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin-top:38px;padding:18px;display:flex}.saved-game div{gap:5px;display:grid}.lobby-aside{flex-direction:column;gap:14px;display:flex}.lobby-aside>section{border:1px solid #cba95859;border-radius:15px;gap:12px;padding:19px;display:grid}.lobby-aside .server-status{width:100%;margin:0}.palette-card{border-color:var(--color-brass);background:var(--color-board-frame)}.palette-swatches{grid-template-columns:repeat(6,1fr);gap:5px;display:grid}.palette-swatches i{aspect-ratio:1;border:1px solid #ffffff40;border-radius:50%}.roadmap-card{margin-top:auto}.hint{font-size:.84rem}.error-banner{border-radius:12px;max-width:920px;margin:10px auto;padding:12px 16px}.connection{text-transform:capitalize;border-radius:999px;padding:7px 11px;font-weight:750}.table-page{grid-template-rows:42px 60px minmax(0,1fr) 138px;gap:9px;height:100vh;min-height:720px;padding:10px 14px;display:grid;overflow:hidden}.table-page .app-header{height:42px;margin:0}.table-toolbar{align-items:center;gap:14px;min-height:0;padding:8px 12px;display:flex}.table-toolbar>div:first-child{display:grid}.room-code{letter-spacing:.12em;font-size:1.35rem}.game-counters{gap:6px;margin:auto;display:flex}.game-counters span{white-space:nowrap;background:#eeeae0;border-radius:10px;padding:8px 10px;font-size:.76rem}.table-layout{grid-template-columns:minmax(680px,1fr) 330px;gap:9px;min-height:0;margin:0;display:grid;overflow:hidden}.board-placeholder{height:100%;min-height:0;padding:18px;overflow:hidden}.board-placeholder h1{margin:12px 0 5px;font-family:Georgia,serif;font-size:2rem}.board-placeholder.live-board{background:linear-gradient(145deg,#f5f1e5fa,#e2ede8fa);grid-template-rows:auto auto minmax(0,1fr);align-content:stretch;padding:10px;display:grid;position:relative}.board-placeholder.live-board>h1{margin:4px 0;font-size:1.05rem}.game-board{isolation:isolate;border-radius:11px;min-height:0;margin-top:4px;position:relative;overflow:hidden}.board-viewport{scrollbar-width:thin;height:100%;min-height:0;overflow:auto}.game-board-content{isolation:isolate;min-width:calc(100% / var(--board-zoom));min-height:calc(100% / var(--board-zoom));zoom:var(--board-zoom);grid-template-rows:auto minmax(0,1fr) auto;gap:6px;display:grid;position:relative}.game-board-content>:not(.board-map-backdrop){z-index:1;position:relative}.board-zoom-controls{z-index:11;border:1px solid #a88c47;border-radius:9px;display:flex;position:absolute;bottom:10px;right:10px;overflow:hidden;box-shadow:0 4px 14px #23221b33}.board-zoom-controls button{border-radius:0;min-width:29px;padding:5px 8px;font-size:.78rem}.board-zoom-controls button+button{border-left:1px solid #d4c29a}.board-zoom-controls .board-zoom-value{min-width:49px;font-size:.62rem}.board-map-backdrop{z-index:0;opacity:.64;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.map-region{opacity:.52;stroke:#4548392e;stroke-width:2px}.map-region-north{fill:#bcd5c5}.map-region-east{fill:#cad7e5}.map-region-central{fill:#ead4b0}.map-region-west{fill:#ddc3b6}.map-route{fill:none;stroke-width:5px;stroke-linecap:round;stroke-dasharray:6 12}.board-section,.region-card{border:1px solid #4f4c3f2e;border-radius:11px;padding:7px}.section-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.section-heading h2{margin:4px 0 0;font-family:Georgia,serif;font-size:1.1rem}.board-section-actions{align-items:center;gap:5px;display:flex}.text-button{border:1px solid #cbc5b8;padding:6px 9px;font-size:.72rem}.factory-supply-button{color:#684f17;background:#fff1c3a6;border-color:#c8a95d}.factory-supply-button b{color:#fff8e6;background:#8d6d25;border-radius:999px;margin-left:4px;padding:2px 5px}.employment-grid{grid-template-columns:repeat(5,minmax(105px,1fr));gap:5px;margin-top:5px;display:grid}.employment-space{border-radius:8px;min-width:0;padding:5px}.employment-space strong{margin-top:8px;font-size:.68rem;line-height:1.25;display:block}.workers{flex-wrap:wrap;gap:5px;display:flex}.worker{color:#fff;border:2px solid #1a1b182e;border-radius:50%;place-items:center;width:24px;height:24px;padding:0;display:grid;box-shadow:0 1px 2px #0003}.worker span{text-shadow:0 1px 2px #000;font-size:.58rem;font-weight:900}.worker.selected{outline:3px solid #e1a626;transform:scale(1.08)}.worker-white{background:#f8f7f1}.worker-blue{background:#3375b7}.worker-gray{background:#85898a}.worker-yellow{background:#eeb426}.worker-red{background:#ca4239}.worker-black{background:#232726}.queue{border-top:1px solid #d8d2c6;align-items:center;gap:5px;margin-top:5px;padding-top:5px;display:flex}.queue b{margin-right:5px;font-size:.72rem}.queue span{color:#6d6d64;margin-left:auto;font-size:.7rem}.regions-grid{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(260px,1fr));gap:5px;min-height:0;display:grid}.region-card{min-height:0}.region-card>header{margin-bottom:4px}.region-card>header strong{color:#76612d;font-size:.68rem}.region-markets{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.market-card{border-radius:7px;min-width:0;padding:4px}.market-card header{justify-content:space-between;gap:4px;font-size:.67rem;display:flex}.market-slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;margin-top:3px;display:grid}.market-slot{text-align:center;background:var(--color-paper-raised);border-radius:5px;min-width:0;padding:3px 1px}.market-slot b,.market-slot span{text-overflow:ellipsis;display:block;overflow:hidden}.market-slot span{color:#66665f;margin-top:4px;font-size:.49rem}.train-track{grid-template-columns:auto repeat(7,1fr);align-items:center;gap:3px;margin-top:4px;display:grid}.train-track span{background:#dedbd2;border-radius:5px;place-items:center;height:18px;font-size:.48rem;display:grid}.train-track span.bonus{background:#f4e4b4}.train-track span.occupied{color:#fff;background:#5a725f}.iwakura-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin-top:4px;display:grid}.iwakura article{border-radius:6px;gap:1px;padding:4px;font-size:.56rem;display:grid}.board-location-highlight{animation:1.65s ease-out board-location-flash;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--action-highlight-color,#606862) 75%,transparent)!important}@keyframes board-location-flash{0%,24%{filter:brightness(1.025)}55%,to{filter:none}}.board-inspector-layer{z-index:12;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);place-items:center;padding:18px;display:grid;position:absolute;inset:0}.board-inspector-layer>div{width:min(980px,96%);max-height:92%}.factory-supply{border:1px solid #b9a16a;border-radius:16px;max-height:100%;padding:16px;overflow:auto;box-shadow:0 18px 60px #1f1c144d}.factory-supply>header{border-bottom:1px solid #ddd0ae;justify-content:space-between;align-items:end;gap:20px;padding-bottom:10px;display:flex}.factory-supply h2{margin:3px 0 0;font-family:Georgia,serif;font-size:1.35rem}.factory-supply>header small{text-align:right;max-width:360px;font-size:.68rem}.factory-supply-content{grid-template-columns:minmax(0,3fr) minmax(190px,1fr);gap:12px;margin-top:12px;display:grid}.factory-goods-grid{grid-template-columns:repeat(3,minmax(180px,1fr));gap:8px;display:grid}.factory-goods{border:1px solid #4d46332b;border-radius:11px;min-width:0;padding:9px}.factory-goods>header{align-items:center;gap:8px;display:flex}.factory-goods>header>span,.factory-effect-symbol{background:#ebe5d8;border:1px solid #2b2a2433;border-radius:50%;flex:0 0 36px;place-items:center;width:36px;height:36px;font-size:.58rem;font-weight:900;display:grid}.factory-goods>header div{display:grid}.factory-goods>header strong{font-family:Georgia,serif;font-size:.86rem}.factory-goods>header small{font-size:.58rem}.factory-goods>div{grid-template-columns:repeat(5,1fr);gap:4px;margin-top:8px;display:grid}.factory-goods .factory-preview-tile{border:1px solid #c9c0ae;border-radius:7px;place-items:center;gap:1px;min-width:0;padding:6px 2px;display:grid}.factory-goods .factory-preview-tile:hover,.factory-goods .factory-preview-tile:focus-visible{outline:2px solid #b58b2a75;transform:translateY(-1px)}.factory-goods .factory-preview-tile.pinned{box-shadow:0 0 0 2px #b58b2a47}.factory-goods-cotton>header>span,.factory-effect-card.factory-goods-cotton .factory-effect-symbol{background:var(--goods-cotton)}.factory-goods-paper>header>span,.factory-effect-card.factory-goods-paper .factory-effect-symbol{background:var(--goods-paper)}.factory-goods-bento>header>span,.factory-effect-card.factory-goods-bento .factory-effect-symbol{background:var(--goods-bento)}.factory-goods-lenses>header>span,.factory-effect-card.factory-goods-lenses .factory-effect-symbol{background:var(--goods-lenses)}.factory-goods-lightBulbs>header>span,.factory-effect-card.factory-goods-lightBulbs .factory-effect-symbol{background:var(--goods-lightBulbs)}.factory-goods-watches>header>span,.factory-effect-card.factory-goods-watches .factory-effect-symbol{background:var(--goods-watches)}.factory-effect-card{border:1px solid #cab982;border-radius:12px;min-height:190px;padding:15px}.factory-effect-card .factory-effect-symbol{margin-bottom:18px}.factory-effect-card h3{margin:5px 0 12px;font-family:Georgia,serif;font-size:1.2rem}.factory-effect-card>p:not(.eyebrow){min-height:68px;line-height:1.45}.factory-effect-card>small{border-top:1px solid #d9ceb4;padding-top:10px;display:block}.sequence-banner{border-radius:10px;gap:3px;margin:12px 0;padding:10px 12px;font-size:.75rem;display:grid}.starting-bonuses{border-top:1px solid #cbd3c6;min-height:0;margin-top:10px;padding-top:10px}.starting-bonuses-heading{justify-content:space-between;align-items:end;gap:16px;display:flex}.starting-bonuses-heading h2{margin:5px 0 0;font-family:Georgia,serif;font-size:1.25rem}.starting-bonuses-heading small{font-weight:750}.starting-bonus-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:12px;display:grid}.starting-bonus{border:1px solid #cbc5b8;border-radius:13px;min-width:0;padding:12px}.starting-bonus header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;display:flex}.starting-bonus header strong{font-family:Georgia,serif;font-size:1.05rem}.starting-bonus header span{border-radius:999px;padding:4px 7px;font-size:.68rem;font-weight:800}.starting-bonus p{margin:5px 0;font-size:.77rem;line-height:1.35}.starting-bonus p b{border-radius:50%;place-items:center;width:20px;height:20px;margin-right:4px;font-size:.68rem;display:inline-grid}.starting-bonus>small{margin-top:8px;font-size:.7rem;display:block}.starting-bonus.selected{opacity:.72}.starting-bonus.unchosen{opacity:.58}.starting-bonus.selectable{cursor:pointer;transition:transform .14s,box-shadow .14s,background .14s;box-shadow:0 0 0 2px #8a75472e}.starting-bonus.selectable:hover,.starting-bonus.selectable:focus-visible{outline:0;transform:translateY(-3px);box-shadow:0 7px 20px #5344222e,0 0 0 3px #8a754738}.starting-bonus.focused{box-shadow:0 0 0 3px #355f4b3d}.starting-choice-panel{border:1px solid #9eb1a3;border-radius:13px;grid-template-columns:minmax(170px,1fr) minmax(260px,2fr) auto;align-items:end;gap:12px;margin-top:14px;padding:12px;display:grid}.starting-choice-panel strong{margin-top:5px;font-family:Georgia,serif;font-size:.95rem;display:block}.starting-choice-panel button{white-space:nowrap}.starting-choice-fields{align-items:end;gap:8px;display:flex}.starting-choice-fields label{flex:130px;min-width:0;font-size:.68rem}.starting-choice-fields select{min-width:0;padding:8px;font-size:.72rem}.starting-board-layer{z-index:8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f7f3e8f7;border:1px solid #5b4b276b;border-radius:14px;position:absolute;bottom:10px;left:10px;right:10px;box-shadow:0 -12px 34px #24201733}.starting-board-layer.open{max-height:58%;padding:10px 12px 12px;overflow:auto}.starting-board-layer.collapsed{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;left:auto}.starting-board-layer-toolbar{z-index:2;border-bottom:1px solid #d7cfbd;justify-content:space-between;align-items:center;gap:16px;margin:-10px -12px 0;padding:10px 12px 8px;display:flex;position:sticky;top:-10px}.starting-board-layer-toolbar div{gap:2px;display:grid}.starting-board-layer-toolbar small{font-size:.7rem}.starting-board-layer-toolbar button{white-space:nowrap;padding:7px 10px;font-size:.7rem}.starting-board-layer .starting-bonuses{border-top:0;margin-top:0;padding-top:8px}.starting-board-layer .starting-bonus-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:7px;margin-top:8px}.starting-board-layer .starting-bonus{padding:9px}.starting-board-layer .starting-bonus p{font-size:.7rem}.starting-board-layer-toggle{border-color:#8c702a;padding:10px 14px;box-shadow:0 5px 16px #32270e38}.seat-grid{grid-template-columns:repeat(2,minmax(240px,1fr));gap:12px;margin-top:28px;display:grid}.seat{border:1px solid #50503c24;border-radius:13px;align-items:center;gap:12px;padding:14px;display:flex}.seat i{border-radius:5px;align-self:stretch;width:10px}.seat div{gap:3px;display:grid}.start-controls{border-top:1px solid #cbd3c6;flex-wrap:wrap;align-items:center;gap:18px;margin-top:30px;padding-top:22px;display:flex}.start-controls label{align-items:center;display:flex}.start-controls input{width:auto}.start-controls button{margin-left:auto}.waiting{margin-top:30px}.side-column{grid-template-rows:auto minmax(90px,1fr) auto auto;align-content:stretch;gap:7px;min-height:0;display:grid}.side-column>section{min-height:0;padding:10px}.side-column h2,.actions-panel h2{text-transform:uppercase;letter-spacing:.06em;margin:0 0 12px;font-size:1rem}.player-card{text-align:left;cursor:pointer;border:1px solid #0000;border-radius:9px;width:100%;margin-top:5px;padding:8px 9px;display:grid}.player-card:hover,.player-card:focus-visible{outline:0}.player-title,.resource-row{justify-content:space-between;gap:8px;display:flex}.resource-row{margin:4px 0;font-size:.7rem}.player-card small{font-size:.65rem}.player-card .player-infrastructure{margin-top:2px}.log-card{overflow:auto}.log-card p{border-bottom:1px solid #ece8df;margin:0;padding:5px 0;font-size:.72rem}.log-entry{text-align:left;background:0 0;border:0;border-bottom:1px solid #ece8df;border-radius:0;gap:2px;width:100%;padding:6px 0;font-size:.72rem;display:grid}.log-entry:hover,.log-entry:focus-visible{outline:0}.side-details{min-height:0;padding:9px;overflow:auto}.side-details summary{cursor:pointer;font-size:.75rem;font-weight:800}.side-details .starting-bonuses-heading,.side-details .eyebrow{display:none}.side-details .starting-bonus-grid{grid-template-columns:1fr}.side-details .starting-bonus{padding:7px}.side-column .scoring-reports{max-height:150px;margin:0;padding:9px;overflow:auto}.side-column .scoring-reports .report-grid{grid-template-columns:1fr}.actions-panel{grid-template-columns:190px 1fr;gap:12px;min-height:0;margin:0;padding:10px 12px;display:grid}.actions-panel h2{margin-top:7px}.action-list{flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:6px;max-height:116px;display:flex;overflow:auto}.action-list>button,.action-list>.action-group{flex:0 0 calc(50% - 3px);align-self:flex-start}.action-list button{text-align:left;align-items:center;gap:10px;font-weight:650;display:flex}.action-list button span{border-radius:50%;place-items:center;min-width:25px;height:25px;display:grid}.action-group{border-radius:12px;overflow:hidden}.action-group summary{cursor:pointer;grid-template-columns:27px 1fr auto;align-items:center;gap:9px;padding:11px 13px;font-size:.76rem;display:grid}.action-group summary>span{border-radius:50%;place-items:center;width:25px;height:25px;display:grid}.action-group>div{gap:5px;max-height:180px;padding:0 8px 8px;display:grid;overflow:auto}.action-group>div button{font-size:.72rem}.scoring-reports{margin-top:16px;padding:18px}.reports-button{white-space:nowrap}.player-sheet-peek{text-align:left;gap:2px;padding:7px 10px;display:grid}.player-sheet-peek span{text-transform:uppercase;letter-spacing:.04em;font-size:.64rem;font-weight:800}.player-sheet-peek b{white-space:nowrap;font-size:.7rem}.drawer-layer{z-index:20;position:fixed;inset:0}.player-sheet-layer{justify-content:center;align-items:center;padding:20px;display:flex}.player-mat-drawer{border:1px solid #b79c61;border-radius:18px;width:min(1180px,100vw - 40px);min-height:0;animation:.2s ease-out player-sheet-in;position:relative;overflow:auto;box-shadow:0 18px 54px #191b1647}@keyframes player-sheet-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.player-mat{padding:13px 18px 20px;overflow:auto}.player-mat>.section-heading>strong{font-family:Georgia,serif;font-size:1.35rem}.mat-overview{grid-template-columns:1.15fr 1.2fr .95fr;gap:10px;margin-top:10px;display:grid}.mat-overview>article,.mat-detail-columns>article{border:1px solid #ddd6ca;border-radius:10px;min-width:0;padding:10px}.player-mat h3{text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px;font-size:.68rem}.player-mat p,.factory-list{margin:7px 0;font-size:.68rem}.workers.vertical{min-height:28px}.track-summary,.infrastructure-summary{gap:5px;display:grid}.track-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.track-summary span,.infrastructure-summary span{border-radius:6px;justify-content:space-between;gap:5px;padding:6px 7px;font-size:.65rem;display:flex}.mat-detail-columns{grid-template-columns:1.2fr .8fr;gap:10px;margin-top:10px;display:grid}.factory-list{gap:4px;display:grid}.influence-tokens{flex-wrap:wrap;gap:4px;display:flex}.influence-tokens span{color:#fff;background:#dd771f;border-radius:50%;place-items:center;width:24px;height:24px;font-size:.65rem;font-weight:800;display:grid}.report-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;margin-top:12px;display:grid}.score-report{border-radius:9px;gap:4px;padding:10px;font-size:.72rem;display:grid}.report-layer,.feedback-layer{place-items:center;padding:24px;display:grid}.reports-dialog{border:1px solid #b79c61;border-radius:17px;width:min(980px,100vw - 48px);max-height:min(82vh,760px);padding:18px;overflow:auto;box-shadow:0 18px 60px #191b164d}.reports-dialog h2{margin:4px 0 0;font-family:Georgia,serif;font-size:1.5rem}.reports-dialog-content{grid-template-columns:1.3fr 1fr 1fr;gap:12px;margin-top:14px;display:grid}.reports-dialog-content>article{border:1px solid #ddd3bb;border-radius:10px;min-width:0;padding:12px}.reports-dialog h3{text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px;font-size:.76rem}.reports-dialog p{font-size:.72rem;line-height:1.4}.report-detail{border-radius:8px;gap:4px;margin-top:7px;padding:8px;font-size:.7rem;display:grid}.report-detail p{margin:0}.report-detail span{font-size:.66rem}.feedback-dialog{border:1px solid #b79c61;border-radius:17px;width:min(510px,100vw - 44px);padding:22px;box-shadow:0 18px 60px #191b164d}.feedback-dialog h2{margin:6px 0 10px;font-family:Georgia,serif;font-size:1.3rem}.feedback-dialog>p:not(.eyebrow){font-size:.82rem;line-height:1.45}.feedback-result{border-radius:9px;gap:5px;margin:14px 0;padding:10px;font-size:.75rem;display:grid}.feedback-dialog>small{font-size:.66rem}.error-page{align-content:start;display:grid}.error-card{text-align:center;width:min(600px,90vw);margin:18vh auto;padding:36px}.error-card h1{font-family:Georgia,serif;font-size:2.5rem}@media (width<=1180px){.lobby-page{padding-left:10px;padding-right:10px}.lobby-page .app-header{margin-left:-10px;margin-right:-10px}.lobby-shell{grid-template-columns:185px minmax(520px,1fr) 220px;gap:9px}.lobby-form{padding:28px 26px 22px}.lobby-form h1,.lobby-empty h1{font-size:2.15rem}.form-row{grid-template-columns:180px minmax(250px,1fr);gap:14px}.lobby-aside>section{padding:14px}.table-page{grid-template-rows:38px 56px minmax(0,1fr) 132px;padding:8px}.table-page.without-actions{grid-template-rows:38px 56px minmax(0,1fr)}.table-layout{grid-template-columns:minmax(650px,1fr) 286px}.action-list>button,.action-list>.action-group{flex-basis:100%}.app-header strong{font-size:1.1rem}.table-toolbar{gap:8px}.table-toolbar button{padding:8px 10px;font-size:.72rem}.game-counters span{padding:7px 8px;font-size:.68rem}.starting-choice-panel{grid-template-columns:1fr auto}.starting-choice-panel>div:first-child{grid-column:1/-1}.player-mat-drawer{width:calc(100vw - 16px)}.player-sheet-peek{max-width:205px}.player-sheet-peek b{text-overflow:ellipsis;overflow:hidden}.mat-overview{grid-template-columns:repeat(3,minmax(0,1fr))}.reports-dialog-content{grid-template-columns:1fr 1fr}}@media (width<=860px){.player-sheet-peek{display:none}.mat-overview,.mat-detail-columns{grid-template-columns:1fr}.player-mat-drawer.player-sheet-full{max-height:92vh}.reports-dialog-content{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.board-location-highlight,.player-mat-drawer{animation:none}}.worker-filter-status{flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.session-forget-dialog{max-width:34rem;margin:auto;padding:1.5rem}.session-forget-dialog button{margin:.5rem .5rem 0 0}.table-page{grid-template-rows:40px 62px minmax(0,1fr) 120px;gap:8px;height:100dvh;min-height:0}.table-page.without-actions{grid-template-rows:40px 62px minmax(0,1fr)}.table-layout{grid-template-columns:minmax(0,1fr) 310px}.game-board-content{height:calc(100% / var(--board-zoom));gap:8px}.board-map-backdrop{opacity:.25}.board-section,.region-card{padding:8px}.eyebrow{font-size:11px;line-height:1.3}.employment .section-heading h2{margin-top:2px;font-size:15px}.employment-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.employment-space{padding:7px}.employment-space strong{margin-top:6px;font-size:12px;line-height:1.35}.employment-space strong>span{display:block}.worker{flex:0 0 32px;width:32px;height:32px}.worker span{font-size:16px}.worker-white span,.worker-yellow span{color:#20231f;text-shadow:none}.queue{flex-wrap:wrap;gap:4px}.queue .worker{flex-basis:23px;width:23px;height:23px}.queue b,.queue>span{font-size:12px}.regions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.region-card{border-top-width:3px;flex-direction:column;justify-content:center;display:flex}.region-card>header{justify-content:space-between;align-items:center;gap:6px;margin-bottom:5px;display:flex}.region-card>header>strong{font-size:15px}.region-reward{white-space:nowrap;border-radius:5px;padding:3px 6px;font-size:12px;font-weight:700}.market-card{padding:5px}.market-card header{font-size:12px}.market-card header small{font-size:11px}.market-slots{gap:3px}.market-slot{border:1px solid #ddd8c9;padding:4px 1px}.market-slot b{font-size:12px}.market-slot abbr{cursor:help;text-decoration:none}.market-slot .influence-value{margin-top:3px;font-size:18px;line-height:1.1;display:block}.market-slot small{margin-top:3px;font-size:11px;display:block}.market-slot.owned{border:2px solid var(--owner-color);background:color-mix(in srgb, var(--owner-color) 9%, var(--color-paper-raised));padding:3px 0}.market-slot span.owner-marker{color:var(--color-ink);margin:0;font-size:11px;display:inline-flex;overflow:visible}.owner-marker{border:1px solid var(--owner-color);background:color-mix(in srgb, var(--owner-color) 20%, var(--color-paper-raised));min-width:25px;height:20px;color:var(--color-ink);border-radius:5px;justify-content:center;align-items:center;padding:0 4px;font-size:11px;font-style:normal;font-weight:850;display:inline-flex}.train-track{grid-template-columns:auto repeat(7,minmax(0,1fr));gap:4px;margin-top:6px}.train-track b{font-size:12px}.train-track span{height:27px;font-size:11px;font-weight:750}.train-track span.occupied{color:var(--color-ink);border:2px solid var(--owner-color);background:color-mix(in srgb, var(--owner-color) 20%, var(--color-paper-raised))}.iwakura-grid{gap:6px}.iwakura article{padding:6px;font-size:12px;line-height:1.25}.iwakura article strong{min-height:15px}.iwakura article small{font-size:11px}.mission-owners{flex-wrap:wrap;gap:3px;display:flex}.side-players h2,.log-card h2{font-size:14px}.player-card{border-left:4px solid var(--owner-color);padding:7px 9px}.player-card.active{border-color:var(--owner-color)}.player-card.selected{outline-offset:-3px;outline:1px dashed #666456}.player-title{align-items:start;gap:8px}.player-title>strong{overflow-wrap:anywhere;align-items:center;gap:6px;font-size:15px;display:flex}.player-title>span{white-space:nowrap;font-size:15px}.player-title .owner-marker{flex-shrink:0}.player-status{align-items:center;gap:6px;margin:3px 0;font-size:11px;display:flex}.player-status b{border-radius:5px;padding:1px 6px}.player-card .resource-row{margin:4px 0;font-size:13px}.player-card>small{font-size:12px;line-height:1.35}.player-infrastructure{display:block;font-size:11px!important}.player-mat .influence-tokens span{background:var(--owner-color)}.text-button,.factory-goods>header small{font-size:12px}.factory-goods .factory-preview-tile b{font-size:14px}.factory-goods .factory-preview-tile span{font-size:12px}.log-entry{font-size:12px;line-height:1.35}.log-entry small{font-size:11px}@media (width<=1180px){.table-page{grid-template-rows:34px 64px minmax(0,1fr) 108px;gap:6px;padding:6px}.table-page.without-actions{grid-template-rows:34px 64px minmax(0,1fr)}.table-layout{grid-template-columns:minmax(0,1fr) 250px;gap:6px}.table-toolbar{flex-wrap:wrap;gap:4px 8px;padding:5px 8px}.game-counters{gap:4px}.game-counters span{padding:5px;font-size:11px}.player-sheet-peek{display:none}.board-placeholder.live-board,.board-section,.region-card{padding:6px}.game-board-content,.regions-grid{gap:5px}.employment-space{padding:5px}.employment-space strong{margin-top:4px;font-size:12px}.workers{gap:3px}.worker{flex-basis:28px;width:28px;height:28px}.queue{margin-top:4px;padding-top:4px}.queue .worker{flex-basis:20px;width:20px;height:20px}.region-card>header>strong{font-size:14px}.region-reward{padding:2px 4px;font-size:11px}.market-card{padding:3px}.region-markets{gap:4px}.market-slots,.train-track{gap:2px}.train-track b,.train-track span{font-size:11px}.iwakura-grid{gap:4px}.iwakura article{padding:4px}.iwakura article strong{font-size:12px}.player-title>strong,.player-title>span{font-size:14px}.player-card{padding:6px}.player-card>small{font-size:11px}.actions-panel{grid-template-columns:160px 1fr;padding:8px}.action-list{max-height:88px}}.board-zoom-controls{bottom:2px;left:8px;right:auto}.starting-board-layer.collapsed{bottom:2px}.player-card.selected{box-shadow:none}.player-mat .influence-tokens span{color:var(--color-ink);border:2px solid var(--owner-color);background:color-mix(in srgb, var(--owner-color) 20%, var(--color-paper-raised));width:30px;height:30px;font-size:15px}@media (width<=1180px){.table-page{grid-template-rows:28px 44px minmax(0,1fr) 80px}.table-page.without-actions{grid-template-rows:28px 44px minmax(0,1fr)}.table-toolbar h1{font-size:18px}.table-toolbar .eyebrow,.board-placeholder.live-board>.eyebrow{display:none}.board-placeholder.live-board{grid-template-rows:auto minmax(0,1fr)}.employment .section-heading>div:first-child{align-items:center;gap:8px;display:flex}.employment .section-heading h2{margin:0;font-family:inherit;font-size:12px}.employment .section-heading .eyebrow{display:none}.employment-space .worker{flex-basis:24px;width:24px;height:24px}.market-slot .influence-value{margin-top:0}.region-card>header{margin-bottom:2px}.iwakura article span{font-size:11px}.side-column{grid-template-rows:auto minmax(55px,1fr) auto auto}.side-column>section{padding:7px}.side-column h2{margin-bottom:6px}.player-card:not(.active):not(.selected) .player-status{display:none}.player-card .resource-row{margin:2px 0;font-size:12px}.player-card>small{line-height:1.2}.actions-panel{padding:6px}.actions-panel h2{margin-bottom:0;font-size:13px}.action-list{max-height:66px}.employment .text-button{padding:4px 7px}.iwakura article span{white-space:nowrap}.train-track{grid-template-columns:48px repeat(7,minmax(0,1fr))}.train-track span{line-height:1.05}}.table-page{grid-template-rows:40px 62px minmax(0,1fr) 90px}.table-page .app-header{height:100%}.employment .section-heading h2{margin:0}.employment .section-heading .eyebrow{display:none}.region-card>*{flex-shrink:0}.region-card{justify-content:flex-start}.game-board{padding-bottom:30px}.mission-owners{gap:2px}.mission-owners .owner-marker{min-width:17px;height:17px;padding:0 2px}.action-list{max-height:68px}@media (width<=1180px){.table-page{grid-template-rows:28px 44px minmax(0,1fr) 60px}.action-list{max-height:46px}}.region-card{padding-top:5px;padding-bottom:5px}.market-slot small{margin-top:1px}@media (width<=1180px){.region-card{padding-top:4px;padding-bottom:4px}.actions-panel>div>.eyebrow{display:none}.actions-panel h2{font-size:12px;line-height:1.15}.worker-filter-status>span{display:none}.worker-filter-status .text-button{padding:1px 3px;font-size:11px}}.sequence-banner{z-index:10;margin:0;padding:5px 8px;font-size:12px;line-height:1.2;position:absolute;bottom:12px;left:155px;right:12px}.sequence-banner>span{display:none}.queue>.worker{margin-left:0}@media (width<=1180px){.action-list>button,.action-list>.action-group{flex-basis:calc(50% - 3px)}}.board-placeholder.live-board>.eyebrow{display:none}.board-placeholder.live-board>h1{margin:2px 0}.game-board-content{grid-template-rows:auto minmax(min-content,1fr) auto}.regions-grid{grid-template-rows:repeat(2,minmax(min-content,1fr))}.employment-space strong>.employment-action{text-align:left;background:0 0;border:0;padding:0;font-size:12px;line-height:1.35;display:block}.employment-action:not(:disabled):hover{text-decoration:underline}.employment-action:disabled{opacity:.55;cursor:default}.market-slot[role=button],.train-track [role=button],.iwakura article[role=button]{cursor:pointer}.market-slot[role=button]:hover,.train-track [role=button]:hover,.iwakura article[role=button]:hover{outline-offset:-2px;outline:2px solid #9a7b35}[role=button]:focus-visible{outline:3px solid #9a7b35}.context-action-chips{flex-wrap:wrap;align-items:start;gap:5px;max-height:100%;display:flex;overflow:auto}.context-action-chips button{padding:7px 10px;font-size:12px}.context-action-bar{align-items:center}.context-action-bar h2{margin:0;font-size:13px}.composer-layer{z-index:100;justify-content:center;align-items:center;display:flex}.action-composer{border:1px solid #b99d57;border-radius:16px;width:min(780px,100vw - 32px);max-height:calc(100dvh - 48px);padding:22px;overflow:auto;box-shadow:0 12px 60px #252a2944}.action-composer h2{margin:5px 0 16px;font-family:Georgia,serif}.composer-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.composer-fields label{gap:5px;font-size:13px;font-weight:650;display:grid}.composer-fields select{width:100%;min-width:0;padding:9px;font-size:14px}.composer-description{font-size:14px;line-height:1.4}.composer-preview{border-radius:9px;margin:12px 0;padding:12px;font-size:14px}.composer-preview p{margin:5px 0}.action-composer>small{margin-top:12px;font-size:12px;display:block}@media (width<=1180px){.context-action-bar{grid-template-columns:150px 1fr}.context-action-chips button{padding:5px 8px;font-size:11px}}.composer-worker{align-items:center;gap:8px;margin:0 0 12px;display:flex}.composer-worker .worker{flex-shrink:0}.composer-action-options{flex-wrap:wrap;grid-column:1/-1;gap:.6rem;display:flex}.composer-action-options button[aria-pressed=true]{outline:2px solid var(--gold,#927d51);outline-offset:2px}.composer-action-options button:disabled{opacity:.55}.employment-layout{grid-template-columns:92px minmax(0,1fr);gap:8px;margin-top:5px;display:grid}.employment-layout .employment-grid{align-self:stretch;margin-top:0}.worker-queue{border:1px solid #c8d1c4;border-radius:8px;min-width:0;padding:5px}.worker-queue h3{margin:0 0 4px;font-family:inherit;font-size:11px;font-weight:600;line-height:1.2}.worker-queue-rows{gap:2px;display:grid}.worker-queue-row{grid-template-columns:repeat(3,1fr);gap:3px;display:grid}.worker-queue-row:nth-child(2n+3){border-top:1px solid #b8c6b3;padding-top:2px}.worker-queue-row.single .queue-cell{grid-column:3}.queue-cell{border-radius:3px;place-items:center;height:13px;display:grid}.worker-queue .worker{flex-basis:12px;width:12px;height:12px;margin:0;display:block}.queue-empty{border:1px solid #a4b29c;border-radius:2px;width:10px;height:10px}.queue-direction{color:#52604b;margin-top:4px;font-size:9px;display:block}.queue-bag{justify-content:space-between;margin-top:3px;font-size:10px;display:flex}@media (width<=1180px){.employment-layout{grid-template-columns:82px minmax(0,1fr);gap:5px}}.table-layout .side-column{grid-template-rows:minmax(0,auto) minmax(60px,1fr);overflow:hidden}.table-layout .side-column .side-players,.table-layout .side-column .log-card{overflow:auto}.starting-bonuses-button{white-space:nowrap}.side-players .player-card{margin-top:4px;padding:6px 8px}.side-players .player-card .player-status{margin:1px 0}.side-players .player-card .resource-row{margin:2px 0;font-size:12px}.side-players .player-card>small{font-size:11px;line-height:1.3}.side-players .player-card{line-height:1.25}.side-players .player-card:not(.active):not(.selected) .player-status{display:none}:root{--goods-cotton:#edd0d6;--goods-paper:#dce2e7;--goods-bento:#e2d4b8;--goods-lenses:#cadde1;--goods-lightBulbs:#eee2a9;--goods-watches:#d8d1df;--color-ink:#252d2b;--color-text-muted:#52615d;--color-paper:#f3ebdd;--color-paper-raised:#fffaf2;--color-board-frame:#173d43;--color-jade-soft:#d4e2d8;--color-jade-deep:#506953;--color-research-soft:#e4e8e7;--color-mining:#dce0da;--color-mining-bonus:#682735;--color-bonus:#682735;--color-bonus-soft:#f0dfe1;--color-brass:#ae9058;--color-selection:#765d2f;--color-border:#b9c8be;--color-queue-slot:#bfcebf;--color-queue-slot-middle:#b4c5b5;--color-queue-slot-bottom:#a8bda9;--color-focus:#173d43;--color-dialog-shade:#173d4359}.table-page .table-toolbar{background:var(--color-board-frame);color:var(--color-paper-raised);border-color:var(--color-brass)}.table-toolbar .game-counters>span:not(.autosave-status){background:var(--color-paper);color:var(--color-ink)}.table-page .board-placeholder.live-board{background:var(--color-jade-soft);border-color:var(--color-board-frame)}.employment{color:var(--color-ink);background:var(--color-paper-raised);border-color:var(--color-border)}.employment .section-heading h2{color:var(--color-board-frame)}.employment-space{background:var(--color-paper);border:1px solid var(--color-border)}.employment-space strong>.employment-action{color:var(--color-board-frame)}.employment-action:disabled{color:var(--color-text-muted);opacity:1}.worker-queue{color:var(--color-ink);background:var(--color-jade-soft);border-color:var(--color-border)}.queue-cell{background:var(--color-queue-slot)}.queue-area-3 .queue-cell{background:var(--color-queue-slot-middle)}.queue-area-4 .queue-cell{background:var(--color-queue-slot-bottom)}.worker-queue-row:nth-child(2n+3),.queue-empty{border-color:var(--color-jade-deep)}.employment .text-button{color:var(--color-board-frame);border-color:var(--color-border);background:var(--color-paper-raised)}.employment .factory-supply-button{border-color:var(--color-selection)}.employment .factory-supply-button b{color:var(--color-paper-raised);background:var(--color-selection)}.employment .worker.selected{outline-color:var(--color-selection)}.region-card{color:var(--color-ink);background:var(--color-paper-raised);border-color:var(--color-border)}.region-card>header>strong{color:var(--color-board-frame)}.region-north{border-top-color:var(--color-jade-deep)}.region-east{border-top-color:var(--color-board-frame)}.region-central{border-top-color:var(--color-selection)}.region-west{border-top-color:var(--color-bonus)}.region-reward{background:var(--color-bonus);color:var(--color-paper-raised)}.market-card{background:var(--color-paper)}.market-card header small,.market-slot small{color:var(--color-text-muted)}.market-slot:not(.owned){background:var(--color-paper-raised);border-color:var(--color-border)}.market-slot .influence-value{color:var(--color-ink)}.train-track span:not(.occupied){background:var(--color-jade-soft);color:var(--color-ink)}.train-track span.bonus:not(.occupied){background:var(--color-bonus-soft);color:var(--color-bonus);border:1px solid var(--color-bonus)}.market-slot[role=button]:hover,.train-track [role=button]:hover{outline-color:var(--color-selection)}.composer-layer{background:var(--color-dialog-shade)}.action-composer{color:var(--color-ink);background:var(--color-paper-raised);border:2px solid var(--color-board-frame)}.action-composer h2{color:var(--color-board-frame)}.action-composer .eyebrow,.action-composer>small{color:var(--color-text-muted)}.action-composer select{color:var(--color-ink);background:var(--color-paper-raised);border-color:var(--color-jade-deep)}.composer-preview{color:var(--color-ink);background:var(--color-jade-soft);border:1px solid var(--color-border)}.action-composer>button{background:var(--color-board-frame);color:var(--color-paper-raised)}.composer-selection-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0;display:grid}.composer-selection-summary>div{background:var(--color-jade-soft);overflow-wrap:anywhere;border-radius:8px;min-width:0;padding:8px 10px}.composer-selection-summary dt{color:var(--color-text-muted);font-size:12px}.composer-selection-summary dd{margin:3px 0 0;font-size:14px;font-weight:650}.composer-adjustment{border-left:3px solid var(--color-board-frame);background:var(--color-paper);padding:10px;font-size:13px}.sequence-banner button{flex:none}.context-action-bar.has-sequence{gap:10px;display:flex;overflow:auto}.context-action-bar .sequence-banner{color:var(--color-ink);background:0 0;flex:1;align-items:center;gap:10px;margin:0;padding:0;display:flex;position:static}.context-action-bar .sequence-banner>div{flex:1;min-width:160px}.context-action-bar .sequence-banner b,.context-action-bar .sequence-banner span{display:block}.context-action-bar .sequence-banner button{padding:6px 10px;font-size:12px}.composer-action-options button{color:var(--color-board-frame);background:var(--color-paper);border:1px solid var(--color-border)}.composer-action-options button[aria-pressed=true]{color:var(--color-paper-raised);background:var(--color-board-frame);outline-color:var(--color-selection)}.composer-action-options button:disabled{color:var(--color-text-muted);opacity:1;cursor:not-allowed;border-style:dashed}.employment button:focus-visible,.region-card [role=button]:focus-visible,.action-composer button:focus-visible,.action-composer select:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}:root{--color-warning:#654d20;--color-warning-soft:#f1e4c5;--color-success:#315845;--color-success-soft:#dce8df;--color-error:#752b39;--color-error-soft:#f0dfe1;--color-on-frame-muted:#d4e2d8;--ink:var(--color-ink);--paper:var(--color-paper);--paper-light:var(--color-paper-raised);--brass:var(--color-brass);--jade:var(--color-jade-deep);--indigo:var(--color-board-frame);--vermilion:var(--color-bonus);color:var(--color-ink);background:var(--color-paper)}body{background:var(--color-paper)}button{background:var(--color-board-frame);color:var(--color-paper-raised)}button.secondary,.text-button{background:var(--color-paper-raised);color:var(--color-board-frame);border-color:var(--color-border)}input,select{color:var(--color-ink);background:var(--color-paper-raised);border-color:var(--color-jade-deep);accent-color:var(--color-board-frame)}input[type=checkbox]{accent-color:var(--color-board-frame)}.card{color:var(--color-ink);background:var(--color-paper-raised);border-color:var(--color-border)}.app-header strong{color:var(--color-board-frame)}.app-header span,.hint,.hero p:last-child,.waiting{color:var(--color-text-muted)}.eyebrow{color:var(--color-selection)}.error-banner{color:var(--color-error);background:var(--color-error-soft)}.server-checking,.connection-connecting,.connection-retrying{background:var(--color-warning-soft);color:var(--color-warning)!important}.server-online,.connection-synchronized,.game-counters .autosave-status{background:var(--color-success-soft);color:var(--color-success)!important}.server-offline,.connection-disconnected{background:var(--color-error-soft);color:var(--color-error)!important}.lobby-page{color:var(--color-ink);background:var(--color-board-frame)}.lobby-page .app-header{color:var(--color-paper-raised);background:var(--color-board-frame);border-color:var(--color-brass)}.lobby-page .app-header strong{color:var(--color-paper-raised)}.lobby-page .app-header span{color:var(--color-on-frame-muted)}.lobby-menu,.lobby-aside>section{color:var(--color-paper-raised);background:color-mix(in srgb, var(--color-board-frame) 88%, var(--color-jade-soft));border-color:var(--color-brass)}.lobby-menu>.eyebrow,.lobby-aside .eyebrow{color:var(--color-paper)}.lobby-menu button{color:var(--color-on-frame-muted)}.lobby-menu button span{color:var(--color-brass)}.lobby-menu button:hover{color:var(--color-paper-raised);background:color-mix(in srgb, var(--color-jade-soft) 14%, transparent)}.lobby-menu button.active{color:var(--color-ink);background:var(--color-paper);border-color:var(--color-brass)}.lobby-menu button.active span{color:var(--color-selection)}.lobby-menu-footer,.lobby-menu-footer span,.lobby-aside small{color:var(--color-on-frame-muted);border-color:var(--color-brass)}.lobby-content{color:var(--color-ink);background:var(--color-paper);border-color:var(--color-brass)}.lobby-form h1,.lobby-empty h1,.lobby-empty h2{color:var(--color-board-frame)}.lobby-form header,.form-row{border-color:var(--color-border)}.form-row small,.lobby-form footer p,.saved-game small,.compact-form .intro,.lobby-empty>p:not(.eyebrow){color:var(--color-text-muted)}.segmented{background:var(--color-jade-soft)}.segmented button{color:var(--color-text-muted)}.segmented button.selected{color:var(--color-board-frame);background:var(--color-paper-raised)}.segmented button:disabled{opacity:1;border:1px dashed var(--color-jade-deep)}.lobby-form input,.lobby-form select{color:var(--color-ink);background:var(--color-paper-raised);border-color:var(--color-jade-deep)}.lobby-form footer button,.lobby-form footer button:hover{color:var(--color-paper-raised);background:var(--color-board-frame)}.mode-pill,.planned{color:var(--color-warning);background:var(--color-warning-soft);border-color:var(--color-selection)}.placeholder-mark{color:var(--color-board-frame);border-color:var(--color-jade-deep);background:var(--color-jade-soft)}.saved-game{background:var(--color-paper-raised);border-color:var(--color-border)}.palette-swatches .ink{background:var(--color-ink)}.palette-swatches .paper{background:var(--color-paper)}.palette-swatches .gold{background:var(--color-brass)}.palette-swatches .jade{background:var(--color-jade-soft)}.palette-swatches .indigo{background:var(--color-board-frame)}.palette-swatches .vermilion{background:var(--color-bonus)}.board-placeholder,.board-section{color:var(--color-ink);background:var(--color-paper-raised);border-color:var(--color-border)}.board-placeholder h1,.section-heading h2,.side-column h2,.actions-panel h2{color:var(--color-board-frame)}.map-water{fill:var(--color-jade-soft)}.map-land{fill:var(--color-paper)}.map-route{stroke:var(--color-selection)}.iwakura article{background:var(--color-paper);color:var(--color-ink)}.iwakura article span,.iwakura article small{color:var(--color-text-muted)}.player-card{color:var(--color-ink);background:var(--color-paper)}.player-card small,.player-status,.player-card .player-infrastructure{color:var(--color-text-muted)}.player-card.active{background:color-mix(in srgb, var(--owner-color) 9%, var(--color-paper-raised))}.player-card:hover,.player-card:focus-visible{background:var(--color-jade-soft);border-color:var(--owner-color)}.player-card.selected{outline-color:var(--color-selection)}.player-status b{background:var(--color-board-frame);color:var(--color-paper-raised)}.log-entry,.log-card p{color:var(--color-ink);border-color:var(--color-border)}.log-entry:hover,.log-entry:focus-visible{color:var(--color-ink);background:var(--color-jade-soft)}.log-entry small{color:var(--color-success)}.board-zoom-controls{border-color:var(--color-brass)}.board-zoom-controls button,.board-zoom-controls .board-zoom-value{color:var(--color-board-frame);background:var(--color-paper-raised);border-color:var(--color-border)}.sequence-banner{color:var(--color-warning);background:var(--color-warning-soft)}.seat{background:var(--color-paper-raised);border-color:var(--color-border)}.seat small{color:var(--color-text-muted)}.start-controls{border-color:var(--color-border)}.context-action-chips button,.action-list button,.action-group{background:var(--color-paper);color:var(--color-board-frame)}.action-list button span,.action-group summary>span{background:var(--color-board-frame);color:var(--color-paper-raised)}.action-group summary small{color:var(--color-text-muted)}.action-group>div button{background:var(--color-paper-raised)}.starting-bonuses{border-color:var(--color-border)}.starting-bonuses-heading small,.starting-bonus>small,.starting-board-layer-toolbar small{color:var(--color-text-muted)}.starting-bonus{color:var(--color-ink);background:var(--color-paper-raised);border-color:var(--color-border)}.starting-bonus p b,.starting-board-layer-toggle{color:var(--color-paper-raised);background:var(--color-board-frame)}.starting-bonus header span{color:var(--color-text-muted);background:var(--color-paper)}.starting-bonus.selected,.starting-bonus.unchosen{opacity:1;background:var(--color-paper);border-style:dashed}.starting-bonus.selectable{border-color:var(--color-selection);box-shadow:none}.starting-bonus.selectable header span{color:var(--color-bonus);background:var(--color-bonus-soft)}.starting-bonus.selectable:hover,.starting-bonus.selectable:focus-visible{box-shadow:0 0 0 2px var(--color-selection)}.starting-bonus.focused{background:var(--color-jade-soft);border-color:var(--color-board-frame);box-shadow:0 0 0 2px var(--color-board-frame)}.starting-choice-panel{color:var(--color-ink);background:var(--color-jade-soft);border-color:var(--color-jade-deep)}.department-choice-dialog{width:min(720px,100vw - 32px);max-height:calc(100dvh - 32px);padding:24px;overflow:auto}.department-choice-dialog header,.department-choice-dialog footer{justify-content:space-between;align-items:center;gap:16px;display:flex}.department-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.department-choice-card{text-align:left;color:var(--color-ink);background:var(--color-paper-raised);border:2px solid var(--color-border);align-items:center;gap:12px;min-height:110px;display:flex}.department-choice-card .worker{flex:none}.department-choice-card>span:nth-child(2){flex:1}.department-choice-card strong,.department-choice-card small{display:block}.department-choice-card p{margin:6px 0 0}.department-choice-card.selected{background:var(--color-jade-soft);border-color:var(--color-ink)}.department-choice-card:disabled{opacity:1;cursor:default}@media (width<=600px){.department-choice-grid{grid-template-columns:1fr}}.starting-board-layer.open,.starting-board-layer-toolbar{color:var(--color-ink);background:var(--color-paper);border-color:var(--color-border)}.starting-board-layer.open{box-sizing:border-box;scrollbar-gutter:stable;height:min(480px,100% - 20px);max-height:none}.board-inspector-layer,.drawer-layer{background:var(--color-dialog-shade)}.factory-supply,.player-mat-drawer,.reports-dialog,.feedback-dialog{color:var(--color-ink);background:var(--color-paper);border-color:var(--color-board-frame)}.factory-supply>header,.factory-effect-card>small,.player-sheet-controls{border-color:var(--color-border)}.factory-supply h2,.factory-effect-card h3,.reports-dialog h2,.feedback-dialog h2{color:var(--color-board-frame)}.factory-supply>header small,.factory-goods>header small,.factory-effect-card>small{color:var(--color-text-muted)}.factory-goods{color:var(--color-ink);background:var(--color-paper-raised);border-color:var(--color-border)}.factory-goods .factory-preview-tile{color:var(--color-ink);background:var(--color-paper);border-color:var(--color-border)}.factory-goods .factory-preview-tile.pinned{color:var(--color-paper-raised);background:var(--color-board-frame);border-color:var(--color-board-frame)}.factory-effect-card{color:var(--color-ink);background:var(--color-jade-soft);border-color:var(--color-jade-deep)}.player-sheet-peek{color:var(--color-board-frame);background:var(--color-jade-soft);border-color:var(--color-jade-deep)}.mat-overview>article,.mat-detail-columns>article,.reports-dialog-content>article{color:var(--color-ink);background:var(--color-paper-raised);border-color:var(--color-border)}.player-mat h3,.reports-dialog h3{color:var(--color-board-frame)}.player-mat p,.factory-list,.reports-dialog p,.score-report span,.feedback-dialog>p:not(.eyebrow),.feedback-dialog>small{color:var(--color-text-muted)}.track-summary span,.infrastructure-summary span,.score-report,.report-detail,.feedback-result{color:var(--color-ink);background:var(--color-jade-soft)}.report-detail span,.feedback-result strong{color:var(--color-success)}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[role=button]:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.player-card:focus-visible,.log-entry:focus-visible,.starting-bonus.selectable:focus-visible{outline:3px solid var(--color-focus);outline-offset:-3px}.table-toolbar .eyebrow{color:var(--color-on-frame-muted)}.iwakura article[role=button]:hover{outline-color:var(--color-selection)}.factory-goods .factory-preview-tile:hover,.factory-goods .factory-preview-tile:focus-visible{outline-color:var(--color-focus)}.factory-description{border:1px solid var(--color-border);border-left:4px solid var(--color-bonus);background:var(--color-paper);border-radius:9px;margin:12px 0;padding:12px}.factory-description h3{color:var(--color-board-frame);margin:0}.factory-description p{margin:7px 0 0;font-size:14px;line-height:1.45}.starting-reserve-note{font-size:12px;line-height:1.4;color:var(--color-bonus)!important}.mat-overview{grid-template-columns:1fr 2fr .65fr}.player-mat h3{font-size:.8rem}.mat-track{border-bottom:1px solid var(--color-border);padding:10px 0}.mat-track:last-of-type{border-bottom:0}.mat-track header{justify-content:space-between;gap:8px;font-size:.85rem;display:flex}.mat-track>strong{color:var(--color-ink);margin:5px 0;font-size:.95rem;display:block}.player-mat .mat-track p{margin:7px 0 0;font-size:.82rem;line-height:1.4}.mat-track-meter{background:var(--color-border);border-radius:8px;height:9px;margin:8px 0;position:relative}.mat-track-meter i{border-radius:inherit;background:var(--color-board-frame);height:100%;display:block}.mat-track-meter span{background:var(--color-brass);width:3px;height:13px;position:absolute;top:-2px}.mat-track-meter span.reached{background:var(--color-paper-raised)}.mat-worker-slots{gap:5px;display:grid}.mat-worker-slot{border:1px solid var(--color-border);background:var(--color-paper);border-radius:7px;align-items:center;gap:8px;min-height:43px;padding:5px 7px;display:flex}.mat-worker-slot.printed-bonus{border-left:4px solid var(--color-bonus)}.mat-worker-slot.awards-bonus{background:var(--color-jade-soft)}.mat-worker-slot .slot-number{min-width:12px;font-size:.8rem}.mat-worker-slot>div{min-width:0}.mat-worker-slot strong{font-size:.81rem;line-height:1.35;display:block}.mat-worker-slot small,.mat-tracks>small,.mat-workers>small{color:var(--color-ink);font-size:.75rem;line-height:1.35;display:block}.mat-workers>small{margin-top:8px}.empty-worker{border:1px dashed var(--color-border);border-radius:50%;flex-shrink:0;width:23px;height:23px}.department-dot{vertical-align:middle;width:9px;height:9px;margin-right:5px;display:inline-block}.mat-departments{border:1px solid var(--color-border);background:var(--color-paper-raised);border-radius:10px;margin-top:10px;padding:12px}.mat-departments>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.mat-departments section{align-items:center;gap:8px;font-size:.82rem;display:flex}.player-mat .mat-departments p{margin:3px 0;font-size:.82rem}@media (width<=1100px){.mat-overview{grid-template-columns:1fr 2fr}.mat-overview>article:last-child{grid-column:1/-1}.infrastructure-summary{grid-template-columns:repeat(3,1fr)}.mat-departments>div{grid-template-columns:repeat(2,minmax(0,1fr))}}.mat-employment{grid-template-columns:1fr 1.25fr;gap:10px;min-width:0;display:grid}.mat-employment .mat-departments{margin:0;padding:10px}.mat-employment .mat-departments>div{grid-template-columns:1fr;gap:6px}.mat-employment .mat-departments section{min-height:43px}.mat-employment .mat-workers{border:1px solid var(--color-border);background:var(--color-paper-raised);border-radius:10px;padding:10px}.zaibatsu-mat{padding:10px 14px 14px}.zaibatsu-mat .section-heading h2{margin:2px 0}.zaibatsu-upper{grid-template-columns:minmax(340px,.9fr) minmax(0,1.25fr);gap:10px;margin-top:8px;display:grid}.zaibatsu-mat .mat-employment{grid-template-columns:1.1fr 1fr}.zaibatsu-progress{grid-template-rows:auto 1fr;gap:8px;min-width:0;display:grid}.zaibatsu-mat article{min-width:0}.zaibatsu-mat .mat-infrastructure,.zaibatsu-mat .mat-tracks,.mat-factory-band,.mat-contract-band,.mat-status-band{border:1px solid var(--color-border);background:var(--color-paper-raised);border-radius:10px;padding:8px 10px}.zaibatsu-mat h3{margin:0 0 6px;font-size:12px}.zaibatsu-mat .mat-departments section{min-height:40px}.zaibatsu-mat .mat-departments section>.worker{flex-shrink:0;width:24px;height:24px}.zaibatsu-mat .mat-departments b,.zaibatsu-mat .mat-departments p{font-size:12px;line-height:1.3}.zaibatsu-mat .mat-workers{padding:10px}.zaibatsu-mat .mat-worker-slot{gap:6px;min-height:40px;padding:4px}.zaibatsu-mat .mat-worker-slot strong,.zaibatsu-mat .mat-worker-slot small{font-size:12px;line-height:1.3}.zaibatsu-mat .mat-worker-slots{gap:5px}.zaibatsu-mat .mat-workers>small,.zaibatsu-mat .mat-tracks>small{font-size:11px}.mat-infrastructure-rows{gap:5px;display:grid}.mat-infrastructure-row{grid-template-columns:70px 1fr 30px;align-items:center;gap:8px;font-size:12px;display:grid}.mat-component-slots{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;display:grid}.mat-component-slots span{border:1px solid var(--color-bonus);background:var(--color-paper);border-radius:4px;place-items:center;height:22px;font-size:17px;display:grid}.mat-component-slots .used{color:var(--color-text-muted);border-style:dashed}.zaibatsu-mat .mat-track header{flex-wrap:wrap;font-size:12px}.zaibatsu-mat .mat-track header>span{font-size:12px}.zaibatsu-mat .mat-track-meter{margin:7px 0}.zaibatsu-mat .mat-track p{margin:3px 0;font-size:12px;line-height:1.3}.zaibatsu-mat .mat-track-finance .mat-track-meter i{background:var(--color-success)}.mat-factory-band,.mat-contract-band,.mat-status-band{margin-top:8px}.mat-six-slots{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;display:grid}.mat-tile-slot{border:1px solid var(--color-bonus);background:var(--color-paper);overflow-wrap:anywhere;border-radius:5px;flex-direction:column;justify-content:center;gap:3px;min-width:0;padding:6px;font-size:12px;display:flex}.mat-tile-slot.empty{color:var(--color-text-muted);border-style:dashed}.mat-tile-slot>span{font-size:11px}.mat-factory-band .mat-tile-slot{min-height:52px}.mat-contract-band .mat-tile-slot{min-height:32px}.mat-status-band{grid-template-columns:1.6fr 1fr;align-items:center;gap:12px;display:grid}.zaibatsu-mat .mat-status-band p{margin:0;font-size:12px;line-height:1.35}@media (width<=1100px){.zaibatsu-upper{grid-template-columns:minmax(335px,1fr) minmax(0,1.25fr)}.zaibatsu-mat .mat-employment{grid-template-columns:1fr 1fr}}@media (width<=760px){.zaibatsu-upper{grid-template-columns:1fr}.mat-six-slots{grid-template-columns:repeat(3,minmax(0,1fr))}}.zaibatsu-mat{line-height:1.25}.zaibatsu-mat .mat-departments section>.worker{aspect-ratio:1;min-width:24px;max-width:24px}.zaibatsu-mat .mat-tracks h3,.zaibatsu-mat .mat-infrastructure h3,.zaibatsu-mat .mat-track header{line-height:1.25}.zaibatsu-mat .mat-tracks>small{line-height:1.25}.mat-factory-band,.mat-contract-band{grid-template-columns:65px minmax(0,1fr);align-items:center;gap:8px;display:grid}.mat-factory-band .starting-reserve-note{grid-column:1/-1;margin:0}.mat-factory-band h3,.mat-contract-band h3{margin:0}.mat-contract-band .mat-tile-slot.empty{flex-direction:row;justify-content:start;gap:5px}.mat-infrastructure-machine .mat-component-slots span{border-radius:50%;justify-self:center;width:22px}.mat-factory-band,.mat-contract-band{grid-template-columns:78px minmax(0,1fr)}.player-mat-drawer.player-sheet-full{max-height:calc(100dvh - 40px)}.zaibatsu-mat{background:color-mix(in srgb, var(--owner-color) 12%, var(--color-paper));position:relative}.zaibatsu-mat .mat-departments>div{gap:5px}.zaibatsu-mat .mat-department{width:100%;min-height:40px;color:var(--color-ink);text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:7px;padding:3px 0;display:flex}.zaibatsu-mat .mat-department>.worker{flex-shrink:0;width:24px;min-width:24px;height:24px}.zaibatsu-mat .mat-department:hover{background:var(--color-paper)}.mat-component-slots .mat-cell{border:1px solid var(--color-bonus);height:22px;color:var(--color-ink);background:var(--color-paper);border-radius:4px;place-items:center;padding:0;font-size:16px;display:grid}.mat-component-slots .mat-cell.used{color:var(--color-text-muted);border-style:dashed}.mat-infrastructure-machines .mat-component-slots .mat-cell{border-radius:50%;justify-self:center;width:22px}.mat-shared-bonuses{grid-template-columns:70px 1fr 30px;gap:8px;margin:3px 0;display:grid}.mat-shared-bonuses>div{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;display:grid}.mat-shared-bonuses .shared-bonus{border:1px solid var(--color-border);min-height:22px;color:var(--color-ink);background:var(--color-paper);white-space:nowrap;border-radius:5px;justify-content:center;align-items:center;gap:3px;padding:2px;font-size:11px;display:flex}.mat-shared-bonuses .shared-bonus .worker{width:9px;min-width:9px;height:9px}.shared-bonus.resolved{background:var(--color-jade-soft);border-color:var(--color-success)}.shared-bonus.partial{background:var(--color-paper);border-color:var(--color-bonus);border-style:dashed}.shared-bonus.locked{background:var(--color-paper-raised)}.mat-shared-bonuses .shared-bonus small{font-size:10px}.mat-track-fields{grid-template-columns:repeat(14,minmax(0,1fr));gap:3px;margin:5px 0;display:grid}.mat-track-fields .mat-track-field{border:1px solid var(--color-border);background:var(--color-paper);min-width:0;min-height:39px;color:var(--color-ink);border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:2px 0;display:flex;position:relative}.mat-track-field>small{color:var(--color-text-muted);font-size:9px;line-height:1}.mat-track-field>b{font-size:11px;line-height:1.1}.mat-track-field.has-bonus{border-color:var(--color-bonus)}.mat-track-field.current{border:2px solid var(--owner-color);background:color-mix(in srgb,var(--owner-color) 14%,var(--color-paper-raised))}.mat-track-field.current:after{content:"";background:var(--owner-color);border-radius:50%;width:7px;height:7px;position:absolute;top:-4px}.mat-field-bonus{place-items:center;height:10px;display:grid}.mat-field-bonus .worker{width:8px;min-width:8px;height:8px}.mat-field-bonus .mini-influence{width:11px;height:11px;color:var(--color-ink);background:color-mix(in srgb,var(--owner-color) 18%,var(--color-paper));border:1px solid var(--owner-color);border-radius:50%;place-items:center;font-size:8px;font-style:normal;line-height:1;display:grid}.mat-track-finance .mat-track-field{background:var(--color-jade-soft)}.mat-track-finance .mat-track-field.current{border-color:var(--owner-color)}.mat-hint-details{z-index:3;border:1px solid var(--color-bonus);background:var(--color-paper-raised);border-radius:9px;padding:12px 14px;font-size:14px;position:absolute;bottom:12px;left:14px;right:14px;box-shadow:0 4px 24px #0003}.zaibatsu-mat .mat-infrastructure{padding:6px 10px}.zaibatsu-mat .mat-infrastructure-rows{gap:2px}.zaibatsu-mat .mat-component-slots .mat-cell{height:20px;min-height:20px;padding:0;line-height:1}.zaibatsu-mat .mat-shared-bonuses{margin:1px 0}.zaibatsu-mat .shared-bonus{height:18px;min-height:18px;padding:0 2px;line-height:1}.zaibatsu-mat .mat-track{padding:2px 0}.zaibatsu-mat .mat-track-fields{margin:3px 0}.zaibatsu-mat .mat-track-field{min-height:33px}.zaibatsu-mat .mat-track p{margin:1px 0}.zaibatsu-mat .shared-bonus .worker,.zaibatsu-mat .mat-field-bonus .worker{aspect-ratio:1;flex:none}.zaibatsu-mat .mat-goal{border:1px solid var(--color-border);background:var(--color-paper);width:auto;min-height:20px;color:var(--color-ink);white-space:nowrap;border-radius:5px;align-items:center;gap:4px;padding:1px 4px;font-size:10px;display:inline-flex}.mat-benefit-token{background:var(--color-bonus-soft);min-width:17px;height:17px;color:var(--color-ink);border-radius:50%;place-items:center;font-weight:800;display:grid}.mat-goal.assigned{border-color:var(--color-bonus)}.mat-goal.unassigned .mat-benefit-token{background:0 0}.zaibatsu-mat .mat-track header{align-items:center;gap:5px;display:flex}.zaibatsu-mat .mat-track header>span{margin-left:auto}.zaibatsu-mat .mat-infrastructure-row,.zaibatsu-mat .mat-shared-bonuses{grid-template-columns:70px 1fr 82px}.mat-row-goal{justify-content:end;align-items:center;gap:4px;display:flex}.mat-influence-bank{justify-content:space-between;align-items:center;gap:8px;padding:2px 10px;display:flex}.zaibatsu-mat .mat-influence-bank h3{margin:0}.zaibatsu-mat .mat-influence-bank .influence-tokens span{width:24px;height:24px;font-size:12px}.zaibatsu-mat .mat-factory-band,.zaibatsu-mat .mat-contract-band{padding:6px 10px}.mat-factory-band>header,.mat-contract-band>header{flex-direction:column;align-items:start;gap:4px;display:flex}.mat-factory-band>header>small,.mat-contract-band>header>small{white-space:nowrap;font-size:9px}.mat-position{flex-direction:column;gap:2px;min-width:0;display:flex}.zaibatsu-mat .mat-cell.mat-tile-slot{width:100%;color:var(--color-ink);text-align:left;border-color:var(--color-bonus)}.zaibatsu-mat .mat-factory-tile{min-height:52px}.mat-factory-tile>b{justify-content:space-between;gap:3px;display:flex}.mat-tile-label{background:var(--color-jade-soft);border-radius:4px;padding:1px 3px}.zaibatsu-mat .mat-contract-tile{flex-direction:row;justify-content:start;align-items:center;gap:5px;min-height:32px;display:flex}.mat-contract-tile .worker{flex:none;width:12px;min-width:12px;height:12px}.mat-contract-tile b{font-size:11px}.mat-contract-tile>small{margin-left:auto}.mat-position-score{text-align:center;letter-spacing:.02em;color:var(--color-text-muted);font-size:10px}.mat-position-score.reached{color:var(--color-ink);font-weight:700}.zaibatsu-mat .mat-reserve{color:var(--color-ink);background:var(--color-bonus-soft);border:0;padding:2px;font-size:10px}.zaibatsu-mat{padding-bottom:8px}.zaibatsu-mat .zaibatsu-upper{margin-top:5px}.zaibatsu-mat .zaibatsu-progress{gap:5px}.zaibatsu-mat .mat-factory-band,.zaibatsu-mat .mat-contract-band{margin-top:5px}.zaibatsu-mat .mat-department>.worker{box-sizing:border-box;aspect-ratio:1;flex:0 0 24px;width:24px;min-width:24px;max-width:24px;height:24px}.zaibatsu-mat .mat-worker-slot{border-left-width:4px;grid-template-columns:12px 28px minmax(0,1fr);display:grid}.zaibatsu-mat .mat-worker-slot>.worker,.zaibatsu-mat .mat-worker-slot>.empty-worker{box-sizing:border-box;aspect-ratio:1;flex:none;width:28px;min-width:28px;height:28px}.zaibatsu-mat .shared-bonus .bonus-alternative{font-size:9px;line-height:1}.zaibatsu-mat .mat-cell.mat-worker-slot{width:100%;color:var(--color-ink);text-align:left}.player-mat-drawer:focus{outline:none}.zaibatsu-mat .mat-cell:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.zaibatsu-mat .mat-hint-details{max-height:min(220px,40vh);overflow:auto}@media (pointer:coarse){.zaibatsu-mat .mat-department,.zaibatsu-mat .mat-worker-slot{min-height:44px}.zaibatsu-mat .mat-component-slots .mat-cell{height:24px;min-height:24px}.zaibatsu-mat .shared-bonus,.zaibatsu-mat .mat-goal{height:auto;min-height:24px}.zaibatsu-mat .mat-track-field{min-height:33px}}.zaibatsu-mat .mat-factory-band,.zaibatsu-mat .mat-contract-band{grid-template-columns:78px minmax(0,1fr) 82px}@media (width<=760px){.zaibatsu-mat .mat-factory-band,.zaibatsu-mat .mat-contract-band{grid-template-columns:65px minmax(0,1fr) 70px}}.zaibatsu-mat .mat-track header .mat-goal{margin-left:auto}.zaibatsu-mat .mat-track-research .mat-track-field{background:var(--color-research-soft)}.zaibatsu-mat .mat-track-mining .mat-track-field{background:var(--color-mining);color:var(--color-ink)}.zaibatsu-mat .mat-track-mining .mat-track-field>small{color:var(--color-text-muted)}.zaibatsu-mat .mat-track-mining .mat-track-field.has-bonus{border-color:var(--color-mining-bonus)}.zaibatsu-mat .mat-track-mining .mat-field-bonus .worker{border-color:var(--color-text-muted)}.zaibatsu-mat .mat-track-mining .mat-track-field:focus-visible{outline-color:var(--color-focus);outline-offset:2px}.zaibatsu-mat .mat-track .mat-track-field.current{background:color-mix(in srgb,var(--owner-color) 14%,var(--color-paper-raised));color:var(--color-ink)}.zaibatsu-mat .mat-track-mining .mat-track-field.current>small{color:var(--color-ink)}.zaibatsu-mat .shared-bonus{gap:2px}.zaibatsu-mat .shared-bonus:has(.bonus-alternative){flex-wrap:wrap;row-gap:0;height:auto;min-height:18px}.zaibatsu-mat .mat-cell{cursor:default}.zaibatsu-mat .mat-heading{grid-template-columns:minmax(110px,180px) minmax(0,1fr) auto;align-items:center;gap:12px;min-height:52px;display:grid}.zaibatsu-mat .mat-heading h2{overflow-wrap:anywhere;font-size:22px}.zaibatsu-mat .mat-hint-details{border:0;border-left:1px solid var(--color-border);min-height:0;max-height:48px;box-shadow:none;background:0 0;border-radius:0;padding:0 8px;font-size:12px;position:static;overflow:auto}.zaibatsu-mat .mat-hint-details:empty{border:0}.zaibatsu-mat .mat-hint-details p{margin:2px 0 0;font-size:12px;line-height:1.3}.zaibatsu-mat .mat-component-slots .mat-cell{border:1px solid var(--color-bonus);border-radius:4px;place-items:center;display:grid}.zaibatsu-mat .mat-infrastructure-machines .mat-component-slots .mat-cell{border-radius:50%;justify-self:center;width:24px}.zaibatsu-mat .mat-worker-column>.mat-influence-bank{border:1px solid var(--color-border);background:var(--color-paper-raised);border-radius:10px;flex-direction:column;justify-content:start;align-items:start;margin:0;padding:10px}.zaibatsu-mat .mat-influence-bank .influence-tokens{flex-wrap:wrap;gap:4px;display:flex}.zaibatsu-mat .zaibatsu-progress{grid-template-rows:auto 1fr}.mat-worker-column{grid-template-rows:auto 1fr;gap:8px;min-width:0;display:grid}.infrastructure-icon{flex:none;width:18px;height:18px;display:block}.zaibatsu-mat .mat-component-slots .mat-cell.used{border-style:dashed}.bonus-dialog-layer{place-items:center;padding:24px;display:grid}.starting-bonus-dialog{border:1px solid var(--color-border);background:var(--color-paper-raised);width:min(1100px,94vw);max-height:85dvh;box-shadow:0 16px 50px var(--color-dialog-shade);border-radius:16px;padding:20px;overflow:auto}.starting-bonus-dialog .starting-bonuses{border:0;margin:0;padding:0}.starting-bonus-dialog .starting-bonus-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=1100px){.starting-bonus-dialog .starting-bonus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.drawer-layer:not(.player-sheet-layer):not(.bonus-dialog-layer){place-items:center;padding:20px;display:grid}.drawer-layer [role=dialog]{min-width:0;max-height:calc(100dvh - 40px);overflow:auto}.drawer-layer [role=dialog]:focus{outline:none}.factory-dialog-layer{z-index:20}.factory-dialog{width:min(980px,96vw);height:min(560px,100dvh - 40px)}.drawer-layer .factory-dialog{overflow:hidden}.factory-dialog .factory-supply{flex-direction:column;height:100%;max-height:none;display:flex;overflow:hidden}.factory-dialog .factory-supply>header,.factory-dialog .factory-pool-description{flex-shrink:0}.factory-dialog .factory-supply-content{flex:1;grid-template-rows:minmax(0,1fr);min-height:0}.factory-dialog .factory-goods-grid{scrollbar-gutter:stable;min-height:0;overflow:auto}.factory-dialog .factory-effect-card{flex-direction:column;min-height:0;display:flex;overflow:hidden}.factory-dialog .factory-effect-card>span,.factory-dialog .factory-effect-card>.eyebrow,.factory-dialog .factory-effect-card>h3,.factory-dialog .factory-effect-card>small{flex-shrink:0}.factory-dialog .factory-effect-card>p:not(.eyebrow){scrollbar-gutter:stable;flex:1;min-height:0;overflow:auto}.factory-dialog .factory-effect-card>small{margin-top:auto}.form-row label{margin:0;font-weight:700}:where(button,input,select,summary,[role=button],[tabindex="0"]):focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.lobby-menu button:focus-visible{outline-color:var(--color-paper-raised)}.table-toolbar button:focus-visible{outline:3px solid var(--color-paper-raised);outline-offset:2px}.table-toolbar{overflow:visible}.report-detail,.score-report{overflow-wrap:anywhere}.reports-dialog-content{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-dialog-content>article:last-child{grid-column:1/-1}.reports-dialog p,.report-detail span,.score-report span{font-size:13px;line-height:1.5}.reports-dialog h3,.reports-dialog .report-detail strong,.reports-dialog .score-report strong{font-size:14px}.acceptance-nav{z-index:10;background:var(--color-paper-raised);border:1px solid var(--color-border);border-radius:0 0 8px 8px;align-items:center;gap:8px;padding:2px 8px;font-size:10px;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.acceptance-nav label{white-space:nowrap;align-items:center;gap:6px;margin:0;display:flex}.acceptance-nav select{max-width:260px;padding:2px;font-size:10px}.acceptance-nav span{max-width:130px}@media (pointer:coarse){.table-toolbar button,.context-action-chips button,.sequence-banner button,.board-zoom-controls button,.factory-goods .factory-preview-tile,.employment-action,.action-composer button{min-height:44px}.worker:not(.queue-worker):is(button){flex-basis:36px;width:36px;height:36px;margin:4px}.market-slot[role=button],.train-track [role=button]{min-width:24px;min-height:36px}.iwakura article[role=button]{min-height:44px}.table-page{grid-template-rows:40px 62px minmax(0,1fr) 72px}.table-page.without-actions{grid-template-rows:40px 62px minmax(0,1fr)}.context-action-chips{gap:8px}.table-toolbar{flex-wrap:wrap}.action-composer select,.lobby-form select,.lobby-form input{min-height:44px}}.reports-dialog .score-report ul{margin:8px 0 0;padding-left:18px;font-size:13px;line-height:1.5}.reports-dialog-content{flex-direction:column;display:flex}.final-score-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.game-finished .context-action-bar{display:flex}.game-finished .context-action-bar h2{text-transform:none}.worker:is(button):disabled{opacity:1;filter:none;cursor:default}.acceptance-nav button{padding:3px;font-size:10px}.connection-presenting{background:var(--color-warning-soft);color:var(--color-warning)!important}.zaibatsu-color-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.zaibatsu-color-picker button{background:var(--color-paper);min-height:44px;color:var(--color-ink);border:1px solid var(--color-border);align-items:center;gap:8px;padding:8px;font-size:.8rem;display:flex}.zaibatsu-color-picker button[aria-pressed=true]{outline:2px solid var(--color-board-frame)}.zaibatsu-color-picker i{border-radius:50%;flex-shrink:0;width:16px;height:16px}.starting-train-dialog{width:min(960px,100vw - 32px)}.starting-regions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;display:grid}.starting-regions-grid h3{margin:0}.starting-regions-grid .department-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0 12px}.starting-regions-grid .department-choice-card{gap:6px;min-height:80px;padding:10px;font-size:14px}@media (width<=600px){.starting-regions-grid{grid-template-columns:1fr}}.map-fit-frame{width:100%;height:100%;position:relative;overflow:hidden;container:board-map/size}.japan-map{--ranking-width:100px;isolation:isolate;border:1px solid var(--color-border);border-radius:12px;position:absolute;inset:0;overflow:hidden}.japan-map-image{object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;background:#d6e4e3;width:100%;height:100%;position:absolute;inset:0}.japan-map .regions-grid{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid;position:absolute;inset:8px}.japan-map .region-card{background:var(--region-surface);border:2px solid var(--region-accent);border-radius:12px;grid-template-rows:auto minmax(128px,1fr) auto;justify-content:stretch;gap:5px;min-height:0;padding:6px;display:grid;position:relative}.japan-map .region-north{--region-accent:#708978;--region-surface:#d7e3d67a}.japan-map .region-east{--region-accent:#679097;--region-surface:#c6dfe17a}.japan-map .region-central{--region-accent:#aa955e;--region-surface:#ede0ad7a}.japan-map .region-west{--region-accent:#b58a77;--region-surface:#e9c4b07a}.japan-map .region-card>header{border-bottom:1px solid var(--region-accent);margin:0;padding:0 0 5px}.japan-map .region-card>header>strong{color:var(--color-board-frame);font-family:Georgia,serif;font-size:18px;line-height:1.1}.japan-map .region-reward{padding:4px 7px;font-size:12px}.japan-map .region-markets{grid-template-columns:minmax(0,1fr) var(--ranking-width) minmax(0,1fr);place-items:stretch center;gap:8px;display:grid}.japan-map .region-influence{align-self:center}.japan-map .market-card{box-sizing:border-box;background:var(--color-paper-raised);border:1px solid var(--region-accent);border-radius:8px;flex-direction:column;width:min(100%,230px);padding:6px;display:flex}.japan-map .market-card>header{justify-content:center;margin-bottom:4px;font-size:14px;line-height:1.1}.japan-map .market-slots{flex:1;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;min-height:88px;margin:0;display:grid}.japan-map .market-slot{background:var(--goods-color);grid-template-rows:auto auto;grid-template-columns:1fr 1fr;place-items:center;min-height:0;padding:3px;line-height:1.1;display:grid}.japan-map .market-slot .goods-label{grid-column:1/-1}.japan-map .market-slot .influence-value,.japan-map .market-slot small{margin-top:0}.japan-map .market-slot b{flex-shrink:0;font-size:14px}.japan-map .market-slot .influence-value{flex-shrink:0;margin-top:2px;font-size:19px}.japan-map .market-slot small{flex-shrink:0;margin-top:2px;font-size:11px}.japan-map .market-slot .owner-marker{flex-shrink:0;height:16px;min-height:16px;padding:0 4px;font-size:11px;line-height:14px}.japan-map .train-track{background:var(--color-paper-raised);border:1px solid var(--region-accent);border-radius:7px;gap:4px;margin:0;padding:3px}.japan-map .train-track>b{font-size:12px}.japan-map .train-track>span{min-width:0;height:24px}.japan-map .train-track>span.bonus{white-space:nowrap;font-size:10px}.japan-map .region-card.board-location-highlight{animation:1.65s ease-out board-location-flash}.fitted-board{grid-template-rows:auto minmax(0,1fr);gap:6px;display:grid}.board-employment .employment{padding:6px}.board-employment .employment-space{padding:5px}.board-employment .employment-space strong{margin-top:4px;font-size:11px}.board-employment .workers .worker{flex-basis:27px;width:27px;height:27px;min-height:0;margin:0}.board-employment .employment-action{min-height:0}.map-missions{scrollbar-width:thin;grid-area:1/2/3;min-height:0;overflow:auto}.map-missions .iwakura{background:var(--color-paper-raised);border:1px solid var(--color-border);flex-direction:column;height:100%;min-height:0;padding:7px;display:flex}.map-missions .iwakura-grid{flex:1;grid-template-rows:repeat(6,auto);grid-template-columns:1fr;gap:3px;min-height:0;display:grid}.map-missions .iwakura article{align-content:start;min-height:0;padding:3px;font-size:11px}.map-missions .iwakura article strong{font-size:13px}.map-missions .iwakura .eyebrow{margin-bottom:4px}.fitted-board{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) 184px;gap:8px;padding:0}.board-employment{scrollbar-width:thin;background:var(--color-paper-raised);border-radius:10px;grid-area:1/1;min-height:0;overflow:auto}.board-employment .employment{border:0}.board-employment .section-heading{flex-wrap:wrap;gap:4px}.board-employment .section-heading h2{margin:0;font-size:12px}.board-employment .board-section-actions{justify-content:flex-end;width:auto}.board-employment .text-button{padding:5px;font-size:10px}.board-employment .employment-layout{grid-template-columns:86px minmax(0,1fr);gap:6px;display:grid}.board-employment .worker-queue{width:100%}.board-employment .worker-queue-rows{max-width:85px;margin:auto}.board-employment .employment-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.board-employment .employment-space{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:6px;min-height:64px;display:flex}.board-employment .employment-space strong{margin:0;font-size:12px}.board-employment .employment-space .workers{gap:2px}.board-placeholder.live-board{grid-template-rows:minmax(0,1fr)}.table-phase{white-space:normal}.board-employment .employment-space strong>.employment-action{font-size:12px;line-height:1.25}.board-employment .section-heading h2{font-size:13px}.board-employment .board-section-actions{flex-direction:row;align-items:center;gap:5px}.board-employment .factory-supply-button{justify-content:space-between;align-items:center;gap:8px;padding:8px;font-size:11px;line-height:1.25;display:flex}.board-employment .factory-supply-button>span{text-align:left}.board-employment .factory-supply-button>b{flex:none;margin:0;padding:3px 6px;line-height:1}.factory-goods .factory-preview-tile{cursor:default}.factory-level-column{grid-template-rows:auto repeat(2,minmax(0,1fr));gap:8px;min-width:0;display:grid}.factory-level-column>h3{background:var(--color-jade-soft);color:var(--color-board-frame);text-align:center;border-radius:6px;margin:0;padding:5px 8px;font-size:14px}.fitted-board>.map-fit-frame{grid-area:2/1;min-height:0}.board-employment .section-heading{align-items:center}.board-employment .workers .worker{flex-basis:27px;width:27px;height:27px}.map-missions .mission-card{border-left:4px solid var(--department-accent,var(--color-border));background:var(--department-soft,var(--color-paper))}.mission-yellow{--department-accent:#c6991d;--department-soft:#f5edce}.mission-red{--department-accent:#b73c36;--department-soft:#f1dedb}.mission-gray{--department-accent:#777e7c;--department-soft:#e5e8e4}.mission-black{--department-accent:#343b38;--department-soft:#e0e6df}.mission-blue{--department-accent:#3375b7;--department-soft:#dfe9f0}.mission-white{--department-accent:#b3b7ad;--department-soft:#fffaf2}.mission-department{gap:2px;margin:3px 0;display:grid}.mission-department b{font-size:11px}.mission-department small{font-size:10px;line-height:1.3}.japan-map .region-direction{color:var(--color-text-muted);white-space:nowrap;font-family:system-ui,sans-serif;font-size:12px;font-weight:600}.map-missions .mission-owners .owner-marker{height:16px;min-height:16px;padding:0 4px;font-size:11px;line-height:14px}.table-layout .side-column .game-log-panel{flex-direction:column;gap:6px;display:flex;overflow:hidden}.game-log-panel>header{flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;display:flex}.game-log-panel>header h2{margin:0}.game-log-panel>header small{color:var(--color-text-muted);white-space:nowrap;font-size:11px}.game-log-list{scrollbar-width:thin;flex:1;min-height:0;overflow:auto}.game-log-list .log-entry{border:1px solid var(--color-border);border-left:4px solid var(--log-accent);background:color-mix(in srgb,var(--log-accent) 8%,var(--color-paper-raised));border-radius:7px;margin-bottom:6px;padding:8px}.game-log-list .log-entry:hover{background:color-mix(in srgb,var(--log-accent) 15%,var(--color-paper-raised))}.game-log-list .log-revision{color:var(--log-accent);font-size:11px}.game-log-list .log-entry small{color:var(--color-ink);font-weight:500}.game-log-list .log-key-event{background:var(--color-jade-soft);border-color:var(--color-jade-deep)}.factory-goods-cotton{--goods-color:var(--goods-cotton)}.factory-goods-paper{--goods-color:var(--goods-paper)}.factory-goods-bento{--goods-color:var(--goods-bento)}.factory-goods-lenses{--goods-color:var(--goods-lenses)}.factory-goods-lightBulbs{--goods-color:var(--goods-lightBulbs)}.factory-goods-watches{--goods-color:var(--goods-watches)}.japan-map .market-slot .goods-label{border:1px solid var(--color-border);background:var(--goods-color);min-width:34px;color:var(--color-ink);border-radius:4px;padding:0 4px}.board-employment .employment-space .workers{justify-content:center;align-items:center;width:100%}.board-employment .hiring-slots{flex-wrap:nowrap;gap:4px}.hiring-worker-slot{border:1px solid var(--color-border);background:var(--color-paper-raised);border-radius:6px;flex:0 0 31px;place-items:center;width:31px;height:31px;display:grid}.hiring-worker-slot.empty{background:0 0;border-style:dashed}@media (width<=1100px){.board-employment .hiring-slots{gap:2px}.hiring-worker-slot{flex-basis:24px;width:24px;height:28px}.board-employment .hiring-worker-slot .worker{flex-basis:21px;width:21px;height:21px}}.region-influence{width:var(--ranking-width);border:1px solid var(--region-accent);background:color-mix(in srgb,var(--color-paper-raised) 85%,transparent);border-radius:8px;padding:6px;font-size:13px}.region-influence h3{text-align:center;color:var(--color-board-frame);margin:0 0 5px;font-size:1em}.region-influence ol{gap:4px;margin:0;padding:0;list-style:none;display:grid}.region-influence li{grid-template-columns:1em 1fr 1.5em;align-items:center;gap:3px;display:grid}.region-influence li b{text-align:right}.region-influence .owner-marker,.region-influence .foreign-marker{text-align:center;padding:1px 3px;font-size:.9em;line-height:1.2}.region-influence .foreign-marker{background:#e0ddd5;border:1px solid #8c8c80;border-radius:4px}.region-influence .influence-place{color:var(--color-ink-muted);font-size:.85em}.region-influence .ranking-legend{text-align:center;color:var(--color-ink-muted);margin-top:5px;font-size:.65em;display:block}.board-employment .employment-space.available{background:var(--color-paper);border-color:var(--color-border)}.board-employment .employment-space.unavailable{background:#e0e7e3;border-color:#c3cfca}.board-employment .employment-action.available{color:var(--color-board-frame);opacity:1}.board-employment .employment-action.unavailable{color:#71817b;opacity:1}.board-employment .employment-space.unavailable .worker{filter:saturate(.55);opacity:.7;box-shadow:none}.board-employment .employment-space.unavailable .hiring-worker-slot{background:#e9eeeb;border-color:#c6d1cb}.board-employment .employment-space.unavailable .hiring-worker-slot.empty{background:0 0}.table-page.compact-table-header{grid-template-rows:auto minmax(0,1fr) 90px}.table-page.compact-table-header.without-actions{grid-template-rows:auto minmax(0,1fr)}.compact-table-header .table-toolbar{flex-wrap:wrap;gap:8px;min-height:54px}.compact-table-header .table-toolbar>.table-brand{flex-shrink:0;align-items:center;gap:9px;display:flex}.table-brand strong{letter-spacing:.04em;white-space:nowrap;color:var(--color-paper-raised);font-family:Georgia,serif;font-size:18px}.table-brand .connection-icon{flex:0 0 24px;place-items:center;width:24px;height:24px;padding:0;font-size:14px;line-height:1;display:grid}.table-page.compact-table-header.no-action-footer{grid-template-rows:auto minmax(0,1fr);height:100dvh;min-height:0;overflow:hidden}.starting-bonus-short-name,.starting-selected-description,.map-region-tabs{display:none}.game-log-pages{flex-shrink:0;justify-content:space-between;align-items:center;gap:5px;display:flex}.game-log-pages button{padding:3px 7px;font-size:11px}.game-log-pages small{font-size:11px}.table-layout .side-column .game-log-panel,.table-layout .side-column .game-log-list{overflow:hidden}.game-log-list .log-entry{margin:0}.game-log-list .log-entry>span{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.game-log-list .log-entry>small{display:none}.japan-map .region-influence{padding:4px;font-size:12px}.japan-map .region-influence h3{margin-bottom:3px;line-height:14px}.japan-map .region-influence ol{gap:2px}.japan-map .region-influence li{line-height:16px}.japan-map .region-influence .owner-marker,.japan-map .region-influence .foreign-marker{box-sizing:border-box;height:17px;min-height:0;padding:0 3px;line-height:15px}.japan-map .region-influence .ranking-legend{margin-top:3px;font-size:10px;line-height:12px}.japan-map .market-slot .goods-label{text-overflow:clip;background:0 0;border:0;grid-template-rows:26px 16px;align-content:center;justify-items:center;gap:2px;width:100%;min-width:0;max-width:100%;height:44px;padding:0;display:grid;overflow:visible}.goods-icon{width:26px;height:26px;color:var(--color-ink);flex-shrink:0;display:block}.japan-map .market-slot .goods-label>span{text-overflow:clip;white-space:nowrap;color:var(--color-ink);flex-shrink:0;margin:0;font-size:13px;font-weight:750;line-height:1.15;overflow:visible}@media (width<=1100px){.japan-map .region-card{gap:2px}.japan-map .region-reward{padding:2px 5px}.japan-map .train-track{padding:1px}.japan-map .train-track>span{height:22px}.japan-map .market-card{padding:2px 4px}.japan-map .market-slots{gap:3px}.japan-map .market-slot{padding:2px}.japan-map .market-slot .goods-label{grid-template-rows:22px 15px;gap:1px;height:38px}.japan-map .market-slot .goods-icon{width:22px;height:22px}}@media (height<=800px){.side-players .player-tracks,.side-players .player-infrastructure{display:none}}.table-turn-controls{box-sizing:border-box;border-top:2px solid var(--owner-color,var(--color-border));background:var(--color-jade-soft);border-radius:0 0 15px 15px;flex:0 0 calc(100% + 24px);justify-content:center;align-items:center;gap:8px;min-width:0;height:40px;margin:0 -12px -8px;padding:5px 12px;display:flex}.table-turn-controls .turn-controls-label{color:var(--color-board-frame);margin-right:8px;font-size:12px}.table-turn-controls small{color:var(--color-ink);font-size:12px}.table-turn-controls button{min-height:28px;color:var(--color-ink);border-color:var(--owner-color,var(--color-border));background:color-mix(in srgb,var(--owner-color,var(--color-jade-deep)) 18%,var(--color-paper-raised));padding:5px 12px;font-size:12px}.table-turn-controls button.consolidation-required{color:var(--color-ink);background:var(--color-warning-soft);border:2px solid var(--color-selection)}.table-turn-controls small.consolidation-required{font-weight:800}.compact-table-header .game-counters{flex-wrap:wrap;flex:1;justify-content:center;gap:4px;margin:0}.compact-table-header .game-counters>span{padding:6px 7px}@media (width<=1180px){.table-page.compact-table-header{grid-template-rows:auto minmax(0,1fr) 60px}.table-page.compact-table-header.without-actions{grid-template-rows:auto minmax(0,1fr)}.table-brand strong{font-size:15px}.compact-table-header .table-toolbar{gap:5px;min-height:44px}.compact-table-header .game-counters>span{padding:5px}}.compact-table-header+.acceptance-nav{border-radius:8px 8px 0 0;top:auto;bottom:0}.table-brand .table-version{color:var(--color-on-frame-muted);white-space:nowrap;font-size:11px}@media (width<=1180px){.table-brand .table-version{font-size:10px}}.table-toolbar .factory-supply-button{white-space:nowrap;justify-content:center;align-items:center;gap:7px;display:flex}.board-employment .section-heading{min-height:0}.compact-table-header .table-toolbar-actions>button{padding:9px 11px;font-size:13px}@media (width<=1180px){.compact-table-header .table-toolbar-actions>button{padding:8px 9px;font-size:12px}}.production-factories{grid-column:1/-1}.production-factories>p{color:var(--color-text-muted);margin:0 0 12px;font-size:13px}.production-factories>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.production-factory{text-align:left;border:1px solid var(--color-border);background:var(--color-paper-raised);color:var(--color-ink);flex-direction:column;gap:5px;padding:12px;font-size:14px;display:flex}.production-factory.selected{border:2px solid var(--color-board-frame);background:var(--color-jade-soft)}.production-factory:disabled{opacity:1;color:var(--color-text-muted);cursor:default;background:#e6ebe8}.production-factory:disabled small{color:var(--color-bonus)}.production-factory span,.production-factory small{font-size:12px;font-weight:500}.composer-worker-note{color:var(--color-ink-muted);margin:-8px 0 16px;font-size:12px}.composer-choice-section{grid-column:1/-1;min-width:0}.composer-choice-section h3{margin:0 0 8px;font-size:14px;font-weight:700}.composer-choice-section>p{color:var(--color-ink-muted);margin:8px 0;font-size:12px}.composer-choice-options{flex-wrap:wrap;gap:8px;display:flex}.composer-choice-options button{background:var(--color-paper);min-height:44px;color:var(--color-board-frame);border:1px solid var(--color-border);padding:10px 14px;font-size:13px}.composer-choice-options button[aria-pressed=true]{background:var(--color-board-frame);color:var(--color-paper-raised);border-color:var(--color-board-frame)}.factory-build-card[aria-pressed=true]{background:var(--color-jade-soft);border-color:var(--color-board-frame);box-shadow:inset 0 0 0 1px var(--color-board-frame);color:var(--color-ink)}.factory-build-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.factory-build-card{text-align:left;background:var(--color-paper-raised);border:1px solid var(--color-border);color:var(--color-ink);flex-direction:column;gap:6px;padding:12px;font-size:13px;display:flex}.factory-build-card strong{font-size:16px}.factory-build-card small{color:var(--color-ink-muted);font-weight:600}@media (width<=600px){.factory-build-options{grid-template-columns:1fr}}.composer-footer{border-top:1px solid var(--color-border);flex-direction:column;align-items:flex-start;gap:14px;margin-top:24px;padding-top:18px;display:flex}.composer-footer>button{background:var(--color-board-frame);color:var(--color-paper-raised);min-height:44px}.composer-footer>small{color:var(--color-text-muted);font-size:12px}.composer-board-workers{margin:0 0 18px}.composer-board-workers h3{margin:0 0 8px;font-size:14px}.composer-board-workers>div{flex-wrap:wrap;gap:8px;display:flex}.composer-board-workers button{background:var(--color-paper);color:var(--color-ink);border:1px solid var(--color-border);align-items:center;gap:10px;padding:10px 12px;font-size:13px;display:flex}.composer-board-workers button[aria-pressed=true]{background:var(--color-jade-soft);border-color:var(--color-board-frame);box-shadow:inset 0 0 0 1px var(--color-board-frame)}.composer-board-workers .worker{flex-shrink:0;width:30px;height:30px}:root [data-modal-pointer-return=true]:focus-visible{outline:none}.consolidation-bonuses{margin-bottom:18px}.consolidation-bonuses h3{margin:0 0 8px;font-size:14px}.consolidation-bonuses>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.consolidation-bonuses article{border:1px solid var(--color-border);background:var(--color-jade-soft);border-radius:12px;padding:12px}.consolidation-bonuses header{align-items:center;gap:8px;font-size:14px;display:flex}.consolidation-bonuses .worker{flex-shrink:0;width:26px;height:26px}.consolidation-bonuses p{margin:8px 0;font-size:13px}.consolidation-bonuses small{color:var(--color-ink-muted);font-size:12px}@media (width<=600px){.consolidation-bonuses>div{grid-template-columns:1fr}}.side-players .player-card{width:calc(100% - 10px);margin-left:10px;position:relative}.player-worker-tabs{grid-template-rows:repeat(6,minmax(0,1fr));gap:2px;width:11px;display:grid;position:absolute;top:9px;bottom:9px;left:-13px}.player-worker-tab{border:1px solid #50695380;border-radius:4px 0 0 4px;min-height:4px;display:block}.player-worker-tab.empty{background:var(--color-paper-raised);opacity:.35;border-style:dashed}.table-toolbar-actions{flex-shrink:0;grid-auto-columns:1fr;grid-auto-flow:column;gap:8px;width:max-content;margin-left:auto;display:grid}.table-toolbar-actions>button{white-space:nowrap;width:100%;height:100%;min-height:44px}@media (width<=800px){.table-toolbar-actions{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;width:100%}}.zaibatsu-mat .mat-factory-tile{background:var(--goods-color,var(--color-paper));border-color:color-mix(in srgb,var(--goods-color,var(--color-paper)) 65%,var(--color-ink))}.mat-factory-tile .mat-tile-label{background:color-mix(in srgb,var(--goods-color,var(--color-paper)) 70%,var(--color-paper-raised))}.report-score-track{background:var(--color-paper-raised);border:1px solid var(--color-border);border-radius:10px;margin-top:12px;padding:14px}.report-score-track h4{color:var(--color-board-frame);margin:0 0 8px;font-size:14px}.report-score-axis{color:var(--color-text-muted);justify-content:space-between;margin-left:156px;margin-right:66px;font-size:11px;display:flex}.report-score-row{grid-template-columns:144px minmax(0,1fr) 54px;align-items:center;gap:12px;min-height:36px;display:grid}.report-score-player{overflow-wrap:anywhere;align-items:center;gap:8px;min-width:0;font-size:13px;display:flex}.report-score-lane{background:var(--color-jade-soft);border-radius:5px;height:10px;position:relative}.report-score-fill{background:var(--owner-color);opacity:.45;border-radius:5px;height:100%;position:absolute;top:0}.report-score-pawn{background:var(--owner-color);border:2px solid var(--color-paper-raised);width:16px;height:16px;box-shadow:0 0 0 1px var(--owner-color);border-radius:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.report-score-value{text-align:right;font-size:13px}@media (width<=600px){.report-score-row{grid-template-columns:100px minmax(0,1fr) 48px;gap:8px}.report-score-axis{margin-left:108px;margin-right:56px}.report-score-track{padding:10px}}.factory-side-options{border:0;flex-basis:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;display:grid}.factory-side-options legend{color:var(--color-board-frame);margin-bottom:10px;font-weight:700}.start-controls .factory-side-options label{border:1px solid var(--color-border);background:var(--color-paper-raised);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:14px}.start-controls .factory-side-options label.selected{border-color:var(--color-board-frame);background:var(--color-jade-soft)}.factory-side-options input{accent-color:var(--color-board-frame)}.factory-side-options span{gap:4px;display:grid}.factory-side-options small,.factory-pool-description{color:var(--color-text-muted);font-size:13px;line-height:1.5}.factory-pool-description{margin:0 0 14px}@media (width<=600px){.factory-side-options{grid-template-columns:1fr}}.production-active-bonus{color:var(--color-ink);background:#f8ebc6;border:2px solid #936d23;border-left-width:7px;border-radius:12px;margin:18px 0;padding:18px 20px}.production-active-bonus>b{color:#725019;font-size:16px;display:block}.production-active-bonus p{margin:8px 0;font-size:18px;font-weight:700}.production-active-bonus small{font-size:13px}.production-factories details{color:var(--color-text-muted);margin-bottom:14px;font-size:13px}.production-factories summary{cursor:pointer}.starting-reserve-banner{border:1px solid var(--color-border);border-left:6px solid var(--color-board-frame);background:var(--color-jade-soft);border-radius:12px;margin:16px 0;padding:16px 20px}.starting-reserve-banner>b{color:var(--color-board-frame);font-size:16px}.starting-reserve-banner p{margin:8px 0 0;line-height:1.5}.lobby-page,.room-lobby-page{background:var(--color-board-frame);min-height:100vh;padding:20px}.lobby-page .app-header{background:0 0;border:0;max-width:1120px;margin:0 auto 16px;padding:6px 2px}.lobby-shell{grid-template-columns:minmax(0,1fr);gap:14px;max-width:1120px;min-height:0;display:grid}.lobby-menu{background:var(--color-board-frame);border-color:var(--color-border);grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:6px;display:grid}.lobby-menu>.eyebrow,.lobby-menu-footer{display:none}.lobby-menu button{text-align:center;justify-content:center;padding:12px;font-size:14px}.lobby-content{background:linear-gradient(160deg,var(--color-paper-raised),var(--color-paper));border:1px solid var(--color-border);border-radius:18px}.lobby-form.create-game-form{gap:26px;height:auto;padding:38px 46px 30px}.create-game-form header{align-items:center;padding-bottom:25px}.lobby-form h1{color:var(--color-board-frame);font-size:clamp(36px,4.2vw,56px)}.playing-as{border:1px solid var(--color-brass);background:var(--color-paper-raised);border-radius:40px;align-items:center;gap:12px;min-width:180px;padding:10px 20px 10px 12px;display:flex}.playing-as>i{color:#fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:24px;font-style:normal;display:grid}.playing-as>span{gap:2px;display:grid}.playing-as small{text-transform:uppercase;letter-spacing:.13em;color:var(--color-text-muted);font-size:10px}.playing-as b{font-size:17px}.edition-section,.optional-modules{border:0;min-width:0;margin:0;padding:0}.edition-section legend,.setup-fields legend{letter-spacing:.13em;text-transform:uppercase;color:var(--color-selection);margin:0 0 12px;padding:0;font-size:12px;font-weight:800}.edition-card{border:2px solid var(--color-board-frame);outline:3px solid var(--color-jade-soft);outline-offset:3px;background:var(--color-paper-raised);border-radius:16px;display:block;overflow:hidden}.meiji-landscape{width:100%;height:150px;display:block}.edition-caption{align-items:center;gap:14px;padding:16px 20px;display:flex}.edition-caption input{width:20px;height:20px;accent-color:var(--color-board-frame);margin:0}.edition-caption>span{gap:5px;display:grid}.edition-caption strong{color:var(--color-board-frame);font:700 28px Georgia,serif}.edition-caption small{color:var(--color-text-muted);font-size:13px}.edition-caption>b{color:var(--color-board-frame);background:var(--color-jade-soft);border-radius:20px;margin-left:auto;padding:6px 10px;font-size:11px}.create-identity-row{grid-template-columns:minmax(160px,.8fr) minmax(0,1.5fr);gap:24px;padding-top:4px;display:grid}.create-identity-row label,.create-identity-row>div{align-content:start;gap:10px;font-size:14px;font-weight:700;display:grid}.create-identity-row input{width:100%;min-width:0;padding:12px;font-weight:500}.create-identity-row .zaibatsu-color-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.create-identity-row .zaibatsu-color-picker button{flex-direction:column;gap:5px;padding:8px 4px;font-size:11px}.create-table-options{border-top:1px dashed var(--color-border);grid-template-columns:1fr 1fr;gap:28px;padding-top:22px;display:grid}.create-table-options h2{text-transform:uppercase;letter-spacing:.12em;color:var(--color-selection);margin:0 0 12px;font-size:13px}.create-table-options .segmented{background:var(--color-paper);border:1px solid var(--color-border);border-radius:12px;padding:5px;display:flex}.create-table-options .segmented button{border:1px solid #0000;border-radius:8px;flex:1;min-height:42px;margin:0;padding:8px;font-size:14px}.create-table-options .segmented button.selected{background:var(--color-paper-raised);color:var(--color-board-frame);border-color:var(--color-brass);box-shadow:0 2px 5px #67562d18}.create-table-options small{color:var(--color-text-muted);margin-top:8px;font-size:12px;display:block}.setup-fields{border-top:1px dashed var(--color-border);gap:22px;padding-top:22px;display:grid}.setup-fields .factory-side-options{grid-template-columns:repeat(3,minmax(0,1fr))}.setup-fields .factory-side-options label,.optional-modules label{border:1px solid var(--color-border);background:var(--color-paper);cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:14px;font-size:14px;display:flex}.setup-fields .factory-side-options label.selected,.optional-modules label.selected{border-color:var(--color-board-frame);background:var(--color-jade-soft)}.setup-fields input[type=radio],.setup-fields input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-board-frame);flex-shrink:0;margin:0}.setup-fields span{gap:4px;display:grid}.setup-fields small{color:var(--color-text-muted);font-size:12px;line-height:1.4}.optional-modules{grid-template-columns:1fr 1fr;gap:12px;display:grid}.setup-advice{color:var(--color-selection);margin:0;font-size:12px}.create-session-facts{color:var(--color-text-muted);flex-wrap:wrap;gap:12px 24px;font-size:13px;display:flex}.create-game-form footer{border-top:1px solid var(--color-border);align-items:center;gap:20px;margin:0;padding-top:24px}.create-game-form footer p{margin:0 0 6px;font-size:13px}.create-game-form footer .server-status{background:0 0;margin:0;padding:0;font-size:11px;font-weight:500}.create-game-form footer button,.room-lobby-footer>button{background:var(--color-board-frame);border:1px solid var(--color-board-frame);color:var(--color-paper-raised);white-space:nowrap;border-radius:10px;min-height:52px;padding:16px 32px;font-size:17px;font-weight:800}.create-game-form footer button:hover,.room-lobby-footer>button:hover{background:var(--color-board-frame)}.lobby-brand-line{max-width:1120px;color:var(--color-on-frame-muted);align-items:center;gap:12px;margin:0 auto 18px;padding:5px 0;display:flex}.lobby-brand-line strong{font:700 22px Georgia,serif}.lobby-brand-line small{color:var(--color-on-frame-muted);font-size:11px}.lobby-brand-line>span{color:var(--color-on-frame-muted);margin-left:auto;font-size:12px}.room-lobby-sheet{background:linear-gradient(150deg,var(--color-paper-raised),var(--color-paper));max-width:1120px;min-height:calc(100vh - 98px);color:var(--color-board-frame);border:1px solid var(--color-border);border-radius:18px;flex-direction:column;gap:30px;margin:auto;padding:40px 46px;display:flex;box-shadow:0 18px 50px #0004}.room-lobby-heading{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:26px;display:flex}.room-lobby-heading h1{letter-spacing:.06em;color:var(--color-board-frame);margin:8px 0 0;font:700 clamp(40px,5vw,62px) Georgia,serif}.room-lobby-heading .eyebrow{color:var(--color-text-muted);margin:0}.room-lobby-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.room-lobby-heading-actions button{padding:10px 14px;font-size:12px}.room-lobby-heading-actions .mode-pill{color:var(--color-selection);background:var(--color-paper);border-color:var(--color-brass)}.room-seat-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.room-seat{background:var(--color-paper-raised);border:1px solid var(--color-border);border-radius:14px;align-items:center;gap:16px;min-height:118px;padding:20px;display:flex}.room-seat.open{background:0 0;border-style:dashed}.room-seat.inactive{opacity:.5;background:0 0;border-style:dashed}.room-seat-number{color:var(--color-border);font:700 23px Georgia,serif}.room-seat-emblem{width:46px;height:46px;color:var(--color-paper-raised);border-radius:50%;flex-shrink:0;place-items:center;font-size:28px;display:grid;box-shadow:0 2px 5px #0002}.room-seat-emblem.empty{color:var(--color-border);border:1px dashed var(--color-border);box-shadow:none;background:0 0}.room-seat-person{gap:7px;min-width:0;display:grid}.room-seat-person strong{overflow-wrap:anywhere;font-size:18px}.room-seat-person small{color:var(--color-text-muted);font-size:12px}.room-seat>button{white-space:nowrap;margin-left:auto;padding:9px 12px;font-size:12px}.room-lobby-details{border-top:1px solid var(--color-border);grid-template-columns:1fr 1fr;gap:28px;padding-top:28px;display:grid}.room-lobby-details h2{color:var(--color-text-muted);margin:0 0 14px;font:700 24px Georgia,serif}.room-lobby-details p:not(.eyebrow){color:var(--color-text-muted);font-size:13px;line-height:1.6}.lobby-summary-chips{flex-wrap:wrap;gap:8px;display:flex}.lobby-summary-chips span{border:1px solid var(--color-border);background:var(--color-paper);border-radius:8px;padding:8px 12px;font-size:12px}.room-invitation{border-left:1px solid var(--color-border);padding-left:28px}.room-invitation label{color:var(--color-text-muted);gap:7px;font-size:11px;display:grid}.room-invitation input{width:100%;min-width:0;color:var(--color-board-frame);background:var(--color-paper-raised);border:1px solid var(--color-border);border-radius:8px;padding:12px;font-size:13px}.copy-status{min-height:20px;margin:8px 0 0}.room-lobby-footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:24px;margin-top:auto;padding-top:26px;display:flex}.room-lobby-footer b{color:var(--color-text-muted);font-size:14px}.room-lobby-footer p{color:var(--color-text-muted);margin:8px 0 0;font-size:12px;line-height:1.5}.room-lobby-footer .waiting{color:var(--color-text-muted);font-size:13px}@media (width<=760px){.lobby-page,.room-lobby-page{padding:12px}.lobby-menu{grid-template-columns:1fr 1fr}.lobby-form.create-game-form,.room-lobby-sheet{padding:24px 20px}.create-game-form header{align-items:flex-start;gap:14px}.playing-as{min-width:0;padding:9px 12px}.playing-as>i{display:none}.playing-as b{font-size:13px}.create-identity-row,.create-table-options,.room-lobby-details{grid-template-columns:1fr;gap:20px}.setup-fields .factory-side-options,.optional-modules{grid-template-columns:1fr}.edition-caption strong{font-size:24px}.edition-caption>b{display:none}.meiji-landscape{height:125px}.room-lobby-heading{flex-direction:column}.room-lobby-heading-actions{justify-content:flex-start}.room-seat-grid{grid-template-columns:1fr}.room-seat{gap:12px;min-height:100px;padding:16px}.room-seat-person strong{font-size:16px}.room-invitation{border-left:0;padding-left:0}.room-lobby-footer,.create-game-form footer{flex-direction:column;align-items:stretch}.room-lobby-footer>button{width:100%}.lobby-brand-line strong{font-size:18px}.lobby-brand-line small{font-size:10px}}.lobby-page{flex-direction:column;height:100dvh;min-height:0;padding:14px 20px;display:flex;overflow:hidden}.lobby-page>.app-header{flex-shrink:0;width:100%;margin-bottom:10px}.lobby-shell{flex:1;grid-template-rows:auto minmax(0,1fr);gap:10px;width:100%;min-height:0}.lobby-menu{padding:4px}.lobby-menu button{padding:9px 12px}.lobby-content{min-height:0;overflow:auto}.lobby-form.create-game-form{gap:18px;height:100%;min-height:0;padding:24px 30px 20px}.create-game-form header{flex-shrink:0;padding-bottom:18px}.create-game-form h1{font-size:42px}.create-layout{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;min-height:0;margin:-5px;padding:5px;display:grid;overflow:auto}.create-left,.create-right{flex-direction:column;gap:22px;min-width:0;display:flex}.create-identity-row{grid-template-columns:1fr;gap:18px}.meiji-landscape{height:125px}.edition-caption{padding:14px 16px}.edition-caption strong{font-size:26px}.create-table-options{border:0;gap:18px;padding-top:0}.create-table-options h2{margin-bottom:8px;font-size:11px}.create-table-options .segmented button{min-height:36px;font-size:12px}.create-table-options small{font-size:11px;line-height:1.4}.setup-fields{gap:18px;padding-top:18px}.setup-fields legend{margin-bottom:9px;font-size:11px}.setup-fields .factory-side-options{gap:8px}.setup-fields .factory-side-options label{align-items:flex-start;gap:8px;padding:10px;font-size:13px}.setup-fields small{font-size:11px}.optional-modules{grid-template-columns:1fr;gap:8px}.optional-modules label{padding:10px;font-size:12px}.optional-modules label span{gap:2px}.create-session-facts{flex-direction:column;gap:7px;margin-top:auto;font-size:11px}.create-game-form footer{flex-shrink:0;padding-top:16px}.create-game-form footer button{min-height:46px;padding:12px 28px;font-size:15px}.room-lobby-page{flex-direction:column;height:100dvh;min-height:0;padding:14px 20px;display:flex;overflow:hidden}.lobby-brand-line{flex-shrink:0;width:100%;margin-bottom:12px}.room-lobby-sheet{flex:1;gap:22px;width:100%;min-height:0;padding:28px 34px;overflow:auto}.room-lobby-heading{padding-bottom:18px}.room-lobby-heading h1{font-size:46px}.room-seat{min-height:96px;padding:16px}.room-lobby-details{gap:22px;padding-top:20px}.room-lobby-details h2{font-size:22px}.room-lobby-footer{padding-top:18px}.room-lobby-footer>button{min-height:48px;padding:13px 24px;font-size:15px}@media (width>=1000px) and (height>=760px){.room-lobby-sheet{overflow:hidden}}@media (width<=900px){.create-layout{grid-template-columns:1fr;gap:24px}.create-left,.create-right{gap:20px}.create-session-facts{flex-direction:row;margin-top:0}.lobby-form.create-game-form{padding:22px}.create-game-form h1{font-size:34px}.room-lobby-sheet{padding:24px}}@media (height<=740px) and (width>=901px){.lobby-form.create-game-form{gap:14px;padding:18px 24px}.create-game-form header{padding-bottom:12px}.create-game-form h1{font-size:34px}.create-left,.create-right{gap:16px}.meiji-landscape{height:92px}.create-identity-row{gap:12px}.setup-fields{gap:12px;padding-top:12px}.room-lobby-sheet{gap:16px;padding:20px 28px}.room-seat{min-height:84px;padding:13px 16px}.room-lobby-heading h1{font-size:40px}.room-lobby-details{padding-top:16px}.room-lobby-details h2{margin-bottom:10px;font-size:20px}}@media (width>=901px) and (height<=800px){.lobby-page>.app-header{height:36px;margin-bottom:10px}.lobby-menu button{padding:8px 12px}.lobby-form.create-game-form{gap:12px;padding:18px 24px 16px}.create-game-form header{padding-bottom:12px}.create-left,.create-right{gap:14px}.create-identity-row{gap:10px}.create-identity-row label,.create-identity-row>div{gap:7px}.create-identity-row input{padding:10px 12px}.meiji-landscape{height:86px}.edition-caption{gap:10px;padding:10px 14px}.edition-caption strong{font-size:24px}.edition-caption small{font-size:11px}.optional-modules label{padding:8px 10px}.setup-fields{gap:12px}.create-game-form footer{padding-top:12px}}.room-seat-number{color:var(--color-text-muted)}:is(body:has(.lobby-page),body:has(.room-lobby-page)){min-width:0;overflow:hidden}.room-lobby-sheet{overflow:hidden}.room-lobby-heading,.room-lobby-footer{flex-shrink:0}.room-lobby-body{flex-direction:column;flex:1;gap:22px;min-height:0;display:flex;overflow:auto}@media (width<=760px){.room-lobby-sheet{gap:16px;padding:20px}.room-lobby-footer{gap:12px}.room-lobby-footer p{margin-top:5px}.lobby-brand-line{gap:8px}.lobby-brand-line>span{font-size:10px}.create-game-form header{gap:10px}.create-game-form h1{font-size:30px}.create-game-form .playing-as{padding:7px 10px}.create-game-form footer p{font-size:12px}}.compact-table-header .game-counters{flex-direction:row;align-items:center;min-width:320px}.round-timeline{align-items:flex-start;gap:7px;margin:0;padding:0;list-style:none;display:flex}.round-period{text-align:center;display:block;position:relative}.round-period-spaces{align-items:center;gap:4px;display:flex;position:relative}.round-period-spaces:before{content:"";background:var(--color-brass);height:2px;position:absolute;top:50%;left:0;right:0}.round-space{box-sizing:border-box;border:1px solid var(--color-brass);border-radius:5px;place-items:center;width:26px;height:25px;font-size:13px;font-weight:750;display:grid;position:relative}.round-space.regular{background:var(--color-jade-deep);color:var(--color-paper-raised)}.round-space.final{background:var(--color-paper);color:var(--color-board-frame)}.round-space.current{outline:2px solid var(--color-paper-raised);outline-offset:2px;border-color:var(--color-brass);background:var(--color-selection);color:var(--color-paper-raised)}.round-space.current i{background:var(--color-paper-raised);border-radius:50%;width:6px;height:6px;position:absolute;top:-5px}.round-space.passed{border-color:var(--color-jade-soft)}.round-scoring{box-sizing:border-box;border:1px solid var(--color-brass);background:var(--color-board-frame);width:20px;height:20px;color:var(--color-paper);border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:11px;line-height:1;display:grid;position:relative}.round-period.scored .round-scoring{color:var(--color-board-frame);background:var(--color-jade-soft);border-color:var(--color-jade-soft)}.round-period>small{color:var(--color-paper-raised);white-space:nowrap;font-size:11px;position:absolute;top:calc(100% + 6px);left:0;right:0}.compact-table-header .table-toolbar-actions{width:clamp(560px,42vw,720px)}.table-toolbar:has(.round-timeline):not(:has(.table-turn-controls)){padding-bottom:26px}.table-toolbar:has(.round-timeline) .table-turn-controls{margin-top:18px}.table-turn-controls .table-phase{color:var(--color-board-frame);white-space:nowrap;border-right:1px solid var(--color-jade-deep);margin-right:10px;padding-right:18px;font-size:13px}@media (width>=1451px){.round-space{width:32px;height:28px;font-size:14px}.round-period>small{font-size:12px}.round-timeline{gap:10px}}@media (width<=1450px){.table-brand .table-version{display:none}.compact-table-header .table-toolbar-actions{gap:6px}.compact-table-header .table-toolbar-actions>button{padding:9px 7px;font-size:12px}}.game-log-list{grid-auto-rows:110px;align-content:start;gap:6px;display:grid}.game-log-list .log-entry{box-sizing:border-box;align-content:start;gap:4px;height:110px}.game-log-list .log-entry>span{line-height:16px}.game-log-list .log-entry>small{white-space:nowrap;text-overflow:ellipsis;line-height:16px;display:block;overflow:hidden}.game-log-list>.hint{margin:0}.round-progress{align-items:center;gap:14px;display:flex}.current-round-name{max-width:110px;color:var(--color-paper-raised);font-size:14px;line-height:1.3}.current-round-name b{white-space:nowrap}.side-players .player-card .player-status,.side-players .player-card:not(.active):not(.selected) .player-status{min-height:18px;line-height:16px;display:flex}@media (width<=1450px){.current-round-name{max-width:75px;font-size:12px}.round-progress{gap:10px}.compact-table-header .game-counters{min-width:395px}}.player-influence{min-height:28px;color:var(--color-board-frame);align-items:center;gap:7px;margin-top:4px;display:flex}.player-influence-label{white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:750}.player-influence-tokens{align-items:center;gap:3px;display:flex}.player-influence-token{box-sizing:border-box;border:2px solid var(--owner-color);width:24px;height:24px;color:var(--color-ink);background:color-mix(in srgb,var(--owner-color) 14%,var(--color-paper-raised));border-radius:50%;flex:0 0 24px;place-items:center;font-size:14px;font-weight:800;line-height:1;display:grid}.player-influence-empty{color:var(--color-text-muted);font-size:12px}.player-influence-group{align-items:center;gap:2px;display:flex}.player-influence-count{color:var(--color-ink);font-size:13px}.player-goods{align-items:center;gap:7px;min-height:38px;margin-top:3px;display:flex}.player-inventory-label{color:var(--color-board-frame);flex-shrink:0;font-size:12px;font-weight:750}.player-goods-list{align-items:center;gap:3px;display:flex}.player-goods-token{box-sizing:border-box;border:1px solid var(--color-border);background:var(--goods-color);min-width:32px;height:36px;color:var(--color-ink);border-radius:5px;place-items:center;padding:2px 3px;line-height:1.1;display:grid}.player-goods-token>span{font-size:11px;font-weight:750}.player-goods-token>b{font-size:14px}.player-inventory-empty{color:var(--color-text-muted);font-size:12px}@media (height<=800px){.table-layout .side-column .side-players:has(>.player-card:nth-of-type(4)) .player-card .player-status{display:none}.side-players .player-goods{min-height:36px;margin-top:1px}.side-players .player-influence{min-height:26px;margin-top:1px}.table-layout .side-column .side-players:has(>.player-card:nth-of-type(4)) .player-card{margin-top:2px;padding-top:3px;padding-bottom:3px}}.player-influence:has(.player-influence-count) .player-influence-token{flex-basis:22px;width:22px;height:22px}.player-influence-group{gap:1px}.player-influence-count{font-size:12px}.player-goods-list{gap:2px}.region-card.market-sequence-inactive,.map-region-tabs button.market-sequence-inactive{opacity:.6}.region-card.market-sequence-active{outline:2px solid var(--color-selection);outline-offset:-2px}.market-continuation-notice{color:var(--color-board-frame);background:var(--color-warning-soft);border-left:3px solid var(--color-selection);border-radius:4px;padding:3px 7px;font-size:12px;line-height:1.25}.employment-action-label{justify-content:space-between;align-items:center;gap:4px;display:flex}.employment-action-label>b{color:var(--color-board-frame);background:var(--color-jade-soft);border-radius:4px;flex-shrink:0;padding:1px 4px;font-size:12px;font-weight:800}.employment-action-guide{color:var(--color-ink);margin-top:2px;font-size:12px;font-weight:500;line-height:1.2;display:block}.employment-space strong>.employment-action{box-sizing:border-box;text-align:left;width:100%;margin-top:4px;display:block}.employment-space strong>.employment-action+.employment-action{border-top:1px solid var(--color-border);border-radius:0;margin-top:6px;padding-top:6px}.board-employment .employment-space>strong{align-self:stretch;width:100%}.employment-space strong>.employment-action+.employment-action{border-top:0;position:relative}.employment-space strong>.employment-action+.employment-action:before{content:"";background:var(--color-border);height:1px;position:absolute;top:0;left:-5px;right:-5px}.table-page .board-placeholder.live-board.with-score-perimeter{padding:26px}.score-perimeter{pointer-events:none;border-radius:14px;position:absolute;inset:3px;overflow:hidden}.score-perimeter svg{width:100%;height:100%;display:block}.score-track-cell{fill:color-mix(in srgb,var(--color-paper) 65%,var(--color-jade-soft));stroke:var(--color-border);stroke-width:.35px}.score-track-cell.major{fill:color-mix(in srgb,var(--color-brass) 16%,var(--color-paper))}.score-track-number{fill:var(--color-board-frame);text-anchor:middle;dominant-baseline:central;font-size:10px;font-weight:600}.score-track-player{pointer-events:auto}.score-track-player circle{stroke:var(--color-paper-raised);stroke-width:.8px}.score-track-player text{fill:var(--color-ink);stroke:var(--color-paper-raised);stroke-width:1.5px;paint-order:stroke;text-anchor:middle;dominant-baseline:central;font-size:9px;font-weight:850}.market-eviction-notice{border-left:3px solid var(--color-selection);background:var(--color-jade-soft);color:var(--color-ink);border-radius:5px;margin:0 0 6px;padding:10px 12px;font-weight:700}.market-eviction-section>small{color:var(--color-text-muted);font-size:12px}.phase-announcement-layer{z-index:12;pointer-events:none;border-radius:inherit;position:absolute;inset:0;overflow:hidden}.phase-announcement-event{position:absolute;inset:0}.phase-milky-flash{background:var(--color-paper-raised);opacity:0;animation:.7s ease-out phase-milk;position:absolute;inset:0}.phase-announcement-message{border:1px solid var(--color-brass);background:var(--color-paper-raised);width:max-content;max-width:calc(100% - 90px);color:var(--color-board-frame);text-align:center;border-radius:10px;gap:5px;padding:12px 20px;animation:5.5s ease-in-out both phase-message;display:grid;position:absolute;top:34px;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #173d4320}.phase-announcement-message strong{font-family:Georgia,serif;font-size:20px}.phase-announcement-message span{font-size:14px;line-height:1.4}@keyframes phase-milk{0%{opacity:0}20%{opacity:.22}to{opacity:0}}@keyframes phase-message{0%{opacity:0}6%,88%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.phase-milky-flash,.phase-announcement-message{animation:none}}@media (width>=640px){.market-composer .composer-choice-section{grid-column:auto}.market-composer .market-eviction-section{grid-column:1/-1}.market-composer .composer-footer{gap:8px;margin-top:12px;padding-top:12px}}.common-goals-layer{background:#14363a1f!important;justify-content:flex-start!important;align-items:stretch!important;padding:12px!important}.common-goals-drawer{flex-direction:column;gap:12px;width:min(620px,100vw - 24px);height:calc(100dvh - 24px);padding:20px;animation:.18s ease-out common-goals-enter;display:flex;max-height:none!important;overflow:hidden!important}.common-goals-drawer header,.common-goals-drawer footer{flex:none;justify-content:space-between;align-items:center;gap:12px;display:flex}.common-goals-drawer h2,.common-goals-drawer h3,.common-goals-drawer p{margin:0}.common-goals-drawer nav{flex:none;grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.common-goals-explanation{font-size:14px;line-height:1.4}.common-goals-cards{flex:1;grid-template-rows:repeat(3,minmax(0,1fr));gap:10px;min-height:0;display:grid}.common-goal-card{border:1px solid var(--line,#b7cac0);background:var(--paper,#fffaf1);border-radius:12px;flex-direction:column;justify-content:center;gap:8px;padding:12px;display:flex}.common-goal-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.common-goal-heading h3{font-size:18px;line-height:1.15}.common-goal-heading small{white-space:nowrap}.common-goal-reward,.common-goal-selections{font-size:14px;line-height:1.35}.common-goal-standings{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.common-goal-standings>div{border-left:3px solid var(--owner-color);background:color-mix(in srgb,var(--owner-color) 9%,#fffaf1);border-radius:5px;grid-template-columns:1fr auto auto;align-items:center;gap:6px;padding:4px 7px;font-size:14px;display:grid}.common-goal-standings>div span{overflow-wrap:anywhere}.common-goal-standings .leader{outline:1px solid var(--owner-color)}.common-goal-standings small{font-size:11px}.common-goal-winners{flex-wrap:wrap;gap:6px;font-size:14px;display:flex}.common-goal-winners span{border-left:3px solid var(--owner-color);background:color-mix(in srgb,var(--owner-color) 9%,#fffaf1);border-radius:4px;padding:3px 6px}.common-goals-drawer footer{font-size:13px}@keyframes common-goals-enter{0%{opacity:.2;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@media (height<=760px){.common-goals-drawer{gap:8px;padding:14px}.common-goal-card{gap:6px;padding:9px}.common-goals-cards{gap:7px}}@media (prefers-reduced-motion:reduce){.common-goals-drawer{animation:none}}.starting-picker-layer{pointer-events:auto;background:0 0!important;justify-content:center!important;align-items:center!important;padding:20px!important;display:flex!important}.starting-picker-dialog{pointer-events:auto;flex-direction:column;gap:10px;width:min(1160px,100vw - 40px);min-width:0;height:400px;max-height:calc(100dvh - 40px);padding:16px;display:flex;overflow:visible;box-shadow:0 10px 40px #17363a3b}.starting-picker-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.starting-picker-heading h2{margin:0;font-family:Georgia,serif;font-size:23px}.starting-picker-help{margin:0;font-size:13px;line-height:1.4}.starting-picker-dialog .starting-bonuses{border:0;flex-direction:column;flex:1;min-height:0;margin:0;padding:0;display:flex}.starting-picker-dialog .starting-bonuses-heading{margin-bottom:8px}.starting-picker-dialog .starting-bonuses-heading h2{font-family:inherit;font-size:14px}.starting-picker-dialog .starting-bonus-grid{flex:1;grid-template-columns:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;margin:0}.starting-picker-dialog .starting-bonus{flex-direction:column;justify-content:center;padding:10px;display:flex}.starting-picker-dialog .starting-bonus>p,.starting-picker-dialog .starting-bonus>small{display:none}.starting-picker-dialog .starting-bonus-short-name{font-size:14px;display:block}.starting-picker-dialog .starting-choice-panel,.starting-picker-dialog .starting-choice-placeholder{box-sizing:border-box;flex:none;height:160px;margin-top:12px;padding:12px}.starting-picker-dialog .starting-choice-panel{grid-template-columns:minmax(230px,1.4fr) minmax(260px,1.6fr) auto;align-items:center}.starting-picker-dialog .starting-selected-description{display:block}.starting-picker-dialog .starting-selected-description p{margin:4px 0;font-size:13px;line-height:1.35}.starting-picker-dialog .starting-choice-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:8px;display:grid}.starting-picker-dialog .starting-choice-fields label{font-size:12px}.starting-picker-dialog .starting-choice-fields button{font-size:13px}.starting-picker-dialog .starting-train-reward{display:block}@media (width<=1100px){.starting-picker-dialog{gap:8px;padding:12px}.starting-picker-dialog .starting-bonus{padding:7px}.starting-picker-dialog .starting-bonus header{flex-wrap:wrap;gap:4px}}.starting-picker-dialog .starting-bonuses-heading .eyebrow,.starting-picker-dialog .starting-choice-panel .eyebrow{display:none}.starting-picker-dialog .starting-bonus.selectable:hover,.starting-picker-dialog .starting-bonus.selectable:focus-visible{transform:none}.starting-picker-dialog .starting-choice-panel strong{font-family:inherit;font-size:13px}.starting-picker-dialog .starting-choice-placeholder{color:var(--color-text-muted);align-items:center;display:flex}.starting-picker-dialog .starting-choice-fields button{white-space:normal;width:100%;padding:8px}.starting-picker-dialog .starting-choice-panel>button{padding:10px 15px;font-size:14px}@container board-map (height<=570px) or (width<=900px){.map-region-tabs{gap:4px;height:30px;display:flex;position:absolute;top:0;left:0;right:0}.map-region-tabs button{flex:1;min-width:0;padding:4px;font-size:12px}.map-region-tabs .active{color:var(--color-paper-raised);background:var(--color-board-frame)}.map-fit-frame .japan-map{top:34px}.japan-map .regions-grid{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.japan-map .region-card{display:none}.japan-map[data-region=north] .region-north,.japan-map[data-region=east] .region-east,.japan-map[data-region=west] .region-west,.japan-map[data-region=central] .region-central{display:grid}}@container board-map (height<=360px){.japan-map .region-card{gap:2px}.japan-map .region-reward{padding:2px 5px}.japan-map .train-track{padding:1px}.japan-map .train-track>span{height:22px}.japan-map .market-card{padding:2px 4px}.japan-map .market-slots{gap:3px}.japan-map .market-slot{padding:2px}.japan-map .market-slot .goods-label{grid-template-rows:22px 15px;gap:1px;height:38px}.japan-map .market-slot .goods-icon{width:22px;height:22px}}.starting-progress{min-height:50px;color:var(--color-paper-raised);flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.starting-progress>strong{font-family:Georgia,serif;font-size:18px;line-height:20px}.starting-progress>span{align-items:center;gap:12px;font-size:13px;display:flex}.starting-progress b{border:1px solid var(--color-selection);background:var(--color-jade-deep);border-radius:8px;padding:4px 10px}.starting-progress i{font-style:normal}.table-toolbar-actions .starting-bonus-required{background:var(--color-warning-soft);border:2px solid var(--color-selection);font-weight:800}.starting-bonus-required.needs-attention{animation:2.8s ease-in-out infinite starting-bonus-attention}@keyframes starting-bonus-attention{0%,to{box-shadow:0 0 #c1933d00}50%{box-shadow:0 0 0 5px #c1933d66}}.starting-next-step{align-items:center;gap:12px;min-width:0;font-size:13px;display:flex}.starting-next-step>button{background:var(--color-warning-soft);white-space:nowrap;font-weight:800}@media (prefers-reduced-motion:reduce){.starting-bonus-required.needs-attention{box-shadow:0 0 0 3px var(--color-selection);animation:none}}@media (width<=1100px){.starting-progress>strong{font-size:18px}.starting-progress>span{gap:6px;font-size:12px}.starting-next-step{gap:8px;font-size:12px}}.game-counters .starting-progress span{color:var(--color-paper-raised);background:0 0;padding:0}.table-turn-controls .starting-next-step>strong{color:var(--color-board-frame)}.hiring-piece{place-items:center;width:100%;height:100%;display:grid;position:relative}.market-slot{position:relative}.piece-arriving>.worker,.piece-arriving>.influence-value,.piece-arriving>small .owner-marker{animation:.26s ease-out both piece-place}.market-slot.piece-changed{animation:.9s ease-out piece-location}.piece-departing{z-index:2;pointer-events:none;animation:.22s ease-in forwards piece-remove;position:absolute}.worker-departing{place-items:center;display:grid;inset:0}.influence-departing{border:1px solid var(--owner-color,var(--color-brass));background:var(--color-paper-raised);color:var(--color-ink);border-radius:6px;padding:3px 6px;font-size:13px;font-weight:800;bottom:5px;left:8px}@keyframes piece-place{0%{opacity:.25;transform:translateY(-5px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes piece-remove{0%{opacity:.65;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}@keyframes piece-location{0%{box-shadow:inset 0 0 0 3px var(--owner-color,var(--color-brass))}to{box-shadow:inset 0 0 #0000}}@media (prefers-reduced-motion:reduce){.piece-arriving>.worker,.piece-arriving>.influence-value,.piece-arriving>small .owner-marker,.market-slot.piece-changed{animation:none}.piece-departing{animation:none;display:none}.market-slot.piece-changed{outline:2px solid var(--owner-color,var(--color-brass));outline-offset:-2px}}.starting-bonus.selected{background:color-mix(in srgb,var(--owner-color) 12%,var(--color-paper-raised));border-color:var(--owner-color);box-shadow:inset 3px 0 0 var(--owner-color);border-style:solid}.starting-bonus.selected header span{color:var(--color-ink);background:color-mix(in srgb,var(--owner-color) 17%,var(--color-paper-raised))}.starting-bonus.selected header span:before{content:"";background:var(--owner-color);border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}
