/* Approved scenario workbench. Existing IDs and lifecycle remain owned by app.js. */
body.ascension-design.compact-layout .page-content{max-width:1440px;padding:40px 48px 0}body.ascension-design.compact-layout main{margin:0}body.ascension-design .hero{align-items:end;padding:0 0 30px;border-bottom:1px solid var(--line);margin-bottom:28px;background:none;min-height:0}body.ascension-design .hero h1{font-size:clamp(36px,4.2vw,62px);line-height:1.02;letter-spacing:-.055em;font-weight:550;margin:18px 0}body.ascension-design .hero p{font-size:14px;line-height:1.8;color:var(--muted)}body.ascension-design .hero-actions{align-items:start;gap:8px}body.ascension-design .section-heading h2{font-size:29px;font-weight:550;letter-spacing:-.04em;line-height:1.2;margin-top:8px}body.ascension-design .section-description{font-size:13px;line-height:1.8;color:var(--muted)}body.ascension-design .workspace{grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start;margin:34px 0 44px}body.ascension-design .catalog-grid{gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}body.ascension-design .measure-card{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:24px;box-shadow:none;position:relative}body.ascension-design .measure-card::before{content:attr(data-measure);display:inline-flex;padding:4px 8px;border:1px solid #D8DFEF;border-radius:4px;color:var(--brand-blue);font-size:11px;letter-spacing:.04em;margin-bottom:20px;background:#EEF1F9}body.ascension-design .measure-card h3{font-size:18px;line-height:1.35;letter-spacing:-.025em;font-weight:600;min-height:48px}body.ascension-design .measure-card.is-selected{border:1px solid var(--brand-blue);background:#F0F3FC;box-shadow:inset 0 3px var(--brand-blue)}body.ascension-design .measure-meta{border:0;margin:16px 0 18px;gap:18px;font-size:12px}body.ascension-design .measure-cost{font-size:28px;font-weight:500;letter-spacing:-.05em;color:var(--ink)}body.ascension-design .measure-cost small{font-size:12px;font-weight:400;letter-spacing:0;margin-left:5px;color:var(--muted)}body.ascension-design .measure-lag{font-size:12px;color:var(--muted)}body.ascension-design .measure-details{font-size:13px;margin:0 0 16px}body.ascension-design :is(.measure-details,.explanation-details)>summary{font-size:13px;min-height:36px;color:var(--brand-blue);display:list-item}body.ascension-design .measure-details p{font-size:12px;color:var(--muted);line-height:1.8}body.ascension-design .effect-chip{background:#E9EEF9;color:#244392;font-size:11px;border:0;border-radius:4px;padding:5px 8px}body.ascension-design .effect-chip.negative{background:#FAEDE5;color:#934727}body.ascension-design .field-label{font-size:12px;margin-bottom:7px;font-weight:500;color:var(--muted)}body.ascension-design .scope-picker{margin:0 0 12px}body.ascension-design .scope-picker select{font-size:13px;padding:10px 12px;width:100%}body.ascension-design .city-scope{background:#EDEDE6;color:var(--muted);font-size:13px;min-height:44px;border:1px solid var(--line);border-radius:6px;padding:10px 12px}body.ascension-design .add-button{font-size:13px;min-height:44px;background:transparent;color:var(--brand-blue);border:1px solid #C4CEEC;border-radius:5px;padding:10px 14px}body.ascension-design .add-button:hover:not(:disabled){background:var(--brand-blue);border-color:var(--brand-blue);color:white}body.ascension-design .add-button.is-added{background:var(--brand-blue);color:white;opacity:1;border-color:var(--brand-blue)}body.ascension-design .add-button:disabled:not(.is-added){background:#EEEEE8;color:#686E73;border-color:var(--line)}body.ascension-design .add-note{font-size:11px;margin-top:8px;color:var(--muted)}body.ascension-design .filters{display:flex;flex-wrap:wrap;gap:6px;margin:22px 0}body.ascension-design .filter{font-size:12px;min-height:40px;padding:9px 13px;border-radius:5px;border:1px solid var(--line);background:transparent;color:var(--muted)}body.ascension-design .filter[aria-pressed=true]{background:var(--brand-blue);border-color:var(--brand-blue);color:white}body.ascension-design .filter:hover:not([aria-pressed=true]){background:#E9EEF9;color:var(--brand-blue)}body.ascension-design .plan-panel{position:sticky;top:24px;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:26px;box-shadow:none}body.ascension-design .plan-heading{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:6px;align-items:end}body.ascension-design .plan-heading h2{font-size:23px;letter-spacing:-.035em;font-weight:550;margin-top:9px}body.ascension-design .count-badge{background:var(--brand-lime);color:var(--ink);border-radius:4px;font-size:14px;padding:6px 9px}body.ascension-design .empty-plan{padding:28px 0;min-height:110px}body.ascension-design .empty-plan p{font-size:14px;color:var(--muted);line-height:1.8}body.ascension-design .selected-list{max-height:none;min-height:0}body.ascension-design .selected-item{gap:10px;padding:17px 0;border-bottom:1px solid var(--line);align-items:start}body.ascension-design .selected-number{font-size:11px;width:22px;min-width:22px;height:22px;background:#E9EEF9;color:var(--brand-blue);border-radius:3px}body.ascension-design .selected-info h3{font-size:13px;line-height:1.5;font-weight:600;margin-bottom:7px}body.ascension-design .selected-info select{font-size:12px;min-height:36px;background:transparent}body.ascension-design .selected-cost{font-size:11px;color:var(--muted);margin-top:5px}body.ascension-design .remove-button{width:30px;height:32px;border:0;border-radius:4px;background:transparent;font-size:21px;color:var(--muted);flex-shrink:0}body.ascension-design .remove-button:hover{color:var(--brand-clay);background:#FAEDE5}body.ascension-design .plan-summary{padding:22px 0;border-top:0;display:grid;gap:12px}body.ascension-design .plan-summary>div{font-size:12px;display:flex;align-items:center;justify-content:space-between}body.ascension-design .plan-summary strong{font-size:24px;font-weight:500;letter-spacing:-.035em}body.ascension-design .plan-summary strong small{font-size:11px;letter-spacing:0}body.ascension-design #simulate-button{font-size:13px;min-height:46px;width:100%;background:var(--brand-blue);color:white}body.ascension-design .plan-hint{font-size:12px;line-height:1.6;margin-top:10px}body.ascension-design .rules{border-top:1px solid var(--line);padding-top:16px;font-size:12px;line-height:1.7}body.ascension-design .rules summary{font-size:12px;color:var(--muted)}body.ascension-design .rules ul{padding-left:16px}body.ascension-design .rules li{margin-top:8px}body.ascension-design .compact-disclosure{background:var(--surface);border:1px solid var(--line);border-radius:8px;margin:14px 0}body.ascension-design .compact-disclosure>summary{padding:20px 24px;min-height:64px;font-size:15px;letter-spacing:-.015em;color:var(--ink)}body.ascension-design .compact-hint{font-size:12px}body.ascension-design .compact-content{padding:24px}body.ascension-design .results-section{margin:44px 0}body.ascension-design .result-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:16px;margin:24px 0}body.ascension-design :is(.score-card,.result-metric){border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:28px;box-shadow:none}body.ascension-design .score-card{background:var(--brand-blue);border-color:var(--brand-blue);color:white}body.ascension-design .score-card .eyebrow{color:#E5EBFF;font-size:10px}body.ascension-design .score-value{font-size:64px;font-weight:500;letter-spacing:-.065em;line-height:1.1;margin:18px 0}body.ascension-design .score-delta{color:var(--brand-lime);font-size:18px}body.ascension-design .score-delta span{display:block;color:#E5EBFF;font-size:12px;margin-top:6px}body.ascension-design .result-metric h3{font-size:13px;color:var(--muted);font-weight:500}body.ascension-design .result-metric strong{font-size:46px;color:var(--ink);font-weight:500;letter-spacing:-.06em;margin:22px 0 18px}body.ascension-design .result-metric p{font-size:12px;line-height:1.8;color:var(--muted)}body.ascension-design :is(.result-detail,.ai-panel){padding:28px;border:1px solid var(--line);border-radius:8px;background:var(--surface);margin-top:16px;box-shadow:none}body.ascension-design :is(.result-detail,.ai-heading) h3{font-size:18px;letter-spacing:-.025em;font-weight:600}body.ascension-design .ai-panel{border-top:3px solid var(--brand-blue)}body.ascension-design .ai-mode{background:#E9EEF9;color:var(--brand-blue);font-size:11px;border-radius:4px;padding:5px 9px}body.ascension-design .ai-mode.offline{background:#ECEDE6;color:var(--muted)}body.ascension-design :is(.ai-summary,.ai-loading,.ai-columns li){font-size:14px;line-height:1.85;color:var(--ink)}body.ascension-design .ai-summary{margin-top:18px}body.ascension-design .ai-columns h4{font-size:13px;color:var(--brand-blue)}body.ascension-design .ai-footer p{font-size:12px;line-height:1.8;color:var(--muted)}body.ascension-design .retry-button{font-size:12px;color:var(--brand-blue);border-color:#C4CEEC;min-height:40px;border-radius:5px;background:transparent}body.ascension-design .contributions{font-size:13px;line-height:1.9}body.ascension-design .synergy-chip{color:#244392;background:#E9EEF9;border-radius:4px;font-size:12px;padding:6px 10px}body.ascension-design .synergy-empty{font-size:13px;color:var(--muted)}body.ascension-design .district-summary{gap:12px;margin:24px 0}body.ascension-design .district-card{padding:20px;border:1px solid var(--line);border-radius:6px;box-shadow:none;background:var(--surface)}body.ascension-design .district-card h3{font-size:16px;font-weight:600}body.ascension-design .district-population{font-size:11px;color:var(--muted)}body.ascension-design .district-value{font-size:34px;letter-spacing:-.04em;font-weight:500;color:var(--ink)}body.ascension-design .district-change{color:var(--brand-blue);font-size:12px}body.ascension-design .district-mini-track{background:#E0E2DB;height:5px;border-radius:0}body.ascension-design .district-mini-track span{background:var(--brand-blue);border-radius:0}body.ascension-design .district-critical{font-size:11px;color:var(--muted)}body.ascension-design .district-critical.has-critical{color:#934727}body.ascension-design .table-panel{border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:none}body.ascension-design .table-toolbar{padding:22px}body.ascension-design .table-toolbar h3{font-size:16px;font-weight:600}body.ascension-design .critical-key{font-size:12px}body.ascension-design .critical-key>span{background:var(--brand-clay)}body.ascension-design .table-scroll{overflow:auto;max-width:100%}body.ascension-design #indicator-table{font-size:13px}body.ascension-design #indicator-table th,body.ascension-design #indicator-table td{padding:14px 20px;border-color:var(--line);font-size:13px}body.ascension-design #indicator-table thead th{background:#EDEFE8;color:var(--muted);font-weight:500}body.ascension-design #indicator-table th:first-child{background:var(--surface);min-width:220px}body.ascension-design #indicator-table tbody th span{color:var(--brand-blue)}body.ascension-design #indicator-table td.critical{background:#FAEDE5;color:#934727}body.ascension-design .cell-delta{color:var(--brand-blue);font-size:11px}body.ascension-design .table-note{font-size:12px;padding:16px 22px;line-height:1.8;color:var(--muted)}body.ascension-design .method-section{background:#E9ECE3;border:0;border-radius:6px;padding:28px;gap:24px}body.ascension-design .method-section h2{font-size:26px;color:var(--ink);font-weight:550;letter-spacing:-.035em}body.ascension-design .method-section p{font-size:13px;line-height:1.8;color:var(--muted)}body.ascension-design .formula{font-size:12px;color:var(--muted);gap:20px}body.ascension-design .formula strong{font-size:32px;font-weight:500;color:var(--brand-blue)}body.ascension-design .method-section .method-note{font-size:12px;border-color:#CCD1C5}body.ascension-design footer{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding:24px 0;margin-top:36px}body.ascension-design .loading-state{padding:35px 0;font-size:15px;color:var(--muted)}body.ascension-design .district-focus{background:#E9EEF9;border-color:#CDD6EB;color:var(--ink);border-radius:6px}body.ascension-design .district-focus p{font-size:13px;color:var(--muted)}body.ascension-design .geography-notice{background:#EEF0E7;border-color:var(--line)}body.ascension-design .geography-notice p{font-size:13px;color:var(--muted)}
@media(max-width:1100px){body.ascension-design.compact-layout .page-content{padding:32px 28px 0}body.ascension-design .workspace{grid-template-columns:minmax(0,1fr) 290px;gap:20px}body.ascension-design .measure-card{padding:20px}body.ascension-design .catalog-grid{gap:12px}body.ascension-design .plan-panel{padding:21px}body.ascension-design .district-summary{grid-template-columns:repeat(3,1fr)}}@media(max-width:850px){body.ascension-design .workspace{grid-template-columns:1fr}body.ascension-design .plan-panel{position:static;order:0}body.ascension-design .hero h1{font-size:48px}body.ascension-design .selected-list:has(.selected-item){display:grid;grid-template-columns:1fr 1fr;gap:0 24px}body.ascension-design .selected-list{max-height:none}body.ascension-design .result-grid{grid-template-columns:1fr 1fr}body.ascension-design .score-card{grid-column:1/-1}body.ascension-design .method-section{grid-template-columns:1fr}body.ascension-design .formula{justify-content:start}}@media(max-width:560px){body.ascension-design.compact-layout .page-content{padding:28px 20px 0}body.ascension-design .hero h1{font-size:42px;line-height:1.07}body.ascension-design .hero p{font-size:13px}body.ascension-design .hero-actions{padding-top:18px;flex-direction:row;align-items:center}body.ascension-design .section-heading h2{font-size:27px}body.ascension-design .workspace{gap:22px;margin-top:24px}body.ascension-design .catalog-grid{grid-template-columns:1fr}body.ascension-design .measure-card h3{min-height:0;font-size:18px}body.ascension-design .measure-card::before{margin-bottom:14px}body.ascension-design .selected-list:has(.selected-item){display:block}body.ascension-design .filters{margin:18px 0;gap:6px}body.ascension-design .filter{font-size:12px;padding:8px 11px}body.ascension-design .compact-disclosure>summary{padding:18px 16px;font-size:14px}body.ascension-design .compact-content{padding:16px}body.ascension-design .compact-hint{display:none}body.ascension-design .result-grid{gap:12px}body.ascension-design :is(.score-card,.result-metric){padding:22px}body.ascension-design .score-value{font-size:56px}body.ascension-design .result-metric strong{font-size:34px}body.ascension-design .result-metric h3{font-size:12px}body.ascension-design :is(.ai-panel,.result-detail){padding:21px}body.ascension-design .ai-heading{gap:12px;flex-wrap:wrap}body.ascension-design .ai-footer{flex-wrap:wrap;gap:12px}body.ascension-design .ai-footer p{max-width:100%}body.ascension-design .district-summary{grid-template-columns:1fr 1fr;gap:10px}body.ascension-design .district-card{padding:16px}body.ascension-design .district-card:last-child{grid-column:1/-1}body.ascension-design .district-value{font-size:31px}body.ascension-design .formula{flex-wrap:wrap;gap:15px}body.ascension-design footer{flex-wrap:wrap;gap:14px}}
@media print{body.ascension-design .brand-header{display:none}body.ascension-design .page-content{padding:0}body.ascension-design :is(.score-card,.result-metric){color:#17232D;background:white;border:1px solid #BBC0C4}body.ascension-design .score-card :is(.eyebrow,.score-delta,.score-delta span){color:#17232D}}
body.ascension-design .measure-card::before{align-self:start;width:max-content;}
