*{box-sizing:border-box}.year-review-page{padding-bottom:40px}.year-hero{margin-top:18px;padding:clamp(22px,4vw,38px);display:flex;justify-content:space-between;align-items:flex-end;gap:24px;background:var(--card);border:1px solid var(--line);border-top:7px solid var(--green);border-radius:18px;box-shadow:var(--shadow)}.year-hero h2{font-size:clamp(2.3rem,7vw,4.4rem);line-height:.95;letter-spacing:-.05em;margin:8px 0}.year-hero p{margin:0;color:var(--muted)}.year-selector{display:grid;gap:6px;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.year-selector select{min-width:145px;min-height:44px;padding:8px 34px 8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);font:inherit;font-size:1rem}.review-nav{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin:14px 0}.review-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 13px;border:1px solid var(--green);border-radius:999px;color:var(--green);font-size:.78rem;font-weight:850;text-decoration:none}.review-nav a.active{background:var(--green);color:#fff}.review-nav.bottom{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}.year-notice{padding:34px 0;color:var(--muted)}.year-notice.error{color:var(--red)}
.year-headline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.headline-stat{min-width:0;padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--card);box-shadow:var(--shadow)}.headline-stat span{display:block;color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.headline-stat b{display:block;margin-top:5px;font-size:clamp(1.2rem,2.7vw,1.75rem);line-height:1.05;overflow-wrap:anywhere}.headline-stat small{display:block;margin-top:5px;color:var(--muted);font-size:.7rem}.year-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.year-card{min-width:0;padding:18px;border:1px solid var(--line);border-radius:17px;background:var(--card);box-shadow:var(--shadow)}.year-card.wide{margin-top:12px}.year-section-head{display:flex;gap:9px;align-items:flex-start}.year-section-head h2{margin:0;font-size:1.08rem}.year-section-head p{margin:2px 0 10px;color:var(--muted);font-size:.76rem}
.month-bars{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:7px;align-items:end;min-height:210px;padding-top:12px}.month-bar{appearance:none;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;min-width:0;height:190px;padding:0;border:0;background:transparent;color:var(--ink);cursor:pointer}.month-bar-fill{display:block;min-height:2px;border-radius:6px 6px 2px 2px;background:var(--green2);transition:.15s}.month-bar strong{font-size:.66rem}.month-bar small{color:var(--muted);font-size:.62rem}.month-bar:hover .month-bar-fill,.month-bar:focus-visible .month-bar-fill{background:var(--gold);transform:scaleX(1.06)}.month-bar:focus-visible{outline:3px solid #e8a94f;outline-offset:3px}.month-bars.compact{min-height:185px}.month-bars.compact .month-bar{height:165px}
.year-line-chart{min-height:280px;overflow-x:auto}.year-line-chart svg{display:block;width:100%;min-width:650px;height:auto}.year-grid-line{stroke:#e5e9e6}.year-axis-label{fill:var(--muted);font-size:10px}.year-line{fill:none;stroke:var(--green);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.year-line.previous{stroke:#8e9994;stroke-width:2;stroke-dasharray:7 6}.year-chart-hit{fill:transparent;stroke:transparent;cursor:pointer;outline:none}.year-chart-hit:hover,.year-chart-hit:focus-visible{fill:var(--gold);stroke:#fff;stroke-width:2}.year-chart-key{display:flex;justify-content:flex-end;gap:15px;color:var(--muted);font-size:.7rem}.year-chart-key span{display:flex;align-items:center;gap:5px}.year-key{display:inline-block;width:20px;border-top:3px solid var(--green)}.year-key.previous{border-color:#8e9994;border-top-style:dashed}.year-chart-detail{position:relative;margin-top:10px;padding:13px 45px 13px 15px;border:1px solid #dce3de;border-left:5px solid var(--gold);border-radius:12px;background:#f7f9f7}.year-chart-detail h3{margin:0 0 3px;font-size:1rem}.year-chart-detail p{margin:0;color:var(--muted);font-size:.78rem}.year-chart-detail button{position:absolute;right:8px;top:8px;width:32px;height:32px;border:0;border-radius:50%;background:transparent;font-size:1.1rem;cursor:pointer}
.year-facts{display:grid;grid-template-columns:1fr 1fr;gap:9px}.year-fact{padding:13px;border:1px solid var(--line);border-radius:11px;background:#f7f8f4}.year-fact span{display:block;color:var(--muted);font-size:.67rem}.year-fact b{display:block;margin-top:3px;font-size:1.3rem}.coverage-note{grid-column:1/-1;margin:2px 0;color:var(--muted);font-size:.74rem}.year-composition{display:grid;gap:9px}.year-composition-row{display:grid;grid-template-columns:118px 1fr auto;gap:9px;align-items:center;font-size:.73rem}.year-composition-track{height:12px;overflow:hidden;border-radius:8px;background:#edf0ee}.year-composition-fill{height:100%;border-radius:inherit;background:var(--green2)}.year-composition-row.recovery .year-composition-fill{background:#6dafa3}.year-composition-row.easy .year-composition-fill{background:#83c5a2}.year-composition-row.steady .year-composition-fill{background:#75a9cb}.year-composition-row.threshold .year-composition-fill{background:#d7a34a}.year-composition-row.fast .year-composition-fill{background:#df735b}.year-composition-row b{font-size:.7rem;white-space:nowrap}.year-highlights{display:grid;gap:8px}.year-highlight{padding:12px;border-left:5px solid var(--green);border-radius:10px;background:#f5f7f4}.year-highlight b{display:block}.year-highlight span{display:block;margin-top:2px;color:var(--muted);font-size:.75rem}.year-provenance{margin-top:18px;padding:14px 16px;border-radius:12px;background:#ebefec;font-size:.75rem}.year-provenance summary{font-weight:800;cursor:pointer}.year-provenance dl{display:grid;grid-template-columns:115px 1fr;gap:7px 12px}.year-provenance dt{font-weight:800}.year-provenance dd{margin:0;color:var(--muted)}
@media(max-width:850px){.year-headline{grid-template-columns:repeat(2,minmax(0,1fr))}.month-bars{gap:4px}.year-grid{grid-template-columns:1fr}}
@media(max-width:560px){.year-review-page{padding-inline:12px}.year-hero{display:block;margin-top:12px;padding:22px}.year-selector{margin-top:18px}.year-selector select{width:100%}.review-nav{display:grid;grid-template-columns:1fr 1fr}.review-nav a:last-child{grid-column:1/-1}.year-headline{gap:7px}.headline-stat{padding:12px}.year-card{padding:14px 10px}.month-bars{grid-template-columns:repeat(6,minmax(0,1fr));min-height:auto}.month-bar{height:130px}.month-bars.compact .month-bar{height:115px}.year-composition-row{grid-template-columns:96px 1fr}.year-composition-row b{grid-column:2}.year-provenance dl{grid-template-columns:1fr}}
.year-composition-row.zone1 .year-composition-fill{background:#6dafa3}.year-composition-row.zone2 .year-composition-fill{background:#83c5a2}.year-composition-row.zone3 .year-composition-fill{background:#75a9cb}.year-composition-row.zone4 .year-composition-fill{background:#d7a34a}.year-composition-row.zone5 .year-composition-fill{background:#df735b}
