.back{margin-bottom:2rem;font-size:.8rem}.hdr{margin-bottom:2rem;max-width:60ch}h1{font-size:1.75rem;font-weight:500;letter-spacing:-.02em;margin-bottom:.5rem}.lede{color:var(--mute);line-height:1.65}.lede a{color:var(--ink);border-bottom:1px solid var(--mute)}.lede em{font-style:italic}.legend{display:flex;align-items:center;gap:1.25rem;font-size:.72rem;text-transform:lowercase;letter-spacing:.04em;margin-bottom:.85rem;padding-bottom:.5rem;border-bottom:1px dashed var(--rule);flex-wrap:wrap}.legend>span{display:inline-flex;align-items:center;gap:.4rem}.swatch{display:inline-block;width:18px;height:0;border-top:1.5px solid var(--ink)}.swatch.fight{border-top-style:dashed}.legend .link{margin-left:auto;background:none;border:none;color:var(--mute);cursor:pointer;font-family:var(--mono);font-size:.72rem;text-transform:lowercase;letter-spacing:.04em}.legend .link:hover{color:var(--ink)}.stage{position:relative;margin-bottom:1rem}.constellation{width:100%;height:auto;display:block;border:1px solid var(--rule);border-radius:6px;background:color-mix(in oklab,var(--ink) 3%,var(--bg));padding:.25rem;color:var(--ink)}:global([data-theme=ascii]) .constellation{display:none}:global([data-theme=ascii]) .ascii{display:block}.ascii{display:none;font-family:var(--mono);font-size:.62rem;line-height:1.05;color:var(--ink);background:var(--bg);border:1px dashed var(--rule);padding:.75rem;margin:0;overflow-x:auto;white-space:pre}:global([data-theme=ascii]) .constellation{border-radius:0}.tooltip{position:absolute;pointer-events:none;background:var(--bg);border:1px solid var(--ink);border-radius:4px;padding:.4rem .6rem;font-family:var(--mono);font-size:.72rem;color:var(--ink);max-width:18rem;line-height:1.45;opacity:0;transform:translate(-50%,-110%);transition:opacity .12s ease;z-index:5}.tooltip.show{opacity:1}:global([data-theme=ascii]) .tooltip{border-radius:0}.info{border:1px solid var(--rule);border-radius:6px;padding:1rem 1.25rem;min-height:5rem;background:color-mix(in oklab,var(--ink) 2%,transparent);margin-bottom:1.5rem}:global([data-theme=ascii]) .info{border-radius:0;border-style:dashed}.info-empty{font-size:.78rem}.info h3{font-size:.95rem;font-weight:500;margin-bottom:.25rem}.info .role{font-family:var(--mono);font-size:.7rem;color:var(--mute);text-transform:lowercase;letter-spacing:.06em;margin-bottom:.85rem}.info .rel{font-family:var(--mono);font-size:.78rem;line-height:1.65;margin-bottom:.4rem}.info .rel-label{color:var(--mute);text-transform:lowercase;letter-spacing:.06em;margin-right:.4rem}.info .chip{display:inline-block;padding:.05em .4em;border:1px solid var(--rule);border-radius:3px;margin-right:.3rem;margin-bottom:.2rem;font-size:.72rem}.info .chip.fight{border-style:dashed}:global([data-theme=ascii]) .info .chip{border-radius:0}.how{margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--rule);font-size:.85rem}.how summary{cursor:pointer;font-size:.8rem}.how ul{margin-top:.75rem;padding-left:1.5rem;line-height:1.7}.how strong{font-weight:600;color:var(--ink);font-family:var(--mono)}.how p{margin-top:.75rem;max-width:60ch;line-height:1.65}.constellation :global(.axis){stroke:currentColor;opacity:.25;stroke-width:.5}.constellation :global(.axis-label){fill:currentColor;opacity:.55;font-family:var(--mono);font-size:9px;text-transform:lowercase;letter-spacing:.06em}.constellation :global(.edge){stroke:currentColor;fill:none;opacity:.18;transition:opacity .15s ease,stroke-width .15s ease;cursor:pointer}.constellation :global(.edge.fight){stroke-dasharray:4 3}.constellation :global(.edge:hover){opacity:.85;stroke-width:1.6}.constellation :global(.edge.dim){opacity:.04}.constellation :global(.edge.hot){opacity:.85;stroke-width:1.5}.constellation :global(.star){fill:var(--bg);stroke:currentColor;stroke-width:1.2;cursor:pointer;transition:fill .15s ease,stroke-width .15s ease}.constellation :global(.star:hover){fill:currentColor}.constellation :global(.star.selected){fill:currentColor;stroke-width:2}.constellation :global(.star.dim){opacity:.25}.constellation :global(.star.ally){stroke-width:1.8}.constellation :global(.star.rival){stroke-width:1.8;stroke-dasharray:2 2}.constellation :global(.label){fill:currentColor;font-family:var(--mono);font-size:9px;pointer-events:none;opacity:.78}.constellation :global(.label.dim){opacity:.25}.constellation :global(.label.selected){opacity:1;font-weight:600}@media(max-width:600px){.ascii{font-size:.5rem}.tooltip{max-width:14rem;font-size:.68rem}}
