/* Fighter files (roster + profile pages). Loaded after app.css. */
.topnav{display:flex;flex-wrap:wrap;gap:4px 18px;align-items:center;font:var(--s-2) var(--f-mono);letter-spacing:.06em;margin-bottom:clamp(14px,3vw,26px);padding-bottom:10px;border-bottom:1px solid var(--rule)}
.topnav a{color:var(--ink-2);text-decoration:none;min-height:var(--tap);display:inline-flex;align-items:center}
.topnav a:hover,.topnav a[aria-current="page"]{color:var(--hud)}
.topnav .sp{flex:1}
.f-head h1{font-size:var(--s-6);text-transform:uppercase;margin-block:.35rem .6rem}
.f-head .lede{color:var(--ink-2);max-width:62ch}
.f-tools{display:flex;flex-wrap:wrap;gap:10px;margin-block:16px 8px}
.f-tools input{min-height:var(--tap);background:var(--panel);border:1px solid var(--rule);color:var(--ink);padding:0 12px;font-size:var(--s-3);width:min(100%,300px)}
.f-group{margin-top:clamp(20px,4vw,34px)}
.f-group h2{font-size:var(--s-4);margin-bottom:12px;color:var(--hud);text-transform:uppercase;letter-spacing:.06em}
.f-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:10px}
.f-card{display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px;align-items:start;background:var(--panel);border:1px solid var(--rule);border-left:3px solid var(--sw);padding:10px;color:var(--ink);text-decoration:none;min-height:104px}
.f-card:hover{border-color:var(--hud-dim);border-left-color:var(--sw);background:var(--raise)}
.f-card.full{background:linear-gradient(90deg,rgba(98,245,166,.06),transparent 60%),var(--panel)}
.f-art{width:84px;height:84px;background:var(--surface);overflow:hidden;display:flex;align-items:flex-start;justify-content:center}
.f-art img{width:100%;height:100%;object-fit:cover;object-position:top}
.noart{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font:700 2rem var(--f-display);color:var(--sw);background:radial-gradient(circle,rgba(98,245,166,.1),transparent 70%)}
.f-txt{min-width:0;display:flex;flex-direction:column;gap:4px}
.f-txt b{font-size:var(--s-3)}
.f-txt .badge{align-self:flex-start;font-size:10px;padding:3px 5px}
.f-txt p{font-size:var(--s-1);color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}
.f-txt small{font:11px var(--f-mono);color:var(--ink-3)}

.p-hero{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(16px,4vw,40px);align-items:start}
.p-art{margin:0;position:relative;background:radial-gradient(100% 80% at 50% 30%,rgba(98,245,166,.14),transparent 70%),var(--surface);border:1px solid var(--rule);border-top:3px solid var(--sw)}
.p-img{display:block;width:100%;max-height:420px;object-fit:contain}
.p-art .noart{aspect-ratio:3/4;font-size:5rem}
.p-art figcaption{font:10px var(--f-mono);color:var(--ink-3);padding:6px 8px;border-top:1px solid var(--rule)}
.p-info h1{font-size:var(--s-6);text-transform:uppercase;letter-spacing:.03em;margin-block:.3rem .7rem}
.p-info .lede{color:var(--ink-2);max-width:62ch}
.p-debut{margin-top:10px;font-size:var(--s-2);color:var(--ink)}
.p-debut span{font:var(--s-1) var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-right:6px}
.p-links{display:flex;flex-wrap:wrap;gap:8px}
.p-stats{grid-template-columns:repeat(auto-fit,minmax(110px,auto))}
.p-stats small{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.p-sec{margin-top:clamp(24px,5vw,44px)}
.p-sec-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;margin-bottom:12px;border-bottom:1px solid var(--rule);padding-bottom:8px}
.p-sec-h h2{font-size:var(--s-5)}
.p-curve{background:var(--surface);border:1px solid var(--rule)}
.p-curve svg{display:block;width:100%;height:auto}
.p-curve .pt{cursor:pointer;outline:none}
.p-curve .pt:focus-visible circle:last-child{stroke:var(--hud)}
.p-pick{margin-top:8px}
.p-pick a.cite{color:var(--hud)}
.p-tiers{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity}
.p-tier{flex:0 0 auto;scroll-snap-align:start;display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto auto;gap:2px 10px;min-width:132px;padding:10px 12px;background:var(--panel);border:1px solid var(--rule);color:var(--ink);text-decoration:none}
.p-tier:hover{border-color:var(--hud-dim)}
.p-tier .tl{grid-row:span 3;font:700 1.6rem/1 var(--f-display);display:flex;align-items:center;justify-content:center;width:38px;background:var(--hud);color:var(--bg)}
.p-tier.t-A .tl{background:#3fb87e}
.p-tier.t-B .tl{background:var(--hud-dim);color:var(--ink)}
.p-tier.t-C .tl{background:var(--raise);color:var(--ink-2);border:1px solid var(--rule)}
.p-tier b{font:1.1rem var(--f-mono);font-weight:400}
.p-tier b small{color:var(--ink-3);font-size:.75rem}
.p-tier .sn{font-size:var(--s-2);font-weight:600}
.p-tier .sf{font:11px var(--f-mono);color:var(--ink-3);max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.p-forms{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px}
.p-form{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;background:var(--panel);border:1px solid var(--rule);padding:12px}
.p-form.noimg{grid-template-columns:minmax(0,1fr)}
.pf-art{width:110px;height:140px;background:var(--surface);display:flex;align-items:flex-start;justify-content:center;overflow:hidden}
.pf-art img{width:100%;height:100%;object-fit:cover;object-position:top}
.pf-txt{min-width:0;display:flex;flex-direction:column;gap:6px}
.pf-txt h3{font-size:var(--s-3)}
.pf-txt p{font-size:var(--s-2);color:var(--ink-2)}
.pf-txt p.pf-debut,.p-tech p.pf-debut{font:var(--s-1) var(--f-mono);color:var(--hud);letter-spacing:.04em}
.pf-read{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font:var(--s-2) var(--f-mono);color:var(--ink);text-decoration:none;margin-top:auto}
.pf-read small{color:var(--hud)}
.p-events{list-style:none;padding:0;display:flex;flex-direction:column;border-left:2px solid var(--hud-dim);margin:0 0 0 6px}
.p-events li{position:relative;padding:4px 0 14px 18px}
.p-events li::before{content:"";position:absolute;left:-7px;top:9px;width:12px;height:12px;background:var(--bg);border:2px solid var(--hud)}
.pe-when{font:var(--s-1) var(--f-mono);color:var(--hud);letter-spacing:.04em}
.p-events p{font-size:var(--s-2);color:var(--ink-2);max-width:70ch;margin-top:2px}
.p-techs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:10px}
.p-tech{background:var(--panel);border:1px solid var(--rule);padding:12px;display:flex;flex-direction:column;gap:5px}
.p-tech h3{font-size:var(--s-3)}
.p-tech p{font-size:var(--s-2);color:var(--ink-2)}
.p-note{margin-top:24px;color:var(--ink-3);font-size:var(--s-2)}
@media (max-width:760px){
  .p-hero{grid-template-columns:minmax(0,1fr)}
  .p-art{max-width:320px}
  .p-form{grid-template-columns:84px minmax(0,1fr)}
  .pf-art{width:84px;height:110px}
}
