@font-face{font-family:Alegreya;font-style:normal;font-weight:400 900;font-display:swap;src:url(/assets/alegreya-BG9rTJo4.woff2) format("woff2")}@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/alegreya-sans-400-DtLlO8BS.woff2) format("woff2")}@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/alegreya-sans-500-DS713u5J.woff2) format("woff2")}@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/alegreya-sans-700-DEbcy2sF.woff2) format("woff2")}@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/assets/alegreya-sans-800-CpHsWMQ0.woff2) format("woff2")}:root{--fs-100: .75rem;--fs-200: .8125rem;--fs-300: .875rem;--fs-400: .9375rem;--fs-500: 1rem;--fs-600: 1.125rem;--fs-700: 1.75rem;--fs-800: 2rem;--display: "Alegreya Sans", "Trebuchet MS", sans-serif;--body: Alegreya, Georgia, "Times New Roman", serif;--code: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;color-scheme:light dark;--ground: light-dark(#ece4d1, #14110d);--surface: light-dark(#f8f3e6, #1e1a14);--sunken: light-dark(#e2d8c0, #100e0a);--ink: light-dark(#2b241a, #ece3ce);--muted: light-dark(#675e4d, #9d917a);--rule: light-dark(#d5c9ae, #362f24);--edge: light-dark(#8d7849, #72644c);--tile: light-dark(#201c16, #241e17);--tile-edge:light-dark(#0a0806, #0b0907);--tile-ink: light-dark(#cbbfa6, #b5a888);--gold: light-dark(#d9861f, #e8992e);--gold-ink: light-dark(#815618, #c8862c);--gold-quiet: #a9701f;--sel: #ffffff;--partner: light-dark(#3952d0, #7186ef);--ok: light-dark(#3f683b, #7aa871);--warn: light-dark(#954a19, #d8873c);--on-gold: #201c16;--on-gold-mute: #3a2c12;--on-partner: light-dark(#ffffff, #201c16);--on-partner-mute: light-dark(#eef0ff, #1e2130);--shadow-near: light-dark(rgba(43,36,26,.1), rgba(0,0,0,.35));--shadow-far: light-dark(rgba(43,36,26,.55), rgba(0,0,0,.88));--shadow: 0 1px 0 var(--shadow-near), 0 7px 20px -13px var(--shadow-far);--fae: light-dark(#8a7a5e, #b8a780);--fae-ink: light-dark(oklch(from var(--fae) .455 c h), oklch(from var(--fae) .82 c h))}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*{box-sizing:border-box}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}button,summary,select,input,textarea{font:inherit}i,em,cite,var,dfn,address{font-style:normal}small{font-size:inherit}button{transition:background .12s ease,border-color .12s ease,color .12s ease}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--body);font-size:var(--fs-500);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,.display{font-family:var(--display);text-wrap:balance}a{color:inherit}.wrap{max-width:1640px;margin:0 auto;padding:28px 24px 56px}.masthead{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 20px;border-bottom:2px solid var(--ink);padding-bottom:12px;margin-bottom:6px}.masthead h1{font-size:var(--fs-800);font-weight:800;letter-spacing:-.015em;margin:0}.masthead .sub{font-family:var(--display);font-size:var(--fs-200);font-variant-numeric:tabular-nums;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.masthead .spacer{flex:1}.masthead .planbtn{align-self:center}.spread{display:grid;gap:24px;align-items:start;grid-template-columns:250px minmax(0,1fr) 340px}@media(max-width:1299px){.spread{grid-template-columns:250px minmax(0,1fr)}.detail{grid-column:2;position:static;max-height:none}}@media(max-width:900px){.spread{grid-template-columns:minmax(0,1fr)}.detail{grid-column:1}.rail{position:static}}body[data-view=tables] .spread{grid-template-columns:250px minmax(0,1fr)}body[data-view=tables] .detail{display:none}@media(max-width:900px){body[data-view=tables] .spread{grid-template-columns:minmax(0,1fr)}}.colophon{margin-top:44px;padding-top:14px;border-top:1px solid var(--rule);font-family:var(--display);font-size:var(--fs-200);color:var(--muted);max-width:74ch}.colophon summary{cursor:pointer;font-family:var(--display);font-size:var(--fs-100);letter-spacing:.12em;text-transform:uppercase}.colophon summary:hover{color:var(--ink)}.colophon p{margin:10px 0 0;line-height:1.65;font-family:var(--body);font-size:var(--fs-200)}.colophon .repo a{color:var(--gold-ink)}.rail{display:flex;flex-direction:column;gap:7px;position:sticky;top:18px}.rail-head{font-family:var(--display);font-size:var(--fs-100);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}.banner{display:flex;align-items:center;gap:10px;width:100%;padding:9px 26px 9px 10px;border:0;cursor:pointer;text-align:left;color:var(--ink);background:var(--sunken);font-family:var(--display);font-size:var(--fs-500);font-weight:700;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 50%,calc(100% - 16px) 100%,0 100%);transition:background .12s ease,color .12s ease}.shield,.opt .fae{filter:drop-shadow(0 0 1px var(--ink)) drop-shadow(0 0 1px var(--ink))}.banner .shield{width:15px;height:18px;flex:none;background:currentColor;clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%)}.banner .who{display:flex;flex-direction:column;line-height:1.15}.banner .who small{font-family:var(--body);font-weight:400;font-size:var(--fs-200);color:var(--muted)}.banner:hover{background:var(--rule)}.banner[aria-current=true]{background:var(--gold);color:var(--on-gold)}.banner[aria-current=true] small{color:var(--on-gold-mute)}.banner.partner{background:var(--partner);color:var(--on-partner)}.banner.partner small{color:var(--on-partner-mute)}.views{display:flex;gap:0;margin-bottom:16px;border-bottom:1px solid var(--rule)}.views button{font-family:var(--display);font-size:var(--fs-200);font-weight:700;letter-spacing:.09em;text-transform:uppercase;background:none;border:0;border-bottom:3px solid transparent;color:var(--muted);padding:8px 2px;margin-right:26px;cursor:pointer}.views button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--fae-ink)}.page-head{margin-bottom:18px}.page-head h2{margin:0;font-size:var(--fs-700);font-weight:800;letter-spacing:-.01em}.page-head h2 em{color:var(--fae-ink)}.page-head p{margin:6px 0 0;max-width:62ch;color:var(--muted);font-size:var(--fs-500)}.page-head .counts{font-family:var(--display);font-size:var(--fs-200);font-variant-numeric:tabular-nums;margin-top:9px;max-width:none}.band{font-family:var(--display);font-size:var(--fs-300);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:var(--sunken);padding:5px 34px 5px 12px;margin:22px 0 12px;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,0 100%)}#grids .band{max-width:860px}.band span{color:var(--muted);font-weight:500;letter-spacing:.04em}#grids{overflow-x:auto;padding-bottom:4px}.codex-page[hidden]{display:none}.grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px;max-width:860px;min-width:600px}.tile{position:relative;aspect-ratio:1;border-radius:3px;cursor:pointer;background:var(--tile);color:var(--tile-ink);border:3px solid #0a0806;padding:0;font-family:var(--display);font-size:var(--fs-400);font-weight:500;display:flex;align-items:center;justify-content:center;transition:border-color .1s ease,transform .1s ease}.tile .art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:1px}.tile .n{position:absolute;right:0;bottom:0;z-index:1;padding:0 3px;border-radius:2px 0 0;background:#0a0806db;color:var(--tile-ink);font-size:var(--fs-100);font-variant-numeric:tabular-nums;line-height:1.35}.tile .unknown{position:absolute;top:3px;right:4px;z-index:1;width:5px;height:5px;border-radius:50%;background:var(--gold-quiet)}.tile:hover{transform:translateY(-1px)}.tile:focus-visible{outline:2px solid var(--ink);outline-offset:3px;z-index:3}.tile.is-hovered{border-color:var(--sel);color:#fff;box-shadow:0 0 0 2px var(--ink)}.tile.is-prereq{border-color:var(--gold);color:var(--gold)}.tile.is-dim{opacity:.45}.detail{position:sticky;top:18px;max-height:calc(100vh - 36px);overflow-y:auto;overscroll-behavior:contain;background:var(--surface);border:1px solid var(--rule);border-left:4px solid var(--fae-ink);border-radius:3px;padding:12px 14px;box-shadow:var(--shadow);display:grid;grid-template-columns:46px minmax(0,1fr);gap:0 12px;align-content:start}.detail>.art{grid-row:1 / span 2;width:46px;height:46px;border-radius:3px;border:1px solid var(--tile-edge)}.detail>:not(.art){grid-column:2}.detail h3{margin:0;font-size:var(--fs-600);font-weight:800;line-height:1.2}.detail h3 .anon{color:var(--muted);font-weight:500;font-family:var(--body)}.detail .kicker{font-family:var(--display);font-size:var(--fs-200);color:var(--muted);margin-bottom:9px}.detail .desc{margin:0 0 8px;font-size:var(--fs-500);line-height:1.5}.detail .eff{font-family:var(--display);font-size:var(--fs-200);color:var(--muted);margin:0 0 9px;line-height:1.5;font-variant-numeric:tabular-nums}.detail .reqhead{font-family:var(--display);font-size:var(--fs-100);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-top:1px solid var(--rule);padding-top:7px}.detail .side{font-family:var(--display);font-size:var(--fs-200);font-weight:700;color:var(--ink);margin-top:6px}.detail .chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.chip{display:inline-flex;align-items:center;gap:5px;min-width:0;font-family:var(--display);font-size:var(--fs-300);border:1px solid var(--gold);color:var(--gold-ink);border-radius:2px;padding:1px 7px 1px 2px}.chip img{width:20px;height:20px;border-radius:2px;flex:none}.chip.none{padding-left:7px;border-color:var(--rule);color:var(--muted);font-family:var(--display);font-size:var(--fs-200)}.tile .mark{position:absolute;top:0;left:0;z-index:2;width:15px;height:15px;display:grid;place-items:center;background:var(--gold);color:var(--on-gold);border-radius:0 0 3px;font-family:var(--display);font-weight:800;font-size:var(--fs-100);line-height:1;transform-origin:top left;animation:mark-in .16s ease-out}.tile:after{content:"";position:absolute;left:0;bottom:0;z-index:1;border:0 solid transparent;transition:border-width .15s ease}.tile.in-plan:after{border-width:6px;border-left-color:var(--gold-quiet);border-bottom-color:var(--gold-quiet)}.tile.is-tracked{border-color:var(--gold)}@keyframes mark-in{0%{transform:scale(.3);opacity:0}to{transform:none;opacity:1}}.planbtn{font-family:var(--display);font-size:var(--fs-200);font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:var(--sunken);color:var(--ink);border:1px solid var(--edge);border-radius:2px;padding:6px 11px}.planbtn:hover{background:var(--rule)}.planbtn b{font-family:var(--display);font-size:var(--fs-200);letter-spacing:0;font-variant-numeric:tabular-nums;color:var(--gold-ink);margin-left:6px}.sheet{position:fixed;inset:0 0 0 auto;width:min(430px,100vw);z-index:20;display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--rule);box-shadow:-20px 0 46px -34px #000000b3;transform:translate(100%);transition:transform .18s ease,visibility 0s .18s;visibility:hidden}.sheet.open{transform:none;visibility:visible;transition:transform .18s ease}@media(min-width:1180px){body.with-sheet{padding-right:min(430px,100vw)}}.sheet-head{display:flex;align-items:baseline;gap:10px;padding:14px 16px 10px;border-bottom:1px solid var(--rule)}.sheet-head h2{margin:0;font-size:var(--fs-600);font-weight:800}.sheet-head .spacer{flex:1}.sheet-head button{background:none;border:0;cursor:pointer;color:var(--muted);font-family:var(--display);font-size:var(--fs-200);letter-spacing:.06em;text-transform:uppercase;padding:2px 4px}.sheet-head button:hover{color:var(--ink)}.sheet-body{overflow-y:auto;padding:14px 16px 28px}.sheet h3{font-family:var(--display);font-size:var(--fs-100);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:20px 0 8px}.sheet h3:first-child{margin-top:0}.sheet .empty{color:var(--muted);font-size:var(--fs-400);max-width:40ch}.trk{display:flex;align-items:center;gap:9px;padding:5px 0;border-bottom:1px solid var(--rule)}.trk img{width:30px;height:30px;border-radius:2px;flex:none;border:1px solid var(--tile-edge)}.trk .who{flex:1;min-width:0;line-height:1.2}.trk .who button{display:block;background:none;border:0;padding:0;cursor:pointer;font-family:var(--display);font-weight:700;font-size:var(--fs-400);color:var(--ink);text-align:left}.trk .who button:hover{text-decoration:underline}.trk .who small{font-family:var(--display);font-size:var(--fs-200);color:var(--muted);font-variant-numeric:tabular-nums}.trk .drop{background:none;border:0;cursor:pointer;color:var(--muted);font-size:var(--fs-400);line-height:1;padding:6px 8px;flex:none}.trk .drop:hover{color:var(--warn)}.block{border-left:3px solid var(--rule);padding:2px 0 2px 10px;margin:0 0 14px;border-radius:0 2px 2px 0}.block.maybe{border-left-style:dashed}.block.settled{border-left-color:var(--ok)}.block.forced{border-left-color:var(--gold-ink)}.block .lbl{font-family:var(--display);font-size:var(--fs-100);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.block.settled .lbl{color:var(--ok)}.block.forced .lbl{color:var(--gold-ink)}.contingent{margin:22px -11px 0;padding:2px 11px 8px;border-radius:3px;background:color-mix(in srgb,var(--sunken) 55%,transparent)}.contingent h3{margin-top:14px}.contingent .empty{margin-bottom:14px}.block .opts{display:flex;flex-wrap:wrap;gap:5px;margin:5px 0 0}.block .hid{font-family:var(--display);font-size:var(--fs-200);color:var(--muted);margin:6px 0 0}.block .for{font-family:var(--display);font-size:var(--fs-300);font-weight:700;color:var(--ink);margin:0 0 3px;line-height:1.3}.dag{font-family:var(--display);font-size:var(--fs-200);color:var(--warn);cursor:help;margin-left:5px}.opt{display:inline-flex;align-items:center;gap:6px;cursor:pointer;background:var(--ground);border:1px solid var(--edge);border-radius:2px;padding:3px 8px 3px 3px;color:var(--ink);font-family:var(--display);font-size:var(--fs-300);font-weight:500;text-align:left}.opt:hover{border-color:var(--ink)}.opt img{width:28px;height:28px;border-radius:2px;flex:none}.opt .txt{display:flex;flex-direction:column;line-height:1.2}.opt .txt small{display:flex;align-items:center;gap:4px;font-size:var(--fs-100);font-weight:400;color:var(--muted)}.opt .fae{width:6px;height:8px;flex:none;background:currentColor;clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%)}.opt[aria-pressed=true]{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,var(--surface));font-weight:700}.opt .tick{color:var(--ok);font-size:var(--fs-200)}.planbar{border:1px solid var(--rule);border-radius:2px;padding:10px 11px;margin:0 0 16px;background:var(--ground)}.planbar .row{display:flex;gap:7px;align-items:center}.planbar input[type=text]{flex:1;min-width:0;font-family:var(--display);font-size:var(--fs-500);font-weight:700;color:var(--ink);background:var(--surface);border:1px solid var(--edge);border-radius:2px;padding:6px 8px}.planbar .planbtn:disabled{opacity:.45;cursor:default}.planbar .gear{margin-top:10px}.planbar .gearhint{margin:8px 0 0;font-family:var(--body);font-size:var(--fs-200);color:var(--muted)}.planbar .gear .lbl{font-family:var(--display);font-size:var(--fs-100);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.planbar .gear .opts{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.planbar .gear .nil{display:block;margin-top:3px;font-family:var(--body);font-size:var(--fs-200);color:var(--muted)}.gearchip{font-family:var(--display);font-size:var(--fs-300);cursor:pointer;background:var(--surface);color:var(--ink);border:1px solid var(--edge);border-radius:2px;padding:3px 7px}.gearchip:hover{border-color:var(--ink)}.gearchip.on{background:var(--fae-ink);border-color:var(--fae-ink);color:var(--ground);font-weight:700;display:inline-flex;align-items:center;gap:6px}.gearchip .x{font-size:var(--fs-100)}.gearadd{font-family:var(--display);font-size:var(--fs-500);color:var(--ink);background:var(--surface);border:1px solid var(--edge);border-radius:2px;padding:3px 4px;max-width:100%}.linky{background:none;border:0;padding:4px 2px;cursor:pointer;font-family:var(--display);font-size:var(--fs-200);color:var(--muted);text-decoration:underline}.linky:hover{color:var(--ink)}.linky.danger:hover{color:var(--warn)}.modal{position:fixed;inset:0;z-index:40;display:grid;place-items:start center;padding:34px 16px;background:#0a08068c;overflow-y:auto;visibility:hidden;opacity:0;transition:opacity .15s ease,visibility 0s .15s}.modal.open{visibility:visible;opacity:1;transition:opacity .15s ease}.modal .panel{width:min(920px,100%);background:var(--surface);border:1px solid var(--rule);border-radius:3px;box-shadow:var(--shadow)}.modal-body{padding:14px 18px 22px}.filters{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:flex-end;padding-bottom:12px;border-bottom:1px solid var(--rule)}.filter{display:flex;flex-direction:column;gap:4px;font-family:var(--display);font-size:var(--fs-100);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.filter select{font-family:var(--display);font-size:var(--fs-500);text-transform:none;letter-spacing:0;color:var(--ink);background:var(--ground);border:1px solid var(--edge);border-radius:2px;padding:5px 6px;min-width:15ch}.fae-filter{flex:1 1 100%}.shields{display:flex;flex-wrap:wrap;gap:4px}.faebtn{display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-family:var(--display);font-size:var(--fs-300);text-transform:none;letter-spacing:0;color:var(--ink);background:var(--ground);border:1px solid var(--edge);border-radius:2px;padding:3px 8px}.faebtn .shield{width:9px;height:11px;background:currentColor;clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%)}.faebtn:hover{border-color:var(--ink)}.faebtn.on{border-color:var(--ink);background:var(--sunken);font-weight:700}.count{font-family:var(--display);font-size:var(--fs-200);color:var(--muted);font-variant-numeric:tabular-nums;margin:12px 0}.build{display:grid;gap:4px 14px;align-items:center;padding:10px 0;border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,22ch) minmax(0,1fr) auto}.build.here{background:color-mix(in srgb,var(--gold) 8%,transparent)}.build .bname{grid-row:1 / span 2;font-family:var(--display);font-weight:700;font-size:var(--fs-500);color:var(--ink);background:var(--ground);border:1px solid var(--edge);border-radius:2px;padding:4px 6px;min-width:0}.build .bname:hover,.build .bname:focus{background:var(--surface);border-color:var(--ink)}.build .meta{display:flex;flex-wrap:wrap;gap:3px 12px;align-items:baseline}.build .shape{font-family:var(--display);font-size:var(--fs-300)}.build .meta .nil{font-family:var(--display);font-size:var(--fs-200)}.build .gearline{grid-column:2;display:flex;flex-wrap:wrap;gap:4px}.build .tag{font-family:var(--display);font-size:var(--fs-100);color:var(--muted);border:1px solid var(--rule);border-radius:2px;padding:1px 5px}.build .acts{grid-row:1 / span 2;grid-column:3;display:flex;gap:8px;align-items:center;justify-content:flex-end}.build .missing{grid-column:2;font-size:var(--fs-200);line-height:1.5;color:var(--warn)}.build .missing b{font-family:var(--display)}.port{margin-top:22px}.port h3{font-family:var(--display);font-size:var(--fs-100);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}.port textarea{width:100%;font-family:var(--code);font-size:var(--fs-200);color:var(--ink);background:var(--ground);border:1px solid var(--edge);border-radius:2px;padding:8px;resize:vertical}.port .row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}.port input[type=file]{font-family:var(--display);font-size:var(--fs-200);color:var(--ink)}.portmsg{font-family:var(--display);font-size:var(--fs-200);color:var(--muted);margin:8px 0 0;min-height:1.2em}@media(max-width:620px){.build{grid-template-columns:minmax(0,1fr)}.build .bname,.build .acts{grid-row:auto}.build .gearline,.build .missing{grid-column:auto}}.best-note{border:1px solid var(--rule);border-left:3px solid var(--gold);border-radius:2px;padding:8px 11px;margin:16px 0 4px;font-size:var(--fs-200);line-height:1.55;color:var(--muted);background:var(--ground)}.best-note b{display:block;font-family:var(--display);font-size:var(--fs-300);letter-spacing:.03em;color:var(--ink);margin-bottom:2px}.best-note.none{border-left-color:var(--warn)}.best-note.none b{color:var(--warn)}.opt.best{border-color:var(--gold)}.opt .star{color:var(--gold-ink);font-size:var(--fs-200);cursor:help}.warnmark{color:var(--warn);cursor:help;font-weight:700;margin-left:6px;font-family:var(--display);font-size:var(--fs-300)}.clash-note{border:1px solid var(--warn);border-radius:2px;padding:9px 11px;margin:0 0 16px;font-size:var(--fs-300);line-height:1.5;background:color-mix(in srgb,var(--warn) 11%,var(--surface))}.clash-note b{display:block;font-family:var(--display);font-size:var(--fs-300);color:var(--warn);margin-bottom:3px}.trk.clash .who button{color:var(--warn)}.block.clash{background:color-mix(in srgb,var(--warn) 10%,transparent)}.trk.clash{background:color-mix(in srgb,var(--warn) 8%,transparent)}.opt.clash{opacity:.7;border-style:dashed;border-color:var(--warn)}.opt.clash:hover,.opt.clash:focus-visible{opacity:1;border-color:var(--warn)}.foot{font-size:var(--fs-200);line-height:1.6;color:var(--muted);margin:22px 0 0;padding-top:10px;border-top:1px dashed var(--rule);max-width:46ch}.legend{display:flex;flex-wrap:wrap;gap:5px 7px;margin:16px 0 0;max-width:860px}.legend .key{display:inline-flex;align-items:center;gap:6px;cursor:help;font-family:var(--display);font-size:var(--fs-200);letter-spacing:.03em;color:var(--muted);background:var(--surface);border:1px solid var(--edge);border-radius:2px;padding:3px 8px 3px 4px}.legend .key:hover{border-color:var(--ink);color:var(--ink)}.legend i{position:relative;display:inline-block;width:15px;height:15px;flex:none;border-radius:2px;background:var(--tile);border:2px solid var(--tile-edge)}.legend .hovered i{border-color:var(--sel);box-shadow:0 0 0 1px var(--ink)}.legend .prereq i,.legend .tracked i{border-color:var(--gold)}.legend .tracked i:after{content:"✓";position:absolute;top:-2px;left:-2px;width:9px;height:9px;display:grid;place-items:center;background:var(--gold);color:var(--on-gold);border-radius:0 0 2px;font-family:var(--display);font-weight:800;font-size:7px;line-height:1}.legend .inplan i:after{content:"";position:absolute;left:-2px;bottom:-2px;border:4px solid transparent;border-left-color:var(--gold-quiet);border-bottom-color:var(--gold-quiet)}.legend .locked i:after{content:"";position:absolute;top:2px;right:2px;width:5px;height:5px;border-radius:50%;background:var(--gold-quiet)}.legend .partner i{background:var(--partner);border-color:var(--partner);clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);border-radius:0}.tablewrap{overflow-x:auto;margin:0 0 26px;border:1px solid var(--rule);border-radius:3px;background:var(--surface)}table{border-collapse:collapse;width:100%;font-size:var(--fs-300)}th,td{text-align:left;vertical-align:top;padding:8px 12px;border-bottom:1px solid var(--rule)}thead th{font-family:var(--display);font-size:var(--fs-100);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:var(--sunken);border-bottom:2px solid var(--rule)}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:var(--sunken)}td.n{font-variant-numeric:tabular-nums;color:var(--muted);width:3ch}td.nm{font-family:var(--display);font-weight:700;min-width:16ch}td.ic{width:34px;padding-right:0}td.ic img{display:block;width:34px;height:34px;border-radius:2px}td.nm .anon{font-family:var(--body);font-weight:400;color:var(--muted)}td.nm .nil{font-size:var(--fs-200)}td.nm .prov{display:inline-block;margin-top:2px;font-family:var(--body);font-size:var(--fs-200);font-weight:400;color:var(--muted)}td.desc{min-width:26ch;max-width:40ch}td.eff,td.req{font-size:var(--fs-200);font-variant-numeric:tabular-nums}td.req{min-width:22ch}td.req.game{color:var(--gold-ink)}.note{font-size:var(--fs-300);color:var(--warn);font-family:var(--display);margin:-14px 0 12px}.flag{font-family:var(--display);font-size:var(--fs-200);font-weight:700}.flag.ok{color:var(--ok)}.flag.no{color:var(--warn)}.nil{color:var(--muted)}[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.tile:hover{transform:none}.tile .mark{opacity:1;transform:none}}
