:root{--ink:#172b2b;--muted:#6b7774;--accent:#997442;--green:#22634e;--line:#e3e7e1;--paper:#f7f8f4;--white:#fff;--amber:#97701d}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.5 'Segoe UI',Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}a{color:var(--green)}.sidebar{width:242px;height:100vh;position:fixed;padding:32px 22px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:12px;font-size:23px;letter-spacing:3px;font-weight:700}.brand-icon{font-size:37px;color:var(--accent);line-height:1}.brand-sub{display:block;font-size:10px;letter-spacing:2.6px;line-height:1.4;font-weight:500}.nav-label{margin:48px 12px 13px;font-size:10px;font-weight:600;letter-spacing:1.7px;color:#9aa29b}.nav{display:flex;align-items:center;gap:12px;background:transparent;border:0;width:100%;text-align:left;color:#6f7c76;padding:13px 12px;margin:5px 0;border-radius:7px;font-size:13px}.nav span{font-size:20px;width:20px}.nav.active{color:#1e5744;background:#edf3ec;font-weight:600}.scope-box{margin:38px 12px 0;border-top:1px solid var(--line);padding-top:24px}.eyebrow{font-size:10px;letter-spacing:1.6px;color:var(--accent);font-weight:700}.scope-box strong{display:block;font-size:19px;margin:9px 0}.scope-box p{font-size:12px;color:var(--muted);line-height:1.7}.sidebar-bottom{margin-top:auto;font-size:11px;color:var(--muted);padding:12px}.sidebar-bottom small{display:block;margin-top:8px;font-size:10px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#6c8f79;margin-right:5px}main{margin-left:242px;padding:0 44px;max-width:1850px}header{height:90px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.breadcrumb{font-size:10px;letter-spacing:1.8px;font-weight:600;color:#6d8178}.breadcrumb span{margin:0 15px;color:#c0c8bf}.header-right{display:flex;gap:14px;align-items:center}.pill{display:inline-block;font-size:10px;font-weight:600;padding:5px 9px;border-radius:5px;line-height:1.4}.pill.muted{background:#eaf0e7;color:#65785f}.pill.open,.pill.confirmed{background:#e5f2e9;color:#296b4e}.pill.pending,.pill.needs-review{background:#fff1d4;color:#956d1b}.pill.cancelled,.pill.error{background:#fdeceb;color:#a34639}.pill.closed,.pill.expired,.pill.excluded,.pill.unknown{background:#edf0ec;color:#73816e}.button{border:1px solid var(--line);border-radius:5px;padding:10px 15px;font-size:12px;color:var(--ink);background:#fff;display:inline-flex;gap:7px;align-items:center;text-decoration:none}.button.primary{background:var(--green);border-color:var(--green);color:#fff}.button.quiet{background:transparent}.button.small{font-size:11px;padding:6px 10px}.page-heading{margin:35px 0 25px;display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.page-heading h1{font-family:Georgia,'Times New Roman',serif;font-size:36px;font-weight:400;margin:3px 0;letter-spacing:-.8px}.page-heading p{margin:8px 0;color:var(--muted);font-size:13px}.heading-actions{display:flex;gap:8px;margin-top:13px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.card{background:var(--white);border:1px solid var(--line);border-radius:9px;padding:22px}.metric-label{color:var(--muted);font-size:12px}.metric-value{font-family:Georgia,serif;font-size:34px;line-height:1.2;margin:13px 0 7px}.metric-value small{font:12px 'Segoe UI',sans-serif;color:var(--muted)}.metric-note{font-size:11px;color:var(--muted)}.metric-note.amber{color:var(--amber)}.grid-two{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;margin-top:22px}.card-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.card-title h2{font-size:15px;margin:0;font-weight:600}.card-title span{font-size:11px;color:var(--muted)}.unit-row{padding:14px 0;border-top:1px solid #eef0e9}.unit-row:first-of-type{border-top:0}.unit-heading{display:flex;justify-content:space-between;gap:10px}.unit-heading span{font-size:12px}.unit-heading strong{font-weight:600}.track{height:5px;background:#f0f2ec;margin-top:11px;border-radius:10px;overflow:hidden}.track i{display:block;height:5px;background:#afba9c;border-radius:10px}.unit-row:nth-child(3) .track i{background:#a18357}.unit-row:nth-child(4) .track i{background:#72998c}.card-note{font-size:11px;line-height:1.7;color:var(--muted);margin-top:17px}.readiness{display:flex;gap:15px;align-items:center;margin:26px 0}.circle{border:7px solid #e6ede2;border-top-color:#9ab187;border-radius:50%;height:100px;width:100px;display:grid;place-items:center;flex-shrink:0;font-size:26px;font-family:Georgia,serif}.readiness p{color:var(--muted);font-size:11px;margin:4px 0}.readiness strong{font-size:14px}.mini-row{display:flex;justify-content:space-between;padding:9px 0;border-top:1px solid #eef0e9;font-size:12px}.table-card{margin-top:22px;padding:23px 0 0;overflow:hidden}.table-card .card-title{padding:0 23px}table{border-collapse:collapse;width:100%;font-size:12px}th{font-weight:500;color:#7c877b;font-size:10px;letter-spacing:.7px;text-transform:uppercase;background:#f9faf6;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 18px;text-align:left}td{padding:16px 18px;border-bottom:1px solid #edf0e8;vertical-align:middle}tr:last-child td{border-bottom:0}td strong{font-weight:600}td small{display:block;color:var(--muted);margin-top:3px;font-size:10px}.tender-link{border:0;background:none;padding:0;text-align:left;color:var(--ink);font-size:12px;font-weight:600;max-width:350px}.tender-link:hover{color:var(--green)}.source-text{direction:auto}.empty{padding:36px 20px;text-align:center;color:var(--muted)}.empty h3{color:var(--ink);font-size:16px;font-weight:500;margin:12px 0 7px}.empty-icon{font-size:37px;color:#b0baaa}.empty p{max-width:420px;margin:0 auto 17px;font-size:12px}.banner{border-radius:6px;padding:13px 17px;font-size:12px;line-height:1.6;margin:20px 0;background:#edf2e8;border:1px solid #dce6d5;color:#4c6746}.demo-banner{background:#fff4da;border-color:#ead7a4;color:#896926}.demo-banner button{float:right;background:none;border:0;color:#806227;text-decoration:underline;font-size:11px}.filters{display:flex;gap:10px;margin:20px 0;flex-wrap:wrap}.filters input{flex:1;min-width:190px}.filters input,.filters select{border:1px solid var(--line);border-radius:5px;padding:10px 12px;background:#fff;font-size:12px}.source-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.source-card h3{font-size:17px;font-weight:500;margin:9px 0}.source-card p{font-size:12px;color:var(--muted)}.source-card ul{color:var(--muted);font-size:12px;padding-left:20px;line-height:1.8}.path{font-family:Consolas,monospace;font-size:11px;background:#f2f4ee;padding:10px;border-radius:4px;overflow-wrap:anywhere}.event{padding:17px 0;border-top:1px solid var(--line);display:flex;gap:18px}.event time{font-size:11px;color:var(--muted);min-width:125px}.event h3{font-size:13px;font-weight:600;margin:0 0 5px}.event p{font-size:11px;color:var(--muted);margin:0;overflow-wrap:anywhere}footer{color:#929b8b;font-size:10px;border-top:1px solid var(--line);padding:22px 0;margin-top:30px;line-height:1.6}dialog{border:1px solid var(--line);border-radius:12px;max-width:960px;width:calc(100vw - 36px);padding:0;box-shadow:0 15px 90px #10201e33;color:var(--ink)}dialog::backdrop{background:#15242165}.modal-head{padding:24px 28px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.modal-head h2{margin:0;font-family:Georgia,serif;font-weight:400;font-size:27px}.modal-head p{font-size:12px;color:var(--muted);margin:8px 0 0}.close{font-size:24px;border:0;background:none;color:#7c8677}.modal-body{padding:24px 28px;max-height:68vh;overflow:auto}.modal-actions{padding:15px 28px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label,.field{font-size:11px;color:var(--muted);display:block}.form-grid input,.form-grid select,.field input,.field textarea,.field select{display:block;width:100%;border:1px solid #dfe5d9;background:#fff;padding:9px 10px;border-radius:4px;color:var(--ink);margin-top:5px}.field{margin-bottom:16px}.field textarea{min-height:100px}.full{grid-column:1/-1}.line-editor{padding:16px;border:1px solid var(--line);border-radius:6px;background:#fbfcf8;margin-top:15px}.line-editor .form-grid{grid-template-columns:repeat(4,1fr)}.line-editor .form-grid .full{grid-column:1/-1}.line-editor h3{font-size:13px;margin:0 0 12px;display:flex;justify-content:space-between}.line-editor button{font-size:10px}.line-detail{padding:20px 0;border-top:1px solid var(--line)}.line-detail h3{font-size:14px;margin:0 0 9px}.line-detail p{font-size:12px;color:var(--muted);margin:5px 0;overflow-wrap:anywhere}.line-facts{display:flex;gap:22px;flex-wrap:wrap;margin:12px 0}.line-facts strong{display:block;font-size:18px;font-family:Georgia,serif;font-weight:400}.line-facts small{font-size:10px;color:var(--muted)}.line-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.detail-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:12px;margin-bottom:20px}.detail-meta small{color:var(--muted);display:block}.detail-meta .full{overflow-wrap:anywhere}.hint{font-size:11px;color:var(--muted);margin:12px 0;line-height:1.6}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-30%);border:1px solid #50765e;color:#fff;background:#235340;border-radius:7px;padding:13px 20px;box-shadow:0 5px 20px #0002;z-index:100}.error-text{color:#a14436}.notice-actions{margin-top:15px;display:flex;gap:8px;flex-wrap:wrap}[hidden]{display:none!important}
.track i{width:0}.track i.available{width:100%}
.filter-panel{margin:12px 0;padding:18px}.filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.filter-grid label{font-size:14px;color:var(--muted)}.filter-grid input,.filter-grid select{display:block;width:100%;min-width:0;border:1px solid var(--line);padding:9px;border-radius:5px;background:white;margin-top:5px;font-size:14px}.source-filter-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:18px;padding-top:14px;font-size:13px}.source-filter-row label{display:flex;align-items:center;gap:6px}.provenance p{margin:6px 0;overflow-wrap:anywhere}.coverage-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.coverage-summary strong{font-size:24px;display:block}.coverage-summary small{font-size:12px;color:var(--muted)}.snapshot-banner{font-size:13px}.filter-panel summary{cursor:pointer;font-size:14px;font-weight:600;margin-bottom:14px}.filter-panel:not([open]) summary{margin-bottom:0}body{font-size:16px}.nav{font-size:14px}.button{font-size:14px}td,.tender-link{font-size:14px}.metric-label{font-size:14px}.metric-note,.card-note,.hint,.pill{font-size:12px}.page-heading p{font-size:14px}.detail-meta,.line-detail p{font-size:14px}.sidebar-bottom{font-size:12px}
@media(max-width:740px){.filter-grid{grid-template-columns:1fr 1fr}.coverage-summary{grid-template-columns:1fr 1fr}.nav{font-size:12px}.header-right .pill{font-size:11px}.page-heading p{font-size:14px}.metric-label{font-size:13px}.metric-note{font-size:12px}.filters input,.filters select{font-size:16px}.source-filter-row{font-size:13px}.button{font-size:14px}.line-facts small{font-size:12px}.source-card p,.source-card ul{font-size:14px}}
@media(max-width:740px){.table-wrap table{min-width:0}.table-wrap thead{display:none}.table-wrap tbody tr{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.table-wrap tbody td{display:block;border-bottom:0;padding:10px 16px}.table-wrap tbody td:first-child{grid-column:1/-1;padding-top:18px}.table-wrap tbody td:last-child{padding-bottom:18px}.table-wrap td[data-label]::before{content:attr(data-label);display:block;font-size:9px;color:var(--muted);margin-bottom:5px;letter-spacing:.6px;text-transform:uppercase}}
@media(min-width:1450px){main{padding:0 64px}.kpis{gap:22px}.card{padding:26px}}
@media(max-width:1100px){.sidebar{width:200px;padding:28px 15px}main{margin-left:200px;padding:0 24px}.kpis{grid-template-columns:1fr 1fr}.grid-two{grid-template-columns:1fr 1fr}.metric-value{font-size:30px}.page-heading h1{font-size:30px}.readiness{gap:10px}.circle{width:80px;height:80px}td,th{padding-left:12px;padding-right:12px}.table-wrap{overflow-x:auto}}
@media(max-width:740px){.sidebar{position:static;width:auto;height:auto;padding:17px 18px;border-right:0;border-bottom:1px solid var(--line)}.brand{font-size:17px}.brand-icon{font-size:29px}.brand-sub{font-size:8px}.sidebar nav{display:flex;margin-top:16px;overflow-x:auto}.nav{font-size:10px;white-space:nowrap;width:auto;padding:8px;gap:4px;margin:0}.nav span{display:none}.nav-label,.scope-box,.sidebar-bottom{display:none}main{margin-left:0;padding:0 18px}header{height:65px;gap:10px}.breadcrumb{font-size:8px}.breadcrumb span{margin:0 5px}.header-right{gap:7px}.header-right .pill{max-width:138px;font-size:8px}.header-right .button{font-size:10px;padding:7px}.page-heading{margin:24px 0 18px;display:block}.page-heading h1{font-size:29px}.page-heading p{font-size:12px}.heading-actions{margin-top:15px}.kpis{gap:10px}.card{padding:17px}.metric-value{font-size:29px}.metric-label{font-size:11px}.metric-note{font-size:10px}.grid-two,.source-grid{grid-template-columns:1fr;gap:12px;margin-top:14px}.table-card{padding:20px 0 0}.table-card .card-title{padding:0 16px}table{min-width:680px}.form-grid,.line-editor .form-grid{grid-template-columns:1fr 1fr}.modal-head,.modal-body{padding:20px}.modal-head h2{font-size:23px}.modal-actions{padding:14px 20px}.event{display:block}.event time{display:block;margin-bottom:7px}.demo-banner button{float:none;display:block;padding:5px 0}.detail-meta{grid-template-columns:1fr}#toast{left:18px;right:18px;transform:none}.button{padding:9px 12px}.full{grid-column:1/-1}}
.quantity-controls{padding-top:14px;margin-top:14px;border-top:1px solid var(--line)}.quantity-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.quantity-summary strong{font-size:22px;display:block;margin:9px 0;overflow-wrap:anywhere}.quantity-summary small,.quantity-summary span{font-size:12px;color:var(--muted)}.annual-table{min-width:1000px}.annual-table small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.annual-table tfoot{font-weight:700;background:#eef3eb}.annual-table td{vertical-align:top}
.annual-years{display:flex;align-items:end;gap:16px;flex-wrap:wrap}.annual-years label{font-size:13px;color:var(--muted)}.annual-years input{display:block;width:120px;border:1px solid var(--line);padding:9px;margin-top:5px;border-radius:5px}
@media(max-width:900px){.quantity-summary{grid-template-columns:1fr 1fr}.quantity-summary strong{font-size:19px}.table-wrap .annual-table{min-width:1000px}.table-wrap .annual-table thead{display:table-header-group}.table-wrap .annual-table tbody tr{display:table-row}.table-wrap .annual-table tbody td{display:table-cell;border-bottom:1px solid var(--line);padding:12px}.table-wrap .annual-table tbody td:first-child{padding-top:12px}}

/* Approximate scenario figures retain their ranges on phones. */
.estimated-summary{grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:12px}.quantity-summary strong{font-size:21px;overflow-wrap:normal;word-break:normal}.estimate-range{display:block;font-size:11px!important;line-height:1.6;color:#6c746f}.estimate-mode{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0}.estimate-mode label{display:flex;flex-direction:column;gap:6px;max-width:370px;flex:1}.estimate-assumptions{margin:18px 0;padding:20px;line-height:1.7}.estimate-assumptions summary{cursor:pointer;font-weight:650}.estimate-assumptions p{color:#5d6a62}.estimate-assumptions .filter-grid{margin:18px 0}.estimate-assumptions small{display:block;color:#79817b}.estimate-banner{border-left:4px solid #b58b47}.estimate-coverage{font-size:12px;color:#707970;line-height:1.7}.approximate-table{min-width:1150px}.approximate-table strong{font-size:15px;white-space:nowrap}.estimate-detail{background:#fbf7ef;padding:16px;border-radius:12px;margin-bottom:22px}.estimate-detail .quantity-summary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}@media(max-width:600px){.estimate-mode{align-items:flex-start;flex-direction:column}.estimate-mode label{width:100%}.quantity-summary strong{font-size:19px}.estimated-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
