:root{--s1: .5rem;--s2: 1rem;--s3: 1.5rem;--s4: 2rem;--s5: 3rem;--s6: 4rem;--maxw: 760px;--ink: #241c15;--mute: #66584d;--line: #eadfd5;--accent: #c2410c;--accent-strong: #9a3412;--wash: #faf6f1;--card: #ffffff}@media(prefers-color-scheme:dark){:root{--ink: #ece4dc;--mute: #b3a396;--line: #3d332b;--accent: #fb923c;--accent-strong: #fdba74;--wash: #191410;--card: #221b16}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);line-height:1.6;font-size:1rem;background:var(--wash)}main{max-width:var(--maxw);margin:0 auto;padding:0 var(--s2) var(--s6)}h1{font-size:2.25rem;line-height:1.15;font-weight:800;letter-spacing:-.015em;margin:var(--s5) 0 var(--s2)}h2{font-size:1.375rem;line-height:1.3;font-weight:700;margin:var(--s5) 0 var(--s1)}p{margin:var(--s1) 0 var(--s2)}.lead{font-size:1.125rem;color:var(--mute);max-width:56ch}.muted{color:var(--mute);font-size:.875rem}a{color:var(--accent-strong);text-decoration:underline;text-underline-offset:2px}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}pre,code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}pre{background:var(--card);border:1px solid var(--line);padding:var(--s2);overflow:auto;border-radius:8px;font-size:.85rem;margin:var(--s2) 0}code{font-size:.9em}table{width:100%;border-collapse:collapse;margin:var(--s2) 0;font-size:.92rem}th{text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;color:var(--mute)}th,td{text-align:left;padding:.55rem .5rem;border-bottom:1px solid var(--line);vertical-align:top}details{margin:var(--s1) 0;border:1px solid var(--line);border-radius:8px;padding:var(--s1) var(--s2);background:var(--card)}summary{cursor:pointer;font-weight:600;padding:.25rem 0}nav.top{background:var(--card);border-bottom:1px solid var(--line)}nav.top>div{max-width:var(--maxw);margin:0 auto;padding:0 var(--s2);display:flex;align-items:center;gap:var(--s1);flex-wrap:wrap}nav.top a{display:inline-flex;align-items:center;min-height:44px;padding:0 .6rem;text-decoration:none;color:var(--mute);font-size:.95rem}nav.top a:hover{color:var(--accent-strong)}nav.top a.brand{font-weight:800;font-size:1.05rem;color:var(--ink);gap:.5rem;padding-left:0;margin-right:auto}nav.top a.gh{color:var(--mute);padding:0 .5rem}nav.top a.gh:hover{color:var(--ink)}footer.site{border-top:1px solid var(--line);margin-top:var(--s6);background:var(--card)}footer.site>div{max-width:var(--maxw);margin:0 auto;padding:var(--s3) var(--s2);font-size:.875rem;color:var(--mute);display:flex;gap:var(--s2);flex-wrap:wrap;align-items:center}footer.site a{color:var(--mute)}footer.site a:hover{color:var(--accent-strong)}.btn,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 var(--s3);border-radius:8px;font-weight:600;font-size:1rem;text-decoration:none;cursor:pointer;border:0}.btn{background:var(--accent);color:#fff}.btn:hover{background:var(--accent-strong);color:#fff}@media(prefers-color-scheme:dark){.btn,.btn:hover{color:#1c0d02}}.btn-ghost{background:transparent;color:var(--accent-strong);border:1.5px solid var(--line)}.btn-ghost:hover{border-color:var(--accent)}.actions{display:flex;gap:var(--s2);flex-wrap:wrap;margin:var(--s3) 0}.stats{display:flex;gap:var(--s4);flex-wrap:wrap;margin:var(--s3) 0}.stats b{display:block;font-size:1.75rem;font-weight:800;line-height:1.1}.stats span{font-size:.8125rem;text-transform:uppercase;letter-spacing:.05em;color:var(--mute)}input[type=text],textarea,select{width:100%;padding:.65rem .7rem;font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:8px}label{font-weight:600;font-size:.92rem;display:block;margin:var(--s2) 0 .3rem}.pill{display:inline-block;font-size:.72rem;font-weight:600;padding:.15rem .5rem;border-radius:99px;background:var(--card);color:var(--accent-strong);border:1px solid var(--line);text-transform:uppercase;letter-spacing:.03em}ul.criteria{list-style:none;padding:0;margin:var(--s2) 0}ul.criteria li{padding:.45rem 0 .45rem 1.4rem;position:relative;border-bottom:1px solid var(--line)}ul.criteria li:before{content:"";position:absolute;left:0;top:.85rem;width:.55rem;height:.55rem;border-radius:2px;background:var(--accent)}ul.criteria li.excluded:before{background:var(--line)}ul.criteria li.excluded{color:var(--mute)}
