.planning-teaser{display:flex;align-items:center;justify-content:space-between;gap:35px;border-bottom:1px solid var(--line);padding-block:38px;margin-top:25px}
.planning-teaser h2{font-size:25px}.planning-teaser p{font-size:12px;color:var(--muted);margin-bottom:0}.planning-teaser .primary{white-space:nowrap}
.annual-hero{display:grid;grid-template-columns:1.5fr 1fr;gap:75px;padding-block:60px 35px}
.annual-hero h1{font-size:46px;line-height:1.35;letter-spacing:-2px;margin:20px 0}.annual-hero>div>p{font-size:14px;color:var(--muted);line-height:1.9}
.year-card{background:var(--green);color:var(--mint);padding:27px 30px;align-self:center}.year-select{display:flex;align-items:center;gap:10px;border-bottom:1px solid #537366;padding-block:18px}
.year-select label{font-size:10px}.year-select select{background:none;color:var(--mint);font-size:40px;border:0;outline-offset:2px;letter-spacing:-2px;font-weight:600}.year-select option{background:var(--green);color:white}.year-select>span{font-size:30px;margin-left:auto}
.year-card>p{font-size:11px;color:#d2dfcd;line-height:1.9;margin:20px 0}.year-plan-link{display:flex;align-items:center;font-size:12px;border-top:1px solid #537366;padding-top:16px;gap:12px}.year-plan-link strong{font-size:19px;font-weight:500}.year-plan-link span{margin-left:auto}
.annual-warning{display:flex;gap:13px;padding:17px 22px;background:#ede9dc;color:#6f674f;font-size:11px}.annual-warning p{margin:0}.calendar-section{padding-bottom:40px}
.calendar-legend{font-size:9px;color:var(--muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.solid-dot,.dashed-dot{height:8px;width:8px;display:inline-block}.solid-dot{background:var(--green)}.dashed-dot{border:1px dashed #7d8973;margin-left:10px}
.season-tabs{display:flex;gap:10px;margin:25px 0 18px;flex-wrap:wrap}.season-tabs button{background:none;border:1px solid var(--line);padding:9px 17px;font-size:11px}.season-tabs button.active{border-color:var(--green);background:var(--green);color:white}
.year-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);background:white}.month-cell{padding:20px 17px 16px;min-height:180px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.month-cell:nth-child(4n){border-right:0}.month-cell:nth-last-child(-n+4){border-bottom:0}.month-cell.season-match{background:#f5f7ef}.month-cell.muted-month{opacity:.4}
.month-heading{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:13px}.month-heading strong{font-size:24px;font-weight:500;color:var(--green);letter-spacing:-1px}.month-heading small{font-size:9px;color:var(--muted)}
.month-pick{border:0;background:transparent;padding:0;line-height:1;cursor:pointer}.month-pick:hover strong{color:var(--accent)}
.timeline-chip{width:100%;display:flex;gap:5px;text-align:left;padding:6px 7px;border:1px dashed #b9c8ad;background:#f3f6eb;font-size:9px;line-height:1.6;margin:5px 0;align-items:start}.timeline-chip.actual{border:1px solid #517363;background:#edf2e8}.timeline-chip small{white-space:nowrap;font-size:8px;color:#6a7d61}.timeline-chip.prep{border-color:#e2cdba;background:#faf3e9}.timeline-chip.prep small{color:#a4643f}.timeline-chip span{min-width:0;overflow-wrap:anywhere}
.month-empty{font-size:10px;color:#9aa493}.timeline-caption{font-size:10px;color:var(--muted);padding:12px 0}
.series-controls{display:flex;justify-content:space-between;align-items:center;margin-top:18px;gap:20px}.series-controls .category-tabs{margin:0 0 20px;flex:1}.series-controls>span{font-size:11px;white-space:nowrap}
.series-list{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.series-card{background:#fff;border:1px solid var(--line);padding:26px;scroll-margin-top:110px;position:relative}.series-card h3{font-size:22px;line-height:1.5;letter-spacing:-.6px;margin:13px 0 9px}.series-subtitle{font-size:11px;color:var(--muted);line-height:1.9}
.recurrence-badge{font-size:9px;color:#6d7c65;border:1px dashed #a4b299;padding:3px 6px}.annual-status{font-size:10px;color:#815a28;background:#f4ecdd;padding:8px 10px;margin:15px 0}.annual-status.announced{color:#3d694c;background:#edf3e7}
.timing-strip{display:grid;grid-template-columns:1fr 1fr;background:#edf1e7;padding:15px;gap:10px;margin:18px 0}.timing-strip small{font-size:9px;color:var(--muted);display:block}.timing-strip strong{font-size:14px;font-weight:700}.timing-strip span{font-size:9px;font-weight:400;color:#79856e;display:block}
.series-facts{display:grid;grid-template-columns:68px 1fr;gap:9px 12px;font-size:11px;margin:20px 0}.series-facts dt{color:var(--muted)}.series-facts dd{margin:0;line-height:1.9}.depth-tag{font-size:9px;display:inline-block;background:#f0f1ed;color:#5a6a61;margin:3px 5px 0 0;padding:3px 6px}
.series-reason{border-left:2px solid #8aa675;padding:0 0 0 12px;margin:18px 0;font-size:11px;color:#5f735f;line-height:1.9}.series-reason small{display:block;font-size:8px;color:#75876e;letter-spacing:1px}.series-card details{border-top:1px solid var(--line);padding-top:13px;font-size:11px}.series-card summary{cursor:pointer;color:var(--green)}
.history-row{padding:12px 0;border-bottom:1px solid #edf0e9;font-size:10px;line-height:1.8;color:#607166}.history-row strong{color:var(--ink)}.history-row a{color:var(--green);text-decoration:underline}.series-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:20px}.series-actions .primary{padding:10px 14px;font-size:11px}.series-actions .primary.added{background:#e4ebda;color:var(--green)}.series-actions a{font-size:10px;text-decoration:underline}.series-verified{font-size:8px;color:#929d90;margin:12px 0 0}.series-focus{outline:2px solid var(--accent);outline-offset:3px}
.my-plan-section{background:var(--green);color:#edf1e5;padding:32px;margin-bottom:40px}.my-plan-section .eyebrow{color:#b7cfa2}.my-plan-section h2{color:var(--mint)}.my-plan-section .outline{color:#e7eddf;border-color:#65836b}.my-plan-section .section-desc,.my-plan-section .data-note{color:#bbceb8}.my-plan-section .data-note{font-size:9px;margin-top:20px}
.plan-item{display:grid;grid-template-columns:90px 1fr;gap:20px;border-top:1px solid #4a6c5c;padding:22px 0}.plan-month{font-size:32px;color:var(--mint);line-height:1.3}.plan-month small{font-size:10px;display:block;color:#b7cfa2}.plan-item h3{font-size:17px;margin:0 0 6px;line-height:1.5}.plan-item p{font-size:10px;color:#c4d4c0;margin:0 0 13px}
.plan-edit-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.plan-edit-row label{font-size:10px;color:#d2e1ca;display:flex;gap:8px;align-items:center}.plan-edit-row select{background:#234f43;border:1px solid #6b8c72;color:white;padding:5px;font-size:11px}.plan-note{background:#234f43;border:1px solid #6b8c72;padding:7px 9px;color:#fff;font-size:11px;flex:1;min-width:150px}.plan-note::placeholder{color:#a8c1a7}.plan-remove{color:#d0dbc8;border:0;background:none;font-size:10px;padding:5px}.plan-empty{text-align:center;padding:24px;background:#214b40;border:1px dashed #678366;font-size:12px;color:#c8d7bf}
.annual-method{padding:0 0 45px}.annual-method h2{font-size:21px}.annual-method p{font-size:11px;color:var(--muted);max-width:850px;line-height:1.9}nav a[aria-current=page]{color:#5f7d44}
.year-timeline.filtered{grid-template-columns:repeat(2,minmax(0,1fr))}.year-timeline.single{grid-template-columns:1fr}.year-timeline.filtered .month-cell{border-bottom:0}.year-timeline.single .month-cell{border:0}.timeline-chip{font-size:10px}
.series-actions{flex-wrap:wrap}
.timeline-chip{font-size:11px}.timeline-chip small{font-size:9px}
@media(max-width:1000px){.annual-hero{gap:35px}.annual-hero h1{font-size:39px}.series-card{padding:22px}.year-card{padding:23px}.year-timeline{grid-template-columns:repeat(3,1fr)}.month-cell:nth-child(4n){border-right:1px solid var(--line)}.month-cell:nth-child(3n){border-right:0}.month-cell:nth-last-child(-n+4){border-bottom:1px solid var(--line)}.month-cell:nth-last-child(-n+3){border-bottom:0}}
@media(max-width:680px){.planning-teaser{flex-direction:column;align-items:start;gap:20px;padding-block:28px}.planning-teaser h2{font-size:23px}.planning-teaser p{font-size:11px}.annual-hero{grid-template-columns:1fr;gap:20px;padding-block:35px 25px}.annual-hero h1{font-size:34px;letter-spacing:-1.5px}.annual-hero .eyebrow{font-size:8px}.annual-hero>div>p{font-size:12px}.year-card{padding:22px}.year-select{padding-block:10px}.year-select select{font-size:34px}.year-card>p{font-size:10px;margin-block:14px}.year-plan-link{font-size:11px}.annual-warning{font-size:10px;padding:14px 17px}.calendar-section .section-head{align-items:start;flex-direction:column;gap:10px}.calendar-legend{font-size:8px}.season-tabs{gap:5px;margin-top:18px;display:grid;grid-template-columns:repeat(3,1fr)}.season-tabs button{font-size:9px;padding:8px 7px;white-space:nowrap}.year-timeline{grid-template-columns:repeat(2,1fr)}.month-cell{padding:14px 11px;min-height:160px}.month-cell:nth-child(3n){border-right:1px solid var(--line)}.month-cell:nth-child(2n){border-right:0}.month-cell:nth-last-child(-n+3){border-bottom:1px solid var(--line)}.month-cell:nth-last-child(-n+2){border-bottom:0}.month-heading strong{font-size:22px}.month-heading small{font-size:8px}.timeline-chip{font-size:8px;padding:5px}.timeline-chip small{font-size:7px}.timeline-caption{font-size:9px}.series-controls{display:block;margin-top:15px}.series-controls .category-tabs{margin-bottom:10px}.series-controls>span{font-size:10px;display:block;margin-bottom:15px}.series-list{grid-template-columns:1fr;gap:16px}.series-card h3{font-size:21px}.series-subtitle,.series-facts,.series-reason{font-size:11px}.timing-strip{padding:12px}.timing-strip strong{font-size:13px}.my-plan-section{padding:23px;margin-bottom:30px}.my-plan-section .section-head{align-items:start;flex-direction:column;gap:16px}.my-plan-section h2{font-size:21px}.my-plan-section .section-desc{font-size:10px}.plan-item{grid-template-columns:55px 1fr;gap:14px}.plan-month{font-size:25px}.plan-month small{font-size:8px}.plan-item h3{font-size:15px}.plan-item p{font-size:9px}.plan-note{width:100%;min-width:0;font-size:10px;flex:auto}.plan-edit-row{gap:7px}.annual-method h2{font-size:18px}.annual-method p{font-size:10px}nav{gap:18px}nav a{white-space:nowrap}.site-header .brand{font-size:17px}.site-header .brand-symbol{width:32px;height:32px;font-size:24px}}

@media(max-width:680px){.timeline-chip{display:block;text-align:left;font-size:11px;padding:7px;line-height:1.6}.timeline-chip small{display:block;font-size:9px;line-height:1.4;margin-bottom:3px}.month-cell{min-width:0}}
