:root{--paper:#f7f5f0;--card:#fff;--card-sunk:#f4f0e8;--ink:#241f1c;--ink-soft:#57514a;--ink-faint:#857f76;--line:#e3ded3;--accent:#7a1428;--gold:#c8a84b;--flag:#a8471c;--caution:#b8923a;--mine-bg:#f9f0f1;--shadow:0 1px 2px #241f1c0d, 0 12px 30px -18px #241f1c33;--serif:Georgia, "Times New Roman", serif;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}.wrap{max-width:960px;margin:0 auto;padding:clamp(20px,4vw,44px) 20px 64px}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 10px;font-size:12px;font-weight:600}h1{font-family:var(--serif);text-wrap:balance;letter-spacing:-.01em;margin:0 0 12px;font-size:clamp(28px,5.4vw,42px);font-weight:600;line-height:1.08}.dek{color:var(--ink-soft);max-width:60ch;margin:0 0 18px;font-size:17px}.stamp{color:var(--ink-soft);border:1px solid var(--line);background:var(--card);border-radius:999px;align-items:center;gap:7px;padding:5px 12px;font-size:12.5px;display:inline-flex}.stamp b{color:var(--ink);font-weight:600}.dot{background:var(--accent);border-radius:50%;width:7px;height:7px}.card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;margin-top:20px;padding:clamp(18px,3vw,26px)}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:4px;display:flex}.card-title{font-family:var(--serif);letter-spacing:-.005em;margin:0;font-size:21px;font-weight:600}.card-note{color:var(--ink-soft);margin:2px 0 10px;font-size:13px}.card-note b{color:var(--ink);font-weight:600}.kicker{letter-spacing:.13em;text-transform:uppercase;color:var(--ink-faint);font-size:11.5px;font-weight:600}.picker{flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 14px;display:flex}.chip{font-family:var(--sans);color:var(--ink-soft);background:var(--card-sunk);border:1px solid var(--line);cursor:pointer;border-radius:999px;padding:6px 13px;font-size:12.5px;font-weight:600;transition:background .15s,color .15s}.chip[aria-pressed=true]{background:color-mix(in srgb, var(--accent) 10%, var(--card));color:var(--accent);border-color:color-mix(in srgb, var(--accent) 45%, var(--line))}.chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chip.lock{cursor:default}.chip.lock[aria-pressed=true]{background:var(--accent);color:#fff;border-color:var(--accent)}.chip-all{color:var(--accent);text-underline-offset:3px;background:0 0;border-color:#0000;padding:6px;text-decoration:underline}.chip-all[hidden]{display:none}.legend{color:var(--ink-soft);flex-wrap:wrap;gap:14px;margin:0 0 10px;font-size:12px;display:flex}.legend .flag-ico{font-size:10px}.tscroll{overflow-x:auto}table.cmp{border-collapse:collapse;width:100%;min-width:780px;font-size:13.5px}.cmp th,.cmp td{text-align:right;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;white-space:nowrap;padding:8px 10px}.cmp thead th{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);border-bottom:1px solid var(--line);vertical-align:bottom;font-size:11px;font-weight:600;line-height:1.35}.cmp thead th .lim{letter-spacing:0;text-transform:none;color:var(--ink-faint);font-weight:500;display:block}.cmp th:first-child,.cmp td:first-child{text-align:left;background:var(--card);z-index:1;position:sticky;left:0}.cmp tbody tr:hover td,.cmp tbody tr:hover td:first-child{background:color-mix(in srgb, var(--card-sunk) 55%, var(--card))}.cmp tr.mine td{background:var(--mine-bg);font-weight:600}.cmp tr.mine td:first-child,.cmp tr.mine:hover td,.cmp tr.mine:hover td:first-child{background:var(--mine-bg)}.cmp tr[hidden]{display:none}.town{flex-direction:column;gap:1px;min-width:138px;display:flex}.town .nrow{align-items:center;gap:5px;display:flex}.town .cty{color:var(--ink-faint);font-size:11px;font-weight:400}.tname{color:inherit;border-bottom:1px dotted var(--line);font-weight:500;text-decoration:none}tr.mine .tname{color:var(--accent);border-bottom-color:#0000;font-weight:700}.tname:hover{color:var(--accent);border-bottom-color:var(--accent)}.tname .ext{color:var(--ink-faint);font-size:10px}.tname:hover .ext{color:var(--accent)}.tag{letter-spacing:.08em;text-transform:uppercase;background:var(--gold);color:var(--ink);border-radius:5px;padding:2px 6px;font-size:9.5px;font-weight:700}.cflag{color:var(--ink);border-radius:6px;align-items:baseline;gap:5px;padding:1px 7px;font-weight:600;display:inline-flex}.cflag .flag-ico{font-size:9.5px}.cflag.viol{background:color-mix(in srgb, var(--flag) 14%, transparent)}.cflag.viol .flag-ico{color:var(--flag)}.cflag.atal{background:color-mix(in srgb, var(--caution) 16%, transparent)}.cflag.atal .flag-ico{color:var(--caution)}.nd{color:var(--ink-soft);font-weight:600}.nr{color:var(--ink-faint);font-style:italic;font-weight:400}.fnmark{color:var(--accent);margin-left:2px;font-weight:700;text-decoration:none}.fnote{color:var(--ink-faint);border-top:1px solid var(--line);max-width:76ch;margin:14px 0 0;padding-top:12px;font-size:12px;line-height:1.65}.fnote b{color:var(--ink-soft)}.fnote a{color:var(--accent);text-decoration:underline}.fnote .fn-compact{display:none}.strip .lead-in{color:var(--ink-soft);max-width:66ch;margin:4px 0 14px;font-size:14px}.strip .lead-in b{color:var(--ink)}.vrow{border-top:1px solid var(--line);grid-template-columns:148px 1fr;align-items:baseline;gap:12px;padding:9px 0;font-size:13.5px;display:grid}.vrow .vtown{font-weight:600}.vrow.mine .vtown{color:var(--accent);font-weight:700}.vrow .vwhat{color:var(--ink-soft);line-height:1.55}.vrow .vwhat b{color:var(--ink);font-weight:600}.vnone{color:var(--ink-faint);border-top:1px solid var(--line);margin:12px 0 0;padding-top:12px;font-size:12.5px;line-height:1.6}.vnone b{color:var(--ink-soft);font-weight:600}.foot{color:var(--ink-faint);margin-top:26px;font-size:12.5px;line-height:1.65}.foot p{margin:0 0 8px}.foot b{color:var(--ink-soft)}body.is-compact>.wrap>header,body.is-compact .picker,body.is-compact .strip,body.is-compact .foot{display:none}body.is-compact .wrap>.card:first-of-type{margin-top:0}body.is-compact .fnote .fn-full{display:none}body.is-compact .fnote .fn-compact{display:inline}@media (width<=480px){.vrow{grid-template-columns:1fr;gap:2px}.cmp th,.cmp td{padding:7px 8px}}
