/* The table's presentation layer: quiet surfaces, vivid card art, one action accent. */
.na-page{
 --na-bg:#0c1216;--na-panel:#141e24;--na-panel-2:#1c2930;--na-line:#34454b;
 --na-text:#f0f4ee;--na-muted:#b4c3c5;--na-pink:#d9ed96;--na-cyan:#abd9d8;
}
.na-page.at-table::before{background:linear-gradient(180deg,#081119bc,#081119e8),url('./art/council-chamber.webp') center/cover no-repeat}
.na-page.at-table .na-main{max-width:1520px;margin-inline:auto;padding-inline:24px}
.na-page.at-table .na-toolbar{background:#0c151bf5;border-bottom:1px solid #3e535b;padding:10px 0;gap:16px}
.na-page.at-table .na-toolbar #status-line{font-size:12px}
.na-status-metrics{gap:6px 14px;align-items:center;font-variant-numeric:tabular-nums}
.na-mini-rounds{gap:4px;margin-bottom:6px}
.na-mini-rounds li{min-width:19px;padding:3px 5px;background:#233039;color:#b5c7cb;text-align:center;border-radius:2px}
.na-mini-rounds li[aria-current="step"]{background:var(--na-pink);color:#15201b;font-weight:750}
.na-page .na-inspect-stat{min-height:34px;border-color:#3a5056;background:#18262c;color:#e3eded;border-radius:4px;font-size:12px}
.na-page .na-inspect-stat::after{color:#94b1b9}
.na-page.at-table .na-main .na-objective-card{border:1px solid #688773;border-left:3px solid var(--na-pink);background:#1a2929;border-radius:4px;padding:8px 10px}
.na-objective-copy strong{font-size:14px}
.na-objective-copy>span{font-size:12px;color:#cad7cd}
.na-table-settings-body,.na-toolbar .na-voice-panel{background:#14242b;border-color:#4e666d;border-radius:6px}

/* Controls stay quiet until selected, focused, or ready to submit. */
.na-page .na-main button{border-radius:4px;transition:background-color .15s,border-color .15s,box-shadow .15s,transform .1s}
.na-page .na-main button.secondary:where(:not(.na-art-card):not(.na-map-district-card):not(.na-inspect-stat):not(.na-objective-card)){background:#203038;border-color:#566c73;color:#e3edef}
.na-page .na-main button.secondary:where(:not(.na-art-card):not(.na-map-district-card):not(.na-inspect-stat):not(.na-objective-card)):hover:not(:disabled){background:#2c424a;border-color:#9ebfc3}
.na-page .na-main button:active:not(:disabled){transform:translateY(1px)}
.na-page .na-main button:disabled{background:#1b282e!important;border-color:#3c4e53!important;color:#95a7a9!important}
.na-page :is(button,summary,a,input,select,[tabindex]):focus-visible{outline:2px solid #e3f3b0;outline-offset:3px}
.na-page .na-main :is(input,select){background:#101d23;border:1px solid #597079;border-radius:4px;color:#eef5ee}

.na-executives{margin-bottom:14px;border-bottom:1px solid #354951}
.na-executives>summary{padding:10px 2px;color:#c5d5d7;font-size:13px}
.na-relationship-chip{background:#14232ad9;border-color:#3f555c;border-radius:4px;padding:4px 8px}
.na-relationship-overview-label{color:#a8bdc1}
.na-executive-rail{background:transparent;padding-top:6px}
.na-corp-tile{background:#17272e;border-bottom-color:#415960;border-radius:4px}
.na-corp-tile.own,.na-corp-tile.current{background:#223332}
.na-corp-detail{background:#15252c;border-color:#53676e;border-radius:4px}

/* Decision first; the prize and existing offer remain alongside it on wide tables. */
.na-page .na-negotiation{min-width:0}
.na-page .na-decision{padding:22px 24px;border:1px solid #485e60;border-top:2px solid var(--na-pink);border-radius:6px;background:linear-gradient(125deg,#1b2b30f5,#142126fa);box-shadow:0 10px 30px #0003}
.na-page .na-decision>.na-kicker{display:block;margin:0 0 9px;font:650 10px/1.3 var(--na-mono);letter-spacing:1.2px;color:var(--na-pink)}
.na-page .na-decision h2{font-size:clamp(23px,2vw,29px);font-weight:650;line-height:1.2;letter-spacing:-.6px;margin-bottom:10px;text-wrap:balance}
.na-page .na-decision p{color:#c1d0d2;line-height:1.55}
.na-page .na-decision>.na-resolution-label{font-family:var(--na-font);letter-spacing:0;color:#a8c4c8}
.na-page .na-deal{padding:18px 20px;background:#101d23ed;border:1px solid #354b53;border-radius:6px}
.na-page .na-deal-slot>h4,.na-page .na-prize-label{color:#c7d5d7;font-size:11px;letter-spacing:.5px}
.na-page .na-deal-row>.na-deal-prize{border-color:#3a5158}
.na-page .na-deal-slot>.na-muted{background:#16232a;border-color:#3d5159;color:#b1c3c9;min-height:80px}
.na-page .na-deal-result{border-color:#3a5057}
.na-page .na-trade{margin-top:12px;background:#132229e8;border:1px solid #40585e;border-radius:5px}
.na-page .na-trade>summary{padding:14px 16px;min-height:48px;color:#e2eeea}
.na-page .na-trade>summary>span{color:#adbec2}
.na-page .na-activity{padding:18px 4px 6px}
.na-page .na-activity-head h2{font-size:11px;color:#a8c1c5;letter-spacing:1px}
.na-page .na-activity-row{font-size:13px;line-height:1.5}
.na-page .na-activity-list{gap:10px}

@media(min-width:1120px){
 .na-page:not(.resolving-city):not(.choosing-district):not(.choosing-asset) .na-negotiation:has(>.na-deal:not([hidden])):not(:has(>.na-decision[data-kind="waiting"])){display:grid;grid-template-columns:minmax(0,1fr) 310px;grid-template-rows:auto minmax(0,1fr) auto;gap:14px 20px;align-items:start}
 .na-page:not(.resolving-city):not(.choosing-district):not(.choosing-asset) .na-negotiation:has(>.na-deal:not([hidden]))>.na-decision{grid-column:1;grid-row:1}
 .na-page:not(.resolving-city):not(.choosing-district):not(.choosing-asset) .na-negotiation:has(>.na-deal:not([hidden]))>.na-deal{grid-column:2;grid-row:1 / 3}
 .na-page:not(.resolving-city):not(.choosing-district):not(.choosing-asset) .na-negotiation:has(>.na-deal:not([hidden]))>.na-trade{grid-column:1;grid-row:2;margin:0}
 .na-page:not(.resolving-city):not(.choosing-district):not(.choosing-asset) .na-negotiation:has(>.na-deal:not([hidden]))>.na-activity{grid-column:1/-1}
 .na-page:not(.resolving-city):not(.choosing-district) .na-deal-row{grid-template-columns:minmax(0,1fr);gap:14px}
 .na-page:not(.resolving-city):not(.choosing-district) .na-deal{padding:16px}
 .na-page:not(.resolving-city):not(.choosing-district) .na-negotiation:has(>.na-decision[data-kind="waiting"]){display:block}
 .na-page:not(.resolving-city):not(.choosing-district) .na-negotiation:has(>.na-decision[data-kind="waiting"]) .na-deal{margin-top:12px}
 .na-page:not(.resolving-city):not(.choosing-district) .na-negotiation:has(>.na-decision[data-kind="waiting"]) .na-deal-row{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* The support chooser already contains both complete offers and their tallies. */
.na-negotiation:has(>.na-decision[data-kind="support"]) .na-deal :is(.na-deal-main,.na-deal-counter){display:none}

/* Full card text over its own scene; type and selection are separate signals. */
.na-page .na-main .na-art-card{border-radius:5px;border-color:#637c82;overflow:hidden}
.na-page .na-art-card[data-card-type]{--card-scrim-start:rgb(var(--card-tint) / .83);--card-scrim-end:rgb(var(--card-tint) / .58)}
.na-page .na-card .na-card-band{min-height:28px;font-size:11px;letter-spacing:.6px;padding:6px 12px}
.na-page .na-card h4{font-size:18px;line-height:1.25;font-weight:650}
.na-page .na-main .na-art-card:is(.selected,.selected-offer,.is-selected,[aria-pressed="true"]){border-color:#e1f2a5;box-shadow:0 0 0 2px #e1f2a5}
.na-page .na-main .na-art-card:is([role="button"],button):hover:not(:disabled){border-color:#d0e1dd;box-shadow:0 3px 12px #0006}
.na-page .na-main .na-art-card:is([role="button"],button):is(.selected,[aria-pressed="true"]):hover{box-shadow:0 0 0 2px #e1f2a5}
.na-page .na-offer-footer{border:0;border-top:1px solid #526a6d;border-radius:0 0 4px 4px;box-shadow:0 -8px 18px #0b161b80;background:#15272e;padding:12px;margin:0}
.na-page .na-support-offer{padding:16px;gap:9px}
.na-page .na-support-offer-top{font-size:12px}
.na-page .na-support-offer-top>strong{padding:3px 7px;border-radius:3px;background:#08141abf;color:#e3f1bd}
.na-page .na-support-offer-effect{font-size:14px}
.na-page .na-support-guidance{color:#d1dfcf}
.na-page .na-support-actions{padding-top:10px;border-top:1px solid #4a6268}
.na-page .na-asset-illustrated{border-radius:5px}
.na-page .na-asset-illustrated::after{background:linear-gradient(100deg,#071016ed,#07101695)}

/* Resolution keeps its controls steady while the overview fits ten districts. */
.na-page .na-resolution-actions{background:#101f27;border-color:#4d6c72;border-radius:4px;min-height:56px}
.na-page .na-district-layout{gap:14px 20px}
.na-page .na-district-controls>.na-button-row{gap:8px}
.na-page .na-district-controls .na-target-button{background:#233940;color:#e9f0e8;border:1px solid #638185;border-radius:4px;font-size:14px;line-height:1.45;padding:12px 14px}
.na-page .na-district-controls .na-target-button:hover:not(:disabled){background:#344e50;border-color:#c4d99d}
.na-page.at-table .na-city-drawer{background:#101d23ed;border:1px solid #3d545a;border-radius:6px;margin-top:12px}
.na-page .na-city-drawer>summary{min-height:54px;border-color:#344e57}
.na-page .na-city-drawer>summary>strong{font-size:20px}
.na-page .na-city .na-map-key{border-color:#49636c;border-radius:4px;margin:6px 0 10px}
.na-page .na-city .na-map-key>summary{background:#1b3039;min-height:44px;padding:9px 12px;font-size:13px}
.na-page .na-map-caption{font-size:12px;color:#b9ccd0}
.na-page .na-city .na-map-district-card{border-radius:4px}
.na-page .na-tracks{border-color:#3a5058}
.na-page .na-supply-row{font-size:13px}
.na-page .na-tracks h3{font-size:14px}
.na-page.at-table .na-archives>details{background:#101d23db;border-color:#3a5058;border-radius:4px;padding-inline:16px}
@container(min-width:600px) and (max-width:900px){
 .na-city:not(.is-expanded) .na-map-district-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .na-page .na-city .na-map-district-card{padding:10px;gap:5px 6px}
 .na-map-district-heading strong{font-size:16px}
 .na-map-district-output>span{font-size:17px}
 .na-map-district-tokens .na-icon{width:17px;height:17px}
 .na-map-district-exit{font-size:11px}
}
.na-page .na-hand-tray{width:min(1472px,calc(100% - 48px));border:1px solid #51696c;border-top:2px solid #b1ce95;border-radius:6px 6px 0 0;box-shadow:0 -6px 28px #0007}
.na-page .na-hand-tray>summary{background:#15262dec;font-size:13px;min-height:44px;padding:12px 100px 12px 16px}
.na-page .na-hand-tray>summary::after{font-size:10px;top:16px;color:#c4d6c1}
.na-page .na-hand-tray .na-card{border-radius:4px}
.na-table-inspection,.na-asset-preview{border-radius:6px;border-color:#759ba3;box-shadow:0 12px 36px #0008}

@media(max-width:700px){
 .na-page.at-table .na-main{padding-inline:12px}
 .na-page.at-table .na-toolbar{gap:6px 10px;padding:6px 0}
 .na-page .na-status-metrics{gap:5px;font-size:11px}
 .na-page .na-status-metrics .na-inspect-stat{font-size:11px;min-height:44px}
 .na-page .na-mini-rounds{gap:2px;margin:0}
 .na-page .na-mini-rounds li{min-width:0;padding:3px;font-size:10px}
 .na-page.at-table .na-main .na-objective-card{padding:5px;width:140px;max-width:140px}
 .na-page .na-objective-copy strong{font-size:12px}
 .na-page .na-objective-copy>span{font-size:10px}
 .na-page .na-executives>summary{gap:6px;padding:8px 0;font-size:12px}
 .na-page .na-relationship-overview{flex-wrap:nowrap;overflow:auto;overscroll-behavior-x:contain;max-width:100%;gap:6px;padding-bottom:3px;scrollbar-width:thin}
 .na-page .na-relationship-overview-label{flex-basis:auto;flex-shrink:0;font-size:11px}
 .na-page .na-relationship-chip{flex-shrink:0;font-size:11px;padding:4px 6px}
 .na-page .na-executives{margin-bottom:10px}
 .na-page .na-decision{padding:16px 14px}
 .na-page .na-decision h2{font-size:24px;line-height:1.2;text-wrap:pretty}
 .na-page .na-decision>.na-kicker{font-size:10px;margin-bottom:7px}
 .na-page .na-deal{padding:16px 14px;margin-top:12px}
 .na-page .na-resolution-actions{gap:6px;padding:8px;min-height:56px}
 .na-page .na-resolution-actions .na-resolution-progress{font-size:13px}
 .na-page .na-resolution-buttons{gap:6px}
 .na-page .na-resolution-buttons button{min-width:0;font-size:13px;padding:9px 10px}
 .na-page .na-map-controls{align-items:center;flex-wrap:wrap;padding:2px 0 8px;gap:6px}
 .na-page .na-map-caption{flex-basis:100%;font-size:11px}
 .na-map-production{width:100%;flex-wrap:nowrap;justify-content:space-between}
 .na-page .na-map-production>.na-inspect-stat{font-size:12px}
 .na-page .na-map-expand{font-size:12px;padding:8px 10px}
 .na-page .na-city .na-map-district-card{padding:9px 8px;gap:4px 6px}
 .na-page .na-city .na-map-district-heading strong{font-size:15px}
 .na-page .na-city .na-map-district-tokens .na-icon{width:16px;height:16px}
 .na-page .na-trade>summary{font-size:14px}
 .na-page .na-trade>summary>span{display:block;margin:4px 0 0;font-size:12px}
 .na-page .na-hand-tray{width:calc(100% - 16px)}
 .na-page .na-hand-tray>summary{font-size:12px;min-height:44px;padding-left:12px}
 .na-page .na-activity{padding-inline:2px}
 .na-page .na-main :is(input,select){font-size:16px}
}
@media(prefers-reduced-motion:reduce){.na-page .na-main button{transition:none}.na-page .na-main button:active:not(:disabled){transform:none}}
