:root{--font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: Georgia, "Times New Roman", serif;--mono: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--font-size-meta: .6875rem;--font-size-small: .75rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--focus-ring: var(--green);font-family:var(--font-body);color-scheme:dark;color:#e1ebe3;background:#111813;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink: #e1ebe3;--muted: #98a79c;--paper: #1a241d;--line: #304137;--green: #5d9972;--green-dark: #477d5c;--green-pale: #24372b;--green-text: var(--green);--rust: #e18a6b;--rust-text: var(--rust);--gold: #d0b36e;--gold-text: var(--gold);--primary-button-text: #122017;--page: #111813;--surface: #19221c;--surface-raised: #202b24;--surface-inset: #141c17;--border: #304137;--border-soft: #29372e;--text-primary: #e1ebe3;--text-secondary: #b5c2b8;--text-muted: #8d9c91;font-optical-sizing:auto;font-size:16px}*{box-sizing:border-box}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}html{font-size:16px}body{min-width:320px;min-height:100vh;margin:0;font-size:15px;line-height:1.5;background:radial-gradient(ellipse at 4% 5%,rgba(222,224,205,.3),transparent 33rem),#f4f2ea;background-attachment:fixed}button,input,select{font:inherit;font-size:.95rem}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}.app-shell{min-height:100vh}.topbar{height:66px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5.5vw,88px);border-bottom:1px solid rgba(70,83,70,.12);background:#fffefac7}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.brand-mark{width:31px;height:31px;display:grid;place-items:center;border-radius:9px 9px 9px 3px;background:var(--green);color:var(--primary-button-text);font-family:var(--font-display);font-size:21px;font-weight:600}.brand-name{font-family:var(--font-display);font-size:22px;font-weight:700;letter-spacing:-1px}.topbar-right{display:flex;align-items:center;gap:20px}.topbar-project,.version-pill,.eyebrow,.mini-label,.page-footer,.ruleset-badge,.active-indicator,.winner-indicator{font-family:var(--mono);text-transform:uppercase;letter-spacing:.075em}.topbar-project{color:#849087;font-size:.72rem}.version-pill{display:inline-flex;align-items:center;gap:7px;color:#66796d;font-size:.7rem}.version-pill i,.active-indicator i,.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#75a682}.page-content{width:100%;margin:0 auto;padding:54px clamp(24px,4vw,64px) 28px}.section-nav{display:flex;gap:4px;padding:4px;margin-bottom:26px;border:1px solid var(--border);border-radius:8px;background:var(--surface-inset)}.section-nav button{min-height:40px;padding:0 14px;border:0;border-radius:5px;background:transparent;color:var(--text-muted);font-size:.82rem;font-weight:600}.section-nav button:hover{color:var(--text-primary)}.section-nav button.is-current{background:var(--green);color:var(--primary-button-text)}.section-nav button:focus-visible{outline:2px solid var(--green);outline-offset:2px}.eyebrow{margin:0 0 11px;color:#7a8a7d;font-size:.72rem;font-weight:500}.panel{border:1px solid #e6e5dc;border-radius:12px;background:#fffefae6;box-shadow:0 3px 12px #2b372b09}.control-panel{padding:20px 23px 21px;margin-bottom:34px}.control-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:17px}.control-heading h2,.batch-results h2,.section-title-row h2,.empty-state h2{margin:0;font-family:var(--font-display);font-weight:500;letter-spacing:-.35px}.control-heading h2{font-size:23px}.control-heading .eyebrow{margin-bottom:5px}.setup-helper{margin:5px 0 0;color:var(--text-muted);font-size:.78rem}.ruleset-badge{padding:7px 9px;border:1px solid #e5e6dd;border-radius:5px;color:#7a897c;font-size:.72rem}.control-fields{display:flex;align-items:flex-end;gap:11px}.player-setup-layout{display:grid;grid-template-columns:minmax(440px,1.1fr) minmax(420px,1fr);align-items:start;gap:18px}.player-setup-settings{min-width:0;padding:12px;border:1px solid var(--border-soft);border-radius:8px;background:var(--surface-inset)}.player-setup-settings>.field-group{width:220px;max-width:100%}.player-setup-settings .bot-difficulty-section{display:block;padding-top:12px;margin-top:14px}.player-setup-settings .bot-difficulty-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px}.player-setup-settings .bot-difficulty-grid .field-group,.player-setup-settings .bot-difficulty-grid .field-group select{width:100%;min-width:0}.setup-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:11px}.setup-options .field-group,.setup-options .field-group select,.setup-options .field-group input{width:100%;min-width:0}.setup-options .button{width:100%}.setup-options .batch-field{min-width:0;margin-left:0}.field-group{min-width:120px;display:flex;flex-direction:column;gap:6px;color:#6f7e74;font-size:.75rem;font-weight:600}.field-group select,.field-group input{height:38px;min-width:125px;padding:0 11px;border:1px solid #dddfd5;border-radius:6px;outline:none;background-color:#fffefa;color:#34483d;font-size:.88rem}.field-group select:focus,.field-group input:focus{border-color:#7c9b88;box-shadow:0 0 0 3px #5d856a1f}.seed-field{min-width:142px}.seed-field input{width:142px;font-family:var(--mono)}.batch-field,.batch-field select{min-width:112px}.bot-difficulty-section{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-top:18px;padding-top:15px;border-top:1px solid var(--border-soft)}.bot-difficulty-section>div:first-child{max-width:340px}.bot-difficulty-section p{margin:5px 0 0;color:var(--text-muted);font-size:.73rem;line-height:1.45}.bot-difficulty-grid{display:grid;grid-template-columns:repeat(3,minmax(112px,1fr));gap:10px}.button{height:38px;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:8px;padding:0 15px;border:1px solid transparent;border-radius:6px;font-size:var(--font-size-small);font-weight:700;transition:background .12s ease,border-color .12s ease,transform .12s ease}.button:not(:disabled):active{transform:translateY(1px)}.button-primary{background:var(--green);color:var(--primary-button-text)}.button-primary:not(:disabled):hover{background:var(--green-dark)}.button-secondary{border-color:#dfe3d9;background:#fffefa;color:#43564a}.button-secondary:not(:disabled):hover{border-color:#aebcae;background:#f8f9f3}.button-icon{font-size:16px;font-weight:400;line-height:1}.control-divider{align-self:stretch;width:1px;margin:0 7px;background:#e6e6dc}.batch-field{margin-left:auto}.error-banner{max-height:50vh;overflow:auto;margin-top:14px;padding:9px 11px;border:1px solid #eac6bb;border-radius:6px;background:#fff5f1;color:#984e39;font:12px/1.5 var(--mono);white-space:pre-wrap}.working-note{margin:12px 0 0;color:#728478;font-size:11px}.batch-results{padding:21px 23px 18px;margin:-12px 0 35px}.trade-price-editor{padding-top:15px;margin-top:18px;border-top:1px solid var(--border-soft)}.trade-price-editor-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:11px}.trade-price-editor-heading p{margin:4px 0 0;color:var(--text-muted);font-size:.72rem;line-height:1.45}.trade-price-grid{display:grid;grid-template-columns:minmax(100px,1fr) repeat(2,minmax(90px,130px));align-items:center;gap:7px 10px;max-width:560px}.trade-price-grid>span{color:var(--text-muted);font-size:.68rem;font-weight:700}.trade-price-grid>b{color:var(--text-secondary);font-family:var(--mono);font-size:.76rem}.trade-price-input input{width:100%;height:34px;padding:0 9px;border:1px solid var(--border);border-radius:5px;background:var(--surface-raised);color:var(--text-primary);font-family:var(--mono);font-size:.78rem}.trade-price-input input:focus{border-color:var(--green);outline:2px solid color-mix(in srgb,var(--green) 25%,transparent)}.batch-analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:13px}.batch-analysis-card{min-width:0;padding:14px;border:1px solid var(--border-soft);border-radius:8px;background:var(--surface-inset)}.distribution-summary{display:flex;flex-wrap:wrap;gap:5px 12px;margin:9px 0;color:var(--text-muted);font-size:.68rem}.distribution-summary b{color:var(--text-primary);font-family:var(--mono);font-weight:600}.score-distribution-bars,.seat-win-bars,.score-source-bars{display:grid;gap:6px}.score-distribution-row,.seat-win-row,.score-source-row{display:grid;grid-template-columns:54px minmax(30px,1fr) 45px 46px;align-items:center;gap:7px;color:var(--text-secondary);font-size:.68rem}.score-distribution-row>span,.seat-win-row>span,.score-source-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-distribution-row>b,.seat-win-row>b,.score-source-row>b{color:var(--text-primary);font-family:var(--mono);font-size:.67rem;text-align:right}.score-distribution-row>small,.seat-win-row>small{color:var(--text-muted);font-size:.62rem;text-align:right}.score-distribution-row .action-track,.seat-win-row .action-track,.score-source-row .action-track{height:7px}.score-source-row .action-track.is-negative i{background:var(--rust)}.metric-note{margin:9px 0 0;color:var(--text-muted);font-size:.66rem}.final-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:12px}.final-resource-grid .metric-card{min-height:62px;padding:8px}.final-resource-grid .metric-card strong{font-size:1.15rem}.final-resource-grid .metric-card span,.final-resource-grid .metric-card small{font-size:.62rem}.round-analysis{margin-top:13px}.trend-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}.trend-chart{min-width:0;padding:8px;border:1px solid var(--border-soft);border-radius:6px;background:var(--surface)}.trend-chart h4{margin:0 0 3px;color:var(--text-secondary);font-size:.7rem;font-weight:600}.trend-chart svg{display:block;width:100%;height:auto;overflow:visible}.trend-chart line{stroke:var(--border-soft);stroke-width:1}.trend-chart text{fill:var(--text-muted);font-family:var(--mono);font-size:9px}.trend-chart polyline{fill:none;stroke:var(--green);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5}.trend-chart polyline.seat-series-all{stroke:var(--text-muted);stroke-dasharray:5 4;stroke-width:1.75}.seat-series-1{--seat-color: var(--green)}.seat-series-2{--seat-color: var(--rust)}.seat-series-3{--seat-color: var(--gold)}.seat-series-4{--seat-color: #6f9fcf}.seat-series-all{--seat-color: var(--text-muted)}.trend-chart polyline[class^=seat-series-]:not(.seat-series-all){stroke:var(--seat-color)}.seat-swatch{display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:2px;background:var(--seat-color, var(--green));vertical-align:0}.seat-legend{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:6px;color:var(--text-secondary);font-size:.66rem}.seat-metrics-table td,.seat-metrics-table thead th:not(:first-child){min-width:72px}.seat-metrics-table .table-group-row th{padding-top:11px;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.06em;font-size:.6rem}.trend-chart circle{fill:var(--green)}.round-metrics-table-wrap{overflow-x:auto;margin-top:10px}.round-metrics-table{width:100%;border-collapse:collapse;color:var(--text-secondary);font-family:var(--mono);font-size:.65rem;white-space:nowrap}.round-metrics-table th,.round-metrics-table td{padding:6px 8px;border-top:1px solid var(--border-soft);text-align:right}.round-metrics-table th:first-child,.round-metrics-table td:first-child{text-align:left}.round-metrics-table thead th{color:var(--text-muted);font-weight:500}.round-metrics-table tbody th{color:var(--text-primary);font-weight:600}.score-source-row{grid-template-columns:minmax(90px,1.15fr) minmax(30px,1fr) 45px}.strength-mix-list{display:grid;gap:7px;margin-top:10px;padding:8px;border:1px solid color-mix(in srgb,var(--green) 52%,var(--border));border-radius:6px}.strength-mix-header,.strength-mix-row{display:grid;grid-template-columns:74px repeat(5,minmax(0,1fr));gap:4px}.strength-mix-header{align-items:end;padding-bottom:5px;border-bottom:1px solid var(--border-soft)}.strength-mix-header>b{color:var(--text-muted);font-size:.58rem;font-weight:500;text-transform:uppercase}.strength-mix-header>span{color:var(--text-muted);font-family:var(--mono);font-size:.55rem;text-align:center}.strength-mix-row{align-items:stretch}.strength-mix-row>b{align-self:center;color:var(--text-secondary);font-size:.65rem}.strength-mix-action-label{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:3px}.strength-mix-action-label>span{overflow:hidden;text-overflow:ellipsis}.strength-mix-action-label>small{flex:0 0 auto;color:var(--text-muted);font-family:var(--mono);font-size:.52rem;font-weight:500}.strength-mix-cell{display:grid;min-width:0;justify-items:center;gap:3px;padding:4px 2px;border:1px solid color-mix(in srgb,var(--green) 38%,var(--border));border-radius:4px;background:var(--surface-inset);font-family:var(--mono)}.strength-mix-cell>strong{color:var(--text-primary);font-size:.6rem;font-weight:600}.strength-mix-cell>i{width:100%;height:4px;overflow:hidden;border-radius:3px;background:var(--border-soft)}.strength-mix-cell>i>em{display:block;height:100%;border-radius:inherit;background:var(--green)}.strength-mix-cell>small{color:var(--text-muted);font-size:.52rem}.strength-opportunity-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:10px}.strength-opportunity-heading>b{color:var(--text-secondary);font-size:.68rem}.strength-opportunity-heading>span{color:var(--text-muted);font-size:.58rem;text-align:right}.strength-opportunity-list{gap:5px;margin-top:5px;padding:6px}.strength-opportunity-cell{min-height:42px;align-content:center}.strength-opportunity-cell>strong{font-size:.62rem}.strength-opportunity-cell>small{font-size:.48rem;line-height:1.15;text-align:center;white-space:normal}.game-report-strength-section{margin-top:12px}.game-report-strength-players{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(330px,1fr);gap:9px;overflow-x:auto;margin-top:8px;padding-bottom:8px;overscroll-behavior-x:contain;scroll-snap-type:x proximity}.game-report-strength-players:focus-visible,.game-report-player-grid:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:5px}.game-report-strength-player{min-width:0;scroll-snap-align:start}.game-report-strength-player-heading{display:flex;align-items:center;gap:5px;color:var(--text-secondary);font-size:.68rem}.game-report-strength-player-heading>span{margin-left:auto;color:var(--text-muted);font-size:.6rem}.game-report-strength-player .strength-mix-list{gap:5px;margin-top:5px;padding:6px}.catalog-page>.section-title-row{margin-bottom:9px}.catalog-intro{margin:0 0 20px;color:var(--text-muted);font-size:.88rem}.catalog-section{padding:18px;margin-top:16px}.catalog-section>.catalog-section-heading{cursor:pointer;list-style:none}.catalog-section>.catalog-section-heading::-webkit-details-marker{display:none}.catalog-section>.catalog-section-heading:after{content:"";width:8px;height:8px;flex:0 0 auto;margin:0 4px 4px auto;border-right:2px solid var(--text-muted);border-bottom:2px solid var(--text-muted);transform:rotate(45deg);transition:transform .14s ease}.catalog-section[open]>.catalog-section-heading{margin-bottom:12px}.catalog-section[open]>.catalog-section-heading:after{transform:rotate(225deg)}.catalog-section>.catalog-section-heading:focus-visible{outline:2px solid var(--green);outline-offset:4px;border-radius:3px}.catalog-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.catalog-section-heading .eyebrow{margin-bottom:3px}.catalog-section-heading h3{margin:0;color:var(--text-primary);font-family:var(--font-display);font-size:1.35rem;font-weight:500}.catalog-section-heading>span{color:var(--text-muted);font-size:.72rem;text-align:right}.recipe-label-distribution{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:12px;padding:9px;border:1px solid var(--border-soft);border-radius:6px;background:var(--surface-inset)}.recipe-label-distribution-heading{display:flex;flex-direction:column;margin-right:4px;color:var(--text-muted);font-size:.67rem;line-height:1.3}.recipe-label-distribution-heading b{color:var(--text-primary);font-size:.75rem}.recipe-label-frequency{display:inline-flex;align-items:center;gap:5px;padding:3px 6px 3px 3px;border:1px solid var(--border-soft);border-radius:5px;background:var(--surface-raised)}.recipe-label-frequency>b{min-width:1ch;color:var(--text-secondary);font-family:var(--mono);font-size:.68rem;text-align:center}.catalog-recipe-order-coverage{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:6px 0 0;color:var(--text-muted);font-size:.64rem}.catalog-recipe-order-coverage b{color:var(--text-primary);font-family:var(--mono)}.recipe-filter-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:9px;margin-top:12px;padding:10px;border:1px solid var(--border-soft);border-radius:6px;background:var(--surface-inset)}.catalog-order-comparison-controls{align-items:center}.catalog-order-comparison-help{flex:1;min-width:220px;margin:0;color:var(--text-muted);font-size:.72rem}.recipe-filter-field{min-width:145px}.recipe-filter-field select{min-width:145px;padding:0 34px 0 12px;appearance:none;border-radius:9px;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 16px) 16px,calc(100% - 11px) 16px;background-repeat:no-repeat;background-size:5px 5px,5px 5px;font-family:var(--font-body);font-size:.84rem;font-weight:500;line-height:1.2;transition:border-color .14s ease,box-shadow .14s ease}.recipe-filter-field select:hover:not(:disabled){border-color:var(--green)}.recipe-filter-reset{height:38px}.recipe-filter-result{align-self:center;margin-left:auto;color:var(--text-muted);font-size:.72rem}.catalog-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--space-2);margin-top:14px}.recipe-filter-empty{grid-column:1 / -1;margin:0;padding:10px 2px}.catalog-card{min-width:0;padding:var(--space-3);border:1px solid var(--border-soft);border-radius:7px;background:var(--surface-inset);color:var(--text-primary)}.catalog-order-card{display:flex;min-height:112px;flex-direction:column;justify-content:space-between;gap:8px}.catalog-order-card .order-card-heading>b{color:var(--text-primary);font-size:.8rem}.catalog-order-card>small{color:var(--text-muted);font-family:var(--mono);font-size:.58rem}.catalog-order-match-status{align-self:flex-start;padding:3px 6px;border-radius:4px;background:var(--surface-raised);color:var(--text-muted);font-size:.62rem}.catalog-order-match-status.is-match{color:var(--green-text)}.catalog-order-not-match{opacity:.55}.catalog-recipe-card{display:flex;min-height:165px;flex-direction:column}.catalog-recipe-card h4,.catalog-card-heading h4{margin:0;color:var(--text-primary);font-size:.92rem;font-weight:600}.recipe-card-title{font-family:var(--font-body);line-height:1.25}.catalog-recipe-card>.recipe-labels{margin:6px 0 2px}.catalog-recipe-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:auto;padding-top:9px}.catalog-recipe-footer .recipe-requirement{margin-top:0}.catalog-cost-label{margin:9px 0 4px;color:var(--text-muted);font-size:.68rem}.catalog-recipe-card .recipe-cost{gap:4px}.catalog-card-detail{display:flex;justify-content:space-between;gap:8px;margin-top:9px;padding-top:7px;border-top:1px solid var(--border-soft);color:var(--text-muted);font-size:.7rem}.catalog-card-detail b{color:var(--text-secondary);font-weight:600}.catalog-recipe-card .recipe-requirement{display:block;margin-top:7px;color:var(--text-muted)}.catalog-card-body{min-width:0}.catalog-card-heading{display:flex;align-items:baseline;justify-content:space-between;gap:7px}.catalog-card-heading>span{flex:0 0 auto;color:var(--text-muted);font-family:var(--mono);font-size:.62rem}.ingredient-catalog-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.ingredient-catalog-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.ingredient-catalog-card>span:last-child{color:var(--text-muted);font-size:.7rem}.rules-page>.section-title-row{margin-bottom:12px}.rules-status-note{display:flex;align-items:flex-start;gap:12px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--gold) 38%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--gold) 8%,var(--surface))}.rules-status-label{flex:0 0 auto;padding:3px 6px;border-radius:4px;background:color-mix(in srgb,var(--gold) 15%,var(--surface));color:var(--gold-text);font-family:var(--mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.05em}.rules-status-note p{margin:0;color:var(--text-secondary);font-size:.78rem;line-height:1.5}.rules-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.rules-section{padding:18px;margin-top:16px}.rules-overview-grid>.rules-section{margin-top:0}.rules-section .catalog-section-heading{align-items:flex-end}.rules-list{display:grid;gap:8px;padding-left:18px;margin:13px 0 0;color:var(--text-secondary);font-size:.78rem;line-height:1.5}.rules-list li::marker{color:var(--gold)}.rules-action-grid,.human-action-card-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;gap:8px;margin-top:14px}.rules-action-card{--action-accent: #71889e;position:relative;display:flex;min-width:0;flex-direction:column;overflow:hidden;padding:10px;border:1px solid color-mix(in srgb,var(--action-accent) 38%,var(--border-soft));border-radius:10px;background:linear-gradient(155deg,color-mix(in srgb,var(--action-accent) 9%,var(--surface-raised)),var(--surface-raised) 48%);box-shadow:0 3px 9px #19281e0d}.rules-action-card:before{position:absolute;inset:0 auto 0 0;width:4px;background:var(--action-accent);content:""}.human-action-card{width:100%;color:var(--text-secondary);font-family:var(--font-body);text-align:left}.human-action-card-grid{margin-top:8px}.human-action-card .rules-action-card-header{gap:4px;padding-bottom:6px}.human-action-card .rules-action-card-header>span{width:22px;height:22px;font-size:.85rem}.human-action-card .rules-action-card-header>b{font-size:.78rem}.human-action-card .rules-action-strength-list{gap:2px;padding-top:5px}.human-action-card .rules-action-strength-list>span{grid-template-columns:22px minmax(0,1fr);gap:3px;padding:3px}.human-action-card .rules-action-strength-list>span>span{font-size:.59rem;line-height:1.25}.human-action-card-statuses{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.human-action-card-statuses:empty{display:none}.human-action-card-statuses>span{padding:2px 5px;border:1px solid transparent;border-radius:4px;font-size:.58rem;font-weight:700;line-height:1.2}.human-action-card-statuses .is-selected{border-color:color-mix(in srgb,var(--green) 45%,var(--border-soft));background:color-mix(in srgb,var(--green) 16%,var(--surface-raised));color:var(--green-text)}.human-action-card-statuses .is-unavailable{border-color:var(--border-soft);border-style:dashed;background:var(--surface-inset);color:var(--text-muted)}.human-action-card.is-unavailable{--action-accent: var(--text-muted);border-color:var(--border-soft);border-style:dashed;background:color-mix(in srgb,var(--surface-inset) 78%,var(--surface-raised))}.human-action-card.is-current{border:3px solid var(--green);background:color-mix(in srgb,var(--green) 10%,var(--surface-raised));box-shadow:0 0 0 2px color-mix(in srgb,var(--green) 24%,transparent),0 3px 9px #19281e0d}.human-action-card.is-current.is-unavailable{border-style:solid;border-color:var(--green);background:color-mix(in srgb,var(--surface-inset) 78%,var(--surface-raised))}.human-action-card:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.catalog-action-trade{--action-accent: #7e9a6f}.catalog-action-discover{--action-accent: #4f91a3}.catalog-action-build{--action-accent: #71889e}.catalog-action-cook{--action-accent: #bd783a}.catalog-action-serve{--action-accent: #bd694d}.rules-action-card-header{display:flex;align-items:center;gap:8px;padding-bottom:10px;border-bottom:1px solid color-mix(in srgb,var(--action-accent) 20%,var(--border-soft))}.rules-action-card-header>span{display:grid;width:29px;height:29px;flex:0 0 auto;place-items:center;border:1px solid color-mix(in srgb,var(--action-accent) 36%,var(--border-soft));border-radius:8px 8px 8px 3px;background:color-mix(in srgb,var(--action-accent) 14%,var(--surface-raised));color:var(--action-accent);font-size:1rem}.rules-action-card-header h4,.rules-action-card-header>b{margin:0;color:var(--text-primary);font-family:var(--font-display);font-size:.95rem;font-weight:600}.rules-action-card-header small{margin-left:auto;color:var(--text-muted);font-family:var(--mono);font-size:.56rem;letter-spacing:.08em}.rules-action-strength-list{display:flex;flex-direction:column;gap:3px;padding-top:7px}.rules-action-strength-list>div,.rules-action-strength-list>span{display:grid;grid-template-columns:25px minmax(0,1fr);align-items:start;gap:5px;padding:4px;border-radius:5px;background:color-mix(in srgb,var(--surface-inset) 78%,transparent)}.rules-action-strength-list>div:first-child,.rules-action-strength-list>div:last-child{background:color-mix(in srgb,var(--action-accent) 10%,var(--surface-inset))}.rules-action-strength-list b{display:grid;min-height:19px;place-items:center;border-radius:4px;background:color-mix(in srgb,var(--action-accent) 17%,var(--surface-raised));color:var(--action-accent);font-family:var(--mono);font-size:.6rem}.rules-action-strength-list>div>span,.rules-action-strength-list>span>span{color:var(--text-secondary);font-size:.64rem;line-height:1.3}.rules-action-strength-list>span.is-active-strength{background:color-mix(in srgb,var(--action-accent) 18%,var(--surface-inset));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--action-accent) 64%,transparent)}.rules-action-strength-list>span.is-active-strength>b{background:var(--action-accent);color:var(--primary-button-text)}.rules-action-card .rules-action-bonus{padding:8px 9px;margin:auto 0 0;border-top:1px solid color-mix(in srgb,var(--action-accent) 18%,var(--border-soft));color:var(--text-muted);font-size:.65rem;line-height:1.45}.rules-action-bonus b{display:block;margin-bottom:3px;color:var(--action-accent);font-size:.59rem;letter-spacing:.06em;text-transform:uppercase}.rules-economy-section{margin-bottom:4px}.batch-results-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.batch-results-heading .eyebrow{margin-bottom:5px}.batch-results h2{font-size:1.45rem}.seed-chip{color:#839086;font-size:.76rem}.seed-chip b{padding:5px 7px;border-radius:4px;background:#f2f3ec;color:#4c6155;font-family:var(--mono);font-weight:400}.metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:17px}.metric-card{min-height:77px;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:12px 15px;border:1px solid #e8e9df;border-radius:7px;background:#fcfcf7}.metric-card span,.metric-card small{color:#829087;font-size:.73rem}.metric-card strong{color:#334e40;font-family:var(--font-display);font-size:1.5rem;font-weight:500}.action-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:14px;padding:12px;border:1px solid #e9e9df;border-radius:7px;background:#fcfcf8}.action-bars,.gathered-counts{display:flex;flex-direction:column;gap:7px;margin-top:9px}.action-bar-row{display:grid;grid-template-columns:54px 1fr 36px;align-items:center;gap:7px;color:#738076;font-size:.74rem}.action-bar-row>b{color:#526c59;font-family:var(--mono);font-size:.7rem;font-weight:400;text-align:right}.action-track{height:5px;overflow:hidden;border-radius:5px;background:#ecf0e8}.action-track i{display:block;height:100%;border-radius:inherit;background:#709276}.gathered-row{display:grid;grid-template-columns:80px minmax(48px,auto) 1fr minmax(48px,auto) 1fr;align-items:center;gap:7px}.gathered-row>span:nth-child(2),.gathered-row>span:nth-child(4){color:#526c59;font-family:var(--mono);font-size:.66rem;text-align:right}.gathered-row .ingredient-pill{justify-self:start;padding:3px 5px;font-size:.64rem}.gathered-row .bar-grain{background:#c59a4d}.gathered-row .bar-vegetable{background:#6eaa72}.gathered-row .bar-fruit{background:#d36a83}.gathered-row .bar-nut{background:#a87c51}.gathered-row .bar-spice{background:#b85c55}.gathered-row .bar-legume{background:#9a72b5}.gathered-row .bar-egg{background:#e2b94c}.gathered-row .bar-dairy{background:#7fa9c2}.usage-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:13px;padding-top:12px;border-top:1px solid #edede5}.usage-list{display:flex;flex-direction:column;gap:5px;padding:0;margin:7px 0 0;list-style:none}.usage-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 8px;border-radius:5px;background:#fafaf5;color:#536359;font-size:10px}.usage-list li>span{display:flex;flex-direction:column;gap:2px}.usage-list small{color:#929b92;font-size:8px}.usage-list b{color:#42644e;font-family:var(--mono);font-size:10px;font-weight:500}.footnote{margin:13px 0 0;color:#929b92;font-size:10px}.section-title-row{display:flex;align-items:flex-end;justify-content:space-between;margin:0 0 16px}.section-title-row .eyebrow{margin-bottom:4px}.section-title-row h2{font-size:27px}.live-meta{display:flex;align-items:center;gap:15px;color:#818b82;font-size:10px}.live-meta .seed-chip{font-size:.76rem}.live-meta b{color:#475b4d;font-family:var(--mono);font-weight:400}.status-pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}.status-pill.running{color:#4b8260}.status-pill.finished{color:#ab7443}.empty-state{min-height:294px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px;text-align:center}.empty-illustration{position:relative;width:65px;height:63px;display:grid;place-items:center;margin-bottom:19px;border:1px solid #dde6dc;border-radius:50%;background:#f0f4ec;color:#6f9278}.empty-illustration span{font-size:25px}.empty-illustration i{position:absolute;top:7px;width:2px;height:9px;border-radius:2px;background:#a0b8a1;animation:steam 1.8s ease-in-out infinite}.empty-illustration i:nth-of-type(1){left:23px}.empty-illustration i:nth-of-type(2){left:32px;animation-delay:.3s}.empty-illustration i:nth-of-type(3){left:41px;animation-delay:.6s}@keyframes steam{50%{transform:translateY(-5px);opacity:.45}}.empty-state .eyebrow{margin-bottom:7px}.empty-state h2{font-size:25px}.empty-state>p:not(.eyebrow){max-width:440px;margin:9px 0 18px;color:#7a867d;font-size:12px;line-height:1.65}.game-toolbar{min-height:75px;display:flex;align-items:center;justify-content:space-between;gap:17px;padding:13px 17px;margin-bottom:20px}.turn-status{display:flex;align-items:center;gap:11px;min-width:0}.turn-icon{width:34px;height:34px;display:grid;flex:0 0 auto;place-items:center;border-radius:50%;background:#edf3ed;color:#557b60;font-size:17px}.turn-status .eyebrow{margin:0 0 3px;font-size:.7rem}.turn-status strong{display:block;overflow:hidden;max-width:280px;color:#33483c;font-family:var(--font-display);font-size:1.05rem;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.turn-meta{display:flex;flex-direction:column;gap:4px;color:#818b82;font-family:var(--mono);font-size:.72rem}.game-actions{display:flex;gap:8px}.inventory-overview{padding:17px;margin:24px 0 20px}.inventory-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px}.inventory-heading .eyebrow{margin-bottom:4px}.inventory-heading h2{margin:0;color:#3a4e42;font-family:var(--font-display);font-size:19px;font-weight:500}.inventory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:13px}.inventory-card{display:flex;align-items:flex-start;gap:9px;min-width:0;padding:10px;border:1px solid #e8e9df;border-radius:7px;background:#fcfcf8}.inventory-icon{display:grid;flex:0 0 auto;place-items:center;width:25px;height:25px;border-radius:7px;background:#edf3ed;color:#6a8b70;font-size:13px}.inventory-card>div{display:flex;min-width:0;flex-direction:column;gap:2px}.inventory-card .mini-label{color:#7d8b80}.inventory-card strong{color:#315a47;font-family:var(--font-display);font-size:21px;font-weight:500;line-height:1.05}.inventory-card small{overflow:hidden;color:#8b968d;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.action-reference{margin-top:14px;padding-top:11px;border-top:1px solid #e9e9df}.action-reference-list{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:8px}.action-reference-list span{display:flex;min-width:0;flex-direction:column;gap:2px;padding:6px 7px;border-left:3px solid #93a08e;border-radius:5px;background:#f7f8f2}.action-reference-list b{color:#526b59;font-size:9px}.action-reference-list small{overflow:hidden;color:#8b958b;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.action-reference-list .action-gather{border-left-color:#7e9a6f;background:#f1f6ee}.action-reference-list .action-discover{border-left-color:#4f91a3;background:#f0f8fa}.action-reference-list .action-build{border-left-color:#71889e;background:#f2f5f8}.action-reference-list .action-cook{border-left-color:#bd783a;background:#fcf5ec}.action-reference-list .action-serve{border-left-color:#bd694d;background:#fbf1ed}.action-reference-list .action-gather b{color:#5f7f58}.action-reference-list .action-discover b{color:#327080}.action-reference-list .action-build b{color:#526b81}.action-reference-list .action-cook b{color:#9a5d28}.action-reference-list .action-serve b{color:#a3523c}.live-game-layout{position:relative}.opening-choice{padding:14px;margin:0 0 12px}.opening-picks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:12px 0}.opening-pick-group{min-width:0}.opening-pick-group>.mini-label{display:block;margin-bottom:7px}.opening-selection-count{margin:8px 0;color:var(--text-secondary);font-size:.8rem}.human-controls-panel{padding:10px 14px;margin:0 0 10px;border-color:#a4bba5;background:var(--surface);box-shadow:0 6px 18px #19251c1f}.human-action-detail{padding:10px 14px;margin-bottom:16px}.free-sale-note{margin:8px 0 0;color:var(--text-secondary);font-size:.75rem}.human-action-grid{display:grid;grid-template-columns:minmax(0,1fr)}.human-action{display:flex;min-width:0;flex-direction:column;gap:7px;padding:10px;border:1px solid #e7e8df;border-radius:7px;background:#fcfcf8}.human-action[hidden]{display:none}.human-action.is-unavailable{border-color:color-mix(in srgb,var(--rust) 48%,var(--border-soft));border-style:solid;background:color-mix(in srgb,var(--rust) 9%,var(--surface-inset))}.unavailable-reason{padding:6px 8px;border-left:3px solid var(--rust);border-radius:4px;background:color-mix(in srgb,var(--rust) 12%,var(--surface-raised));color:var(--rust-text)!important}.human-action>b{min-width:0;color:#485d4e;font-size:.8rem;overflow-wrap:anywhere}.human-action>b small{margin-left:4px;color:var(--text-muted);font-size:.75em;font-weight:400}.human-action>small{min-width:0;color:#68746c;font-size:.68rem;line-height:1.3;overflow-wrap:anywhere}.choice-row,.choice-column{display:flex;min-width:0;flex-wrap:wrap;gap:5px}.choice-column{flex-direction:column}.opening-ingredient-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 7px;border:1px solid var(--border-soft);border-radius:5px;background:var(--surface-raised);color:var(--text-primary)}.opening-ingredient-row small{color:var(--text-muted);font-size:.68rem}.opening-ingredient-count{display:flex;align-items:center;gap:6px}.opening-ingredient-count button{width:32px;height:32px;border:1px solid var(--border-soft);border-radius:4px;background:var(--surface);color:var(--text-secondary)}.opening-ingredient-count button:disabled{opacity:.45}.opening-ingredient-count output{min-width:1.2em;color:var(--text-primary);font-family:var(--mono);text-align:center}.choice-button{max-width:100%;min-width:0;min-height:36px;padding:6px 7px;border:1px solid #dfe5dc;border-radius:5px;background:#fffefa;color:#597060;font-size:.75rem;text-align:left;overflow-wrap:anywhere}.choice-button:hover:not(:disabled),.choice-button.is-selected{border-color:#86a78c;background:#eaf2e9;color:#315e4f}.choice-card-button{display:block;width:100%;padding:7px}.choice-card-content{display:grid;gap:6px}.choice-card-button .recipe-tile,.choice-card-button .equipment-card{width:100%}.choice-card-button:disabled{opacity:.86}.choice-card-button .choice-disabled-label{display:block}.recipe-blocker-details{display:flex;flex-wrap:wrap;gap:4px 10px;padding:0 4px 3px;color:var(--rust-text);font-size:.68rem}.serve-option-reward{color:var(--green-text);font-size:.72rem;font-weight:600}.draw-count-control{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 9px;border:1px solid var(--border-soft);border-radius:6px;background:var(--surface-inset);color:var(--text-secondary);font-size:.72rem}.draw-count-control b{color:var(--text-primary);font-family:var(--mono);font-size:.8rem}.trade-market-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 9px;border:1px solid var(--border-soft);border-radius:6px;background:var(--surface-inset)}.trade-market-controls{display:flex;align-items:center;gap:14px}.trade-market-controls>div{display:flex;align-items:center;gap:7px}.trade-market-controls small{color:var(--text-muted);font-size:.65rem;white-space:nowrap}.draw-count-stepper{display:inline-flex;align-items:center;gap:6px}.draw-count-stepper button{width:36px;height:36px;padding:0;border:1px solid var(--border-soft);border-radius:5px;background:var(--surface-raised);color:var(--text-primary);font-size:1.1rem;line-height:1}.draw-count-stepper button:hover:not(:disabled){border-color:var(--green);background:var(--green-pale)}.draw-count-stepper button:focus-visible{outline:2px solid var(--green);outline-offset:2px}.draw-count-stepper output{min-width:1.5em;color:var(--text-primary);font-family:var(--mono);font-size:.8rem;text-align:center}.draw-count-stepper .trade-sell-button:not(:disabled){border-color:color-mix(in srgb,var(--rust) 65%,var(--border-soft));background:color-mix(in srgb,var(--rust) 15%,var(--surface-raised));color:var(--rust-text)}.draw-count-stepper .trade-buy-button:not(:disabled){border-color:color-mix(in srgb,var(--green) 65%,var(--border-soft));background:color-mix(in srgb,var(--green) 15%,var(--surface-raised));color:var(--green-text)}.ingredient-choice{display:inline-flex;align-items:center;gap:6px}.choice-disabled-label{color:var(--text-muted);font-size:.68rem}.human-action .button{min-height:38px;margin-top:auto;width:100%;height:auto;padding:0 8px;font-size:.75rem}.primary-play-grid{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:16px}.run-output-content,.game-area-disclosure{min-width:0}.game-area-disclosure>.column-heading{cursor:pointer;list-style:none}.game-area-disclosure>.column-heading::-webkit-details-marker{display:none}.game-area-disclosure>.column-heading:after{content:"";width:7px;height:7px;flex:0 0 auto;margin:0 2px 4px auto;border-right:1.5px solid var(--text-muted);border-bottom:1.5px solid var(--text-muted);transform:rotate(45deg);transition:transform .14s ease}.game-area-disclosure[open]>.column-heading:after{transform:rotate(225deg)}.game-area-disclosure>summary:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:4px}.shared-column,.kitchens-section{min-width:0}.kitchen-rail{display:grid;align-items:start;gap:12px;overflow-x:auto;padding:3px 5px 12px;scroll-padding-inline:5px;scroll-snap-type:x proximity}.kitchen-rail:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:6px}.player-kitchen{min-width:0;scroll-snap-align:start}.player-activity{overflow:hidden;margin-top:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.player-activity .event-feed{display:block;height:260px;max-height:none;overflow:auto;overscroll-behavior:contain}.player-activity .event-item{margin:5px 6px;padding:8px 6px 8px 0;border-radius:0 4px 4px 0}.column-heading{height:30px;display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px}.column-heading h3{margin:0;color:#3a4e42;font-family:var(--font-display);font-size:17px;font-weight:500}.column-heading>span{color:#99a097;font-size:9px}.player-list{display:flex;flex-direction:column;gap:11px}.player-board{display:grid;gap:6px;padding:8px 9px;border:1px solid color-mix(in srgb,var(--player-color) 38%,#e7e6dd);border-radius:10px;background:color-mix(in srgb,var(--player-color) 4%,rgba(255,254,250,.93));box-shadow:0 2px 8px #29362b06;transition:border-color .15s ease,box-shadow .15s ease}.player-board-zone{min-width:0;padding:7px;border:1px solid var(--border-soft);border-radius:7px;background:color-mix(in srgb,var(--surface-inset) 72%,transparent)}.player-board-top,.player-board-bottom{display:grid;gap:5px}.player-board-middle{border-color:color-mix(in srgb,var(--green) 36%,var(--border-soft))}.player-board.is-winner{border-color:#d6c38e}.player-board.is-active{border-width:2px;border-color:#84b990;outline:2px solid color-mix(in srgb,#84b990 45%,transparent);outline-offset:1px;box-shadow:0 0 0 2px #7097771f,0 4px 11px #29362b09}.player-board-heading,.player-identity{display:flex;align-items:center}.player-board-heading{justify-content:space-between;gap:6px;min-height:30px}.player-identity{min-width:0;flex:1 1 auto;gap:6px}.player-identity>div{min-width:0}.player-avatar{width:26px;height:26px;display:grid;flex:0 0 auto;place-items:center;border-radius:8px 8px 8px 3px;background:color-mix(in srgb,var(--player-color) 18%,#fff);color:color-mix(in srgb,var(--player-color) 75%,#39483f);font-family:var(--mono);font-size:10px;font-weight:700}.player-identity h3{overflow:hidden;margin:0;color:#384b40;font-family:var(--font-display);font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.player-identity p{overflow:hidden;margin:1px 0 0;color:#929a91;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.player-heading-right{display:flex;flex:0 0 auto;flex-direction:column;align-items:flex-end;justify-content:center;gap:2px}.player-board-stats{display:flex;align-items:center;gap:6px}.player-board .money-amount{min-width:2em;height:2em;font-size:.9em}.player-heading-status{display:flex;align-items:center;gap:4px}.active-indicator{display:inline-flex;align-items:center;gap:5px;color:#608169;font-size:7px}.active-indicator i{width:5px;height:5px}.winner-indicator{padding:2px 4px;border-radius:4px;background:#f3eedc;color:#947a3d;font-size:7px}.mini-label{color:#8a958b;font-size:8px}.recipe-label-tag{display:inline-flex;align-items:center;padding:4px 7px;border:1px solid color-mix(in srgb,currentColor 38%,var(--border));border-radius:4px;background:color-mix(in srgb,currentColor 8%,var(--surface-raised));font-size:9px;font-weight:600;line-height:1}.recipe-labels{display:inline-flex;min-width:0;flex-wrap:wrap;gap:3px}.recipe-label-pasta{border-color:#e8d3ca;background:#fbefea;color:#a45d48}.recipe-label-noodles{border-color:#eadfbe;background:#faf5e3;color:#907743}.recipe-label-bakes{border-color:#e4d3bd;background:#faf0e3;color:#986f45}.recipe-label-bowls{border-color:#d2dfdf;background:#edf5f4;color:#527b7a}.recipe-label-salad{border-color:#cbdcce;background:#eef6ed;color:#56805f}.recipe-label-sweets{border-color:#e3d0df;background:#f8eef7;color:#8a5f83}.recipe-label-curries{border-color:#ead6bd;background:#fbf1e6;color:#97643c}.recipe-label-stews{border-color:#d5d4c5;background:#f3f2e8;color:#72744f}.recipe-label-handhelds{border-color:#d7d5b7;background:#f5f2df;color:#77713a}.recipe-label-skewers{border-color:#d6dfd3;background:#eff4eb;color:#5c795f}.recipe-label-sides{border-color:#cbdcce;background:#eef6ed;color:#56805f}.recipe-label-fritters{border-color:#e4d3bd;background:#faf0e3;color:#986f45}.score-display{display:flex;align-items:baseline;gap:3px;color:#7a887d}.score-display strong{color:#315a47;font-family:var(--font-display);font-size:21px;font-weight:500;line-height:1}.score-display span{font-size:8px}.money-amount{display:inline-flex;min-width:1.7em;height:1.7em;align-items:center;justify-content:center;padding:0 .25em;border:1px solid color-mix(in srgb,var(--gold) 45%,var(--border-soft));border-radius:999px;background:color-mix(in srgb,var(--gold) 15%,var(--surface-raised));color:var(--gold-text);font-family:var(--mono);font-size:.72em;font-variant-numeric:tabular-nums;font-weight:700;line-height:1;white-space:nowrap;vertical-align:middle}.pantry-block{padding:3px 0 5px}.section-label-line{display:flex;align-items:center;justify-content:space-between;gap:7px}.muted-count{color:#9ba298;font-family:var(--mono);font-size:8px}.pantry-meter{height:3px;overflow:hidden;margin:4px 0 6px;border-radius:5px;background:#edf0e9}.pantry-meter span{display:block;height:100%;border-radius:inherit;background:#86a286;transition:width .18s ease}.pantry-tokens{display:flex;flex-wrap:wrap;gap:3px}.ingredient-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 5px;border:1px solid #ecebe3;border-radius:4px;background:#fafaf5;color:#69766c;font-size:8px;white-space:nowrap}.ingredient-pill b{color:#384d40;font-family:var(--mono);font-size:8px}.ingredient-icon{display:inline-block;width:22px;height:22px;flex:0 0 auto;vertical-align:middle}.ingredient-icon-badge{fill:var(--ingredient-icon-color, #71866b)}.ingredient-icon-glyph{fill:#fff8e7;stroke:#2b2016;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;paint-order:stroke fill}.ingredient-icon-mark{fill:none;stroke:#2b2016;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}.ingredient-icon-cutout{fill:var(--ingredient-icon-color, #71866b)}.ingredient-icon-ring{fill:none;stroke:#fff8e7b8;stroke-width:1.3}.ingredient-grain .ingredient-icon{--ingredient-icon-color: #a86d1f}.ingredient-vegetable .ingredient-icon{--ingredient-icon-color: #43813f}.ingredient-fruit .ingredient-icon{--ingredient-icon-color: #c54d62}.ingredient-nut .ingredient-icon{--ingredient-icon-color: #805536}.ingredient-spice .ingredient-icon{--ingredient-icon-color: #a84032}.ingredient-legume .ingredient-icon{--ingredient-icon-color: #71509e}.ingredient-egg .ingredient-icon{--ingredient-icon-color: #b38a13}.ingredient-dairy .ingredient-icon{--ingredient-icon-color: #3f7d9d}.player-loadout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding-top:6px;border-top:1px solid #eeeee7}.player-equipment-section,.player-loadout-section{min-width:0}.player-loadout-summary{display:flex;align-items:center;justify-content:space-between;gap:6px;cursor:pointer;list-style:none}.player-loadout-summary::-webkit-details-marker{display:none}.player-loadout-summary:after{content:"";width:6px;height:6px;flex:0 0 auto;margin:0 2px 3px auto;border-right:1.5px solid var(--text-muted);border-bottom:1.5px solid var(--text-muted);transform:rotate(45deg);transition:transform .14s ease}.player-loadout-section[open]>.player-loadout-summary{margin-bottom:4px}.player-loadout-section[open]>.player-loadout-summary:after{transform:rotate(225deg)}.player-loadout-summary:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:3px}.order-row{padding:8px 9px;margin-top:7px;border:1px solid #e9e7dc;border-radius:7px;background:#fffefa}.order-row:first-of-type{margin-top:9px}.order-row-locked{background:#f8f8f3}.order-row-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.order-row-label,.order-row-access{color:#7f8b81;font-family:var(--mono);font-size:var(--font-size-meta);text-transform:uppercase;letter-spacing:.04em}.order-row-access{color:#5f8067}.order-row-locked .order-row-access{color:#a18367}.small-card-list{display:flex;flex-direction:column;gap:4px;margin-top:4px}.recipe-tile{min-width:0;padding:9px;border:1px solid #e9e7dc;border-radius:7px;background:#fffefa}.recipe-tile-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.recipe-tile-score{display:inline-flex;flex:0 0 auto;align-items:center;gap:4px}.points-tag{display:inline-flex;width:24px;height:24px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--green) 42%,var(--border-soft));border-radius:50%;background:color-mix(in srgb,var(--green) 15%,var(--surface-raised));color:#5d775f;font-family:var(--mono);font-size:10px;font-variant-numeric:tabular-nums;font-weight:700;line-height:1;white-space:nowrap}.recipe-tile h4{margin:7px 0 8px;color:#374a3e;font-size:13px;font-weight:600}.recipe-cost{display:flex;flex-wrap:wrap;gap:var(--space-1)}.recipe-tile-compact{padding:5px 6px}.recipe-tile-compact .recipe-tile-top .recipe-label-tag{padding:3px 5px;font-size:7px}.recipe-tile-compact .points-tag{width:20px;height:20px;font-size:8px}.recipe-tile-compact h4{margin:3px 0;font-size:9px}.recipe-tile-compact .ingredient-pill{gap:3px;padding:2px 3px;font-size:7px}.cook-count-badge{display:inline-block;padding:1px 3px;border-radius:3px;background:#edf3ed;color:#557b60;font-family:var(--mono);font-size:8px;font-weight:500}.empty-note{margin:4px 0 0;color:var(--text-muted);font-size:var(--font-size-meta);line-height:1.4}.equipment-list,.market-equipment{display:flex;flex-direction:column;gap:6px;padding:0;margin:7px 0 0;list-style:none}.equipment-list li,.market-equipment li{display:flex;align-items:flex-start;gap:6px;color:#68756b;font-size:8px;line-height:1.35}.equipment-list li>span:last-child,.market-equipment li>span:last-child{display:flex;flex-direction:column;gap:2px}.equipment-list b,.market-equipment b{color:#485b4e;font-size:9px}.equipment-list small,.market-equipment small{color:#8b958b;font-size:8px}.equipment-mark{color:#a99154;font-size:12px;line-height:1}.player-history{padding-top:6px;margin-top:0;border-top:1px solid #eeeee7}.player-action-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:7px}.player-action-count{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:4px 5px;border:1px solid #ecebe3;border-radius:4px;background:#fafaf5}.player-action-count b{color:#718077;font-size:var(--font-size-meta);font-weight:500}.player-action-count span{color:#4c6655;font-family:var(--mono);font-size:8px;font-weight:700}.shared-panel{overflow:hidden}.shared-section{padding:13px;border-bottom:1px solid #edede5}.shared-section:last-child{border-bottom:0}.shared-section .mini-label{color:#77877b}.shared-group-heading{display:flex;align-items:baseline;gap:8px;padding:13px 14px 0;color:var(--text-primary);font-size:.78rem;font-weight:700}.shared-group-heading small{color:var(--text-muted);font-size:.68rem;font-weight:400}.shared-markets{display:grid;grid-template-columns:minmax(0,1fr);gap:9px;padding:10px 12px 12px}.shared-market-lower-row{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1.05fr) minmax(0,.9fr);align-items:stretch;gap:9px}.shared-market-lower-row>section{min-width:0}.shared-markets .market-section{min-width:0;padding:11px;border:1px solid var(--border-soft);border-top:3px solid var(--green);border-radius:7px;background:color-mix(in srgb,var(--green-pale) 32%,var(--surface))}.shared-markets .equipment-market-section{border-top-color:var(--gold)}.shared-markets .section-label-line{align-items:flex-start;flex-direction:column;gap:2px}.shared-markets .muted-count{color:var(--text-muted);font-size:.62rem}.ingredient-market-section .market-tokens{display:grid;grid-template-columns:repeat(8,minmax(72px,1fr));gap:6px;margin-top:8px;overflow-x:auto;padding-bottom:3px}.ingredient-market-section .market-token{min-width:0;flex:initial;flex-direction:column;flex-wrap:nowrap;align-items:center;gap:4px;padding:6px 4px}.ingredient-market-section .market-token small{font-size:.58rem;text-align:center}.ingredient-market-section .market-token>small:last-of-type{color:var(--text-muted);font-size:.5rem}.ingredient-market-section .commodity-price-track{display:flex;width:auto;flex-direction:column-reverse;gap:2px}.ingredient-market-section .commodity-price-track span{min-width:24px;height:13px;flex:initial;font-size:.52rem}.shared-hidden-note{margin:0;padding:28px 18px;color:var(--text-secondary);font-size:.8rem;line-height:1.5;text-align:center}.shared-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.shared-section-heading .eyebrow{margin:0 0 2px;color:var(--text-muted);font-size:.6rem}.shared-section-heading .mini-label{color:var(--text-primary);font-size:.8rem;font-weight:700}.shared-section-heading>.muted-count{text-align:right}.orders-section{background:color-mix(in srgb,var(--rust) 5%,var(--surface))}.shared-market-lower-row>.orders-section,.shared-market-lower-row>.cookbook-section{min-width:0;padding:11px;border:1px solid var(--border-soft);border-top-width:3px;border-radius:7px}.shared-market-lower-row>.orders-section{border-top-color:var(--rust)}.shared-market-lower-row>.cookbook-section{border-top-color:var(--green)}.order-rows{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:0}.order-rows .order-row,.order-rows .order-row:first-of-type{min-width:0;margin-top:0}.orders-section .order-rows .order-row{padding:0;border:0;border-radius:0;background:transparent}.order-card-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;margin-top:8px}.order-card{display:flex;min-width:0;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border-soft);border-radius:6px;background:var(--surface-raised)}.order-card-heading{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:6px}.order-card-heading>b{color:var(--text-primary);font-size:.75rem}.order-card>small{margin-top:auto;color:var(--text-muted);font-size:var(--font-size-meta);line-height:1.4}.order-card .order-tag-list{min-height:19px}.order-card .order-tag-list .recipe-label-tag{padding:3px 5px;font-size:.62rem}.order-row-locked .order-card{opacity:.72}.cookbook-section{background:color-mix(in srgb,var(--green) 4%,var(--surface))}.recipe-supply-piles,.order-piles-row{display:grid;grid-template-columns:112px minmax(0,1fr);gap:9px}.recipe-supply-piles,.order-piles-row{padding-bottom:10px;margin-bottom:12px;border-bottom:1px solid var(--border-soft)}.recipe-pile,.order-pile{min-width:0;padding:9px;border:1px solid var(--border-soft);border-radius:7px;background:var(--surface-raised)}.recipe-pile-heading,.order-pile-heading{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.recipe-pile-heading .mini-label,.order-pile-heading .mini-label{color:var(--text-primary);font-size:.72rem;font-weight:700}.recipe-pile-heading .muted-count,.order-pile-heading .muted-count{color:var(--text-muted);font-size:.62rem;white-space:nowrap}.recipe-deck-card,.order-deck-card{position:relative;display:grid;width:66px;height:88px;place-items:center;margin:11px auto 7px;border:1px solid color-mix(in srgb,var(--green) 62%,var(--border));border-radius:6px;background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--green) 12%,var(--surface-raised)) 0 5px,color-mix(in srgb,var(--green) 22%,var(--surface-raised)) 5px 10px);box-shadow:2px 2px 0 var(--surface),3px 3px color-mix(in srgb,var(--green) 45%,var(--border-soft));color:var(--green-text)}.order-deck-card{border-color:color-mix(in srgb,var(--rust) 62%,var(--border));background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--rust) 10%,var(--surface-raised)) 0 5px,color-mix(in srgb,var(--rust) 20%,var(--surface-raised)) 5px 10px);box-shadow:2px 2px 0 var(--surface),3px 3px color-mix(in srgb,var(--rust) 45%,var(--border-soft));color:var(--rust-text)}.recipe-deck-mark,.order-deck-mark{font-size:22px}.recipe-deck-card b,.order-deck-card b{position:absolute;top:-8px;right:-8px;display:grid;min-width:24px;height:24px;place-items:center;padding:0 4px;border:2px solid var(--surface-raised);border-radius:999px;background:var(--green);color:var(--primary-button-text);font-family:var(--mono);font-size:.7rem;font-variant-numeric:tabular-nums}.order-deck-card b{background:var(--rust)}.recipe-pile-caption,.order-pile-caption{display:block;color:var(--text-muted);font-size:.62rem;text-align:center}.recipe-discard-list{display:flex;min-height:112px;align-items:center;margin-top:8px;padding:2px 3px 8px}.recipe-discard-list .recipe-tile{width:min(100%,178px);flex:0 1 178px}.order-discard-face{display:flex;min-height:112px;align-items:center;margin-top:8px;padding:2px 3px 8px}.order-discard-card{width:min(100%,178px);flex:0 1 178px}.recipe-discard-empty,.order-discard-empty{display:grid;min-height:112px;place-items:center;padding:12px;margin-top:8px;border:1px dashed var(--border-soft);border-radius:6px;color:var(--text-muted);font-size:.7rem;text-align:center}.cookbook-known-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.cookbook-known-heading .mini-label{color:var(--text-primary);font-size:.72rem;font-weight:700}.cookbook-known-heading .muted-count{color:var(--text-muted);font-size:.62rem}.market-tokens{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.market-token{min-width:92px;flex:1 1 92px;display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:7px;border:1px solid var(--border-soft);border-radius:6px;background:var(--surface-raised)}.market-token small{color:var(--text-muted);font-size:8px}.ingredient-choice .ingredient-icon,.market-token .ingredient-icon{width:28px;height:28px}.ingredient-market-section .market-token>.ingredient-icon{width:36px;height:36px}.commodity-price-track{display:flex;width:100%;gap:3px}.commodity-price-track span{display:flex;height:12px;flex:1 1 0;align-items:center;justify-content:center;border-radius:3px;background:var(--surface-inset);color:var(--text-muted);font-size:.48rem;line-height:1}.commodity-price-track span.is-current{background:var(--green);box-shadow:0 0 0 1px color-mix(in srgb,var(--green) 30%,transparent)}.equipment-market-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:var(--space-2);margin-top:8px}.equipment-card{display:flex;min-width:0;flex-direction:column;gap:7px;padding:9px;border:1px solid var(--border-soft);border-radius:6px;background:var(--surface-raised)}.equipment-card-heading{display:flex;min-width:0;align-items:center;gap:5px}.equipment-card-heading>b{min-width:0;flex:1;color:var(--text-primary);font-size:.72rem}.equipment-card-heading .equipment-mark{flex:0 0 auto}.equipment-card p{margin:0;color:var(--text-muted);font-size:var(--font-size-meta);line-height:1.4}.equipment-card-label-match{display:flex;flex-direction:column;gap:4px;padding-top:6px;border-top:1px solid var(--border-soft)}.equipment-card-label-match>small{color:var(--text-secondary);font-size:.56rem;font-weight:700;letter-spacing:.06em}.equipment-card-label-match .recipe-labels{display:flex;flex-wrap:wrap;gap:4px}.equipment-card-label-match .recipe-label-tag{padding:3px 5px;font-size:.62rem}.equipment-card-combo-match{border-top-style:dashed}.equipment-copy-rule{color:var(--text-secondary);font-size:var(--font-size-meta);font-weight:600}.equipment-catalog-card{min-height:136px;gap:10px;padding:14px;border-radius:9px;background:var(--surface-inset)}.equipment-catalog-card .equipment-card-heading{align-items:flex-start;padding-bottom:9px;border-bottom:1px solid var(--border-soft)}.equipment-catalog-card .equipment-card-heading>b{font-size:.92rem}.equipment-catalog-card p{flex:1;font-size:.76rem;line-height:1.45}.equipment-catalog-copies{padding-top:8px;border-top:1px solid var(--border-soft);color:var(--text-muted)}.player-equipment-cards{grid-template-columns:minmax(0,1fr)}.cookbook-list{display:flex;flex-direction:column;gap:6px;margin-top:9px}.cookbook-list .recipe-tile{padding:8px}.cookbook-list .recipe-tile h4{margin:5px 0 6px;font-size:11px}.cookbook-list .recipe-cost .ingredient-pill{padding:2px 4px;font-size:7px}.cookbook-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:86px;border:1px dashed #e1e4d9;border-radius:6px;background:#fcfcf8;color:#9ba69a;text-align:center}.cookbook-empty span{color:#b4a66e;font-size:16px}.cookbook-empty p{margin:4px 0 0;font-size:9px;line-height:1.5}.activity-panel{overflow:hidden}.activity-header{display:flex;align-items:center;gap:7px;padding:12px 13px;border-bottom:1px solid #edede5;color:#718077;font-size:9px;font-weight:600}.activity-header>span:last-child{margin-left:auto;color:#a1a79e;font-family:var(--mono);font-size:8px;font-weight:400}.activity-header .live-dot{width:5px;height:5px;box-shadow:0 0 0 3px #e9f1e8}.event-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:9px 12px;border-bottom:1px solid #edede5;background:#fbfbf7}.event-filters label{display:flex;min-width:0;flex-direction:column;gap:3px;color:#869187;font-size:8px}.event-filters select{width:100%;min-width:0;height:28px;padding:0 6px;border:1px solid #dddfd5;border-radius:5px;background:#fffefa;color:#485d4e;font-size:10px}.event-feed{max-height:550px;overflow:auto;padding:2px 13px}.event-item{display:grid;grid-template-columns:22px 1fr;gap:8px;padding:10px 8px 10px 0;border-bottom:1px solid #f0f0e9;border-left:3px solid var(--player-color, #93a08e)}.event-item:last-child{border-bottom:0}.event-marker{padding-top:0;color:#93a08e;font-size:19px;line-height:1.15;text-align:center}.event-gather .event-marker{color:#7e9a6f}.event-discover .event-marker{color:#4f91a3}.event-sale .event-marker{color:#a66a98}.event-build .event-marker{color:#71889e}.event-cook .event-marker{color:#bd783a}.event-serve .event-marker{color:#bd694d}.event-setup .event-marker{color:#80918a}.event-game_end .event-marker{color:#bd8c4f}.event-gather{border-left-color:#7e9a6f;background:#f5f8f2}.event-discover{border-left-color:#4f91a3;background:#f0f8fa}.event-sale{border-left-color:#a66a98;background:#fbf4fa}.event-build{border-left-color:#71889e;background:#f2f5f8}.event-cook{border-left-color:#bd783a;background:#fcf5ec}.event-serve{border-left-color:#bd694d;background:#fcf4f0}.event-setup{border-left-color:#80918a;background:#f5f7f5}.event-game_end{border-left-color:#bd8c4f;background:#fbf7eb}.player-tone-coral{--player-color: #c97868}.player-tone-teal{--player-color: #5d9a91}.player-tone-violet{--player-color: #8b78ad}.player-tone-ochre{--player-color: #b28b4c}.player-tone-neutral{--player-color: #93a08e}.event-item .event-meta b{color:color-mix(in srgb,var(--player-color) 78%,#34453b)}.event-meta{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.event-meta b{color:#4c5e51;font-size:9px}.event-meta span{color:#a0a69e;font-family:var(--mono);font-size:7px}.event-action-label{display:inline-block;margin-top:3px;padding:2px 5px;border-radius:3px;background:#edf0e9;color:#637367;font-family:var(--mono);font-size:7px;letter-spacing:.06em;text-transform:uppercase}.event-gather .event-action-label{background:#e7f0e3;color:#5f7f58}.event-discover .event-action-label{background:#dceef2;color:#327080}.event-sale .event-action-label{background:#f3e5f0;color:#89527c}.event-build .event-action-label{background:#e1e9f0;color:#526b81}.event-cook .event-action-label{background:#f7e7d4;color:#9a5d28}.event-serve .event-action-label{background:#f6e2db;color:#a3523c}.event-item p{margin:3px 0 0;color:#7b867d;font-size:9px;line-height:1.45}.activity-footer{padding:9px 12px;border-top:1px solid #edede5;background:#fbfbf7;color:#9ba298;font-size:8px;text-align:center}.simulation-note{display:flex;align-items:flex-start;gap:7px;padding:10px 3px 0;color:#8c968c}.simulation-note>span{color:#a89a65;font-size:12px}.simulation-note p{margin:0;font-size:9px;line-height:1.5}.page-footer{display:flex;justify-content:space-between;margin-top:37px;padding-top:14px;border-top:1px solid #e1e2d8;color:#9ca49a;font-size:8px}.column-heading>span,.live-meta,.usage-list li,.footnote{font-size:.78rem}.mini-label,.muted-count,.player-identity p,.active-indicator,.winner-indicator{font-size:.68rem}.recipe-label-tag{font-size:.78rem}.score-display span{font-size:.72rem}.ingredient-pill{font-size:.68rem}.ingredient-pill b{font-size:.7rem}.points-tag{font-size:.78rem}.recipe-tile-compact .recipe-tile-top .recipe-label-tag{font-size:.66rem}.recipe-tile-compact .points-tag{width:20px;height:20px;font-size:.66rem}.recipe-tile-compact h4{font-size:.8rem}.recipe-tile-compact .ingredient-pill{font-size:.64rem}.recipe-tile-compact .ingredient-icon{width:18px;height:18px}.equipment-list li,.market-equipment li{font-size:.7rem}.equipment-list b,.market-equipment b{font-size:.78rem}.equipment-list small,.market-equipment small,.market-token small{font-size:.68rem}.cookbook-list .recipe-tile h4{font-size:.84rem}.cookbook-list .recipe-cost .ingredient-pill{font-size:.64rem}.activity-header,.event-meta b{font-size:.72rem}.event-meta span{font-size:.64rem}.event-item p{font-size:.72rem}.activity-footer,.simulation-note p{font-size:.68rem}@media(max-width:1120px){.primary-play-grid{grid-template-columns:minmax(0,1fr)}.shared-market-lower-row{grid-template-columns:repeat(2,minmax(0,1fr))}.shared-market-lower-row>.equipment-market-section{grid-column:1 / -1}.event-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;max-height:400px}.inventory-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:960px){.player-setup-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:700px){.opening-picks{grid-template-columns:minmax(0,1fr)}.topbar{height:58px;padding:0 17px}.topbar-project{display:none}.page-content{padding:33px 16px 22px}.section-nav{margin-bottom:21px}.section-nav{overflow-x:auto}.section-nav button{min-height:40px;flex:0 0 auto;padding:0 10px;font-size:.75rem;white-space:nowrap}.control-panel{padding:16px;margin-bottom:27px}.control-fields{display:grid;grid-template-columns:1fr 1fr;align-items:end}.field-group,.field-group select,.field-group input,.seed-field,.seed-field input,.batch-field,.batch-field select{width:100%;min-width:0}.bot-difficulty-section{align-items:stretch;flex-direction:column;gap:12px}.bot-difficulty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.player-setup-settings .bot-difficulty-section{display:block}.player-setup-settings .bot-difficulty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bot-difficulty-grid .field-group,.bot-difficulty-grid .field-group select{width:100%;min-width:0}.control-divider{display:none}.batch-field{margin-left:0}.control-fields>.button{width:100%}.batch-results{padding:17px 15px}.trade-price-editor-heading{align-items:stretch;flex-direction:column}.trade-price-grid{grid-template-columns:minmax(70px,1fr) repeat(2,minmax(78px,100px))}.catalog-section{padding:14px}.batch-results-heading{align-items:flex-start}.metrics-grid{gap:6px}.usage-grid{grid-template-columns:1fr;gap:12px}.batch-analysis-grid,.trend-chart-grid{grid-template-columns:1fr}.batch-analysis-card{padding:10px}.action-breakdown{grid-template-columns:1fr;gap:13px}.rules-overview-grid,.rules-action-grid,.human-action-card-grid{grid-template-columns:1fr}.rules-section{padding:14px}.rules-status-note{flex-direction:column;gap:7px}.metric-card{padding:10px}.metric-card strong{font-size:1.2rem}.metric-card span,.metric-card small{font-size:.7rem}.section-title-row h2{font-size:24px}.live-meta{align-items:flex-end;flex-direction:column;gap:5px}.game-toolbar{align-items:flex-start;flex-wrap:wrap;padding:12px}.turn-status{flex:1 1 58%}.turn-meta{align-items:flex-end}.turn-status strong{max-width:185px;font-size:14px}.game-actions{width:100%}.game-actions .button{flex:1}.inventory-overview{padding:14px}.inventory-heading{align-items:flex-start;flex-direction:column;gap:3px}.inventory-grid{grid-template-columns:1fr 1fr;gap:6px}.inventory-card{padding:8px}.action-reference-list{grid-template-columns:repeat(2,1fr)}.primary-play-grid{grid-template-columns:minmax(0,1fr);gap:18px}.shared-market-lower-row{grid-template-columns:minmax(0,1fr)}.recipe-supply-piles,.order-piles-row{grid-template-columns:88px minmax(0,1fr);gap:6px}.recipe-pile,.order-pile{padding:7px}.recipe-pile-heading,.order-pile-heading{align-items:flex-start;flex-direction:column;gap:2px}.event-feed{display:block;max-height:360px}.player-loadout{grid-template-columns:minmax(0,1fr)}.page-footer{gap:10px;font-size:.66rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}html{color-scheme:dark;background:var(--page)}body{color:var(--text-primary);background:radial-gradient(ellipse at 4% 5%,rgba(60,92,68,.18),transparent 34rem),var(--page);background-attachment:fixed}.topbar{border-color:#a7c0ad1f;background:#141d17eb}.topbar-project,.eyebrow,.seed-chip,.metric-card span,.metric-card small,.action-bar-row,.usage-list small,.footnote,.live-meta,.empty-state>p:not(.eyebrow),.turn-meta,.inventory-card small,.action-reference-list small,.human-action>small,.column-heading>span,.player-identity p,.score-display,.mini-label,.muted-count,.empty-note,.equipment-list li,.market-equipment li,.equipment-list small,.market-equipment small,.player-action-count b,.market-token small,.cookbook-empty,.activity-header,.activity-header>span:last-child,.event-meta span,.event-item p,.activity-footer,.simulation-note,.page-footer,.ruleset-badge,.working-note{color:var(--text-muted)}.version-pill,.field-group,.action-bar-row>b,.gathered-row>span:nth-child(2),.usage-list li,.live-meta b,.turn-status strong,.inventory-heading h2,.inventory-card strong,.action-reference-list b,.human-action>b,.column-heading h3,.player-identity h3,.active-indicator,.score-display strong,.order-row-label,.order-row-access,.points-tag,.recipe-tile h4,.equipment-list b,.market-equipment b,.player-action-count span,.event-meta b{color:var(--text-secondary)}.brand-name{color:var(--text-primary)}.brand-name span{color:var(--rust)}.brand-mark{color:#f5fbf6}.panel,.batch-results{border-color:var(--border);background:#19221cf0;box-shadow:0 4px 18px #0003}.ruleset-badge{border-color:var(--border)}.field-group select,.field-group input,.event-filters select{border-color:#3a4a3f;background-color:#111a14;color:var(--text-primary)}.field-group select:focus,.field-group input:focus,.event-filters select:focus{border-color:#76a987;box-shadow:0 0 0 3px #5d997233}.button-primary{color:var(--primary-button-text)}.button-secondary{border-color:#3a4a3f;background:#202b24;color:#d4e1d7}.button-secondary:not(:disabled):hover{border-color:#64816b;background:#29382e}.control-divider{background:var(--border)}.error-banner{border-color:#72483d;background:#34241f;color:#f0aa92}.seed-chip b,.event-action-label{background:#28362d;color:#c0cec3}.metric-card,.action-breakdown,.inventory-card,.human-action,.action-reference-list span,.player-action-count,.market-token,.cookbook-empty,.event-filters,.activity-footer{border-color:var(--border-soft);background-color:var(--surface-inset)}.metric-card strong,.usage-list b,.action-reference-list .action-gather b,.score-display strong,.points-tag{color:#9dcea9}.action-track,.pantry-meter{background:#29372e}.action-track i,.pantry-meter span{background:#6eaa7d}.usage-grid,.action-reference,.shared-section,.activity-header,.activity-footer,.player-loadout,.player-history,.event-filters,.page-footer{border-color:var(--border-soft)}.usage-list li,.player-action-count{background:#202b24}.status-pill.running{color:#8ac99b}.status-pill.finished{color:#e1bd78}.empty-illustration,.turn-icon,.inventory-icon,.cook-count-badge{border-color:#354b3b;background:#24372b;color:#9bc9a4}.game-toolbar,.inventory-overview,.human-controls-panel,.human-action-detail,.shared-panel,.activity-panel,.player-board,.recipe-tile,.order-row{border-color:var(--border);background-color:var(--surface);color:var(--text-primary)}.human-controls-panel{border-color:#55785e}.turn-status strong,.inventory-heading h2,.column-heading h3,.player-identity h3,.recipe-tile h4{color:var(--text-primary)}.inventory-card strong{color:#a4d2ae}.action-reference-list .action-gather{border-left-color:#7eaa75;background:#1f2c20}.action-reference-list .action-discover{border-left-color:#64b6c8;background:#1d3035}.action-reference-list .action-build{border-left-color:#8ca9c2;background:#242f3a}.action-reference-list .action-cook{border-left-color:#d69b62;background:#352b20}.action-reference-list .action-serve{border-left-color:#d9876d;background:#30231f}.action-reference-list .action-discover b{color:#9bd6e2}.action-reference-list .action-build b{color:#bed2e4}.action-reference-list .action-cook b{color:#f0c18d}.action-reference-list .action-serve b{color:#f0aa92}.choice-button{border-color:#3a4a3f;background:#202b24;color:#c8d7cc}.choice-button:hover:not(:disabled),.choice-button.is-selected{border-color:#699477;background:#2b4031;color:#e2f2e5}.player-board{border-color:color-mix(in srgb,var(--player-color) 46%,#304137);background:color-mix(in srgb,var(--player-color) 8%,#19221c);box-shadow:0 3px 12px #00000029}.player-board.is-winner{border-color:#b49d5f}.player-board.is-active{border-color:#7cab85;box-shadow:0 0 0 2px #70a77a29,0 5px 15px #0003}.player-avatar{background:color-mix(in srgb,var(--player-color) 30%,#1a241d);color:color-mix(in srgb,var(--player-color) 58%,#f0f4f1)}.active-indicator{color:#9acda5}.winner-indicator{background:#3b3420;color:#e5cb82}.recipe-label-pasta{border-color:#70463b;background:#382722;color:#f1b09b}.recipe-label-noodles{border-color:#675536;background:#332d1e;color:#e8cf8b}.recipe-label-bakes{border-color:#6d5438;background:#342a1e;color:#e9bd88}.recipe-label-bowls{border-color:#3e6260;background:#203130;color:#a6d2ce}.recipe-label-salad{border-color:#3d6648;background:#223326;color:#a7d5ad}.recipe-label-sweets{border-color:#654663;background:#302331;color:#ddb3d8}.recipe-label-curries{border-color:#704c36;background:#382a20;color:#e5bc91}.recipe-label-stews{border-color:#625f3e;background:#302f20;color:#d6d09a}.recipe-label-handhelds{border-color:#625e38;background:#302e20;color:#d9cf8a}.recipe-label-skewers{border-color:#486142;background:#253322;color:#aed39f}.recipe-label-sides{border-color:#3d6648;background:#223326;color:#a7d5ad}.recipe-label-fritters{border-color:#6d5438;background:#342a1e;color:#e9bd88}.ingredient-pill{border-color:#37443a;background:#202922;color:#bdc9bf}.ingredient-pill b{color:#e1ebe3}.order-row{border-color:#37443a;background:#202922}.order-row-locked{background:#171f19}.order-row-access{color:#9bcaa3}.order-row-locked .order-row-access{color:#d0aa80}.recipe-tile{border-color:#37443a;background:#202922}.empty-note{color:var(--text-muted)}.equipment-list li,.market-equipment li{color:#b8c5ba}.equipment-list b,.market-equipment b{color:#d7e2d9}.equipment-list small,.market-equipment small{color:#9aa99e}.equipment-mark{color:#d0b36e}.shared-section{border-color:var(--border-soft)}.cookbook-empty{border-color:#405045;background:#151e18}.cookbook-empty span{color:#d0b36e}.event-item{border-bottom-color:#29372e}.event-gather{border-left-color:#7eaa75;background:#1c281d}.event-discover{border-left-color:#64b6c8;background:#1c2b30}.event-sale{border-left-color:#bd8db6;background:#2b222d}.event-build{border-left-color:#8ca9c2;background:#202933}.event-cook{border-left-color:#d69b62;background:#2c251d}.event-serve{border-left-color:#d9876d;background:#2d221e}.event-setup{border-left-color:#8eaa99;background:#202922}.event-game_end{border-left-color:#d0b36e;background:#2c291e}.event-gather .event-action-label{background:#2a3b29;color:#b9dda9}.event-discover .event-action-label{background:#263e43;color:#a6dce5}.event-sale .event-action-label{background:#3d2d40;color:#e3c0dd}.event-build .event-action-label{background:#2e3946;color:#c6d8e9}.event-cook .event-action-label{background:#443522;color:#f0c18d}.event-serve .event-action-label{background:#452c24;color:#f0b19c}.event-item .event-meta b{color:color-mix(in srgb,var(--player-color) 70%,#e1ebe3)}.event-meta b{color:#d5e0d7}.event-item p{color:#b5c2b8}.activity-footer{background:#141c17}.live-dot{box-shadow:0 0 0 3px #26382b}::selection{background:#426b4d;color:#f1f8f2}:root[data-theme=light]{color-scheme:light;color:#34483d;background:#f4f2ea;--ink: #293d33;--muted: #718076;--paper: #fffefa;--line: #e1e2d8;--green: #4e7958;--green-dark: #416d4a;--green-text: #477553;--green-pale: #e8efe6;--rust: #b96349;--rust-text: #a45139;--gold: #a58b46;--gold-text: #796321;--primary-button-text: #fffefa;--page: #f4f2ea;--surface: #fffefa;--surface-raised: #fcfcf8;--surface-inset: #f8f9f3;--border: #e1e2d8;--border-soft: #e8e9df;--text-primary: #293d33;--text-secondary: #536459;--text-muted: #68756b}html[data-theme=light]{color-scheme:light;background:var(--page)}:root[data-theme=light] body{color:var(--text-primary);background:radial-gradient(ellipse at 4% 5%,rgba(222,224,205,.3),transparent 33rem),var(--page)}:root[data-theme=light] .topbar{border-color:#4653461f;background:#fffefae0}:root[data-theme=light] .topbar-project,:root[data-theme=light] .eyebrow,:root[data-theme=light] .seed-chip,:root[data-theme=light] .metric-card span,:root[data-theme=light] .metric-card small,:root[data-theme=light] .action-bar-row,:root[data-theme=light] .usage-list small,:root[data-theme=light] .footnote,:root[data-theme=light] .live-meta,:root[data-theme=light] .empty-state>p:not(.eyebrow),:root[data-theme=light] .turn-meta,:root[data-theme=light] .inventory-card small,:root[data-theme=light] .action-reference-list small,:root[data-theme=light] .human-action>small,:root[data-theme=light] .column-heading>span,:root[data-theme=light] .player-identity p,:root[data-theme=light] .score-display,:root[data-theme=light] .mini-label,:root[data-theme=light] .muted-count,:root[data-theme=light] .empty-note,:root[data-theme=light] .equipment-list li,:root[data-theme=light] .market-equipment li,:root[data-theme=light] .equipment-list small,:root[data-theme=light] .market-equipment small,:root[data-theme=light] .player-action-count b,:root[data-theme=light] .market-token small,:root[data-theme=light] .cookbook-empty,:root[data-theme=light] .activity-header,:root[data-theme=light] .activity-header>span:last-child,:root[data-theme=light] .event-meta span,:root[data-theme=light] .event-item p,:root[data-theme=light] .activity-footer,:root[data-theme=light] .simulation-note,:root[data-theme=light] .page-footer,:root[data-theme=light] .ruleset-badge,:root[data-theme=light] .working-note{color:var(--text-muted)}:root[data-theme=light] .version-pill,:root[data-theme=light] .field-group,:root[data-theme=light] .action-bar-row>b,:root[data-theme=light] .gathered-row>span:nth-child(2),:root[data-theme=light] .gathered-row>span:nth-child(4),:root[data-theme=light] .usage-list li,:root[data-theme=light] .live-meta b,:root[data-theme=light] .turn-status strong,:root[data-theme=light] .inventory-heading h2,:root[data-theme=light] .inventory-card strong,:root[data-theme=light] .action-reference-list b,:root[data-theme=light] .human-action>b,:root[data-theme=light] .column-heading h3,:root[data-theme=light] .player-identity h3,:root[data-theme=light] .active-indicator,:root[data-theme=light] .score-display strong,:root[data-theme=light] .order-row-label,:root[data-theme=light] .order-row-access,:root[data-theme=light] .points-tag,:root[data-theme=light] .recipe-tile h4,:root[data-theme=light] .equipment-list b,:root[data-theme=light] .market-equipment b,:root[data-theme=light] .player-action-count span,:root[data-theme=light] .event-meta b{color:var(--text-secondary)}:root[data-theme=light] .brand-name{color:var(--ink)}:root[data-theme=light] .brand-mark{color:#fffefa}:root[data-theme=light] .panel,:root[data-theme=light] .batch-results{border-color:var(--border);background:#fffefaf0;box-shadow:0 3px 12px #2b372b09}:root[data-theme=light] .ruleset-badge{border-color:var(--border)}:root[data-theme=light] .field-group select,:root[data-theme=light] .field-group input,:root[data-theme=light] .event-filters select{border-color:#dddfd5;background-color:#fffefa;color:#34483d}:root[data-theme=light] .field-group select:focus,:root[data-theme=light] .field-group input:focus,:root[data-theme=light] .event-filters select:focus{border-color:#7c9b88;box-shadow:0 0 0 3px #5d856a1f}:root[data-theme=light] .button-primary{color:#fffefa}:root[data-theme=light] .button-secondary{border-color:#dfe3d9;background:#fffefa;color:#43564a}:root[data-theme=light] .button-secondary:not(:disabled):hover{border-color:#aebcae;background:#f8f9f3}:root[data-theme=light] .control-divider{background:#e6e6dc}:root[data-theme=light] .error-banner{border-color:#eac6bb;background:#fff5f1;color:#984e39}:root[data-theme=light] .seed-chip b,:root[data-theme=light] .event-action-label{background:#f2f3ec;color:#4c6155}:root[data-theme=light] .metric-card,:root[data-theme=light] .action-breakdown,:root[data-theme=light] .inventory-card,:root[data-theme=light] .human-action,:root[data-theme=light] .action-reference-list span,:root[data-theme=light] .player-action-count,:root[data-theme=light] .market-token,:root[data-theme=light] .cookbook-empty,:root[data-theme=light] .event-filters,:root[data-theme=light] .activity-footer{border-color:var(--border-soft);background-color:var(--surface-inset)}:root[data-theme=light] .metric-card strong,:root[data-theme=light] .usage-list b,:root[data-theme=light] .action-reference-list .action-gather b,:root[data-theme=light] .score-display strong,:root[data-theme=light] .points-tag{color:#4e7958}:root[data-theme=light] .action-track,:root[data-theme=light] .pantry-meter{background:#ecf0e8}:root[data-theme=light] .action-track i,:root[data-theme=light] .pantry-meter span{background:#709276}:root[data-theme=light] .usage-grid,:root[data-theme=light] .action-reference,:root[data-theme=light] .shared-section,:root[data-theme=light] .activity-header,:root[data-theme=light] .activity-footer,:root[data-theme=light] .player-loadout,:root[data-theme=light] .player-history,:root[data-theme=light] .event-filters,:root[data-theme=light] .page-footer{border-color:var(--border-soft)}:root[data-theme=light] .usage-list li,:root[data-theme=light] .player-action-count{background:#f2f4ed}:root[data-theme=light] .status-pill.running{color:#477d5c}:root[data-theme=light] .status-pill.finished{color:#947323}:root[data-theme=light] .empty-illustration,:root[data-theme=light] .turn-icon,:root[data-theme=light] .inventory-icon,:root[data-theme=light] .cook-count-badge{border-color:#cfdfd0;background:#e8f0e7;color:#5b8764}:root[data-theme=light] .game-toolbar,:root[data-theme=light] .inventory-overview,:root[data-theme=light] .human-controls-panel,:root[data-theme=light] .human-action-detail,:root[data-theme=light] .shared-panel,:root[data-theme=light] .activity-panel,:root[data-theme=light] .player-board,:root[data-theme=light] .recipe-tile,:root[data-theme=light] .order-row{border-color:var(--border);background-color:var(--surface);color:var(--text-primary)}:root[data-theme=light] .human-controls-panel{border-color:#a8c4ac}:root[data-theme=light] .turn-status strong,:root[data-theme=light] .inventory-heading h2,:root[data-theme=light] .column-heading h3,:root[data-theme=light] .player-identity h3,:root[data-theme=light] .recipe-tile h4{color:var(--text-primary)}:root[data-theme=light] .inventory-card strong{color:#477d5c}:root[data-theme=light] .action-reference-list .action-gather{border-left-color:#719c66;background:#f1f6ee}:root[data-theme=light] .action-reference-list .action-discover{border-left-color:#4f9eae;background:#e5f1f2}:root[data-theme=light] .action-reference-list .action-build{border-left-color:#7794ac;background:#e9eef2}:root[data-theme=light] .action-reference-list .action-cook{border-left-color:#b98753;background:#f4eee4}:root[data-theme=light] .action-reference-list .action-serve{border-left-color:#bd735d;background:#fbf1ed}:root[data-theme=light] .action-reference-list .action-discover b{color:#347886}:root[data-theme=light] .action-reference-list .action-build b{color:#526f86}:root[data-theme=light] .action-reference-list .action-cook b{color:#8d6336}:root[data-theme=light] .action-reference-list .action-serve b{color:#98553f}:root[data-theme=light] .choice-button{border-color:#d9e0d8;background:#fffefa;color:#43564a}:root[data-theme=light] .choice-button:hover:not(:disabled),:root[data-theme=light] .choice-button.is-selected{border-color:#8da994;background:#eaf2e9;color:#2f5039}:root[data-theme=light] .player-board{border-color:color-mix(in srgb,var(--player-color) 46%,#e1e2d8);background:color-mix(in srgb,var(--player-color) 7%,#fffefa);box-shadow:0 3px 12px #2b372b0f}:root[data-theme=light] .player-board.is-winner{border-color:#b49d5f}:root[data-theme=light] .player-board.is-active{border-color:#7cab85;box-shadow:0 0 0 2px #70a77a21,0 5px 15px #2b372b14}:root[data-theme=light] .player-avatar{background:color-mix(in srgb,var(--player-color) 24%,#fffefa);color:color-mix(in srgb,var(--player-color) 78%,#293d33)}:root[data-theme=light] .active-indicator{color:#477d5c}:root[data-theme=light] .winner-indicator{background:#f6f0dc;color:#806c2f}:root[data-theme=light] .recipe-label-pasta{border-color:#e3c4b8;background:#fbede7;color:#96533e}:root[data-theme=light] .recipe-label-noodles{border-color:#e3d5a9;background:#f7f1dc;color:#806a2d}:root[data-theme=light] .recipe-label-bakes{border-color:#e3ceb2;background:#f7f0e4;color:#89643c}:root[data-theme=light] .recipe-label-bowls{border-color:#c4d9d5;background:#e9f2f0;color:#47716c}:root[data-theme=light] .recipe-label-salad{border-color:#c4dcc9;background:#eaf3eb;color:#4c7954}:root[data-theme=light] .recipe-label-sweets{border-color:#ddc6dc;background:#f4eaf3;color:#80577c}:root[data-theme=light] .recipe-label-curries{border-color:#e4cfb4;background:#f8efe4;color:#885934}:root[data-theme=light] .recipe-label-stews{border-color:#d7d5c2;background:#f1f0e6;color:#696b46}:root[data-theme=light] .recipe-label-handhelds{border-color:#d5d1b2;background:#f3f0dd;color:#706a36}:root[data-theme=light] .recipe-label-skewers{border-color:#c9d8be;background:#edf3e8;color:#557443}:root[data-theme=light] .recipe-label-sides{border-color:#c4dcc9;background:#eaf3eb;color:#4c7954}:root[data-theme=light] .recipe-label-fritters{border-color:#e3ceb2;background:#f7f0e4;color:#89643c}:root[data-theme=light] .ingredient-pill{border-color:#dce3dc;background:#f2f5ef;color:#536459}:root[data-theme=light] .ingredient-pill b{color:#293d33}:root[data-theme=light] .order-row{border-color:#dce3dc;background:#f7f8f4}:root[data-theme=light] .order-row-locked{background:#f0f1eb}:root[data-theme=light] .order-row-access{color:#477d5c}:root[data-theme=light] .order-row-locked .order-row-access{color:#946b43}.action-row{margin:12px 0}.player-board-middle .action-row{margin:0}.action-row-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.action-row-card{display:flex;min-width:0;flex-direction:column;gap:1px;padding:5px;border:1px solid var(--border-soft);border-radius:6px;background:var(--surface-inset);color:var(--text-primary)}.action-row-card>b{color:var(--gold-text);font-family:var(--mono);font-size:.75rem}.action-row-card>span{overflow:hidden;font-size:.72rem;font-weight:600;text-overflow:ellipsis}.action-row-card>small{color:var(--text-muted);font-size:.62rem}.trade-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:6px;padding:7px;border:1px solid var(--border-soft);border-radius:6px;background:var(--surface-inset)}.trade-controls .button{width:auto;margin-top:0}.trade-controls label{display:flex;min-width:100px;flex:1 1 100px;flex-direction:column;gap:3px;color:var(--text-muted);font-size:.65rem}.trade-controls select{width:100%;min-width:0;padding:5px;border:1px solid var(--border-soft);border-radius:4px;background:var(--surface-raised);color:var(--text-primary);font-size:.7rem}.trade-controls>small{display:flex;width:100%;align-items:center;justify-content:space-between;gap:5px;color:var(--text-muted);font-size:.65rem}.trade-controls>small button{border:0;background:transparent;color:var(--red);font-size:inherit}.scrap-bin-toggle{display:flex;align-items:center;gap:5px;color:var(--text-muted);font-size:.68rem}.scrap-bin-toggle input{accent-color:var(--green)}.order-tag-list{display:flex;flex-wrap:wrap;gap:4px}.order-tag-list .recipe-label-tag{width:fit-content}.order-tag-list .order-tag-match{box-shadow:0 0 0 1px var(--green)}.order-tag-list .ingredient-tag,.recipe-label-distribution .ingredient-tag{border-color:color-mix(in srgb,var(--green) 40%,var(--border-soft));background:color-mix(in srgb,var(--green) 12%,var(--surface-raised));color:var(--green-text)}:root[data-theme=light] .recipe-tile{border-color:#dce3dc;background:#fffefa}:root[data-theme=light] .empty-note{color:var(--text-muted)}:root[data-theme=light] .equipment-list li,:root[data-theme=light] .market-equipment li{color:#58675d}:root[data-theme=light] .equipment-list b,:root[data-theme=light] .market-equipment b{color:#34483d}:root[data-theme=light] .equipment-list small,:root[data-theme=light] .market-equipment small{color:var(--text-muted)}:root[data-theme=light] .equipment-mark{color:#9e8135}:root[data-theme=light] .shared-section{border-color:var(--border-soft)}:root[data-theme=light] .cookbook-empty{border-color:#d8e0d7;background:#f5f7f2}:root[data-theme=light] .cookbook-empty span{color:#9e8135}:root[data-theme=light] .event-item{border-bottom-color:#e3e6de}:root[data-theme=light] .event-gather{border-left-color:#719c66;background:#edf4e9}:root[data-theme=light] .event-discover{border-left-color:#4f9eae;background:#e8f2f3}:root[data-theme=light] .event-sale{border-left-color:#a778a0;background:#f2ebf1}:root[data-theme=light] .event-build{border-left-color:#7794ac;background:#ebeff3}:root[data-theme=light] .event-cook{border-left-color:#b98753;background:#f5efe5}:root[data-theme=light] .event-serve{border-left-color:#bd735d;background:#f7ece8}:root[data-theme=light] .event-setup{border-left-color:#8eaa99;background:#eff3ef}:root[data-theme=light] .event-game_end{border-left-color:#b49d5f;background:#f6f2e5}:root[data-theme=light] .event-gather .event-action-label{background:#dfead8;color:#4e7042}:root[data-theme=light] .event-discover .event-action-label{background:#d9ebee;color:#347886}:root[data-theme=light] .event-sale .event-action-label{background:#eadce8;color:#80577a}:root[data-theme=light] .event-build .event-action-label{background:#dfe7ed;color:#526f86}:root[data-theme=light] .event-cook .event-action-label{background:#eee1ce;color:#8d6336}:root[data-theme=light] .event-serve .event-action-label{background:#f0ddd6;color:#98553f}:root[data-theme=light] .event-item .event-meta b{color:color-mix(in srgb,var(--player-color) 70%,#293d33)}:root[data-theme=light] .event-meta b{color:#43564a}:root[data-theme=light] .event-item p{color:#58675d}:root[data-theme=light] .activity-footer{background:#f8f9f4}:root[data-theme=light] .live-dot{box-shadow:0 0 0 3px #e3eee3}:root[data-theme=light] ::selection{background:#b8d0bb;color:#20372a}.theme-toggle{white-space:nowrap}.single-game-report{margin-top:14px;padding:19px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text-primary)}.single-game-report>.game-report-heading,.batch-game-inspector-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.single-game-report>.game-report-heading{cursor:pointer;list-style:none}.single-game-report>.game-report-heading::-webkit-details-marker{display:none}.single-game-report>.game-report-heading:after{content:"";width:7px;height:7px;flex:0 0 auto;margin:0 3px 4px auto;border-right:1.5px solid var(--text-muted);border-bottom:1.5px solid var(--text-muted);transform:rotate(45deg);transition:transform .14s ease}.single-game-report[open]>.game-report-heading{padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--border-soft)}.single-game-report[open]>.game-report-heading:after{transform:rotate(225deg)}.game-report-heading h2,.batch-game-inspector h2{margin:0;font-family:var(--font-display);font-size:1.3rem;font-weight:500}.game-report-heading .eyebrow,.batch-game-inspector .eyebrow{margin-bottom:4px}.game-report-meta{display:flex;flex-wrap:wrap;align-items:center;gap:9px;color:var(--text-muted);font-size:.69rem}.game-report-metrics{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.game-report-trends{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}.game-trend-chart{min-width:0;padding:10px;border:1px solid var(--border-soft);border-radius:7px;background:var(--surface-inset)}.game-trend-chart h4{margin:0 0 5px;color:var(--text-secondary);font-size:.73rem;font-weight:600}.game-trend-chart svg{display:block;width:100%;height:auto}.game-trend-chart line{stroke:var(--border-soft);stroke-width:1}.game-trend-chart text{fill:var(--text-muted);font-family:var(--mono);font-size:9px}.game-trend-chart polyline{fill:none;stroke:var(--seat-color, var(--green));stroke-linecap:round;stroke-linejoin:round;stroke-width:2.25}.game-report-legend{display:flex;flex-wrap:wrap;gap:5px 13px;margin-top:5px;color:var(--text-secondary);font-size:.68rem}.game-report-player-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(390px,1fr);gap:9px;overflow-x:auto;margin-top:10px;padding-bottom:8px;overscroll-behavior-x:contain;scroll-snap-type:x proximity}.game-report-player{min-width:0;scroll-snap-align:start;padding:11px;border:1px solid var(--border-soft);border-radius:7px;background:var(--surface-inset)}.game-report-player-heading{display:flex;justify-content:space-between;gap:9px;padding-bottom:7px;border-bottom:1px solid var(--border-soft);color:var(--text-primary);font-size:.78rem}.game-report-player-heading>span{display:flex;align-items:center}.game-report-player-heading>b{color:var(--green-text);font-family:var(--mono)}.game-report-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:9px}.game-report-columns .mini-label{display:block;margin-bottom:5px;font-size:var(--font-size-meta)}.game-report-action-list,.game-report-source-list{display:flex;flex-direction:column;gap:4px}.game-report-action-list>div,.game-report-source-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 7px;color:var(--text-secondary);font-size:.67rem}.game-report-action-list b,.game-report-source-list b{color:var(--text-primary);font-family:var(--mono)}.game-report-action-list small{grid-column:1 / -1;color:var(--text-muted);font-size:var(--font-size-meta)}.game-report-list{display:flex;flex-direction:column;gap:4px;padding:0;margin:0;list-style:none}.game-report-list li{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;color:var(--text-secondary);font-size:.64rem}.game-report-list li small{display:block;margin-top:2px;color:var(--text-muted);font-size:var(--font-size-meta)}.game-report-list li>b{flex:0 0 auto;color:var(--text-primary);font-family:var(--mono);font-size:.6rem}.game-report-resources{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.game-report-resources span{padding:4px 6px;border-radius:4px;background:var(--surface);color:var(--text-muted);font-size:var(--font-size-meta)}.game-report-event-details{margin-top:12px;padding:0 14px 14px}.game-report-event-summary,.batch-game-inspector>.batch-game-run-summary{color:var(--text-secondary);font-size:.7rem}.game-report-event-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 1px;cursor:pointer;list-style:none}.game-report-event-summary::-webkit-details-marker{display:none}.game-report-event-summary:after{content:"";width:7px;height:7px;flex:0 0 auto;margin:0 3px 4px auto;border-right:1.5px solid var(--text-muted);border-bottom:1.5px solid var(--text-muted);transform:rotate(45deg);transition:transform .14s ease}.game-report-event-details[open]>.game-report-event-summary:after{transform:rotate(225deg)}.game-report-event-summary span:first-child{font-weight:600}.game-report-event-summary small{display:block;margin-top:2px;color:var(--text-muted);font-size:var(--font-size-meta);font-weight:400}.game-report-timeline-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:9px;padding:10px;margin-bottom:10px;border:1px solid var(--border-soft);border-radius:6px;background:var(--surface-inset)}.game-report-timeline-filters .field-group,.game-report-timeline-filters select{min-width:145px}.timeline-game-event-toggle{display:flex;min-height:38px;align-items:center;gap:7px;padding:0 2px;color:var(--text-secondary);font-size:.75rem}.timeline-game-event-toggle input{width:16px;height:16px;margin:0;accent-color:var(--green)}.game-report-event-summary:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:4px}.game-report-event-table{white-space:normal}.game-report-event-table th:not(:first-child),.game-report-event-table td:not(:first-child){border-left:1px solid var(--border-soft)}.game-report-event-table th:nth-child(4),.game-report-event-table td:nth-child(4){width:48px;min-width:48px;max-width:48px;padding-right:4px;padding-left:4px;text-align:center}.game-report-event-table td:nth-child(5){min-width:220px;line-height:1.4;text-align:left}.game-report-event-table tbody tr[class*=event-]{border-left:3px solid transparent}.game-report-event-table tbody tr.event-gather{border-left-color:#7e9a6f}.game-report-event-table tbody tr.event-discover{border-left-color:#4f91a3}.game-report-event-table tbody tr.event-sale{border-left-color:#a66a98}.game-report-event-table tbody tr.event-build{border-left-color:#71889e}.game-report-event-table tbody tr.event-cook{border-left-color:#bd783a}.game-report-event-table tbody tr.event-serve{border-left-color:#bd694d}.game-report-event-table tbody tr.event-setup{border-left-color:#80918a}.game-report-event-table tbody tr.event-game_end{border-left-color:#bd8c4f}.timeline-player-name{display:inline-flex;align-items:center;gap:5px;color:var(--seat-color);font-family:var(--font-body);font-weight:600}.timeline-player-name .seat-swatch{margin-right:0}.timeline-game-name{color:var(--text-muted);font-family:var(--font-body)}.batch-game-inspector{margin:-18px 0 35px;padding:18px 21px}.batch-game-inspector-heading>div>p:last-child{max-width:540px;margin:5px 0 0;color:var(--text-muted);font-size:.68rem;line-height:1.5}.batch-game-picker{width:min(360px,48%)}.batch-game-run-summary{margin:11px 0}.batch-game-run-summary b{color:var(--text-primary)}.batch-game-inspector .single-game-report{padding:0;border:0;background:transparent}.player-signin{max-width:650px;margin:6vh auto}.player-signin .button{width:fit-content;margin-top:10px;text-decoration:none}.room-invite-panel,.room-roster{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 19px;margin:-15px 0 30px}.room-invite-panel p:not(.eyebrow){margin:0 0 8px;color:var(--text-secondary);font-size:.78rem}.room-invite-panel code,.room-roster code{display:inline-block;overflow-wrap:anywhere;color:var(--text-primary);font:.8rem var(--mono)}.invite-code-display{display:flex;min-width:0;align-items:center;gap:7px}.invite-code-display code{min-width:0}.invite-copy-button{display:grid;flex:0 0 32px;width:32px;height:32px;place-items:center;padding:0;border:1px solid var(--border-soft);border-radius:6px;background:var(--surface-inset);color:var(--text-secondary)}.invite-copy-button:hover{border-color:var(--green);color:var(--text-primary)}.invite-copy-button svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.room-list-section{margin:0 0 34px}.room-list{display:grid;gap:9px}.room-card{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;padding:15px 18px;color:var(--text-primary);text-align:left}.room-card:hover{border-color:var(--green);background:var(--surface-raised)}.room-card>span:first-child{display:grid;gap:3px}.room-card small,.room-open{color:var(--text-muted);font-size:.72rem}.room-open{white-space:nowrap}.room-roster{justify-content:flex-start;flex-wrap:wrap;margin:-10px 0 22px}.room-roster>div{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.room-player-chip{padding:4px 8px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-secondary);font-size:.72rem}.room-turn-order{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.room-turn-order .mini-label{margin-right:2px}.room-turn-order>span:not(.mini-label){padding:3px 7px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-muted);font-size:.72rem}.room-turn-order>span.is-active{border-color:var(--green);color:var(--green-text)}@media(max-width:700px){.single-game-report{padding:13px}.single-game-report>.game-report-heading,.batch-game-inspector-heading{flex-direction:column}.game-report-trends,.game-report-columns{grid-template-columns:1fr}.game-report-player .game-report-columns:not(.game-report-activity-columns){grid-template-columns:repeat(2,minmax(0,1fr))}.batch-game-picker{width:100%}.batch-game-inspector{padding:15px}.game-report-event-table{min-width:700px}.room-card{align-items:flex-start;flex-wrap:wrap}.room-card>span:first-child{flex-basis:100%}.room-invite-panel,.room-roster{align-items:flex-start;flex-direction:column}}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}
