/* Crop calendar page. Data: data/crop-calendar.json, renderer: js/crop-calendar.js */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.photo{margin:28px auto 0;max-width:100%}.photo.wide{max-width:960px}.photo.narrow{max-width:640px}.photo picture{display:block;position:relative}.photo img{display:block;width:100%;height:auto;border-radius:4px;border:1px solid var(--gold-300);box-shadow:0 6px 22px rgba(60,40,15,.12)}.photo figcaption{font:500 13px var(--font-body);color:var(--ink-600);margin-top:10px;text-align:center}
.cc-sec [id]{scroll-margin-top:130px}
.cc-subnav a[aria-current="true"]{color:var(--brown-700);box-shadow:inset 0 -2px 0 var(--gold-500)}

/* stage palette: colour + pattern + letter, so colour is never the only cue */
.cc{--n-bg:#D3E6C4;--n-fg:#1d3a14;--t-bg:#7DB894;--t-fg:#08240f;--g-bg:#EEF3E4;--g-fg:#4a5a3a;--h-bg:#E3A93B;--h-fg:#2b1a00;--c-bg:#9A5428;--c-fg:#fff;--m-bg:#4A3019;--m-fg:#F6F0E3}
.s-N{--bg:var(--n-bg);--fg:var(--n-fg);background-color:var(--n-bg);color:var(--n-fg);background-image:radial-gradient(rgba(29,58,20,.4) 1px,transparent 1.3px);background-size:6px 6px}
.s-T{--bg:var(--t-bg);--fg:var(--t-fg);background-color:var(--t-bg);color:var(--t-fg);background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.4) 0 3px,transparent 3px 7px)}
.s-G{--bg:var(--g-bg);--fg:var(--g-fg);background-color:var(--g-bg);color:var(--g-fg);background-image:repeating-linear-gradient(0deg,rgba(90,110,60,.28) 0 1px,transparent 1px 5px)}
.s-H{--bg:var(--h-bg);--fg:var(--h-fg);background-color:var(--h-bg);color:var(--h-fg);background-image:repeating-linear-gradient(45deg,rgba(0,0,0,.14) 0 2px,transparent 2px 7px),repeating-linear-gradient(-45deg,rgba(0,0,0,.14) 0 2px,transparent 2px 7px)}
.s-C{--bg:var(--c-bg);--fg:var(--c-fg);background-color:var(--c-bg);color:var(--c-fg);background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.24) 0 2px,transparent 2px 6px)}
.s-M{--bg:var(--m-bg);--fg:var(--m-fg);background-color:var(--m-bg);color:var(--m-fg);background-image:conic-gradient(rgba(255,255,255,.16) 25%,transparent 0 50%,rgba(255,255,255,.16) 0 75%,transparent 0);background-size:8px 8px}

/* controls */
.cc-bar{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:flex-end;margin:6px 0 18px;padding:16px 18px;background:var(--white);border:1px solid var(--hair);border-radius:4px}
.cc-f{display:flex;flex-direction:column;gap:5px;min-width:170px}
.cc-f label,.cc-f .cc-fl{font:600 12.5px var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-600)}
.cc-f select{font:500 15px var(--font-body);min-height:44px;padding:8px 10px;border:1.5px solid var(--line-500);border-radius:4px;background:var(--white);color:var(--ink-900)}
.cc-chips{display:flex;flex-wrap:wrap;gap:6px}
.cc-chip{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:5px 11px;border:1.5px solid var(--line-500);border-radius:20px;background:var(--white);font:500 14px var(--font-body);cursor:pointer;user-select:none}
.cc-chip input{position:absolute;opacity:0;width:1px;height:1px}
.cc-chip i{display:inline-block;width:16px;height:16px;border-radius:3px;border:1px solid rgba(0,0,0,.25)}
.cc-chip:has(input:checked){background:var(--sand-100);border-color:var(--brown-700);box-shadow:inset 0 0 0 1px var(--brown-700)}
.cc-chip:has(input:focus-visible){outline:3px solid var(--gold-500);outline-offset:2px}
.cc-count{font-size:14px;color:var(--ink-600);margin:0 0 8px}
.cc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-left:auto}
.cc-btn{font:600 14px var(--font-body);min-height:44px;padding:8px 16px;border:1.5px solid var(--brown-700);border-radius:4px;background:var(--white);color:var(--brown-700);cursor:pointer}
.cc-btn:hover{background:var(--brown-700);color:var(--cream-100)}

/* legend */
.cc-legend{display:flex;flex-wrap:wrap;gap:8px 18px;list-style:none;padding:0;margin:0 0 14px;font-size:14px}
.cc-legend li{display:flex;align-items:center;gap:7px;margin:0}
.cc-legend .sw{display:inline-grid;place-items:center;width:30px;height:24px;border-radius:3px;border:1px solid rgba(0,0,0,.25);font:700 12px var(--font-body)}

/* grid */
.cc-wrap{position:relative;overflow-x:auto;border:1px solid var(--hair);border-radius:4px;background:var(--white);-webkit-overflow-scrolling:touch;margin:0 0 6px}
table.cc-grid{border-collapse:separate;border-spacing:0;width:100%;min-width:760px;table-layout:fixed;font-size:14px}
.cc-grid col.rh{width:230px}
.cc-grid thead th{position:sticky;top:0;z-index:2;background:var(--cream-100);font:600 13px var(--font-body);letter-spacing:.05em;color:var(--ink-600);padding:22px 0 8px;text-align:center;border-bottom:1px solid var(--hair)}
.cc-grid thead th.corner{left:0;z-index:4;text-align:left;padding-left:12px}
.cc-grid thead th.cur{background:var(--charcoal-900);color:var(--gold-300);position:sticky}
.cc-grid thead th.cur::after{content:"Now";position:absolute;left:0;right:0;top:4px;font:700 10px var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-700)}
.cc-grid tbody th{position:sticky;left:0;z-index:1;background:var(--white);text-align:left;font-weight:500;padding:0;border-bottom:1px solid var(--hair);border-right:1px solid var(--hair)}
.cc-rb{display:block;width:100%;text-align:left;font:inherit;background:none;border:0;padding:9px 12px;cursor:pointer;color:var(--ink-900);min-height:48px}
.cc-rb strong{display:block;font-weight:600;font-size:14px;line-height:1.25}
.cc-rb span{display:block;font-size:12.5px;color:var(--ink-600);line-height:1.3}
.cc-rb:hover,.cc-grid tr.sel th .cc-rb{background:var(--sand-100)}
.cc-rb:focus-visible,.cc-cell:focus-visible{outline:3px solid var(--gold-500);outline-offset:-3px}
.cc-cell{height:48px;padding:0;text-align:center;vertical-align:middle;border-bottom:1px solid var(--hair);border-right:1px solid rgba(255,255,255,.7);cursor:pointer;position:relative}
.cc-cell .cc-l{display:inline-block;font:700 11.5px/1 var(--font-body);letter-spacing:.02em;padding:3px 4px;border-radius:2px;background:var(--bg);color:var(--fg)}
.cc-cell.s-0{background:#fff;cursor:default}
.cc-cell.cur{border-left:2px solid var(--gold-500);border-right:2px solid var(--gold-500)}
.cc-cell.dim{opacity:.22}
.cc-cell.on{box-shadow:inset 0 0 0 3px var(--ink-900)}
.cc-grid tr.sel .cc-cell{border-bottom-color:var(--brown-700)}
.cc-empty{padding:26px;text-align:center;color:var(--ink-600)}
.cc-hint{font-size:14px;color:var(--ink-600);margin:6px 0 0}

/* tooltip */
.cc-tip{position:fixed;z-index:80;max-width:300px;background:var(--charcoal-900);color:var(--cream-100);border-radius:4px;padding:10px 12px;font-size:13.5px;line-height:1.4;box-shadow:0 8px 24px rgba(0,0,0,.28);pointer-events:none;opacity:0;transition:opacity .12s}
.cc-tip.show{opacity:1}
.cc-tip b{color:var(--gold-300);font-weight:600}
.cc-tip .t-h{display:block;font-weight:600;margin-bottom:3px}
.cc-tip .t-s{display:block}
.cc-tip .t-m{display:block;margin-top:5px;font-size:12.5px;color:#cdbf9f}

/* detail panel */
.cc-detail{margin:16px 0 0;background:var(--white);border:1px solid var(--hair);border-left:4px solid var(--copper-500);border-radius:0 4px 4px 0;padding:18px 20px}
.cc-detail h3{margin:0 0 4px;font-size:22px}
.cc-detail .sub{margin:0 0 12px;color:var(--ink-600);font-size:14.5px}
.cc-detail dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 14px;margin:0 0 12px;font-size:15px}
.cc-detail dt{font-weight:600}.cc-detail dd{margin:0}
.cc-detail .focus{background:var(--sand-100);padding:8px 12px;border-radius:4px;margin:0 0 12px;font-size:15px}
.cc-detail.empty{border-left-color:var(--hair);color:var(--ink-600)}

/* now card */
.cc-now{background:var(--white);border:1px solid var(--hair);border-radius:6px;padding:24px 26px;box-shadow:0 6px 22px rgba(60,40,15,.07)}
.cc-now h3{margin:0 0 4px;font-size:26px}
.cc-months{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 18px}
.cc-months button{font:600 13.5px var(--font-body);min-width:48px;min-height:40px;padding:4px 8px;border:1.5px solid var(--line-500);border-radius:4px;background:var(--white);color:var(--ink-900);cursor:pointer;position:relative}
.cc-months button[aria-pressed="true"]{background:var(--brown-700);color:var(--cream-100);border-color:var(--brown-700)}
.cc-months button.today::after{content:"";position:absolute;right:4px;top:4px;width:7px;height:7px;border-radius:50%;background:var(--gold-500)}
.cc-months button:focus-visible{outline:3px solid var(--gold-500);outline-offset:2px}
.cc-nowgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.cc-nbox{border:1px solid var(--hair);border-radius:4px;padding:12px 14px;background:var(--cream-100)}
.cc-nbox h4{margin:0 0 6px;display:flex;align-items:center;gap:8px;font:600 15px var(--font-body)}
.cc-nbox h4 .sw{display:inline-grid;place-items:center;width:26px;height:22px;border-radius:3px;border:1px solid rgba(0,0,0,.25);font:700 12px var(--font-body)}
.cc-nbox ul{margin:0;padding-left:18px;font-size:14.5px}
.cc-nbox li{margin:2px 0}
.cc-nbox p{margin:0;font-size:14.5px;color:var(--ink-600)}
.cc-nowsum{margin:0 0 4px;font-size:17px;line-height:1.55}
.cc-nowfoot{margin:16px 0 0;font-size:15px}

/* year-at-a-glance strip */
.cc-year{display:grid;grid-template-columns:repeat(12,1fr);gap:3px;margin:8px 0 4px}
.cc-year div{text-align:center;font:600 12px var(--font-body);color:var(--ink-600)}
.cc-year i{display:block;height:34px;border-radius:3px;border:1px solid var(--hair);background:var(--sand-100);margin-top:3px;position:relative}
.cc-year i.l1{background:#d9c9ae}.cc-year i.l2{background:#a98a5c}.cc-year i.l3{background:#7a5a2c}.cc-year i.l4{background:#4A3019}
.cc-year i b{position:absolute;inset:0;display:grid;place-items:center;font:700 12px var(--font-body);color:#fff}
.cc-year i.l0 b,.cc-year i.l1 b{color:var(--ink-900)}
.cc-year .cur{color:var(--brown-900);text-decoration:underline;text-decoration-color:var(--gold-500);text-decoration-thickness:3px;text-underline-offset:4px}

/* plan tool */
.cc-plan{background:var(--white);border:1px solid var(--hair);border-radius:6px;padding:22px 24px}
.cc-plan .cc-bar{border:0;padding:0;margin:0 0 14px;background:none}
.cc-strip{display:grid;grid-template-columns:150px repeat(12,minmax(0,1fr));gap:3px;align-items:center;margin:4px 0;font-size:14px}
.cc-strip .h{font:600 12px var(--font-body);text-align:center;color:var(--ink-600)}
.cc-strip .h.cur{color:var(--brown-900);text-decoration:underline;text-decoration-color:var(--gold-500);text-decoration-thickness:3px;text-underline-offset:4px}
.cc-strip .lab{font-weight:600;padding-right:6px;line-height:1.25}
.cc-strip .lab small{display:block;font-weight:400;color:var(--ink-600);font-size:12px}
.cc-strip .b{height:30px;border-radius:3px;background:var(--cream-100);border:1px solid var(--hair)}
.cc-strip .b.on{background-color:var(--m-bg);border-color:var(--m-bg);background-image:conic-gradient(rgba(255,255,255,.16) 25%,transparent 0 50%,rgba(255,255,255,.16) 0 75%,transparent 0);background-size:8px 8px}
.cc-strip .b.lag{background-color:var(--c-bg);border-color:var(--c-bg);background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.24) 0 2px,transparent 2px 6px)}
.cc-strip .b.cur{outline:2px solid var(--gold-500);outline-offset:1px}
.cc-plan-out{margin:14px 0 0;padding:12px 16px;background:var(--sand-100);border-radius:4px;font-size:15.5px}
.cc-plan-out p{margin:0 0 6px}.cc-plan-out p:last-child{margin:0}
.cc-key{display:flex;gap:16px;flex-wrap:wrap;font-size:13.5px;color:var(--ink-600);margin:10px 0 0}
.cc-key span{display:inline-flex;align-items:center;gap:6px}
.cc-key i{width:22px;height:14px;border-radius:2px;display:inline-block}

.cc-fallback{margin:0}
.cc-src ol{padding-left:20px;font-size:14.5px}
.cc-src li{margin:6px 0;overflow-wrap:anywhere}
.cc-src .pub{color:var(--ink-600)}

@media (max-width:640px){
 .cc-bar{padding:12px}.cc-f{min-width:100%}.cc-actions{margin-left:0}
 .cc-grid col.rh{width:128px}
 table.cc-grid{min-width:640px;font-size:13px}
 .cc-rb{padding:7px 8px;min-height:52px}.cc-rb strong{font-size:12.5px}.cc-rb span{font-size:11.5px}
 .cc-grid thead th{font-size:11.5px;letter-spacing:0}
 .cc-cell .cc-l{font-size:10.5px;padding:2px 3px}
 .cc-now{padding:18px 14px}
 .cc-strip{grid-template-columns:70px repeat(12,minmax(0,1fr));gap:2px;font-size:12px}
 .cc-strip .h{font-size:9px}
 .cc-plan{padding:16px 12px}
 .cc-detail{padding:14px}.cc-detail dl{grid-template-columns:1fr;gap:2px}.cc-detail dt{margin-top:6px}
}

@media print{
 @page{size:A4 landscape;margin:12mm}
 *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
 .skip,.site-header,.site-footer,.gate,#gate,.subnav,.cc-bar,.cc-actions,.page-hero .btn-row,.band.dark,.cc-tip,.cc-months,.cc-plan,.cc-hint,.photo,.btn-row,footer,[data-nav]{display:none!important}
 body{background:#fff;font-size:11pt}
 .band,.band.alt,.band.tight{padding:12px 0;background:#fff}
 .page-hero{padding:8px 0;background:#fff}
 .reveal,.js .reveal{opacity:1!important;transform:none!important}
 .cc-wrap{overflow:visible;border:0}
 table.cc-grid{min-width:0;width:100%;font-size:9pt}
 .cc-grid thead th{position:static}.cc-grid tbody th{position:static}
 .cc-cell{height:26px}.cc-rb{min-height:0;padding:3px 6px}
 .cc-detail{display:none}
 .cc-sec,.cc-grid tr{break-inside:avoid}
 a{color:#000;text-decoration:none}
 .cc-src a::after{content:" (" attr(href) ")";font-size:8pt}
}

/* takeaway, at a glance, folds, origin marker (flow upgrade) */
.cc-take{padding-top:28px;padding-bottom:20px}
.cc-short{font:500 clamp(1.05rem,1.6vw,1.25rem)/1.5 var(--font-body);color:var(--ink-900);max-width:860px;margin:0 0 22px;padding-left:16px;border-left:3px solid var(--gold-500)}
.cc-glance{background:var(--white);border:1px solid var(--hair);border-radius:4px;padding:16px 20px}
.cc-glance .glance-h{font:600 12.5px var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-600);margin:0 0 10px}
.cc-glance ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px 22px}
.cc-glance li{display:flex;flex-direction:column;gap:2px;border-left:2px solid var(--hair);padding-left:12px}
.cc-glance strong{font-weight:600;color:var(--brown-700)}.cc-glance span{font-size:14.5px;color:var(--ink-700)}
@media(max-width:820px){.cc-glance ul{grid-template-columns:1fr 1fr}}@media(max-width:480px){.cc-glance ul{grid-template-columns:1fr}}
.cc-fold>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px}
.cc-fold>summary::-webkit-details-marker{display:none}
.cc-fold>summary::after{content:"+";font-size:1.6rem;line-height:1;color:var(--brown-700);flex:none}
.cc-fold[open]>summary::after{content:"\2212"}
.cc-fold>summary:focus-visible{outline:3px solid var(--gold-500);outline-offset:3px}
.cc-fold-t{display:flex;flex-direction:column;gap:4px}.cc-fold-t .eyebrow{margin:0}
.cc-fold-h{font:600 clamp(1.5rem,2.6vw,2rem)/1.2 var(--font-head)}
.cc-fold[open]>summary{margin-bottom:20px}
.cc-supk{display:inline-block;font:600 11px var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--brown-700);background:var(--sand-100);border:1px solid var(--gold-500);border-radius:3px;padding:1px 6px;margin-right:6px;vertical-align:middle}
.cc-legend .cc-supk{margin-right:8px}
.cc-grid tr.sup th{box-shadow:inset 3px 0 0 var(--gold-500)}
.cc-rb .cc-supk{display:inline-block;margin:3px 0 0;font-size:10px;padding:0 5px}
