:root{color-scheme:light;--bg: #f4efe4;--paper: #fffdf8;--line: #ddd3c0;--text: #1d2621;--text-2: #46524b;--muted: #6b746e;--green: #1f3b33;--green-2: #2f6b57;--amber: #e9b44c;--amber-bg: #fbf0d6;--red: #a3341f;--serif: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;overflow-wrap:anywhere}a{color:var(--green-2)}:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app{max-width:1120px;margin:0 auto;padding:28px 18px 48px}.masthead{border-bottom:2px solid var(--green);padding-bottom:14px;margin-bottom:22px}.kicker{margin:0;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;color:var(--green-2);font-weight:700}h1{font-family:var(--serif);font-size:clamp(2rem,5vw,3rem);line-height:1.1;margin:4px 0 10px;color:var(--green)}.lede{max-width:68ch;margin:0 0 8px;color:var(--text-2)}.credit{margin:0 0 8px}.disclaimer{margin:0;display:inline-block;padding:6px 10px;border-left:4px solid var(--amber);background:var(--amber-bg);font-size:.9rem}.layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}aside{position:sticky;top:16px}@media(max-width:860px){.layout{grid-template-columns:1fr}aside{position:static;order:-1}}.group h2{font-family:var(--serif);font-size:1.3rem;margin:0 0 8px;color:var(--green)}.group+.group{margin-top:22px}.steps{list-style:none;margin:0;padding:0;display:grid;gap:10px}.step{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:12px 14px}.step.is-done{border-color:var(--green-2)}.step-head{display:flex;align-items:center;gap:10px}.step-title{flex:1;font-weight:650;cursor:pointer}.is-done .step-title{text-decoration:line-through;text-decoration-color:var(--green-2);color:var(--text-2)}.step-num{color:var(--muted);font-variant-numeric:tabular-nums}.box{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;width:22px;height:22px;margin:0;border:2px solid var(--green);border-radius:4px;background:#fff;display:grid;place-content:center;cursor:pointer}.box:after{content:"";width:6px;height:11px;border:solid #fff;border-width:0 3px 3px 0;transform:rotate(45deg) translate(-1px,-1px);visibility:hidden}.box:checked{background:var(--green)}.box:checked:after{visibility:visible}.tag{flex:none;font-size:.75rem;font-weight:650;padding:2px 8px;border-radius:999px;border:1px solid var(--line);color:var(--text-2);background:#fff}.effort-5min{background:#e3f1e9;border-color:#b7d8c5}.effort-30min{background:var(--amber-bg);border-color:#ecd6a0}.effort-afternoon{background:#f6e1da;border-color:#e3bcae}.quote{margin:8px 0 6px 32px;padding-left:10px;border-left:3px solid var(--line);font-family:var(--serif);color:var(--text)}.why{margin:0 0 0 32px;font-size:.9rem;color:var(--text-2)}.why-label{font-weight:700}.tiers{margin:10px 0 0 32px;padding:8px 10px 10px;border:1px dashed var(--line);border-radius:8px}.tiers legend{font-size:.8rem;font-weight:700;color:var(--green-2);padding:0 4px}.tier-options{display:grid;gap:4px}.tier-option{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:baseline;padding:4px 6px;border-radius:6px;cursor:pointer}.tier-option:has(input:checked){background:#eef5f1}.tier-option input{accent-color:var(--green);margin:0}.tier-name{font-weight:600;font-size:.92rem}.tier-note{grid-column:2;font-size:.8rem;color:var(--muted)}.panel{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.panel h2{font-family:var(--serif);font-size:1.15rem;margin:0 0 8px;color:var(--green)}.panel h2+.left-total,.panel .hint+h2{margin-top:14px}.meter svg{display:block;width:100%;height:14px}.meter-track{fill:#e7e0d1}.meter-fill{fill:var(--green-2)}.score-line{margin:8px 0 2px;font-variant-numeric:tabular-nums}.score-line strong{font-family:var(--serif);font-size:1.8rem;color:var(--green)}.hint{margin:4px 0 0;font-size:.8rem;color:var(--muted)}.left-total{margin:0 0 6px;font-weight:650}.left-list{margin:0;padding-left:18px;font-size:.9rem}.left-effort{color:var(--muted)}.actions{display:flex;gap:10px;margin-top:12px}button{font:inherit;font-weight:600;padding:8px 14px;border-radius:8px;border:1px solid var(--green);background:var(--green);color:#fff;cursor:pointer}button:hover{background:var(--green-2)}button.danger{background:#fff;color:var(--red);border-color:var(--red)}button.danger:hover{background:#fbeae6}.foot{margin-top:32px;font-size:.85rem;color:var(--muted)}@media print{@page{size:auto;margin:10mm}:root{background:#fff;font-size:8.5pt;line-height:1.3}*{print-color-adjust:exact;-webkit-print-color-adjust:exact}button,.actions,.lede,.disclaimer,.why,.hint,.tier-note,.tier-option:not(:has(input:checked)),.meter,.left-list{display:none!important}.app{max-width:none;padding:0}.masthead{margin-bottom:6px;padding-bottom:4px}h1{font-size:16pt;margin:0 0 2px}.credit{margin:0}.layout{display:block}aside{position:static}.panel{border:none;padding:0;margin-bottom:6px}.panel h2{display:inline;font-size:9pt;margin:0 6px 0 0}.score-line,.left-total{display:inline;margin:0 14px 0 0}.score-line strong{font-size:9pt}.group h2{font-size:10pt;margin:6px 0 2px}.group+.group{margin-top:0}.steps{gap:3px}.step{border:none;border-bottom:1px solid #ccc;border-radius:0;padding:2px 0 3px;break-inside:avoid}.box{width:12px;height:12px;border:1.5px solid #000;border-radius:2px;background:#fff}.box:after{width:3px;height:7px;border-color:#000;border-width:0 2px 2px 0}.box:checked{background:#fff}.is-done .step-title{text-decoration:none;color:#000}.tag{font-size:7pt;padding:0 5px;background:#fff!important;border-color:#999!important}.quote{margin:1px 0 0 22px;padding-left:6px;font-size:8pt}.tiers{margin:2px 0 0 22px;padding:0;border:none;display:flex;gap:4px;align-items:baseline}.tiers legend{float:left;padding:0;margin-right:4px}.tier-option{display:inline;padding:0;background:none!important}.tier-option input{display:none}.tier-name{font-size:8pt}a{color:#000}.foot{margin-top:6px;font-size:7pt}}
