:root{--night:#102d2b;--night-soft:#1b4540;--cream:#fbf7ed;--paper:#f2ebda;--ink:#183832;--muted:#73817a;--line:#d9d6c7;--spring:#d6785e;--summer:#4e9c72;--fall:#c28149;--winter:#668ca1;--yellow:#e9c55e;--lavender:#9b86b7}body:has(.calendar-shell){background:var(--night);color:var(--ink)}body:has(.calendar-shell) .site-header{max-width:1240px;border-color:#315a53;color:#eaf1e7}body:has(.calendar-shell) .brand{color:#f8f3e8}body:has(.calendar-shell) .site-header nav{display:flex;gap:22px}body:has(.calendar-shell) .site-header nav a{color:#d5e4d9}.calendar-shell{max-width:1240px;margin:auto;background:var(--cream);overflow:hidden}.calendar-hero{display:grid;grid-template-columns:1fr 300px;gap:50px;padding:74px 7.5% 65px;background:var(--night);color:#f9f5e9}.calendar-kicker,.section-kicker,.note-label,.callout-label{font-size:11px;letter-spacing:.16em;font-weight:850}.calendar-kicker{color:#a8ccb0;display:flex;align-items:center;gap:9px}.sun-mark{width:15px;height:15px;border-radius:50%;display:inline-block;background:var(--yellow);box-shadow:0 0 0 5px #e9c55e25}.calendar-hero h1{font:700 clamp(50px,7vw,91px)/.92 Georgia,serif;letter-spacing:-.065em;margin:20px 0 25px}.calendar-hero h1 em{color:var(--yellow);font-style:normal}.calendar-lede{color:#b9cfc3;max-width:610px;font-size:19px;line-height:1.55;margin:0}.hero-note{align-self:end;border-left:1px solid #4a7165;padding:5px 0 5px 23px;display:grid;gap:6px}.hero-note .note-label{color:#9ebaa6}.hero-note strong{font:700 22px/1.1 Georgia,serif;color:#fff7e8}.hero-note small{color:#99b7a8}.calendar-toolbar{padding:47px 7.5% 25px;display:flex;align-items:end;justify-content:space-between;gap:24px}.section-kicker{color:var(--muted);margin:0 0 8px}.calendar-toolbar h2,.day-detail h2,.crop-deadlines h2,.planner-section h2{font:700 31px/1.05 Georgia,serif;letter-spacing:-.03em;margin:0}.season-tabs{display:flex;gap:6px;flex-wrap:wrap}.season-tab{border-radius:99px;color:var(--muted);font-size:13px;font-weight:800;text-decoration:none;padding:10px 14px;border:1px solid transparent}.season-tab:hover,.season-tab.active{color:var(--ink);background:#e8e1cf;border-color:#d8d0bc}.season-tab.season-spring.active{background:#f4ddd4;border-color:#e6b8a8}.season-tab.season-summer.active{background:#dcecdf;border-color:#b7d4bd}.season-tab.season-fall.active{background:#f3e1ce;border-color:#dfbf9e}.season-tab.season-winter.active{background:#dce8ee;border-color:#b8cfdb}.season-grid-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;padding:0 7.5% 52px}.season-card{border:1px solid var(--line);background:#fffdf8;border-radius:18px;padding:23px 23px 16px;box-shadow:0 9px 25px #17342b0b}.season-card-spring{border-top:4px solid var(--spring)}.season-card-summer{border-top:4px solid var(--summer)}.season-card-fall{border-top:4px solid var(--fall)}.season-card-winter{border-top:4px solid var(--winter)}.season-card-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:18px}.season-card-head>div{display:flex;align-items:baseline;gap:10px}.season-number{font-size:11px;font-weight:850;color:var(--muted);letter-spacing:.08em}.season-card h2{font:700 27px/1 Georgia,serif;margin:0}.season-days{font-size:10px;letter-spacing:.1em;color:var(--muted);font-weight:850}.day-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.day-tile{aspect-ratio:1.08/1;position:relative;display:flex;align-items:flex-start;justify-content:space-between;padding:9px 8px;border-radius:8px;text-decoration:none;color:var(--ink);border:1px solid transparent;background:#f5f1e6;transition:background .15s,border .15s,transform .15s}.day-tile:hover,.day-tile:focus-visible{background:#e8e1cf;border-color:#c8bda3;transform:translateY(-1px);outline:none}.day-tile.selected{background:var(--night);color:#fffaf0;border-color:var(--night)}.day-number{font-size:13px;font-weight:800}.day-dots{display:flex;gap:3px;padding-top:2px}.day-dots i,.season-legend i{width:6px;height:6px;border-radius:50%;display:inline-block}.dot-birthday{background:var(--lavender)}.dot-festival{background:var(--yellow)}.season-legend{display:flex;gap:18px;margin-top:15px;color:var(--muted);font-size:11px;font-weight:700}.season-legend span{display:flex;align-items:center;gap:6px}.selected-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:0 7.5% 52px}.day-detail,.crop-deadlines{background:var(--paper);border-radius:18px;padding:30px}.day-detail h2,.crop-deadlines h2{font-size:35px;margin-bottom:22px}.event-stack{display:grid;gap:10px}.event-row{display:flex;align-items:flex-start;gap:13px;border-radius:12px;padding:14px;background:#fffdf8;border:1px solid var(--line)}.event-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#e5d9f0;color:#715a91;font-size:16px;flex:0 0 auto}.event-festival .event-icon{background:#f7e6b7;color:#8a6c17}.event-row strong{display:block;font-size:15px}.event-row p{margin:3px 0 0;color:var(--muted);font-size:13px}.empty-state{color:var(--muted);margin:0}.gift-callout{border-top:1px solid var(--line);margin-top:22px;padding-top:18px;display:grid;gap:3px}.callout-label{color:#a67a42}.gift-callout strong{font:700 21px/1.1 Georgia,serif}.gift-callout p{color:var(--muted);margin:0}.detail-heading{display:flex;justify-content:space-between;gap:10px}.detail-season{color:var(--green);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.09em}.deadline-list{display:grid;gap:3px}.deadline-row{display:grid;grid-template-columns:12px 1fr auto auto;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid #ded8c9;font-size:13px}.crop-swatch{width:9px;height:9px;border-radius:50%;background:var(--spring)}.crop-1{background:var(--summer)}.crop-2{background:var(--fall)}.crop-3{background:var(--winter)}.crop-4{background:var(--lavender)}.deadline-arrow{color:#a4a69c}.deadline-date{font-weight:850;color:var(--ink)}.table-note{font-size:11px;color:var(--muted);margin:15px 0 0}.planner-section{margin:0 7.5% 55px;padding:33px;border-radius:18px;background:var(--night);color:#f7f2e6;display:grid;grid-template-columns:1fr 1.55fr;gap:26px;align-items:center}.planner-section .section-kicker{color:#9ebaa6}.planner-section h2{font-size:36px}.planner-copy p:last-child{color:#b7ccc1;max-width:370px;margin-bottom:0}.planner-form{display:grid;grid-template-columns:1.35fr 1fr .8fr auto;gap:9px;align-items:end}.planner-form label{display:grid;gap:6px;color:#c5d9cc;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.planner-form select,.planner-form input{width:100%;border:1px solid #53786b;border-radius:8px;background:#1b4540;color:#fff9ed;padding:11px 10px;font:14px ui-sans-serif}.planner-form button{height:43px;border:0;border-radius:8px;background:var(--yellow);color:var(--night);padding:0 15px;font-weight:850;white-space:nowrap}.calculator-error{grid-column:2;color:#f1b0a1;font-size:13px;margin:0}.calculator-result{grid-column:2;display:flex;gap:12px;align-items:start;border-radius:10px;padding:13px 15px;background:#244f47}.result-late{background:#5e3d36}.result-mark{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#cce7d1;color:var(--night);font-weight:900}.result-late .result-mark{background:#f1b0a1}.calculator-result strong{font-size:14px}.calculator-result p{margin:2px 0 0;color:#c8d9ce;font-size:12px}.calendar-footer{border-top:1px solid #d9d6c7;margin:0 7.5%;padding:26px 0 36px;display:grid;grid-template-columns:1fr auto;gap:8px;color:var(--muted);font-size:12px}.calendar-footer strong{color:var(--ink);font:700 18px Georgia,serif}.calendar-footer p{margin:4px 0 0}.footer-links{display:flex;gap:18px;align-items:center}.footer-links a{color:var(--ink);font-weight:800}.attribution{grid-column:1/-1;font-size:11px;color:#9b9c91}@media(max-width:900px){.calendar-hero{grid-template-columns:1fr}.hero-note{justify-self:start}.planner-section{grid-template-columns:1fr}.calculator-error,.calculator-result{grid-column:1}}@media(max-width:680px){body:has(.calendar-shell) .site-header{height:62px;padding:0 16px}.calendar-shell{margin:0}.calendar-hero{padding:47px 6% 45px}.calendar-hero h1{font-size:54px}.calendar-lede{font-size:17px}.calendar-toolbar{padding:36px 6% 19px;display:grid}.season-grid-list,.selected-layout{grid-template-columns:1fr;padding-left:6%;padding-right:6%;padding-bottom:38px}.season-card{padding:17px 15px 13px}.day-tile{padding:8px 6px}.day-number{font-size:12px}.selected-layout{gap:14px}.day-detail,.crop-deadlines{padding:24px}.planner-section{margin:0 6% 39px;padding:25px 20px}.planner-form{grid-template-columns:1fr 1fr}.planner-form label:first-child,.planner-form button{grid-column:1/-1}.calendar-footer{margin:0 6%;grid-template-columns:1fr;gap:14px}.footer-links{order:3}}
