.abilities{padding-block:clamp(3.5rem,7vw,6rem)}.abilities__head{text-align:center;margin-bottom:2.5rem;max-width:56rem;margin-inline:auto}.abilities__eyebrow{font-family:var(--font-ui);font-size:.78rem;letter-spacing:.32em;text-transform:uppercase;color:var(--color-gold-primary);margin:0 0 .5rem}.abilities__title{font-size:clamp(2rem,3vw + 1rem,3.25rem);letter-spacing:var(--tracking-relic);text-transform:uppercase;color:var(--color-gold-bright);margin:0 0 1rem}.abilities__copy{color:var(--color-text-muted);line-height:1.6;margin:0 auto;max-width:56ch}.abilities__filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:2.5rem;padding-block:1rem;border-block:1px solid color-mix(in oklab,var(--color-gold-deep) 35%,transparent)}.abilities__chip{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:transparent;color:var(--color-text-muted);border:1px solid color-mix(in oklab,var(--color-gold-deep) 50%,transparent);font-family:var(--font-display);font-size:.85rem;letter-spacing:var(--tracking-relic);text-transform:uppercase;cursor:pointer;transition:all .18s var(--ease-relic)}.abilities__chip:hover{color:var(--color-gold-bright);border-color:var(--color-gold-primary)}.abilities__chip.is-active{background:var(--color-gold-primary);color:var(--color-bg-deep);border-color:var(--color-gold-bright)}.abilities__count{font-family:var(--font-ui);font-size:.65rem;padding:.1rem .35rem;background:color-mix(in oklab,var(--color-bg-deep) 30%,transparent);border-radius:99px;letter-spacing:.05em}.abilities__chip.is-active .abilities__count{background:#0b090740;color:var(--color-bg-deep)}.abilities__grid{list-style:none;padding:0;margin:0;display:grid;gap:.85rem;grid-template-columns:1fr}@media(min-width:32rem){.abilities__grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:48rem){.abilities__grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:80rem){.abilities__grid{grid-template-columns:repeat(4,1fr)}}.ability{list-style:none;transition:opacity .2s var(--ease-relic),transform .2s var(--ease-relic)}.ability[hidden]{display:none!important}.ability__frame{height:100%}.ability__btn{appearance:none;background:transparent;border:0;width:100%;height:100%;padding:1rem;cursor:pointer;color:inherit;text-align:left;display:flex;flex-direction:column;align-items:center;gap:.85rem;font:inherit;transition:background-color .18s var(--ease-relic)}.ability__btn:hover{background-color:color-mix(in oklab,var(--color-gold-primary) 6%,transparent)}.ability__btn:focus-visible{outline:2px solid var(--color-gold-bright);outline-offset:-2px}.ability__meta{display:flex;flex-direction:column;gap:.35rem;text-align:center;width:100%}.ability__type{font-family:var(--font-ui);font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--color-gold-primary)}.ability__name{font-family:var(--font-display);font-size:1rem;letter-spacing:.06em;text-transform:uppercase;color:var(--color-gold-bright);margin:0}.ability__short{color:var(--color-text-muted);font-size:.88rem;line-height:1.45;margin:0}.abilities__note{margin-top:2.5rem;text-align:center;color:var(--color-text-faint);font-size:.9rem}.abilities__note a{color:var(--color-gold-bright);text-decoration:underline;text-decoration-color:var(--color-gold-deep)}.ability-modal{border:0;padding:0;background:transparent;color:var(--color-text-primary);max-width:100vw;max-height:100dvh;width:100%;height:100%;margin:0}.ability-modal::backdrop{background:#0b0907d9}.ability-modal__backdrop{position:fixed;inset:0;background:#0b0907eb;backdrop-filter:blur(6px)}.ability-modal__panel{position:relative;width:min(640px,92vw);margin:auto;inset:50% 0 0;background:var(--color-bg-stone);border:1px solid var(--color-gold-deep);box-shadow:var(--shadow-relic),var(--shadow-glow-gold-soft);transform:translateY(-50%)}.ability-modal__head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid color-mix(in oklab,var(--color-gold-deep) 50%,transparent)}.ability-modal__medallion{margin:0}.ability-modal__type{font-family:var(--font-ui);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--color-gold-primary);margin:0 0 .2rem}.ability-modal__name{font-family:var(--font-display);font-size:1.35rem;letter-spacing:var(--tracking-relic);text-transform:uppercase;color:var(--color-gold-bright);margin:0}.ability-modal__close{background:transparent;border:1px solid transparent;color:var(--color-text-muted);cursor:pointer;padding:.4rem;line-height:0;transition:color .15s var(--ease-relic),border-color .15s var(--ease-relic)}.ability-modal__close:hover{color:var(--color-gold-bright);border-color:var(--color-gold-deep)}.ability-modal__body{padding:1.5rem}.ability-modal__short{color:var(--color-gold-bright);line-height:1.5;margin:0 0 1rem;font-size:1.05rem}.ability-modal__long{color:var(--color-text-primary);line-height:1.65;margin:0 0 1.5rem}.ability-modal__synergies-heading{font-family:var(--font-display);font-size:.85rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-gold-primary);margin:0 0 .85rem;padding-top:1rem;border-top:1px solid color-mix(in oklab,var(--color-gold-deep) 30%,transparent)}.ability-modal__synergies{list-style:none;padding:0;margin:0;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr))}.ability-modal__synergies li{display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem;background:color-mix(in oklab,var(--color-bg-deep) 65%,transparent);border:1px solid color-mix(in oklab,var(--color-gold-deep) 35%,transparent);color:var(--color-text-primary);font-family:var(--font-display);font-size:.88rem;letter-spacing:.04em}.ability-modal__synergies .medallion{flex-shrink:0}.ability-modal__synergies .medallion__name{display:none}body:has(dialog.ability-modal[open]){overflow:hidden}
