:root{color-scheme:light;--ink:#101725;--blue:#405b83;--muted:#7b8da9;--line:#e1eaf6;--orange:#de4315;--bg:#f4f8fd;--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);font-family:var(--font);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:var(--blue);text-underline-offset:3px}a:hover{color:var(--orange)}button,select{font:inherit}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #bd4a20;outline-offset:5px;border-radius:4px}.page{max-width:1536px;margin:auto;padding:0 30px}.skip-link{position:absolute;top:-100px;left:24px;z-index:5;background:#fff;padding:14px}.skip-link:focus{top:12px}.hero{height:236px;position:relative;margin:0 -30px;overflow:hidden}.hero-scene{position:absolute;inset:0;background-image:url('/mission80/assets/mission-reference.png');background-repeat:no-repeat;background-position:right top;background-size:1536px 1024px;mask-image:linear-gradient(90deg,transparent 42%,transparent 54%,#000 79%);opacity:.93}.hero-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--bg),transparent 22%)}.hero-content{position:relative;padding:33px 49px 20px}.eyebrow{text-transform:uppercase;color:#456088;font-size:11px;font-weight:650;letter-spacing:2.1px;display:flex;align-items:center;gap:15px}.slash{color:#9aaac1}h1{font-size:76px;line-height:1.04;font-weight:770;letter-spacing:-4px;margin:24px 0 10px}.subtitle{font-size:21px;line-height:1.45;max-width:760px;letter-spacing:-.45px;margin:0;position:relative}.subtitle strong{font-weight:550}.version-tag{position:absolute;top:33px;right:48px;padding:7px 10px;border:1px solid #ffffffa8;border-radius:20px;background:#ffffff8a;color:#48617f;font-size:10px;backdrop-filter:blur(8px);display:flex;gap:7px;align-items:center}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 3px 15px;padding:0 3px}.year-control{display:flex;align-items:center;gap:13px}.year-control label{font-size:11px;color:#637897;font-weight:550}.select-wrap{position:relative;display:inline-flex;align-items:center}.select-wrap select{appearance:none;-webkit-appearance:none;border:1px solid #d9e4f1;border-radius:7px;background:#ffffffd9;color:#344f77;padding:7px 33px 7px 12px;font-size:13px;font-weight:650;cursor:pointer;min-width:88px}.select-wrap svg{pointer-events:none;position:absolute;right:10px;width:13px;height:13px;fill:none;stroke:#69809e;stroke-width:1.5}.coverage-pill{font-size:10px;color:#5f7492;line-height:1.4}.coverage-pill:before{content:"";display:inline-block;background:#849c85;width:5px;height:5px;border-radius:50%;vertical-align:2px;margin-right:6px}.coverage-pill.partial:before{background:#ce9c62}.download-link{font-size:11px;display:flex;gap:7px;align-items:center;text-decoration:none;color:#5f7494}.download-link svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.3}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.metric{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:12px;padding:20px 29px 18px;position:relative;min-height:213px;box-shadow:0 4px 20px #5676a004}.metric-primary{background:linear-gradient(115deg,#fff2e9,#ffede3);border-color:#ffede2}.metric-top{display:flex;align-items:center;justify-content:space-between;height:24px}.metric-top h2{text-transform:uppercase;color:#3d557d;font-size:11px;font-weight:650;letter-spacing:1.5px;margin:0;padding-right:36px}.metric-primary h2{color:#b63412}.metric-icon{color:#f57445;width:54px;height:54px;position:absolute;right:30px;top:62px}.icon-disc{position:absolute;right:23px;top:22px;width:43px;height:43px;display:grid;place-items:center;border-radius:50%}.icon-disc svg{width:23px;height:23px}.icon-blue{color:#3f5a82;background:#f1f7ff}.icon-orange{color:#ef6a35;background:#fff3eb}.metric-value{font-size:70px;line-height:1.04;letter-spacing:-3px;font-weight:740;margin:12px 0 1px;font-variant-numeric:tabular-nums}.metric-primary .metric-value{color:#cc350f;font-size:83px;margin-top:6px;font-weight:750;letter-spacing:-4px}.metric-unit{font-size:20px;color:#3e587e;margin:0;line-height:1.4;letter-spacing:-.35px}.primary-unit{font-size:25px;color:#bd3b16;font-weight:650;letter-spacing:-.7px}.metric-description{font-size:12px;color:#617796;line-height:1.55;margin:4px 0 0}.metric-description.small{color:#8193af;font-size:11px}.metric-note{font-size:9px;color:#7b8ba3;display:block;margin-top:12px;line-height:1.6}.metric-primary .metric-note{color:#a16b53}.record-note{display:flex;align-items:center;gap:9px;color:#7386a2;font-size:10px;line-height:1.65;margin:13px 5px 16px}.record-note p{margin:0;flex:1}.status-dot{width:5px;height:5px;flex:none;border-radius:50%;background:#be966f}.record-note a{color:#6a7e9b;text-decoration:none;white-space:nowrap;font-size:10px}.record-note a span{margin-left:4px}.load-error{padding:18px 20px;border:1px solid #ead9c9;background:#fff6ec;border-radius:9px;margin-bottom:18px;color:#815436;font-size:12px;line-height:1.6}.load-error p{margin:6px 0 10px}.load-error button{border:1px solid #d8ba9e;background:#fff;padding:7px 12px;border-radius:5px;color:#815436;cursor:pointer}.charts{display:grid;grid-template-columns:1.06fr 1fr;gap:16px}.panel{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 3px 18px #5b7dab03}.panel-header{padding:18px 24px 0}.panel h2{font-size:20px;line-height:1.35;letter-spacing:-.65px;margin:0;font-weight:710}.panel-header p{font-size:12px;color:#587093;margin:4px 0 0;line-height:1.55}.chart-container{position:relative;padding:7px 13px 0 10px;min-height:215px}.chart-container svg{width:100%;height:auto;display:block;overflow:visible}.chart-loading{height:205px;display:grid;place-items:center;font-size:12px;color:#8d9db4}.chart-small-note{margin:0 24px 14px;color:#8a9ab0;font-size:9px;line-height:1.6}.chart-grid{stroke:#e3ebf6;stroke-width:1;stroke-dasharray:3 3}.chart-axis{stroke:#95a9c6;stroke-width:1}.chart-label{font-family:var(--font);fill:#6880a3;font-size:11px}.chart-value{font-family:var(--font);fill:#263b58;font-size:11px;font-weight:600}.chart-point{cursor:default;outline:none}.chart-point rect,.chart-point circle{transition:filter .15s,opacity .15s}.chart-point:hover rect,.chart-point:focus rect,.chart-point:hover circle,.chart-point:focus circle{filter:brightness(.96);opacity:1}.chart-point:focus-visible{outline:none}.chart-point:focus-visible .focus-ring{stroke:#b9431d;stroke-width:2;fill:transparent}.focus-ring{stroke:transparent;fill:transparent}.chart-missing{fill:#becadd;font-size:11px}.history-panel{grid-column:1/-1}.history-panel .panel-header{display:flex;align-items:center;justify-content:space-between;gap:15px}.heading-muted{font-weight:550}.quiet-tag{color:#7b8ba2;border:1px solid #e8edf5;background:#fafcff;font-size:10px;padding:6px 9px;border-radius:5px;white-space:nowrap}.history-chart{min-height:188px;padding-top:4px}.history-chart .chart-loading{height:175px}.history-point{cursor:pointer}.chart-footnote{display:flex;justify-content:space-between;gap:15px;margin:0 26px 16px;font-size:9px;color:#8494ac;line-height:1.5}.chart-footnote>span:first-child{display:flex;align-items:center;gap:6px}.legend-mark{height:7px;width:7px;display:inline-block;border-radius:1px;background:#ff9065}.legend-partial{margin-left:10px;border:1px solid #e9b397;background:repeating-linear-gradient(-45deg,#ffe7da,#ffe7da 2px,#e9b397 2px,#e9b397 3px)}.chart-tooltip{position:fixed;z-index:20;max-width:245px;pointer-events:none;color:#40516a;background:#fff;border:1px solid #dfe7f2;box-shadow:0 5px 22px #3c557321;padding:10px 13px;border-radius:7px;font-size:11px;line-height:1.7;white-space:pre-line}.record-summary{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:25px 9px 22px}.section-kicker{display:block;text-transform:uppercase;font-size:9px;letter-spacing:1.5px;color:#6f84a3;font-weight:650}.record-summary p{font-size:11px;color:#7b8ca5;line-height:1.8;margin:6px 0 0;max-width:610px}.record-summary>a{display:flex;align-items:center;gap:8px;font-size:12px;color:#5d7392;text-decoration:none;white-space:nowrap;font-weight:600}.pin-icon{font-size:20px;color:#a7b6ca}.station-id{font-size:10px;color:#8393aa;font-weight:450}.disclosure{border:1px solid var(--line);border-radius:9px;background:#ffffffb5;margin-bottom:10px;scroll-margin-top:20px}.disclosure summary{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer;color:#48617f;font-size:11px;font-weight:600}.disclosure summary::-webkit-details-marker{display:none}.summary-note{font-size:10px;color:#8a99ae;font-weight:400;margin-left:15px}.chevron{font-size:18px;color:#8a9ab1;font-weight:300;line-height:1}.disclosure[open] .chevron{transform:rotate(45deg)}.disclosure-body{border-top:1px solid var(--line);padding:22px 24px;font-size:11px;color:#61738e;line-height:1.85}.disclosure-body p{margin:13px 0 0}.source-lead{display:flex;justify-content:space-between;align-items:center;gap:30px}.source-lead h3{font-size:19px;color:#3c5575;margin:6px 0 0;letter-spacing:-.4px}.source-lead h3 .station-id{margin-left:8px;font-size:11px}.source-lead p{max-width:820px;margin:4px 0 0}.text-link{font-size:11px;text-decoration:none;font-weight:600;white-space:nowrap}.source-facts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin:21px 0;padding:15px 0;border-top:1px solid #edf1f7;border-bottom:1px solid #edf1f7}.source-facts span{display:block;font-size:10px;color:#8a9ab0}.source-facts strong{font-weight:550;color:#526b8a;font-size:11px}.source-links{display:flex;gap:24px;margin-top:18px}.source-links a{font-size:10px}.methodology-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 40px}.methodology-grid h3{font-size:12px;font-weight:650;margin:0 0 5px;color:#4b6280}.methodology-grid p{font-size:11px;margin:0}.methodology-status{grid-column:1/-1;border-top:1px solid var(--line);padding-top:16px;color:#8c765d}.updated{text-align:right;font-size:9px;line-height:1.6;color:#98a5b8;margin:13px 3px 0}.noscript{padding:15px;color:#6e819c;font-size:12px}footer{display:flex;align-items:center;gap:20px;padding:25px 9px 28px;color:#8797ae;font-size:10px}footer .wordmark{font-size:17px;color:#465d7e;font-weight:750;letter-spacing:-.6px;text-decoration:none}footer .wordmark span{color:#d75b29}footer p{margin:0}footer>a:last-child{margin-left:auto;text-decoration:none;color:#7388a4;font-size:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
@media(min-width:1600px){.page{padding:0 42px}.hero{margin:0 -42px}.hero-content{padding-left:62px}}
@media(max-width:1100px){.page{padding:0 22px}.hero{margin:0 -22px;height:231px}.hero-content{padding:30px 33px}.version-tag{right:32px;top:29px}h1{font-size:69px}.subtitle{font-size:19px}.metric{padding:20px;min-height:210px}.metric-top h2{font-size:10px;letter-spacing:1.1px}.metric-value{font-size:65px}.metric-primary .metric-value{font-size:78px}.metric-unit{font-size:18px}.primary-unit{font-size:21px}.metric-description{font-size:11px}.metric-note{font-size:9px}.metric-icon{right:22px;top:65px;width:45px;height:45px}.icon-disc{right:18px;width:37px;height:37px}.panel h2{font-size:17px}.panel-header{padding-left:20px;padding-right:20px}.panel-header p{font-size:11px}.chart-small-note{margin-left:20px;margin-right:20px}.chart-container{min-height:190px}.chart-loading{height:180px}.history-chart{min-height:160px}.summary-note{font-size:9px}.record-summary p{max-width:500px}}
@media(max-width:760px){.page{padding:0 16px}.hero{margin:0 -16px;height:243px}.hero-content{padding:28px 24px}.hero-scene{opacity:.55;mask-image:linear-gradient(90deg,transparent 36%,transparent 44%,#000 100%)}.hero-scene:after{background:linear-gradient(0deg,var(--bg),transparent 37%)}.eyebrow{font-size:9px;gap:10px;letter-spacing:1.5px}h1{font-size:61px;letter-spacing:-3px;margin:26px 0 12px}.subtitle{font-size:17px;line-height:1.5;max-width:460px;letter-spacing:-.35px}.desktop-break{display:none}.version-tag{display:none}.toolbar{margin:0 2px 13px;gap:8px;padding:0}.year-control{gap:8px;flex-wrap:wrap}.year-control label{font-size:10px}.select-wrap select{font-size:12px;padding:7px 28px 7px 10px;min-width:78px}.coverage-pill{font-size:9px}.download-link{font-size:10px;gap:4px}.download-link svg{width:15px}.metrics{grid-template-columns:1fr 1fr;gap:11px}.metric-primary{grid-column:1/-1;min-height:177px;padding:19px 24px}.metric-primary .metric-value{font-size:78px;margin-top:8px;line-height:1.03}.metric-primary .primary-unit{position:absolute;left:143px;top:65px;font-size:24px;max-width:160px;line-height:1.25}.metric-primary .metric-description{position:absolute;left:144px;top:124px;font-size:11px;margin:0}.metric-primary .metric-note{margin-top:1px;font-size:9px}.metric-primary .metric-top h2{font-size:10px}.metric-icon{right:24px;top:70px;width:42px;height:42px;opacity:.65}.metric{min-height:199px;padding:19px}.metric-primary{min-height:177px;padding:19px 24px}.metric-top h2{font-size:9px;line-height:1.55;letter-spacing:1px;padding-right:19px;max-width:145px}.metric-value{font-size:60px;margin:17px 0 3px;letter-spacing:-2.5px}.metric-unit{font-size:15px;line-height:1.4;max-width:180px}.metric-description.small{font-size:10px;line-height:1.5;margin-top:4px}.metric-note{font-size:9px;margin-top:12px;line-height:1.5}.icon-disc{width:29px;height:29px;right:13px;top:18px}.icon-disc svg{width:18px;height:18px}.record-note{font-size:10px;align-items:flex-start;flex-wrap:wrap;gap:7px;margin:13px 4px 16px}.status-dot{margin-top:6px}.record-note p{min-width:230px}.record-note a{margin-left:12px;font-size:9px}.charts{grid-template-columns:1fr;gap:12px}.panel h2{font-size:18px}.panel-header{padding-top:18px}.panel-header p{font-size:11px}.chart-container{min-height:175px;padding:11px 7px 0 4px}.chart-small-note{font-size:9px;line-height:1.7;margin-top:1px}.history-panel .panel-header{display:block}.quiet-tag{display:inline-block;margin-top:9px;font-size:9px}.history-chart{padding-top:9px;min-height:125px}.chart-footnote{font-size:8px;flex-wrap:wrap;gap:5px;margin:0 20px 15px}.record-summary{display:block;padding:26px 5px 21px}.section-kicker{font-size:8px}.record-summary p{font-size:11px;margin-top:7px}.record-summary>a{margin-top:13px;font-size:11px}.record-summary .station-id{font-size:9px}.disclosure summary{padding:15px;font-size:11px}.summary-note{display:none}.disclosure-body{padding:18px 16px;font-size:11px}.source-lead{align-items:flex-start;flex-direction:column;gap:12px}.source-lead h3{font-size:18px}.source-lead h3 .station-id{font-size:10px}.source-facts{grid-template-columns:1fr;gap:11px;margin:17px 0}.source-facts span{font-size:9px}.source-links{gap:13px;flex-wrap:wrap}.source-links a{font-size:10px}.methodology-grid{grid-template-columns:1fr;gap:19px}.updated{font-size:8px;text-align:left;margin-left:4px}footer{padding:21px 4px;gap:10px;flex-wrap:wrap}footer .wordmark{font-size:15px}footer p{font-size:9px}footer>a:last-child{font-size:9px}.chart-tooltip{font-size:10px;max-width:220px}}
@media(max-width:410px){.toolbar{align-items:flex-start}.coverage-pill{width:100%;margin-left:0}.download-link{padding-top:9px}.year-control{gap:7px 9px}.hero{height:252px}.metric-primary .primary-unit{left:131px;font-size:21px;max-width:145px;top:69px}.metric-primary .metric-description{left:132px;top:119px;font-size:10px}.metric-icon{width:29px;right:18px;top:77px;opacity:.5}.metric-primary .metric-value{font-size:74px}.metric-primary .metric-note{font-size:8px}.metric-unit{font-size:14px}.metric{padding:17px}.metric-primary{padding:19px 24px}.metric-top h2{font-size:8px;max-width:120px;padding-right:15px}.icon-disc{width:25px;height:25px;right:11px}.icon-disc svg{width:16px;height:16px}.metric-note{font-size:8px}.metric-description.small{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.chart-point rect,.chart-point circle{transition:none}}
.download-link span{white-space:nowrap}
.metric-primary .metric-top h2{max-width:none;white-space:nowrap}
/* The comparison stays visible; no year controls or chart switching. */
.charts{grid-template-columns:minmax(0,1fr);gap:16px}
.overview-label{display:flex;align-items:center;gap:15px;min-width:0}
.overview-label .section-kicker{font-size:9px}
.comparison-header{display:flex;justify-content:space-between;align-items:center;gap:20px}
.year-legend{list-style:none;display:flex;align-items:center;flex-wrap:wrap;gap:12px 27px;margin:18px 25px 4px;padding:0;color:#526b8a;font-size:11px}
.legend-year{display:flex;align-items:center;gap:7px;line-height:1.5}
.legend-year svg{width:11px;height:11px;flex:none}
.legend-note{font-size:9px;color:#95a3b7;margin-left:-2px}
.legend-pending{color:#94a2b6}
.comparison-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-color:#d5dfec transparent;scrollbar-width:thin}
.comparison-scroll:focus-visible,.annual-table-scroll:focus-visible{outline-offset:-3px}
.grouped-chart{min-width:1040px;min-height:292px;padding:4px 13px 0}
.grouped-chart svg{overflow:visible}
.chart-axis-title{font-family:var(--font);fill:#8a9ab1;font-size:10px}
.chart-gap{font-family:var(--font);fill:#aebbd0;font-size:9px}
.grouped-point:focus-visible .focus-ring{stroke:#536f92;stroke-width:1.5}
.comparison-footnote{margin:0 25px 18px;padding-top:4px}
.missing-key{margin-left:10px;color:#8a9bb2}
.scroll-hint{display:none}
.annual-panel .panel-header{padding-bottom:17px}
.annual-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-color:#d5dfec transparent;scrollbar-width:thin}
#annual-table{border-collapse:collapse;width:100%;min-width:740px;text-align:left;font-size:12px;font-variant-numeric:tabular-nums}
#annual-table thead{background:#f7faff;border-top:1px solid #edf2f8;border-bottom:1px solid #edf2f8}
#annual-table thead th{font-size:10px;font-weight:550;color:#7c8fa9;padding:12px 25px;white-space:nowrap}
#annual-table tbody th,#annual-table tbody td{padding:17px 25px;border-bottom:1px solid #edf2f8;color:#586e8e}
#annual-table tbody th{font-size:15px;font-weight:650;color:#344c6f}
#annual-table tbody tr:last-child th,#annual-table tbody tr:last-child td{border-bottom:none}
#annual-table tbody tr:hover{background:#fbfdff}
#annual-table .annual-number{font-size:16px;font-weight:550;color:#3d5577}
.coverage-value{font-size:12px;font-weight:550;display:block;color:#607b9c}
.coverage-detail{display:block;font-size:9px;color:#92a1b6;line-height:1.5;margin-top:3px}
.record-badge{font-size:10px;padding:5px 8px;border-radius:4px;display:inline-block;white-space:nowrap}
.record-good{color:#6b876c;background:#f1f6ef}
.record-partial{color:#9d8463;background:#faf5ee}
.table-note{margin:0 25px 17px;padding-top:7px;font-size:9px;line-height:1.7;color:#8a9ab0}
@media(max-width:1100px){.year-legend{margin-left:21px;margin-right:21px}.comparison-footnote{margin-left:21px;margin-right:21px}#annual-table thead th,#annual-table tbody th,#annual-table tbody td{padding-left:20px;padding-right:20px}}
@media(max-width:760px){.overview-label{display:block}.overview-label .section-kicker{font-size:8px;margin-bottom:6px}.overview-label .coverage-pill{font-size:9px}.comparison-header{align-items:flex-start;gap:10px}.comparison-header h2{font-size:18px}.comparison-header .quiet-tag{margin-top:0;font-size:9px;padding:5px 7px}.comparison-header p{font-size:10px;line-height:1.6;max-width:240px}.year-legend{gap:9px 15px;margin:15px 20px 6px;font-size:10px}.legend-year{gap:5px}.legend-note{font-size:8px}.legend-year svg{width:9px;height:9px}.grouped-chart{min-height:291px;padding-top:5px}.comparison-footnote{font-size:8px;margin:0 20px 14px;display:flex;flex-direction:column;gap:4px}.comparison-footnote>span:first-child{gap:3px;flex-wrap:wrap}.scroll-hint{display:block;color:#8d9fb7}.scroll-hint span{margin-left:4px}.missing-key{margin-left:6px}.annual-panel .panel-header{padding-bottom:15px}.table-note{font-size:8px;margin:0 20px 15px;padding-top:6px}.toolbar{margin-bottom:14px;align-items:center}.download-link{padding-top:0}#annual-table{min-width:715px}#annual-table thead th{font-size:9px}#annual-table tbody th,#annual-table tbody td{padding-top:15px;padding-bottom:15px}}
/* Show the complete comparison and annual record at first glance on phones. */
.grouped-chart{min-width:0;width:100%}
.comparison-scroll{overflow-x:hidden}
.short-header,.mobile-record-status{display:none}
.compact-chart .chart-label{font-size:9px}
.compact-chart .chart-axis-title{font-size:8px}
.compact-chart .chart-gap{font-size:7px}
@media(max-width:760px){
  .grouped-chart{min-height:230px;padding:5px 7px 0}
  .comparison-scroll{overflow-x:hidden}
  .scroll-hint{display:none}
  .annual-table-scroll{overflow-x:hidden}
  #annual-table{min-width:0;width:100%;table-layout:fixed}
  #annual-table thead th,#annual-table tbody th,#annual-table tbody td{padding:12px 6px}
  #annual-table thead th{font-size:9px;line-height:1.4;font-weight:550}
  #annual-table tbody th{font-size:12px}
  #annual-table .annual-number{font-size:13px}
  #annual-table th:nth-child(1),#annual-table td:nth-child(1){width:19%;padding-left:14px}
  #annual-table th:nth-child(2),#annual-table td:nth-child(2){width:15%}
  #annual-table th:nth-child(3),#annual-table td:nth-child(3){width:13%}
  #annual-table th:nth-child(4),#annual-table td:nth-child(4){width:14%}
  #annual-table th:nth-child(5),#annual-table td:nth-child(5){width:15%}
  #annual-table th:nth-child(6),#annual-table td:nth-child(6){width:24%;padding-right:10px}
  #annual-table th:nth-child(7),#annual-table td:nth-child(7){display:none}
  #annual-table .full-header{display:none}
  #annual-table .short-header{display:inline}
  .coverage-value{font-size:11px}
  .coverage-detail{display:none}
  .mobile-record-status{display:block;font-size:7px;line-height:1.5;font-weight:450;color:#a38c6d;margin-top:3px}
  .mobile-record-good{color:#7d927d}
}
@media(max-width:760px){.year-legend{gap:9px 13px}.legend-year:not(.legend-pending) .legend-note{display:none}}

/* Keep average values of any length separate from their units on phones. */
@media(max-width:760px){
 .metric-primary{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:14px;align-items:center}
 .metric-primary .metric-top{grid-column:1/-1;grid-row:1}
 .metric-primary .metric-value{grid-column:1;grid-row:2/4;font-size:clamp(56px,17vw,72px);margin:8px 0;line-height:1.05}
 .metric-primary .primary-unit{position:static;grid-column:2;grid-row:2;align-self:end;margin:8px 0 0;font-size:23px;max-width:none;line-height:1.25}
 .metric-primary .metric-description{position:static;grid-column:2;grid-row:3;align-self:start;margin:3px 0 0;font-size:10px}
 .metric-primary .metric-note{grid-column:1/-1;grid-row:4;margin:2px 0 0;font-size:8px}
 .metric-primary .metric-icon{display:none}
}

/* Compact spacing (desktop and tablet) */
@media(min-width:761px){
 .hero{height:auto;min-height:170px}
 .hero-content{padding-top:24px;padding-bottom:18px}
 .toolbar{margin-bottom:10px}
 .metric{min-height:0;padding:16px 26px 14px}
 .metric-value{margin-top:8px}
 .metric-note{margin-top:8px}
 .record-note{margin:8px 5px 10px}
 .panel-header{padding-top:14px}
 .grouped-chart{min-height:0}
 .annual-panel .panel-header{padding-bottom:10px}
 #annual-table thead th{padding-top:8px;padding-bottom:8px}
 #annual-table tbody th,#annual-table tbody td{padding-top:9px;padding-bottom:9px}
 .table-note{margin-bottom:12px}
 .record-summary{padding:14px 9px 12px}
 .disclosure summary{padding:12px 20px}
 .disclosure{margin-bottom:8px}
}

/* Peak card, heat profile band and time-of-day chart */
.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
.metric-peak .metric-value{color:#c2410c}
.annual-number .coverage-detail{display:block;font-weight:500}
.profile{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.2fr);gap:16px;margin-bottom:16px}
.profile-stat{padding:18px 24px 16px}
.profile-value{font-size:46px;line-height:1.1;letter-spacing:-1.6px;font-weight:720;color:#1d2b44;margin:8px 0 4px;font-variant-numeric:tabular-nums}
.profile-note{font-size:11px;line-height:1.6;color:#6a7f9c;margin:0;max-width:420px}
.profile-hours{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:22px;align-items:end}
.hour-chart{min-height:118px}
.hour-svg{display:block;width:100%;height:auto}
.hour-bar{fill:#c9d5e4}
.hour-bar-window{fill:#ed7849}
.hour-label{font-family:var(--font);font-size:9px;fill:#8a9ab0;text-anchor:middle}
@media(max-width:1100px){
 .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 .profile{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:760px){
 .metrics{grid-template-columns:1fr 1fr}
 .metric-peak{grid-column:1/-1;min-height:0}
 .profile-hours{grid-template-columns:minmax(0,1fr);gap:12px}
 .profile-value{font-size:38px}
 .profile-stat{padding:16px 18px 14px}
 .profile{gap:11px;margin-bottom:11px}
}

/* Partial-year marker under the year (replaces the Record status column) */
.year-partial{display:block;font-size:9px;line-height:1.5;font-weight:500;color:#a38c6d;margin-top:2px;letter-spacing:.2px}
@media(max-width:760px){.year-partial{font-size:7px}}

/* Tighter annual table */
@media(min-width:761px){
 #annual-table thead th,#annual-table tbody th,#annual-table tbody td{width:1%;white-space:nowrap;padding-left:0;padding-right:56px}
 #annual-table thead th:first-child,#annual-table tbody th{padding-left:25px}
 #annual-table thead th:last-child,#annual-table tbody td:last-child{width:auto;padding-right:25px}
 #annual-table tbody th,#annual-table tbody td{padding-top:8px;padding-bottom:8px}
 .annual-number .coverage-detail{display:inline;margin:0 0 0 6px}
 .coverage-value{display:inline}
 td .coverage-value+.coverage-detail{display:inline;margin:0 0 0 8px}
 .year-partial{display:inline;margin:0 0 0 8px}
}
@media(max-width:760px){
 #annual-table thead th,#annual-table tbody th,#annual-table tbody td{padding-top:7px;padding-bottom:7px}
 .annual-number .coverage-detail{margin-top:0}
 .year-partial{margin-top:0}
}
/* Large desktop: annual table beside the station + methodology panels */
.record-layout{display:block}
.record-layout>.annual-panel{margin-top:16px}
@media(min-width:1400px){
 .record-layout{display:grid;grid-template-columns:minmax(0,max-content) minmax(360px,1fr);gap:20px;align-items:start;margin-top:16px}
 .record-layout>.annual-panel{margin-top:0}
 .record-side{display:flex;flex-direction:column;gap:0;min-width:0}
 .record-side .record-summary{display:block;padding:4px 4px 14px}
 .record-side .record-summary>a{display:inline-flex;margin-top:12px}
 .record-side .methodology-grid{grid-template-columns:1fr}
 .record-side .source-lead{flex-direction:column;align-items:flex-start;gap:10px}
 .record-side .source-facts{grid-template-columns:1fr}
}
/* Insight panels: year so far, seasons, trend, downtown, warm nights, hottest days */
.pulse{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1fr);gap:16px;margin-bottom:16px}
.pulse-ytd{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:22px;align-items:center;padding:16px 24px 14px}
.pulse-last{padding:16px 24px 14px}
.pulse-value{display:flex;align-items:baseline;gap:9px;font-size:40px;line-height:1.1;letter-spacing:-1.4px;font-weight:720;color:#1d2b44;margin:7px 0 4px;font-variant-numeric:tabular-nums}
.pulse-unit{font-size:14px;letter-spacing:0;font-weight:600;color:#587093}
.ytd-strip{min-width:0}
.ytd-axis{stroke:#dbe4f0;stroke-width:6;stroke-linecap:round}
.ytd-dot{fill:#a7b3c2;fill-opacity:.85;stroke:#fff;stroke-width:1.5}
.ytd-current{fill:#ed7849;fill-opacity:1;stroke-width:2}
.ytd-current-label{font-family:var(--font);font-size:10px;font-weight:700;fill:#de4315;text-anchor:middle}
.seasons,.contrast{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:16px}
.contrast{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);margin-top:16px;margin-bottom:0}
.mini-chart{padding:8px 18px 0;min-width:0}
.mini-svg{display:block;width:100%;height:auto;overflow:visible}
.mini-bar{fill:#c9d5e4}
.mini-bar.bar-hot,.mini-bar.bar-mission{fill:#ed7849}
.mini-bar.bar-year{fill:#8fa6c4}
.mini-bar.bar-partial{fill:#d7e1ee;stroke:#8fa6c4;stroke-dasharray:3 2}
.mini-bar.bar-downtown{fill:#b7c3d2}
.mini-value{font-family:var(--font);font-size:9px;fill:#7b8da9;text-anchor:middle;font-variant-numeric:tabular-nums}
.mini-value.bar-hot{fill:#de4315;font-weight:700}
.mini-reference{stroke:#de4315;stroke-width:1.2;stroke-dasharray:4 3}
.mini-reference-label{font-family:var(--font);font-size:9px;font-weight:650;fill:#de4315}
.panel-foot{font-size:11px;line-height:1.6;color:#6a7f9c;margin:6px 24px 16px}
.contrast-body{padding:10px 24px 0}
.versus{display:flex;gap:34px;margin-bottom:8px}
.versus>div{display:flex;flex-direction:column}
.versus-value{font-size:40px;line-height:1.1;letter-spacing:-1.4px;font-weight:720;font-variant-numeric:tabular-nums}
.versus-value.mission{color:#de4315}.versus-value.downtown{color:#6d81a0}
.versus-label{font-size:11px;color:#587093;font-weight:600}
.downtown-panel .mini-chart{padding-top:12px}
.mini-legend{display:flex;gap:16px;list-style:none;margin:4px 24px 16px;padding:0;font-size:10px;color:#6a7f9c}
.mini-legend li{display:flex;align-items:center;gap:6px}
.swatch{display:inline-block;width:9px;height:9px;border-radius:2px}
.swatch.mission{background:#ed7849}.swatch.downtown{background:#b7c3d2}
.spell-list{list-style:none;margin:12px 24px 16px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px 18px}
.spell-list li{display:flex;flex-direction:column;padding:7px 0;border-top:1px solid var(--line)}
.spell-date{font-size:12px;font-weight:650;color:#2b3c58}
.spell-detail{font-size:10px;color:#7b8da9;margin-top:2px}
.hottest-list{list-style:none;margin:10px 0 8px;padding:0}
.hottest-list li{display:grid;grid-template-columns:22px 58px minmax(0,1fr);align-items:center;gap:8px;padding:7px 24px;border-top:1px solid #edf2f9}
.hottest-list li:first-child{border-top:0}
.hot-rank{font-size:10px;font-weight:700;color:#9aabc2;font-variant-numeric:tabular-nums}
.hot-temp{font-size:18px;font-weight:720;color:#de4315;letter-spacing:-.4px;font-variant-numeric:tabular-nums}
.hottest-list li:nth-child(n+4) .hot-temp{color:#c45a33}
.hot-text{display:flex;flex-direction:column;min-width:0}
.hot-text strong{font-size:12px;color:#22324d;font-weight:650}
.hot-detail{font-size:10px;color:#7b8da9;margin-top:1px}
.record-layout+.record-summary{margin-top:6px}
@media(min-width:1400px){.record-layout{grid-template-columns:minmax(0,max-content) minmax(380px,1fr)}}
@media(min-width:761px) and (max-width:1399px){.record-side{margin-top:16px}.hottest-list{display:grid;grid-template-columns:1fr 1fr}.hottest-list li:nth-child(2){border-top:0}}
@media(max-width:1100px){.pulse{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.pulse-ytd{grid-template-columns:minmax(0,1fr)}.seasons{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.contrast{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){
 .pulse,.seasons,.contrast{grid-template-columns:minmax(0,1fr);gap:11px;margin-bottom:11px}
 .contrast{margin-top:11px;margin-bottom:0}
 .pulse-ytd,.pulse-last{padding:14px 18px 12px}
 .pulse-value,.versus-value{font-size:34px}
 .panel-foot{margin:6px 18px 14px}
 .contrast-body{padding:8px 18px 0}
 .mini-chart{padding:6px 10px 0}
 .mini-legend{margin:4px 18px 14px}
 .spell-list{margin:10px 18px 14px;grid-template-columns:1fr 1fr}
 .record-side{margin-top:11px}
 .hottest-list li{padding:7px 18px;grid-template-columns:18px 50px minmax(0,1fr)}
 .hot-temp{font-size:16px}
}
/* Record-high card pairs with the peak card on phones only */
.metric-record .metric-value{color:#c2410c}
@media(min-width:1400px){.metrics{grid-template-columns:minmax(0,1.15fr) repeat(4,minmax(0,1fr));gap:14px}.metrics .metric{padding-left:22px;padding-right:22px}.metrics .metric-value{font-size:clamp(52px,4.4vw,76px)}}
@media(min-width:1101px) and (max-width:1399px){.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.metrics .metric-primary{grid-column:1/-1;min-height:0}}
@media(min-width:761px) and (max-width:1100px){.metrics .metric-primary{grid-column:1/-1;min-height:0}}
@media(max-width:760px){.metric-peak{grid-column:auto}.metric-record{min-height:0}}
/* Smaller, lighter degree unit on large temperature figures */
.temp-unit{font-size:.5em;font-weight:500;letter-spacing:0;margin-left:.06em;vertical-align:.62em;opacity:.85}
.panel-header p strong{color:#22324d;font-weight:700}
.mini-value,.mini-reference-label{paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}
/* Annual table: fixed-width values so dates and coverage notes line up */
@media(min-width:761px){
 #annual-table .peak-value{display:inline-block;min-width:3.8em;font-variant-numeric:tabular-nums}
 #annual-table .coverage-value{display:inline-block;min-width:5.1em;font-variant-numeric:tabular-nums}
 #annual-table .peak-value+.coverage-detail,#annual-table .coverage-value+.coverage-detail{margin-left:0}
}
@media(min-width:1101px){.subtitle{white-space:nowrap;max-width:none}.hero-content{overflow:visible}}
@media(min-width:1101px){.subtitle .desktop-break{display:none}}
/* One left edge: header text, toolbar and section notes align with the cards */
.hero-content{padding-left:30px;padding-right:30px}
.toolbar{margin-left:0;margin-right:0;padding-left:0;padding-right:0}
.record-note,.record-summary{padding-left:0;padding-right:0;margin-left:0;margin-right:0}
@media(min-width:1600px){.hero-content{padding-left:42px;padding-right:42px}}
@media(max-width:1100px){.hero-content{padding-left:22px;padding-right:22px}}
@media(max-width:760px){.hero-content{padding-left:16px;padding-right:16px}}
.versus-value.nights-total{color:#1d2b44}.versus-value.nights-avg{color:#6d81a0}
.nights-versus{margin-top:4px}
/* Mobile: keep the year centered; the Partial tag hangs below without shifting it */
@media(max-width:760px){
 #annual-table tbody th{position:relative}
 #annual-table tbody th .year-partial{position:absolute;left:14px;top:calc(50% + 7px);margin:0;line-height:1}
}

/* Peak cards sit under the average annual peak; the top row keeps three cards */
@media(min-width:1101px){.metrics{grid-template-columns:minmax(0,1.15fr) repeat(2,minmax(0,1fr))}.metrics .metric-primary{grid-column:auto}}
.profile{grid-template-columns:minmax(0,1.25fr) minmax(0,2fr)}
.profile-peaks{display:grid;gap:16px;align-content:start}
.peak-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media(max-width:1100px){.profile{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.profile-peaks,.peak-cards{gap:11px}}
.profile>.profile-hours{align-content:center}
.metrics{margin-bottom:16px}
@media(max-width:760px){.metrics{margin-bottom:11px}}
/* Align the contrast and record rows so their gutters meet on wide screens */
@media(min-width:1400px){.contrast,.record-layout{grid-template-columns:minmax(0,1.6fr) minmax(380px,1fr);gap:20px}}

/* Right now, top right of the hero */
.right-now{position:absolute;top:22px;right:40px;z-index:3;display:flex;flex-direction:column;align-items:flex-end;gap:1px;color:#1d2b44;text-decoration:none;text-shadow:0 0 10px #ffffffe6,0 0 3px #ffffff}
.right-now[hidden]{display:none}
.right-now-label{font-size:10px;font-weight:650;letter-spacing:1.4px;text-transform:uppercase;color:#3d557d}
.right-now-value{font-size:26px;line-height:1.1;font-weight:720;letter-spacing:-.6px;font-variant-numeric:tabular-nums}
.right-now:hover .right-now-value,.right-now:focus-visible .right-now-value{color:#cc350f}
@media(max-width:760px){.right-now{top:14px;right:16px}.right-now-value{font-size:20px}.right-now-label{font-size:8px}}

/* Three-station comparison */
.bar-sunset{fill:#7fb2c9}
.swatch.sunset{background:#7fb2c9}
.versus-value.sunset{color:#4f8aa6}
@media(max-width:760px){.versus{gap:20px}}

/* Heat season, 90°F hours and heat waves */
.season-stats{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.6fr);gap:16px;margin-top:16px}
.wave-list{list-style:none;margin:10px 0 0;padding:0;counter-reset:wave}
.wave-list li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid var(--line);font-size:12px;color:#6a7f9c;counter-increment:wave}
.wave-list li:first-child{border-top:0}
.wave-list strong{color:#1d2b44;font-weight:650}
.wave-list strong:before{content:counter(wave);display:inline-block;width:18px;color:#9aa9bd;font-weight:600}
@media(max-width:1100px){.season-stats{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.season-stats .waves-panel{grid-column:1/-1}}
@media(max-width:760px){.season-stats{grid-template-columns:minmax(0,1fr);gap:11px;margin-top:11px}.wave-list li{flex-direction:column;gap:1px}}

/* City comparison, calendar and month grid */
.cities-section,.calendar-section,.month-grid-section{margin-top:16px}
.city-chart,.calendar-chart,.month-grid{padding:4px 24px 8px}
.city-svg,.calendar-svg,.month-grid-svg{display:block;width:100%;height:auto}
.city-label{font-family:var(--font);font-size:12px;fill:#3e587e}
.city-value{font-family:var(--font);font-size:11px;fill:#6a7f9c;font-variant-numeric:tabular-nums}
.city-mission{fill:#cc350f;font-weight:700}
.city-bar{fill:#b7c3d2}
.city-bar-mission{fill:#ed7849}
.cal-none{fill:#f1f4f8}.cal-cool{fill:#dbe4ee}.cal-warm{fill:#f6cfa9}.cal-hot{fill:#ed7849}.cal-very-hot{fill:#b8320f}
.swatch.cal-none{background:#f1f4f8;border:1px solid #dfe5ec}.swatch.cal-cool{background:#dbe4ee}.swatch.cal-warm{background:#f6cfa9}.swatch.cal-hot{background:#ed7849}.swatch.cal-very-hot{background:#b8320f}
.mg-none{fill:#f6f8fb}.mg-0{fill:#eef2f7}.mg-1{fill:#fbe0cc}.mg-2{fill:#f7c19d}.mg-3{fill:#f29d6d}.mg-4{fill:#e5703f}.mg-5{fill:#c2410c}
.mg-text{font-family:var(--font);font-size:10px;fill:#3e587e;text-anchor:middle;font-variant-numeric:tabular-nums;pointer-events:none}
.mg-text-light{fill:#fff}
@media(max-width:760px){.cities-section,.calendar-section,.month-grid-section{margin-top:11px}.city-chart,.calendar-chart,.month-grid{padding:4px 12px 8px}.mg-text{font-size:8px}}

/* Live Baycast view at the bottom */
.baycast-section{margin:16px 0 8px}
.baycast-link{display:block;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;color:inherit;text-decoration:none;box-shadow:0 3px 18px #5b7dab03}
.baycast-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding:14px 24px 12px}
.baycast-head strong{display:block;font-size:17px;color:#1d2b44;margin-top:4px}
.baycast-open{font-size:12px;color:var(--blue);white-space:nowrap}
.baycast-link:hover .baycast-open{text-decoration:underline}
.baycast-frame{display:block;height:460px;border-top:1px solid var(--line);background:#eef3f8}
.baycast-frame iframe{display:block;width:100%;height:100%;border:0;pointer-events:none}
@media(max-width:760px){.baycast-head{padding:12px 16px 10px;align-items:flex-start;flex-direction:column;gap:4px}.baycast-frame{height:380px}}

/* Row labels for the calendar and month grids, right-aligned to the grid edge */
.grid-label{font-family:var(--font);font-size:9px;fill:#8a9ab0;text-anchor:end}
.city-bar-nearby{fill:#dcc6bc}
