:root{--bg: #f6f4ee;--card: #fffdf8;--ink: #1d2420;--muted: #5d665f;--line: #d9d4c7;--accent: #1f6b45;--accent-ink: #ffffff;--warn: #9c2f1c;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #14181a;--card: #1c2224;--ink: #ecebe4;--muted: #a2aaa3;--line: #323a3c;--accent: #5fbf8b;--accent-ink: #0d1a13;--warn: #f08a75}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}.page{max-width:640px;margin:0 auto;padding:24px 16px 48px}header{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:3px solid var(--ink);padding-bottom:12px}h1{font-size:1.6rem;line-height:1.15;margin:0;letter-spacing:-.02em}.tagline{margin:4px 0 0;color:var(--muted)}h2{font-size:1.15rem;margin:28px 0 10px}h3{font-size:.95rem;margin:20px 0 6px;color:var(--muted)}.lede{font-size:1.1rem;margin-top:24px}.how{padding-left:1.2em}.note,footer{color:var(--muted);font-size:.9rem}.row{display:flex;gap:8px}.row input{flex:1;min-width:0}input:not([type=checkbox]),textarea{width:100%;padding:12px;font:inherit;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:8px}textarea{resize:vertical;margin-bottom:8px}button{font:inherit;font-weight:600;padding:12px 18px;border:0;border-radius:8px;background:var(--accent);color:var(--accent-ink);cursor:pointer}button:disabled{opacity:.6;cursor:wait}button.link{background:none;color:var(--accent);padding:0;font-weight:500;text-decoration:underline}.stores{list-style:none;padding:0;display:grid;gap:8px}button.store{width:100%;text-align:left;background:var(--card);color:var(--ink);border:1px solid var(--line);display:grid;gap:2px;font-weight:400}button.store span{color:var(--muted);font-size:.9rem}.picked{margin:20px 0 0}.route{padding:0;list-style:none;counter-reset:stop;display:grid;gap:8px}.route li{counter-increment:stop;background:var(--card);border:1px solid var(--line);border-radius:8px}.route label{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;padding:12px;cursor:pointer}.route .title:before{content:counter(stop) ". ";font-weight:700}.route .where{grid-column:2;color:var(--accent);font-weight:700;font-variant-numeric:tabular-nums}.route li:has(input:checked){opacity:.5}.route li:has(input:checked) .title{text-decoration:line-through}.ask{margin-top:36px;border-top:1px solid var(--line)}.answer{background:var(--card);border-left:4px solid var(--accent);padding:12px;border-radius:0 8px 8px 0}.error{color:var(--warn);font-weight:600}.donate{margin:24px 0;padding:14px 16px;background:var(--card);border:1px dashed var(--line);border-radius:8px;color:var(--ink)}.donate p{margin:0}.donate-links{display:flex;gap:16px;margin-top:8px!important;font-weight:600}a{color:var(--accent)}footer{margin-top:48px;border-top:1px solid var(--line)}.list{list-style:none;padding:0;display:grid;gap:6px;margin-bottom:12px}.list li{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--card);border:1px solid var(--line);border-radius:8px}.map{position:relative;margin:0 0 16px;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.map img{display:block;width:100%;height:auto}.pin{position:absolute;transform:translate(-50%,-50%);min-width:22px;height:22px;padding:0 4px;border-radius:11px;background:var(--warn);color:#fff;font-size:12px;font-weight:700;line-height:22px;text-align:center;box-shadow:0 0 0 2px #fff}
