:root{--bg:#f6f2ea;--surface:#fffdf8;--surface-2:#efe8db;--ink:#221d17;--ink-2:#5a5146;--line:#ddd3c2;--accent:#8c2f22;--accent-ink:#fff;--link:#7a2a1e;--ed-2014:#2f5d8a;--ed-2024:#6a3d8f;--ed-a5e:#2f7a55;--shadow:0 1px 2px #28190a0f, 0 4px 16px #28190a0f;--radius:10px;--font-head:"Fraunces", Georgia, serif;--font-body:"Source Sans 3", system-ui, -apple-system, Segoe UI, sans-serif;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#14120f;--surface:#1d1a16;--surface-2:#26221d;--ink:#ece5d8;--ink-2:#b2a795;--line:#3a342c;--accent:#d27a62;--accent-ink:#1b0f0b;--link:#e39a83;--ed-2014:#7fb0e0;--ed-2024:#c19ce6;--ed-a5e:#7fd1a5;--shadow:0 1px 2px #0000004d, 0 4px 16px #00000040;color-scheme:dark}}:root[data-theme=dark]{--bg:#14120f;--surface:#1d1a16;--surface-2:#26221d;--ink:#ece5d8;--ink-2:#b2a795;--line:#3a342c;--accent:#d27a62;--accent-ink:#1b0f0b;--link:#e39a83;--ed-2014:#7fb0e0;--ed-2024:#c19ce6;--ed-a5e:#7fd1a5;--shadow:0 1px 2px #0000004d, 0 4px 16px #00000040;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font:17px/1.6 var(--font-body);margin:0}a{color:var(--link);text-underline-offset:2px}a:hover{text-decoration-thickness:2px}h1,h2,h3,h4{font-family:var(--font-head);margin:1.6em 0 .5em;font-weight:700;line-height:1.2}h1{margin-top:.3em;font-size:clamp(1.9rem,4vw,2.6rem)}h2{font-size:1.5rem}h3{font-size:1.2rem}img{max-width:100%}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.45rem .6rem}th{letter-spacing:.02em;color:var(--ink-2);font-size:.85rem;font-weight:700}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.skip{position:absolute;left:-999px}.skip:focus{background:var(--surface);z-index:10;padding:.5rem;top:1rem;left:1rem}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.wrap{max-width:860px;margin:0 auto;padding:0 16px}.wrap.wide{max-width:1200px}main.wrap{min-height:70vh;padding-top:1.5rem;padding-bottom:4rem}.site-header{background:var(--surface);border-bottom:1px solid var(--line);z-index:5;position:sticky;top:0}.bar{flex-wrap:wrap;align-items:center;gap:.9rem;max-width:1200px;margin:0 auto;padding:.55rem 16px;display:flex}.brand{color:var(--ink);font:700 1.15rem var(--font-head);white-space:nowrap;align-items:center;gap:.5rem;text-decoration:none;display:flex}.brand svg{color:var(--accent)}.main-nav{flex-wrap:wrap;gap:.2rem;display:flex}.main-nav a{color:var(--ink-2);border-radius:6px;padding:.3rem .6rem;font-size:.95rem;font-weight:600;text-decoration:none}.main-nav a:hover,.main-nav a[aria-current]{color:var(--ink);background:var(--surface-2)}.quick-search{flex:200px}input[type=search],input[type=text],select{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;width:100%;padding:.4rem .65rem;font-size:.95rem}select{cursor:pointer;width:auto}.theme-toggle{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:8px;padding:.25rem .55rem;font-size:1.1rem}@media (width<=720px){.brand{flex:1}.main-nav{flex-wrap:nowrap;order:3;width:100%;overflow-x:auto}.quick-search{flex-basis:100%;order:4}}.site-footer{border-top:1px solid var(--line);color:var(--ink-2);padding:1.5rem 0 2rem;font-size:.9rem}.lede{color:var(--ink-2);max-width:60ch;font-size:1.15rem}.crumbs{color:var(--ink-2);margin-bottom:.3rem;font-size:.9rem}.crumbs a{color:var(--ink-2)}.badge{letter-spacing:.03em;white-space:nowrap;vertical-align:middle;border:1px solid;border-radius:999px;padding:.08rem .45rem;font-size:.75rem;font-weight:700;display:inline-block}.badge.ed-2014{color:var(--ed-2014)}.badge.ed-2024{color:var(--ed-2024)}.badge.ed-A5E{color:var(--ed-a5e)}.badge.muted{color:var(--ink-2);font-weight:600}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem 1.2rem}.grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;display:grid}.tile{color:var(--ink);text-decoration:none;transition:transform .12s,border-color .12s;display:block}.tile:hover{border-color:var(--accent);transform:translateY(-2px)}.tile h3{margin:0 0 .25rem}.tile p{color:var(--ink-2);margin:0;font-size:.95rem}.tile .count{color:var(--accent);font-size:.85rem;font-weight:700}.note{border-left:3px solid var(--accent);background:var(--surface-2);color:var(--ink-2);border-radius:0 8px 8px 0;padding:.7rem 1rem}.prose{overflow-wrap:anywhere}.prose table{margin:1rem 0;font-size:.95rem;display:block;overflow-x:auto}.prose p{margin:.6rem 0}.prose h1,.prose h2,.prose h3,.prose h4{margin-top:1.2em}.prose ul,.prose ol{padding-left:1.3rem}.meta{grid-template-columns:max-content 1fr;gap:.25rem 1rem;margin:1rem 0;display:grid}.meta dt{color:var(--ink-2);font-weight:700}.meta dd{margin:0}.source-line{color:var(--ink-2);border-top:1px solid var(--line);margin-top:2rem;padding-top:.8rem;font-size:.9rem}.versions{flex-wrap:wrap;gap:.4rem;margin:.5rem 0;display:flex}.versions a{text-decoration:none}.subtitle{color:var(--ink-2);margin-top:-.3rem;font-style:italic}.filters{flex-wrap:wrap;align-items:center;gap:.5rem;margin:1rem 0;display:flex}.filters input[type=search]{flex:240px;width:auto}.list-count{color:var(--ink-2);margin:.3rem 0;font-size:.9rem}.table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}.entry-table td{font-size:.95rem}.entry-table td:first-child a{font-weight:600;text-decoration:none}.entry-table td:first-child a:hover{text-decoration:underline}.entry-table th button{all:unset;cursor:pointer}.entry-table th button:after{content:" ↕";opacity:.35}.entry-table tbody tr:hover{background:var(--surface-2)}.entry-table .src{color:var(--ink-2);white-space:nowrap}.more-btn{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:8px;margin:1rem auto;padding:.5rem 1.2rem;font-weight:700;display:block}.statblock{background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--accent);border-radius:var(--radius);box-shadow:var(--shadow);padding:1rem 1.2rem}.statblock hr{border:0;border-top:2px solid var(--accent);opacity:.5;margin:.8rem 0}.statblock h2{border-bottom:1px solid var(--line);color:var(--accent);margin:1.1rem 0 .5rem;padding-bottom:.2rem;font-size:1.15rem}.abilities{text-align:center;grid-template-columns:repeat(6,1fr);gap:.3rem;display:grid}.abilities div{background:var(--surface-2);border-radius:8px;padding:.35rem 0}.abilities b{letter-spacing:.05em;font-size:.8rem;display:block}@media (width<=520px){.abilities{grid-template-columns:repeat(3,1fr)}}.feature-name{font-style:italic;font-weight:700}.hero{padding:2.5rem 0 1.5rem}.hero h1{margin-bottom:.3rem;font-size:clamp(2.3rem,6vw,3.6rem)}.hero form{gap:.5rem;max-width:560px;margin-top:1.2rem;display:flex}.hero input{padding:.7rem 1rem;font-size:1.1rem}.btn{background:var(--accent);color:var(--accent-ink);font-weight:700;font:inherit;cursor:pointer;border:0;border-radius:8px;padding:.55rem 1.1rem;font-weight:700;text-decoration:none;display:inline-block}.doors{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin:2rem 0;display:grid}.doors .card h2{margin:0 0 .4rem}.doors ul{margin:.5rem 0 0;padding-left:1.1rem}.soon{color:var(--ink-2);border:1px dashed var(--ink-2);border-radius:999px;margin-left:.3rem;padding:0 .4rem;font-size:.75rem;font-weight:700}.results{margin:1rem 0;padding:0;list-style:none}.results li{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:.6rem;padding:.55rem .2rem;display:flex}.results li a{font-weight:600}.results .hint{color:var(--ink-2);font-size:.9rem}
