.turn-panel,.action-panel{border:1px solid #ccd9dc;border-radius:8px;background:#ffffffe0;padding:10px}.panel-heading{display:grid;gap:3px;margin-bottom:8px}.panel-heading h2{font-size:1rem;line-height:1.2}.panel-heading p{margin:0;color:#5c6e76;font-size:.75rem;font-weight:800;text-transform:uppercase}.turn-panel__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:0}.turn-panel__facts div{border:1px solid #dbe5e7;border-radius:6px;padding:6px}.turn-panel__facts dt{color:#5c6e76;font-size:.78rem;font-weight:700}.turn-panel__facts dd{margin:3px 0 0;font-size:.95rem;font-weight:800;line-height:1.18;overflow-wrap:anywhere}.turn-panel__cell,.action-panel__pending{width:100%;margin-top:8px;border:1px solid #c7d3d7;border-radius:8px;background:#f7fafb;padding:8px;text-align:left}.turn-panel__cell span{display:block;color:#5c6e76;font-size:.78rem;font-weight:700}.action-panel__pending h3{margin:0 0 5px;font-size:.95rem;line-height:1.2;overflow-wrap:anywhere}.action-panel__pending p,.action-panel__empty{margin:0;color:#485a63;font-size:.92rem}.action-panel__buttons{display:grid;gap:6px;margin-top:8px}.action-panel__button-group{display:grid;gap:4px}.action-panel__button{width:100%;min-height:38px;border:1px solid #9fb1b7;border-radius:6px;background:#eef4f6;color:#14212a;font-weight:800}.action-panel__button--primary{background:#173d4f;color:#fff}.action-panel__button--danger{border-color:#a14837;background:#fff0ed;color:#7c2517}.action-panel__button:disabled{cursor:not-allowed;opacity:.68}.action-panel__disabled-reason{margin:0;color:#7c2517;font-size:.82rem;line-height:1.3}.event-card,.card-history{color:#1c1b19;background:#fffdf8;border:1px solid #d8cec0;border-radius:8px;box-shadow:0 8px 24px #2520191a}.event-card{display:grid;gap:.7rem;max-width:34rem;padding:.85rem}.event-card h2,.event-card h3,.card-history h2{margin:0;line-height:1.2;letter-spacing:0}.event-card h2{overflow-wrap:anywhere;font-size:1.2rem}.event-card h3{font-size:.9rem}.event-card p,.card-history p{margin:0}.event-card__label{color:#6a4d2e;font-size:.78rem;font-weight:700;text-transform:uppercase}.event-card__flavor{color:#4c443b;font-style:italic;overflow-wrap:anywhere}.event-card__mechanics,.event-card__preview,.event-card__players{display:grid;gap:.35rem;padding:.6rem;border:1px solid #e4d9c9;border-radius:6px;background:#faf5ed}.event-card__players ul{display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none}.event-card__players li{display:inline-flex;align-items:center;gap:.35rem;min-width:0;padding:.3rem .45rem;border-radius:999px;background:#fff}.event-card__player-swatch{width:.8rem;height:.8rem;flex:0 0 auto;border:1px solid rgb(0 0 0 / 22%);border-radius:50%}.event-card__disabled-reason{color:#8a2f26;font-size:.9rem}.event-card__actions{display:flex;flex-wrap:wrap;gap:.5rem}.event-card__actions button,.card-history__entry-button{font:inherit}.event-card__actions button{min-height:2.5rem;padding:.55rem .8rem;border:1px solid #7e5736;border-radius:6px;color:#fff;background:#7e5736;cursor:pointer}.event-card__actions button:disabled{border-color:#bcb4aa;color:#6d675f;background:#eee8df;cursor:not-allowed}.card-history{display:grid;gap:.55rem;max-width:34rem;padding:.85rem}.card-history h2{font-size:1.15rem}.card-history__empty{color:#62584e}.card-history__list{display:grid;gap:.4rem;max-height:14rem;overflow:auto;margin:0;padding:0;list-style:none}.card-history__entry{border:1px solid #e1d6c8;border-radius:6px;background:#fff}.card-history__entry--important{border-color:#a54f42}.card-history__entry--selected{outline:2px solid #346f75;outline-offset:2px}.card-history__entry-button,.card-history__entry-content{display:grid;gap:.25rem;width:100%;padding:.55rem;border:0;color:inherit;text-align:left;background:transparent}.card-history__entry-button{cursor:pointer}.card-history__entry-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem}.card-history__meta{color:#62584e;font-size:.88rem}.table-feed{display:grid;gap:.65rem;inline-size:min(100%,28rem);max-block-size:100%;overflow:hidden;border:1px solid rgb(35 59 68 / 18%);border-radius:8px;background:#ffffffd1;padding:clamp(.65rem,1.4vw,1rem);box-shadow:0 14px 36px #182b341f}:where(.board-center,.scene3d__center-console) .table-feed{inline-size:100%;max-block-size:100%;gap:clamp(.32rem,.8vw,.55rem);border-color:transparent;background:transparent;padding:clamp(.48rem,1vw,.78rem);box-shadow:none}.scene3d__center-console .table-feed{color:#eaf6f4;padding:0}.table-feed__header{display:grid;gap:.15rem}.table-feed__header p,.table-feed__selected p,.table-feed__activity p{margin:0;color:#52636d;font-size:.72rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.table-feed__header h2,.table-feed__selected h3{margin:0;color:#14212a;line-height:1.15;overflow-wrap:anywhere}.scene3d__center-console .table-feed__header h2,.scene3d__center-console .table-feed__selected h3{color:#f7fbf7}.table-feed__header h2{font-size:clamp(1.05rem,1.5vw,1.35rem)}.scene3d__center-console .table-feed__header h2{font-size:clamp(.88rem,1.05vw,1.05rem)}.table-feed__status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;margin:0}:where(.board-center,.scene3d__center-console) .table-feed__status{gap:.32rem}.table-feed__status div{min-width:0;border:1px solid #d8e2e4;border-radius:6px;background:#f7faf9;padding:.45rem}:where(.board-center,.scene3d__center-console) .table-feed__status div{padding:.34rem}.scene3d__center-console .table-feed__status div{border-color:#cbd5e12e;background:#05191f7a}.table-feed__status dt{color:#60717a;font-size:.68rem;font-weight:800;text-transform:uppercase}.scene3d__center-console .table-feed__header p,.scene3d__center-console .table-feed__selected p,.scene3d__center-console .table-feed__activity p,.scene3d__center-console .table-feed__status dt{color:#a7c0bd}.table-feed__status dd{margin:.12rem 0 0;color:#17252d;font-size:.84rem;font-weight:800;line-height:1.2;overflow-wrap:anywhere}.scene3d__center-console .table-feed__status dd{color:#f5f6d8;font-size:clamp(.7rem,.76vw,.82rem)}.table-feed__selected,.table-feed__activity{display:grid;gap:.25rem;min-width:0;border-top:1px solid #dbe5e7;padding-top:.55rem}.table-feed__selected h3{font-size:.95rem}.table-feed__selected span,.table-feed__activity span{display:-webkit-box;overflow:hidden;color:#374b55;font-size:.84rem;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}:where(.board-center,.scene3d__center-console) .table-feed__selected,:where(.board-center,.scene3d__center-console) .table-feed__activity{padding-top:.42rem}.scene3d__center-console .table-feed__selected,.scene3d__center-console .table-feed__activity{border-top-color:#cbd5e12e}.scene3d__center-console .table-feed__selected span,.scene3d__center-console .table-feed__activity span{color:#d8e6e2}@media(max-width:760px){.table-feed{inline-size:100%;box-shadow:none}.table-feed__status{grid-template-columns:1fr}:where(.board-center,.scene3d__center-console) .table-feed__status{grid-template-columns:repeat(3,minmax(0,1fr))}:where(.board-center,.scene3d__center-console) .table-feed__header p,:where(.board-center,.scene3d__center-console) .table-feed__status dt{display:none}:where(.board-center,.scene3d__center-console) .table-feed__selected span,:where(.board-center,.scene3d__center-console) .table-feed__activity span{-webkit-line-clamp:1}}.dice{display:grid;gap:.42rem;inline-size:100%;border:1px solid #ccd9dc;border-radius:8px;background:#ffffffe0;padding:10px}.dice__display{display:grid;gap:.5rem}.dice__values{display:flex;gap:.45rem;min-block-size:3rem;align-items:center;justify-content:center}.dice__die,.dice__empty{display:inline-grid;place-items:center;inline-size:2.65rem;block-size:2.65rem;border:2px solid #1f2937;border-radius:.5rem;background:#fff;color:#111827;font-weight:700;line-height:1;box-shadow:0 .25rem #d1d5db}.dice__die-face{font-size:.75rem;text-transform:uppercase}.dice__empty{color:#6b7280;background:#f9fafb}.dice__status,.dice__disabled-reason{margin:0;color:#374151;font-size:.86rem;line-height:1.28}.dice__disabled-reason{color:#7f1d1d}.dice__roll-button{justify-self:stretch;min-inline-size:8rem;border:0;border-radius:.5rem;padding:.58rem .85rem;background:#0f766e;color:#fff;font:inherit;font-weight:700;cursor:pointer}.dice__roll-button:hover:not(:disabled){background:#115e59}.dice__roll-button:focus-visible{outline:3px solid #f59e0b;outline-offset:3px}.dice__roll-button:disabled{cursor:not-allowed;background:#9ca3af;color:#f9fafb}@media(prefers-reduced-motion:no-preference){.dice__display:has(+.dice__roll-button:disabled) .dice__die{transition:transform .16s ease}}.app-layout{min-height:100vh;background:linear-gradient(180deg,#f4f7f8,#e9f0ee 46%,#f6efe2);color:#14212a}.app-layout__main{width:min(100%,1760px);margin:0 auto;padding:clamp(10px,1.4vw,16px) clamp(12px,1.8vw,20px) 20px}.app-layout--active .app-layout__main,.app-layout--gameOver .app-layout__main{padding-top:8px;padding-bottom:12px}.app-layout__header{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}.app-layout--active .app-layout__header,.app-layout--gameOver .app-layout__header{align-items:center;gap:12px;margin-bottom:8px}.app-layout__header>div{min-width:0}.app-layout__kicker,.app-layout__status,.panel-heading p{margin:0;color:#5c6e76;font-size:.78rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.app-layout__status{max-width:min(44vw,42rem);text-align:end}.app-layout h1,.panel-heading h2{margin:0;letter-spacing:0}.app-layout h1{font-size:clamp(1.75rem,2.4rem,2.4rem);line-height:1.05;max-inline-size:100%;overflow-wrap:break-word}.app-layout h1 span{display:inline-block}.app-layout__sr-title{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.app-layout__brand{margin-top:8px;color:#62717a;font-size:.72rem;font-weight:800;letter-spacing:0;text-align:end;text-transform:uppercase}.app-layout__primary{display:grid;grid-template-columns:minmax(0,1fr) clamp(280px,24vw,360px);gap:16px;align-items:start}.app-layout--active .app-layout__primary,.app-layout--gameOver .app-layout__primary{grid-template-columns:minmax(0,1fr) clamp(238px,18vw,300px);gap:12px}.app-layout--active .app-layout__primary,.app-layout--gameOver .app-layout__primary{min-height:0}.app-layout--setup .app-layout__primary{grid-template-columns:minmax(0,920px);justify-content:center}.app-layout--setup .app-layout__board{width:100%}.app-layout__board,.app-layout__controls,.app-layout__secondary,.app-layout__log,.app-layout__alert,.leaderboard-panel{min-width:0}.app-layout__controls,.app-layout__secondary,.app-layout__log,.leaderboard-panel{display:grid;gap:10px}.app-layout__alert{margin:0;border:1px solid #d38b7a;border-radius:8px;background:#fff2ef;color:#7a2418;padding:12px 14px;font-weight:800}.app-layout__controls{align-content:start}.app-layout--active .app-layout__controls,.app-layout--gameOver .app-layout__controls{max-height:calc(100vh - 4.75rem);overflow:auto;padding-right:2px}.app-layout__support{display:grid;grid-template-columns:1fr;gap:12px;margin-top:12px;align-items:stretch}.app-layout--active .app-layout__support,.app-layout--gameOver .app-layout__support{margin-top:10px}.app-layout__secondary{min-width:0}.app-layout--active .app-layout__support--with-log,.app-layout--gameOver .app-layout__support--with-log{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:start}.app-layout--active .app-layout__secondary,.app-layout--gameOver .app-layout__secondary{grid-template-columns:minmax(0,1fr) minmax(230px,320px);align-items:start}.app-layout__log{min-width:0;grid-template-columns:repeat(2,minmax(0,1fr))}.app-layout--active .board-presentation,.app-layout--gameOver .board-presentation{align-content:start;gap:0}.app-layout--active .scene3d,.app-layout--gameOver .scene3d,.app-layout--active .board-shell,.app-layout--gameOver .board-shell{inline-size:100%;margin-inline:0}.app-layout--active .scene3d__viewport,.app-layout--gameOver .scene3d__viewport,.app-layout--active .scene3d__canvas,.app-layout--gameOver .scene3d__canvas{block-size:min(80vh,calc(100vh - 5.5rem),58rem);min-height:30rem}.app-layout--active .board-grid,.app-layout--gameOver .board-grid{max-block-size:min(64vh,calc(100vh - 12rem),44rem)}.table-composition-feed{min-width:0}.table-composition-feed__legacy-title{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.leaderboard-panel{border:1px solid #ccd9dc;border-radius:8px;background:#fff;padding:16px}.leaderboard-panel__list{display:grid;gap:8px;margin:12px 0;padding:0;list-style:none}.leaderboard-panel__list li,.leaderboard-panel__buttons{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.leaderboard-panel__buttons button{min-height:38px}@media(max-width:1080px){.app-layout__primary,.app-layout__support,.app-layout--active .app-layout__support--with-log,.app-layout--gameOver .app-layout__support--with-log{grid-template-columns:1fr}.app-layout--active .app-layout__primary,.app-layout--gameOver .app-layout__primary{min-height:0}.app-layout--active .app-layout__controls,.app-layout--gameOver .app-layout__controls{max-height:none;overflow:visible;padding-right:0}.app-layout__log{grid-template-columns:1fr}}@media(max-width:900px){.app-layout--active .scene3d,.app-layout--gameOver .scene3d,.app-layout--active .board-shell,.app-layout--gameOver .board-shell{inline-size:min(100%,44rem);margin-inline:auto}.app-layout--active .scene3d__viewport,.app-layout--gameOver .scene3d__viewport,.app-layout--active .scene3d__canvas,.app-layout--gameOver .scene3d__canvas{block-size:min(72vh,44rem);min-height:min(72vh,30rem)}}@media(max-width:680px){.app-layout__main{padding:12px}.app-layout__header{display:grid;align-items:start}.app-layout--active .app-layout__header,.app-layout--gameOver .app-layout__header{gap:6px}.app-layout h1{font-size:2rem;line-height:1.08}.app-layout h1 span{display:block}.app-layout__status{max-width:100%;text-align:start}.app-layout__primary{display:flex;flex-direction:column}.app-layout--active .app-layout__secondary,.app-layout--gameOver .app-layout__secondary{grid-template-columns:1fr}.app-layout__controls{order:initial}}@media(max-width:420px){.app-layout h1{font-size:1.82rem}}.event-log{border:1px solid #ccd9dc;border-radius:8px;background:#fff;padding:12px}.event-log__list{display:grid;gap:6px;max-height:220px;margin:0;overflow:auto;padding:0;list-style:none}.event-log__entry{border-left:4px solid #94a8ad;border-radius:6px;background:#f8fbfb}.event-log__entry--purchase{border-left-color:#2c7a5f}.event-log__entry--payment{border-left-color:#b7791f}.event-log__entry--event,.event-log__entry--important{border-left-color:#2f5e92}.event-log__entry--bankruptcy,.event-log__entry--gameOver{border-left-color:#9b2c2c}.event-log__entry button,.event-log__entry div{display:grid;width:100%;gap:3px;border:0;background:transparent;padding:8px;text-align:left}.event-log__message{font-weight:800}.event-log__meta,.event-log__empty{color:#5c6e76;font-size:.86rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#0c161c99;padding:18px;z-index:10}.game-over-modal{width:min(100%,640px);max-height:calc(100vh - 36px);overflow:auto;border-radius:8px;background:#fff;padding:20px;box-shadow:0 22px 70px #00000047}.game-over-modal__summary,.game-over-modal__ranking{display:grid;gap:8px;margin:14px 0;padding:0}.game-over-modal__summary div,.game-over-modal__ranking li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;border:1px solid #dbe5e7;border-radius:6px;padding:10px}.game-over-modal__ranking{list-style:none}.game-over-modal__actions{display:flex;flex-wrap:wrap;gap:8px}.game-over-modal__actions button{min-height:40px}.player-panel{color:#18212f;display:grid;gap:.6rem;min-width:0}.player-panel__header{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.player-panel__title{font-size:1rem;line-height:1.2;margin:0}.player-panel__count{align-items:center;background:#e8eef6;border:1px solid #c9d5e4;border-radius:999px;display:inline-flex;font-size:.8125rem;font-weight:700;justify-content:center;min-height:1.625rem;min-width:1.625rem;padding:0 .5rem}.player-panel__empty{background:#f7f9fc;border:1px solid #d8e0ea;border-radius:8px;margin:0;padding:.875rem}.player-panel__list{display:flex;flex-wrap:wrap;gap:.55rem;list-style:none;margin:0;padding:0}.player-card{flex:1 1 14rem;border:1px solid #d6dee8;border-left:.375rem solid #8794a6;border-radius:8px;background:#fff}.player-card--current{border-color:#1b5f8f;border-left-color:#1b5f8f;box-shadow:0 0 0 2px #1b5f8f29}.player-card--selected{outline:2px solid #8a5a15;outline-offset:2px}.player-card--skippingTurn{border-left-color:#8a5a15}.player-card--bankrupt{background:#f4f5f7;border-left-color:#626b78;color:#4a5564}.player-card--winner{border-left-color:#1f7a4d;box-shadow:0 0 0 2px #1f7a4d2e}.player-card__body{display:grid;gap:.55rem;padding:.7rem}.player-card__topline{align-items:center;display:grid;gap:.5rem;grid-template-columns:auto minmax(0,1fr) auto}.player-card__color{border:2px solid #ffffff;border-radius:999px;box-shadow:0 0 0 1px #5d6978;height:1rem;width:1rem}.player-card__identity{min-width:0}.player-card__name{font-size:.95rem;line-height:1.25;margin:0;overflow-wrap:anywhere}.player-card__turn-state{color:#566476;font-size:.75rem;font-weight:700;line-height:1.3;margin:.125rem 0 0;text-transform:uppercase}.player-card__select,.player-card__asset{background:#fff;border:1px solid #b8c4d2;border-radius:6px;color:#18212f;cursor:pointer;font:inherit;line-height:1.2}.player-card__select{min-height:2rem;padding:.3rem .5rem}.player-card__select:hover,.player-card__asset:hover{border-color:#1b5f8f}.player-card__select:focus-visible,.player-card__asset:focus-visible{outline:3px solid rgba(27,95,143,.35);outline-offset:2px}.player-card__stats{display:grid;gap:.4rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.player-card__stats div{background:#f7f9fc;border:1px solid #dce4ee;border-radius:6px;min-width:0;padding:.4rem}.player-card__stats dt{color:#566476;font-size:.75rem;line-height:1.2;margin:0 0 .25rem}.player-card__stats dd{font-size:.86rem;font-weight:700;line-height:1.25;margin:0;overflow-wrap:anywhere}.player-card__warning{background:#fff4d8;border:1px solid #ddb45d;border-radius:6px;color:#5d4105;font-size:.875rem;margin:0;padding:.5rem .625rem}.player-card__assets,.player-card__effects{display:grid;gap:.375rem}.player-card__section-title{color:#566476;font-size:.75rem;line-height:1.2;margin:0;text-transform:uppercase}.player-card__asset-list,.player-card__effects ul{display:flex;flex-wrap:wrap;gap:.375rem;list-style:none;margin:0;padding:0}.player-card__asset{display:inline-flex;max-width:100%;min-height:1.875rem;overflow-wrap:anywhere;padding:.3125rem .5rem}span.player-card__asset{background:#eef3f8;cursor:default}.player-card__no-assets{color:#566476;font-size:.875rem;margin:0}.player-card__effects li{background:#edf7f1;border:1px solid #bfdfcc;border-radius:6px;color:#24583b;font-size:.8125rem;line-height:1.3;padding:.375rem .5rem}@media(max-width:560px){.player-card__topline,.player-card__stats{grid-template-columns:1fr}.player-card__color{display:none}.player-card__select{justify-self:start}}.save-load-panel{border:1px solid #ccd9dc;border-radius:8px;background:#fff;padding:14px}.save-load-panel--compact{padding:10px}.save-load-panel__metadata{display:grid;gap:6px;margin:0}.save-load-panel__metadata div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #edf2f3;padding-bottom:5px}.save-load-panel__metadata dt{color:#5c6e76;font-weight:700}.save-load-panel__metadata dd{margin:0;text-align:right}.save-load-panel__metadata-summary dd{display:grid;gap:2px}.save-load-panel__metadata-summary span{color:#5c6e76;font-size:.82rem}.save-load-panel__buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:10px}.save-load-panel__buttons button{min-height:38px}.save-load-panel__empty,.save-load-panel__backend{color:#5c6e76}.save-load-panel--compact .save-load-panel__backend{display:none}.save-load-panel__error{color:#8b1e1e;font-weight:700}.save-load-panel--compact .panel-heading{margin-bottom:8px}.save-load-panel--compact .save-load-panel__metadata>div:not(.save-load-panel__metadata-summary){display:none}.board-presentation{display:grid;gap:.75rem}.scene3d{display:grid;gap:.75rem;box-sizing:border-box;color:#e5edf7;inline-size:min(100%,76vh,980px);max-inline-size:100%;min-inline-size:0;margin-inline:auto}.scene3d--error{min-height:12rem;place-items:center;border:1px solid #b91c1c;background:#450a0a}.scene3d__viewport{position:relative;inline-size:100%;min-inline-size:0;min-height:0;aspect-ratio:1;overflow:hidden;border:1px solid #334155;border-radius:8px;background:radial-gradient(circle at 50% 48%,#0f172a33,#020617c7 62%),#0b1220;box-shadow:0 22px 50px #0f172a47}.scene3d__canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;min-height:0}.scene3d__center-console{display:grid;box-sizing:border-box;width:min(23rem,38vw);min-width:min(14rem,76vw);max-height:min(20rem,42vh);gap:.25rem;padding:clamp(.52rem,1vw,.75rem);border:1px solid rgb(125 211 252 / .34);border-radius:8px;background:linear-gradient(135deg,#0a252de6,#20373ac7),#0c2227db;color:#f8fafc;font-size:clamp(.68rem,.8vw,.78rem);line-height:1.25;overflow:hidden;pointer-events:none;box-shadow:inset 0 0 0 1px #ffffff14,inset 0 18px 44px #02061752,0 10px 26px #0206173d}.scene3d__center-console--fallback{position:absolute;inset:50% auto auto 50%;z-index:3;transform:translate(-50%,-50%)}.scene3d__center-html-wrapper{pointer-events:none}.scene3d__center-console--canvas{width:min(21rem,34vw);min-width:min(13rem,72vw)}.scene3d__console-default{display:grid;gap:.22rem;min-width:0}.scene3d__console-title{font-weight:700;text-transform:uppercase}.scene3d__console-cell{display:-webkit-box;overflow:hidden;color:#bfdbfe;font-weight:800;-webkit-box-orient:vertical;-webkit-line-clamp:2}.scene3d__controls{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:#0f172a}.scene3d__dice-status{margin:0;font-size:.92rem;font-weight:700}.scene3d__roll-button{min-height:2.5rem;padding:.5rem .9rem;border:0;border-radius:6px;background:#f4d35e;color:#111827;font-weight:800}.scene3d__roll-button:disabled{cursor:not-allowed;opacity:.55}.scene3d__cell-layer{position:absolute;inset:clamp(.45rem,1.2vw,.9rem);z-index:2;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(7,minmax(0,1fr));gap:clamp(2px,.55vw,6px);pointer-events:none}.scene3d__cell-layer--semantic{opacity:0}.scene3d__cell-button{grid-column:var(--scene-cell-x);grid-row:var(--scene-cell-y);display:grid;min-width:0;min-height:0;align-content:space-between;gap:.12rem;overflow:hidden;padding:clamp(.18rem,.7vw,.45rem);border:1px solid rgb(226 232 240 / .86);border-radius:6px;background:linear-gradient(180deg,#f8fafcf0,#e2e8f0e6),#f8fafc;color:#0f172a;font:inherit;font-size:clamp(.48rem,.95vw,.68rem);line-height:1.05;text-align:start;box-shadow:0 8px 20px #0206172e;cursor:pointer;pointer-events:auto}.scene3d__cell-layer--semantic .scene3d__cell-button{pointer-events:none}.scene3d__cell-button:hover{border-color:#bfdbfe}.scene3d__cell-button:focus-visible{outline:3px solid #fef3c7;outline-offset:2px;z-index:4}.scene3d__cell-button span{overflow-wrap:anywhere}.scene3d__cell-slot{justify-self:start;min-width:1.35em;border-radius:999px;background:#0f172ad9;color:#f8fafc;padding:.12em .34em;font-size:.82em;font-weight:900;line-height:1}.scene3d__cell-name{display:-webkit-box;overflow:hidden;color:#111827;font-weight:850;-webkit-box-orient:vertical;-webkit-line-clamp:3}.scene3d__cell-button--corner{border-width:2px;background:linear-gradient(180deg,#fef3c7fa,#fde68aeb),#fef3c7}.scene3d__cell-button--selected{outline:3px solid #2563eb;outline-offset:2px}.scene3d__cell-button--owned{border-color:#0f766e}.scene3d__cell-button--current{box-shadow:0 0 0 2px #0f766e5c}.scene3d__cell-button--landing{box-shadow:inset 0 0 0 3px #f59e0b}.scene3d__cell-button[data-cell-type=start]{border-color:#fde68a}.scene3d__cell-button[data-cell-type=property]{border-color:#93c5fd}.scene3d__cell-button[data-cell-type=event]{border-color:#c4b5fd}.scene3d__cell-button[data-cell-type=transport]{border-color:#94a3b8}.scene3d__cell-button[data-cell-type=market]{border-color:#86efac}.scene3d__cell-button[data-cell-type=taxFee]{border-color:#fca5a5}.scene3d__cell-button[data-cell-type=culture]{border-color:#f0abfc}.scene3d__cell-button[data-cell-type=utility]{border-color:#67e8f9}.scene3d__cell-button[data-cell-type=riskyInvestment]{border-color:#fdba74}.scene3d__cell-button[data-cell-type=bankCredit]{border-color:#6ee7b7}.scene3d__cell-button[data-cell-type=activityFreeze]{border-color:#5eead4}@media(max-width:760px){.scene3d{inline-size:min(100%,calc(100vw - 24px));max-inline-size:calc(100vw - 24px);justify-self:start}.scene3d__viewport,.scene3d__canvas{min-height:0}.scene3d__center-console{width:min(64vw,14rem);min-width:min(10.5rem,78vw);font-size:.7rem;padding:.46rem}.scene3d__cell-layer{top:.38rem;right:.38rem;bottom:.38rem;left:.38rem;gap:2px}.scene3d__cell-button{border-radius:4px;padding:.12rem}.scene3d__cell-slot{font-size:.72em}.scene3d__cell-name{-webkit-line-clamp:2}.scene3d__controls{align-items:stretch;flex-direction:column}}.game-setup{border:1px solid #ccd9dc;border-radius:8px;background:#fff;padding:18px}.game-setup__intro{margin-bottom:16px}.game-setup__eyebrow{margin:0 0 4px;color:#5c6e76;font-size:.78rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.game-setup h2{margin:0;font-size:1.35rem}.game-setup__players{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.setup-player{display:grid;gap:10px;margin:0;border:1px solid #d9e3e5;border-radius:8px;padding:12px;background:#f9fbfb}.setup-player legend{padding:0 6px;font-weight:700}.setup-player__field{display:grid;gap:6px;font-weight:700}.setup-player__field input{min-height:40px;border:1px solid #b9c8cc;border-radius:6px;padding:8px 10px}.setup-player__colors{display:flex;flex-wrap:wrap;gap:8px}.setup-player__swatch{width:34px;height:34px;border:2px solid #ffffff;border-radius:50%;background:var(--setup-player-color);box-shadow:0 0 0 1px #8da0a6}.setup-player__swatch--selected{box-shadow:0 0 0 3px #173d4f}.setup-player__error,.game-setup__errors{color:#8b1e1e;font-weight:700}.setup-player__remove,.game-setup__commands button,.game-setup__load button{min-height:40px}.game-setup__commands{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.game-setup__start{background:#173d4f;color:#fff}.game-setup__load{margin-top:16px;border-top:1px solid #d9e3e5;padding-top:14px}@media(max-width:760px){.game-setup__players{grid-template-columns:1fr}}:root{color:#17202a;background:#f4f7f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit}#root{min-height:100vh}.app-shell{display:grid;min-height:100vh;place-items:center;padding:32px}.app-shell__panel{width:min(100%,720px);border:1px solid #d5dee3;border-radius:8px;background:#fff;padding:32px;box-shadow:0 18px 60px #17202a1f}.app-shell__eyebrow{margin:0 0 12px;color:#58707c;font-size:.875rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.app-shell h1{margin:0;color:#17202a;font-size:2.25rem;line-height:1.1;letter-spacing:0}.app-shell__summary{max-width:54ch;margin:16px 0 0;color:#40515b;font-size:1.05rem;line-height:1.6}@media(max-width:520px){.app-shell{align-items:stretch;padding:16px}.app-shell__panel{padding:24px}.app-shell h1{font-size:1.75rem}}
