.prose{max-width:var(--measure);font-family:var(--font-body);font-size:calc(var(--step-0) * 1.06);color:var(--fg);line-height:1.7}.prose>*+*{margin-top:1.1em}.prose h2{font-size:var(--step-2);color:var(--fg);margin-top:2.4em;margin-bottom:.2em;font-weight:600}.prose h2:first-child{margin-top:0}.prose h3{font-size:var(--step-1);color:var(--fg);margin-top:2em;margin-bottom:.1em;font-weight:600}.prose h4{font-size:var(--step-0);color:var(--fg-muted);margin-top:1.6em}.prose>p:first-child{font-size:var(--step-1);color:var(--fg);text-wrap:pretty;line-height:1.55}.prose ul,.prose ol{padding-left:1.3em}.prose li+li{margin-top:.35em}.prose blockquote{border-left:2px solid var(--accent-edge);color:var(--fg-muted);margin-left:0;padding:.2rem 0 .2rem 1.3rem;font-style:italic}.prose table{margin-block:1.8em;font-size:.92rem;line-height:1.5}.prose thead th{border-bottom:1px solid var(--line-strong);font-family:var(--font-ui);font-size:var(--step--1);color:var(--fg-faint);text-align:left;vertical-align:bottom;padding:.45rem .9rem .45rem 0;font-weight:500}.prose tbody td{border-bottom:1px solid var(--line);vertical-align:top;padding:.62rem .9rem .62rem 0}.prose tbody tr:hover td{background:color-mix(in srgb, var(--fg) 4%, transparent)}.prose tbody td:first-child{color:var(--fg);font-weight:600}.prose tbody td:first-child:has(+td){font-variant-numeric:tabular-nums}.prose table{overscroll-behavior-x:contain;max-width:100%;display:block;overflow-x:auto}.vault-link{color:var(--fg);text-underline-offset:.2em;text-decoration:underline 1px;text-decoration-color:color-mix(in srgb, var(--kind,var(--brass)) 55%, transparent);transition:color var(--fast) var(--ease), text-decoration-color var(--fast) var(--ease)}.vault-link:hover{color:var(--kind,var(--brass-bright));text-decoration-color:var(--kind,var(--brass))}.vault-link[data-kind=character]{--kind:var(--brass-bright)}.vault-link[data-kind=location]{--kind:var(--ice)}.vault-link[data-kind=faction]{--kind:var(--oxide)}.vault-link[data-kind=concept],.vault-link[data-kind=event]{--kind:var(--verdigris)}.vault-link--broken{color:var(--fg-faint);text-decoration:underline dotted var(--oxide);cursor:help}.vault-marker{border-radius:var(--radius-full);background:color-mix(in srgb, var(--fg) 7%, transparent);color:var(--fg-faint);font-family:var(--font-ui);padding:.12em .5em;font-size:.8em;display:inline}.vault-figure{margin-block:2rem}.vault-figure img{border-radius:var(--radius-lg);width:100%;box-shadow:0 0 0 1px var(--line), var(--shadow-mid)}.vault-figure figcaption{color:var(--fg-faint);font-family:var(--font-ui);font-size:var(--step--1);margin-top:.65rem}.vault-figure__slot{aspect-ratio:16/6;border-radius:var(--radius-lg);box-shadow:0 0 0 1px var(--line);background:radial-gradient(120% 100% at 25% 0%, color-mix(in srgb, var(--accent,var(--brass)) 20%, transparent), transparent 62%), linear-gradient(150deg, var(--bg-raised-2), var(--bg-sunken));color:var(--fg-faint);font-family:var(--font-ui);font-size:var(--step--1);place-items:center;display:grid}.prose hr{margin-block:2.8rem}.tiles{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:1rem;margin-block:1.4rem 2.2rem;display:grid}.tile{border-radius:var(--radius-lg);background:var(--bg-raised);box-shadow:0 0 0 1px var(--line);color:var(--fg);transition:box-shadow var(--fast) var(--ease), transform var(--fast) var(--ease);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.tile:hover,.tile:focus-visible{box-shadow:0 0 0 1px var(--accent-edge,var(--line-strong)), var(--shadow-mid);transform:translateY(-2px)}.tile__media{aspect-ratio:16/10;background:var(--bg-sunken);display:block}.tile__media img{object-fit:cover;width:100%;height:100%;display:block}.tile__slot{background:radial-gradient(120% 100% at 25% 0%, color-mix(in srgb, var(--accent,var(--brass)) 20%, transparent), transparent 62%), linear-gradient(150deg, var(--bg-raised-2), var(--bg-sunken));height:100%;color:var(--fg-faint);font-family:var(--font-ui);font-size:var(--step--2);letter-spacing:.1em;place-items:center;display:grid}.tile__body{gap:.45rem;padding:.9rem 1rem 1.05rem;display:grid}.tile__name{font-family:var(--font-display,var(--font-body));font-size:var(--step-1);color:var(--fg);line-height:1.2}.tile:hover .tile__name{color:var(--brass-bright)}.tile__text{color:var(--fg-muted,var(--fg-faint));font-size:var(--step--1);line-height:1.5}.tile__facts{font-family:var(--font-ui);font-size:var(--step--2);flex-wrap:wrap;gap:.3rem 1rem;margin:.2rem 0 0;display:flex}.tile__facts div{gap:.4rem;display:flex}.tile__facts dt{color:var(--fg-faint);letter-spacing:.08em}.tile__facts dd{color:var(--fg);margin:0}@media (prefers-reduced-motion:reduce){.tile{transition:none}.tile:hover,.tile:focus-visible{transform:none}}
