:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#203d32;background:#f4f3ed;font-synthesis:none;--bg: #f4f3ed;--card: #fffefa;--ink: #203d32;--muted: #66776e;--line: #dfe4db;--accent: #285c46;--soft: #e7eddf;color-scheme:light}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,.button{min-height:46px;cursor:pointer;border:0;border-radius:14px;background:var(--accent);color:#fff;padding:12px 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;text-decoration:none;margin:4px 0}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #b98637;outline-offset:3px}.secondary{background:var(--soft);color:var(--ink)}.danger{background:#f9e8e2;color:#8e3929}.app{min-height:100dvh;background:var(--bg);color:var(--ink)}header{padding:calc(16px + env(safe-area-inset-top)) 22px 16px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:1.4px;max-width:1000px;margin:auto}header small{display:block;font-size:11px;letter-spacing:0;color:var(--muted);margin-top:4px}.brand{font-family:Georgia,serif;font-size:24px;letter-spacing:-2px;border:1px solid var(--line);border-radius:50%;width:48px;height:48px;display:grid;place-items:center}.status{margin-left:auto;font-size:10px;letter-spacing:0;color:var(--muted)}main{max-width:720px;margin:auto;padding:28px 20px calc(110px + env(safe-area-inset-bottom))}.eyebrow{text-transform:uppercase;letter-spacing:1.5px;font-size:10px;font-weight:700;color:var(--muted)}h1{font-family:Georgia,serif;font-size:34px;font-weight:400;line-height:1.15;margin:12px 0 28px;letter-spacing:-1px}h2{font-size:20px;font-weight:600;line-height:1.25;margin:0 0 12px}p{line-height:1.6;font-size:14px}small{font-size:12px;line-height:1.5;display:block;color:var(--muted)}section{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:22px;margin:16px 0}.hero{background:#234c3b;color:#fffefa;border-color:transparent;padding:28px}.hero h2{font-family:Georgia,serif;font-size:38px;font-weight:400;margin:14px 0}.hero .eyebrow,.hero small{color:#c7d9ca}.hero button{background:#d9e9c8;color:#173d2d}.row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.week>div{display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 0;border-radius:30px}.week .selected{background:var(--soft)}.week span{font-size:15px;color:var(--accent)}.muted{color:var(--muted);font-size:13px}.lead{font-family:Georgia,serif;font-size:23px}.tag{display:inline-block;color:var(--muted);font-size:11px;background:var(--soft);padding:6px 9px;border-radius:8px}label{display:block;font-size:13px;font-weight:600;margin:14px 0}input:not([type=checkbox]),select,textarea{display:block;width:100%;min-height:48px;padding:11px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font-size:16px;margin-top:6px}input[type=range]{padding:0;accent-color:var(--accent)}textarea{min-height:85px;resize:vertical}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.check{display:flex;align-items:center;gap:10px;font-weight:400;min-height:40px;margin:2px 0}.check input{width:22px;height:22px;accent-color:var(--accent)}fieldset{border:1px solid var(--line);border-radius:12px;margin:18px 0;padding:12px}legend{font-size:13px;font-weight:600}.button input[type=file]{display:none}.button{margin-right:8px}.notice{padding:16px;border-radius:12px;background:#fff0d3;color:#5b421e;font-size:14px;line-height:1.5}nav{position:fixed;bottom:0;left:0;right:0;background:var(--card);border-top:1px solid var(--line);display:flex;justify-content:space-around;padding:8px 8px calc(8px + env(safe-area-inset-bottom));z-index:3}nav button{display:flex;flex:1;flex-direction:column;background:transparent;color:var(--muted);gap:5px;font-size:10px;font-weight:500;padding:8px 2px;margin:0;min-height:54px;max-width:130px}nav button[aria-current=page]{background:var(--soft);color:var(--accent)}footer{font-size:10px;text-align:center;color:var(--muted);padding:25px 0}.segmented{display:flex;gap:6px}.segmented button{flex:1}.timer{font-variant-numeric:tabular-nums;font-size:26px;padding:16px 0}.modal{position:fixed;inset:0;background:#13291ecc;display:flex;align-items:center;justify-content:center;z-index:5;padding:calc(15px + env(safe-area-inset-top)) 15px calc(15px + env(safe-area-inset-bottom))}.modal section{width:100%;max-width:560px;max-height:90dvh;overflow:auto;overscroll-behavior:contain}.library{display:flex;align-items:flex-start;flex-direction:column;width:100%;text-align:left}details{border-bottom:1px solid var(--line);padding:12px 0}summary{cursor:pointer;min-height:32px;font-size:14px}a{color:var(--accent);font-size:13px}figure{margin:16px 0;color:var(--accent)}figure svg{width:100%;height:90px}figcaption{font-size:12px;color:var(--muted)}[data-theme=dark]{--bg: #16241e;--card: #1d3027;--ink: #e7eee5;--muted: #adbfb2;--line: #34483b;--accent: #accea8;--soft: #304738;color-scheme:dark}[data-theme=dark] button:not(.secondary):not(.danger){color:#173d2d}[data-theme=dark] nav button{color:var(--muted)}@media(prefers-color-scheme:dark){[data-theme=system]{--bg: #16241e;--card: #1d3027;--ink: #e7eee5;--muted: #adbfb2;--line: #34483b;--accent: #accea8;--soft: #304738;color-scheme:dark}[data-theme=system] button:not(.secondary):not(.danger){color:#173d2d}[data-theme=system] nav button{color:var(--muted)}}@media(min-width:760px){main{padding-top:40px}h1{font-size:44px}.hero{padding:36px}nav{justify-content:center;gap:20px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.choice-list{display:grid;gap:8px}.choice{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;min-height:52px;font-weight:500}.choice:has(input:checked){background:var(--soft);border-color:var(--accent)}.choice input{width:22px!important;min-height:22px!important;margin:0!important;accent-color:var(--accent)}.setup>fieldset{border:0;padding:0}.setup h2{margin-top:12px}.proposal{padding:18px;border-radius:16px;background:var(--soft)}.install-help{margin:16px 4px;padding:12px 0}.install-help summary{font-weight:600}
