
:root{--paper:#F4EFE6;--card:#FBF8F2;--ink:#1B1A17;--muted:#6E675C;--rule:#D9CFBE;--gold:#B8893B;--pos:#2F6B3A;--neg:#9B2F23;--warn:#8A5A12}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif}
h1,h2,.brand,.big{font-family:"EB Garamond",Georgia,serif;font-weight:600;letter-spacing:.01em}
h1{font-size:1.9rem;margin:.2rem 0 0}h2{font-size:1.2rem;margin:0 0 .6rem;border-bottom:1px solid var(--gold);padding-bottom:.25rem}
.top{border-bottom:1px solid var(--rule);padding:12px 16px;display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;justify-content:space-between}
.brand{font-size:1.35rem}.brand span{font-family:-apple-system,Helvetica,Arial,sans-serif;font-size:.72rem;color:var(--muted);
 text-transform:uppercase;letter-spacing:.12em;margin-left:.5rem;font-weight:500}
nav{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center}nav a{color:var(--ink);text-decoration:none;font-size:.92rem;padding:2px 0;border-bottom:2px solid transparent}
nav a.on{border-bottom-color:var(--gold)}nav form.out{margin:0}
nav form.out button{background:none;border:1px solid var(--rule);color:var(--muted);padding:2px 10px;font-size:.85rem;border-radius:2px;cursor:pointer}
main{max-width:1200px;margin:0 auto;padding:12px 16px 32px}.stamp{color:var(--muted);font-size:.85rem;margin:.2rem 0 1rem}
.card{background:var(--card);border:1px solid var(--rule);padding:14px 16px;margin:0 0 16px;border-radius:2px}
.narrow{max-width:420px;margin:24px auto}
.grid4,.grid2{display:grid;gap:12px;grid-template-columns:1fr}.grid4 .card,.grid2 .card{margin:0}
@media(min-width:620px){.grid4,.grid2{grid-template-columns:1fr 1fr}}@media(min-width:1000px){.grid4{grid-template-columns:repeat(4,1fr)}}
.grid4{margin-bottom:10px}.big{font-size:2rem;margin:0;line-height:1.1}.cap{margin:0 0 .5rem;color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}
dl{display:grid;grid-template-columns:1fr auto;gap:2px 10px;margin:0}dt{color:var(--muted);font-size:.88rem}dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.pos{color:var(--pos)}.neg{color:var(--neg)}.warn{color:var(--warn)}.muted{color:var(--muted)}
.note{color:var(--muted);font-size:.84rem}.lead{font-size:1.05rem}.small{font-size:.78rem;color:var(--muted)}
.tabs{gap:6px;margin-bottom:10px}.tabs a{border:1px solid var(--rule);padding:2px 10px;border-radius:2px;font-size:.85rem}.tabs a.on{border-color:var(--gold);background:#F1E6D2}
.funnel{list-style:none;margin:0;padding:0}.funnel li{display:grid;grid-template-columns:5.5rem 1fr 4rem;grid-template-areas:"n lbl conv" "bar bar bar";gap:0 8px;padding:6px 0;border-bottom:1px solid var(--rule)}
.funnel .n{grid-area:n;font-weight:700;font-variant-numeric:tabular-nums}.funnel .lbl{grid-area:lbl}.funnel .conv{grid-area:conv;text-align:right;color:var(--muted)}
.funnel .bar{grid-area:bar}.bar{width:100%;height:6px;display:block;margin-top:4px}.bar .bg{fill:#E9E0D0}.bar .fg{fill:var(--gold)}
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
table{border-collapse:collapse;width:100%;font-size:.86rem;font-variant-numeric:tabular-nums}
th{text-align:left;font-weight:600;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--gold);padding:6px 8px;white-space:nowrap}
td{border-bottom:1px solid var(--rule);padding:6px 8px;vertical-align:top}table.wide td{white-space:nowrap}table.wide td:last-child{white-space:normal;min-width:14rem}
.sug{font-weight:700}.tag{font-size:.7rem;border:1px solid var(--rule);padding:0 4px;color:var(--muted)}
.counts{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px 18px}
.chart{position:relative;width:100%;min-height:220px}
form label{display:block;margin:0 0 12px;font-size:.9rem}input{display:block;width:100%;margin-top:4px;padding:10px;font-size:1rem;border:1px solid var(--rule);background:#fff;border-radius:2px;color:var(--ink)}
button[type=submit]{background:var(--ink);color:var(--paper);border:0;padding:10px 18px;font-size:1rem;border-radius:2px;cursor:pointer}
nav form.out button[type=submit]{background:none;color:var(--muted);border:1px solid var(--rule);padding:2px 10px;font-size:.85rem}
.err{color:var(--neg);font-weight:600}.mono{font-family:ui-monospace,Menlo,monospace;word-break:break-all}.qr{max-width:240px;margin:8px 0}.qr svg{width:100%;height:auto;background:#fff}
footer{color:var(--muted);font-size:.78rem;text-align:center;padding:16px;border-top:1px solid var(--rule)}
