:root{font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Segoe UI',sans-serif;color:#e9ede3;background:#102528;font-synthesis:none;--gold:#e9c57d;--line:#e6e8d81c;--muted:#98aca8}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{border:1px solid #d6e4d02b;border-radius:10px;background:#294044;color:#f3f2e9;padding:12px 17px;min-height:44px;cursor:pointer;touch-action:manipulation;font-weight:600}button:disabled{opacity:.38;cursor:default}button:active:not(:disabled){transform:scale(.98)}button:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:3px}button.primary{background:var(--gold);color:#28362d;border-color:var(--gold)}button.danger{background:#6d3436}.wide{width:100%}a{color:var(--gold)}input{width:100%;padding:12px;border:1px solid #ffffff33;background:#142f32;color:#fff;border-radius:8px;font-size:17px}label{display:grid;gap:7px;font-size:13px;color:#b6c5bf}h1,h2,h3,p{margin-top:0}h2{font-size:19px}small,.muted{color:var(--muted)}#connection{font-size:10px;letter-spacing:1px;padding:5px 18px;text-align:right;color:#a3bbb1;min-height:22px}#connection.offline{color:#ffc387;background:#68432b}.landing{max-width:1020px;margin:auto;padding:5vh 28px}.brandmark{font:italic 700 40px Georgia;color:var(--gold);letter-spacing:-7px;border:1px solid #e9c57d66;border-radius:50%;width:76px;height:76px;display:grid;place-content:center;position:relative}.brandmark span{position:absolute;left:30px;top:15px;color:#edddad}.eyebrow{font-size:11px;letter-spacing:3px;color:var(--gold);margin-top:28px}.landing h1{font-size:clamp(48px,7vw,76px);letter-spacing:8px;margin:15px 0}.landing h1 span{display:block;font:16px Georgia;letter-spacing:8px;color:#acbbb0;margin-top:10px}.intro{color:#aebfb5;line-height:1.9;font-size:17px}.entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:35px}.entry-grid section{padding:26px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(130deg,#26404488,#173034)}.entry-grid section p{line-height:1.7;color:#b3c2b9}.entry-grid form{display:grid;gap:12px}.footnote{display:block;margin-top:24px;font-size:12px}.topbar{display:flex;gap:18px;align-items:center;padding:10px 0 15px;border-bottom:1px solid var(--line)}.wordmark{font-size:23px;font-weight:700;letter-spacing:3px}.wordmark small{font-size:10px;letter-spacing:3px;margin-left:7px;color:var(--gold)}.room-pill{font-size:12px;padding:6px 11px;border:1px solid var(--line);border-radius:40px;letter-spacing:1px}.top-meta{margin-left:auto;font-size:13px;color:var(--muted)}.topbar>button{border-radius:50%;font-size:22px;width:44px;padding:5px;background:transparent}.host-app{padding:0 20px 14px;max-width:1700px;margin:auto}.turn-banner{display:flex;align-items:center;gap:10px;min-height:46px;font-size:13px}.turn-banner>span:last-child{color:var(--muted)}.turn-banner em{font-size:11px;color:var(--gold);font-style:normal}.pulse{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px #e9c57d66}.host-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(360px,1fr);gap:18px}.board-panel{padding:16px 14px;background:#1c3435;border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column;min-width:0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px}.section-heading h2{margin:0}.section-heading small{font-size:10px;text-align:right}.map{display:grid;grid-template-columns:18px repeat(12,minmax(0,1fr));grid-template-rows:18px repeat(9,minmax(0,1fr));gap:4px;width:100%;aspect-ratio:1.32;min-height:0;align-self:center}.axis{display:flex;align-items:center;justify-content:center;font-size:10px;color:#9cb1a9}.map-cell{background:#294444;border:1px solid #9cb5a918;border-radius:5px;position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0}.map-cell>span{font-size:9px;color:#7e9d95}.map-cell>b{position:absolute;font-size:23px;color:#eff4e1}.map-cell.independent{background:#d4d7c5}.map-cell.independent>span,.map-cell.built>span{position:absolute;left:3px;top:2px;color:#102528a8;font-size:8px}.map-cell.independent>b{color:#4b6357}.map-cell.built{background:var(--company);border-color:#ffffff40;box-shadow:inset 0 -3px #0002}.map-cell.latest{outline:2px solid #fff4bf;outline-offset:1px;animation:tile-land .4s ease-out}.map-cell.preview{background:#dfc681;outline:3px solid #fff;animation:preview-glow 1s ease-in-out infinite alternate}.dead-cell{background:repeating-linear-gradient(45deg,#333f3c 0 4px,#263531 4px 8px)}.dead-cell>b{color:#98a097}.board-footer{display:flex;justify-content:space-between;gap:6px;font-size:10px;color:var(--muted);margin-top:14px}.market{border:1px solid var(--line);border-radius:16px;background:#183032;padding:16px}.stock-head,.stock-row{display:grid;grid-template-columns:minmax(104px,1.4fr) .75fr .4fr .85fr .85fr;gap:8px;align-items:center}.stock-head{font-size:9px;color:#94aaa0;padding-bottom:10px}.stock-row{min-height:62px;border-top:1px solid var(--line);font-size:12px}.stock-row>strong{font-size:15px;font-variant-numeric:tabular-nums}.stock-row>span{font-size:11px}.company-name{display:flex;gap:8px;align-items:center;min-width:0}.company-name i,.company-choices i{width:5px;height:32px;border-radius:8px;background:var(--company);flex-shrink:0}.company-name b{font-size:13px}.company-name small{display:block;font-size:9px;margin-top:4px}.stock-row.dormant{opacity:.55}.public-players{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:12px}.public-players>div{padding:10px 6px;border:1px solid var(--line);border-radius:8px;min-width:0}.public-players b{font-size:12px;display:block;overflow:hidden;text-overflow:ellipsis}.public-players small{font-size:10px;display:block;margin-top:4px}.public-players .on-turn{border-color:var(--gold);background:#e9c57d10}.discard-tray{margin-top:14px;font-size:12px}.discard-tray>b span{color:var(--gold)}.discard-tray>div{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;max-height:64px;overflow:auto}.discard-tray>div>span{padding:3px 5px;border-radius:4px;background:#3a4742;color:#d5d8c9;font-size:10px}.discard-tray small{font-size:10px}.ticker{padding:12px 4px;font-size:12px;line-height:1.5;color:#c5d0c3}.ticker>span{color:var(--gold);margin-right:18px;font-size:10px}.lobby{text-align:center;padding:4vh 12px}.lobby h1{font-size:30px}.room-code{font:600 clamp(40px,8vw,70px) ui-monospace,monospace;letter-spacing:10px;color:var(--gold)}.invite-link{font:13px ui-monospace,monospace;color:#b9ccc0;overflow-wrap:anywhere;padding:14px;background:#0b1e2280;border:1px dashed #aec6ae44;border-radius:8px;margin:12px 0;user-select:all}.lobby .invite-link{max-width:570px;margin:12px auto}.lobby-seats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:700px;margin:28px auto}.lobby-seat{padding:22px 8px;border:1px dashed #a9c5b54d;border-radius:12px;color:#7f998e}.lobby-seat span,.lobby-seat small{display:block;font-size:11px;margin:6px}.lobby-seat.filled{border-style:solid;border-color:#e9c57d66;color:#edeee0;background:#e9c57d08}.start-button{min-width:240px}.lobby .muted{font-size:12px;margin-top:15px}.phone-app{max-width:620px;padding:0 16px 30px;margin:auto}.phone-app .topbar{gap:10px}.phone-app .wordmark small{display:none}.phone-app .wordmark{font-size:21px}.phone-app .top-meta{font-size:11px}.wallet{display:flex;justify-content:space-between;align-items:flex-end;padding:24px 0 18px}.wallet p{font-size:12px;color:var(--muted);margin-bottom:8px}.wallet strong{font:600 36px ui-monospace,monospace;color:var(--gold);letter-spacing:-1px}.wallet b{font:500 21px ui-monospace,monospace}.wallet>div:last-child{text-align:right}.phone-app .turn-banner{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:16px}.action-area{margin-bottom:20px}.action-hint{font-size:13px;line-height:1.6;color:#ccdacb}.waiting{padding:8px 0;color:#c3d0c4;font-size:14px}.waiting small{display:block;margin-top:7px;font-size:11px}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hand-tile{aspect-ratio:1.15;background:linear-gradient(150deg,#e9e6d2,#c9ceb8);color:#1c3a38;border:0;box-shadow:0 4px #768675;padding:10px 5px}.hand-tile>b{display:block;font:700 32px ui-monospace,monospace}.hand-tile>small{display:block;color:#49645c;font-size:11px;margin-top:7px}.hand-tile:disabled{opacity:.65}.hand-tile.blocked{background:#46564e;box-shadow:0 4px #293a32;color:#bbc4b7}.hand-tile.blocked small{color:#a4b5a7}.hand{margin-bottom:24px}.phone-app .stock-head,.phone-app .stock-row{grid-template-columns:minmax(112px,1.4fr) .85fr .45fr .95fr}.phone-app .market{padding:14px}.phone-app .stock-row{min-height:57px}.phone-app .stock-row>span{font-size:12px}.phone-app .section-heading h2{font-size:16px}.phone-map{margin-top:20px;border:1px solid var(--line);padding:12px;border-radius:10px}.phone-map summary{font-size:13px;cursor:pointer}.phone-map .map{margin-top:14px}.mini{gap:2px}.mini .map-cell>span{font-size:6px}.mini .map-cell>b{font-size:13px}.company-choices{display:grid;grid-template-columns:1fr 1fr;gap:8px}.company-choices button{display:grid;grid-template-columns:6px 1fr;gap:5px 8px;text-align:left;padding:12px;background:#294144}.company-choices i{grid-row:1/3}.company-choices small{font-size:10px}.company-choices b{font-size:13px}.buy{padding:14px;border:1px solid #e9c57d66;border-radius:13px;background:#243c38}.buy-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.buy-row>span{font-weight:650;font-size:14px}.buy-row small{display:block;font-size:10px;color:#9eb4a5;margin-top:4px}.stepper{display:flex;align-items:center;gap:13px}.stepper button{width:38px;min-height:38px;padding:5px;font-size:21px}.buy>.primary{margin-top:12px;font-size:13px}.dispose{padding:16px;border:1px solid #e9c57d66;border-radius:13px;background:#203a36}.dispose .eyebrow{margin-top:0}.dispose h2{font-size:18px}.dispose p{font-size:12px;line-height:1.7}.dispose label{margin:14px 0}.dispose label small{font-size:10px}.button-row{display:flex;gap:8px}.button-row button{flex:1;font-size:13px}.end-game{font-size:12px;width:100%;margin:0 0 16px;color:var(--gold);border-color:#e9c57d44;background:transparent}.results{max-width:650px;margin:20px auto;padding:22px;border:1px solid #e9c57d66;border-radius:15px;background:#263e39}.results .eyebrow{margin-top:0}.result-row{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:center;border-top:1px solid var(--line);padding:14px 0}.result-row>span{color:var(--gold)}.result-row strong{font:600 20px ui-monospace,monospace;color:var(--gold)}dialog{width:min(620px,94vw);max-height:90svh;overflow:auto;padding:22px;background:#193438;color:#e8eee1;border:1px solid #b9c7aa44;border-radius:16px;box-shadow:0 20px 100px #0009}dialog::backdrop{background:#061619d9;backdrop-filter:blur(5px)}dialog header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}dialog header h2{margin:0}dialog p{font-size:13px;line-height:1.8;color:#b8cbbd}dialog h3{font-size:16px;margin-top:24px}#tile-preview{margin-bottom:20px}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);max-width:90vw;padding:14px 20px;background:#ede3c3;color:#293d36;border-radius:10px;box-shadow:0 5px 30px #0005;font-size:13px;z-index:1000;line-height:1.5}@keyframes tile-land{from{transform:scale(.85);filter:brightness(1.7)}to{transform:scale(1)}}@keyframes preview-glow{to{box-shadow:0 0 14px #ffe7ac}}@media(max-width:1000px){.host-grid{grid-template-columns:minmax(0,1.35fr) minmax(310px,1fr);gap:12px}.host-app{padding:0 12px}.stock-row{gap:5px;font-size:11px}.stock-row>strong{font-size:13px}.stock-row>span{font-size:10px}.company-name b{font-size:11px}.market{padding:12px}.board-panel{padding:12px}.stock-head{gap:5px}.map-cell>b{font-size:17px}.stock-row{min-height:54px}}@media(max-width:700px){.entry-grid{grid-template-columns:1fr}.landing{padding:22px 20px}.host-grid{grid-template-columns:1fr}.host-app .map{max-height:62vh}.lobby-seats{grid-template-columns:repeat(2,1fr)}.room-pill{font-size:10px}.lobby{padding-top:20px}.host-app .stock-row{min-height:52px}.host-app .topbar{gap:8px}.lobby h1{font-size:24px}.map{aspect-ratio:1.25}.wordmark small{display:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* Compact public market and color-first private tiles. */
.host-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start}.host-app .market{padding:10px}.host-app .market .section-heading{margin-bottom:8px}.host-app .market h2{font-size:14px}.host-app .market .section-heading small{display:none}.host-app .stock-head,.host-app .stock-row{grid-template-columns:62px 52px 26px 56px 56px;gap:4px}.host-app .stock-head{font-size:9px}.host-app .stock-row{min-height:45px}.host-app .stock-row>strong{font-size:13px}.host-app .stock-row>span{font-size:11px}.company-name b{font-size:12px;font-weight:500}.host-app .company-name small{font-size:9px}.host-app .public-players{grid-template-columns:repeat(2,1fr)}.host-app .map{max-height:calc(100svh - 220px);aspect-ratio:1.32}.host-app .board-panel{padding:12px}.hand-tile{background:var(--tile-fill,#d5d9c5)!important;color:#102528!important}.hand-tile:disabled{opacity:.85}.hand-tile small{color:#102528}.map-cell.own-hand{border:2px dashed #f5d787;background:#e9c57d26;box-shadow:inset 0 0 0 2px #102528}.map-cell.own-hand>span{color:#ffe4a6;font-weight:700;font-size:9px}.map-key{font-size:11px;color:#e9c57d}.map-cell.preview{outline:3px solid white;z-index:1}.dispose label>span{display:flex;justify-content:space-between;align-items:center}.dispose output{font-size:22px;color:var(--gold);font-weight:700}.dispose input[type=range]{padding:0;height:42px;accent-color:var(--gold);cursor:ew-resize;touch-action:pan-y}.trade-valuation{padding:12px;background:#ffffff0b;border-radius:9px;font-size:12px}.trade-valuation b{color:var(--gold)}#dispose-total{line-height:2;font-size:14px}#dispose-total b{color:var(--gold)}@media(max-width:700px){.host-grid{grid-template-columns:1fr}.host-app .stock-head,.host-app .stock-row{grid-template-columns:1fr 1fr .5fr 1fr 1fr}}
/* Seven compact color panels inspired by the supplied scorekeeper. */
.host-grid{display:flex;flex-direction:column;gap:10px}.host-grid>.board-panel{width:100%;align-items:center}.host-grid>.board-panel>.section-heading,.host-grid>.board-panel>.board-footer{width:100%}.host-app .map{width:min(100%,calc((100svh - 335px)*1.32));max-height:none;aspect-ratio:1.32}.host-grid>aside{width:100%;display:grid;grid-template-columns:1fr auto;gap:8px}.host-app .market-strip{grid-column:1/-1;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;padding:0;border:0;background:none}.market-card{background:var(--company);color:white;border-radius:10px;overflow:hidden;text-shadow:0 1px 1px #0002}.market-card header{display:flex;align-items:center;justify-content:space-between;gap:3px;padding:7px 9px 0;font-size:11px}.market-card header small{color:inherit;opacity:.8;font-size:9px}.market-card>strong{display:block;text-align:center;font:750 clamp(19px,2.5vw,31px) ui-rounded,system-ui,sans-serif;margin:4px 0}.market-bonuses{display:flex;justify-content:center;gap:8px;font-size:9px;padding:0 4px 5px}.market-bonuses b{font-size:11px}.market-card footer{text-align:center;background:#0002;padding:4px;font-size:10px}.market-card footer b{font-size:13px;margin-left:5px}.yellow-card{color:#573e00;text-shadow:none}.host-app .public-players{display:flex;margin:0;gap:7px}.host-app .public-players>div{padding:5px 10px;display:flex;align-items:center;gap:8px}.host-app .public-players small{margin:0}.host-app .discard-tray{margin:0;max-width:280px;font-size:10px}.host-app .discard-tray div:has(>small){display:none}.host-app .ticker{margin-top:6px}.host-app .board-panel .section-heading{margin-bottom:7px}.host-app .board-footer{margin-top:7px}@media(max-width:700px){.host-app .market-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.host-app .map{width:100%}.host-grid>aside{display:block}.host-app .public-players{flex-wrap:wrap;margin-top:8px}.market-bonuses{flex-direction:column;align-items:center;gap:2px}}
/* Dead tiles remain visibly marked on their board coordinates. */
.map-cell.dead-cell{opacity:1;background:repeating-linear-gradient(135deg,#53545b 0px,#53545b 6px,#43444b 6px,#43444b 12px);border:1px solid #b8b6bf;box-shadow:inset 0 0 0 1px #25262a}.map-cell.dead-cell>span{color:#fff;font-weight:650}.map-cell.dead-cell>b{color:#eee9f1;font-size:22px;text-shadow:0 1px 3px #000}.mini .map-cell.dead-cell>b{font-size:16px}.host-grid>aside{grid-template-columns:1fr}
/* Public board: remove chrome and align all seven market columns. */
body:has(.host-app .host-grid)>#connection{display:none}.host-app:has(.host-grid){padding:10px 12px}.board-settings{position:fixed;right:16px;top:14px;z-index:5;width:38px;min-height:38px;padding:0;border-radius:50%;background:#142e32d9;font-size:21px}.host-app .map{width:min(100%,calc((100svh - 225px)*1.32))}.market-card{display:grid;grid-template-rows:24px 42px 34px 26px}.market-card header{display:flex;justify-content:center;padding:4px 5px 0}.market-card header small{font-size:10px;line-height:18px}.market-card>strong{display:flex;align-items:center;justify-content:center;margin:0;font-variant-numeric:tabular-nums}.market-bonuses{display:grid;grid-template-columns:1fr;gap:0;padding:0 8px 3px;font-variant-numeric:tabular-nums}.market-bonuses>span{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4px;line-height:15px}.market-bonuses>span b{text-align:right}.market-card footer{display:flex;align-items:center;justify-content:center;gap:7px;padding:0;font-variant-numeric:tabular-nums}.market-card footer b{margin:0;min-width:2ch;text-align:right}
/* Compact phone play surface; keep lobby instructions available. */
body:has(.phone-app .wallet)>#connection.online{display:none}.phone-app:has(.wallet){padding-top:10px}.phone-app .wallet{padding-top:8px;padding-right:44px;margin-bottom:12px}.phone-app .wallet p{margin-bottom:5px;font-size:11px}.phone-app .wallet strong{font-size:30px}.phone-app .wallet b{font-size:21px}.phone-app .action-area:empty{display:none}.phone-app .waiting{padding:8px 0;margin:0;font-size:12px}.phone-app .hand .section-heading{margin-bottom:8px}.phone-app .hand h2{font-size:14px}.phone-app .market{padding:10px}.phone-app .market .section-heading{display:none}.phone-app .company-label{display:none}.phone-app .company-name small{font-size:10px}.phone-app .company-name i{width:22px;height:26px;border-radius:5px}.phone-app .stock-head,.phone-app .stock-row{grid-template-columns:minmax(65px,1fr) 1fr .55fr 1fr;gap:6px}.phone-app .stock-row{min-height:40px}.phone-app .stock-head{font-size:10px}.phone-app .phone-map{margin-top:10px}.phone-app .dispose .eyebrow{display:none}
/* Private holdings: seven compact color chips replace the stock table. */
.portfolio-compact{margin-top:14px}.portfolio-caption{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px;font-size:12px}.portfolio-caption small{font-size:10px}.portfolio-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.portfolio-chip{min-width:0;border-radius:8px;background:var(--company);color:#fff;text-align:center;overflow:hidden;padding-top:9px}.portfolio-chip.yellow-card{color:#573e00}.portfolio-chip strong{display:block;font-size:23px;line-height:28px;font-variant-numeric:tabular-nums}.portfolio-chip strong small{font-size:9px;color:inherit;font-weight:400;margin-left:1px}.portfolio-chip>span{display:block;font-size:10px;line-height:23px;background:#0002;margin-top:5px;font-variant-numeric:tabular-nums;white-space:nowrap}.portfolio-chip.no-stock strong{opacity:.65}.portfolio-chip.has-stock{box-shadow:inset 0 0 0 1px #ffffff70}@media(max-width:360px){.portfolio-grid{gap:3px}.portfolio-chip strong{font-size:20px}.portfolio-chip>span{font-size:9px}}
.invite-qr{display:flex;flex-direction:column;align-items:center;gap:9px;margin:14px auto}.invite-qr svg{display:block;width:210px;height:210px;max-width:70vw;background:white;border-radius:10px}.invite-qr small{font-size:12px}.lobby:has(.invite-qr){padding-top:12px}.lobby:has(.invite-qr) .room-code{font-size:32px}.lobby:has(.invite-qr) .eyebrow{margin-top:10px}.lobby:has(.invite-qr) h1{margin-bottom:10px}
.lobby-seat .kick-player{margin-top:8px;padding:5px 12px;min-height:34px;font-size:12px;color:#ffd6cf;background:#713f3f;border-color:#a56c65}
.host-app .board-activity{justify-content:flex-start;gap:10px;min-height:22px;line-height:1.5}.board-activity>span{flex-shrink:0;color:var(--gold);font-size:10px}.board-activity>b{font-size:12px;font-weight:500;color:#e9ede3;overflow-wrap:anywhere}
/* Fit the everyday phone view together, with a permanently visible map. */
.phone-app:has(.wallet){padding:6px 12px 8px;max-width:560px;margin:auto}.phone-app .wallet{padding-top:3px;padding-bottom:8px;margin-bottom:4px}.phone-app .wallet p{margin:0 0 3px;font-size:10px}.phone-app .wallet strong{font-size:26px;line-height:1.15}.phone-app .wallet b{font-size:19px}.phone-app .action-area{margin:0 0 5px}.phone-app .waiting{padding:3px 0;font-size:11px}.phone-app .hand .section-heading{margin:4px 0 5px}.phone-app .hand h2{font-size:12px}.phone-app .tiles{gap:5px}.phone-app .hand-tile{min-height:56px;height:clamp(56px,8svh,68px);padding:5px;border-radius:8px;box-shadow:0 2px 0 #0003}.phone-app .hand-tile b{font-size:26px;line-height:1.1}.phone-app .hand-tile small{font-size:9px;margin-top:2px}.phone-app .portfolio-compact{margin-top:8px}.phone-app .portfolio-caption{margin-bottom:4px;font-size:11px}.phone-app .portfolio-chip{padding-top:3px;border-radius:6px}.phone-app .portfolio-chip strong{font-size:20px;line-height:24px}.phone-app .portfolio-chip>span{line-height:18px;margin-top:2px}.phone-app .phone-map{margin-top:8px;padding:6px;border-radius:8px}.phone-map-title{font-size:11px;color:var(--muted);margin-bottom:3px}.phone-app .phone-map .map{margin-top:0;aspect-ratio:1.32;width:100%;max-height:36svh;grid-template-columns:12px repeat(12,minmax(0,1fr));grid-template-rows:12px repeat(9,minmax(0,1fr))}.phone-app .mini .map-cell>b{font-size:12px}.phone-app .mini .axis{font-size:8px}.phone-app .mini .map-cell>span{font-size:6px}.phone-app .mini .map-cell.own-hand>span{font-size:7px}.phone-app .mini .map-cell.dead-cell>b{font-size:12px}.phone-app .end-game{margin:6px 0;min-height:32px;padding:5px}.phone-app .board-settings{top:8px;right:12px;width:32px;min-height:32px;font-size:18px}
.found-choices{display:grid;gap:7px;margin:8px 0}.found-row{display:flex;gap:7px}.found-row>button{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:68px;padding:9px 5px;background:var(--company);color:#fff;border:1px solid #ffffff35}.found-row>button[data-company="6"]{color:#573e00}.found-row>button b{font-size:13px;font-weight:600}.found-row>button strong{font-size:19px;font-variant-numeric:tabular-nums}.found-row>button small{color:inherit;font-size:10px;font-weight:400}.found-row>button:disabled{opacity:.32}
/* Founding opportunities: matching gold markers on hand and private map. */
.phone-app .hand-tile.can-found{position:relative;background:linear-gradient(135deg,#fff0b6,#eac76b)!important;border:2px solid #ffe398;box-shadow:0 0 0 1px #a87724,0 0 12px #f4cb6240}.phone-app .hand-tile.can-found::after{content:'✦';position:absolute;right:5px;top:2px;color:#80520b;font-size:14px}.phone-app .hand-tile.can-found small{font-weight:750;color:#704605}.phone-app .map-cell.found-site{background:#eac76b;border:2px solid #ffe7a1;box-shadow:0 0 7px #f4cb6260,inset 0 0 0 1px #987029;position:relative}.phone-app .mini .map-cell.found-site>span{color:#493205;font-weight:800}.phone-app .map-cell.found-site::after{content:'✦';position:absolute;right:0;top:-2px;font-size:8px;color:#6f4900;line-height:1}.phone-app .hand-tile.can-found:disabled{opacity:.85}
/* Landscape public screen: narrow price rail, maximum board area. */
.host-app:has(.host-grid){max-width:none;height:100svh;padding:6px 10px 8px;display:flex;flex-direction:column;gap:6px}.host-activity{display:flex;align-items:center;gap:9px;min-height:28px;height:28px;padding-right:44px;flex-shrink:0;white-space:nowrap;overflow:hidden;border:0}.host-activity>span{font-size:10px;color:var(--gold);flex-shrink:0}.host-activity>b{font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis}.host-app .host-grid{display:grid;grid-template-columns:154px minmax(0,1fr);grid-template-rows:minmax(0,1fr);flex:1;min-height:0;gap:10px}.host-grid>.board-panel{grid-column:2;grid-row:1;padding:8px;border:0;justify-content:center;min-height:0;overflow:hidden}.host-grid>aside{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:6px;min-height:0;width:100%}.host-app .market-strip{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(7,minmax(0,1fr));gap:5px;flex:1;min-height:0}.host-app .market-card{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:18px minmax(22px,1fr) 18px;border-radius:8px;min-height:0}.host-app .market-card header{grid-column:1;grid-row:1;padding:0;justify-content:center}.host-app .market-card>strong{grid-column:1;grid-row:2;font-size:24px}.host-app .market-bonuses{grid-column:2;grid-row:1/4;display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding:4px 6px;gap:4px}.host-app .market-bonuses>span{display:flex;flex-direction:column;gap:0;line-height:13px;font-size:9px}.host-app .market-bonuses>span b{font-size:11px;text-align:left}.host-app .market-card footer{grid-column:1;grid-row:3;font-size:9px;gap:4px}.host-app .market-card footer b{font-size:11px}.host-app .public-players{display:grid;grid-template-columns:1fr 1fr;gap:3px}.host-app .public-players>div{min-width:0;padding:4px;font-size:10px;justify-content:center}.host-app .public-players b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.host-app .board-panel .map{width:100%;height:100%;max-height:none;aspect-ratio:auto;gap:4px;grid-template-columns:16px repeat(12,minmax(0,1fr));grid-template-rows:16px repeat(9,minmax(0,1fr))}.host-app .board-settings{top:5px;right:10px;width:30px;min-height:30px;font-size:18px}@media(max-width:700px){.host-app .host-grid{grid-template-columns:112px minmax(0,1fr);gap:5px}.host-app .market-card>strong{font-size:18px}.host-app .market-bonuses{padding:2px;gap:2px}.host-app .market-bonuses>span b{font-size:9px}.host-grid>.board-panel{padding:3px}}
.host-app .host-grid{align-items:stretch}.host-app .host-grid>.board-panel,.host-app .host-grid>aside{height:100%;align-self:stretch}.host-app .board-panel .map{flex:1;min-height:0}
html.board-locked,html.board-locked body{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}html.board-locked body{position:fixed;inset:0}.board-locked .host-app{height:100dvh;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.board-refresh{position:fixed;right:47px;top:5px;width:34px;min-height:30px;padding:0;border-radius:50%;font-size:24px;line-height:28px;z-index:5;background:#142e32d9}.host-activity{padding-right:82px}.board-locked dialog{touch-action:pan-y;overscroll-behavior:contain;user-select:text}.board-locked .host-app>.results{position:fixed;z-index:8;top:10%;left:50%;transform:translateX(-50%);width:min(90vw,650px);max-height:80dvh;overflow-y:auto;touch-action:pan-y;overscroll-behavior:contain;box-shadow:0 0 0 100vmax #061619b0}.board-locked .host-app .board-settings{z-index:9}
.host-app .map-cell>.company-map-label{font-size:clamp(15px,2vw,25px);white-space:nowrap;line-height:1;font-weight:800;text-shadow:0 1px 2px #0003}
