:root{--bg:#f6f1e7;--card:#fffdf8;--ink:#1f2a24;--muted:#6b6760;--line:#e8dfcc;--green:#2f6b3a;--green-deep:#1f4d2b;--gold:#f2c14e;--on-green:#fff;--tint:#eaf3de}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);margin:0;font:17px/1.6 Georgia,Times New Roman,serif}a{color:var(--green)}h1,h2,h3,.brand,.btn,.chip,.chips a{letter-spacing:-.01em;font-family:Arial Black,Arial Bold,Arial,sans-serif;font-weight:900}main,footer,.bar{max-width:1120px;margin:0 auto;padding:0 16px}.top{z-index:20;backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#f6f1e7f0;position:sticky;top:0}.bar{align-items:center;gap:14px;padding-block:10px;display:flex}.brand{color:var(--ink);white-space:nowrap;align-items:center;gap:8px;text-decoration:none;display:flex}.mono{background:var(--green);color:var(--on-green);border-radius:8px;padding:2px 7px;font-size:.9rem}.search{flex:1;max-width:460px}.search input,input[type=search]{border:1.5px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:999px;padding:10px 14px;font:16px Arial,sans-serif}.search input:focus,input[type=search]:focus{outline:2px solid var(--green);border-color:#0000}.links{align-items:center;gap:18px;margin-left:auto;display:flex}.links a{color:var(--ink);font:700 .92rem Arial,sans-serif;text-decoration:none}footer{border-top:1px solid var(--line);color:var(--muted);margin-top:56px;padding-block:24px 96px;font-size:.9rem}footer nav{flex-wrap:wrap;gap:6px 18px;display:flex}footer a{color:var(--ink);text-decoration:none}.soc{gap:10px;margin:18px 0 4px;padding:0;list-style:none;display:flex}.soc a{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:40px;height:40px;transition:all .2s;display:grid}.soc a:hover{background:var(--green-deep);transform:translateY(-2px)}.soc svg{width:18px;height:18px}h1{margin:18px 0 10px;font-size:clamp(1.8rem,5vw,2.8rem);line-height:1.08}h2{margin:44px 0 14px;font-size:1.35rem}.lede{color:var(--muted);max-width:62ch;font-size:1.1rem}.muted{color:var(--muted)}.prose{max-width:68ch}.crumbs{color:var(--muted);margin:12px 0 0;font:.88rem Arial,sans-serif}.crumbs a{color:var(--muted)}[hidden]{display:none!important}.grid{grid-template-columns:repeat(auto-fill,minmax(156px,1fr));align-items:end;gap:24px 18px;display:grid}.shelf{scroll-snap-type:x mandatory;scrollbar-width:thin;grid-auto-columns:minmax(140px,164px);grid-auto-flow:column;align-items:end;gap:18px;padding:6px 2px 16px;display:grid;overflow-x:auto}.tile{scroll-snap-align:start;color:var(--ink);align-content:end;gap:7px;text-decoration:none;display:grid}.tile img{background:var(--line);border-radius:4px;width:100%;height:auto;transition:transform .25s,box-shadow .25s;box-shadow:0 3px 12px #1f2a242e}.tile:hover img{transform:translateY(-6px);box-shadow:0 12px 24px #1f2a2438}.tile b{font:700 .92rem/1.28 Arial,sans-serif}.tile small{color:var(--muted);font:.78rem Arial,sans-serif}.tag{background:var(--tint);color:#27500a;border-radius:999px;margin:0 4px 4px 0;padding:3px 9px;font:700 11px Arial,sans-serif;display:inline-block}.chips{scrollbar-width:none;gap:8px;margin:0;padding:4px 0 10px;list-style:none;display:flex;overflow-x:auto}.chips a,.chip{white-space:nowrap;border:1.5px solid var(--green);color:var(--green);cursor:pointer;background:0 0;border-radius:999px;flex:none;padding:7px 15px;font-size:.88rem;text-decoration:none;display:inline-block}.chips a:hover,.chip:hover,.chip.on{background:var(--green);color:var(--on-green)}.btn{background:var(--green);color:var(--on-green);cursor:pointer;border:0;border-radius:10px;padding:11px 18px;font-size:.95rem;text-decoration:none;display:inline-block}.btn:hover{background:var(--green-deep)}.btn.alt{color:var(--green);border:2px solid var(--green);background:0 0}.btn.small{padding:7px 12px;font-size:.82rem}.tabbar{display:none}@media (width<=860px){.links{display:none}.tabbar{z-index:30;border-top:1px solid var(--line);padding:7px 0 calc(7px + env(safe-area-inset-bottom));background:#fff;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar a{color:var(--muted);justify-items:center;gap:1px;min-width:64px;font:700 11px Arial,sans-serif;text-decoration:none;display:grid}.tabbar a span{font-size:20px;line-height:1.1}.tabbar a.on{color:var(--green)}.brand span:last-child{display:none}}
