/* Shared season surfaces. All values follow applyTheme; no player data changes. */
:root{--fn-card-bg:#171e14;--fn-card-surface:#25301c;--fn-card-line:#59653e;--fn-card-muted:#d8e2c4;--fn-card-glow:#b8ed4a24}
.bfc-site .league-desk{background:linear-gradient(105deg,color-mix(in srgb,var(--fn-card-bg) 92%,transparent) 8%,color-mix(in srgb,var(--fn-card-bg) 62%,transparent) 75%);border-color:var(--fn-card-line)}
.bfc-site .league-desk::before{background:linear-gradient(90deg,var(--fn-green),transparent)}
.bfc-site .league-desk :is(.league-kicker,h2 em,.league-cta-secondary,summary){color:var(--fn-green)}
.bfc-site .league-desk :is(.league-lead,.league-format-tag,.league-plan-note,.league-status){color:var(--fn-card-muted)}
.bfc-site .league-desk :is(.league-cta,button:not(.league-refresh)){background:var(--fn-green);color:#151414;box-shadow:0 4px 20px var(--fn-card-glow)}
.bfc-site .league-desk .league-cta:hover{filter:brightness(1.1)}
.bfc-site .league-desk .league-match{--match-accent:var(--fn-green);border-color:var(--fn-card-line);background:linear-gradient(105deg,var(--fn-card-bg) 4%,transparent 160%),linear-gradient(0deg,var(--fn-card-bg) 2%,transparent 115%),var(--fn-bg-image) center/cover,var(--fn-card-surface);box-shadow:0 8px 22px #0004}
.bfc-site .league-desk .league-match:nth-child(3n+2){background-position:center,center,65% center}
.bfc-site .league-desk .league-match:nth-child(3n){background-position:center,center,85% center}
.bfc-site .league-desk .league-match-next{border-color:var(--fn-green);box-shadow:0 0 24px var(--fn-card-glow)}
.bfc-site .league-match :is(.league-match-top,.league-match-place,.league-match-place>span,.league-stakes>span,.league-stakes small){color:var(--fn-card-muted)}
.bfc-site .league-match :is(.league-match-format,.league-faceoff){color:#fff9f2;text-shadow:0 2px 10px #0009}
.bfc-site .league-match .league-week{background:var(--fn-card-bg);border-color:var(--fn-card-line)}
.bfc-site .league-match .league-stakes{background:#08090a70;margin:0 -10px;padding:14px 10px;border-radius:5px;border-color:var(--fn-card-line)}
.bfc-site .league-desk :is(.league-guide article,.league-personal){background:var(--fn-card-surface);border-color:var(--fn-card-line)}
.bfc-site .league-desk a:not(.league-cta):not(.league-cta-secondary),.bfc-site .league-guide p{color:var(--fn-card-muted)}
.bfc-site .league-desk .league-refresh{background:var(--fn-card-bg);border-color:var(--fn-card-line);color:var(--fn-card-muted)}
.bfc-site .league-desk :is(details,form){border-color:var(--fn-card-line)}
.bfc-site .league-desk :is(input,select,textarea){background:var(--fn-card-bg);border-color:var(--fn-card-line)}
.bfc-site :is(.fn-fighter,.bfc-feature-card,.bfc-task,.p-card,.team-card){background:linear-gradient(150deg,var(--fn-card-surface),var(--fn-card-bg));border-color:var(--fn-card-line)}
.bfc-site .fn-fighter .fn-avatar{background:linear-gradient(0deg,var(--fn-card-bg),transparent 140%),var(--fn-bg-image) center/cover,var(--fn-card-surface);border-color:var(--fn-green);color:var(--fn-green);text-shadow:0 2px 12px #000}
.bfc-site .fn-fighter .fn-record{border-color:var(--fn-card-line)}
.bfc-site .fn-match{border-color:var(--fn-card-line);border-left-color:var(--fn-green);background:linear-gradient(105deg,var(--fn-card-bg) 35%,transparent 180%),var(--fn-bg-image) center/cover,var(--fn-card-surface)}
.bfc-site :is(.fn-chip,.fn-result){background:var(--fn-card-bg);border-color:var(--fn-card-line);color:var(--fn-green)}
/* Keep result and live indicators distinct from the decorative season colors. */
.bfc-site .fn-chip.live{background:#45241d;border-color:#824133;color:#ffb29b}
.bfc-site .fn-result.loss{border-color:#8b5345;color:#ffb29b}
.bfc-site :is(.fn-primary,.league-cta){box-shadow:0 4px 18px var(--fn-card-glow)}
.bfc-site .bfc-task small{color:var(--fn-green)}
.bfc-site :is(.league-desk,.fn-fighter,.fn-match,.bfc-task) :focus-visible{outline-color:var(--fn-green)}
@media(hover:hover){.bfc-site :is(.fn-fighter,.bfc-task):hover,.bfc-site .league-desk .league-match:hover{border-color:var(--fn-green)}}

/* Contender cards: portrait, nickname plate, then real match data. */
.fn-fighter-portrait img[src$="/ruben-main.jpg"],.league-contender-photo img[src$="/ruben-main.jpg"],.fn-match-portrait img[src$="/ruben-main.jpg"]{transform:scale(2.2);transform-origin:20% 100%}
.fn-fighter-portrait img[src$="/ruben-main-v2.jpg"],.league-contender-photo img[src$="/ruben-main-v2.jpg"],.fn-match-portrait img[src$="/ruben-main-v2.jpg"]{object-position:55% 35%;transform:scale(1.25);transform-origin:55% 55%}
.bfc-site .fn-fighter{position:relative;padding:0;border-radius:3px;border-top:3px solid var(--fn-green);box-shadow:0 18px 35px #0006;display:flex;flex-direction:column}
.fn-fighter-portrait{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:1/1.05;min-height:290px;background:var(--fn-card-bg)}
.bfc-site .fn-fighter .fn-avatar{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:50% 22%;border:0;filter:contrast(1.12) saturate(.85)}
.bfc-site .fn-fighter .fn-placeholder{font:900 clamp(120px,13vw,200px)/1 'Barlow Condensed',sans-serif;letter-spacing:-.04em;color:var(--fn-green);text-shadow:4px 4px 0 #0009;align-items:center;padding-bottom:25px}
.fn-fighter-portrait::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#0008,transparent 25%,transparent 42%,#08090abf 72%,var(--fn-card-bg) 100%);pointer-events:none}
.fn-fighter-portrait::before{content:'';position:absolute;top:0;right:0;width:65px;height:180px;z-index:2;background:repeating-linear-gradient(135deg,transparent 0 16px,var(--fn-green) 17px 20px,transparent 21px 32px);opacity:.23;clip-path:polygon(50% 0,100% 0,100% 100%,0 45%);pointer-events:none}
.fn-fighter-stamp{position:absolute;z-index:3;inset:18px 18px auto;display:flex;align-items:center;justify-content:space-between;gap:8px;font:800 10px/1.2 Inter,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#fff7eb;text-shadow:0 1px 5px #000}
.fn-fighter-stamp>span:first-child{border-left:3px solid var(--fn-green);padding-left:9px}
.fn-fighter-stamp>span:last-child{color:var(--fn-green)}
.fn-fighter-identity{position:absolute;z-index:3;inset:auto 22px 18px}
.bfc-site .fn-fighter .fn-fighter-identity h3{font:900 clamp(36px,3.6vw,54px)/.92 'Barlow Condensed','Arial Narrow',sans-serif;letter-spacing:-.02em;overflow-wrap:anywhere;margin:0 0 9px;color:#fff7eb;text-shadow:0 3px 14px #000}
.fn-fighter-identity>span{font:600 12px/1.5 Inter,sans-serif;letter-spacing:.09em;color:var(--fn-card-muted);text-transform:uppercase}
.bfc-site .fn-fighter-body{padding:0 22px 22px;display:flex;flex:1;flex-direction:column;border-top:1px solid var(--fn-card-line)}
.fn-fighter-class{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0 12px}
.fn-fighter-class>span{font:800 10px/1.3 Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--fn-green)}
.fn-fighter-class>small{font-size:9px;text-align:right;color:var(--fn-card-muted)}
.bfc-site .fn-fighter .fn-record{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center;padding:14px 0;background:#0002;border-top:1px solid var(--fn-card-line)}
.fn-fighter .fn-record>span:last-child{text-align:right}
.bfc-site .fn-fighter .fn-record small{display:block;font:600 9px/1.5 Inter,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--fn-card-muted);margin-bottom:6px}
.bfc-site .fn-fighter .fn-record b{font:800 38px/1 'Barlow Condensed',sans-serif;color:#fff7eb;white-space:nowrap}
.fn-record b i{font-style:normal;color:var(--fn-green);font-weight:500}
.fn-fighter .fn-record strong{font:700 25px/1 'Barlow Condensed',sans-serif;white-space:nowrap;color:var(--fn-green)}
.fn-fighter-style{font-size:12px;line-height:1.7;color:var(--fn-card-muted);margin:14px 0;overflow-wrap:anywhere}
.fn-form-line{display:flex;align-items:center;gap:12px;margin:auto 0 0;padding:0 0 18px}
.fn-form-line>small{font-size:9px;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.fn-form-line .fn-results{flex-wrap:wrap;gap:4px}
.bfc-site .fn-fighter .fn-actions{margin:0;padding-top:16px;border-top:1px solid var(--fn-card-line);gap:8px;justify-content:space-between}
.bfc-site .fn-fighter .fn-actions .fn-primary{font-size:11px;min-height:44px;padding:10px 14px;border-radius:2px}
.bfc-site .fn-fighter .fn-actions .fn-text{font-size:11px;min-height:44px;padding:8px 4px}
@media(max-width:900px){.bfc-site .fn-grid.four:has(>.fn-fighter){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.bfc-site .fn-grid:has(>.fn-fighter),.bfc-site .fn-grid.four:has(>.fn-fighter){grid-template-columns:1fr}.fn-fighter-portrait{aspect-ratio:1/1;min-height:300px}.bfc-site .fn-fighter .fn-fighter-identity h3{font-size:48px}.bfc-site .fn-fighter .fn-placeholder{font-size:170px}.bfc-site .fn-fighter-body{padding:0 22px 22px}}
.bfc-site .league-desk .league-player-poster{display:block;margin-top:16px;padding-top:12px;border-top:1px solid var(--fn-card-line);font-size:11px;line-height:1.7;color:var(--fn-green)}
.league-player-poster>span{display:block;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.league-desk .league-check{display:flex;align-items:flex-start;gap:12px;line-height:1.7;font-size:14px}
.league-desk .league-check input[type=checkbox]{flex:0 0 20px;width:20px;height:20px;margin:4px 0 0;padding:0;accent-color:var(--fn-green)}
.league-desk fieldset{border:1px solid var(--fn-card-line);padding:12px 18px;margin:18px 0}
.league-profile-editor{margin:20px 0}.fn-fargo{font-size:14px;font-weight:800;color:var(--fn-green);margin:12px 0 0}.fn-fargo small{font-size:10px;margin-left:8px;font-weight:400;color:var(--fn-card-muted)}
.bfc-site #playerDialog{background:radial-gradient(ellipse at 100% 0,var(--fn-card-glow),transparent 65%),var(--fn-card-bg);border-color:var(--fn-green);border-top-width:4px;border-radius:3px}
.bfc-site .fn-detail-hero{grid-template-columns:210px minmax(0,1fr);gap:26px}
.bfc-site .fn-detail-hero .fn-avatar{height:290px;width:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 22%;border:1px solid var(--fn-card-line);border-bottom:3px solid var(--fn-green);background:linear-gradient(0deg,var(--fn-card-bg),transparent 140%),var(--fn-bg-image) center/cover,var(--fn-card-surface)}
.bfc-site .fn-detail-hero h2{font-size:clamp(38px,5vw,64px);line-height:.95;overflow-wrap:anywhere;color:#fff7eb;text-shadow:3px 3px 0 #0005;margin:12px 0}
.bfc-site #playerDetail .fn-stat-grid{background:var(--fn-card-line);border-color:var(--fn-card-line)}
.bfc-site #playerDetail .fn-stat-grid>div{background:var(--fn-card-surface)}
@media(max-width:600px){.bfc-site .fn-detail-hero{grid-template-columns:1fr;gap:18px}.bfc-site .fn-detail-hero .fn-avatar{height:320px;max-width:100%}.bfc-site #playerDetail .fn-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bfc-site #playerDetail .fn-stat-grid>div{padding:12px}}

/* Fight posters: strong names, corner stripes and a metallic prize plate. */
.bfc-site .league-desk .league-match{
  isolation:isolate;border-radius:3px;border-top-width:4px;border-bottom:3px solid var(--fn-green);
  background:linear-gradient(110deg,#100d0be8 5%,#100d0b70 100%),var(--fn-bg-image) center/cover,var(--fn-card-bg);
  box-shadow:0 14px 30px #0007,inset 0 0 0 4px #ffffff06;
}
.bfc-site .league-desk .league-match::before{
  content:'';position:absolute;z-index:-1;inset:0;
  background:linear-gradient(125deg,transparent 48%,var(--fn-card-glow) 49%,transparent 70%);
  pointer-events:none;
}
.bfc-site .league-desk .league-match::after{
  content:'';position:absolute;right:-16px;top:70px;width:48px;height:140px;opacity:.4;
  background:repeating-linear-gradient(135deg,var(--fn-green) 0 3px,transparent 3px 15px);
  transform:skewY(-16deg);pointer-events:none;
}
.bfc-site .league-desk .league-match-next{box-shadow:0 0 28px var(--fn-card-glow),0 18px 35px #0008;border-color:var(--fn-green)}
.bfc-site .league-match .league-week{border:0;border-radius:0;padding:7px 12px;background:var(--fn-green);color:#19110d;font-weight:900;clip-path:polygon(0 0,100% 0,92% 100%,0 100%)}
.bfc-site .league-match-top>span:last-child{font-size:9px;letter-spacing:.12em;color:var(--fn-green)}
.bfc-site .league-desk .league-faceoff{position:relative;z-index:1;margin:30px 0 24px;gap:10px;font-size:clamp(40px,4.4vw,60px);font-weight:900;font-style:italic;line-height:.92;letter-spacing:-.025em;text-shadow:3px 4px 0 #0008,0 2px 18px #000}
.bfc-site .league-desk .league-faceoff small{font-size:12px;font-style:normal;letter-spacing:.15em;color:var(--fn-green)}
.bfc-site .league-faceoff small::before{width:38px;height:2px;opacity:1}
.bfc-site .league-match .league-stakes{margin:0 -10px;padding:16px 12px;border-radius:0;border-color:var(--fn-card-line);border-left:3px solid var(--fn-green);background:linear-gradient(110deg,var(--fn-card-glow),#08090ad9 75%)}
.bfc-site .league-desk .league-stakes strong{font-size:42px;letter-spacing:-.02em;color:var(--fn-green)}
.bfc-site .league-match .league-stakes>span{font-weight:900;letter-spacing:.1em;color:#fff7eb}
.bfc-site .fn-fighter{border-radius:3px;border:1px solid var(--fn-card-line);border-top:4px solid var(--fn-green);border-bottom:3px solid var(--fn-green);box-shadow:0 20px 40px #0009,inset 0 0 0 4px #ffffff05}
.bfc-site .fn-fighter-portrait::before{width:100px;height:220px;opacity:.45}
.bfc-site .fn-fighter-stamp{inset:16px 14px auto;font-size:10px;letter-spacing:.1em}
.bfc-site .fn-fighter-stamp>span:first-child{padding:8px 10px;background:#100d0bcc;border-left:3px solid var(--fn-green)}
.bfc-site .fn-fighter-stamp>span:last-child{background:var(--fn-green);color:#19110d;padding:8px 10px;text-shadow:none;font-weight:900}
.bfc-site .fn-fighter .fn-fighter-identity h3{font-style:italic;font-size:clamp(42px,4.1vw,62px);text-shadow:3px 4px 0 #0009,0 3px 18px #000}
.bfc-site .fn-fighter-identity>span{display:inline-block;border-left:3px solid var(--fn-green);padding-left:9px;color:#fff7eb}
.bfc-site .fn-fighter-body{background:linear-gradient(155deg,var(--fn-card-surface),var(--fn-card-bg) 70%)}
.bfc-site .bfc-task{border-radius:3px;border-top:3px solid var(--fn-green);box-shadow:0 12px 28px #0005;background:linear-gradient(120deg,var(--fn-card-surface),var(--fn-card-bg));transition:transform .18s ease,box-shadow .18s ease}
@media(hover:hover){.bfc-site .league-desk .league-match:hover,.bfc-site .fn-fighter:hover,.bfc-site .bfc-task:hover{border-color:var(--fn-green);box-shadow:0 18px 38px #0009,0 0 22px var(--fn-card-glow)}}
@media(max-width:760px){.bfc-site .league-desk .league-faceoff{grid-template-columns:1fr;gap:10px;font-size:clamp(42px,12vw,62px)}.bfc-site .league-faceoff>span:last-child{text-align:left}.bfc-site .league-faceoff small::before{display:block}.bfc-site .league-desk .league-stakes strong{font-size:38px}.bfc-site .fn-fighter .fn-fighter-identity h3{font-size:clamp(42px,12vw,62px)}}
@media(prefers-reduced-motion:reduce){.bfc-site .bfc-task{transition:none}}

/* Separate contenders visually while retaining the shared season artwork. */
.bfc-site :is(.league-match,.fn-fighter,.bfc-task){--poster-tint:#48301b;--poster-accent:#ffd080;--poster-glow:#ffd08033}
.bfc-site :is(.league-match,.fn-fighter,.bfc-task):nth-child(3n+1){--poster-tint:#4b1c20;--poster-accent:#ff927f;--poster-glow:#ff654b38}
.bfc-site :is(.league-match,.fn-fighter,.bfc-task):nth-child(3n+2){--poster-tint:#123d3e;--poster-accent:#71e4dc;--poster-glow:#3ce4d838}
.bfc-site :is(.league-match,.fn-fighter,.bfc-task){--fn-green:var(--poster-accent);--fn-card-glow:var(--poster-glow);--fn-card-line:color-mix(in srgb,var(--poster-accent) 45%,#262023);--match-accent:var(--poster-accent)}
.bfc-site .league-desk .league-match{background:linear-gradient(135deg,color-mix(in srgb,var(--poster-tint) 95%,transparent),#100d0b7d 75%),var(--fn-bg-image) center/cover,var(--fn-card-bg);border-top-color:var(--poster-accent)}
.bfc-site .league-desk .league-faceoff>span:last-child{color:var(--poster-accent)}
.bfc-site .league-match .league-stakes{background:linear-gradient(110deg,var(--poster-accent),color-mix(in srgb,var(--poster-accent) 75%,#fff));border:0;border-radius:2px;box-shadow:0 5px 22px #0004}
.bfc-site .league-desk .league-stakes :is(strong,small),.bfc-site .league-match .league-stakes>span{color:#171214;text-shadow:none}
.bfc-site .fn-fighter-body{background:linear-gradient(145deg,var(--poster-tint),var(--fn-card-bg) 90%)}
.bfc-site .fn-fighter .fn-fighter-identity h3{color:var(--poster-accent)}
.bfc-site .bfc-task{background:linear-gradient(120deg,var(--poster-tint),var(--fn-card-bg))}
.bfc-site .fn-fighter .fn-result.win{color:#b4edb2;border-color:#568552}

/* A real portrait and public nickname for each side of a matchup. */
.league-match-title,.fn-match-title{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap}
.bfc-site .league-desk .league-portrait-faceoff{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);gap:10px;align-items:start;margin:22px 0;font-style:normal;text-shadow:none;font-size:16px;letter-spacing:0}
.league-contender{min-width:0;display:flex;flex-direction:column;text-align:left}
.league-contender-photo,.fn-match-portrait{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:3/4;border:1px solid var(--fn-card-line);border-bottom:3px solid var(--fn-green);background:linear-gradient(145deg,var(--poster-tint,var(--fn-card-surface)),#151112)}
.league-contender-photo{width:100%;margin-bottom:12px}
.league-contender-photo img,.fn-match-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.contender-photo-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:8px;color:var(--fn-green);background:radial-gradient(ellipse at top,var(--fn-card-glow),transparent 70%)}
.contender-photo-fallback b{font:900 clamp(35px,5vw,64px)/1 'Barlow Condensed',sans-serif;letter-spacing:-.04em}
.bfc-site .contender-photo-fallback small{font:600 8px/1.4 Inter,Arial,sans-serif;color:var(--fn-card-muted);letter-spacing:.05em;text-transform:uppercase;margin-top:10px}
.has-photo .contender-photo-fallback{display:none}
.bfc-site .league-desk .league-portrait-faceoff .contender-photo-fallback small{display:block;font:600 8px/1.5 Inter,Arial,sans-serif;letter-spacing:.04em;color:var(--fn-card-muted)}
.contender-photo-fallback small::before{display:none!important}
.bfc-site .league-desk .league-contender-name{min-height:30px;font:700 11px/1.4 Inter,Arial,sans-serif;letter-spacing:.02em;color:#fff7eb;text-transform:uppercase;overflow-wrap:anywhere}
.bfc-site .league-desk .league-contender-nickname{display:block;min-height:60px;font:900 clamp(25px,2.6vw,36px)/.95 'Barlow Condensed','Arial Narrow',sans-serif;font-style:italic;letter-spacing:-.01em;text-transform:uppercase;overflow-wrap:anywhere;color:var(--fn-green);text-shadow:2px 3px 0 #0009}
.bfc-site .league-desk .league-nickname-pending{display:block;min-height:60px;font:600 10px/1.6 Inter,Arial,sans-serif;color:var(--fn-card-muted);text-transform:none;letter-spacing:0}
.league-contender:has(.league-nickname-pending) .league-contender-name{font:900 26px/1 'Barlow Condensed',sans-serif!important;margin-bottom:3px}
.bfc-site .league-desk .league-contender-link{min-height:28px;font:700 10px/1.6 Inter,Arial,sans-serif;color:var(--fn-green)!important;text-transform:none;text-underline-offset:3px}
.bfc-site .league-desk .league-versus{justify-content:center;align-self:start;margin-top:60px;font:900 15px/1 'Barlow Condensed',sans-serif;color:#fff7eb;letter-spacing:0}
.bfc-site .league-versus::before{display:none!important}
.league-origin,.fn-origin{padding-top:14px;margin-top:18px;border-top:1px solid var(--fn-card-line)}
.bfc-site .league-origin>small,.bfc-site .fn-origin>small{display:block;font:800 9px/1.5 Inter,Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:var(--fn-green)}
.bfc-site .league-origin p,.bfc-site .fn-origin p{font:400 12px/1.7 Inter,Arial,sans-serif;color:var(--fn-card-muted);margin:10px 0;max-width:65ch}
.bfc-site .league-origin p>b{display:block;color:#fff7eb;font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.fn-origin{margin:0 0 18px}
.fn-match-people{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);align-items:center;gap:12px;margin:14px 0}
.fn-match-person{display:flex;gap:10px;align-items:center;margin:10px 0;min-width:0}
.fn-match-portrait{width:60px;flex:0 0 60px}
.fn-match-person>div:last-child{min-width:0}
.fn-match-person b{display:block;font:900 24px/1 'Barlow Condensed',sans-serif;text-transform:uppercase;overflow-wrap:anywhere;color:var(--fn-green)}
.fn-match-person small{display:block;font:500 10px/1.5 Inter,sans-serif;color:var(--fn-card-muted);margin-top:5px}
.fn-match-versus{font:900 18px/1 'Barlow Condensed',sans-serif;color:var(--fn-green)}
@media(max-width:760px){.bfc-site .league-desk .league-portrait-faceoff{grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);gap:12px}.bfc-site .league-desk .league-contender-nickname{font-size:clamp(28px,6vw,38px)}.bfc-site .league-desk .league-contender-name{font-size:12px}.league-contender-photo{max-height:260px}.bfc-site .league-desk .league-versus{margin-top:90px}}
@media(max-width:420px){.bfc-site .league-desk .league-portrait-faceoff{gap:7px;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr)}.fn-match-people{gap:6px}.fn-match-person{display:block}.fn-match-portrait{width:70px;margin-bottom:8px}.fn-match-person b{font-size:21px}.bfc-site .league-desk .league-versus{margin-top:55px}}
.league-origins{margin-top:18px;padding-top:18px;border-top:1px solid var(--fn-card-line)}
.league-origins-heading{font:800 17px/1.2 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.03em;margin:0 0 5px;color:#fff7eb}
.bfc-site .league-desk .league-story-caption{font:500 10px/1.6 Inter,Arial,sans-serif;color:var(--fn-card-muted);margin:0 0 18px}
.league-origin-name{display:block;font:800 10px/1.4 Inter,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--fn-green)}
.league-origins>div+div{margin-top:18px;padding-top:18px;border-top:1px solid var(--fn-card-line)}
.league-origins .league-origin{border:0;margin:5px 0 0;padding:0}
.league-origins .league-origin>small{display:none}
.bfc-site :is(.league-origin,.fn-origin) h4{font:800 21px/1.15 'Barlow Condensed',sans-serif;color:#fff7eb;margin:8px 0;text-transform:uppercase;letter-spacing:.02em}
.bfc-site :is(.league-origin,.fn-origin) .contender-origin-chapter{border:0;background:#0002;margin:10px 0 0;padding:0 10px;border-left:2px solid var(--fn-green)}
.bfc-site :is(.league-origin,.fn-origin) .contender-origin-chapter summary{padding:12px 0;min-height:44px;box-sizing:border-box;cursor:pointer;color:var(--fn-green);font:700 11px/1.6 Inter,Arial,sans-serif;text-transform:none;letter-spacing:0}
.bfc-site :is(.league-origin,.fn-origin) .contender-origin-chapter p{padding-bottom:14px;font-size:12px;line-height:1.8}
.season-matchup-person{display:flex;flex-direction:column;gap:7px;align-items:flex-start;min-width:0}
.season-matchup-person .fn-match-portrait{width:100px;max-width:100%;flex:auto}
.season-matchup-person strong{font:900 26px/1 'Barlow Condensed',sans-serif;color:var(--fn-green);text-transform:uppercase;overflow-wrap:anywhere}
.season-matchup-person>small{font:500 11px/1.5 Inter,sans-serif;color:var(--fn-card-muted);overflow-wrap:anywhere}
#matchupsContent .p-card>div>div:last-child .season-matchup-person{align-items:flex-end}
.contender-alignment{display:inline-block;margin-top:8px;padding:4px 7px;border:1px solid var(--fn-card-line);font:800 8px/1.4 Inter,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--fn-green);background:#0003}
.contender-chronicles{margin:18px 0;padding:14px 0;border-top:2px solid var(--fn-green)}
.bfc-site .contender-chronicles>small,.bfc-site .contender-result-chapter>small{display:block;font:800 8px/1.6 Inter,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--fn-green)}
.bfc-site .contender-chronicles h4{font:800 20px/1.15 'Barlow Condensed',sans-serif;text-transform:uppercase;color:#fff7eb;margin:8px 0}
.contender-result-chapter{padding:12px 0;border-bottom:1px solid var(--fn-card-line)}
.bfc-site .contender-result-chapter .contender-recorded-result{font:700 11px/1.7 Inter,sans-serif;color:#fff7eb;margin:10px 0}
.bfc-site .contender-chronicles .contender-origin-chapter{margin-top:10px;padding:0 10px;border:0;border-left:2px solid var(--fn-green);background:#0003}
.bfc-site .contender-chronicles :is(.contender-origin-chapter,.contender-chapter-history)>summary{cursor:pointer;box-sizing:border-box;min-height:44px;padding:12px 0;font:700 11px/1.6 Inter,Arial,sans-serif;color:var(--fn-green)}
.bfc-site .contender-chronicles .contender-origin-chapter p{font:400 12px/1.8 Inter,sans-serif;color:var(--fn-card-muted);margin:0;padding:10px 0 16px}
.bfc-site .contender-chapter-pending{font:500 11px/1.7 Inter,sans-serif;color:var(--fn-card-muted);padding:12px;border-left:2px solid var(--fn-card-line);background:#0002}
.contender-world-story{padding:clamp(20px,4vw,36px);margin:0 0 36px;border:1px solid var(--fn-card-line);border-top:4px solid var(--fn-green);background:linear-gradient(135deg,var(--fn-card-surface),var(--fn-card-bg));box-shadow:0 18px 38px #0005}
.bfc-site .contender-world-story>small{font:800 9px/1.6 Inter,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--fn-green)}
.bfc-site .contender-world-story h2{font:900 clamp(38px,6vw,68px)/.95 'Barlow Condensed',sans-serif;letter-spacing:-.02em;text-transform:uppercase;color:#fff7eb;margin:16px 0}
.bfc-site .contender-world-story p{font:400 14px/1.9 Inter,sans-serif;max-width:78ch;color:var(--fn-card-muted)}
.bfc-site .contender-world-story .contender-world-lead{font-size:17px;font-weight:700;color:#fff7eb}
.bfc-site .contender-world-story .contender-story-truth{font-size:11px;padding-left:14px;border-left:2px solid var(--fn-green)}
.contender-world-story .contender-result-chapter{margin-top:20px}
.bfc-site .contender-world-story :is(.contender-origin-chapter,.contender-chapter-history)>summary{min-height:44px;box-sizing:border-box;padding:12px 0;cursor:pointer;color:var(--fn-green);font:700 12px/1.6 Inter,sans-serif}
.bfc-site .contender-world-story .contender-result-chapter h4{font:800 27px/1.2 'Barlow Condensed',sans-serif;color:#fff7eb;margin:8px 0;text-transform:uppercase}
.contender-world-link,.bfc-site .league-desk .league-story-link a{display:inline-block;min-height:44px;box-sizing:border-box;padding:12px 0;font:700 11px/1.6 Inter,sans-serif;color:var(--fn-green)!important;text-underline-offset:4px}
.playing-style-summary{padding:12px 0;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--fn-card-line)}
.playing-style-summary b{font:800 17px/1.2 'Barlow Condensed',sans-serif;color:var(--fn-green)}
.playing-style-summary small{font:500 9px/1.5 Inter,sans-serif;text-align:right;color:var(--fn-card-muted)}
.public-style-profile,.public-rivalry-profile{margin:28px 0;padding:22px 0;border-top:2px solid var(--fn-green)}
.bfc-site .profile-fact-note{font:400 12px/1.8 Inter,sans-serif;color:var(--fn-card-muted);max-width:75ch}
.public-style-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}
.public-style-grid>div{padding:18px;background:var(--fn-card-surface);border:1px solid var(--fn-card-line)}
.public-style-grid small{display:block;font:700 9px/1.6 Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--fn-card-muted);margin:0 0 8px}
.public-style-grid strong{display:block;font:800 25px/1.1 'Barlow Condensed',sans-serif;color:var(--fn-green);margin:0 0 18px}
.public-style-grid p,.public-style-profile dd{font:400 13px/1.8 Inter,sans-serif;color:var(--fn-card-muted);margin:0 0 16px;overflow-wrap:anywhere}
.public-style-profile dt{font:800 11px/1.6 Inter,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:#fff7eb;margin:14px 0 6px}
.rivalry-map-svg{display:block;width:100%;max-width:640px;height:auto;margin:20px auto;border:1px solid var(--fn-card-line);border-radius:3px;background:radial-gradient(ellipse at center,var(--fn-card-glow),transparent 70%),var(--fn-card-bg)}
.rivalry-map-svg a:hover{filter:brightness(1.25)}
.rivalry-table{width:100%;min-width:340px;border-collapse:collapse;font:500 12px/1.6 Inter,sans-serif}
.rivalry-table :is(th,td){padding:12px 10px;text-align:left;border-bottom:1px solid var(--fn-card-line)}
.rivalry-table th{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--fn-card-muted)}
.rivalry-table small{display:block;font-size:10px;color:var(--fn-card-muted);margin-top:4px}
.rivalry-table a{color:var(--fn-green);text-underline-offset:3px}
.playing-style-fields{padding:18px;margin:20px 0;border:1px solid var(--fn-card-line)}
.playing-style-fields legend{font:800 11px/1.5 Inter,sans-serif;text-transform:uppercase;color:var(--fn-green);padding:0 6px}
.playing-style-fields p{font:400 12px/1.8 Inter,sans-serif;color:var(--fn-card-muted)}
@media(max-width:600px){.public-style-grid{grid-template-columns:1fr}.public-style-profile,.public-rivalry-profile{padding-top:18px}.playing-style-fields{padding:12px}}

/* Editable player sayings stay readable below the contender identity. */
.bfc-site .contender-saying{display:block;margin:10px 0 14px;font:italic 600 15px/1.45 Inter,Arial,sans-serif;letter-spacing:0;text-transform:none;color:var(--fn-green,#f7c887);overflow-wrap:anywhere;max-width:100%;}
.bfc-site .league-contender .contender-saying{min-height:44px;font-size:13px;}
.bfc-site .season-matchup-person .contender-saying,.bfc-site .fn-match-person .contender-saying{font-size:12px;margin:7px 0;}
.bfc-site .fn-detail-hero .contender-saying{font-size:20px;}

/* Fight-card faceoffs: a clear, central versus marker. */
.bfc-site .league-desk .league-portrait-faceoff{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);gap:10px}
.bfc-site .league-desk .league-portrait-faceoff .league-versus{display:grid;place-items:center;width:44px;min-height:44px;margin-top:100px;border:1px solid currentColor;transform:rotate(-7deg);font:900 25px/1 'Barlow Condensed',sans-serif;letter-spacing:0;color:var(--poster-accent,var(--fn-green));background:#180f0dcc;box-shadow:0 0 20px #0006}
@media(max-width:760px){.bfc-site .league-desk .league-portrait-faceoff{grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr);gap:6px}.bfc-site .league-desk .league-portrait-faceoff .league-versus{width:32px;min-height:36px;font-size:21px;margin-top:75px}}

.bfc-supporter-guide{margin:28px auto;padding:25px!important;border:1px solid var(--fn-green,#f4c789);background:linear-gradient(120deg,#3e261eee,#201a15f0);box-sizing:border-box;color:var(--fn-card-text,#fff1de)}
.bfc-supporter-guide h2{font:900 clamp(28px,4vw,43px)/1.05 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:10px 0 15px;color:#fff1de}.bfc-supporter-guide p{font-size:14px;line-height:1.65}.bfc-supporter-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.bfc-supporter-feature-grid article{border-left:3px solid var(--fn-green,#f4c789);padding:12px;background:#120d0b66}.bfc-supporter-feature-grid b{font-size:18px;color:var(--fn-green,#f4c789)}.bfc-supporter-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.bfc-supporter-actions a{color:var(--fn-green,#f4c789)}@media(max-width:850px){.bfc-supporter-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.bfc-supporter-feature-grid{grid-template-columns:1fr}.bfc-supporter-guide{padding:18px!important}}
.campaign-file{margin:14px 0;padding:12px;border:1px solid var(--fn-card-line);background:linear-gradient(135deg,#140e0bcc,#35241c99);border-left:3px solid var(--fn-green)}
.campaign-file-head{display:flex;justify-content:space-between;gap:10px;align-items:center;color:var(--fn-green);font:800 10px/1.5 Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.04em}.campaign-file-head b{flex-shrink:0;padding:5px 7px;background:var(--fn-green);color:#24180f!important;font:900 13px/1.2 'Barlow Condensed',Arial,sans-serif!important}
.campaign-xp{height:5px;background:#ffffff19;margin:10px 0 6px;overflow:hidden}.campaign-xp>span{display:block;height:100%;background:var(--fn-green)}.campaign-file>small{display:block;font:500 9px/1.5 Inter,Arial,sans-serif;color:var(--fn-card-muted)}
.bfc-site .campaign-loadout{margin:10px 0 0!important;border-top:1px solid var(--fn-card-line)!important;padding:0!important}.bfc-site .campaign-loadout summary{padding:12px 0;min-height:44px;box-sizing:border-box;cursor:pointer;color:var(--fn-green);font:700 11px/1.6 Inter,sans-serif}.campaign-loadout dt{font:800 9px/1.6 Inter,sans-serif;text-transform:uppercase;color:var(--fn-green);margin-top:12px}.campaign-loadout dd{font:500 12px/1.7 Inter,sans-serif;color:#fff1de;margin:4px 0 12px;overflow-wrap:anywhere}.bfc-site .campaign-loadout p{font:400 10px/1.7 Inter,sans-serif;color:var(--fn-card-muted)}
.bfc-site .contender-origin-chapter .campaign-dialogue{border-left:2px solid var(--fn-green);padding:10px 12px!important;margin:12px 0!important;color:#fff3df;font-weight:650;background:#ffffff07}.bfc-site .contender-origin-chapter .campaign-cliffhanger{font-style:italic;color:var(--fn-green);border-top:1px solid var(--fn-card-line);padding-top:14px}
.campaign-map{margin:28px 0;padding:20px;background:#160e0c66;border:1px solid var(--fn-card-line)}.campaign-map>small{font:800 10px/1.6 Inter,sans-serif;text-transform:uppercase;color:var(--fn-green)}.campaign-map ol{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;margin:18px 0}.campaign-node{border:1px solid var(--fn-card-line);background:#0003;min-width:0}.campaign-node.next{border-color:var(--fn-green);box-shadow:inset 0 3px var(--fn-green)}.campaign-node.resolved{background:#ffffff0a}.campaign-node.locked{opacity:.65}.campaign-node summary{padding:14px!important;display:flex;gap:12px;min-height:70px!important;cursor:pointer;font:800 15px/1.3 'Barlow Condensed',Arial,sans-serif;color:#fff1de;text-transform:uppercase}.campaign-node summary>b{font-size:25px;color:var(--fn-green)}.campaign-node summary small{display:block;margin-top:6px;font:600 9px/1.6 Inter,sans-serif;color:var(--fn-card-muted);text-transform:none}.bfc-site .campaign-node p{font-size:11px;line-height:1.6;margin:0;padding:0 14px 14px}
@media(max-width:700px){.campaign-map ol{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-file-head{align-items:flex-start;flex-direction:column}}

#playerDetail .fn-origin>h4{font-size:32px;line-height:1.1}#playerDetail .fn-origin .contender-origin-chapter p,#playerDetail .contender-chronicles .contender-origin-chapter p{font-size:15px;line-height:1.9;max-width:72ch;padding-bottom:12px}#playerDetail .campaign-file-head{font-size:12px}#playerDetail .campaign-file-head b{font-size:17px!important}#playerDetail .campaign-loadout dd{font-size:14px}#playerDetail .fn-origin{padding:20px 0;margin:24px 0;border-top:2px solid var(--fn-green)}
