:root{--ink:#25342B;--paper:#EDEFE6;--surface:#FBFCF8;--surface2:#F4F6EE;--line:#D7DBCD;--green:#3E6B4A;--green-deep:#2A4A33;--amber:#CC8729;--amber-soft:#F4E2BE;--rust:#B05031;--blue:#4A6D7C;--brown:#8A5A2B;--muted:#6B7468;--plant:#5B7A4E;--bloom:#9A5B8A;--shadow:0 1px 2px rgba(37,52,43,.06), 0 6px 18px rgba(37,52,43,.05)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.55;padding-bottom:64px}.wrap{max-width:880px;margin:0 auto;padding:0 18px}header{padding:34px 0 14px}.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--green);font-weight:600}h1{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:clamp(34px,7vw,52px);line-height:1.02;margin:6px 0 4px;letter-spacing:-.01em}.sub{color:var(--muted);font-size:15px;max-width:62ch}.strip{display:flex;gap:4px;overflow-x:auto;padding:14px 0 4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.strip::-webkit-scrollbar{display:none}.mo{flex:1 0 auto;min-width:52px;text-align:center;padding:9px 4px;border:1px solid var(--line);border-radius:10px;background:var(--surface);cursor:pointer;font-size:13px;font-weight:500;color:var(--muted);transition:.15s;-webkit-user-select:none;user-select:none}.mo b{display:block;font-family:Fraunces,serif;font-size:17px;color:var(--ink);font-weight:600}.mo:hover{border-color:var(--green)}.mo.now{background:var(--amber);border-color:var(--amber);color:#3a2b10}.mo.now b{color:#3a2b10}.mo.sel{border-color:var(--green-deep);background:var(--surface2);box-shadow:inset 0 0 0 1px var(--green-deep)}nav{display:flex;gap:6px;flex-wrap:wrap;margin:18px 0 4px;position:sticky;top:0;background:var(--paper);padding:10px 0;z-index:5}.tab{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:8px 15px;font-size:14px;font-weight:500;cursor:pointer;transition:.15s;font-family:inherit}.tab:hover{border-color:var(--green)}.tab.on{background:var(--green-deep);color:#fff;border-color:var(--green-deep)}section{display:none;animation:fade .25s ease}section.show{display:block}@keyframes fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.lead{font-family:Fraunces,serif;font-size:24px;font-weight:600;margin:18px 0 4px}.lead .em{font-style:italic;color:var(--green)}.chips{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0 4px}.chip{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:5px 12px;font-size:12.5px;font-weight:500;cursor:pointer;font-family:inherit}.chip.on{background:var(--green);color:#fff;border-color:var(--green)}.legend{display:flex;gap:10px 14px;flex-wrap:wrap;margin:10px 0 2px;font-size:12px;color:var(--muted)}.legend span{display:inline-flex;align-items:center;gap:5px}.dot{width:11px;height:11px;border-radius:3px;display:inline-block}.cathead{font-family:Fraunces,serif;font-weight:600;color:var(--green-deep);margin:24px 0 2px;text-transform:uppercase;font-size:13px;letter-spacing:.1em}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px 6px;margin:12px 0;box-shadow:var(--shadow)}.card h3{font-family:Fraunces,serif;font-size:19px;font-weight:600;margin:0 0 2px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.card .meta{font-size:12.5px;color:var(--muted);font-weight:500}.card.collapsible h3{cursor:pointer}.chev{margin-left:auto;color:var(--muted);transition:.2s;font-size:14px}.card.closed .chev{transform:rotate(-90deg)}.card.closed .body{display:none}.mgrid{display:grid;grid-template-columns:repeat(12,1fr);gap:3px;margin:10px 0 6px}.mcell{aspect-ratio:1/1;border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;background:var(--surface2);color:#b3b8aa;border:1px solid var(--line)}.mcell.t-fertilize,.mcell.t-water,.mcell.t-prune,.mcell.t-protect,.mcell.t-monitor,.mcell.t-plant,.mcell.t-bloom{color:#fff;border-color:transparent}.mcell.t-harvest{color:#3a2b10;border-color:transparent}.mcell.nowc{outline:2px solid var(--ink);outline-offset:1px}.task{display:flex;gap:11px;padding:10px 0;border-top:1px solid var(--line);align-items:flex-start}.task:first-child{border-top:none}.tag{flex:0 0 auto;font-size:10px;letter-spacing:.05em;text-transform:uppercase;font-weight:600;color:#fff;padding:3px 7px;border-radius:6px;margin-top:2px;min-width:70px;text-align:center}.t-fertilize{background:var(--green)}.t-water{background:var(--blue)}.t-prune{background:var(--brown)}.t-harvest{background:var(--amber);color:#3a2b10}.t-protect{background:var(--rust)}.t-monitor{background:var(--muted)}.t-plant{background:var(--plant)}.t-bloom{background:var(--bloom)}.task .txt{flex:1}.task .txt .amt{display:inline-block;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px;background:var(--amber-soft);color:#5c4310;padding:1px 7px;border-radius:5px;margin-top:4px}.when{font-size:12px;color:var(--muted);font-weight:500;margin-top:3px}.plant-pill{font-size:12px;color:var(--green-deep);background:var(--surface2);border:1px solid var(--line);padding:2px 8px;border-radius:999px;font-weight:500}.todoctl{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 12px}.todoctl .tab{padding:7px 13px;font-size:13px}.todoreset{margin-left:auto;border-color:#c58b86!important;color:#a04a43}.progwrap{display:flex;align-items:center;gap:10px;margin:0 0 6px}.progbar{flex:1;height:9px;background:var(--surface2);border:1px solid var(--line);border-radius:999px;overflow:hidden}.progbar>div{height:100%;background:var(--green);width:0;transition:width .2s}.todocat{font-family:Fraunces,serif;font-weight:600;color:var(--green-deep);margin:18px 0 6px;text-transform:uppercase;font-size:13px;letter-spacing:.1em}.todo{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);margin-bottom:7px;cursor:pointer;font-size:14px;line-height:1.45}.todo input{margin-top:3px;width:17px;height:17px;flex:0 0 auto;accent-color:var(--green)}.todo.done{background:var(--surface2);color:#8a917f}.todo.done span{text-decoration:line-through}.todo i{color:var(--green);font-style:normal;font-weight:600}.ftable{width:100%;border-collapse:collapse;margin:8px 0 4px;font-size:14px}.ftable th{text-align:left;font-weight:600;color:var(--green-deep);border-bottom:2px solid var(--line);padding:9px 8px;font-size:12px;letter-spacing:.04em;text-transform:uppercase}.ftable td{border-bottom:1px solid var(--line);padding:11px 8px;vertical-align:top}.ftable code{font-family:ui-monospace,Menlo,monospace;font-size:12px;background:var(--surface2);padding:1px 5px;border-radius:4px}.prodlink{color:var(--green-deep);font-weight:600;text-decoration:none;border-bottom:2px solid var(--amber-soft)}.prodlink:hover{border-bottom-color:var(--amber)}.prodtext{font-weight:600;color:var(--ink)}.buy{display:block;font-size:11.5px;color:var(--muted);font-weight:500;margin-top:4px}.buy a{color:var(--blue);text-decoration:underline}.scroller{overflow-x:auto;-webkit-overflow-scrolling:touch}.note{background:var(--surface2);border-left:3px solid var(--amber);border-radius:0 8px 8px 0;padding:11px 14px;font-size:13.5px;margin:14px 0;color:#46503f}.note b{color:var(--ink)}.empty{color:var(--muted);font-style:italic;padding:18px 0}footer{margin-top:34px;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}@media(max-width:520px){.tag{min-width:56px;font-size:9px}nav{position:static}.mcell{font-size:8px}}
