:root{color-scheme:light;font-family:Georgia,Times New Roman,serif;background:radial-gradient(circle at top left,rgba(208,166,86,.22),transparent 35%),linear-gradient(180deg,#f1e2c3,#ded3ba);color:#24180f}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,select,input{font:inherit}.app-shell{max-width:1440px;margin:0 auto;padding:20px}.board-lab{max-width:1560px}.board-lab-header{align-items:start}.board-lab-header p:last-child{margin:10px 0 0;max-width:60ch}.board-lab-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.board-lab-control{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid rgba(36,24,15,.14);background:#fffcf4bd}.board-lab-cursor{display:inline-flex;align-items:center;min-height:36px;padding:8px 10px;border:1px solid rgba(36,24,15,.14);background:#fffcf4bd;font-variant-numeric:tabular-nums}.board-lab-panel{margin-top:18px}.board-lab-route-panel,.board-lab-preview-panel{display:grid;gap:16px;margin-top:18px}.board-lab-preview-header{display:flex;justify-content:space-between;gap:16px;align-items:end}.board-lab-preview-header h2{margin:0;font-size:1.5rem}.board-lab-preview-header p:last-child{max-width:56ch;margin:0;color:#24180fc2}.board-lab-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.board-lab-route-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.board-lab-route-card{display:grid;gap:6px;padding:14px;border:1px solid rgba(36,24,15,.14);background:linear-gradient(180deg,#fffbf2f5,#ebddbdf0);box-shadow:0 10px 24px #2c1a0914}.board-lab-route-snippet{display:grid;gap:8px;grid-column:1 / -1}.board-lab-route-snippet textarea{width:100%;min-height:160px;padding:12px;border:1px solid rgba(36,24,15,.16);background:#fffcf4eb;color:#24180f;font-family:Consolas,Courier New,monospace;font-size:.84rem;resize:vertical}.board-lab-preview-card{display:grid;gap:10px;padding:14px;border:1px solid rgba(36,24,15,.14);background:linear-gradient(180deg,#fffbf2f5,#ebddbdf0);box-shadow:0 10px 24px #2c1a0914}.board-lab-preview-frame{display:grid;place-items:center;min-height:132px;padding:12px;border:1px solid rgba(36,24,15,.12);background:radial-gradient(circle at top,#ffffffe0,#f4e9cdb3),#fff8e9f0}.board-lab-preview-stage{display:grid;place-items:center;width:var(--preview-width);height:var(--preview-height);overflow:hidden;border-radius:4px}.board-lab-preview-stage .board-lab-preview-glyph{width:var(--preview-width);height:var(--preview-height);border-radius:4px;box-shadow:0 3px 10px #2c1a091a}.board-lab-preview-meta{display:grid;gap:4px}.board-lab-preview-meta strong{font-size:.95rem}.board-lab-preview-meta span{font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#24180fad}.hero{display:flex;justify-content:space-between;align-items:end;gap:24px;padding:24px;border:1px solid rgba(36,24,15,.16);background:linear-gradient(135deg,#fff7e4e6,#dfcba3f2);box-shadow:0 12px 40px #2c1a091f}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem}.hero h1{margin:0;font-size:clamp(2rem,3.4vw,3.8rem)}@media(max-width:980px){.board-lab-preview-header{align-items:start;flex-direction:column}}.hero-stats{display:flex;gap:16px;flex-wrap:wrap}.hero-meta{display:grid;gap:12px;justify-items:end}.hero-stats span{padding:10px 14px;background:#38220f14}.hero-session-button{padding:10px 14px;border:1px solid rgba(36,24,15,.18);background:#fffcf4e6;color:#24180f;cursor:pointer}.session-summary-card{display:grid;gap:8px;padding:14px 16px;border:1px solid rgba(36,24,15,.14);background:#fffcf4eb}.session-summary-card-priority{border-color:#7b4e1273;background:linear-gradient(135deg,#f6dfad94,#fffcf4f5);box-shadow:0 10px 24px #3c23081f}.session-summary-header{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.board-stage{display:grid;gap:8px;justify-items:end;font-size:.92rem}.view-tabs{display:flex;gap:10px;margin-top:16px}.play-player-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-top:16px}.player-summary-card{display:grid;gap:4px;padding:10px 12px;border:1px solid rgba(36,24,15,.12);background:#fffcf4d6;font-size:.82rem;border-top:4px solid var(--player-color, #7b4e12)}.player-summary-card.active{border-color:var(--player-color, #7b4e12);background:color-mix(in srgb,var(--player-color, #7b4e12) 12%,rgba(255,252,244,.94))}.view-tab{padding:8px 14px;border:1px solid rgba(36,24,15,.16);background:#fffcf4d6;cursor:pointer}.view-tab.active{border-color:#7b4e12;background:#ab6d1c1f;font-weight:700}.dashboard{margin-top:18px;display:grid;gap:16px;grid-template-columns:minmax(0,2.6fr) minmax(280px,.95fr)}.dashboard.play-dashboard{grid-template-columns:minmax(0,1fr)}.panel{padding:16px;border:1px solid rgba(36,24,15,.16);background:#fffcf4d6;box-shadow:0 10px 30px #2c1a0914}.panel h2{margin-top:0}.hidden-panel{display:none}.panel-heading{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:12px}.panel-heading p{margin:6px 0 0;color:#24180fbd}.mats-panel,.reference-panel{grid-column:1 / -1}.board-panel{grid-column:1 / 2}.sidebar{grid-column:2 / 3}.play-dashboard .board-panel,.play-dashboard .action-panel,.play-dashboard .log-panel,.action-panel,.hand-panel,.log-panel{grid-column:1 / -1}.player-mats{display:grid;gap:20px}.player-mat{padding:14px;border:1px solid color-mix(in srgb,var(--player-color, #7b4e12) 50%,rgba(20,16,12,.2));border-radius:18px;background:linear-gradient(180deg,#f1ebe0fa,#d4c9b6f5),radial-gradient(circle at top,rgba(255,255,255,.22),transparent 40%),linear-gradient(135deg,#342e262e,#0000);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--player-color, #7b4e12) 16%,transparent),inset 0 0 0 12px #2d2a240d,0 14px 28px #15100c1f}.player-mat-active{border-color:var(--player-color, #7b4e12);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--player-color, #7b4e12) 32%,transparent),0 16px 30px #15100c29}.player-mat-header{display:flex;justify-content:space-between;gap:16px;align-items:start;margin-bottom:14px;padding:0 4px}.player-mat-title-block{min-width:0}.player-mat-header h3{margin:0;font-size:1.15rem}.player-mat-kicker{margin:0 0 6px;text-transform:uppercase;letter-spacing:.12em;font-size:.58rem;color:#24180fad}.player-mat-summary{display:grid;grid-template-columns:repeat(3,minmax(72px,1fr));gap:8px;margin:0}.player-mat-summary div{margin:0;padding:8px 10px;border:1px solid rgba(36,24,15,.12);border-radius:12px;background:#fbf8efcc}.player-mat-summary dt{font-size:.58rem;text-transform:uppercase;letter-spacing:.08em}.player-mat-summary dd{margin:3px 0 0;font-weight:700}.player-mat-surface{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));padding:14px;border-radius:22px;background:linear-gradient(180deg,#716a5b40,#4942362e),linear-gradient(135deg,#ffffff3d,#fff0);border:1px solid rgba(69,57,41,.18);box-shadow:inset 0 1px #fff9eb52}.mat-section{display:grid;gap:10px;align-content:start;min-width:0;padding:10px 10px 12px;border:1px solid rgba(45,34,20,.24);border-radius:16px;background:linear-gradient(180deg,#525c66f5,#303740f5),linear-gradient(135deg,#ffffff1f,#0000);box-shadow:inset 0 0 0 1px #e4d9c114,0 4px 10px #0f0a071f}.mat-section-header{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:8px}.mat-section-header h4{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#efe5cf}.mat-section-symbol{display:inline-flex;align-items:center;justify-content:center;min-width:26px;min-height:20px;padding:0 5px;border:1px solid rgba(244,231,206,.22);border-radius:999px;background:#15161b70;color:#f3ead2;font-size:.56rem}.mat-section-count{min-width:24px;padding:2px 6px;border:1px solid rgba(244,231,206,.18);border-radius:999px;background:#11131757;text-align:center;font-size:.66rem;font-weight:700;color:#f1e4c2}.mat-stack-grid{display:grid;gap:10px;margin:0;padding-left:0;list-style:none;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.mat-tile-stack{display:grid;gap:6px}.mat-stack-frame{position:relative;padding:6px 6px 0 0}.mat-stack-shadow,.mat-square-tile{border-radius:16px;border:1px solid rgba(239,224,193,.16);background:linear-gradient(180deg,#1a1e24f0,#393f47f0),linear-gradient(135deg,#ffffff14,#0000);box-shadow:inset 0 0 0 1px #f7edd40d}.mat-stack-shadow{position:absolute;inset:calc(var(--stack-offset, 1) * 4px) 0 0 calc(var(--stack-offset, 1) * 4px);z-index:0}.mat-square-tile{position:relative;z-index:1;display:grid;align-content:space-between;min-height:0;aspect-ratio:1 / 1;padding:8px;color:#f4ead5}.mat-tile-stack-front .mat-square-tile{border-color:color-mix(in srgb,var(--player-color, #7b4e12) 56%,rgba(237,221,188,.4));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--player-color, #7b4e12) 18%,transparent),0 0 0 1px #f5e8ca14}.mat-square-corners,.mat-square-footer{display:flex;align-items:center;justify-content:space-between;gap:4px}.mat-square-glyph{position:absolute;top:22%;right:14%;bottom:20%;left:14%;display:grid;place-items:center}.mat-square-glyph svg{width:100%;height:100%;filter:saturate(.92) contrast(1.06)}.mat-stack-count-badge{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:0 7px;border-radius:999px;background:color-mix(in srgb,var(--player-color, #7b4e12) 72%,rgba(12,14,18,.78));color:#fff2da;font-size:.66rem;font-weight:700;z-index:2}.mat-tier-level{padding:2px 6px;border-radius:999px;background:#16181cbf;color:#f7ecd2;font-size:.68rem;letter-spacing:.08em}.mat-tier-era-badge,.mat-tier-pip{display:inline-flex;align-items:center;justify-content:center;min-height:20px;padding:2px 6px;border-radius:999px;background:#121418b8;color:#f6ecd6;font-size:.54rem;line-height:1;white-space:nowrap}.mat-tier-pip{background:#f9eed629;font-size:.5rem}.mat-tier-title-row{display:flex;flex-wrap:wrap;gap:4px;align-items:center;min-height:22px}.mat-tier-stat-row{display:flex;flex-wrap:wrap;gap:4px}.mat-stat-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border:1px solid rgba(245,231,199,.12);border-radius:999px;background:#f8efdb1f;font-size:.54rem;color:#efe4cd;line-height:1}.mat-badge{padding:2px 8px;border-radius:999px;font-size:.6rem;text-transform:uppercase;letter-spacing:.04em;background:#cca34e38;color:#f3e3bf}.mat-badge.subtle{background:#f5ecd61f}.mat-badge.warning{background:#ae4a2f47}.mat-badge.locked{background:#5f3a7847}.action-button-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.board-map-viewport{overflow:hidden;border:1px solid rgba(36,24,15,.14);background:#1f1a14}.board-map{position:relative;width:100%;aspect-ratio:1 / 1;min-height:860px;overflow:hidden}.board-reference-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;object-fit:cover}.player-card{padding:14px;background:#f2e5ca;border:1px solid rgba(36,24,15,.12)}.board-slot,.board-merchant-space,.board-debug-location-id{position:absolute;z-index:2}.hand-card:disabled,.industry-chip:disabled,.develop-chip:disabled,.develop-stack-card:disabled,.merchant-space-card:disabled{cursor:not-allowed;opacity:.6}.hand-card.legal,.industry-chip.legal,.develop-chip.legal,.develop-stack-card.legal,.merchant-space-card.legal{box-shadow:0 0 0 2px #dcb04ad9}.industry-chip.selected,.develop-chip.selected,.develop-stack-card.selected,.merchant-space-card.selected,.selected-card{box-shadow:0 0 0 3px #c46f16e6}.industry-chip-list,.develop-chip-list,.develop-stack-grid,.merchant-space-grid,.market-slot-row{display:grid;gap:8px}.industry-chip-list,.merchant-space-grid{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.develop-stack-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.industry-chip,.develop-chip,.develop-stack-card,.merchant-space-card,.hand-card{border:1px solid rgba(36,24,15,.12);background:#ffffff9e}.industry-chip{display:grid;gap:2px;padding:6px;text-align:left;font-size:.68rem}.industry-chip.owned{background:#6f3f0014}.industry-chip.flipped{background:#4a804924}.industry-chip.muted{color:#24180f8f}.route-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;z-index:1;pointer-events:none}.route-link{pointer-events:none}.route-stroke{fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:0;stroke:#4e351ae0;stroke-width:.85;transition:stroke .12s ease,opacity .12s ease,stroke-width .12s ease,filter .12s ease}.route-link.legal .route-stroke{stroke:#f9f7eef2;opacity:.95;stroke-width:1.15;filter:drop-shadow(0 0 2px rgba(255,255,255,.82))}.route-link.selected .route-stroke{stroke:#b66516;opacity:1;stroke-width:1.05;filter:drop-shadow(0 0 3px rgba(246,220,178,.85))}.route-link.dimmed .route-stroke,.route-link.dimmed .route-hit.debug-visible{opacity:.12}.route-hit{fill:none;stroke:transparent;stroke-width:var(--board-route-hit-width, 5);pointer-events:none;cursor:default}.route-hit.debug-visible{stroke:#c13f2759}.route-hit.active{pointer-events:stroke;cursor:pointer}.board-slot,.board-merchant-space{position:absolute;display:grid;gap:2px;align-content:center;justify-items:center;padding:2px 3px;border:1px solid rgba(36,24,15,.22);background:#fff9ef2e;text-align:center;transform-origin:center;cursor:default;border-radius:2px;overflow:hidden}.board-slot:disabled,.board-merchant-space:disabled{cursor:default;opacity:1}.board-slot.vacant{border-style:dashed}.board-slot.occupied,.board-merchant-space{background:#fff9efc7;box-shadow:0 1px 4px #120a063d}.board-market-cube{position:absolute;z-index:2;display:inline-flex;border-radius:3px;transform:translate(-50%,-50%);pointer-events:none;box-shadow:inset 0 1px #ffffff47,0 1px 4px #120a066b}.board-market-cube-coal{background:linear-gradient(180deg,#47433d,#1d1b19);border:1px solid rgba(248,241,227,.16)}.board-market-cube-iron{background:linear-gradient(180deg,#df9447,#9b4f14);border:1px solid rgba(255,241,218,.26)}.board-slot.occupied{padding:0}.board-slot.owned{border-color:color-mix(in srgb,var(--owner-color, #7b4e12) 55%,rgba(36,24,15,.16));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--owner-color, #7b4e12) 55%,transparent),0 1px 4px #120a0647}.board-slot.flipped{background:#d8e5d4f0}.board-slot.legal,.board-merchant-space.legal{cursor:pointer}.merchant-node-space-header{display:flex;justify-content:space-between;align-items:center;width:100%;gap:2px}.merchant-node-space-label{font-size:.48rem;font-weight:700;letter-spacing:.03em;line-height:1;text-transform:uppercase}.merchant-node-space-beer{display:inline-flex;align-items:center;gap:1px;font-size:.46rem;line-height:1;color:#24180fd1}.merchant-node-space-beer svg{width:9px;height:9px}.merchant-node-space-icons{display:flex;align-items:center;justify-content:center;gap:1px;min-height:14px}.merchant-node-space-empty{font-size:.48rem;line-height:1;text-transform:uppercase;color:#24180f8f}.location-badge,.industry-glyph{display:inline-flex;align-items:center;justify-content:center}.location-badge{width:16px;height:16px;color:#3c2711eb}.location-badge.subtle{color:#664921c7}.location-badge svg,.industry-glyph svg{width:100%;height:100%}.board-slot.legal,.board-merchant-space.legal{box-shadow:0 0 0 1px #f8f6ed8a,0 0 12px #ffffff52}.board-slot.build-legal{animation:board-slot-build-pulse 1.4s ease-in-out infinite}.board-slot.build-selected{animation:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--active-player-color, #2f5f91) 88%,white),0 0 0 6px color-mix(in srgb,var(--active-player-color, #2f5f91) 42%,transparent),0 0 20px color-mix(in srgb,var(--active-player-color, #2f5f91) 76%,white);z-index:3}.board-slot.selected,.board-merchant-space.selected{box-shadow:0 0 0 2px #f6d8a3f2,0 0 12px #ffebcbd1}.board-slot.build-selected.selected{box-shadow:0 0 0 3px color-mix(in srgb,var(--active-player-color, #2f5f91) 92%,white),0 0 0 6px color-mix(in srgb,var(--active-player-color, #2f5f91) 48%,transparent),0 0 24px color-mix(in srgb,var(--active-player-color, #2f5f91) 84%,white)}.board-slot.dimmed{opacity:.28}.board-slot.debug-visible,.board-merchant-space.debug-visible{outline:1px solid rgba(194,63,39,.8);outline-offset:1px}.board-slot-art{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:stretch;overflow:hidden;border-radius:inherit}.board-slot .board-slot-glyph{width:100%;height:100%;max-width:none;max-height:none;border-radius:0}.board-slot-meta{position:absolute;inset:auto 2px 1px auto;display:inline-flex;gap:2px;align-items:center;padding:1px 2px;border-radius:2px;background:#fff7e6d1}.slot-code,.slot-level{font-size:.5rem;line-height:1}.slot-level{color:#24180fb3}.industry-glyph{width:20px;height:20px;color:#3c2711f0;overflow:hidden;border-radius:2px}.industry-glyph.merchant{width:14px;height:14px}.industry-cotton-mill{color:#7c5a20}.industry-manufacturer{color:#5c4121}.industry-iron-works{color:#5f6976}.industry-coal-mine{color:#44423e}.industry-pottery{color:#8f5531}.industry-brewery{color:#6f6f2f}@keyframes board-slot-build-pulse{0%,to{box-shadow:0 0 0 1px #f8f6ed70,0 0 10px #ffffff3d}50%{box-shadow:0 0 0 2px #fff9e4ad,0 0 16px #fff7d975}}.board-legend{display:grid;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(36,24,15,.1)}.legend-group{display:grid;gap:6px}.legend-chip-row{display:flex;flex-wrap:wrap;gap:8px}.merchant-legend-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.legend-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid rgba(36,24,15,.1);background:#ffffff73;font-size:.72rem}.track-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.legend-chip .industry-glyph{width:20px;height:20px}.legend-chip .location-badge{width:18px;height:18px}.legend-market-cube{position:static;width:16px;height:16px;transform:none;flex:0 0 auto}.merchant-legend-chip{min-height:32px}.merchant-legend-chip .merchant-node-space-label{min-width:10px}.merchant-legend-chip .merchant-node-space-beer svg,.merchant-legend-chip .merchant-meta-icon,.merchant-legend-chip .location-badge,.merchant-legend-chip .industry-glyph.merchant{width:14px;height:14px}.merchant-legend-chip .merchant-node-space-empty{font-size:.62rem}.board-debug-route-id{fill:#3c180ed6;font-size:1.4px;font-weight:700;letter-spacing:.03em;paint-order:stroke;stroke:#fff9efeb;stroke-width:.35px;text-anchor:middle}.board-debug-location-id{display:inline-flex;align-items:center;justify-content:center;min-height:16px;padding:1px 5px;transform:translate(-50%,-50%);border:1px solid rgba(54,31,23,.28);background:#fffbf0e6;color:#5e1d12eb;font-size:.48rem;line-height:1;text-align:center}.board-debug-dot{fill:#b73215db}.board-debug-dot.branch{fill:#1c6196e0}.board-debug-anchor-dot{fill:#f4d680e6;stroke:#3f2310e0;stroke-width:.16px}.board-debug-point-label{fill:#3c180ef2;font-size:1px;font-weight:700;paint-order:stroke;stroke:#fffbf0eb;stroke-width:.28px;text-anchor:middle}.board-debug-point-label.branch{fill:#1c6196fa}.board-debug-point-label.anchor{fill:#7a490bfa}.board-debug-guide-line{stroke:#e7c468c7;stroke-dasharray:.7 .45;stroke-width:.22px}.board-location ul,.messages,.card-list,.log-list{margin:0;padding-left:18px}.action-panel{display:grid;gap:14px}.turn-dock{display:grid;gap:12px;margin-top:12px;padding:14px 16px;border:1px solid rgba(36,24,15,.12);background:linear-gradient(180deg,#fffbf2f0,#eadfc6e6)}.turn-dock-header{display:flex;justify-content:space-between;gap:16px;align-items:start}.turn-dock-header h3,.turn-dock-panel-heading strong{margin:0}.turn-dock-header p,.turn-dock-tip,.turn-dock-warning{margin:6px 0 0}.turn-dock-actions{margin-bottom:0}.turn-dock-summary{padding:8px 10px;border:1px solid rgba(36,24,15,.08);background:#ffffff59}.turn-dock-panel{display:grid;gap:10px;padding:10px 12px;border:1px solid rgba(36,24,15,.08);background:#ffffff61}.turn-dock-panel-heading{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.turn-dock-panel-heading span{color:#24180fad;font-size:.86rem}.turn-dock-messages{margin:0}.turn-dock-submit{display:grid;gap:6px;justify-items:start}.resource-choice-panel{gap:12px}.resource-group-card{display:grid;gap:10px;padding:10px 12px;border:1px solid rgba(36,24,15,.1);background:#ffffff75}.resource-group-header{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.resource-option-list{display:grid;gap:8px}.resource-option-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 10px;border:1px solid rgba(36,24,15,.08);background:#fffcf4b3}.resource-option-copy{display:grid;gap:2px}.resource-option-copy span,.resource-auto-summary{color:#24180fb8}.resource-option-controls{display:flex;align-items:center;gap:8px}.resource-adjust-button{width:32px;height:32px;padding:0;border:1px solid rgba(36,24,15,.16);background:#fffcf4eb;color:#24180f;cursor:pointer}.resource-option-amount{min-width:1.5rem;text-align:center;font-weight:700}.resource-auto-summary{display:grid;gap:6px}.turn-dock-warning{color:#7f1d1d;font-weight:600}.inline-hand-panel{display:grid;gap:10px;margin-top:10px;padding:14px 16px;border:1px solid rgba(36,24,15,.12);background:linear-gradient(180deg,#fffbf2eb,#ece3cee0)}.inline-hand-panel .panel-heading{margin-bottom:0}.inline-hand-panel h3{margin:0}.hand-toggle-button{width:fit-content;padding:8px 12px;border:1px solid rgba(36,24,15,.16);background:#fffcf4db;color:#24180f;cursor:pointer}.inline-hand-list{grid-template-columns:repeat(auto-fit,minmax(168px,1fr))}.selection-summary{display:flex;gap:10px;flex-wrap:wrap;color:#24180fbd}.sell-summary-row{display:grid;gap:4px;padding:10px 12px;border:1px solid rgba(36,24,15,.1);background:#ffffff73}.action-panel label,.action-panel fieldset{display:grid;gap:8px}.check{display:flex!important;align-items:center;gap:8px}.action-panel button{width:fit-content;padding:10px 16px;border:0;color:#fff7e4;background:#6f3f00;cursor:pointer}.develop-chip-list{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.develop-chip{padding:10px 12px;text-align:left}.develop-stack-card{width:100%;padding:12px;text-align:left}.track-panel,.market-panel,.merchant-panel{margin-top:14px}.track-list{display:grid;gap:8px;padding-left:0;list-style:none}.track-list li{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;background:#52361414;border-left:4px solid var(--player-color, rgba(82, 54, 20, .35))}.active-track-item{background:color-mix(in srgb,var(--player-color, #7b4e12) 12%,rgba(255,252,244,.94))}.track-player-name{color:var(--player-color, #7b4e12);font-weight:700}.market-card,.merchant-space-card{padding:10px;border:1px solid rgba(36,24,15,.12);background:#ffffff7a}.market-card header{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.market-slot-row{grid-template-columns:repeat(auto-fit,minmax(62px,1fr))}.market-slot{padding:8px;text-align:center;border:1px solid rgba(36,24,15,.1)}.market-slot.filled{background:#6f3f001f}.market-slot.empty{background:#24180f0a;color:#24180f8f}.merchant-space-card{display:grid;gap:4px;width:100%;text-align:left}.merchant-overview-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.merchant-overview-card{display:grid;gap:10px;padding:12px;border:1px solid rgba(36,24,15,.12);background:#ffffff7a}.merchant-overview-header{display:grid;gap:2px}.merchant-icon-row,.merchant-detail-list{display:flex;flex-wrap:wrap;gap:8px}.merchant-icon-chip,.merchant-detail-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid rgba(36,24,15,.1);background:#fffcf4d9;font-size:.74rem}.merchant-icon-chip.muted{color:#24180f94}.merchant-meta-icon{display:inline-flex;width:16px;height:16px;align-items:center;justify-content:center}.merchant-meta-icon svg{width:100%;height:100%}.messages{color:#7f1d1d}.card-list,.log-list{display:grid;gap:8px}.hand-card{display:grid;gap:6px;width:100%;padding:10px;text-align:left}.selected-card{font-weight:700;color:#6f3f00}@media(max-width:960px){.dashboard{grid-template-columns:1fr}.mats-panel,.board-panel,.sidebar,.action-panel,.hand-panel,.log-panel{grid-column:1}.hero{align-items:start;flex-direction:column}.hero-meta{justify-items:start}.play-player-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.board-map{aspect-ratio:1.2 / 1;min-height:620px}.turn-dock-header,.turn-dock-panel-heading{flex-direction:column}.track-columns{grid-template-columns:1fr}.board-location{width:86px;font-size:.62rem}.board-location-merchant{width:92px}.slot-marker{min-height:24px}.player-mat-header{flex-direction:column}.player-mat-surface{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.play-player-summary{grid-template-columns:1fr}.board-map-viewport{overflow:auto}.board-map{width:max(760px,100%);aspect-ratio:auto;min-height:640px}.inline-hand-list{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.player-mat-surface,.mat-stack-grid{grid-template-columns:1fr}}
