:root {
  color-scheme: dark;
  --bg: #06120f;
  --bg-2: #0a1d17;
  --surface: rgba(14, 37, 30, .78);
  --surface-strong: rgba(17, 46, 37, .94);
  --surface-soft: rgba(255, 255, 255, .055);
  --line: rgba(133, 255, 216, .17);
  --line-strong: rgba(183, 255, 42, .42);
  --text: #f4f7ef;
  --muted: #aabbb3;
  --lime: #b7ff2a;
  --mint: #58f2d3;
  --gold: #f5d547;
  --danger: #ff6b63;
  --shadow: 0 30px 90px rgba(0, 0, 0, .42);
  --radius: 24px;
  --ease: cubic-bezier(.16, 1, .3, 1);
  --z-bg: 0;
  --z-content: 10;
  --z-header: 30;
  --z-skip: 50;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--bg); }
body { margin: 0; min-width: 320px; min-height: 100dvh; overflow-x: hidden; background: var(--bg); color: var(--text); font-size: 15px; }
button, input { font: inherit; }
button, a, label { -webkit-tap-highlight-color: transparent; touch-action: manipulation; }
button { color: inherit; }
button:not(:disabled), a, label:has(input) { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .45; }
:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }
.sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: var(--z-skip); left: 16px; top: 12px; padding: 12px 16px; border-radius: 12px; color: #06120f; background: var(--lime); transform: translateY(-160%); transition: transform .2s var(--ease); font-weight: 800; }
.skip-link:focus { transform: translateY(0); }

.app-shell { position: relative; isolation: isolate; min-height: 100dvh; }
.stadium-atmosphere { position: fixed; z-index: var(--z-bg); inset: 0; overflow: hidden; pointer-events: none; background: radial-gradient(circle at 50% -20%, rgba(88, 242, 211, .18), transparent 45%), linear-gradient(155deg, #06120f 0%, #091a15 48%, #040b09 100%); }
.stadium-atmosphere::before { content: ""; position: absolute; inset: 0; opacity: .16; background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to bottom, transparent 4%, #000 42%, transparent 92%); }
.atmosphere-light { position: absolute; width: 48vw; height: 75vh; top: -28vh; filter: blur(14px); opacity: .18; background: conic-gradient(from 185deg at 50% 0, transparent 0 39%, #dffff6 46% 53%, transparent 61%); }
.light-one { left: -7vw; transform: rotate(-13deg); }
.light-two { right: -7vw; transform: scaleX(-1) rotate(-13deg); }
.fan-particles { position: absolute; inset: 0; opacity: .19; background-image: radial-gradient(circle, var(--mint) 0 1px, transparent 1.4px); background-size: 67px 61px; animation: crowd-drift 18s linear infinite; }
.pitch-grid { position: absolute; left: 50%; bottom: -35vh; width: min(1200px, 130vw); height: 70vh; transform: translateX(-50%) perspective(450px) rotateX(62deg); border: 1px solid rgba(88,242,211,.16); background: repeating-linear-gradient(90deg, transparent 0 9.7%, rgba(88,242,211,.08) 10%), repeating-linear-gradient(0deg, transparent 0 15.8%, rgba(88,242,211,.08) 16%); }

.topbar { position: sticky; z-index: var(--z-header); top: 0; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 24px; min-height: 76px; padding: 12px clamp(20px, 4vw, 64px); border-bottom: 1px solid var(--line); background: rgba(5, 15, 12, .78); backdrop-filter: blur(18px); }
.brand { display: inline-flex; align-items: center; gap: 12px; color: var(--text); text-decoration: none; }
.brand-mark { display: grid; place-items: center; width: 42px; aspect-ratio: 1; border: 1px solid var(--line-strong); border-radius: 13px; color: #07120f; background: var(--lime); font-weight: 950; letter-spacing: -.08em; box-shadow: 0 0 30px rgba(183,255,42,.19); }
.brand strong, .brand small { display: block; }
.brand strong { font-size: 13px; letter-spacing: .14em; }
.brand small { margin-top: 3px; color: var(--muted); font-size: 9px; letter-spacing: .18em; }
.stage-progress { display: flex; justify-content: center; align-items: center; gap: clamp(8px, 1.6vw, 24px); }
.stage-step { display: grid; justify-items: center; gap: 5px; color: #71827a; font-size: 10px; letter-spacing: .08em; }
.stage-step i { width: 7px; height: 7px; border-radius: 50%; border: 1px solid currentColor; transition: .25s var(--ease); }
.stage-step.complete { color: var(--mint); }
.stage-step.complete i { background: var(--mint); }
.stage-step.current { color: var(--lime); }
.stage-step.current i { background: var(--lime); box-shadow: 0 0 0 6px rgba(183,255,42,.1), 0 0 18px rgba(183,255,42,.5); }
.topbar-meta { display: flex; align-items: center; gap: 12px; color: var(--muted); font-size: 10px; letter-spacing: .12em; }
.live-signal { display: inline-flex; gap: 7px; align-items: center; }
.live-signal i, .match-status i, .landed-note i { width: 7px; height: 7px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 12px rgba(88,242,211,.75); }
.topbar-divider { width: 1px; height: 18px; background: var(--line); }

.live-impact-strip { position:sticky; z-index:calc(var(--z-header) - 1); top:76px; display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:14px; min-height:54px; padding:7px clamp(20px,4vw,64px); border-bottom:1px solid rgba(88,242,211,.2); background:rgba(5,18,14,.94); box-shadow:0 12px 28px rgba(0,0,0,.18); backdrop-filter:blur(18px); }
.live-impact-strip[hidden] { display:none; }
.live-impact-heading { display:grid; gap:2px; min-width:132px; }
.live-impact-heading span { color:var(--mint); font-size:10px; font-weight:950; letter-spacing:.18em; }
.live-impact-heading small { max-width:210px; overflow:hidden; color:var(--muted); font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.live-impact-values { display:flex; gap:6px; min-width:0; padding:2px 0; overflow-x:auto; scrollbar-width:none; }
.live-impact-values::-webkit-scrollbar { display:none; }
.live-impact-chip { position:relative; flex:0 0 auto; display:grid; grid-template-columns:auto auto; align-items:baseline; gap:1px 7px; min-width:74px; min-height:38px; padding:6px 9px; overflow:hidden; border:1px solid var(--line); border-radius:10px; background:rgba(255,255,255,.035); font-variant-numeric:tabular-nums; }
.live-impact-chip small { grid-column:1/-1; color:var(--muted); font-size:8px; font-weight:800; letter-spacing:.08em; }
.live-impact-chip b { color:var(--text); font-size:14px; }
.live-impact-chip em { color:var(--muted); font-size:9px; font-style:normal; font-weight:950; }
.live-impact-chip.is-up { border-color:rgba(183,255,42,.48); background:rgba(183,255,42,.1); }
.live-impact-chip.is-up b,.live-impact-chip.is-up em { color:var(--lime); }
.live-impact-chip.is-down { border-color:rgba(255,107,99,.48); background:rgba(255,107,99,.1); }
.live-impact-chip.is-down b,.live-impact-chip.is-down em { color:#ff9b95; }
.live-impact-chip.is-changed { animation:impact-number-pop .55s var(--ease) both; }
@keyframes impact-number-pop { 0% { opacity:.35; transform:translateY(7px) scale(.96); } 55% { transform:translateY(-2px) scale(1.035); } 100% { opacity:1; transform:none; } }

#app { position: relative; z-index: var(--z-content); min-height: calc(100dvh - 76px); }
.screen { width: min(1340px, calc(100% - 40px)); margin: 0 auto; padding: clamp(32px, 4.5vw, 64px) 0 54px; animation: screen-in .44s var(--ease) both; }
.narrow-screen { width: min(1120px, calc(100% - 40px)); }
.glass-card { border: 1px solid var(--line); background: linear-gradient(145deg, rgba(21,55,44,.82), rgba(8,24,19,.7)); box-shadow: var(--shadow); backdrop-filter: blur(15px); }
.eyebrow { display: flex; align-items: center; gap: 12px; margin: 0 0 18px; color: var(--mint); font-size: 11px; font-weight: 850; letter-spacing: .22em; text-transform: uppercase; }
.eyebrow-pulse { width: 8px; height: 8px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 18px var(--lime); }
.eyebrow-divider { width: 34px; height: 1px; background: var(--line-strong); }
h1, h2, p { margin-top: 0; }
h1 { margin-bottom: 22px; font-size: clamp(42px, 7vw, 100px); line-height: .94; letter-spacing: -.06em; }
h1 em { color: var(--lime); font-style: normal; text-shadow: 0 0 38px rgba(183,255,42,.14); }
h2 { letter-spacing: -.03em; }
.section-heading { max-width: 780px; margin-bottom: 42px; }
.section-heading h1 { font-size: clamp(40px, 5.4vw, 72px); }
.section-heading > p:last-child, .hero-lede { color: var(--muted); font-size: clamp(16px, 1.8vw, 20px); line-height: 1.7; }
.centered-heading { margin-inline: auto; text-align: center; }
.centered-heading .eyebrow { justify-content: center; }
.micro-label, .section-tag, .card-kicker { color: var(--mint); font-size: 11px; font-weight: 850; letter-spacing: .15em; }
.panel-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
.panel-heading h2 { margin: 4px 0 0; font-size: clamp(22px, 3vw, 32px); }

.btn { min-height: 48px; display: inline-flex; justify-content: center; align-items: center; gap: 10px; padding: 13px 20px; border: 1px solid transparent; border-radius: 14px; font-weight: 850; transition: transform .18s var(--ease), box-shadow .18s var(--ease), background .18s var(--ease), border-color .18s var(--ease); }
.btn svg, .icon { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.icon { display: inline-flex; flex: 0 0 20px; vertical-align: middle; }.icon > svg { width: 100%; height: 100%; }
.btn:hover { transform: translateY(-2px); }
.btn:active { transform: scale(.97); }
.btn:disabled { cursor: not-allowed; opacity: .42; transform: none; }
.btn-primary { color: #07120f; background: linear-gradient(135deg, var(--lime), #e4ff73); box-shadow: 0 12px 38px rgba(183,255,42,.18); }
.btn-primary:hover { box-shadow: 0 18px 50px rgba(183,255,42,.3); }
.btn-secondary { color: #06120f; background: var(--mint); }
.btn-ghost { border-color: var(--line); background: rgba(255,255,255,.04); }
.btn-large { min-height: 58px; padding-inline: 28px; }

.home-screen { min-height: calc(100dvh - 76px); display: grid; align-content: center; }
.home-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(420px, .92fr); align-items: center; gap: clamp(34px, 7vw, 100px); }
.home-copy h1 { max-width: 800px; }
.hero-lede { max-width: 620px; }
.hero-actions { display: flex; align-items: center; gap: 18px; margin: 34px 0; flex-wrap: wrap; }
.hero-note { color: var(--muted); font-size: 12px; }
.hero-metrics { display: flex; gap: clamp(24px, 5vw, 60px); margin-top: 48px; }
.hero-metrics div { display: grid; gap: 2px; }
.hero-metrics strong { color: var(--gold); font-size: clamp(26px, 4vw, 42px); font-variant-numeric: tabular-nums; }
.hero-metrics span { color: var(--muted); font-size: 11px; letter-spacing: .12em; }
.hero-stage { position: relative; min-height: 580px; display: grid; place-items: center; }
.hero-field { width: min(100%, 590px); filter: drop-shadow(0 28px 60px rgba(0,0,0,.5)); animation: field-float 8s ease-in-out infinite; }
.hero-player-glow { position: absolute; width: 210px; height: 360px; border-radius: 50%; background: radial-gradient(ellipse, rgba(183,255,42,.23), transparent 66%); filter: blur(22px); }
.hero-player-card { position: absolute; left: 50%; top: 50%; display: grid; justify-items: center; gap: 6px; width: 190px; padding: 24px; border-radius: 24px; transform: translate(-50%, -48%); text-align: center; }
.hero-initials { display: grid; place-items: center; width: 70px; aspect-ratio: 1; border-radius: 50%; color: var(--bg); background: var(--lime); font-size: 34px; font-weight: 950; }
.hero-player-card small { color: var(--muted); }
.orbit-label { position: absolute; display: flex; gap: 10px; align-items: baseline; padding: 10px 14px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); background: rgba(6,18,15,.8); font-size: 11px; }
.orbit-label b { color: var(--lime); }
.orbit-one { left: 3%; top: 22%; }.orbit-two { right: 1%; top: 43%; }.orbit-three { left: 8%; bottom: 17%; }
.scroll-cue { position: absolute; left: 0; bottom: 24px; display: flex; align-items: center; gap: 10px; color: #6f8078; font-size: 9px; letter-spacing: .16em; }
.scroll-cue span { width: 32px; height: 1px; background: var(--line); }

.profile-layout { display: grid; grid-template-columns: minmax(0, 1fr) 290px; gap: 28px; align-items: start; }
.profile-form-card, .profile-aside { padding: clamp(24px, 4vw, 46px); border-radius: var(--radius); }
.field-label { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 12px; font-weight: 800; }
.field-label span, .field-hint { color: var(--muted); font-size: 12px; font-weight: 500; }
input[type="text"] { width: 100%; min-height: 58px; padding: 0 18px; border: 1px solid var(--line); border-radius: 14px; color: var(--text); background: rgba(0,0,0,.22); font-size: 18px; }
input[type="text"]:focus { border-color: var(--lime); }
.nationality-select { width: 100%; min-height: 54px; padding: 0 16px; border: 1px solid var(--line); border-radius: 14px; color: var(--text); background: #0a1b16; font-size: 16px; }.nationality-select:focus { border-color: var(--lime); }.nationality-hint { margin-bottom: 18px; }
.field-hint { margin: 10px 0 30px; }
.position-fieldset { padding: 0; border: 0; }
.position-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.position-card { position: relative; min-height: 150px; display: grid; align-content: center; justify-items: center; gap: 5px; padding: 16px 8px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255,255,255,.035); transition: .2s var(--ease); }
.position-card:hover, .position-card.is-selected { border-color: var(--position-accent); background: color-mix(in srgb, var(--position-accent) 10%, transparent); transform: translateY(-3px); }
.position-card input { position: absolute; opacity: 0; }
.position-card strong { font-size: 24px; color: var(--position-accent); }
.position-card small { font-weight: 800; }.position-card em { max-width: 90px; color: var(--muted); font-size: 10px; font-style: normal; text-align: center; }
.position-shape { position: relative; width: 31px; height: 22px; border: 1px solid var(--position-accent); border-radius: 50%; }
.position-shape i { position: absolute; inset: 8px -8px auto; border-top: 1px solid var(--position-accent); }
.form-error { min-height: 24px; margin: 18px 0 4px; color: #ff8c85; }
.form-submit { width: 100%; }
.profile-aside { position: sticky; top: 102px; }
.aside-number { color: var(--gold); font-size: 72px; font-weight: 950; opacity: .35; }
.aside-line { width: 100%; height: 1px; margin: 12px 0 24px; background: var(--line); }
.profile-aside p { color: var(--muted); line-height: 1.7; }
.aside-legend { display: grid; gap: 10px; margin-top: 28px; color: var(--muted); font-size: 11px; }
.aside-legend span { display: flex; gap: 8px; align-items: center; }
.dot { width: 7px; height: 7px; border-radius: 50%; }.dot-green { background: var(--mint); }.dot-yellow { background: var(--gold); }

.draft-heading { max-width: none; display: flex; justify-content: space-between; gap: 32px; align-items: end; }
.draft-heading > div:first-child { max-width: 780px; }
.draft-count { text-align: right; }
.draft-count strong { display: block; color: var(--lime); font-size: 58px; line-height: 1; font-variant-numeric: tabular-nums; }
.draft-count small { color: var(--muted); font-size: 22px; }
.draft-count span { color: var(--muted); font-size: 11px; }
.attribute-progress { display: grid; grid-template-columns: repeat(13, 1fr); gap: 6px; margin: -20px 0 28px; }
.attribute-progress i { height: 5px; border-radius: 99px; background: rgba(255,255,255,.09); }
.attribute-progress i.is-locked { background: linear-gradient(90deg, var(--mint), var(--lime)); box-shadow: 0 0 12px rgba(183,255,42,.18); }
.draft-layout { display: grid; grid-template-columns: 310px minmax(0, 1fr); gap: 26px; align-items: start; }
.draft-main { order: 2; display: grid; gap: 22px; }
.roulette-card, .candidate-panel, .attribute-pick-panel, .draft-aside { border-radius: var(--radius); }
.roulette-card { padding: clamp(22px, 3vw, 36px); }
.roulette-top { display: flex; justify-content: space-between; gap: 20px; color: var(--muted); font-size: 10px; letter-spacing: .12em; }
.roulette-center { display: grid; grid-template-columns: 220px 1fr; gap: clamp(24px, 4vw, 54px); align-items: center; margin-top: 24px; }
.roulette-wheel { position: relative; display: grid; place-items: center; align-content: center; width: 210px; aspect-ratio: 1; border: 1px solid var(--line-strong); border-radius: 50%; background: radial-gradient(circle, rgba(183,255,42,.14), rgba(4,13,10,.9) 64%); overflow: hidden; }
.roulette-wheel::before, .roulette-wheel::after { content: ""; position: absolute; inset: 14px; border: 1px dashed rgba(88,242,211,.25); border-radius: 50%; }
.roulette-wheel::after { inset: 36px; }
.roulette-wheel:not(.is-landed) { animation: wheel-spin 9s linear infinite; }
.roulette-wheel strong { z-index: 2; color: var(--lime); font-size: 45px; }.roulette-wheel span { z-index: 2; color: var(--muted); font-size: 9px; letter-spacing: .14em; }
.roulette-copy h2 { margin: 7px 0 10px; font-size: clamp(28px, 4vw, 42px); }.roulette-copy > p:not(.micro-label) { color: var(--muted); line-height: 1.6; }
.landed-note { display: flex; align-items: center; gap: 9px; color: var(--mint); font-size: 12px; }
.candidate-panel, .attribute-pick-panel { padding: clamp(22px, 3vw, 34px); border: 1px solid var(--line); background: rgba(8,25,19,.72); }
.star-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.squad-tools { display: grid; grid-template-columns: minmax(0, 1fr) minmax(180px, .35fr); gap: 12px; margin: 18px 0 22px; }.squad-tools label { display: grid; gap: 7px; color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .08em; }.squad-tools input, .squad-tools select { width: 100%; min-height: 48px; padding: 10px 13px; border: 1px solid var(--line); border-radius: 12px; color: var(--text); background: #0a1b16; font-size: 16px; }.squad-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }.squad-grid .star-card { content-visibility: auto; contain-intrinsic-size: 0 520px; }.squad-empty { padding: 42px 20px; border: 1px dashed var(--line); border-radius: 14px; color: var(--muted); text-align: center; }
.star-card, .attribute-choice { position: relative; border: 1px solid var(--line); color: var(--text); background: rgba(255,255,255,.035); transition: .2s var(--ease); }
.star-card { min-height: 220px; padding: 20px; border-radius: 18px; text-align: left; }
.star-card:hover, .attribute-choice:hover { border-color: var(--lime); background: rgba(183,255,42,.07); transform: translateY(-3px); }
.star-card.is-selected-player { border-color: var(--lime); background: linear-gradient(145deg,rgba(183,255,42,.12),rgba(88,242,211,.04)); box-shadow: inset 0 0 0 1px rgba(183,255,42,.25),0 0 28px rgba(183,255,42,.12); }
.star-card-top { display: flex; justify-content: space-between; align-items: start; margin-bottom: 28px; }.star-card-top > span { color: var(--gold); font-size: 11px; }.star-card-top > b { color: var(--mint); font-size: 10px; }
.avatar { --avatar-accent: var(--lime); position: relative; display: grid; place-items: center; width: 58px; aspect-ratio: 1; border: 1px solid color-mix(in srgb, var(--avatar-accent) 70%, white); border-radius: 50%; background: radial-gradient(circle at 40% 30%, color-mix(in srgb, var(--avatar-accent) 35%, white), var(--avatar-accent)); color: #06120f; box-shadow: 0 0 30px color-mix(in srgb, var(--avatar-accent) 24%, transparent); font-weight: 950; }
.avatar i { position: absolute; inset: -5px; border: 1px solid color-mix(in srgb, var(--avatar-accent) 45%, transparent); border-radius: inherit; }
.large-avatar { width: 106px; font-size: 24px; }.medium-avatar { width: 76px; font-size: 18px; }
.star-card > strong { display: block; font-size: 18px; }.star-card > small { display: block; min-height: 36px; margin-top: 5px; color: var(--muted); }
.star-strengths { display: flex; gap: 6px; margin-top: 18px; flex-wrap: wrap; }.star-strengths span { padding: 5px 8px; border-radius: 8px; background: rgba(255,255,255,.05); color: var(--muted); font-size: 9px; }.star-strengths b { color: var(--gold); }
.player-ability-matrix { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; margin-top:12px; }.player-ability-matrix span { display:grid; grid-template-columns:1fr auto; gap:3px; align-items:center; min-height:28px; padding:4px 5px; border:1px solid var(--line); border-radius:7px; background:rgba(255,255,255,.025); }.player-ability-matrix small { overflow:hidden; color:var(--muted); font-size:9px; text-overflow:ellipsis; white-space:nowrap; }.player-ability-matrix b { color:var(--gold); font-size:11px; font-variant-numeric:tabular-nums; }.star-card-action { display:flex; min-height:44px; align-items:center; justify-content:space-between; margin-top:10px; padding:0 9px; border-radius:9px; color:var(--lime); background:rgba(183,255,42,.07); font-size:11px; font-weight:850; }.star-card-action .icon { width:16px; }.back-to-squad { display:inline-flex; min-height:48px; align-items:center; gap:8px; margin-bottom:14px; padding:0 14px; border:1px solid var(--line-strong); border-radius:11px; color:var(--text); background:rgba(255,255,255,.035); font-weight:850; cursor:pointer; }.back-to-squad:hover,.back-to-squad:focus-visible { border-color:var(--lime); color:var(--lime); }.back-to-squad .icon { width:17px; transform:rotate(180deg); }.attribute-player-summary { display:grid; grid-template-columns:96px minmax(0,1fr) auto; gap:16px; align-items:center; margin-bottom:20px; padding:14px; border:1px solid var(--line); border-radius:15px; background:rgba(255,255,255,.025); }.attribute-player-photo { width:96px; }.attribute-player-summary h2 { margin:4px 0 5px; }.attribute-player-summary > div > span { color:var(--muted); font-size:12px; }.attribute-choice:disabled { transform:none; cursor:not-allowed; opacity:.48; }.attribute-choice > em { color:var(--muted); font-size:9px; font-style:normal; font-weight:800; white-space:nowrap; }
.card-chevron, .club-chevron { position: absolute; right: 16px; bottom: 16px; }
.attribute-choice-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.attribute-choice { min-height: 86px; display: grid; grid-template-columns: 50px 1fr auto 24px; align-items: center; gap: 14px; padding: 13px 16px; border-radius: 15px; text-align: left; }
.attribute-code, .stat-code { color: var(--mint); font-size: 11px; font-weight: 900; letter-spacing: .1em; }.attribute-choice strong, .attribute-choice small { display: block; }.attribute-choice small { margin-top: 4px; color: var(--muted); font-size: 10px; }.attribute-choice > b { color: var(--gold); font-size: 24px; }
.selected-star-mark { display: grid; place-items: center; width: 48px; aspect-ratio: 1; border-radius: 50%; color: #06120f; background: var(--gold); font-weight: 950; }.panel-hint { margin: 18px 0 0; color: var(--muted); font-size: 11px; }
.draft-aside { position: sticky; top: 98px; order: 1; padding: 20px; }
.aside-header { display: flex; justify-content: space-between; align-items: center; color: var(--muted); font-size: 10px; font-weight: 850; letter-spacing: .15em; }.aside-header svg { width: 22px; }
.position-badge { display: inline-flex; gap: 7px; align-items: center; margin-top: 24px; padding: 7px 10px; border: 1px solid color-mix(in srgb, var(--badge-accent) 48%, transparent); border-radius: 8px; color: var(--badge-accent); font-weight: 900; }.position-badge span { color: var(--muted); font-size: 9px; font-weight: 600; }
.draft-aside h2, .match-aside h2 { margin: 14px 0 2px; }.aside-position { color: var(--muted); font-size: 12px; }
.unlocked-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 7px; margin-top: 20px; }
.unlocked-item { display: grid; grid-template-columns: 1fr auto; gap: 2px; min-height: 54px; padding: 9px; border: 1px solid rgba(255,255,255,.06); border-radius: 10px; color:var(--text); background:rgba(255,255,255,.015); opacity: .45; text-align:left; }
.unlocked-item.is-locked { border-color: rgba(183,255,42,.18); opacity: 1; background: rgba(183,255,42,.04); }.unlocked-item span, .unlocked-item small { color: var(--muted); font-size: 8px; }.unlocked-item strong { color: var(--gold); }.unlocked-item small { grid-column: 1 / -1; }
.unlocked-item.is-preview { border-color:rgba(183,255,42,.62); opacity:1; cursor:pointer; background:rgba(183,255,42,.08); box-shadow:0 0 18px rgba(183,255,42,.1); }.unlocked-item.is-preview:hover,.unlocked-item.is-preview:focus-visible { color:var(--text); background:rgba(183,255,42,.15); transform:translateY(-2px); }.unlocked-item.is-preview strong { color:var(--lime); font-size:18px; }
.build-board-score { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:14px; padding:13px; border:1px solid var(--line); border-radius:13px; background:rgba(255,255,255,.025); }.build-board-score > span { color:var(--muted); font-size:14px; }.build-board-score > span b { color:var(--lime); font-size:28px; }.build-board-score > strong { display:grid; justify-items:end; color:var(--gold); font-size:34px; line-height:.9; }.build-board-score small { margin-top:5px; color:var(--muted); font-size:8px; letter-spacing:.12em; }
.build-board-player { display:grid; grid-template-columns:52px minmax(0,1fr) auto; gap:10px; align-items:center; margin-top:10px; padding:9px; border:1px solid rgba(88,242,211,.24); border-radius:12px; background:rgba(88,242,211,.04); }.build-board-photo { width:52px; }.build-board-player span { display:grid; gap:3px; }.build-board-player span b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }.build-board-player span small,.build-board-empty small { color:var(--muted); font-size:8px; }.build-board-player button { min-height:40px; padding:0 9px; border:1px solid var(--line); border-radius:9px; color:var(--mint); background:transparent; font-size:9px; font-weight:850; cursor:pointer; }.build-board-empty { display:grid; gap:4px; margin-top:10px; padding:12px; border:1px dashed var(--line-strong); border-radius:12px; text-align:center; }
.attention-frame { position:relative; border-color:rgba(183,255,42,.62)!important; outline:2px solid rgba(183,255,42,.5); outline-offset:4px; border-radius:16px; animation:attention-frame-pulse 1.8s ease-in-out infinite; }.attention-label { position:absolute; z-index:3; top:-11px; right:16px; padding:5px 9px; border-radius:999px; color:#06120f; background:var(--lime); box-shadow:0 0 20px rgba(183,255,42,.3); font-size:9px; font-weight:950; letter-spacing:.04em; }.is-attention { animation:attention-cell-pulse 1.65s ease-in-out infinite; }
.draft-aside-foot { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); color: var(--muted); font-size: 10px; }
@keyframes attention-frame-pulse { 0%,100% { box-shadow:0 0 0 1px rgba(183,255,42,.12),0 0 18px rgba(183,255,42,.08); } 50% { box-shadow:0 0 0 3px rgba(183,255,42,.25),0 0 38px rgba(183,255,42,.19); } }
@keyframes attention-cell-pulse { 0%,100% { filter:brightness(1); } 50% { filter:brightness(1.28); } }

.reveal-layout { display: grid; grid-template-columns: minmax(300px, 480px) minmax(0, 1fr); gap: clamp(32px, 6vw, 86px); align-items: center; }
.player-card-3d { position: relative; min-height: 620px; padding: 32px; border: 1px solid rgba(245,213,71,.56); border-radius: 38px; overflow: hidden; background: radial-gradient(circle at 70% 15%, rgba(245,213,71,.24), transparent 34%), linear-gradient(145deg, #173e31, #07140f 70%); box-shadow: 0 40px 100px rgba(0,0,0,.5), inset 0 0 0 7px rgba(255,255,255,.025); transform: perspective(1000px) rotateY(4deg) rotateX(1deg); }
.player-card-shine { position: absolute; inset: -80% auto auto -80%; width: 90%; height: 220%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.13), transparent); transform: rotate(25deg); animation: card-shine 6s ease-in-out infinite; }
.player-card-topline, .player-card-bottom { display: flex; justify-content: space-between; color: var(--muted); font-size: 10px; letter-spacing: .15em; }
.player-card-main { min-height: 470px; display: grid; place-content: center; justify-items: center; gap: 18px; }
.card-rating { position: absolute; left: 32px; top: 82px; }.card-rating strong, .card-rating span { display: block; }.card-rating strong { color: var(--gold); font-size: 64px; line-height: .9; }.card-rating span { color: var(--muted); font-size: 10px; }
.player-card-name { text-align: center; }.player-card-name strong { display: block; font-size: clamp(26px, 4vw, 42px); }.player-card-name span { color: var(--muted); }
.player-card-style { display: grid; gap: 4px; padding: 14px 0; border-block: 1px solid var(--line); }.player-card-style span { color: var(--muted); font-size: 9px; letter-spacing: .14em; }.player-card-style strong { color: var(--lime); }
.reveal-details { display: grid; gap: 18px; }.style-callout, .stats-callout { padding: clamp(22px, 3vw, 34px); border-radius: var(--radius); }.style-callout h2 { margin: 6px 0 10px; font-size: 34px; }.style-callout > p:not(.micro-label) { color: var(--muted); line-height: 1.7; }.reveal-perk { display: grid; gap: 4px; margin-top: 16px; padding: 13px 15px; border: 1px solid rgba(183,255,42,.24); border-radius: 12px; background: rgba(183,255,42,.045); }.reveal-perk span { color: var(--lime); font-size: 9px; font-weight: 900; letter-spacing: .14em; }.reveal-perk strong { font-size: 17px; }.reveal-perk small { color: var(--muted); font-size: 10px; }.style-chip { display: inline-flex; align-items: center; gap: 7px; margin-top: 12px; padding: 8px 12px; border-radius: 999px; color: #06120f; background: var(--lime); font-size: 11px; font-weight: 900; }.style-chip svg { width: 15px; }
.stat-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px 20px; }.stat-row { display: grid; grid-template-columns: 34px 64px 1fr 28px; gap: 8px; align-items: center; font-size: 10px; }.stat-name { color: var(--muted); }.stat-track { height: 4px; border-radius: 99px; background: rgba(255,255,255,.08); overflow: hidden; }.stat-track i { display: block; height: 100%; background: linear-gradient(90deg, var(--mint), var(--lime)); }.stat-row strong { color: var(--gold); font-variant-numeric: tabular-nums; }

.story-screen { width: min(1100px, calc(100% - 40px)); }.story-intro { max-width: 780px; }.story-intro h1 { font-size: clamp(42px, 6vw, 76px); }.story-intro > p:last-child { color: var(--muted); font-size: 18px; line-height: 1.8; }.story-kicker { color: var(--gold); font-weight: 750; }
.story-layout { display: grid; grid-template-columns: 140px 1fr; gap: 32px; margin-top: 50px; }.story-line { display: grid; grid-template-rows: auto 1fr auto; justify-items: center; gap: 12px; color: var(--muted); font-size: 9px; letter-spacing: .16em; text-align: center; }.story-line i { width: 1px; background: linear-gradient(var(--lime), transparent); }.story-line b { color: var(--gold); font-size: 34px; }
.story-choice-list { display: grid; gap: 12px; }.story-choice { min-height: 135px; display: grid; grid-template-columns: 58px 1fr 30px; gap: 20px; align-items: center; padding: 20px 24px; border-radius: 18px; text-align: left; transition: .22s var(--ease); }.story-choice:hover { border-color: var(--lime); transform: translateX(6px); }.choice-index { color: var(--gold); font-size: 23px; }.choice-copy strong, .choice-copy small, .choice-copy em { display: block; }.choice-copy strong { font-size: 20px; }.choice-copy small { margin: 6px 0; color: var(--muted); line-height: 1.5; }.choice-copy em { color: var(--mint); font-size: 10px; font-style: normal; }
.origin-choice-lock { display: grid; grid-template-columns: auto 1fr; gap: 4px 12px; align-items: center; max-width: 620px; margin-top: 18px; padding: 13px 15px; border: 1px solid rgba(245,213,71,.3); border-radius: 13px; background: rgba(245,213,71,.045); }.origin-choice-lock span { color: var(--gold); font-size: 9px; font-weight: 900; letter-spacing: .12em; }.origin-choice-lock strong { font-size: 14px; }.origin-choice-lock small { grid-column: 1 / -1; color: var(--muted); font-size: 11px; line-height: 1.5; }
.origin-dossier { position: relative; grid-column: 1 / -1; overflow: hidden; }.origin-dossier::before { content: ''; position: absolute; inset: 0 auto 0 0; width: 3px; background: linear-gradient(var(--gold), var(--lime)); box-shadow: 0 0 24px rgba(245,213,71,.3); }.origin-dossier.is-compact { margin-bottom: 18px; padding: 20px 22px; }.origin-dossier-head { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; }.origin-dossier-head h2 { margin: 5px 0 0; font-size: clamp(22px,3vw,32px); }.origin-dossier-head > span { flex: none; padding: 7px 10px; border: 1px solid rgba(183,255,42,.28); border-radius: 999px; color: var(--lime); background: rgba(183,255,42,.05); font-size: 9px; font-weight: 900; letter-spacing: .08em; }.origin-dossier > p { max-width: 780px; color: var(--muted); line-height: 1.65; }.origin-dossier-facts { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; margin-top: 16px; }.origin-dossier-facts span { min-width: 0; display: grid; gap: 5px; padding: 12px; border: 1px solid var(--line); border-radius: 11px; background: rgba(255,255,255,.025); }.origin-dossier-facts small { color: var(--muted); font-size: 9px; }.origin-dossier-facts b { overflow-wrap: anywhere; color: var(--mint); font-size: 13px; font-variant-numeric: tabular-nums; }.origin-dossier-note { display: block; margin-top: 12px; color: var(--muted); font-size: 10px; line-height: 1.55; }.origin-dossier blockquote { display: grid; gap: 5px; margin: 14px 0 0; padding: 12px 14px; border-left: 2px solid var(--gold); color: var(--muted); background: rgba(245,213,71,.035); line-height: 1.55; }.origin-dossier blockquote b { color: var(--gold); font-size: 9px; letter-spacing: .12em; }

.club-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 26px; align-items: start; }.club-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }.club-card { --club-accent: var(--lime); position: relative; min-height: 120px; display: grid; grid-template-columns: 30px 58px 1fr; align-items: center; gap: 14px; padding: 18px; border-radius: 17px; text-align: left; transition: .2s var(--ease); }.club-card:hover, .club-card.is-selected { border-color: var(--club-accent); background: linear-gradient(110deg, color-mix(in srgb, var(--club-accent) 10%, transparent), rgba(10,28,22,.84)); transform: translateY(-3px); }.club-index { color: var(--muted); font-size: 10px; }.club-mark, .selected-club-mark, .team-mark { display: grid; place-items: center; width: 54px; aspect-ratio: 1; border: 1px solid color-mix(in srgb, var(--club-accent, var(--team-accent)) 65%, white); border-radius: 16px; color: #06120f; background: var(--club-accent, var(--team-accent)); font-weight: 950; box-shadow: 0 0 25px color-mix(in srgb, var(--club-accent, var(--team-accent)) 18%, transparent); }.club-name strong, .club-name small { display: block; }.club-name small { margin-top: 5px; color: var(--muted); font-size: 10px; line-height: 1.4; }.selected-check { position: absolute; right: 13px; bottom: 10px; display: flex; align-items: center; gap: 6px; color: var(--lime); font-size: 9px; }.selected-check svg { width: 14px; }
.club-aside { position: sticky; top: 98px; min-height: 440px; display: grid; align-content: center; justify-items: center; padding: 30px; border-radius: var(--radius); text-align: center; }.selected-club-mark { --club-accent: var(--lime); width: 94px; margin: 20px auto; border-radius: 28px; font-size: 25px; }.empty-club-mark { display: grid; place-items: center; width: 90px; aspect-ratio: 1; margin: 20px auto; border: 1px dashed var(--line-strong); border-radius: 50%; color: var(--muted); font-size: 34px; }.club-aside > p { color: var(--muted); line-height: 1.6; }.club-aside-note { display: flex; align-items: center; gap: 8px; margin: 18px 0; color: var(--mint); font-size: 10px; }.club-aside-note svg { width: 18px; }

.match-screen { position: relative; }.match-screen > *:not(.weather-fx) { position: relative; z-index: 1; }.weather-fx { position: absolute; z-index: 0; inset: 0; overflow: hidden; border-radius: 30px; pointer-events: none; opacity: .38; }.weather-fx i { position: absolute; inset: -20%; display: block; }.weather-rain .weather-fx i, .weather-heavy-rain .weather-fx i { background-image: repeating-linear-gradient(105deg, transparent 0 20px, rgba(159,216,255,.24) 21px 22px, transparent 23px 42px); animation: weather-rain 1.1s linear infinite; }.weather-heavy-rain .weather-fx i { opacity: .78; animation-duration: .62s; }.weather-rain .weather-fx i:nth-child(2), .weather-heavy-rain .weather-fx i:nth-child(2) { transform: translateX(22%); animation-delay: -.35s; }.weather-rain .weather-fx i:nth-child(3), .weather-heavy-rain .weather-fx i:nth-child(3) { transform: translateX(-18%); animation-delay: -.72s; }.weather-snow .weather-fx i { background-image: radial-gradient(circle, rgba(255,255,255,.78) 0 2px, transparent 2.5px); background-size: 46px 53px; animation: weather-snow 8s linear infinite; }.weather-fog .weather-fx i { background: radial-gradient(ellipse at center, rgba(220,235,229,.18), transparent 66%); filter: blur(18px); animation: weather-fog 5s ease-in-out infinite; }.weather-heat .weather-fx { background: linear-gradient(180deg, rgba(245,213,71,.08), transparent 45%); animation: heat-haze 3s ease-in-out infinite; }.weather-windy .weather-fx i { background: linear-gradient(100deg, transparent 30%, rgba(210,240,231,.1) 49%, transparent 67%); animation: weather-wind 3s linear infinite; }
.matchday-broadcast { position:relative; display:grid; grid-template-columns:minmax(190px,.62fr) minmax(280px,1.3fr) minmax(180px,.55fr); gap:18px; align-items:center; min-height:210px; margin-bottom:18px; padding:24px; overflow:hidden; border:1px solid rgba(88,242,211,.28); border-radius:22px; background:linear-gradient(105deg,rgba(3,13,10,.97),rgba(13,45,34,.88) 50%,rgba(3,13,10,.97)); box-shadow:0 24px 70px rgba(0,0,0,.32),inset 0 -3px rgba(183,255,42,.35); }.broadcast-atmosphere,.broadcast-atmosphere::after { position:absolute; inset:0; pointer-events:none; }.broadcast-atmosphere::after { content:""; opacity:.22; background:repeating-linear-gradient(0deg,transparent 0 4px,rgba(255,255,255,.035) 5px); }.broadcast-atmosphere i { position:absolute; top:-80%; width:28%; height:190%; opacity:.19; filter:blur(4px); background:linear-gradient(180deg,rgba(223,255,246,.8),transparent 58%); transform:rotate(18deg); transform-origin:top; animation:broadcast-lights 4.6s ease-in-out infinite alternate; }.broadcast-atmosphere i:nth-child(1){left:8%}.broadcast-atmosphere i:nth-child(2){left:38%;animation-delay:-1.4s}.broadcast-atmosphere i:nth-child(3){right:7%;animation-delay:-2.7s}.broadcast-atmosphere span { position:absolute; left:10%; right:10%; bottom:-55px; height:95px; border:1px solid rgba(183,255,42,.22); border-radius:50%; box-shadow:0 0 46px rgba(183,255,42,.12); }.broadcast-meta,.broadcast-story,.broadcast-tension,.broadcast-matchup { position:relative; z-index:1; }.broadcast-meta { align-self:stretch; display:grid; align-content:space-between; gap:8px; }.broadcast-meta > span { justify-self:start; display:flex; align-items:center; gap:7px; color:var(--mint); font-size:9px; font-weight:900; letter-spacing:.14em; }.broadcast-meta > span b { display:grid; place-items:center; width:28px; aspect-ratio:1; border-radius:7px; color:#06120f; background:var(--lime); }.broadcast-meta > strong { color:var(--gold); font-size:11px; letter-spacing:.08em; }.broadcast-meta > em { color:var(--muted); font-size:10px; font-style:normal; }.broadcast-matchup { display:grid; grid-template-columns:1fr auto 1fr; gap:12px; align-items:center; text-align:center; }.broadcast-matchup > div { display:grid; justify-items:center; gap:8px; }.broadcast-matchup .team-mark { width:68px; }.broadcast-matchup > div strong { font-size:22px; letter-spacing:.08em; }.broadcast-matchup > span { display:grid; gap:5px; color:var(--muted); }.broadcast-matchup > span b { color:var(--text); font-size:28px; }.broadcast-matchup > span small { max-width:100px; font-size:8px; letter-spacing:.08em; }.broadcast-story { grid-column:1 / -1; display:grid; grid-template-columns:170px 1fr; gap:4px 18px; padding-top:14px; border-top:1px solid var(--line); }.broadcast-story > span { grid-row:1 / 3; color:var(--mint); font-size:9px; font-weight:900; letter-spacing:.12em; }.broadcast-story h2 { margin:0; font-size:20px; }.broadcast-story p { margin:0; color:var(--muted); font-size:11px; line-height:1.5; }.broadcast-tension { align-self:stretch; display:grid; grid-template-columns:1fr auto; align-content:end; gap:7px 10px; }.broadcast-tension span { display:grid; gap:3px; }.broadcast-tension small { color:var(--muted); font-size:9px; }.broadcast-tension b { font-size:13px; }.broadcast-tension > i { grid-column:1; height:6px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.08); }.broadcast-tension > i em { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--mint),var(--lime),var(--gold)); animation:broadcast-meter 1.1s var(--ease) both; }.broadcast-tension > strong { grid-column:2; grid-row:1 / 3; align-self:end; color:var(--gold); font-size:32px; }.broadcast-rivalry-night { border-color:rgba(255,107,138,.52); box-shadow:0 24px 70px rgba(0,0,0,.32),inset 0 -3px #ff6b8a; }.broadcast-title-run,.broadcast-captain-night { border-color:rgba(245,213,71,.52); }.broadcast-career-debut { border-color:rgba(183,255,42,.55); }
.match-heading { display: flex; justify-content: space-between; align-items: end; margin-bottom: 22px; }.match-heading h1 { margin: 0; font-size: clamp(42px, 6vw, 75px); }.match-status { display: flex; align-items: center; gap: 9px; padding: 10px 14px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); font-size: 11px; font-weight: 900; letter-spacing: .1em; }.match-status.is-live { color: var(--lime); border-color: var(--line-strong); }.match-status.is-live i { background: var(--lime); animation: pulse 1s ease-in-out infinite; }.match-status.is-done { color: var(--gold); }.match-status.is-halftime { color: var(--mint); border-color: rgba(88,242,211,.45); }
.weather-panel { display: grid; grid-template-columns: minmax(250px, .8fr) 1.2fr; gap: 18px; align-items: center; margin-bottom: 18px; padding: 18px 20px; border-radius: 18px; overflow: hidden; }.weather-panel h2 { margin: 4px 0 5px; font-size: 22px; }.weather-panel p:not(.micro-label) { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.5; }.weather-data { display: grid; grid-template-columns: .7fr .7fr .9fr 1.7fr; gap: 7px; }.weather-data span { display: grid; gap: 4px; min-width: 0; padding: 10px; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.025); }.weather-data small { color: var(--muted); font-size: 10px; }.weather-data b { overflow-wrap: anywhere; color: var(--gold); font-size: 13px; }.unexpected-match-alert { display: grid; grid-template-columns: auto 1fr; gap: 14px; align-items: center; margin-bottom: 18px; padding: 14px 18px; border: 1px solid rgba(255,107,99,.55); border-radius: 15px; background: linear-gradient(100deg, rgba(255,107,99,.16), rgba(8,24,19,.86)); box-shadow: 0 0 32px rgba(255,107,99,.12); animation: incident-enter .35s var(--ease) both; }.unexpected-match-alert > span { color: #ff9d96; font-size: 10px; font-weight: 900; letter-spacing: .13em; }.unexpected-match-alert strong, .unexpected-match-alert small { display: block; }.unexpected-match-alert strong { color: #fff; font-size: 15px; }.unexpected-match-alert small { margin-top: 4px; color: var(--muted); font-size: 12px; }
.lineup-decision { display: grid; grid-template-columns: auto minmax(0, 1fr) minmax(190px, .42fr); gap: 18px; align-items: center; margin-bottom: 18px; padding: 16px 20px; border-radius: 18px; overflow: hidden; background: linear-gradient(105deg, rgba(183,255,42,.09), rgba(7,23,18,.86)); }.lineup-decision.is-substitute { background: linear-gradient(105deg, rgba(245,213,71,.1), rgba(7,23,18,.86)); }.lineup-status-mark { display: grid; justify-items: center; gap: 6px; min-width: 84px; padding: 11px; border: 1px solid rgba(183,255,42,.3); border-radius: 13px; color: var(--lime); background: rgba(183,255,42,.055); }.is-substitute .lineup-status-mark { border-color: rgba(245,213,71,.35); color: var(--gold); background: rgba(245,213,71,.055); }.lineup-status-mark svg { width: 23px; }.lineup-status-mark span { font-size: 11px; font-weight: 900; }.lineup-copy h2 { margin: 4px 0 6px; font-size: 20px; }.lineup-copy p:last-child { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }.trust-meter { display: grid; gap: 7px; }.trust-meter > span { display: flex; justify-content: space-between; align-items: end; }.trust-meter small { color: var(--muted); font-size: 10px; }.trust-meter > span b { color: var(--gold); font-size: 24px; }.trust-meter > i, .manager-trust-track { display: block; height: 6px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }.trust-meter > i > b, .manager-trust-track i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--mint), var(--lime)); }
.matchday-squad-card { margin-bottom:18px; padding:20px; border-radius:18px; overflow:hidden; background:radial-gradient(circle at 90% 0,rgba(88,242,211,.09),transparent 32%),rgba(8,25,19,.76); }.position-battle { display:grid; grid-template-columns:50px 1fr auto; gap:12px; align-items:center; margin-bottom:12px; padding:12px; border:1px solid rgba(245,213,71,.27); border-radius:13px; background:rgba(245,213,71,.045); }.position-battle > div { display:grid; gap:3px; }.position-battle small { color:var(--gold); font-size:9px; font-weight:900; letter-spacing:.12em; }.position-battle strong { font-size:15px; }.position-battle p { margin:0; color:var(--muted); font-size:10px; line-height:1.45; }.position-battle > b { color:var(--lime); font-size:28px; text-align:center; }.position-battle > b small { display:block; color:var(--muted); font-size:8px; }.team-sheet-avatar { position:relative; display:grid; place-items:center; width:40px; aspect-ratio:4 / 5; overflow:hidden; border:1px solid var(--line); border-radius:9px; color:var(--mint); background:rgba(88,242,211,.07); font-size:9px; font-weight:900; }.team-sheet-avatar i { font-style:normal; }.team-sheet-avatar img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }.team-sheet-clubs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }.team-sheet-team { border:1px solid var(--line); border-radius:14px; background:rgba(255,255,255,.02); overflow:hidden; }.team-sheet-team summary { min-height:64px; display:grid; grid-template-columns:44px 1fr auto; gap:10px; align-items:center; padding:9px 12px; cursor:pointer; list-style:none; }.team-sheet-team summary::-webkit-details-marker { display:none; }.team-sheet-team summary .club-mark { width:42px; border-radius:11px; font-size:10px; }.team-sheet-team summary > div { display:grid; gap:2px; }.team-sheet-team summary small { color:var(--mint); font-size:8px; font-weight:900; letter-spacing:.12em; }.team-sheet-team summary strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; }.team-sheet-team summary em { color:var(--muted); font-size:9px; font-style:normal; }.team-sheet-team summary > b { color:var(--gold); font-size:12px; }.team-sheet-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; padding:8px; border-top:1px solid var(--line); }.team-sheet-player { display:grid; grid-template-columns:28px 24px 1fr auto; gap:5px; align-items:center; min-height:40px; padding:4px 6px; border:1px solid rgba(255,255,255,.06); border-radius:9px; background:rgba(255,255,255,.02); }.team-sheet-player .team-sheet-avatar { width:28px; border-radius:6px; }.team-sheet-player > b,.team-sheet-sub > b { color:var(--mint); font-size:8px; }.team-sheet-player > strong,.team-sheet-sub > strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:10px; }.team-sheet-player > em,.team-sheet-sub > em { color:var(--gold); font-size:11px; font-style:normal; font-weight:900; }.team-sheet-player.is-career-player,.team-sheet-sub.is-career-player { border-color:var(--lime); background:rgba(183,255,42,.08); box-shadow:inset 3px 0 0 var(--lime); }.team-sheet-bench { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; padding:0 8px 8px; }.team-sheet-bench > small { grid-column:1 / -1; padding:4px 2px; color:var(--muted); font-size:8px; font-weight:900; letter-spacing:.12em; }.team-sheet-sub { display:grid; grid-template-columns:22px 1fr auto; gap:5px; align-items:center; min-height:30px; padding:5px 7px; border:1px solid rgba(255,255,255,.05); border-radius:8px; }
.match-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 24px; align-items: start; }.match-main { display: grid; gap: 18px; }.scoreboard, .match-controls, .timeline-panel, .match-aside { border-radius: var(--radius); }.scoreboard { padding: clamp(22px, 3vw, 36px); }.scoreboard-meta { display: flex; justify-content: space-between; color: var(--muted); font-size: 9px; letter-spacing: .14em; }.score-row { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; margin-top: 28px; }.team-block { display: grid; justify-items: center; gap: 8px; text-align: center; }.team-block strong { font-size: clamp(16px, 2vw, 23px); }.team-block small { color: var(--muted); font-size: 9px; letter-spacing: .12em; }.team-mark { --team-accent: var(--lime); border-radius: 18px; }.score-center { text-align: center; }.score-center > strong { display: block; font-size: clamp(46px, 7vw, 84px); line-height: 1; font-variant-numeric: tabular-nums; letter-spacing: -.07em; }.score-center b { margin-inline: 7px; color: var(--gold); }.score-center span { color: var(--muted); font-size: 10px; }
.match-controls { display: flex; align-items: center; gap: 10px; padding: 14px; }.control-hint { margin-left: auto; color: var(--muted); font-size: 10px; text-align: right; }
.match-briefing { display: grid; grid-template-columns: 1.2fr repeat(5, 1fr); gap: 10px; align-items: center; padding: 18px 20px; border-radius: var(--radius); }.match-briefing h2 { margin-top: 5px; font-size: 18px; }.match-briefing > span { display: grid; gap: 5px; min-width: 0; padding: 11px; border-left: 1px solid var(--line); }.match-briefing small { color: var(--muted); font-size: 9px; }.match-briefing b { overflow-wrap: anywhere; color: var(--gold); font-size: 13px; }
.match-objectives { padding: clamp(18px, 2.4vw, 26px); border-radius: var(--radius); background: linear-gradient(140deg, rgba(88,242,211,.075), rgba(5,19,15,.94)); overflow: hidden; }.match-objectives.is-result { grid-column: 1 / -1; }.match-objectives.is-waived { display: grid; min-height: 130px; align-content: center; }.match-objectives.is-waived h2 { margin: 5px 0 8px; }.match-objectives.is-waived p:last-child { margin: 0; color: var(--muted); }.match-objective-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; margin-top: 18px; }.match-objective { position: relative; display: grid; grid-template-columns: 34px 1fr; gap: 9px; min-width: 0; padding: 13px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.025); transition: border-color .25s ease, background .25s ease, transform .25s ease; }.match-objective > i { grid-row: 1 / 3; display: grid; place-items: center; width: 30px; height: 30px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; color: var(--muted); font-size: 10px; font-style: normal; }.match-objective > div { display: grid; gap: 4px; min-width: 0; }.match-objective strong { font-size: 13px; }.match-objective small { color: var(--muted); font-size: 10px; line-height: 1.45; }.match-objective > b { grid-column: 2; color: var(--gold); font-size: 10px; font-variant-numeric: tabular-nums; }.match-objective.is-complete { border-color: rgba(183,255,42,.4); background: rgba(183,255,42,.075); transform: translateY(-1px); }.match-objective.is-complete > i { border-color: var(--lime); color: #06120f; background: var(--lime); box-shadow: 0 0 18px rgba(183,255,42,.28); }.match-objective.is-missed { border-color: rgba(255,111,111,.25); background: rgba(255,111,111,.04); }.match-objective.is-missed > i { color: #ff9999; }.objective-live-note { margin: 11px 0 0; color: var(--muted); font-size: 10px; }.objective-verdict { display: flex; justify-content: space-between; gap: 12px; margin-top: 12px; padding: 11px 13px; border-radius: 10px; background: rgba(255,255,255,.035); font-size: 11px; }.objective-verdict span { color: var(--muted); }.objective-verdict strong { color: var(--gold); }.objective-verdict.is-excellent { background: rgba(183,255,42,.085); }.objective-verdict.is-excellent strong { color: var(--lime); }
.halftime-room { padding: clamp(22px, 4vw, 38px); border-radius: var(--radius); background: radial-gradient(circle at 92% 10%, rgba(245,213,71,.13), transparent 34%), linear-gradient(145deg, rgba(16,47,37,.92), rgba(7,20,16,.94)); }.halftime-heading { display: flex; justify-content: space-between; align-items: center; gap: 24px; }.halftime-heading h2 { margin: 7px 0 8px; font-size: clamp(26px, 4vw, 42px); }.halftime-heading p:not(.micro-label) { max-width: 640px; color: var(--muted); line-height: 1.6; }.halftime-heading > strong { display: grid; grid-template-columns: auto auto auto; align-items: center; gap: 6px; min-width: 112px; color: var(--gold); font-size: 38px; font-variant-numeric: tabular-nums; text-align: center; }.halftime-heading > strong i { color: var(--muted); font-style: normal; }.halftime-heading > strong small { grid-column: 1 / -1; color: var(--muted); font-size: 9px; letter-spacing: .15em; }
.halftime-choice-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 24px; }.halftime-choice { display: grid; align-content: start; min-width: 0; min-height: 220px; padding: 18px; border: 1px solid var(--line); border-radius: 15px; color: var(--text); background: rgba(255,255,255,.025); text-align: left; transition: transform .22s var(--ease), border-color .22s var(--ease), background .22s var(--ease); touch-action: manipulation; }.halftime-choice:hover, .halftime-choice:focus-visible { transform: translateY(-3px); border-color: var(--lime); background: rgba(183,255,42,.065); }.halftime-choice > span { color: var(--mint); font-size: 9px; letter-spacing: .15em; }.halftime-choice > strong { margin: 16px 0 8px; font-size: 17px; }.halftime-choice > small { color: var(--muted); font-size: 11px; line-height: 1.55; }.halftime-choice > em { margin-top: 18px; color: var(--gold); font-size: 9px; font-style: normal; }.halftime-choice > b { align-self: end; margin-top: 10px; color: var(--lime); font-size: 10px; }.halftime-note { margin-top: 14px; color: var(--muted); font-size: 10px; text-align: center; }
.decision-outcome-banner { display: grid; grid-template-columns: auto 1fr; gap: 14px; align-items: center; padding: 14px 18px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.025); }.decision-outcome-banner > span { color: var(--gold); font-size: 9px; letter-spacing: .13em; }.decision-outcome-banner div { min-width: 0; }.decision-outcome-banner strong, .decision-outcome-banner small { display: block; }.decision-outcome-banner strong { color: var(--lime); font-size: 13px; }.decision-outcome-banner small { margin-top: 4px; color: var(--muted); font-size: 10px; line-height: 1.45; }.decision-outcome-banner.is-risk strong { color: var(--gold); }
.timeline-panel { min-height: 360px; padding: clamp(20px, 3vw, 30px); }.timeline-panel > .panel-heading > span { color: var(--lime); font-size: 10px; }.timeline-empty { min-height: 250px; display: grid; place-content: center; justify-items: center; text-align: center; color: var(--muted); }.timeline-empty > span { display: grid; place-items: center; width: 60px; aspect-ratio: 1; border: 1px solid var(--line); border-radius: 50%; }.timeline-empty svg { width: 24px; }.timeline-empty p { margin: 14px 0 3px; color: var(--text); }.timeline-empty small { color: var(--muted); }
.timeline { display: grid; gap: 10px; max-height: 430px; padding: 0 4px 0 0; margin: 0; overflow-y: auto; list-style: none; }.timeline-item { display: grid; grid-template-columns: 38px 38px 1fr auto; align-items: center; gap: 12px; min-height: 66px; padding: 10px 12px; border: 1px solid rgba(255,255,255,.055); border-radius: 13px; background: rgba(255,255,255,.025); animation: item-in .3s var(--ease) both; }.timeline-item.goal { border-color: rgba(183,255,42,.32); animation: goal-event-in .4s var(--ease) both; }.timeline-item.unexpected { border-color: rgba(255,107,99,.5); background: rgba(255,107,99,.075); }.timeline-item time { color: var(--gold); font-weight: 900; font-variant-numeric: tabular-nums; }.timeline-icon { display: grid; place-items: center; width: 36px; aspect-ratio: 1; border-radius: 50%; color: var(--mint); background: rgba(88,242,211,.08); }.timeline-item.unexpected .timeline-icon { color: #ff9d96; background: rgba(255,107,99,.12); }.timeline-icon svg { width: 18px; }.timeline-copy strong, .timeline-copy small { display: block; }.timeline-copy small { margin-top: 3px; color: var(--muted); font-size: 10px; line-height: 1.4; }.event-score { color: var(--lime); font-size: 9px; }.is-goal-flash .scoreboard { animation: scoreboard-goal .55s var(--ease) both; }
.timeline-item.substitution { border-color: rgba(245,213,71,.35); background: rgba(245,213,71,.055); }.timeline-item.substitution .timeline-icon { color: var(--gold); background: rgba(245,213,71,.1); }
.match-aside { position: sticky; top: 98px; display: grid; justify-items: center; padding: 26px; text-align: center; }.match-aside .avatar { margin-top: 26px; }.match-rating { margin: 24px 0; }.match-rating strong, .match-rating span { display: block; }.match-rating strong { color: var(--gold); font-size: 52px; line-height: 1; }.match-rating span { color: var(--muted); font-size: 9px; }.match-stat-list { width: 100%; display: grid; grid-template-columns: repeat(2, 1fr); gap: 7px; }.match-stat-list span { display: grid; gap: 2px; padding: 10px; border: 1px solid rgba(255,255,255,.06); border-radius: 10px; color: var(--muted); font-size: 9px; }.match-stat-list b { color: var(--text); font-size: 18px; }.match-quote { margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; line-height: 1.6; }

.result-screen { min-height: calc(100dvh - 76px); text-align: center; }.result-glow { position: absolute; left: 50%; top: 60px; width: 450px; height: 320px; transform: translateX(-50%); border-radius: 50%; background: radial-gradient(circle, rgba(183,255,42,.15), transparent 68%); filter: blur(25px); pointer-events: none; }.result-heading { position: relative; max-width: 760px; margin: 0 auto 40px; }.result-heading .eyebrow { justify-content: center; }.result-heading h1 { margin: 14px 0; font-size: clamp(44px, 7vw, 84px); }.result-heading p { color: var(--muted); font-size: 18px; }.result-mark { display: grid; place-items: center; width: 68px; aspect-ratio: 1; margin: 0 auto; border: 1px solid var(--line-strong); border-radius: 50%; color: var(--lime); background: rgba(183,255,42,.07); }.result-mark svg { width: 30px; }
.result-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 18px; text-align: left; }.result-score, .result-stats { padding: clamp(24px, 4vw, 40px); border-radius: var(--radius); }.result-score-label { color: var(--muted); font-size: 9px; letter-spacing: .15em; }.result-teams { display: grid; grid-template-columns: 1fr auto 1fr; gap: 20px; align-items: center; margin: 30px 0; }.result-teams > span { display: grid; justify-items: center; gap: 8px; text-align: center; }.result-teams > strong { color: var(--gold); font-size: clamp(40px, 5vw, 65px); font-variant-numeric: tabular-nums; }.result-teams i { margin-inline: 6px; color: var(--muted); font-style: normal; }.result-tag { width: max-content; margin: auto; padding: 7px 11px; border-radius: 999px; color: #06120f; background: var(--lime); font-size: 10px; font-weight: 900; }.final-rating { color: var(--gold); font-size: 52px; line-height: .8; text-align: right; }.final-rating small { display: block; margin-top: 8px; color: var(--muted); font-size: 9px; }.report-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }.report-grid div { display: grid; gap: 4px; padding: 16px; border: 1px solid rgba(255,255,255,.06); border-radius: 12px; }.report-grid b { color: var(--lime); font-size: 28px; }.report-grid span { color: var(--muted); font-size: 9px; }.result-actions { margin-top: 28px; }.result-actions p { margin-top: 16px; color: var(--muted); }
.earnings-breakdown { grid-column: 1 / -1; padding: clamp(22px, 3vw, 32px); border-radius: var(--radius); }.earnings-breakdown .panel-heading > strong { color: var(--gold); font-size: 28px; font-variant-numeric: tabular-nums; }.payslip-lines { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 22px; }.payslip-lines span { display: grid; gap: 6px; padding: 13px; border: 1px solid var(--line); border-radius: 11px; }.payslip-lines b { color: var(--muted); font-size: 9px; }.payslip-lines strong { color: var(--text); font-size: 15px; font-variant-numeric: tabular-nums; }.payslip-lines .expense-line { border-color: rgba(255,111,111,.18); background: rgba(255,111,111,.035); }.payslip-lines .expense-line strong { color: #ffaaaa; }.payslip-lines .cashflow-total { border-color: rgba(183,255,42,.35); background: rgba(183,255,42,.07); }.liability-warning { margin: 12px 0 0; padding: 11px 13px; border: 1px solid rgba(255,111,111,.28); border-radius: 10px; color: #ffc0c0; background: rgba(255,80,80,.07); font-size: 12px; line-height: 1.5; }
.result-weather-card { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr minmax(300px, .75fr); gap: 18px; align-items: center; padding: 20px 24px; border-radius: var(--radius); }.result-weather-card h2 { margin: 5px 0 7px; }.result-weather-card p { margin: 0; color: var(--muted); line-height: 1.55; }.result-incident { display: grid; gap: 5px; padding: 14px; border: 1px solid rgba(255,107,99,.4); border-radius: 12px; background: rgba(255,107,99,.07); }.result-incident > span { color: #ff9d96; font-size: 10px; font-weight: 900; letter-spacing: .1em; }.result-incident small { color: var(--muted); line-height: 1.45; }.result-incident.is-clear { border-color: var(--line); background: rgba(88,242,211,.035); }.result-incident.is-clear > span { color: var(--mint); }

/* Career mode + roster portraits */
.age-entry { display: grid; grid-template-columns: 1fr auto; gap: 4px 20px; margin: 20px 0 28px; padding: 16px 18px; border: 1px solid var(--line); border-radius: 14px; background: rgba(183,255,42,.04); }
.age-entry .field-label { margin: 0; }.age-entry strong { color: var(--gold); font-size: 22px; }.age-entry small { grid-column: 1 / -1; color: var(--muted); line-height: 1.5; }
.player-headshot { position: relative; display: block; aspect-ratio: 4 / 5; overflow: hidden; border: 1px solid color-mix(in srgb, var(--headshot-accent) 45%, transparent); border-radius: 14px; background: radial-gradient(circle at 50% 28%, color-mix(in srgb, var(--headshot-accent) 20%, #11261f), #07120f 72%); }
.player-headshot img { position: relative; z-index: 2; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center top; filter: saturate(.86) contrast(1.06); transition: transform .28s var(--ease), filter .28s var(--ease); }
.headshot-fallback { position: absolute; inset: 0; display: grid; place-items: center; color: var(--headshot-accent); font-size: clamp(36px, 6vw, 64px); font-weight: 950; }
.star-card-photo { width: 100%; margin-bottom: 12px; }.star-card { min-height: 360px; padding: 12px; overflow: hidden; }.star-card:hover .player-headshot img { transform: scale(1.025); filter: saturate(1) contrast(1.08); }.star-card-top { margin: 0 2px 8px; }.star-card > strong, .star-card > small, .star-card .star-strengths { margin-inline: 2px; }
.career-context { margin: 8px 0 0; color: var(--muted); font-size: 12px; letter-spacing: .1em; }
.club-tools { display: grid; grid-template-columns: 1fr 1fr auto; gap: 14px; align-items: end; margin-bottom: 18px; padding: 16px 18px; border-radius: 16px; }.club-tools label { display: grid; gap: 7px; color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .08em; }.club-tools select, .club-tools input { width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 11px; color: var(--text); background: #0a1b16; }.club-tools > span { padding-bottom: 14px; color: var(--mint); font-size: 11px; white-space: nowrap; }.club-empty { grid-column: 1 / -1; padding: 40px; color: var(--muted); text-align: center; }
.career-actions { display: flex; justify-content: center; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 28px; }.career-actions p { flex-basis: 100%; margin: 0; color: var(--muted); text-align: center; }
.career-screen, .season-screen, .transfer-screen, .retired-screen { min-height: calc(100dvh - 76px); }
.career-hero { display: flex; justify-content: space-between; align-items: center; gap: 24px; margin-bottom: 16px; padding: clamp(22px, 3.5vw, 38px); border-radius: var(--radius); background: linear-gradient(110deg, rgba(183,255,42,.08), rgba(8,25,19,.76)); }.career-hero h1 { margin: 8px 0; }.career-hero p:last-child { color: var(--muted); }
.career-age { min-width: 130px; text-align: center; }.career-age strong, .career-age span { display: block; }.career-age strong { color: var(--gold); font-size: 74px; line-height: .9; }.career-age span { margin-top: 8px; color: var(--muted); font-size: 10px; letter-spacing: .14em; }
.career-dashboard { display: grid; grid-template-columns: 1.15fr .85fr; gap: 14px; align-items: stretch; }.career-dashboard > article { min-width: 0; padding: clamp(19px, 2.4vw, 28px); border-radius: var(--radius); }
.career-mobile-tabs, .result-mobile-tabs { display: none; }
.next-fixture { display: grid; align-content: center; min-height: 220px; background: radial-gradient(circle at 80% 20%, rgba(88,242,211,.1), transparent 40%), rgba(8,25,19,.7); }.next-fixture h2 { margin: 12px 0 6px; color: var(--text); font-size: clamp(32px, 4vw, 52px); }.next-fixture h2 i { margin-inline: 10px; color: var(--gold); font-size: .42em; font-style: normal; }.next-fixture p:not(.micro-label) { margin-bottom: 18px; color: var(--muted); }
.career-hero::after, .next-fixture::after { content: ''; position: absolute; inset: auto 0 0; height: 3px; border-radius: 99px; background: linear-gradient(90deg, var(--club-accent, var(--lime)), transparent 70%); opacity: .75; }.career-hero, .next-fixture { position: relative; overflow: hidden; }
.fixture-context { display: flex; flex-wrap: wrap; gap: 8px; margin: -10px 0 22px; }.fixture-context span { padding: 8px 10px; border: 1px solid var(--line); border-radius: 9px; color: var(--muted); font-size: 9px; }.fixture-context b { margin-right: 5px; color: var(--text); }
.contract-card { position: relative; overflow: hidden; background: linear-gradient(145deg, color-mix(in srgb, var(--club-accent) 10%, transparent), rgba(7,22,17,.84)); }.contract-card::before { content: ''; position: absolute; width: 180px; aspect-ratio: 1; right: -70px; top: -80px; border: 1px solid color-mix(in srgb, var(--club-accent) 30%, transparent); border-radius: 50%; }.contract-wage { display: grid; gap: 3px; margin: 28px 0 20px; }.contract-wage small, .contract-wage span { color: var(--muted); font-size: 10px; }.contract-wage strong { color: var(--gold); font-size: clamp(32px, 4vw, 48px); font-variant-numeric: tabular-nums; }.contract-bonuses { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }.contract-bonuses span { display: grid; gap: 5px; padding: 11px; border: 1px solid var(--line); border-radius: 10px; color: var(--muted); font-size: 9px; }.contract-bonuses b { color: var(--mint); font-size: 14px; }
.career-objectives { display: grid; align-content: start; }.objective-list { display: grid; gap: 18px; margin-top: 24px; }.objective-row > div { display: flex; justify-content: space-between; gap: 14px; margin-bottom: 8px; }.objective-row strong { font-size: 12px; }.objective-row span { color: var(--muted); font-size: 10px; font-variant-numeric: tabular-nums; }.objective-row > i { display: block; height: 5px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }.objective-row > i b { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--mint), var(--lime)); transition: width .3s var(--ease); }
.preparation-card { grid-column: 1 / -1; overflow: hidden; background: radial-gradient(circle at 90% 0, rgba(88,242,211,.09), transparent 34%), rgba(8,25,19,.72); }
.condition-meter-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 24px 0 30px; }
.condition-meter { min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.025); }.condition-meter > div { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 10px; }.condition-meter strong { font-size: 12px; }.condition-meter b { color: var(--gold); font-size: 18px; font-variant-numeric: tabular-nums; }.condition-meter > i { display: block; height: 6px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }.condition-meter > i span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--mint), var(--lime)); transition: width .28s var(--ease); }
.preparation-section + .preparation-section { margin-top: 28px; padding-top: 26px; border-top: 1px solid var(--line); }.preparation-section h3 { margin: 5px 0 14px; font-size: 18px; }.plan-choice-grid, .tactic-choice-grid { display: grid; gap: 10px; }.plan-choice-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }.tactic-choice-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.preparation-choice { display: grid; align-content: start; min-width: 0; min-height: 176px; padding: 16px; border: 1px solid var(--line); border-radius: 14px; color: var(--text); background: rgba(255,255,255,.025); text-align: left; transition: transform .2s var(--ease), border-color .2s var(--ease), background .2s var(--ease); }.preparation-choice:hover, .preparation-choice:focus-visible { transform: translateY(-2px); border-color: var(--mint); }.preparation-choice.is-selected { border-color: var(--lime); background: rgba(183,255,42,.075); box-shadow: inset 0 0 0 1px rgba(183,255,42,.16); }.preparation-choice > span { color: var(--mint); font-size: 8px; letter-spacing: .13em; }.preparation-choice > strong { margin: 9px 0 7px; font-size: 15px; }.preparation-choice > small { color: var(--muted); font-size: 10px; line-height: 1.55; }.preparation-choice > em { margin-top: 13px; color: var(--gold); font-size: 9px; font-style: normal; }.preparation-choice > b { align-self: end; margin-top: 12px; color: var(--lime); font-size: 10px; }
.career-news { grid-column: 1 / -1; }.news-feed { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 22px; }.news-feed section { display: grid; grid-template-columns: 9px 1fr; gap: 12px; padding: 16px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.02); }.news-feed section > i { width: 9px; height: 9px; margin-top: 4px; border-radius: 50%; background: var(--club-accent, var(--lime)); box-shadow: 0 0 16px color-mix(in srgb, var(--club-accent, var(--lime)) 60%, transparent); }.news-feed small, .news-feed strong, .news-feed p { display: block; }.news-feed small { color: var(--club-accent, var(--mint)); font-size: 8px; letter-spacing: .13em; }.news-feed strong { margin: 7px 0; font-size: 13px; line-height: 1.45; }.news-feed p { color: var(--muted); font-size: 10px; line-height: 1.55; }
.career-stats { display: grid; align-content: center; }.career-stat-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-top: 18px; }.career-stat-grid span { display: grid; gap: 4px; padding: 18px; border: 1px solid var(--line); border-radius: 12px; color: var(--muted); font-size: 10px; }.career-stat-grid b { color: var(--lime); font-size: 30px; }
.performance-analytics { grid-column: 1 / -1; border-color: rgba(88,242,211,.24); background: radial-gradient(circle at 100% 0, rgba(88,242,211,.09), transparent 34%), rgba(7,22,17,.88); }.analytics-head { display: grid; grid-template-columns: 1fr auto; gap: 20px; align-items: end; }.analytics-head h2 { margin: 5px 0; }.analytics-head p { margin: 0; color: var(--muted); }.analytics-head > section { display: grid; justify-items: end; }.analytics-head > section span { color: var(--gold); font-size: 10px; font-weight: 900; letter-spacing: .08em; }.analytics-head > section strong { color: var(--lime); font-size: 42px; line-height: 1; }.analytics-head > section small { margin-top: 4px; color: var(--muted); }.analytics-body { display: grid; grid-template-columns: 1.1fr .9fr; gap: 14px; margin-top: 20px; }.form-chart, .per90-grid, .analytics-footer > div { border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.02); }.form-chart { padding: 14px; }.analytics-subhead { display: flex; justify-content: space-between; color: var(--muted); font-size: 10px; letter-spacing: .08em; }.analytics-subhead b { color: var(--text); }.form-bars { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); align-items: end; gap: 8px; height: 142px; margin-top: 10px; padding-top: 20px; }.analytics-match { display: grid; grid-template-rows: 1fr auto; align-items: end; gap: 7px; min-width: 0; height: 100%; }.analytics-match > b { position: relative; display: block; min-height: 16px; border-radius: 8px 8px 3px 3px; background: linear-gradient(180deg,var(--mint),rgba(88,242,211,.3)); }.analytics-match.outcome-w > b { background: linear-gradient(180deg,var(--lime),rgba(183,255,42,.3)); }.analytics-match.outcome-l > b { background: linear-gradient(180deg,var(--danger),rgba(255,111,111,.28)); }.analytics-match > b i { position: absolute; top: -18px; left: 50%; color: var(--text); font-size: 10px; font-style: normal; transform: translateX(-50%); }.analytics-match small { display: grid; color: var(--muted); font-size: 8px; text-align: center; }.analytics-match small em { overflow: hidden; color: var(--text); font-style: normal; text-overflow: ellipsis; }.analytics-empty { grid-column: 1 / -1; align-self: center; color: var(--muted); text-align: center; }.per90-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; overflow: hidden; background: var(--line); }.per90-grid span { display: grid; align-content: center; gap: 7px; min-width: 0; padding: 14px; background: #091a15; }.per90-grid small { color: var(--muted); font-size: 9px; }.per90-grid strong { color: var(--gold); font-size: 22px; font-variant-numeric: tabular-nums; }.analytics-footer { display: grid; grid-template-columns: 1.3fr .7fr; gap: 10px; margin-top: 10px; }.analytics-footer > div { display: grid; gap: 5px; padding: 13px 15px; }.analytics-footer span { color: var(--muted); font-size: 9px; letter-spacing: .08em; }.analytics-footer strong { font-size: 13px; }.analytics-footer small { color: var(--muted); font-size: 10px; }.analytics-footer i { height: 5px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }.analytics-footer i b { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--mint),var(--lime)); }
.manager-standing { grid-column: 1 / -1; }.manager-trust-track { margin: 18px 0; height: 8px; }.manager-standing-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }.manager-standing-grid > span { display: grid; gap: 5px; padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.025); }.manager-standing-grid small, .manager-standing-grid b { color: var(--muted); font-size: 10px; }.manager-standing-grid strong { color: var(--lime); font-size: 15px; }.manager-standing-note { margin: 14px 0 0; color: var(--muted); font-size: 11px; line-height: 1.55; }.trust-result { display: flex; align-items: center; gap: 12px; margin-top: 12px; padding: 11px 14px; border: 1px solid var(--line); border-radius: 11px; }.trust-result span { color: var(--muted); font-size: 11px; }.trust-result strong { margin-left: auto; font-variant-numeric: tabular-nums; }.trust-result b { min-width: 30px; text-align: right; }
.manager-market-card { grid-column: 1 / -1; border-color: rgba(245,213,71,.24); background: radial-gradient(circle at 100% 0, rgba(245,213,71,.1), transparent 32%), rgba(7,22,17,.88); }.manager-market-card.is-adapting { box-shadow: inset 4px 0 var(--gold); }.manager-market-head { display: grid; grid-template-columns: 62px 1fr auto; gap: 14px; align-items: center; }.manager-market-head > span { display: grid; place-items: center; width: 62px; aspect-ratio: 1; border: 1px solid rgba(245,213,71,.35); border-radius: 17px; color: var(--gold); background: rgba(245,213,71,.07); font-size: 12px; font-weight: 950; }.manager-market-head h2 { margin: 4px 0; }.manager-market-head p { margin: 0; color: var(--muted); font-size: 11px; }.manager-market-head > b { display: grid; color: var(--lime); font-size: 34px; text-align: right; }.manager-market-head > b small { color: var(--muted); font-size: 8px; }.manager-change-alert { display: grid; grid-template-columns: auto 1fr; gap: 3px 14px; margin-top: 14px; padding: 12px 14px; border: 1px solid rgba(245,213,71,.35); border-radius: 12px; background: rgba(245,213,71,.055); }.manager-change-alert span { grid-row: 1 / 3; align-self: center; color: var(--gold); font-size: 9px; font-weight: 900; letter-spacing: .1em; }.manager-change-alert small { color: var(--muted); }.manager-tactical-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; margin-top: 14px; }.manager-tactical-grid span { display: grid; gap: 4px; padding: 11px 13px; border: 1px solid var(--line); border-radius: 11px; background: rgba(255,255,255,.02); }.manager-tactical-grid small,.manager-tactical-grid b { color: var(--muted); font-size: 9px; }.manager-tactical-grid strong { color: var(--text); font-size: 16px; }.manager-attribute-fit { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; margin-top: 7px; }.manager-attribute-fit span { display: grid; grid-template-columns: 1fr auto; gap: 5px; align-items: center; padding: 9px 11px; border: 1px solid var(--line); border-radius: 10px; }.manager-attribute-fit small { color: var(--muted); }.manager-attribute-fit strong { color: var(--gold); }.manager-attribute-fit i { grid-column: 1 / -1; height: 4px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }.manager-attribute-fit i b { display: block; height: 100%; background: linear-gradient(90deg,var(--mint),var(--lime)); }.manager-adaptation { display: grid; grid-template-columns: 1fr minmax(180px,.35fr); gap: 12px; align-items: center; margin-top: 11px; }.manager-adaptation span { display: grid; gap: 3px; }.manager-adaptation span b { color: var(--gold); font-size: 9px; letter-spacing: .1em; }.manager-adaptation span small { color: var(--muted); }.manager-adaptation > i { height: 7px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }.manager-adaptation > i b { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--gold),var(--lime)); }.manager-match-banner { display: grid; grid-template-columns: auto 1fr; gap: 11px; align-items: center; margin-bottom: 12px; padding: 12px 15px; border-color: rgba(245,213,71,.35); box-shadow: inset 4px 0 var(--gold); }.manager-match-banner > span { display: grid; place-items: center; min-width: 62px; height: 48px; border-radius: 12px; color: #06120f; background: var(--gold); font-size: 9px; font-weight: 950; }.manager-match-banner strong,.manager-match-banner small { display: block; }.manager-match-banner small { margin-top: 3px; color: var(--muted); }.manager-result-card { grid-column: 1 / -1; display: grid; grid-template-columns: auto 1fr auto; gap: 13px; align-items: center; border-color: rgba(245,213,71,.3); }.manager-result-card > span { color: var(--gold); font-size: 9px; font-weight: 900; letter-spacing: .1em; }.manager-result-card strong,.manager-result-card small { display: block; }.manager-result-card small { margin-top: 4px; color: var(--muted); }.manager-result-card > b { color: var(--lime); }
.international-duty-card { grid-column: 1 / -1; position: relative; overflow: hidden; border-color: rgba(88,242,211,.25); background: radial-gradient(circle at 96% 0, rgba(88,242,211,.13), transparent 32%), linear-gradient(145deg, rgba(10,38,29,.92), rgba(5,18,14,.92)); }.international-duty-card.has-call-up { border-color: rgba(245,213,71,.48); box-shadow: inset 4px 0 0 var(--gold), 0 18px 50px rgba(0,0,0,.24); }.international-header { display: grid; grid-template-columns: auto 1fr auto; gap: 15px; align-items: center; }.international-mark { display: grid; place-items: center; width: 64px; aspect-ratio: 1; border: 1px solid rgba(88,242,211,.5); border-radius: 18px; color: #06120f; background: linear-gradient(145deg, var(--mint), var(--lime)); font-size: 17px; font-weight: 950; box-shadow: 0 0 26px rgba(88,242,211,.16); }.international-header h2 { margin: 4px 0; }.international-header p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.45; }.international-header > b { align-self: start; padding: 7px 9px; border-radius: 999px; color: #06120f; background: var(--gold); font-size: 10px; }.international-stats { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 8px; margin-top: 18px; }.international-stats span { display: grid; gap: 4px; padding: 12px; border: 1px solid var(--line); border-radius: 11px; color: var(--muted); font-size: 10px; }.international-stats b { color: var(--gold); font-size: 22px; font-variant-numeric: tabular-nums; }.international-last { margin: 13px 0 0; color: var(--muted); font-size: 11px; }.call-up-status { display: grid; gap: 5px; margin: 18px 0 13px; padding: 13px 15px; border: 1px solid rgba(245,213,71,.24); border-radius: 12px; background: rgba(245,213,71,.045); }.call-up-status span { color: var(--gold); font-size: 9px; font-weight: 900; letter-spacing: .12em; }.call-up-status small { color: var(--muted); line-height: 1.45; }.international-choice-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }.international-choice-grid button { min-height: 150px; display: grid; align-content: start; gap: 7px; padding: 14px; border: 1px solid var(--line); border-radius: 13px; color: var(--text); background: rgba(255,255,255,.025); text-align: left; transition: .2s var(--ease); }.international-choice-grid button:hover,.international-choice-grid button:focus-visible { transform: translateY(-2px); border-color: var(--gold); background: rgba(245,213,71,.06); }.international-choice-grid span { color: var(--mint); font-size: 9px; font-weight: 900; letter-spacing: .1em; }.international-choice-grid strong { font-size: 15px; }.international-choice-grid small { color: var(--muted); font-size: 11px; line-height: 1.45; }.international-choice-grid b { margin-top: auto; color: var(--gold); font-size: 11px; }
.rivalry-career-card { grid-column: 1 / -1; border-color: rgba(255,107,138,.3); background: radial-gradient(circle at 100% 0, rgba(255,107,138,.13), transparent 34%), rgba(8,25,19,.82); }.rivalry-card-header { display: grid; grid-template-columns: auto 1fr auto; gap: 14px; align-items: center; }.rivalry-card-header h2 { margin: 4px 0; }.rivalry-card-header p { margin: 0; color: var(--muted); font-size: 11px; }.rivalry-card-header > b { color: #ff8ca3; font-size: 36px; }.rivalry-record-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 7px; margin-top: 16px; }.rivalry-record-grid span { display: grid; gap: 4px; padding: 10px; border: 1px solid var(--line); border-radius: 10px; color: var(--muted); font-size: 9px; }.rivalry-record-grid strong { color: var(--text); font-size: 20px; }.fan-standing { display: grid; grid-template-columns: auto 1fr; gap: 12px; align-items: center; margin-top: 12px; }.fan-standing span { display: flex; gap: 8px; align-items: baseline; }.fan-standing small { color: var(--muted); }.fan-standing > i { height: 7px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }.fan-standing > i b { display: block; height: 100%; background: linear-gradient(90deg,#ff6b8a,var(--gold)); }.rivalry-last { margin: 11px 0 0; color: var(--muted); font-size: 10px; }.rivalry-match-banner { display: grid; grid-template-columns: auto 1fr auto; gap: 14px; align-items: center; margin-bottom: 14px; padding: 15px 18px; border-color: rgba(255,107,138,.4); box-shadow: inset 4px 0 #ff6b8a; }.rivalry-match-banner > span { color: #ff8ca3; font-size: 9px; font-weight: 900; letter-spacing: .1em; }.rivalry-match-banner strong { font-size: 18px; }.rivalry-match-banner p { margin: 4px 0 0; color: var(--muted); font-size: 10px; }.rivalry-match-banner > b { color: #ff8ca3; font-size: 25px; text-align: center; }.rivalry-match-banner > b small { display: block; font-size: 8px; }.rivalry-result-card { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr auto; gap: 16px; align-items: center; border-color: rgba(255,107,138,.35); }.rivalry-result-card h2 { margin: 5px 0; }.rivalry-result-card p { margin: 0; color: var(--muted); }.rivalry-impact-grid { display: grid; grid-template-columns: repeat(4,90px); gap: 7px; }.rivalry-impact-grid span { display: grid; gap: 4px; padding: 9px; border: 1px solid var(--line); border-radius: 10px; }.rivalry-impact-grid small { color: var(--muted); font-size: 8px; }.rivalry-impact-grid b { font-size: 17px; }
.leadership-career-card { grid-column: 1 / -1; border-color: rgba(245,213,71,.28); background: radial-gradient(circle at 100% 0, rgba(245,213,71,.12), transparent 34%), rgba(8,25,19,.82); }.leadership-career-card.is-captain { box-shadow: inset 4px 0 var(--gold); }.leadership-header { display: grid; grid-template-columns: auto 1fr auto; gap: 14px; align-items: center; }.leadership-header > span { display: grid; place-items: center; min-width: 66px; aspect-ratio: 1; border: 1px solid rgba(245,213,71,.42); border-radius: 17px; color: #07140f; background: linear-gradient(145deg,var(--gold),var(--lime)); font-size: 12px; font-weight: 950; }.leadership-header h2 { margin: 4px 0; }.leadership-header p { margin: 0; color: var(--muted); font-size: 11px; }.leadership-header > b { color: var(--gold); font-size: 38px; }.leadership-metrics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; margin-top: 16px; }.leadership-metrics span { display: grid; gap: 4px; padding: 11px; border: 1px solid var(--line); border-radius: 10px; color: var(--muted); font-size: 9px; }.leadership-metrics strong { color: var(--text); font-size: 20px; }.leadership-track { display: grid; grid-template-columns: repeat(6,1fr); gap: 4px; margin-top: 15px; }.leadership-track span { display: grid; gap: 5px; color: var(--muted); font-size: 8px; text-align: center; }.leadership-track i { height: 5px; border-radius: 99px; background: rgba(255,255,255,.08); }.leadership-track .is-reached i { background: linear-gradient(90deg,var(--mint),var(--gold)); }.leadership-track .is-reached small { color: var(--gold); }.leadership-next { display: grid; gap: 4px; margin: 13px 0 0; color: var(--muted); font-size: 10px; line-height: 1.45; }.leadership-next b { color: var(--text); }.leadership-match-banner { display: grid; grid-template-columns: auto 1fr; gap: 11px; align-items: center; margin-bottom: 14px; padding: 13px 16px; border-color: rgba(245,213,71,.3); }.leadership-match-banner > span { display: grid; place-items: center; min-width: 48px; height: 48px; border-radius: 13px; color: #06120f; background: var(--gold); font-size: 11px; font-weight: 950; }.leadership-match-banner strong,.leadership-match-banner small { display: block; }.leadership-match-banner strong { margin: 3px 0; font-size: 16px; }.leadership-match-banner small { color: var(--muted); }.leadership-match-banner.has-armband { border-color: rgba(245,213,71,.55); box-shadow: inset 4px 0 var(--gold); }.leadership-match-banner.has-armband > span { border-radius: 50%; font-size: 20px; }.leadership-result-card { grid-column: 1 / -1; display: grid; grid-template-columns: auto 1fr auto; gap: 13px; align-items: center; border-color: rgba(245,213,71,.4); }.leadership-result-card > span { color: var(--gold); font-size: 9px; font-weight: 900; letter-spacing: .1em; }.leadership-result-card strong,.leadership-result-card small { display: block; }.leadership-result-card strong { font-size: 17px; }.leadership-result-card small { margin-top: 5px; color: var(--muted); }.leadership-result-card > div:last-child { display: flex; gap: 8px; }.leadership-result-card > div:last-child b { padding: 8px; border: 1px solid var(--line); border-radius: 9px; font-size: 10px; }
.league-table { grid-column: 1 / -1; }.table-head, .table-row { display: grid; grid-template-columns: 34px minmax(160px, 1fr) repeat(4, 42px) 58px 46px; gap: 8px; align-items: center; min-height: 44px; padding-inline: 12px; font-variant-numeric: tabular-nums; }.table-head { color: var(--muted); font-size: 9px; text-transform: uppercase; }.table-row { border-top: 1px solid rgba(255,255,255,.06); color: var(--muted); font-size: 12px; }.table-row span:nth-child(n+3), .table-row strong, .table-head span:nth-child(n+3) { text-align: right; }.table-club-name { display: grid; gap: 2px; color: var(--text); }.table-club-name small { display: none; color: var(--muted); font-size: 10px; }.table-row.is-player-club { color: var(--text); background: rgba(183,255,42,.06); }.table-row.is-player-club b, .table-row.is-player-club strong { color: var(--lime); }.fixture-report-row.has-incident { box-shadow: inset 3px 0 #ff6b63; }
.season-summary-grid { display: grid; grid-template-columns: 260px 1fr; gap: 18px; }.season-summary-grid > article { padding: clamp(24px, 4vw, 40px); border-radius: var(--radius); }.season-rating { display: grid; place-content: center; justify-items: center; min-height: 300px; background: radial-gradient(circle, rgba(245,213,71,.14), transparent 65%), rgba(8,25,19,.72); }.season-rating span, .season-rating small { color: var(--muted); letter-spacing: .12em; }.season-rating strong { color: var(--gold); font-size: 92px; line-height: 1; }.development-card { grid-column: 1 / -1; }.development-card h2 { margin: 8px 0 20px; }.development-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }.development-list span { display: flex; justify-content: space-between; padding: 14px; border: 1px solid var(--line); border-radius: 12px; }.development-list strong.positive { color: var(--lime); }.development-list strong.negative { color: #ff8c85; }
.milestone-unlocks { position: relative; display: grid; gap: 12px; margin: 0 0 22px; overflow: hidden; }.milestone-unlock-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 0 4px; }.milestone-unlock-head span { display: flex; align-items: center; gap: 8px; color: var(--gold); font-size: 9px; font-weight: 950; letter-spacing: .17em; }.milestone-unlock-head span i { width: 7px; height: 7px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 18px var(--gold); animation: milestone-pulse 1.5s ease-in-out infinite; }.milestone-unlock-head strong { color: var(--muted); font-size: 11px; }.milestone-unlock { position: relative; display: grid; grid-template-columns: 94px minmax(0, 1fr); gap: 22px; align-items: center; min-height: 154px; padding: 25px clamp(22px, 4vw, 42px); overflow: hidden; border: 1px solid rgba(245,213,71,.38); border-radius: 24px; background: radial-gradient(circle at 8% 50%, rgba(245,213,71,.15), transparent 28%), linear-gradient(110deg, rgba(8,25,19,.98), rgba(17,31,23,.88)); box-shadow: 0 22px 70px rgba(0,0,0,.28); animation: milestone-enter .55s var(--ease) both; }.milestone-unlock > b { position: relative; z-index: 2; display: grid; place-items: center; width: 82px; aspect-ratio: 1; border: 1px solid rgba(245,213,71,.55); border-radius: 50%; color: var(--gold); background: rgba(245,213,71,.08); font-size: 27px; box-shadow: inset 0 0 30px rgba(245,213,71,.08), 0 0 26px rgba(245,213,71,.12); }.milestone-unlock span { color: var(--gold); font-size: 9px; font-weight: 950; letter-spacing: .16em; }.milestone-unlock h2 { margin: 6px 0 5px; font-size: clamp(23px, 3.4vw, 38px); }.milestone-unlock p { margin: 0; color: var(--muted); line-height: 1.55; }.milestone-unlock small { display: block; margin-top: 11px; color: var(--mint); font-size: 10px; }.milestone-halo { position: absolute; inset: 50% auto auto 47px; width: 180px; aspect-ratio: 1; transform: translateY(-50%); border: 1px solid rgba(245,213,71,.15); border-radius: 50%; animation: milestone-orbit 9s linear infinite; }.milestone-halo i { position: absolute; width: 5px; height: 5px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 15px var(--gold); }.milestone-halo i:first-child { top: 9px; left: 50%; }.milestone-halo i:last-child { right: 15px; bottom: 28px; }.milestone-unlock.tier-elite, .milestone-unlock.tier-legend { border-color: rgba(183,255,42,.55); background: radial-gradient(circle at 8% 50%, rgba(183,255,42,.18), transparent 30%), linear-gradient(110deg, rgba(8,25,19,.98), rgba(25,31,14,.9)); }.milestone-unlock.tier-elite > b, .milestone-unlock.tier-legend > b { border-color: var(--lime); color: var(--lime); box-shadow: 0 0 34px rgba(183,255,42,.2); }
.career-milestones { grid-column: 1 / -1; }.milestone-lede { margin: 0 0 18px; color: var(--muted); font-size: 12px; line-height: 1.55; }.milestone-timeline { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 9px; }.milestone-timeline::before { content: ''; position: absolute; top: 29px; left: 5%; right: 5%; height: 1px; background: linear-gradient(90deg, transparent, rgba(245,213,71,.45), transparent); }.milestone-timeline section { position: relative; z-index: 1; display: grid; grid-template-columns: 46px minmax(0,1fr); gap: 10px; align-items: center; min-height: 84px; padding: 10px; border: 1px solid var(--line); border-radius: 13px; background: rgba(7,22,17,.92); }.milestone-timeline section > b { display: grid; place-items: center; width: 42px; aspect-ratio: 1; border: 1px solid rgba(245,213,71,.35); border-radius: 50%; color: var(--gold); font-size: 13px; }.milestone-timeline section > span { display: grid; min-width: 0; gap: 3px; }.milestone-timeline small, .milestone-timeline em { overflow: hidden; color: var(--muted); font-size: 8px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }.milestone-timeline strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }.milestone-timeline .is-latest { border-color: rgba(183,255,42,.4); box-shadow: 0 0 22px rgba(183,255,42,.07); }.milestone-timeline .is-latest > b { border-color: var(--lime); color: var(--lime); }.milestone-empty { padding: 24px; border: 1px dashed var(--line); border-radius: 14px; color: var(--muted); text-align: center; }.milestone-next { display: grid; grid-template-columns: auto repeat(3,minmax(0,1fr)); gap: 9px; align-items: center; margin-top: 14px; }.milestone-next > span { color: var(--muted); font-size: 8px; font-weight: 950; letter-spacing: .14em; }.milestone-next > div { display: grid; grid-template-columns: 1fr auto; gap: 5px 8px; min-width: 0; }.milestone-next small { overflow: hidden; color: var(--muted); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }.milestone-next strong { color: var(--gold); font-size: 9px; }.milestone-next i { grid-column: 1 / -1; height: 4px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.07); }.milestone-next i b { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--mint),var(--lime)); }
@keyframes milestone-enter { from { opacity: 0; transform: translateY(18px) scale(.985); } to { opacity: 1; transform: none; } } @keyframes milestone-orbit { to { transform: translateY(-50%) rotate(360deg); } } @keyframes milestone-pulse { 50% { opacity: .45; transform: scale(.75); } }
@media (max-width:767px) { .milestone-unlocks { gap:8px; margin-bottom:12px; }.milestone-unlock-head { align-items:flex-start; }.milestone-unlock-head strong { max-width:48%; text-align:right; }.milestone-unlock { grid-template-columns:58px minmax(0,1fr); gap:12px; min-height:112px; padding:15px 13px; border-radius:17px; }.milestone-unlock > b { width:54px; font-size:18px; }.milestone-unlock h2 { margin-block:4px; font-size:20px; }.milestone-unlock p { display:-webkit-box; overflow:hidden; font-size:11px; -webkit-box-orient:vertical; -webkit-line-clamp:2; }.milestone-unlock small { margin-top:6px; font-size:8px; }.milestone-halo { left:13px; width:116px; }.career-milestones { padding:13px !important; }.milestone-lede { margin-bottom:11px; font-size:10px; }.milestone-timeline { grid-template-columns:1fr; gap:5px; }.milestone-timeline::before { top:4%; bottom:4%; left:30px; width:1px; height:auto; background:linear-gradient(transparent,rgba(245,213,71,.4),transparent); }.milestone-timeline section { grid-template-columns:38px minmax(0,1fr); min-height:64px; padding:7px; }.milestone-timeline section > b { width:36px; }.milestone-next { grid-template-columns:1fr; gap:7px; margin-top:10px; }.milestone-next > span { margin-top:3px; }.milestone-next > div { min-height:26px; } }
.transfer-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }.transfer-offer { min-height: 340px; display: grid; justify-items: center; align-content: center; gap: 18px; padding: 26px; border-radius: var(--radius); color: var(--text); text-align: center; transition: .2s var(--ease); }.transfer-offer:hover, .transfer-offer.is-selected { transform: translateY(-4px); border-color: var(--lime); background: rgba(183,255,42,.07); }.transfer-offer > span:nth-child(2) { display: grid; gap: 6px; }.transfer-offer small, .transfer-offer em { color: var(--muted); font-size: 11px; font-style: normal; }.transfer-offer .icon { color: var(--lime); }.offer-finance { width: 100%; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }.offer-finance > span { display: grid; gap: 4px; padding: 10px; border: 1px solid var(--line); border-radius: 10px; }.offer-finance b { color: var(--gold); font-size: 14px; font-variant-numeric: tabular-nums; }
.retirement-halo { position: absolute; left: 50%; top: 20px; width: 520px; height: 420px; transform: translateX(-50%); border-radius: 50%; background: radial-gradient(circle, rgba(245,213,71,.13), transparent 66%); filter: blur(30px); pointer-events: none; }.retirement-card { position: relative; max-width: 940px; margin: auto; padding: clamp(28px, 5vw, 52px); border-radius: 32px; }.retirement-identity { display: flex; align-items: center; gap: 24px; }.career-number { display: grid; place-items: center; width: 118px; aspect-ratio: 1; border: 1px solid rgba(245,213,71,.5); border-radius: 28px; color: var(--gold); font-size: 48px; font-weight: 950; }.retirement-identity small, .retirement-identity p { color: var(--muted); }.retirement-identity h2 { margin: 4px 0; font-size: 38px; }.retirement-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin: 34px 0; }.retirement-stats span { display: grid; gap: 5px; padding: 14px 8px; border: 1px solid var(--line); border-radius: 12px; color: var(--muted); font-size: 9px; text-align: center; }.retirement-stats b { color: var(--lime); font-size: 24px; }.career-timeline { display: grid; grid-template-columns: auto 1fr auto 1fr auto; gap: 14px; align-items: center; color: var(--gold); font-variant-numeric: tabular-nums; }.career-timeline i { height: 1px; background: linear-gradient(90deg, var(--line), var(--gold), var(--line)); }.career-timeline strong { color: var(--text); font-size: 11px; letter-spacing: .12em; }

.star-strengths::before { content: "可取得能力"; flex-basis: 100%; margin-bottom: 2px; color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: .1em; }
.earnings-pill, .career-wallet, .wallet-badge { font-variant-numeric: tabular-nums; }
.earnings-pill { width: max-content; max-width: 100%; margin: 18px auto 0; padding: 9px 14px; border: 1px solid rgba(245,213,71,.35); border-radius: 999px; color: var(--muted); background: rgba(245,213,71,.06); font-size: 12px; }
.earnings-pill strong, .wallet-badge b { color: var(--gold); }.earnings-pill.is-negative { border-color: rgba(255,111,111,.4); background: rgba(255,111,111,.07); }.earnings-pill.is-negative strong { color: #ff9b9b; }
.career-wallet { display: flex; align-items: baseline; gap: 10px; width: max-content; margin-top: 18px; padding: 10px 14px; border: 1px solid var(--line); border-radius: 12px; background: rgba(0,0,0,.18); }
.career-wallet span, .career-wallet small { color: var(--muted); font-size: 10px; }.career-wallet strong { color: var(--gold); font-size: 24px; }
.career-growth-strip { display: flex; align-items: center; gap: 9px; width: max-content; margin-top: 12px; padding: 8px 11px; border: 1px solid rgba(183,255,42,.22); border-radius: 12px; background: rgba(183,255,42,.055); font-variant-numeric: tabular-nums; }.career-growth-strip span { display: grid; gap: 1px; }.career-growth-strip small { color: var(--muted); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; }.career-growth-strip b { font-size: 18px; }.career-growth-strip i { color: var(--lime); font-style: normal; }.career-growth-strip em { padding: 3px 7px; border-radius: 99px; background: rgba(255,255,255,.06); font-size: 12px; font-style: normal; font-weight: 800; }
.shop-card { grid-column: 1 / -1; padding: clamp(22px, 3vw, 34px); border-radius: var(--radius); }
.wallet-badge { padding: 9px 12px; border: 1px solid rgba(245,213,71,.35); border-radius: 999px; color: var(--muted); font-size: 11px; }
.shop-lede { margin: 10px 0 20px; color: var(--muted); line-height: 1.6; }
.portfolio-strip { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin: 18px 0; }.portfolio-strip > span { display: grid; gap: 6px; min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.025); }.portfolio-strip small { color: var(--muted); font-size: 9px; }.portfolio-strip b { overflow-wrap: anywhere; color: var(--gold); font-size: 20px; font-variant-numeric: tabular-nums; }
.shop-filters { display: flex; gap: 8px; flex-wrap: wrap; margin: 18px 0; }.shop-filters button { min-height: 44px; padding: 10px 14px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); background: rgba(255,255,255,.02); font-size: 10px; transition: border-color .2s var(--ease), color .2s var(--ease), background .2s var(--ease); touch-action: manipulation; }.shop-filters button:hover, .shop-filters button:focus-visible, .shop-filters button.is-active { border-color: var(--lime); color: var(--text); background: rgba(183,255,42,.07); }.shop-filters button b { margin-left: 5px; color: var(--gold); }
.shop-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.shop-item { display: grid; align-content: start; min-height: 250px; padding: 16px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255,255,255,.025); }.shop-item.is-owned { border-color: rgba(88,242,211,.35); }.shop-item.is-asset { background: radial-gradient(circle at 90% 0, rgba(245,213,71,.09), transparent 34%), rgba(255,255,255,.025); }
.shop-item-labels { display: flex; justify-content: space-between; gap: 8px; }.shop-slot { color: var(--muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.shop-category { width: max-content; padding: 4px 7px; border-radius: 6px; color: var(--mint); background: rgba(88,242,211,.08); font-size: 10px; font-weight: 850; letter-spacing: .08em; }
.shop-item h3 { margin: 11px 0 6px; font-size: 17px; }.shop-item p { color: var(--muted); font-size: 13px; line-height: 1.55; }.market-note { display: block; margin-top: 6px; color: #94a89e; font-size: 11px; line-height: 1.45; }
.asset-valuation { display: flex; justify-content: space-between; gap: 8px; margin-top: 14px; padding: 10px; border: 1px solid rgba(245,213,71,.22); border-radius: 10px; }.asset-valuation small { color: var(--muted); }.asset-valuation b { color: var(--gold); font-size: 13px; font-variant-numeric: tabular-nums; }
.asset-market { display: grid; gap: 8px; margin-top: 12px; padding: 10px; border: 1px solid rgba(245,213,71,.22); border-radius: 11px; background: rgba(0,0,0,.12); }.asset-market > div:first-child { display: grid; grid-template-columns: 1fr auto; gap: 4px 8px; align-items: center; }.asset-market small { color: var(--muted); font-size: 10px; line-height: 1.35; }.asset-market b { color: var(--gold); font-variant-numeric: tabular-nums; }.asset-market em { grid-column: 1 / -1; color: var(--muted); font-size: 10px; font-style: normal; }.asset-market.appreciating em { color: var(--lime); }.asset-market.depreciating em { color: #ff9589; }
.asset-sale-preview { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }.asset-sale-preview span { display: grid; gap: 3px; padding: 7px; border-radius: 8px; background: rgba(255,255,255,.035); color: var(--muted); font-size: 9px; }.asset-sale-preview b { color: #ff9589; }.asset-sale-preview strong { color: var(--mint); font-size: 12px; font-variant-numeric: tabular-nums; }.asset-locked { color: var(--gold) !important; }
.asset-sell-button { min-height: 44px; border: 1px solid rgba(255,149,137,.5); color: #ffb0a7; background: rgba(255,111,97,.08); }.asset-sell-button:hover, .asset-sell-button:focus-visible { border-color: #ff9589; color: #fff; background: rgba(255,111,97,.16); }
.asset-transaction-result { display: grid; gap: 5px; margin: 14px 0; padding: 13px 15px; border: 1px solid rgba(88,242,211,.35); border-radius: 12px; background: linear-gradient(120deg, rgba(88,242,211,.1), rgba(183,255,42,.035)); animation: item-in .35s var(--ease) both; }.asset-transaction-result span { color: var(--mint); font-size: 9px; font-weight: 900; letter-spacing: .13em; }.asset-transaction-result strong { font-size: 15px; }.asset-transaction-result small { color: var(--muted); line-height: 1.45; }
.upkeep-valuation { align-items: center; margin-top: 8px; border-color: rgba(255,111,97,.25); }.upkeep-valuation b { color: #ff9589; }.upkeep-valuation em { color: var(--muted); font-size: 10px; font-style: normal; }
.season-storyline { position: relative; overflow: hidden; padding: 22px; }.season-storyline::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: linear-gradient(var(--lime), var(--mint)); box-shadow: 0 0 22px rgba(183,255,42,.35); }.season-storyline > p, .season-storyline > small { color: var(--muted); line-height: 1.55; }.storyline-objectives { display: grid; gap: 12px; margin: 18px 0 14px; }.storyline-objectives > div { display: grid; gap: 6px; }.storyline-objectives span { display: flex; justify-content: space-between; gap: 12px; font-size: 12px; }.storyline-objectives strong { color: var(--muted); font-variant-numeric: tabular-nums; }.storyline-objectives i { height: 5px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.07); }.storyline-objectives em { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--mint), var(--lime)); transition: width .35s var(--ease); }.storyline-objectives .is-complete strong { color: var(--lime); }
.shop-item-foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: auto; padding-top: 16px; }.shop-item-foot > strong { color: var(--gold); font-size: 22px; }.shop-item-foot .btn { min-height: 44px; padding: 10px 13px; }.owned-label { color: var(--mint); font-size: 11px; }
.match-load-card { grid-column: 1 / -1; padding: clamp(20px, 2.6vw, 28px); border-radius: var(--radius); }.match-load-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }.match-load-grid > span { display: grid; grid-template-columns: 1fr auto; gap: 5px 10px; padding: 13px 14px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.025); }.match-load-grid small { grid-column: 1 / -1; color: var(--muted); font-size: 12px; }.match-load-grid b { font-size: 16px; font-variant-numeric: tabular-nums; }.match-load-grid em { align-self: center; font-size: 13px; font-style: normal; font-weight: 850; }.positive { color: var(--lime); }.negative { color: #ff8c85; }
.tax-match-card { grid-column: 1 / -1; padding: clamp(20px, 2.6vw, 28px); border-radius: var(--radius); background: linear-gradient(145deg, rgba(245,213,71,.07), rgba(7,22,17,.88)); }.tax-match-grid, .tax-career-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); gap: 10px; }.tax-match-grid > span, .tax-career-grid > span { display: grid; gap: 6px; padding: 13px 14px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.025); }.tax-career-grid > .has-liability { border-color: rgba(255,111,111,.3); background: rgba(255,111,111,.055); }.tax-match-grid small, .tax-career-grid small { color: var(--muted); font-size: 11px; }.tax-match-grid strong, .tax-career-grid strong { font-size: clamp(17px, 2vw, 22px); font-variant-numeric: tabular-nums; }.tax-disclaimer { margin: 12px 0 0; color: var(--muted); font-size: 11px; line-height: 1.55; }.tax-career-card { background: linear-gradient(145deg, rgba(88,242,211,.06), rgba(7,22,17,.84)); }
.simulation-report-screen { min-height: calc(100dvh - 76px); }.simulation-report-heading { display: grid; grid-template-columns: 1fr minmax(460px, .72fr); align-items: end; gap: 22px; margin-bottom: 22px; }.simulation-report-heading h1 { margin-bottom: 12px; font-size: clamp(40px, 5vw, 70px); }.simulation-report-heading p:last-child { max-width: 720px; margin-bottom: 0; color: var(--muted); font-size: 16px; line-height: 1.6; }.simulation-summary { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; padding: 12px; border-radius: 16px; }.simulation-summary span { display: grid; gap: 4px; min-width: 0; padding: 10px 6px; border-left: 1px solid var(--line); color: var(--muted); font-size: 11px; text-align: center; }.simulation-summary span:first-child { border-left: 0; }.simulation-summary b { color: var(--gold); font-size: 21px; font-variant-numeric: tabular-nums; }
.simulation-confirm-bar { position: sticky; z-index: 22; top: 70px; display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; padding: 12px 14px; border-color: rgba(183,255,42,.32); background: rgba(5,19,15,.94); box-shadow: 0 12px 34px rgba(0,0,0,.38); backdrop-filter: blur(18px); }.simulation-confirm-bar div { display: grid; gap: 3px; }.simulation-confirm-bar strong { font-size: 14px; }.simulation-confirm-bar small { color: var(--muted); font-size: 11px; }.simulation-confirm-bar .btn { min-height: 48px; white-space: nowrap; }
.fixture-report-card { overflow: hidden; border-radius: var(--radius); }.fixture-report-head, .fixture-report-row { display: grid; grid-template-columns: minmax(220px, 1.35fr) 120px 150px minmax(300px, 1fr); gap: 14px; align-items: center; }.fixture-report-head { min-height: 44px; padding: 0 20px; color: var(--muted); background: rgba(0,0,0,.18); font-size: 11px; font-weight: 800; letter-spacing: .08em; }.fixture-report-list { display: grid; }.fixture-report-row { min-height: 62px; padding: 8px 20px; border-top: 1px solid rgba(255,255,255,.06); }.fixture-report-row:nth-child(even) { background: rgba(255,255,255,.018); }.fixture-identity, .fixture-performance { display: grid; gap: 3px; }.fixture-identity small, .fixture-performance small { color: var(--muted); font-size: 11px; }.fixture-identity strong { font-size: 14px; }.fixture-score { display: flex; align-items: center; gap: 10px; }.fixture-score > b { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; color: #06120f; font-size: 12px; }.outcome-w { background: var(--lime); }.outcome-d { background: var(--gold); }.outcome-l { color: #fff !important; background: var(--danger); }.fixture-score strong, .fixture-performance > b { font-size: 18px; font-variant-numeric: tabular-nums; }.fixture-performance > b { color: var(--gold); }.fixture-deltas { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }.fixture-deltas i { padding: 7px 5px; border: 1px solid var(--line); border-radius: 8px; color: var(--text); background: rgba(255,255,255,.025); font-size: 12px; font-style: normal; text-align: center; font-variant-numeric: tabular-nums; }
.simulation-screen, .development-screen { min-height: calc(100dvh - 76px); }.simulation-hero { max-width: 820px; margin: 0 auto 34px; text-align: center; }.simulation-hero .eyebrow { justify-content: center; }.simulation-hero h1 { margin: 12px 0; }.simulation-hero p, .simulation-hero > span, .decision-note { color: var(--muted); }.simulation-hero > span { display: block; margin-top: 12px; font-size: 11px; letter-spacing: .1em; }
.simulation-options { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }.simulation-option { position: relative; min-height: 300px; padding: 28px; border-radius: var(--radius); color: var(--text); text-align: left; transition: .2s var(--ease); }.simulation-option:hover { transform: translateY(-4px); border-color: var(--lime); background: rgba(183,255,42,.06); }.simulation-option > span { color: var(--gold); font-size: 11px; }.simulation-option h2 { margin: 34px 0 12px; }.simulation-option p { color: var(--muted); line-height: 1.7; }.simulation-option > strong { display: block; margin-top: 20px; color: var(--lime); }.simulation-option > .icon { position: absolute; right: 24px; bottom: 26px; }.decision-note { margin-top: 20px; text-align: center; }
.draft-club-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }.draft-club-option { min-height: 210px; padding: 24px; border: 1px solid var(--line); border-radius: var(--radius); background: linear-gradient(145deg, color-mix(in srgb, var(--club-accent) 10%, transparent), rgba(255,255,255,.02)); color: var(--text); text-align: left; display: grid; grid-template-columns: 1fr auto; gap: 10px; align-content: start; transition: transform .2s var(--ease), border-color .2s var(--ease); }.draft-club-option:hover, .draft-club-option:focus-visible { transform: translateY(-4px); border-color: var(--club-accent); }.draft-club-option > span { color: var(--gold); font-size: 11px; }.draft-club-option > b { justify-self: end; color: var(--club-accent); }.draft-club-option > strong, .draft-club-option > small { grid-column: 1 / -1; }.draft-club-option > strong { margin-top: 22px; font-size: 20px; }.draft-club-option > small { color: var(--muted); line-height: 1.55; }.draft-club-option > .icon { align-self: end; color: var(--club-accent); }
.player-event-hero { position: relative; max-width: 820px; margin-inline: auto; }.player-event-hero > small { display: block; margin-top: 18px; color: var(--gold); }.event-progress { display: inline-flex; min-height: 34px; align-items: center; margin: 14px 0; padding: 0 14px; border: 1px solid var(--line); border-radius: 999px; color: var(--lime); font-size: 12px; }.player-event-result { max-width: 720px; margin: 34px auto 0; padding: clamp(28px, 5vw, 54px); text-align: center; }.player-event-result .result-index { color: var(--gold); font-size: 11px; letter-spacing: .18em; }.player-event-result h2 { margin: 18px 0 10px; font-size: clamp(27px, 4vw, 44px); }.player-event-result > p { color: var(--muted); line-height: 1.8; }.player-event-result > strong { display: block; margin: 20px 0; color: var(--lime); }.player-event-impact, .pulse-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }.player-event-impact { margin: 24px 0; }.player-event-impact span, .pulse-grid span { padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.025); }.player-pulse { padding: 24px; }.pulse-grid b { display: block; margin-bottom: 5px; color: var(--lime); font-size: 22px; }
.awards-card { grid-column: 1 / -1; padding: clamp(24px, 4vw, 42px); overflow: hidden; position: relative; }.awards-card::before { content: ''; position: absolute; width: 260px; height: 260px; top: -130px; right: -70px; background: radial-gradient(circle, rgba(244,190,70,.18), transparent 68%); pointer-events: none; }.earned-awards { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0; }.earned-awards > span { flex: 1 1 240px; padding: 16px; border: 1px solid rgba(244,190,70,.35); border-radius: 12px; background: rgba(244,190,70,.06); }.earned-awards b, .earned-awards small { display: block; }.earned-awards small { margin-top: 6px; color: var(--muted); }.award-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }.award-item { display: grid; gap: 7px; padding: 18px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.02); }.award-item.is-winner { border-color: rgba(244,190,70,.65); background: rgba(244,190,70,.08); }.award-rank { color: var(--gold); font-size: 10px; letter-spacing: .14em; }.award-item > b { color: var(--lime); }.award-item > small { color: var(--muted); line-height: 1.5; }
.development-points { display: grid; place-items: center; width: 150px; aspect-ratio: 1; margin: 24px auto 0; border: 1px solid rgba(245,213,71,.45); border-radius: 50%; background: radial-gradient(circle, rgba(245,213,71,.12), transparent 68%); }.development-points strong { color: var(--gold); font-size: 56px; line-height: 1; }.development-points span { color: var(--muted); font-size: 9px; }
.allocation-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }.allocation-item { display: grid; grid-template-columns: 44px 1fr auto auto; align-items: center; gap: 12px; min-height: 94px; padding: 14px 16px; border-radius: 15px; }.allocation-item > div:nth-child(2) { display: grid; gap: 3px; }.allocation-item small { color: var(--muted); font-size: 10px; }.allocation-item > b { color: var(--gold); font-size: 26px; }.allocation-controls { display: grid; grid-template-columns: 44px 62px 44px; align-items: center; gap: 5px; }.allocation-controls button { min-width: 44px; min-height: 44px; border: 1px solid var(--line-strong); border-radius: 10px; color: var(--text); background: rgba(255,255,255,.04); font-size: 20px; }.allocation-controls button:not(:disabled):hover { border-color: var(--lime); color: var(--lime); }.allocation-controls span { color: var(--muted); font-size: 9px; text-align: center; }

.fixture-context span, .contract-wage small, .contract-wage span, .objective-row span, .preparation-choice > small, .preparation-choice > b, .control-hint, .timeline-copy small, .portfolio-strip small, .table-head, .report-grid span, .payslip-lines b { font-size: 11px; }
.preparation-choice > span, .preparation-choice > em, .news-feed small, .star-strengths::before { font-size: 10px; }.news-feed p { font-size: 12px; }.shop-filters button { font-size: 12px; }
.site-footer { position: relative; z-index: var(--z-content); display: flex; justify-content: space-between; gap: 20px; padding: 16px clamp(20px, 4vw, 64px); border-top: 1px solid var(--line); color: #82958b; font-size: 10px; letter-spacing: .1em; }

@keyframes screen-in { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
@keyframes item-in { from { opacity: 0; transform: translateY(8px) scale(.98); } to { opacity: 1; transform: none; } }
@keyframes crowd-drift { to { transform: translate3d(67px, 61px, 0); } }
@keyframes field-float { 50% { transform: translateY(-10px); } }
@keyframes wheel-spin { to { transform: rotate(360deg); } }
@keyframes card-shine { 0%, 55% { transform: translateX(-80%) rotate(25deg); } 75%, 100% { transform: translateX(330%) rotate(25deg); } }
@keyframes pulse { 50% { opacity: .35; transform: scale(.75); } }
@keyframes weather-rain { to { transform: translate3d(-34px, 90px, 0); } }
@keyframes weather-snow { to { transform: translate3d(28px, 100px, 0) rotate(2deg); } }
@keyframes weather-fog { 50% { opacity: .45; transform: translateX(5%); } }
@keyframes weather-wind { to { transform: translateX(55%); } }
@keyframes broadcast-lights { to { opacity:.34; transform:rotate(-12deg) translateX(18%); } }
@keyframes broadcast-meter { from { transform:scaleX(0); transform-origin:left; } }
@keyframes heat-haze { 50% { opacity: .55; filter: blur(3px); } }
@keyframes incident-enter { from { opacity: 0; transform: translateY(-10px) scale(.985); } }
@keyframes goal-event-in { from { opacity: 0; transform: scale(.94); box-shadow: 0 0 0 rgba(183,255,42,0); } 70% { box-shadow: 0 0 34px rgba(183,255,42,.2); } }
@keyframes scoreboard-goal { 40% { transform: scale(1.012); border-color: var(--lime); box-shadow: 0 0 48px rgba(183,255,42,.18); } }

.fixture-identity em { color: var(--mint); font-size: 10px; font-style: normal; line-height: 1.35; }

@media (max-width: 1024px) {
  .matchday-broadcast { grid-template-columns: 150px 1fr; min-height: 190px; padding: 18px; }.broadcast-tension { grid-column: 1 / -1; grid-template-columns: 1fr auto; }.broadcast-story { grid-template-columns: 130px 1fr; }
  .topbar { grid-template-columns: auto 1fr; }
  .topbar-meta { display: none; }
  .stage-progress { justify-content: flex-end; }
  .stage-step b { display: none; }
  .home-grid { grid-template-columns: 1fr; }
  .home-copy { max-width: 760px; }
  .hero-stage { min-height: 500px; }
  .profile-layout, .draft-layout, .club-layout, .match-layout { grid-template-columns: 1fr; }
  .squad-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .profile-aside, .draft-aside, .club-aside, .match-aside { position: static; }
  .draft-aside .unlocked-list { grid-template-columns: repeat(4, 1fr); }
  .reveal-layout { grid-template-columns: 380px 1fr; gap: 34px; }
  .club-grid { grid-template-columns: repeat(2, 1fr); }
  .club-aside { min-height: 340px; }
  .match-aside { grid-template-columns: auto 1fr auto; justify-items: start; gap: 14px; text-align: left; }
  .match-aside .aside-header, .match-aside .match-stat-list, .match-aside .match-quote { grid-column: 1 / -1; width: 100%; }
  .match-aside .avatar { margin: 0; }
  .match-aside .match-rating { margin: 0 0 0 auto; text-align: right; }
  .transfer-grid { grid-template-columns: repeat(2, 1fr); }
  .tactic-choice-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .shop-grid { grid-template-columns: repeat(2, 1fr); }
  .portfolio-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .weather-panel { grid-template-columns: 1fr; }.weather-data { grid-template-columns: repeat(4, 1fr); }.lineup-decision { grid-template-columns: auto 1fr; }.trust-meter { grid-column: 1 / -1; }
  .simulation-report-heading { grid-template-columns: 1fr; }
  .retirement-stats { grid-template-columns: repeat(3, 1fr); }
  .development-plan-strip { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .medical-overview { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
  .matchday-broadcast { grid-template-columns: 1fr auto; gap: 10px; min-height: 0; margin-bottom: 10px; padding: 13px; border-radius: 15px; }.broadcast-meta { gap: 5px; }.broadcast-meta > strong,.broadcast-meta > em { font-size: 9px; }.broadcast-matchup { grid-column: 1 / -1; grid-row: 2; gap: 8px; }.broadcast-matchup .team-mark { width: 48px; }.broadcast-matchup > div strong { font-size: 16px; }.broadcast-matchup > span b { font-size: 20px; }.broadcast-story { grid-column: 1 / -1; grid-template-columns: 1fr; gap: 5px; padding-top: 10px; }.broadcast-story > span { grid-row: auto; }.broadcast-story h2 { font-size: 16px; }.broadcast-story p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: 10px; }.broadcast-tension { grid-column: 1 / -1; }.broadcast-tension > strong { font-size: 24px; }
  body { font-size: 16px; }
  .topbar { min-height: 64px; padding: 10px 16px; gap: 12px; }
  .live-impact-strip { top:64px; grid-template-columns:1fr; gap:4px; min-height:66px; padding:6px 12px; }
  .live-impact-heading { display:flex; align-items:center; justify-content:space-between; min-width:0; }
  .live-impact-heading small { max-width:68vw; }
  .live-impact-chip { min-width:68px; min-height:35px; padding:5px 8px; }
  .brand small { display: none; }.brand strong { font-size: 10px; }.brand-mark { width: 38px; }
  .stage-progress { gap: 7px; }.stage-step i { width: 6px; height: 6px; }
  .screen, .narrow-screen, .story-screen { width: min(100% - 24px, 680px); padding-top: 28px; padding-bottom: 38px; }
  h1 { font-size: clamp(40px, 14vw, 62px); }
  .home-screen { min-height: auto; }.hero-stage { min-height: 430px; }.orbit-label { display: none; }.hero-player-card { width: 170px; }.hero-metrics { justify-content: space-between; }
  .hero-actions { align-items: stretch; }.hero-actions .btn { width: 100%; }.hero-note { text-align: center; width: 100%; }
  .profile-form-card, .profile-aside { padding: 20px; }.position-grid { grid-template-columns: repeat(2, 1fr); }.position-card:last-child { grid-column: 1 / -1; }
  .draft-heading { display: block; }.draft-count { margin-top: 20px; text-align: left; }.draft-count strong { font-size: 42px; }
  .development-focus { grid-template-columns: 1fr; }.development-plan-strip { grid-template-columns: repeat(2, minmax(0,1fr)); }.development-plan-option:last-child { grid-column: 1 / -1; }.development-update { align-items: flex-start; flex-direction: column; }
  .recovery-grid { grid-template-columns: 1fr; }.recovery-grid button { min-height: 0; }.recovery-confirmed { flex-direction: column; }
  .attribute-progress { gap: 3px; }.roulette-center { grid-template-columns: 1fr; justify-items: center; text-align: center; }.roulette-wheel { width: 185px; }.roulette-copy .btn { width: 100%; }
  .star-grid, .squad-grid { grid-template-columns: 1fr; }.star-card { min-height: 0; }.star-card-photo { max-height: 420px; }.attribute-choice-grid { grid-template-columns: 1fr; }.attribute-choice { grid-template-columns: 44px 1fr auto 20px; }.squad-tools { grid-template-columns: 1fr; }
  .draft-aside .unlocked-list { grid-template-columns: repeat(3, 1fr); }
  .reveal-layout { grid-template-columns: 1fr; }.player-card-3d { width: min(100%, 390px); min-height: 560px; margin: auto; transform: none; }.stat-grid { grid-template-columns: 1fr; }
  .story-layout { grid-template-columns: 1fr; }.story-line { display: none; }.story-choice { grid-template-columns: 42px 1fr 24px; padding: 18px; }
  .club-grid { grid-template-columns: 1fr; }.club-card { grid-template-columns: 24px 52px 1fr; }.club-aside { min-height: auto; padding: 26px 20px; }
  .club-tools { grid-template-columns: 1fr; }.club-tools > span { padding: 0; }
  .match-heading { align-items: start; gap: 16px; }.match-heading h1 { font-size: 48px; }.scoreboard { padding: 20px 14px; }.scoreboard-meta { gap: 8px; }.score-row { gap: 8px; }.team-block strong { font-size: 13px; }.team-mark { width: 46px; }.score-center > strong { font-size: 44px; }.match-controls { flex-wrap: wrap; }.match-controls .btn { flex: 1 1 150px; }.control-hint { width: 100%; margin: 4px 0 0; text-align: left; }.timeline-item { grid-template-columns: 34px 34px 1fr; }.event-score { grid-column: 3; }.match-aside { grid-template-columns: auto 1fr auto; padding: 20px; }
  .weather-panel { padding: 16px; }.weather-data { grid-template-columns: repeat(2, 1fr); }.lineup-decision { grid-template-columns: 1fr; padding: 16px; }.lineup-status-mark { grid-template-columns: auto 1fr; justify-items: start; align-items: center; min-width: 0; }.trust-meter { grid-column: auto; }.unexpected-match-alert { grid-template-columns: 1fr; }.result-weather-card { grid-template-columns: 1fr; padding: 18px; }
  .halftime-heading { align-items: flex-start; }.halftime-choice-grid { grid-template-columns: 1fr; }.halftime-choice { min-height: 180px; }.decision-outcome-banner { grid-template-columns: 1fr; }
  .match-objective-grid { grid-template-columns: 1fr; }.objective-verdict { align-items: flex-start; flex-direction: column; }
  .result-layout { grid-template-columns: 1fr; }.result-teams { gap: 8px; }.result-teams > strong { font-size: 40px; }.report-grid { grid-template-columns: repeat(2, 1fr); }.result-actions .btn { width: 100%; }.payslip-lines { grid-template-columns: repeat(2, 1fr); }.match-load-grid { grid-template-columns: repeat(2, 1fr); }
  .tax-match-grid, .tax-career-grid { grid-template-columns: 1fr; }
  .career-hero { align-items: flex-end; flex-wrap: wrap; }.career-hero > div:first-child { min-width: 0; flex: 1 1 250px; }.career-age { min-width: 86px; margin-left: auto; }.career-age strong { font-size: 54px; }
  .career-dashboard, .season-summary-grid { grid-template-columns: 1fr; }.league-table, .development-card, .career-news, .manager-standing { grid-column: auto; }.next-fixture { min-height: 200px; }.development-list, .transfer-grid, .news-feed, .manager-standing-grid { grid-template-columns: 1fr; }.career-actions .btn { width: 100%; }.match-briefing { grid-template-columns: 1fr 1fr; }.match-briefing > div { grid-column: 1 / -1; }.match-briefing > span { border-left: 0; border-top: 1px solid var(--line); }.contract-bonuses { grid-template-columns: 1fr; }
  .table-head, .table-row { grid-template-columns: 28px minmax(0, 1fr) 42px 42px; gap: 7px; }.table-head span:nth-child(4), .table-head span:nth-child(5), .table-head span:nth-child(6), .table-head span:nth-child(7), .table-row > span:nth-child(4), .table-row > span:nth-child(5), .table-row > span:nth-child(6), .table-row > span:nth-child(7) { display: none; }.table-head span:nth-child(8), .table-row > strong { grid-column: 4; }.table-club-name small { display: block; }
  .shop-card { grid-column: auto; }.shop-grid, .simulation-options, .allocation-grid, .draft-club-options, .award-grid { grid-template-columns: 1fr; }.simulation-option { min-height: 240px; }.allocation-item { grid-template-columns: 40px 1fr auto; }.allocation-controls { grid-column: 1 / -1; justify-content: end; }.career-wallet { flex-wrap: wrap; }
  .shop-filters { display: grid; grid-template-columns: 1fr 1fr; }.shop-filters button { width: 100%; }.shop-filters button:last-child { grid-column: 1 / -1; }
  .player-event-impact, .pulse-grid { grid-template-columns: 1fr; }
  .simulation-summary { grid-template-columns: repeat(3, 1fr); }.simulation-summary span:nth-child(4) { border-left: 0; }.fixture-report-head { display: none; }.fixture-report-card { padding: 10px; background: transparent; border: 0; box-shadow: none; backdrop-filter: none; }.fixture-report-list { gap: 10px; }.fixture-report-row { grid-template-columns: 1fr auto; gap: 10px 14px; min-height: 0; padding: 14px; border: 1px solid var(--line); border-radius: 14px; background: linear-gradient(145deg, rgba(21,55,44,.82), rgba(8,24,19,.7)); }.fixture-score { justify-self: end; }.fixture-performance { grid-row: 2; }.fixture-deltas { grid-column: 1 / -1; }.fixture-identity small, .fixture-performance small { font-size: 12px; }.fixture-identity strong { font-size: 16px; }.fixture-deltas i { min-height: 38px; display: grid; place-items: center; font-size: 13px; }
  .condition-meter-grid, .plan-choice-grid { grid-template-columns: 1fr; }.tactic-choice-grid { grid-template-columns: 1fr 1fr; }.preparation-choice { min-height: 154px; }
  .retirement-identity { align-items: flex-start; }.career-number { width: 92px; }.retirement-identity h2 { font-size: 28px; }.retirement-stats { grid-template-columns: repeat(2, 1fr); }.career-timeline { grid-template-columns: auto 1fr auto; }.career-timeline i:nth-of-type(2), .career-timeline span:last-child { display: none; }
  .site-footer { display: grid; text-align: center; }
}

@media (max-width: 390px) {
  .stage-progress { gap: 5px; }
  .hero-stage { min-height: 390px; }
  .hero-player-card { width: 150px; padding: 18px; }.hero-initials { width: 58px; }
  .position-grid { grid-template-columns: 1fr 1fr; }.position-card { min-height: 135px; }
  .draft-aside .unlocked-list { grid-template-columns: repeat(2, 1fr); }
  .score-row { grid-template-columns: 1fr 86px 1fr; }.score-center > strong { font-size: 34px; }
  .match-heading { display: block; }.match-status { width: max-content; margin-top: 16px; }
  .halftime-heading { display: grid; }.halftime-heading > strong { justify-self: start; }
  .match-briefing, .payslip-lines { grid-template-columns: 1fr; }
  .match-briefing > div { grid-column: auto; }
  .tactic-choice-grid { grid-template-columns: 1fr; }
  .portfolio-strip { grid-template-columns: 1fr; }
  .match-load-grid { grid-template-columns: 1fr; }.simulation-summary { grid-template-columns: repeat(2, 1fr); }.simulation-summary span:nth-child(odd) { border-left: 0; }.fixture-deltas { grid-template-columns: repeat(2, 1fr); }
}

/* Progressive season simulation: each completed match enters independently. */
.weekly-agenda, .career-inbox, .manager-challenge, .season-calendar, .development-plan-card, .medical-center, .archetype-career-card { grid-column: 1 / -1; overflow: hidden; }
.archetype-career-card { position: relative; background: radial-gradient(circle at 92% 10%, rgba(183,255,42,.14), transparent 30%), linear-gradient(145deg, rgba(12,42,30,.92), rgba(5,18,14,.92)); }.archetype-orbit { position: absolute; top: -64px; right: -48px; width: 210px; aspect-ratio: 1; opacity: .22; border: 1px solid var(--lime); border-radius: 50%; animation: orbit 18s linear infinite; }.archetype-orbit i { position: absolute; border: 1px solid var(--mint); border-radius: 50%; }.archetype-orbit i:nth-child(1) { inset: 26px; }.archetype-orbit i:nth-child(2) { inset: 54px; }.archetype-orbit i:nth-child(3) { inset: 82px; background: var(--lime); }.archetype-career-main { position: relative; display: grid; grid-template-columns: 1.4fr .8fr; gap: 18px; margin-top: 18px; }.archetype-career-main > div > strong { font-size: clamp(24px,3vw,38px); }.archetype-career-main p { max-width: 680px; margin: 8px 0 15px; color: var(--muted); line-height: 1.55; }.archetype-key-stats { display: flex; flex-wrap: wrap; gap: 8px; }.archetype-key-stats span { display: flex; align-items: baseline; gap: 7px; padding: 8px 11px; border: 1px solid var(--line); border-radius: 9px; }.archetype-key-stats small { color: var(--muted); font-size: 9px; }.archetype-key-stats strong { color: var(--gold); font-size: 17px; }.archetype-career-main > section { display: grid; align-content: center; gap: 5px; padding: 16px; border: 1px solid rgba(183,255,42,.24); border-radius: 13px; background: rgba(183,255,42,.05); }.archetype-career-main > section span { color: var(--lime); font-size: 9px; font-weight: 900; letter-spacing: .14em; }.archetype-career-main > section strong { font-size: 22px; }.archetype-career-main > section small { color: var(--muted); font-size: 10px; line-height: 1.45; }.archetype-career-main > section em { margin-top: 7px; color: var(--gold); font-size: 10px; font-style: normal; }.archetype-tier-track { position: relative; display: flex; align-items: center; gap: 12px; margin-top: 18px; }.archetype-tier-track > i { flex: 1; height: 7px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }.archetype-tier-track b { display: block; width: var(--archetype-progress); height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--mint),var(--lime)); box-shadow: 0 0 14px rgba(183,255,42,.35); }.archetype-tier-track span { color: var(--muted); font-size: 10px; }.archetype-result-card { grid-column: 1 / -1; display: grid; gap: 5px; padding: 18px 22px; border-radius: var(--radius); border-color: rgba(183,255,42,.28); background: linear-gradient(120deg, rgba(183,255,42,.1), rgba(7,22,17,.92)); }.archetype-result-card span { color: var(--lime); font-size: 9px; font-weight: 900; letter-spacing: .13em; }.archetype-result-card strong { font-size: 18px; }.archetype-result-card small { color: var(--muted); font-size: 11px; }
.archetype-axp-track { position:relative; display:grid; gap:8px; margin-top:18px; padding:13px 15px; border:1px solid rgba(88,242,211,.2); border-radius:12px; background:rgba(4,18,14,.58); }.archetype-axp-track > div { display:flex; align-items:center; justify-content:space-between; gap:12px; }.archetype-axp-track span { color:var(--mint); font-size:9px; font-weight:900; letter-spacing:.12em; }.archetype-axp-track strong { color:var(--gold); font-size:13px; }.archetype-axp-track > i { height:7px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.08); }.archetype-axp-track > i b { display:block; width:var(--axp-progress); height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--gold),var(--lime)); transition:width .24s var(--ease); }.archetype-axp-track > small { color:var(--muted); font-size:11px; line-height:1.45; }
.archetype-specialization-grid { position:relative; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-top:10px; }.archetype-specialization { display:grid; align-content:start; gap:6px; min-height:142px; padding:13px; border:1px solid var(--line); border-radius:12px; color:var(--text); background:rgba(255,255,255,.025); text-align:left; cursor:pointer; transition:border-color .18s ease,transform .18s ease,background .18s ease; }.archetype-specialization:hover:not(:disabled),.archetype-specialization:focus-visible { border-color:var(--mint); transform:translateY(-2px); }.archetype-specialization.is-active { border-color:var(--lime); background:rgba(183,255,42,.08); box-shadow:inset 0 3px var(--lime); }.archetype-specialization.is-locked { cursor:not-allowed; opacity:.46; }.archetype-specialization span { color:var(--mint); font-size:9px; font-weight:900; letter-spacing:.08em; }.archetype-specialization strong { font-size:16px; }.archetype-specialization small { color:var(--muted); font-size:11px; line-height:1.45; }.archetype-specialization em { margin-top:auto; color:var(--gold); font-size:10px; font-style:normal; font-weight:800; }
.archetype-specialization:focus-visible { outline:2px solid var(--mint); outline-offset:2px; }
.archetype-drill { position:relative; display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:10px; padding:13px 15px; border:1px solid rgba(245,213,71,.28); border-radius:12px; background:linear-gradient(110deg,rgba(245,213,71,.08),rgba(88,242,211,.045)); }.archetype-drill > div { display:grid; gap:4px; }.archetype-drill span { color:var(--gold); font-size:9px; font-weight:900; letter-spacing:.11em; }.archetype-drill strong { font-size:15px; }.archetype-drill small { color:var(--muted); font-size:11px; line-height:1.45; }.archetype-drill > button { flex:0 0 auto; min-height:44px; padding:0 16px; border:0; border-radius:10px; color:#06120f; background:var(--gold); font-size:11px; font-weight:950; cursor:pointer; }.archetype-drill.is-locked { opacity:.7; }.drill-grade { display:grid; flex:0 0 50px; place-items:center; width:50px; aspect-ratio:1; border-radius:50%; color:#06120f; background:var(--lime); font-size:24px; box-shadow:0 0 24px rgba(183,255,42,.28); }.drill-grade.grade-b { background:var(--mint); }.drill-grade.grade-c { background:var(--gold); }.drill-grade.grade-d { color:var(--text); background:var(--danger); }
.archetype-latest { display:flex; align-items:center; gap:10px; margin-top:9px; padding:9px 12px; border-radius:9px; background:rgba(88,242,211,.07); }.archetype-latest span { color:var(--mint); font-size:8px; font-weight:900; letter-spacing:.1em; }.archetype-latest strong { font-size:11px; }.archetype-latest.is-level-up { animation:milestonePop .55s var(--ease); background:rgba(245,213,71,.11); }.archetype-latest.is-level-up span { color:var(--gold); }
.archetype-xp-result { grid-column:1 / -1; display:grid; gap:5px; padding:16px 20px; border-color:rgba(245,213,71,.3); background:linear-gradient(120deg,rgba(245,213,71,.09),rgba(7,22,17,.92)); }.archetype-xp-result span { color:var(--gold); font-size:9px; font-weight:900; letter-spacing:.12em; }.archetype-xp-result strong { font-size:17px; }.archetype-xp-result small { color:var(--muted); font-size:11px; line-height:1.45; }.archetype-xp-result.is-level-up { box-shadow:inset 3px 0 var(--gold),0 0 28px rgba(245,213,71,.1); }
.medical-center { background: radial-gradient(circle at 92% 0, rgba(88,242,211,.1), transparent 32%), rgba(8,25,19,.74); }.medical-center.is-injured { border-color: rgba(255,140,133,.36); background: radial-gradient(circle at 92% 0, rgba(255,140,133,.1), transparent 34%), rgba(8,25,19,.78); }.medical-center.is-suspended { border-color: rgba(245,213,71,.34); }
.medical-overview { display: grid; grid-template-columns: 1.1fr .9fr; gap: 16px; align-items: center; margin-top: 16px; }.medical-status { display: flex; gap: 14px; align-items: center; padding: 15px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.025); }.medical-status > i { display: grid; place-items: center; width: 46px; aspect-ratio: 1; border-radius: 50%; color: var(--mint); background: rgba(88,242,211,.08); }.medical-status svg { width: 21px; }.medical-status > span { display: grid; gap: 3px; }.medical-status small, .discipline-meter small { color: var(--muted); font-size: 10px; }.medical-status strong { font-size: 16px; }.medical-status em { color: var(--mint); font-size: 11px; font-style: normal; }.is-injured .medical-status em { color: #ff9f99; }
.discipline-meter > span { display: flex; justify-content: space-between; gap: 12px; }.discipline-meter strong { color: var(--gold); }.discipline-meter > i { display: block; height: 8px; margin: 9px 0; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }.discipline-meter > i b { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--gold), #ff9f43); }
.medical-update { display: grid; grid-template-columns: auto 1fr; gap: 3px 12px; margin-top: 13px; padding: 11px 13px; border-radius: 10px; background: rgba(255,255,255,.035); }.medical-update span { grid-row: span 2; align-self: center; color: var(--mint); font-size: 9px; font-weight: 900; letter-spacing: .12em; }.medical-update strong { font-size: 12px; }.medical-update small { color: var(--muted); font-size: 10px; }
.recovery-options { margin-top: 17px; padding-top: 16px; border-top: 1px solid var(--line); }.recovery-options h3 { margin: 4px 0 12px; font-size: 17px; }.recovery-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; }.recovery-grid button { min-height: 144px; display: grid; align-content: start; gap: 7px; padding: 14px; border: 1px solid var(--line); border-radius: 12px; color: var(--text); background: rgba(255,255,255,.025); text-align: left; transition: .2s var(--ease); }.recovery-grid button:hover, .recovery-grid button:focus-visible { transform: translateY(-2px); border-color: var(--mint); }.recovery-grid span { font-size: 12px; font-weight: 800; }.recovery-grid strong { color: var(--gold); font-size: 16px; }.recovery-grid small { color: var(--muted); font-size: 10px; line-height: 1.45; }.recovery-grid em { margin-top: auto; color: var(--mint); font-size: 9px; font-style: normal; }.recovery-confirmed { display: flex; justify-content: space-between; gap: 12px; padding: 13px; border: 1px solid rgba(183,255,42,.25); border-radius: 11px; background: rgba(183,255,42,.045); }.recovery-confirmed small { color: var(--muted); }
.availability-result-card { grid-column: 1 / -1; display: grid; gap: 5px; padding: 18px 22px; border-radius: var(--radius); background: linear-gradient(120deg, rgba(245,213,71,.09), rgba(7,22,17,.9)); }.availability-result-card span { color: var(--gold); font-size: 9px; font-weight: 900; letter-spacing: .14em; }.availability-result-card strong { font-size: 18px; }.availability-result-card small { color: var(--muted); font-size: 11px; }.availability-result-card.is-injured { border-color: rgba(255,140,133,.42); background: linear-gradient(120deg, rgba(255,140,133,.12), rgba(7,22,17,.9)); animation: incident-enter .5s var(--ease); }.availability-result-card.is-recovered { border-color: rgba(183,255,42,.35); }
.lineup-decision.is-unavailable { border-color: rgba(255,140,133,.36); background: linear-gradient(120deg, rgba(255,140,133,.08), rgba(7,22,17,.9)); }.lineup-decision.is-unavailable .lineup-status-mark { color: #ff9f99; }
.development-plan-card { background: radial-gradient(circle at 8% 0, rgba(88,242,211,.11), transparent 32%), rgba(8,25,19,.72); }
.development-focus { display: grid; grid-template-columns: minmax(220px,.8fr) minmax(320px,1.2fr); gap: 22px; align-items: center; margin-top: 16px; }
.development-focus > div { display: grid; grid-template-columns: auto 1fr; gap: 4px 12px; align-items: center; }
.development-focus > div > span { grid-row: span 2; display: grid; place-items: center; width: 48px; aspect-ratio: 1; border: 1px solid rgba(183,255,42,.32); border-radius: 50%; color: var(--lime); font-size: 10px; font-weight: 900; }
.development-focus > div > strong { font-size: 20px; }.development-focus > div > small { color: var(--muted); font-size: 11px; line-height: 1.5; }
.development-focus section > div { display: flex; justify-content: space-between; gap: 12px; font-size: 12px; }.development-focus section em { color: var(--lime); font-style: normal; font-weight: 900; }
.development-focus section > i { display: block; height: 9px; margin: 9px 0; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }.development-focus section > i span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--mint), var(--lime)); transition: width .45s var(--ease); }.development-focus section > small { color: var(--muted); font-size: 10px; }
.development-update { display: flex; gap: 12px; align-items: center; margin-top: 14px; padding: 10px 13px; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.025); }.development-update span { color: var(--mint); font-size: 9px; font-weight: 900; letter-spacing: .12em; }.development-update strong { font-size: 12px; }.development-update.is-breakthrough { border-color: rgba(245,213,71,.4); background: rgba(245,213,71,.06); animation: goal-event-in .55s var(--ease); }.development-update.is-breakthrough span { color: var(--gold); }
.development-plan-strip { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 8px; margin-top: 16px; }.development-plan-option { min-height: 116px; display: grid; align-content: start; gap: 5px; padding: 13px; border: 1px solid var(--line); border-radius: 11px; color: var(--text); background: rgba(255,255,255,.02); text-align: left; transition: .2s var(--ease); }.development-plan-option:hover, .development-plan-option:focus-visible { transform: translateY(-2px); border-color: var(--mint); }.development-plan-option.is-selected { border-color: var(--lime); background: rgba(183,255,42,.06); box-shadow: inset 0 -3px 0 var(--lime); }.development-plan-option > span { color: var(--gold); font-size: 9px; font-weight: 900; }.development-plan-option > strong { font-size: 13px; }.development-plan-option > small { color: var(--muted); font-size: 9px; line-height: 1.4; }.development-plan-option > em { margin-top: auto; color: var(--mint); font-size: 9px; font-style: normal; }
.development-result-card { grid-column: 1 / -1; display: grid; gap: 5px; padding: 18px 22px; border-radius: var(--radius); background: linear-gradient(120deg, rgba(88,242,211,.1), rgba(7,22,17,.9)); }.development-result-card > span { color: var(--mint); font-size: 9px; font-weight: 900; letter-spacing: .14em; }.development-result-card > strong { font-size: 18px; }.development-result-card > small { color: var(--muted); font-size: 11px; }.development-result-card.is-breakthrough { border-color: rgba(245,213,71,.45); background: linear-gradient(120deg, rgba(245,213,71,.13), rgba(7,22,17,.9)); animation: goal-event-in .65s var(--ease); }.development-result-card.is-breakthrough > span { color: var(--gold); }
.manager-challenge { background: radial-gradient(circle at 90% 0, rgba(245,213,71,.1), transparent 34%), rgba(8,25,19,.72); }
.challenge-main { display: grid; grid-template-columns: 150px 1fr; gap: 20px; align-items: center; margin-top: 16px; }
.challenge-main > div { display: grid; place-items: center; min-height: 112px; border-right: 1px solid var(--line); }
.challenge-main > div strong { color: var(--gold); font-size: 42px; line-height: 1; }
.challenge-main > div strong i { color: var(--muted); font-size: 16px; font-style: normal; }
.challenge-main > div span { margin-top: 7px; color: var(--muted); font-size: 10px; }
.challenge-main section p { margin: 0 0 13px; color: var(--text); }
.challenge-main section > i { display: block; height: 8px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.07); }
.challenge-main section > i b { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--gold), var(--lime)); }
.challenge-main section small { display: block; margin-top: 10px; color: var(--muted); font-size: 10px; }
.challenge-outcome { display: flex; gap: 14px; align-items: center; margin-top: 14px; padding: 11px 14px; border-radius: 10px; font-size: 11px; }
.challenge-outcome span { font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.challenge-outcome.is-success { color: var(--lime); background: rgba(183,255,42,.06); }
.challenge-outcome.is-failed { color: #ff8c85; background: rgba(255,92,92,.07); }
.calendar-strip { display: grid; grid-template-columns: repeat(9, minmax(86px, 1fr)); gap: 7px; margin-top: 16px; overflow-x: auto; padding-bottom: 4px; }
.calendar-match { min-height: 86px; display: grid; align-content: center; gap: 5px; padding: 10px; border: 1px solid var(--line); border-radius: 11px; background: rgba(255,255,255,.02); text-align: center; }
.calendar-match small, .calendar-match span { color: var(--muted); font-size: 9px; }
.calendar-match strong { font-size: 13px; }
.calendar-match b { font-size: 10px; }
.calendar-match.result-w { box-shadow: inset 0 -3px 0 var(--lime); }.calendar-match.result-d { box-shadow: inset 0 -3px 0 var(--gold); }.calendar-match.result-l { box-shadow: inset 0 -3px 0 var(--danger); }
.calendar-match.is-next { border-color: var(--mint); background: rgba(88,242,211,.07); animation: calendar-next 1.8s ease-in-out infinite alternate; }
@keyframes calendar-next { to { box-shadow: 0 0 18px rgba(88,242,211,.12); } }
.agenda-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 18px; }
.agenda-option { min-height: 190px; display: grid; align-content: start; gap: 9px; padding: 18px; border: 1px solid var(--line); border-radius: 14px; color: var(--text); background: rgba(255,255,255,.025); text-align: left; transition: .2s var(--ease); }
.agenda-option:hover, .agenda-option:focus-visible { transform: translateY(-3px); border-color: var(--lime); background: rgba(183,255,42,.055); }
.agenda-option > span { color: var(--gold); font-size: 9px; font-weight: 900; letter-spacing: .14em; }
.agenda-option > strong { font-size: 16px; }
.agenda-option > p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.agenda-option > small { margin-top: auto; color: var(--lime); font-size: 10px; line-height: 1.5; }
.agenda-result { display: grid; grid-template-columns: auto 1fr; gap: 5px 14px; margin-top: 18px; padding: 18px; border: 1px solid rgba(183,255,42,.26); border-radius: 14px; background: rgba(183,255,42,.045); }
.agenda-result > span { grid-row: span 3; align-self: center; color: var(--lime); font-size: 9px; font-weight: 900; letter-spacing: .14em; writing-mode: vertical-rl; }
.agenda-result > p { margin: 0; color: var(--muted); font-size: 13px; }
.agenda-result > small { color: var(--gold); font-size: 10px; }
.inbox-list { display: grid; gap: 10px; margin-top: 18px; }
.inbox-message { padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.02); }
.inbox-message.is-unread { border-color: rgba(88,242,211,.32); box-shadow: inset 3px 0 0 var(--mint); }
.message-sender { display: grid; grid-template-columns: 38px 1fr auto; gap: 12px; align-items: center; }
.message-sender > i { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; color: #06120f; background: var(--mint); font-style: normal; font-weight: 950; }
.message-sender > span { display: grid; gap: 2px; }
.message-sender small { color: var(--muted); font-size: 10px; }
.message-sender > b { color: var(--lime); font-size: 9px; letter-spacing: .12em; }
.inbox-message > p { margin: 14px 0; color: var(--muted); font-size: 13px; line-height: 1.6; }
.message-replies { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.message-replies button { display: grid; gap: 5px; padding: 13px 14px; border: 1px solid var(--line); border-radius: 10px; color: var(--text); background: rgba(255,255,255,.025); text-align: left; }
.message-replies button:hover { border-color: var(--lime); }
.message-replies small, .message-result small { color: var(--gold); font-size: 10px; }
.message-result { display: grid; gap: 4px; padding: 12px 14px; border-radius: 10px; background: rgba(183,255,42,.045); }
.message-result > span { color: var(--muted); font-size: 9px; letter-spacing: .1em; }
@media (max-width: 980px) { .agenda-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .agenda-grid, .message-replies { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .challenge-main { grid-template-columns: 1fr; }.challenge-main > div { border-right: 0; border-bottom: 1px solid var(--line); }.challenge-outcome { display: grid; } }
.language-select, .account-button { min-height: 36px; border: 1px solid var(--line-strong); border-radius: 9px; color: var(--text); background: rgba(255,255,255,.045); font: inherit; font-size: 11px; font-weight: 800; }
.language-select { padding: 0 9px; }
.language-select option { color: #08130f; background: #fff; }
.account-button { max-width: 190px; padding: 0 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; }
.account-button:hover { border-color: var(--lime); color: var(--lime); }
.google-signin-button { position: absolute; z-index: 4; top: calc(100% + 8px); right: clamp(12px, 4vw, 64px); display: flex; min-height: 56px; align-items: center; justify-content: center; padding: 8px; border: 1px solid var(--line-strong); border-radius: 14px; background: rgba(5,15,12,.96); box-shadow: var(--shadow); }
.google-signin-button[hidden] { display: none; }
.is-hidden { display: none !important; }
.ad-rail { position: fixed; z-index: calc(var(--z-content) - 1); top: 112px; bottom: 72px; width: 148px; display: grid; place-items: center; overflow: hidden; border: 1px dashed rgba(255,255,255,.14); border-radius: 14px; color: rgba(255,255,255,.25); background: rgba(4,17,13,.48); font-size: 9px; letter-spacing: .18em; }
.ad-rail-left { left: max(12px, calc(50vw - 790px)); }
.ad-rail-right { right: max(12px, calc(50vw - 790px)); }
.ad-rail img, .ad-rail a { width: 100%; height: 100%; object-fit: cover; }
.ad-rail a { display: block; }
.ad-rail.has-ad { border-style: solid; }
@media (min-width: 1280px) { .screen { width: min(100% - 360px, 1180px); } }
@media (max-width: 1279px) { .ad-rail { display: none; } }
@media (max-width: 980px) { .topbar-meta .live-signal, .topbar-meta .topbar-divider { display: none; } .account-button { max-width: 120px; } }
@media (max-width: 767px) { .topbar-meta .account-button:not(.is-hidden) { display: inline-flex; max-width: 76px; align-items: center; justify-content: center; } .language-select { min-width: 58px; } .google-signin-button { right: 8px; } }
.fixture-report-row.result-w { background: linear-gradient(90deg, rgba(183,255,42,.115), rgba(183,255,42,.018) 58%); box-shadow: inset 3px 0 0 var(--lime); }
.fixture-report-row.result-d { background: linear-gradient(90deg, rgba(245,213,71,.1), rgba(245,213,71,.014) 58%); box-shadow: inset 3px 0 0 var(--gold); }
.fixture-report-row.result-l { background: linear-gradient(90deg, rgba(255,92,92,.12), rgba(255,92,92,.018) 58%); box-shadow: inset 3px 0 0 var(--danger); }
.fixture-report-row.is-new { animation: simulation-row-in .58s var(--ease) both, simulation-row-pulse 1.25s .25s ease-out both; }
.simulation-live-status { display: grid; grid-template-columns: minmax(220px, .7fr) minmax(280px, 1fr) auto; gap: 22px; align-items: center; margin-bottom: 14px; padding: 16px 20px; }
.simulation-live-status > div { display: grid; grid-template-columns: auto 1fr; gap: 3px 12px; align-items: center; }
.simulation-live-status span { color: var(--lime); font-size: 10px; font-weight: 900; letter-spacing: .16em; }
.simulation-live-status strong { font-size: 18px; }
.simulation-live-status small { grid-column: 1 / -1; color: var(--muted); font-size: 11px; }
.simulation-live-status > i { height: 8px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.07); }
.simulation-live-status > i > b { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--lime), var(--gold)); transition: width .55s var(--ease); }
.simulation-empty { min-height: 180px; display: grid; place-items: center; align-content: center; gap: 8px; color: var(--muted); text-align: center; }
.simulation-empty span { width: 34px; height: 34px; border: 3px solid rgba(255,255,255,.1); border-top-color: var(--lime); border-radius: 50%; animation: simulation-spin .8s linear infinite; }
.simulation-empty strong { color: var(--text); font-size: 16px; }
.simulation-empty small { font-size: 12px; }
@keyframes simulation-row-in { from { opacity: 0; transform: translateY(-14px) scale(.985); } to { opacity: 1; transform: none; } }
@keyframes simulation-row-pulse { 0% { filter: brightness(1.7); } 100% { filter: brightness(1); } }
@keyframes simulation-spin { to { transform: rotate(360deg); } }
@media (max-width: 767px) { .simulation-live-status { grid-template-columns: 1fr; } }

.transfer-market-layout { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(360px, .88fr); gap: 18px; align-items: start; }
.market-heat-card { display: grid; grid-template-columns: minmax(260px, 1.15fr) minmax(420px, .85fr); gap: 24px; align-items: center; margin-bottom: 16px; padding: 18px 22px; background: radial-gradient(circle at 5% 50%, rgba(183,255,42,.09), transparent 34%), rgba(8,25,19,.76); }
.market-heat-card > div { display: grid; grid-template-columns: auto 1fr; gap: 4px 12px; align-items: center; }.market-heat-card > div > span { grid-row: span 2; padding: 7px 8px; border: 1px solid rgba(183,255,42,.28); border-radius: 8px; color: var(--lime); font-size: 8px; font-weight: 950; letter-spacing: .1em; }.market-heat-card > div > strong { font-size: 20px; }.market-heat-card > div > small { color: var(--muted); font-size: 10px; line-height: 1.45; }
.market-heat-card > section { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }.market-heat-card > section span { display: grid; gap: 4px; padding: 9px; border-left: 1px solid var(--line); color: var(--muted); font-size: 8px; }.market-heat-card > section b { color: var(--text); font-size: 17px; }
.transfer-market-layout .transfer-grid { grid-template-columns: 1fr; }
.negotiated-badge { align-self: center; padding: 5px 8px; border: 1px solid rgba(88,242,211,.35); border-radius: 999px; color: var(--mint); font-size: 8px; font-style: normal; font-weight: 900; letter-spacing: .08em; }
.negotiation-room, .negotiation-placeholder { position: sticky; top: 104px; min-height: 300px; padding: 22px; }
.negotiation-placeholder { display: grid; place-items: center; align-content: center; gap: 8px; color: var(--muted); text-align: center; }
.negotiation-placeholder > span { color: var(--mint); font-size: 9px; font-weight: 900; letter-spacing: .15em; }
.negotiation-placeholder > strong { color: var(--text); font-size: 20px; }
.negotiation-placeholder > small { max-width: 360px; line-height: 1.6; }
.deal-overview { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; margin-top: 18px; }
.deal-overview > span { display: grid; gap: 4px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.025); }
.deal-overview small { color: var(--muted); font-size: 9px; }.deal-overview strong { font-size: 15px; }
.negotiation-room blockquote { display: grid; gap: 5px; margin: 14px 0; padding: 13px 15px; border-left: 3px solid var(--gold); color: var(--muted); background: rgba(245,213,71,.04); font-size: 11px; line-height: 1.55; }
.negotiation-room blockquote b { color: var(--gold); font-size: 9px; letter-spacing: .1em; }
.negotiation-options { display: grid; gap: 8px; }
.negotiation-options button { display: grid; gap: 5px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; color: var(--text); background: rgba(255,255,255,.025); text-align: left; transition: .2s var(--ease); }
.negotiation-options button:hover, .negotiation-options button:focus-visible { transform: translateX(3px); border-color: var(--lime); background: rgba(183,255,42,.055); }
.negotiation-options span { font-size: 12px; font-weight: 900; }.negotiation-options small { color: var(--muted); font-size: 9px; line-height: 1.45; }
.negotiation-outcome { display: grid; gap: 5px; padding: 14px; border: 1px solid var(--line); border-radius: 11px; }
.negotiation-outcome > span { font-size: 9px; font-weight: 900; letter-spacing: .12em; }.negotiation-outcome > small { color: var(--muted); font-size: 10px; line-height: 1.5; }
.negotiation-outcome.is-success { border-color: rgba(183,255,42,.35); background: rgba(183,255,42,.055); }.negotiation-outcome.is-success > span { color: var(--lime); }
.negotiation-outcome.is-held { border-color: rgba(245,213,71,.28); background: rgba(245,213,71,.04); }.negotiation-outcome.is-held > span { color: var(--gold); }
@media (max-width: 980px) { .transfer-market-layout { grid-template-columns: 1fr; }.negotiation-room, .negotiation-placeholder { position: static; } }
@media (max-width: 980px) { .market-heat-card { grid-template-columns: 1fr; }.market-heat-card > section { border-top: 1px solid var(--line); padding-top: 12px; } }
@media (max-width: 600px) { .deal-overview { grid-template-columns: 1fr; }.market-heat-card > section { grid-template-columns: repeat(2, 1fr); } }

.update-button { position: relative; min-height: 36px; display: inline-flex; align-items: center; gap: 6px; padding: 0 9px; border: 1px solid var(--line-strong); border-radius: 9px; color: var(--text); background: rgba(255,255,255,.045); font: inherit; font-size: 9px; font-weight: 900; cursor: pointer; }
.update-button i { display: none; padding: 2px 4px; border-radius: 4px; color: #07120f; background: var(--lime); font-size: 7px; font-style: normal; letter-spacing: .08em; }.update-button b { color: var(--mint); font-size: 8px; }.update-button:hover { border-color: var(--lime); }.update-button.is-unseen i { display: inline-block; animation: update-badge-pulse 1.4s ease-in-out infinite alternate; }
.release-notes-dialog { width: min(760px, calc(100vw - 32px)); max-height: min(82vh, 760px); margin: auto; padding: 0; overflow: auto; border: 1px solid rgba(183,255,42,.3); border-radius: 20px; color: var(--text); background: radial-gradient(circle at 80% 0, rgba(88,242,211,.14), transparent 34%), #071611; box-shadow: 0 28px 90px rgba(0,0,0,.65); }
.release-notes-dialog::backdrop { background: rgba(1,8,6,.78); backdrop-filter: blur(8px); }
.release-hero { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 24px; padding: 30px 32px 22px; border-bottom: 1px solid var(--line); background: linear-gradient(120deg, rgba(183,255,42,.07), transparent 65%); }
.release-hero p { margin: 0 0 8px; color: var(--lime); font-size: 9px; font-weight: 950; letter-spacing: .2em; }.release-hero h2 { max-width: 590px; margin: 0 0 10px; font-size: clamp(25px, 4vw, 40px); line-height: 1.05; }.release-hero span { color: var(--muted); font-size: 9px; letter-spacing: .14em; }
.release-hero > button { width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 50%; color: var(--text); background: rgba(255,255,255,.04); font-size: 24px; line-height: 1; cursor: pointer; }.release-hero > button:hover { border-color: var(--lime); color: var(--lime); }
.release-summary { margin: 0; padding: 20px 32px 6px; color: var(--muted); font-size: 13px; line-height: 1.7; }
.release-history { display: grid; gap: 10px; padding: 18px 24px 26px; }.release-version { overflow: clip; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.025); }.release-version[open] { border-color: rgba(183,255,42,.28); background: rgba(183,255,42,.025); }.release-version summary { display: flex; min-height: 68px; align-items: center; justify-content: space-between; gap: 18px; padding: 12px 16px; cursor: pointer; list-style: none; }.release-version summary::-webkit-details-marker { display: none; }.release-version summary:focus-visible { outline: 2px solid var(--lime); outline-offset: -3px; }.release-version summary > span { display: grid; gap: 4px; }.release-version summary b { color: var(--gold); font-size: 15px; }.release-version summary small { color: var(--muted); font-size: 11px; letter-spacing: .06em; }.release-version summary > strong { display: inline-flex; min-height: 32px; align-items: center; padding: 0 28px 0 10px; border: 1px solid var(--line); border-radius: 999px; color: var(--mint); font-size: 11px; white-space: nowrap; position: relative; }.release-version summary > strong::after { content: '+'; position: absolute; right: 10px; color: var(--lime); font-size: 16px; line-height: 1; }.release-version[open] summary > strong::after { content: '−'; }.release-version-body { padding: 0 16px 16px; border-top: 1px solid var(--line); }.release-version-body > h3 { margin: 16px 0 6px; font-size: 18px; }.release-version-body > p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }.release-version .release-list p { font-size: 12px; }.release-version .release-list strong { font-size: 14px; }
.release-list { display: grid; gap: 8px; padding: 14px 32px 24px; }.release-list article { display: grid; grid-template-columns: 92px 1fr; gap: 16px; padding: 14px 15px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.02); animation: release-row-in .5s calc(var(--release-index) * 70ms) var(--ease) both; }.release-list article > span { align-self: start; color: var(--gold); font-size: 8px; font-weight: 950; letter-spacing: .13em; }.release-list article > div { display: grid; gap: 4px; }.release-list strong { font-size: 13px; }.release-list p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.release-footer { display: grid; grid-template-columns: auto 1fr auto; gap: 10px 14px; align-items: center; padding: 17px 32px; border-top: 1px solid var(--line); background: rgba(0,0,0,.16); }.release-footer > span { color: var(--muted); font-size: 9px; }.release-footer > a { color: var(--mint); font-size: 10px; text-decoration: none; }.release-footer .btn { min-height: 40px; }
@keyframes update-badge-pulse { to { filter: brightness(1.35); box-shadow: 0 0 10px rgba(183,255,42,.35); } }
@keyframes release-row-in { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@keyframes orbit { to { transform: rotate(360deg); } }
@media (max-width: 980px) { .update-button span { display: none; } }
@media (max-width: 767px) { .update-button { min-width: 36px; justify-content: center; }.update-button b { display: none; }.release-hero, .release-summary, .release-list, .release-footer { padding-left: 20px; padding-right: 20px; }.release-history { padding: 12px; }.release-version summary { min-height: 64px; padding: 10px 12px; }.release-version summary > strong { padding-left: 8px; }.release-version-body { padding: 0 12px 12px; }.release-version-body > h3 { font-size: 16px; }.release-list article { grid-template-columns: 1fr; gap: 7px; }.release-footer { grid-template-columns: 1fr; }.release-footer .btn { width: 100%; } }

.interview-offer { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 18px; align-items: center; margin-bottom: 18px; padding: 17px 20px; border-radius: 18px; border-color: rgba(245,213,71,.34); background: radial-gradient(circle at 2% 50%, rgba(245,213,71,.12), transparent 28%), rgba(8,25,19,.84); }.interview-offer.is-complete { grid-template-columns: auto minmax(0,.8fr) minmax(420px,1.2fr); border-color: rgba(88,242,211,.3); }.interview-offer h2 { margin: 4px 0 5px; font-size: 21px; }.interview-offer p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.5; }.interview-live-mark { display: grid; justify-items: center; gap: 6px; min-width: 92px; color: var(--gold); font-size: 8px; font-weight: 950; letter-spacing: .12em; }.interview-live-mark i { width: 13px; height: 13px; border: 3px solid rgba(245,213,71,.25); border-radius: 50%; background: var(--danger); box-shadow: 0 0 0 5px rgba(255,107,99,.08), 0 0 18px rgba(255,107,99,.55); animation: interview-live 1.1s ease-in-out infinite alternate; }
.interview-screen { min-height: calc(100dvh - 76px); display: grid; grid-template-columns: minmax(360px,.88fr) minmax(520px,1.12fr); gap: 18px; align-items: center; }.interview-broadcast { position: relative; min-height: 610px; display: grid; grid-template-rows: auto 1fr auto; overflow: hidden; border: 1px solid rgba(245,213,71,.32); border-radius: 24px; background: radial-gradient(circle at 50% 43%, rgba(183,255,42,.16), transparent 32%), linear-gradient(155deg,#102d22,#04100c 72%); box-shadow: var(--shadow); }.interview-broadcast::before { content:""; position:absolute; z-index:0; inset:-40% -50%; opacity:.12; background:linear-gradient(100deg,transparent 44%,#fff 49%,transparent 54%); animation: interview-scan 5.2s var(--ease) infinite; pointer-events:none; }.broadcast-topline,.broadcast-player,.broadcast-lower-third { position:relative; z-index:1; }.broadcast-topline { display:flex; justify-content:space-between; gap:12px; padding:16px 18px; border-bottom:1px solid var(--line); color:var(--muted); background:rgba(2,10,7,.55); font-size:9px; letter-spacing:.12em; }.broadcast-topline span { color:#ff9f99; }.broadcast-topline i { display:inline-block; width:7px; height:7px; margin-right:5px; border-radius:50%; background:var(--danger); box-shadow:0 0 12px rgba(255,107,99,.7); }.broadcast-player { display:grid; align-content:center; justify-items:center; gap:14px; padding:28px; text-align:center; }.broadcast-player .avatar { position:relative; z-index:2; width:132px; box-shadow:0 0 54px rgba(183,255,42,.18); }.broadcast-player p { margin:0; color:var(--mint); font-size:9px; font-weight:900; letter-spacing:.16em; }.broadcast-player h1 { margin:0; font-size:clamp(39px,5vw,68px); }.broadcast-player span { color:var(--gold); font-size:11px; }.broadcast-rings { position:absolute; width:270px; aspect-ratio:1; border:1px solid rgba(183,255,42,.2); border-radius:50%; }.broadcast-rings i { position:absolute; border:1px solid rgba(88,242,211,.16); border-radius:50%; }.broadcast-rings i:first-child { inset:32px; }.broadcast-rings i:last-child { inset:68px; }.broadcast-lower-third { display:grid; gap:5px; padding:17px 20px; border-top:2px solid var(--lime); background:rgba(2,10,7,.82); }.broadcast-lower-third span { color:var(--lime); font-size:8px; font-weight:950; letter-spacing:.14em; }.broadcast-lower-third strong { font-size:14px; }
.interview-question-panel,.interview-result-panel { padding:clamp(24px,4vw,44px); border-radius:24px; }.question-source { display:flex; justify-content:space-between; gap:16px; margin-bottom:20px; }.question-source span { color:var(--gold); font-size:9px; font-weight:950; letter-spacing:.15em; }.question-source small { max-width:430px; color:var(--muted); font-size:11px; line-height:1.5; text-align:right; }.interview-question-panel > h2,.interview-result-panel > h2 { margin:0 0 24px; font-size:clamp(27px,3vw,43px); line-height:1.12; }.interview-response-grid { display:grid; gap:9px; }.interview-response-grid button { position:relative; display:grid; grid-template-columns:120px minmax(0,1fr) auto; gap:4px 15px; align-items:center; min-height:92px; padding:14px 16px; border:1px solid var(--line); border-radius:14px; color:var(--text); background:rgba(255,255,255,.025); text-align:left; transition:border-color .2s var(--ease),background .2s var(--ease),transform .2s var(--ease); }.interview-response-grid button:hover,.interview-response-grid button:focus-visible { transform:translateX(3px); border-color:var(--lime); background:rgba(183,255,42,.055); }.interview-response-grid button > span { grid-row:1 / 3; color:var(--mint); font-size:8px; font-weight:900; letter-spacing:.1em; }.interview-response-grid button > strong { font-size:14px; }.interview-response-grid button > small { color:var(--muted); font-size:10px; line-height:1.45; }.interview-response-grid button svg { grid-column:3; grid-row:1 / 3; width:18px; }.interview-note { margin:15px 0 0; color:var(--muted); font-size:10px; text-align:center; }.interview-result-panel blockquote { margin:0 0 22px; padding:16px 18px; border-left:3px solid var(--gold); color:var(--muted); background:rgba(245,213,71,.04); line-height:1.65; }.interview-impact-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }.interview-impact-grid span { display:grid; grid-template-columns:1fr auto; gap:4px 8px; padding:11px 12px; border:1px solid var(--line); border-radius:11px; background:rgba(255,255,255,.025); }.interview-impact-grid small { grid-column:1 / -1; color:var(--muted); font-size:9px; }.interview-impact-grid strong { font-size:18px; }.interview-impact-grid em { align-self:center; color:var(--text); font-size:10px; font-style:normal; }.interview-result-panel .btn { width:100%; margin-top:20px; }
@keyframes interview-live { to { filter:brightness(1.4); transform:scale(1.08); } } @keyframes interview-scan { 0%,28% { transform:translateX(-38%); } 70%,100% { transform:translateX(38%); } }

/* Mobile matchday cockpit: one decision per viewport, dense summaries and thumb-safe actions. */
@media (max-width: 767px) {
  :root { --radius: 17px; }
  html { scroll-padding-top: 62px; }
  body { font-size: 16px; overscroll-behavior-y: contain; }
  .topbar { min-height: 54px; padding: 7px 10px; gap: 8px; }
  .brand { min-height: 44px; gap: 7px; }.brand-mark { width: 34px; border-radius: 10px; }.brand strong { font-size: 9px; }
  .stage-progress { max-width: 35vw; gap: 4px; overflow: hidden; }.stage-step { flex: 0 0 auto; }.stage-step i { width: 5px; height: 5px; }.stage-step span { display: none; }
  .topbar-meta { gap: 6px; }.topbar-meta #season-meta { display: none; }.language-select { min-width: 54px; min-height: 40px; padding-inline: 6px; }
  .update-button { min-width: 44px; min-height: 44px; }
  #app { min-height: 0; }
  .screen, .narrow-screen, .story-screen { width: min(100% - 16px, 680px); padding-top: 16px; padding-bottom: 82px; }
  h1, .section-heading h1 { margin-bottom: 14px; font-size: clamp(32px, 10vw, 44px); line-height: .98; }
  h2 { line-height: 1.12; }.eyebrow { gap: 8px; margin-bottom: 10px; font-size: 9px; }.section-heading { margin-bottom: 20px; }.section-heading > p:last-child, .hero-lede { font-size: 15px; line-height: 1.55; }
  .panel-heading { gap: 10px; margin-bottom: 13px; }.panel-heading h2 { font-size: 20px; }.panel-heading > span { font-size: 9px; text-align: right; }
  .btn { min-height: 46px; padding: 11px 15px; border-radius: 12px; }.btn-large { min-height: 50px; padding-inline: 18px; }

  .home-screen { min-height: auto; align-content: start; padding-bottom: 16px; }.home-grid { gap: 4px; }.home-copy h1 { font-size: clamp(38px, 12vw, 50px); }.hero-actions { gap: 8px; margin: 18px 0 12px; }.hero-metrics { gap: 12px; margin-top: 18px; }.hero-metrics strong { font-size: 25px; }.hero-metrics span { font-size: 9px; }
  .hero-stage { min-height: 220px; max-height: 220px; }.hero-field { width: min(100%, 330px); }.hero-player-card { width: 132px; padding: 14px; border-radius: 18px; }.hero-initials { width: 52px; font-size: 25px; }.scroll-cue { display: none; }

  .profile-form-card, .profile-aside, .candidate-panel, .draft-aside, .club-aside { padding: 16px; }.field-hint { margin-bottom: 18px; }.profile-layout, .profile-form-card, .position-fieldset, .position-grid { min-width: 0; max-width: 100%; }.position-grid { width: 100%; display: flex; gap: 8px; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-inline: contain; scrollbar-width: none; }.position-card, .position-card:last-child { flex: 0 0 126px; min-height: 112px; scroll-snap-align: start; grid-column: auto; }.profile-layout { gap: 10px; }.profile-aside { display: grid; grid-template-columns: auto 1fr; gap: 4px 14px; align-items: center; }.aside-number { grid-row: 1 / 3; font-size: 46px; }.aside-line { display: none; }.profile-aside p { margin: 0; line-height: 1.5; }.aside-legend { grid-column: 2; display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: 4px; }.draft-count { margin-top: 10px; }.roulette-shell { min-height: 0; }.roulette-wheel { width: 150px; }.star-card-photo { max-height: 310px; }.player-card-3d { min-height: 460px; }.story-choice { padding: 14px; }

  .match-heading { gap: 8px; margin-bottom: 12px; }.match-heading h1 { font-size: 36px; }.match-status { margin-top: 9px; padding: 8px 11px; font-size: 9px; }
  .weather-panel, .lineup-decision { gap: 10px; margin-bottom: 10px; padding: 12px; border-radius: 14px; }.weather-panel h2, .lineup-copy h2 { font-size: 17px; }.weather-data { display: flex; gap: 7px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }.weather-data span { flex: 0 0 120px; scroll-snap-align: start; padding: 8px; }.lineup-status-mark { padding: 8px; }.trust-meter > span b { font-size: 20px; }
  .match-layout, .match-main { gap: 10px; }.scoreboard { padding: 14px 10px; }.score-row { margin-top: 16px; }.score-center > strong { font-size: 38px; }.team-mark { width: 40px; }.match-objectives, .timeline-panel, .match-aside { padding: 14px; }
  .match-objective-grid, .halftime-choice-grid { display: flex; gap: 9px; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-inline: contain; scrollbar-width: none; }.match-objective, .halftime-choice { flex: 0 0 min(82vw, 310px); min-height: 0; scroll-snap-align: start; }.halftime-choice { min-height: 172px; padding: 15px; }
  .match-controls { position: sticky; z-index: 24; bottom: calc(8px + env(safe-area-inset-bottom)); flex-wrap: nowrap; gap: 7px; padding: 8px; overflow-x: auto; border: 1px solid var(--line-strong); background: rgba(5,19,15,.94); box-shadow: 0 14px 44px rgba(0,0,0,.55); backdrop-filter: blur(18px); scrollbar-width: none; }.match-controls .btn { flex: 0 0 auto; min-width: 132px; }.control-hint { display: none; }
  .timeline-list { max-height: 38dvh; overflow-y: auto; }.timeline-item { padding-block: 9px; }

  .result-score, .result-stats { padding: 16px; }.result-teams { margin: 18px 0; }.result-teams > strong { font-size: 35px; }.final-rating { font-size: 42px; }.report-grid { gap: 7px; }.report-grid div { padding: 11px; }.report-grid b { font-size: 22px; }
  .result-actions, .career-actions { position: sticky; z-index: 24; bottom: calc(8px + env(safe-area-inset-bottom)); display: flex; flex-wrap: nowrap; justify-content: flex-start; gap: 7px; margin-top: 16px; padding: 8px; overflow-x: auto; border: 1px solid var(--line-strong); border-radius: 15px; background: rgba(5,19,15,.94); box-shadow: 0 14px 44px rgba(0,0,0,.55); backdrop-filter: blur(18px); scrollbar-width: none; }.result-actions .btn, .career-actions .btn { flex: 0 0 auto; width: auto; min-width: min(76vw, 280px); }.career-actions p, .result-actions p { display: none; }
  .simulation-confirm-bar { top: 58px; display: grid; gap: 8px; padding: 9px; }.simulation-confirm-bar div { display: none; }.simulation-confirm-bar .btn { width: 100%; min-height: 50px; white-space: normal; }

  .career-hero { gap: 10px; margin-bottom: 10px; padding: 16px; }.career-hero h1 { font-size: 34px; }.career-hero p { margin-bottom: 8px; }.career-age { display: none; }.career-growth-strip { width: 100%; justify-content: space-between; }.career-wallet { gap: 4px 10px; padding: 9px 11px; }.career-dashboard { gap: 10px; }.career-dashboard > article, .shop-card { padding: 15px; }.next-fixture { min-height: 156px; }.next-fixture h2 { margin: 8px 0 4px; font-size: 30px; }.fixture-context { margin-bottom: 12px; }
  .medical-overview, .archetype-career-main { grid-template-columns: 1fr; gap: 10px; }.medical-status { padding: 11px; }.archetype-orbit { width: 150px; }.archetype-career-main { margin-top: 10px; }.archetype-career-main > div > strong { font-size: 23px; }.archetype-career-main p { margin: 5px 0 10px; }.archetype-career-main > section { padding: 12px; }.archetype-tier-track { margin-top: 12px; }
  .archetype-axp-track { margin-top:10px; padding:11px; }.archetype-specialization-grid { display:flex; gap:8px; margin-inline:-4px; padding:0 4px 4px; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-inline:contain; scrollbar-width:none; }.archetype-specialization { flex:0 0 min(76vw,260px); min-height:126px; padding:12px; scroll-snap-align:start; }.archetype-drill { align-items:stretch; flex-direction:column; gap:10px; padding:12px; }.archetype-drill > button { width:100%; }.drill-grade { align-self:flex-end; width:44px; flex-basis:44px; font-size:21px; }.archetype-tier-track { align-items:flex-start; flex-direction:column; gap:7px; }.archetype-tier-track > i { flex:none; width:100%; }.archetype-tier-track span { font-size:10px; line-height:1.4; }
  .preparation-section + .preparation-section { margin-top: 16px; padding-top: 15px; }.condition-meter-grid { margin: 14px 0 16px; }.development-focus { gap: 10px; }.weekly-agenda, .career-inbox, .manager-challenge, .season-calendar, .development-plan-card, .medical-center, .archetype-career-card, .preparation-card, .career-news, .league-table, .shop-card { content-visibility: auto; contain-intrinsic-size: auto 420px; }

  .plan-choice-grid, .tactic-choice-grid, .development-plan-strip, .news-feed, .shop-grid, .simulation-options, .draft-club-options, .award-grid, .transfer-grid, .recovery-grid { display: flex; grid-template-columns: none; gap: 9px; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-inline: contain; scrollbar-width: none; padding-bottom: 5px; }
  .preparation-choice, .development-plan-option, .news-feed section, .shop-item, .simulation-option, .draft-club-option, .award-item, .transfer-card, .recovery-grid button { flex: 0 0 min(82vw, 310px); scroll-snap-align: start; }
  .preparation-choice { min-height: 142px; padding: 13px; }.development-plan-option { min-height: 104px; }.news-feed { margin-top: 12px; }.news-feed section { padding: 13px; }.shop-item { min-height: 220px; padding: 14px; }.shop-filters { display: flex; gap: 7px; overflow-x: auto; scrollbar-width: none; }.shop-filters button, .shop-filters button:last-child { flex: 0 0 auto; width: auto; min-height: 44px; grid-column: auto; }.portfolio-strip { display: flex; overflow-x: auto; scrollbar-width: none; }.portfolio-strip span { flex: 0 0 135px; }
  .simulation-option { min-height: 205px; padding: 18px; }.simulation-option h2 { margin: 22px 0 9px; }.draft-club-option { min-height: 175px; padding: 18px; }

  .release-notes-dialog { width: calc(100vw - 16px); max-height: calc(100dvh - 16px); border-radius: 16px; }.release-hero { gap: 12px; padding-top: 20px; }.release-hero h2 { font-size: 26px; }.release-hero > button { width: 44px; height: 44px; }.release-summary { padding-top: 14px; font-size: 12px; }.release-list { gap: 7px; padding-top: 10px; }.release-list article { padding: 11px; }.release-footer { position: sticky; bottom: 0; background: #071611; }.release-footer > a { min-height: 44px; display: inline-flex; align-items: center; }
  .interview-offer,.interview-offer.is-complete { grid-template-columns:1fr; gap:10px; padding:14px; }.interview-live-mark { grid-auto-flow:column; justify-content:start; justify-items:start; min-width:0; }.interview-live-mark i { width:10px; height:10px; }.interview-offer .btn { width:100%; }.interview-impact-grid { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }.interview-impact-grid span { flex:0 0 125px; scroll-snap-align:start; }
  .interview-screen { min-height:0; grid-template-columns:1fr; align-items:start; gap:10px; }.interview-broadcast { min-height:250px; border-radius:17px; }.broadcast-topline { padding:10px 12px; }.broadcast-player { grid-template-columns:auto 1fr; justify-items:start; gap:12px; padding:16px; text-align:left; }.broadcast-player .avatar { width:82px; grid-row:1 / 4; }.broadcast-player p { align-self:end; }.broadcast-player h1 { font-size:29px; }.broadcast-rings { left:2px; width:115px; }.broadcast-rings i:first-child { inset:16px; }.broadcast-rings i:last-child { inset:34px; }.broadcast-lower-third { padding:11px 13px; }.interview-question-panel,.interview-result-panel { padding:16px; border-radius:17px; }.question-source { display:grid; gap:5px; margin-bottom:12px; }.question-source small { text-align:left; }.interview-question-panel > h2,.interview-result-panel > h2 { margin-bottom:15px; font-size:25px; }.interview-response-grid { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-inline:contain; scrollbar-width:none; }.interview-response-grid button { flex:0 0 calc(100vw - 42px); min-height:174px; grid-template-columns:1fr auto; align-content:start; scroll-snap-align:start; }.interview-response-grid button > span { grid-column:1 / -1; grid-row:auto; }.interview-response-grid button > strong { grid-column:1; margin-top:9px; font-size:16px; }.interview-response-grid button > small { grid-column:1; font-size:12px; }.interview-response-grid button svg { grid-column:2; grid-row:2 / 4; }.interview-result-panel blockquote { padding:13px; }.interview-result-panel .btn { position:sticky; bottom:calc(8px + env(safe-area-inset-bottom)); z-index:24; }
}

@media (max-width: 390px) {
  .home-copy h1 { font-size: 37px; }.hero-stage { min-height: 190px; max-height: 190px; }.hero-player-card { width: 120px; }.hero-metrics { justify-content: space-between; }.hero-metrics span { letter-spacing: .04em; }
  .score-row { grid-template-columns: 1fr 72px 1fr; }.score-center > strong { font-size: 32px; }.match-heading h1 { font-size: 33px; }
  .match-objective, .halftime-choice, .preparation-choice, .development-plan-option, .news-feed section, .shop-item, .simulation-option, .draft-club-option, .award-item, .transfer-card, .recovery-grid button { flex-basis: calc(100vw - 42px); }
}

/* Mobile grid system v2: compact, readable cards without nested horizontal carousels. */
@media (max-width: 767px) {
  :root {
    --mobile-gutter: 10px;
    --mobile-gap: 8px;
    --mobile-card-pad: 13px;
    --mobile-cell-radius: 13px;
  }
  *, *::before, *::after { min-width: 0; }
  .screen, .narrow-screen, .story-screen { width: calc(100% - (var(--mobile-gutter) * 2)); }
  .glass-card { max-width: 100%; }
  .section-heading { margin-bottom: 15px; }
  .section-heading h1 { font-size: clamp(30px, 8.5vw, 38px); line-height: 1.04; }
  .section-heading > p:last-child { font-size: 14px; line-height: 1.45; }

  .profile-form-card { padding: var(--mobile-card-pad); }
  .profile-form-card > label { margin-bottom: 6px; }
  .profile-form-card input[type="text"] { min-height: 48px; }
  .nationality-select { min-height: 48px; }
  .nationality-hint { margin-bottom: 8px; font-size: 10px; line-height: 1.35; }
  .field-hint { margin-bottom: 8px; font-size: 10px; }
  .age-entry { padding-block: 7px; }
  .position-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 5px;
    width: 100%;
    overflow: visible;
    scroll-snap-type: none;
  }
  .position-card, .position-card:last-child {
    width: auto;
    min-height: 66px;
    padding: 8px 3px;
    border-radius: var(--mobile-cell-radius);
    grid-column: auto;
  }
  .position-card:last-child { grid-column: auto; }
  .position-card strong { font-size: 18px; line-height: 1; }
  .position-card em { max-width: none; margin-top: 5px; font-size: 10px; line-height: 1.15; }
  .position-card em small, .position-shape { display: none; }
  .profile-aside { display: none; }

  .draft-layout { gap: var(--mobile-gap); }
  .candidate-panel, .attribute-pick-panel, .draft-aside { padding: var(--mobile-card-pad); }
  .draft-club-options, .simulation-options, .award-grid, .transfer-grid, .recovery-grid,
  .news-feed, .match-objective-grid, .halftime-choice-grid,
  .interview-response-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--mobile-gap);
    overflow: visible;
    scroll-snap-type: none;
    padding-bottom: 0;
  }
  .tactic-choice-grid, .development-plan-strip {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--mobile-gap);
    overflow: visible;
    scroll-snap-type: none;
    padding-bottom: 0;
  }
  .development-plan-option:last-child { grid-column: 1 / -1; }
  .condition-meter-grid, .plan-choice-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .condition-meter-grid { margin: 10px 0 14px; }
  .plan-choice-grid { display: grid; overflow: visible; scroll-snap-type: none; }
  .plan-choice-grid .preparation-choice { min-height: 178px; padding: 10px 8px; }
  .plan-choice-grid .preparation-choice > small { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 4; }
  .agenda-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
  .agenda-option { min-height: 210px; padding: 12px; }
  .preparation-choice, .development-plan-option, .news-feed section, .shop-item,
  .simulation-option, .draft-club-option, .award-item, .transfer-card,
  .recovery-grid button, .match-objective, .halftime-choice,
  .interview-response-grid button {
    flex: none;
    width: 100%;
    scroll-snap-align: none;
  }
  .draft-club-option { min-height: 116px; padding: 14px; }
  .draft-club-option > strong { margin-top: 5px; font-size: 17px; }
  .simulation-option { min-height: 148px; padding: 15px; }
  .simulation-option h2 { margin: 12px 0 6px; font-size: 21px; }
  .simulation-option p { margin: 0; line-height: 1.5; }
  .simulation-option > strong { margin-top: 10px; }
  .simulation-option > .icon { right: 15px; bottom: 15px; }

  .squad-tools { gap: var(--mobile-gap); margin: 12px 0; }
  .star-grid.squad-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5px; }
  .squad-grid .star-card { min-height: 0; gap: 4px; padding: 5px; contain-intrinsic-size: 0 158px; }
  .squad-grid .star-card-photo { margin-bottom: 4px; }
  .squad-grid .star-card-top { gap: 2px; font-size: 8px; }
  .squad-grid .star-card-top > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .squad-grid .star-card-top b { font-size: 8px; }
  .squad-grid .star-card > strong { min-height: 26px; display: -webkit-box; overflow: hidden; font-size: 10px; line-height: 1.25; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .squad-grid .star-card > small, .squad-grid .star-strengths, .squad-grid .card-chevron { display: none; }
  .attribute-choice-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--mobile-gap); }
  .attribute-choice { min-height: 94px; grid-template-columns: 1fr auto; gap: 5px 8px; padding: 10px; }
  .attribute-choice .attribute-code { grid-column: 1; }
  .attribute-choice > span:nth-child(2) { grid-column: 1; }
  .attribute-choice > span:nth-child(2) small { display: -webkit-box; overflow: hidden; line-height: 1.25; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .attribute-choice > b { grid-column: 2; grid-row: 1 / 3; }
  .attribute-choice > .icon { display: none; }
  .draft-aside { padding: 10px; }
  .draft-aside .position-badge, .draft-aside > h2, .draft-aside .aside-position, .draft-aside-foot { display: none; }
  .draft-aside .aside-header { margin-bottom: 7px; }
  .draft-aside .unlocked-list { grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 4px; }
  .draft-aside .unlocked-item { min-height: 46px; gap: 1px; padding: 5px 2px; text-align: center; }
  .draft-aside .unlocked-item span { font-size: 8px; }
  .draft-aside .unlocked-item strong { font-size: 14px; }
  .draft-aside .unlocked-item small { display: none; }

  .player-card-3d { width: min(100%, 330px); min-height: 360px; padding: 20px; border-radius: 24px; }
  .player-card-main { min-height: 250px; gap: 11px; }
  .card-rating { left: 20px; top: 58px; }.card-rating strong { font-size: 48px; }
  .player-card-3d .large-avatar { width: 104px; }
  .stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--mobile-gap); }
  .story-layout { margin-top: 20px; }
  .story-choice { min-height: 106px; grid-template-columns: 32px 1fr 18px; gap: 10px; padding: 12px; }
  .choice-index { font-size: 18px; }
  .choice-copy strong { font-size: 16px; }
  .choice-copy small { margin: 4px 0; font-size: 12px; line-height: 1.4; }

  .club-layout { gap: var(--mobile-gap); }
  .club-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .club-card {
    min-height: 80px;
    grid-template-columns: 32px 1fr;
    gap: 6px;
    padding: 8px 6px;
  }
  .club-index, .club-chevron { display: none; }
  .club-mark { width: 32px; border-radius: 9px; font-size: 10px; }
  .club-name strong { display: -webkit-box; overflow: hidden; font-size: 11px; line-height: 1.2; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .club-name small { display: none; }
  .selected-check { right: 8px; bottom: 6px; font-size: 8px; }
  .club-aside { padding: 14px; }
  .club-aside .empty-club-mark { width: 58px; margin: 8px auto; }.club-aside > p { margin: 6px 0; }.club-aside-note { margin: 10px 0; }

  .weather-data { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; overflow: visible; scroll-snap-type: none; }
  .weather-data span { width: auto; min-height: 58px; padding: 8px; }
  .match-objective { min-height: 68px; padding: 10px; }
  .match-objective small { font-size: 11px; }
  .halftime-choice { min-height: 126px; padding: 13px; }
  .match-controls { display: grid; grid-template-columns: 1fr 1fr; overflow: visible; }
  .match-controls .btn { min-width: 0; width: 100%; }
  .match-controls .btn:first-of-type:last-of-type { grid-column: 1 / -1; }
  .lineup-decision { grid-template-columns: 64px 1fr; padding: 12px; }
  .lineup-status-mark { grid-row: 1 / 3; align-self: stretch; align-content: center; }
  .trust-meter { grid-column: 2; }
  .timeline-panel { min-height: 220px; }.timeline-empty { min-height: 132px; }
  .match-aside { grid-template-columns: 52px 1fr auto; gap: 7px 10px; padding: 12px; }
  .match-aside .aside-header { grid-column: 1 / -1; }
  .match-aside .avatar { grid-column: 1; grid-row: 2 / 4; width: 52px; margin: 0; }
  .match-aside h2 { grid-column: 2; grid-row: 2; align-self: end; margin: 0; font-size: 18px; }
  .match-aside .position-badge { grid-column: 2; grid-row: 3; align-self: start; margin: 0; padding: 5px 7px; }
  .match-aside .match-rating { grid-column: 3; grid-row: 2 / 4; align-self: center; margin: 0; }
  .match-aside .match-rating strong { font-size: 38px; }
  .match-aside .match-stat-list { grid-column: 1 / -1; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; }
  .match-stat-list span { padding: 7px 5px; }.match-stat-list b { font-size: 16px; }
  .match-aside .match-quote { grid-column: 1 / -1; margin-top: 4px; padding-top: 8px; }

  .report-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .result-screen { overflow: hidden; }.result-glow { width: min(450px, 100vw); }
  .match-load-grid, .tax-match-grid, .payslip-lines { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  .match-load-grid > span, .tax-match-grid > span, .payslip-lines span { padding: 9px; }
  .result-actions, .career-actions { display: grid; grid-template-columns: 1fr; overflow: visible; }
  .result-actions .btn, .career-actions .btn { width: 100%; min-width: 0; }
  .career-dashboard { gap: 7px; }
  .career-dashboard > article, .shop-card { padding: 11px; }
  .international-header { grid-template-columns: 52px 1fr auto; gap: 10px; }.international-mark { width: 52px; border-radius: 14px; }.international-header h2 { font-size: 19px; }.international-header > b { padding: 6px 7px; }
  .international-stats { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 6px; margin-top: 12px; }.international-stats span { padding: 9px; }.international-stats span:last-child { grid-column: span 2; }.international-stats b { font-size: 18px; }
  .call-up-status { margin: 12px 0 8px; padding: 11px; }.international-choice-grid { grid-template-columns: 1fr; gap: 7px; }.international-choice-grid button { min-height: 92px; padding: 10px; }.international-choice-grid small { font-size: 10px; }
  .rivalry-card-header { grid-template-columns: 42px 1fr auto; gap: 8px; }.rivalry-card-header .club-mark { width: 42px; }.rivalry-card-header h2 { font-size: 18px; }.rivalry-card-header p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }.rivalry-card-header > b { font-size: 28px; }.rivalry-record-grid { grid-template-columns: repeat(5,minmax(0,1fr)); gap: 4px; margin-top: 10px; }.rivalry-record-grid span { padding: 7px 3px; text-align: center; }.rivalry-record-grid strong { font-size: 16px; }.fan-standing { grid-template-columns: 1fr; gap: 6px; }.rivalry-match-banner { grid-template-columns: 1fr auto; gap: 7px; margin-bottom: 10px; padding: 11px; }.rivalry-match-banner > span { grid-column: 1 / -1; }.rivalry-match-banner strong { font-size: 16px; }.rivalry-match-banner p { font-size: 10px; line-height: 1.4; }.rivalry-match-banner > b { font-size: 22px; }.rivalry-result-card { grid-template-columns: 1fr; gap: 10px; }.rivalry-impact-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 4px; }.rivalry-impact-grid span { padding: 7px 4px; }.rivalry-impact-grid b { font-size: 15px; }
  .leadership-header { grid-template-columns: 48px 1fr auto; gap: 8px; }.leadership-header > span { min-width: 48px; border-radius: 13px; font-size: 9px; }.leadership-header h2 { font-size: 18px; }.leadership-header p { font-size: 10px; }.leadership-header > b { font-size: 28px; }.leadership-metrics { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 4px; margin-top: 10px; }.leadership-metrics span { padding: 7px 3px; text-align: center; }.leadership-metrics strong { font-size: 16px; }.leadership-track { gap: 2px; margin-top: 10px; }.leadership-track small { font-size: 7px; }.leadership-next { margin-top: 9px; }.leadership-match-banner { margin-bottom: 10px; padding: 10px; }.leadership-match-banner > span { min-width: 42px; height: 42px; }.leadership-result-card { grid-template-columns: 1fr; gap: 7px; }.leadership-result-card > div:last-child { display: grid; grid-template-columns: repeat(3,1fr); gap: 4px; }.leadership-result-card > div:last-child b { padding: 7px 4px; text-align: center; }
  .manager-market-head { grid-template-columns: 44px 1fr auto; gap: 8px; }.manager-market-head > span { width: 44px; border-radius: 12px; font-size: 9px; }.manager-market-head h2 { font-size: 18px; }.manager-market-head p { display: -webkit-box; overflow: hidden; font-size: 9px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }.manager-market-head > b { font-size: 26px; }.manager-change-alert { grid-template-columns: 1fr; gap: 3px; margin-top: 9px; padding: 9px 10px; }.manager-change-alert span { grid-row: auto; }.manager-change-alert small { font-size: 9px; line-height: 1.35; }.manager-tactical-grid { gap: 4px; margin-top: 9px; }.manager-tactical-grid span { padding: 8px 6px; }.manager-tactical-grid strong { font-size: 13px; }.manager-attribute-fit { gap: 4px; margin-top: 4px; }.manager-attribute-fit span { padding: 7px 6px; }.manager-adaptation { grid-template-columns: 1fr; gap: 6px; margin-top: 8px; }.manager-adaptation span small { font-size: 9px; line-height: 1.35; }.manager-match-banner { padding: 10px; }.manager-match-banner > span { min-width: 52px; height: 42px; }.manager-match-banner strong { font-size: 14px; }.manager-match-banner small { font-size: 9px; line-height: 1.35; }.manager-result-card { grid-template-columns: 1fr auto; gap: 5px 8px; }.manager-result-card > span { grid-column: 1 / -1; }.manager-result-card small { font-size: 9px; }
  .analytics-head { grid-template-columns: 1fr auto; gap: 8px; align-items: start; }.analytics-head h2 { font-size: 18px; line-height: 1.15; }.analytics-head p { display: -webkit-box; overflow: hidden; font-size: 10px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }.analytics-head > section strong { font-size: 30px; }.analytics-head > section small { max-width: 70px; font-size: 8px; text-align: right; }.analytics-body { grid-template-columns: 1fr; gap: 7px; margin-top: 11px; }.form-chart { padding: 10px; }.form-bars { height: 104px; gap: 5px; margin-top: 6px; padding-top: 18px; }.analytics-match > b { border-radius: 6px 6px 2px 2px; }.per90-grid span { min-height: 58px; padding: 8px; }.per90-grid small { font-size: 8px; }.per90-grid strong { font-size: 17px; }.analytics-footer { grid-template-columns: 1fr; gap: 6px; margin-top: 7px; }.analytics-footer > div { padding: 9px 10px; }.analytics-footer > div:last-child { grid-template-columns: 1fr auto; align-items: center; }.analytics-footer > div:last-child small { grid-column: 1 / -1; }
  .career-mobile-tabs { position: sticky; z-index: 23; top: 58px; display: grid; grid-template-columns: repeat(5, 1fr); gap: 4px; margin: 0 0 10px; padding: 5px; border: 1px solid var(--line); border-radius: 14px; background: rgba(5,19,15,.94); box-shadow: 0 12px 30px rgba(0,0,0,.3); backdrop-filter: blur(16px); }
  .career-mobile-tabs button { min-height: 44px; padding: 7px 2px; border: 0; border-radius: 10px; color: var(--muted); background: transparent; font-size: 11px; font-weight: 850; }
  .career-mobile-tabs button.is-active { color: #06120f; background: var(--lime); }
  .career-screen[data-career-tab="match"] .career-dashboard > article:not(.next-fixture):not(.origin-dossier):not(.international-duty-card):not(.rivalry-career-card):not(.leadership-career-card):not(.medical-center):not(.manager-challenge):not(.preparation-card):not(.career-objectives),
  .career-screen[data-career-tab="player"] .career-dashboard > article:not(.manager-standing):not(.manager-market-card):not(.archetype-career-card):not(.development-plan-card):not(.career-stats):not(.performance-analytics):not(.career-milestones):not(.player-pulse):not(.teammate-relationships),
  .career-screen[data-career-tab="finance"] .career-dashboard > article:not(.contract-card):not(.tax-career-card):not(.agent-career-card),
  .career-screen[data-career-tab="world"] .career-dashboard > article:not(.weekly-agenda):not(.career-inbox):not(.season-calendar):not(.career-news):not(.league-table),
  .career-screen[data-career-tab="shop"] .career-dashboard > article:not(.shop-card) { display: none; }
  .result-mobile-tabs { position: sticky; z-index: 23; top: 58px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 5px; margin: 0 0 10px; padding: 5px; border: 1px solid var(--line); border-radius: 14px; background: rgba(5,19,15,.94); box-shadow: 0 12px 30px rgba(0,0,0,.3); backdrop-filter: blur(16px); }
  .result-mobile-tabs button { min-height: 44px; border: 0; border-radius: 10px; color: var(--muted); background: transparent; font-size: 12px; font-weight: 850; }
  .result-mobile-tabs button.is-active { color: #06120f; background: var(--lime); }
  .result-screen[data-result-tab="summary"] .result-layout > :not(.result-score):not(.result-stats):not(.match-objectives):not(.rivalry-result-card):not(.leadership-result-card):not(.manager-result-card),
  .result-screen[data-result-tab="condition"] .result-layout > :not(.match-load-card):not(.archetype-result-card):not(.archetype-xp-result):not(.development-result-card):not(.result-weather-card),
  .result-screen[data-result-tab="finance"] .result-layout > :not(.tax-match-card):not(.earnings-breakdown) { display: none; }
  .shop-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--mobile-gap); overflow: visible; }
  .shop-item { min-height: 198px; padding: 10px; }
  .shop-item h3 { margin: 6px 0 3px; font-size: 14px; line-height: 1.2; }
  .shop-item p { display: -webkit-box; margin: 4px 0; overflow: hidden; line-height: 1.4; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
  .shop-item .market-note { display: -webkit-box; overflow: hidden; font-size: 9px; -webkit-box-orient: vertical; -webkit-line-clamp: 1; }
  .shop-item-foot { padding-top: 7px; }
  .shop-item-foot { align-items: stretch; flex-direction: column; }.shop-item-foot > strong { font-size: 16px; }.shop-item-foot .btn { width: 100%; min-height: 44px; padding-inline: 8px; }
  .asset-market { padding: 8px; }.asset-sale-preview { grid-template-columns: 1fr; }.asset-sale-preview span { grid-template-columns: 1fr auto; align-items: center; }.asset-transaction-result { margin: 10px 0; padding: 11px; }
  .portfolio-strip { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; overflow: visible; }
  .portfolio-strip span { width: auto; padding: 9px; }

  .interview-response-grid button { min-height: 112px; grid-template-columns: 1fr auto; padding: 12px; }
  .interview-impact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; overflow: visible; scroll-snap-type: none; }
  .interview-impact-grid span { width: auto; }
}

/* Mobile grid system v3: readable two-column cards and consistent tap targets. */
@media (max-width: 767px) {
  :root {
    --mobile-gutter: 12px;
    --mobile-gap: 10px;
    --mobile-card-pad: 14px;
  }

  button, input, select { font-size: max(16px, 1em); }
  .glass-card { border-radius: 16px; }
  .career-dashboard > article, .shop-card { padding: var(--mobile-card-pad); }

  .position-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
  .position-card, .position-card:last-child { min-height: 76px; padding: 9px 5px; }
  .position-card strong { font-size: 20px; }
  .position-card em { font-size: 11px; }

  .star-grid.squad-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .squad-grid .star-card {
    min-height: 0;
    padding: 9px;
    border-radius: 14px;
    contain-intrinsic-size: 0 285px;
  }
  .squad-grid .star-card-photo { max-height: none; margin-bottom: 7px; }
  .squad-grid .player-headshot { aspect-ratio: 4 / 5; }
  .squad-grid .star-card-top { margin-bottom: 5px; }
  .squad-grid .star-card-top > span, .squad-grid .star-card-top b { font-size: 10px; }
  .squad-grid .star-card > strong { min-height: 30px; font-size: 13px; line-height: 1.25; }
  .squad-grid .star-card > small { display:none; }
  .squad-grid .player-ability-matrix { grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; margin-top:8px; }
  .squad-grid .player-ability-matrix span { min-height:27px; padding:3px 4px; }
  .squad-grid .player-ability-matrix small { font-size:8px; }
  .squad-grid .star-card-action { min-height:44px; padding-inline:7px; font-size:10px; }
  .squad-panel .star-grid { max-height:min(62dvh,620px); padding:4px; overflow-y:auto; overscroll-behavior:contain; scrollbar-color:rgba(183,255,42,.35) transparent; }
  .attribute-player-summary { grid-template-columns:74px minmax(0,1fr) auto; gap:10px; padding:10px; }
  .attribute-player-photo { width:74px; }
  .attribute-player-summary h2 { font-size:18px; }
  .draft-aside .unlocked-list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
  .draft-aside .unlocked-item { min-height: 54px; padding: 7px 4px; }
  .draft-aside .unlocked-item span { font-size: 9px; }
  .draft-aside .unlocked-item strong { font-size: 16px; }

  .club-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .club-card { min-height: 96px; grid-template-columns: 40px 1fr; gap: 9px; padding: 10px; }
  .club-mark { width: 40px; border-radius: 11px; font-size: 11px; }
  .club-name strong { font-size: 13px; line-height: 1.25; }

  .condition-meter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .condition-meter { min-height: 72px; padding: 10px; }
  .condition-meter strong { font-size: 12px; }
  .condition-meter b { font-size: 19px; }
  .plan-choice-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .plan-choice-grid .preparation-choice { min-height: 154px; padding: 12px; }
  .plan-choice-grid .preparation-choice:last-child { grid-column: 1 / -1; min-height: 130px; }
  .plan-choice-grid .preparation-choice > small { -webkit-line-clamp: 2; }
  .tactic-choice-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .tactic-choice-grid .preparation-choice { min-height: 152px; padding: 12px; }

  .agenda-grid { grid-template-columns: 1fr; gap: 8px; }
  .agenda-option { min-height: 132px; padding: 13px; }
  .agenda-option > p { line-height: 1.45; }
  .message-replies { grid-template-columns: 1fr; }

  .shop-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .shop-item { min-height: 216px; padding: 11px; }
  .shop-item p { -webkit-line-clamp: 2; }

  .career-mobile-tabs, .result-mobile-tabs { top: 56px; border-radius: 13px; }
  .career-mobile-tabs button, .result-mobile-tabs button { min-height: 46px; font-size: 12px; }
  .manager-standing-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .manager-standing-grid > span { min-height: 76px; padding: 9px 7px; }
  .manager-standing-grid small { font-size: 9px; }
  .manager-standing-grid strong { font-size: 13px; line-height: 1.25; }
  .manager-standing-note { margin-top: 9px; }
  .career-actions { grid-template-columns: minmax(0, 1.45fr) minmax(104px, .75fr); gap: 6px; padding: 6px; }
  .career-actions .btn { min-height: 50px; padding: 9px 7px; font-size: 12px; }
  .career-actions .btn:first-of-type:last-of-type { grid-column: 1 / -1; }

  .matchday-squad-card { margin-bottom: 10px; padding: 12px; }
  .matchday-squad-card .panel-heading { margin-bottom: 9px; }
  .matchday-squad-card .panel-heading h2 { font-size: 18px; }
  .position-battle { grid-template-columns: 40px minmax(0, 1fr) auto; gap: 8px; margin-bottom: 8px; padding: 9px; }
  .position-battle .team-sheet-avatar { width: 40px; }
  .position-battle strong { font-size: 13px; }
  .position-battle p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .position-battle > b { font-size: 24px; }
  .team-sheet-clubs { grid-template-columns: 1fr; gap: 6px; }
  .team-sheet-team summary { min-height: 58px; grid-template-columns: 38px minmax(0, 1fr) auto; gap: 8px; padding: 7px 9px; }
  .team-sheet-team summary .club-mark { width: 36px; border-radius: 9px; }
  .team-sheet-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3px; padding: 6px; }
  .team-sheet-player { grid-template-columns: 24px 20px minmax(0, 1fr) auto; gap: 4px; min-height: 36px; padding: 3px 4px; }
  .team-sheet-player .team-sheet-avatar { width: 24px; }
  .team-sheet-player > strong { font-size: 9px; }
  .team-sheet-bench { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3px; padding: 0 6px 6px; }
  .team-sheet-sub { min-height: 28px; padding: 4px 5px; }
}

@media (max-width: 340px) {
  .position-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .club-grid { grid-template-columns: 1fr; }
}

.test-channel-banner { position:sticky; z-index:60; top:0; display:grid; grid-template-columns:auto 1fr auto; gap:12px; align-items:center; min-height:40px; padding:7px max(12px,calc((100vw - 1180px) / 2)); color:#06120f; background:linear-gradient(90deg,var(--gold),var(--lime)); box-shadow:0 8px 24px rgba(0,0,0,.3); font-size:11px; }
.test-channel-banner strong { letter-spacing:.12em; }.test-channel-banner span { font-weight:800; }.test-channel-banner a { min-height:30px; display:inline-flex; align-items:center; padding:0 10px; border:1px solid rgba(6,18,15,.35); border-radius:8px; color:#06120f; font-weight:900; text-decoration:none; }
.is-testing-channel .topbar { top:40px; }
.is-testing-channel .live-impact-strip { top:116px; }
@media (max-width:767px) { .test-channel-banner { grid-template-columns:1fr auto; gap:3px 8px; padding:6px 10px; }.test-channel-banner span { grid-column:1; font-size:9px; }.test-channel-banner a { grid-column:2; grid-row:1 / 3; }.is-testing-channel .live-impact-strip { top:104px; }.is-testing-channel .career-mobile-tabs,.is-testing-channel .result-mobile-tabs { top:96px; } }

.condition-curve { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; margin-top:16px; }.condition-curve > div { display:grid; grid-template-columns:auto 1fr auto; gap:7px; align-items:center; min-height:72px; padding:9px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.02); }.condition-curve span { color:var(--muted); font-size:9px; }.condition-curve b { color:var(--gold); font-size:15px; }.condition-curve ol { height:46px; display:flex; align-items:end; gap:2px; margin:0; padding:0; list-style:none; }.condition-curve li { flex:1; min-width:2px; border-radius:3px 3px 1px 1px; background:linear-gradient(var(--mint),rgba(88,242,211,.2)); transition:height .35s var(--ease); }.condition-curve > p { grid-column:1 / -1; margin:0; padding:15px; color:var(--muted); text-align:center; }
@media (max-width:767px) { .condition-curve { grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px; margin-top:9px; }.condition-curve > div { min-height:56px; padding:7px; }.condition-curve ol { height:34px; } }

.account-progression-badge { position:relative; display:grid; grid-template-columns:auto auto; gap:1px 6px; min-width:112px; padding:7px 9px 10px; overflow:hidden; border:1px solid var(--line); border-radius:10px; background:rgba(255,255,255,.035); }.account-progression-badge b { color:var(--gold); font-size:10px; }.account-progression-badge span { overflow:hidden; color:var(--muted); font-size:9px; text-overflow:ellipsis; white-space:nowrap; }.account-progression-badge i { --xp:0%; position:absolute; inset:auto 0 0; height:3px; background:linear-gradient(90deg,var(--mint) var(--xp),rgba(255,255,255,.08) var(--xp)); }.account-progression-badge.title-star,.account-progression-badge.title-international { box-shadow:0 0 16px rgba(88,242,211,.14); }.account-progression-badge.title-elite,.account-progression-badge.title-icon { border-color:rgba(245,213,71,.45); animation:title-glow 2.4s ease-in-out infinite; }.account-progression-badge.title-legend,.account-progression-badge.title-immortal,.account-progression-badge.title-forge-master { border-color:var(--lime); background:linear-gradient(120deg,rgba(183,255,42,.12),rgba(245,213,71,.08)); animation:title-glow 1.6s ease-in-out infinite; }@keyframes title-glow { 50% { box-shadow:0 0 22px rgba(183,255,42,.28); } }
@media (max-width:767px) { .account-progression-badge { min-width:78px; padding-inline:7px; }.account-progression-badge span { display:none; } }

.retirement-xp { margin-top:16px; padding:16px; border:1px solid rgba(245,213,71,.3); border-radius:15px; background:rgba(245,213,71,.04); }.retirement-xp h2 { margin:5px 0; color:var(--gold); }.retirement-xp p { margin:0; color:var(--muted); line-height:1.5; }.account-title-road { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:5px; margin-top:12px; }.account-title-road span { display:grid; gap:3px; padding:8px; border:1px solid var(--line); border-radius:8px; }.account-title-road b { color:var(--mint); font-size:9px; }.account-title-road small { color:var(--muted); font-size:8px; }.account-title-road .title-legend,.account-title-road .title-immortal,.account-title-road .title-forge-master { border-color:rgba(183,255,42,.45); box-shadow:0 0 14px rgba(183,255,42,.1); }@media (max-width:767px) { .account-title-road { grid-template-columns:repeat(3,minmax(0,1fr)); }.retirement-xp { padding:12px; } }

.account-profile-dialog { width:min(560px,calc(100% - 28px)); max-height:min(90dvh,760px); padding:0; overflow:auto; border:1px solid rgba(183,255,42,.36); border-radius:26px; color:var(--text); background:#071611; box-shadow:0 34px 100px rgba(0,0,0,.65); }.account-profile-dialog::backdrop { background:rgba(1,8,6,.82); backdrop-filter:blur(12px); }.account-profile-card { position:relative; display:grid; gap:13px; padding:clamp(24px,5vw,44px); overflow:hidden; background:radial-gradient(circle at 100% 0,rgba(183,255,42,.12),transparent 36%),linear-gradient(145deg,rgba(9,30,22,.98),rgba(5,17,13,.98)); }.account-profile-card::before { content:''; position:absolute; inset:0 auto 0 0; width:3px; background:linear-gradient(var(--lime),var(--mint),transparent); }.account-profile-card h2 { margin:0; font-size:clamp(28px,6vw,43px); line-height:1.04; }.account-profile-card > p:not(.micro-label) { margin:0 0 5px; color:var(--muted); font-size:13px; line-height:1.65; }.account-profile-card > label { color:var(--mint); font-size:10px; font-weight:900; letter-spacing:.12em; }.profile-number,.profile-lock-mark { display:grid; place-items:center; width:58px; aspect-ratio:1; margin-bottom:3px; border:1px solid rgba(183,255,42,.38); border-radius:17px; color:var(--lime); background:rgba(183,255,42,.07); font-size:22px; font-weight:950; box-shadow:0 0 25px rgba(183,255,42,.09); }.profile-name-field { position:relative; }.profile-name-field input { width:100%; min-height:58px; padding:0 48px 0 16px; border:1px solid var(--line-strong); border-radius:13px; color:var(--text); background:rgba(255,255,255,.035); font-size:19px; font-weight:850; outline:none; transition:border-color .2s var(--ease),box-shadow .2s var(--ease); }.profile-name-field input:focus { border-color:var(--lime); box-shadow:0 0 0 3px rgba(183,255,42,.09); }.profile-name-field i { position:absolute; top:50%; right:17px; width:8px; height:8px; transform:translateY(-50%); border-radius:50%; background:var(--gold); box-shadow:0 0 12px var(--gold); }.profile-name-status { min-height:19px; color:var(--muted); font-size:11px; line-height:1.5; }.profile-name-status.is-available { color:var(--lime); }.profile-name-status.is-error { color:#ff958e; }.profile-account-email { overflow:hidden; color:var(--muted); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }.profile-display-name { overflow-wrap:anywhere; color:var(--gold); font-size:clamp(30px,7vw,48px); line-height:1.05; }.profile-dialog-close { position:absolute; z-index:2; top:14px; right:14px; width:44px; height:44px; border:1px solid var(--line); border-radius:50%; color:var(--muted); background:rgba(255,255,255,.035); font-size:23px; cursor:pointer; }.profile-actions { display:grid; grid-template-columns:1fr auto; gap:8px; margin-top:5px; }.account-profile-card button:disabled { opacity:.55; cursor:wait; }
@media (max-width:560px) { .account-profile-dialog { width:calc(100% - 16px); max-height:calc(100dvh - 16px); border-radius:20px; }.account-profile-card { gap:10px; padding:22px 18px max(22px,env(safe-area-inset-bottom)); }.account-profile-card h2 { font-size:29px; }.account-profile-card > p:not(.micro-label) { font-size:12px; line-height:1.52; }.profile-number,.profile-lock-mark { width:48px; border-radius:14px; font-size:18px; }.profile-name-field input { min-height:54px; font-size:17px; }.profile-actions { grid-template-columns:1fr; }.profile-actions .btn { width:100%; }.profile-dialog-close { top:10px; right:10px; } }

.legal-page {
  width: min(900px, calc(100% - 32px));
  margin: 0 auto;
  padding: max(32px, env(safe-area-inset-top)) 0 max(56px, env(safe-area-inset-bottom));
}

.legal-back {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  margin-bottom: 18px;
  color: var(--lime);
  font-weight: 800;
  text-decoration: none;
}

.legal-card {
  padding: clamp(24px, 5vw, 56px);
}

.legal-card h1 {
  margin: 8px 0 4px;
  font-size: clamp(2rem, 7vw, 4rem);
}

.legal-card h2 {
  margin: 32px 0 8px;
  font-size: clamp(1.1rem, 3vw, 1.35rem);
}

.legal-card p {
  max-width: 72ch;
  color: var(--muted);
  line-height: 1.75;
}

.legal-card .legal-updated {
  color: var(--text);
  font-weight: 700;
}

/* v1.16 matchday immersion candidate — each block is rendered only by its release flag. */
.stadium-file,
.crowd-pressure,
.tactical-brief {
  position: relative;
  display: grid;
  gap: 16px;
  margin: 12px 0;
  padding: 18px 20px;
  overflow: hidden;
}

.stadium-file { grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
.stadium-file::after { content: ""; position: absolute; inset: auto -5% -70% 35%; height: 180px; border: 1px solid rgba(183, 255, 42, .16); border-radius: 50%; transform: perspective(240px) rotateX(66deg); }
.stadium-file h2,
.crowd-pressure h2,
.tactical-brief h2 { margin: 3px 0 5px; font-size: clamp(1.05rem, 2vw, 1.45rem); }
.stadium-file p,
.crowd-pressure p,
.tactical-brief p { margin: 0; color: var(--muted); }
.stadium-numbers { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(94px, 1fr)); gap: 8px; }
.stadium-numbers span { padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; background: rgba(5, 11, 15, .74); }
.stadium-numbers small,
.crowd-meter small { display: block; color: var(--muted); font-size: .72rem; white-space: nowrap; }
.stadium-numbers b { display: block; margin-top: 3px; font-size: 1.15rem; white-space: nowrap; }
.stadium-light { position: absolute; width: 160px; height: 160px; right: 16%; top: -110px; background: radial-gradient(circle, rgba(183,255,42,.25), transparent 68%); }

.crowd-pressure { grid-template-columns: minmax(0, 1fr) minmax(250px, .72fr); align-items: center; border-color: rgba(255, 186, 73, .24); }
.crowd-meter { display: grid; grid-template-columns: auto minmax(100px, 1fr) auto; align-items: center; gap: 10px; }
.crowd-meter span { text-align: center; }
.crowd-meter strong { display: block; font-size: 1.35rem; }
.crowd-meter > i { height: 9px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }
.crowd-meter > i b { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #b7ff2a, #ffd24a, #ff6f59); box-shadow: 0 0 16px rgba(255, 180, 63, .4); }

.tactical-brief { background: linear-gradient(135deg, rgba(13, 26, 33, .98), rgba(6, 12, 16, .94)); }
.tactical-brief-head { display: grid; grid-template-columns: 54px minmax(0, 1fr); gap: 14px; align-items: center; }
.tactical-brief-head > span { display: grid; place-items: center; width: 54px; aspect-ratio: 1; border-radius: 50%; background: #b7ff2a; color: #071008; font-weight: 950; }
.brief-objectives { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.brief-objectives > span { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 2px 8px; padding: 10px; border-radius: 11px; border: 1px solid var(--line); background: rgba(255,255,255,.025); }
.brief-objectives i { grid-row: 1 / 3; color: var(--lime); font-style: normal; font-weight: 900; }
.brief-objectives b,
.brief-objectives small { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.brief-objectives small { color: var(--muted); }

.tunnel-walk { position: relative; min-height: 142px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 20px; margin: 12px 0; padding: 24px; overflow: hidden; border: 1px solid rgba(183,255,42,.24); border-radius: 18px; background: linear-gradient(100deg, #030507 0 45%, #0c181d 74%, #1c2918); }
.tunnel-walk::before { content: ""; position: absolute; inset: 0; background: linear-gradient(105deg, transparent 38%, rgba(183,255,42,.08) 52%, transparent 68%); animation: tunnelSweep 3.4s linear infinite; }
.tunnel-walk > div:not(.tunnel-lights),
.tunnel-walk ol { position: relative; z-index: 1; }
.tunnel-walk p { margin: 0 0 6px; color: var(--lime); font-size: .72rem; letter-spacing: .18em; }
.tunnel-walk strong { display: block; font-size: clamp(1.5rem, 5vw, 3rem); letter-spacing: .05em; }
.tunnel-walk strong i { color: var(--muted); font-size: .4em; font-style: normal; text-transform: uppercase; }
.tunnel-walk span { color: var(--muted); }
.tunnel-walk ol { display: flex; gap: 8px; margin: 0; padding: 0; list-style: none; }
.tunnel-walk li { display: grid; place-items: center; width: 48px; aspect-ratio: 1; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; font-size: 1.4rem; font-weight: 950; animation: countdownGlow 3s ease-in-out infinite; }
.tunnel-walk li:nth-child(2) { animation-delay: 1s; }
.tunnel-walk li:nth-child(3) { animation-delay: 2s; }
.tunnel-lights { position: absolute; inset: 0; display: flex; justify-content: space-around; pointer-events: none; }
.tunnel-lights i { width: 2px; height: 72%; background: linear-gradient(rgba(183,255,42,.5), transparent); transform: skewX(-20deg); filter: blur(2px); opacity: .45; }

.match-momentum { display: grid; grid-template-columns: minmax(80px, auto) minmax(120px, 1fr) minmax(80px, auto); align-items: center; gap: 12px; padding: 10px 16px 14px; border-top: 1px solid var(--line); }
.match-momentum span:last-child { text-align: right; }
.match-momentum b,
.match-momentum small { display: block; white-space: nowrap; }
.match-momentum small { color: var(--muted); font-size: .68rem; }
.match-momentum > i { display: flex; height: 8px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }
.match-momentum > i b { height: 100%; background: var(--lime); box-shadow: 0 0 12px rgba(183,255,42,.4); transition: width .35s ease; }
.match-momentum > i em { height: 100%; margin-left: auto; background: #ff735c; transition: width .35s ease; }

.live-commentary { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(220px, .8fr); gap: 12px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); }
.live-commentary > div,
.live-commentary aside { padding: 12px; border-radius: 12px; background: rgba(255,255,255,.025); }
.live-commentary span { color: var(--lime); font-size: .7rem; font-weight: 900; letter-spacing: .08em; }
.live-commentary span i { display: inline-block; width: 7px; height: 7px; margin-right: 5px; border-radius: 50%; background: #ff5c4d; box-shadow: 0 0 9px #ff5c4d; animation: liveDot 1.3s ease-in-out infinite; }
.live-commentary strong,
.live-commentary aside b,
.live-commentary aside em { display: block; margin-top: 5px; }
.live-commentary p,
.live-commentary aside em { margin-bottom: 0; color: var(--muted); }
.live-commentary aside small { color: var(--lime); }
.live-commentary aside em { font-style: normal; font-size: .78rem; }

.matchday-identity { display: grid; grid-template-columns: 52px minmax(0, 1fr); align-items: center; gap: 10px; margin: 12px 0; padding: 9px; border: 1px solid rgba(183,255,42,.25); border-radius: 12px; background: linear-gradient(120deg, rgba(183,255,42,.11), rgba(255,255,255,.02)); text-align: left; }
.matchday-identity > b { display: grid; place-items: center; width: 52px; aspect-ratio: 1; border-radius: 10px; background: var(--lime); color: #071008; font-size: 1.75rem; }
.matchday-identity span > * { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.matchday-identity small { color: var(--lime); font-size: .62rem; letter-spacing: .1em; }
.matchday-identity em { color: var(--muted); font-size: .73rem; font-style: normal; }
.matchday-identity.is-result { max-width: 520px; margin: 0 auto 12px; }

.matchday-aftermath { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.aftermath-card { padding: 18px; }
.aftermath-card > span { color: var(--lime); font-size: .68rem; font-weight: 900; letter-spacing: .1em; }
.aftermath-card h2 { margin: 7px 0; font-size: 1.05rem; }
.aftermath-card p { margin: 0; color: var(--muted); }
.fan-aftermath { border-color: rgba(255, 197, 85, .25); }
.room-aftermath { border-color: rgba(88, 184, 255, .25); }
.matchday-journal { grid-column: 1 / -1; padding: 18px; }
.matchday-journal h2 { margin: 4px 0 12px; }
.matchday-journal > div:last-child { display: grid; gap: 7px; }
.matchday-journal > div:last-child span { display: grid; grid-template-columns: minmax(110px, .7fr) minmax(130px, 1fr) minmax(150px, 1.2fr); gap: 10px; padding: 9px 0; border-top: 1px solid var(--line); }
.matchday-journal small,
.matchday-journal em { color: var(--muted); font-style: normal; }
.matchday-journal b,
.matchday-journal small,
.matchday-journal em { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

@keyframes tunnelSweep { from { transform: translateX(-70%); } to { transform: translateX(80%); } }
@keyframes countdownGlow { 0%, 25%, 100% { border-color: rgba(255,255,255,.18); color: var(--muted); } 10% { border-color: var(--lime); color: var(--lime); box-shadow: 0 0 22px rgba(183,255,42,.3); } }
@keyframes liveDot { 50% { opacity: .35; transform: scale(.72); } }

@media (max-width: 760px) {
  .stadium-file,
  .crowd-pressure,
  .tactical-brief,
  .tunnel-walk { margin: 8px 0; padding: 13px; }
  .stadium-file,
  .crowd-pressure { grid-template-columns: 1fr; }
  .stadium-numbers { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .stadium-numbers span { padding: 8px; }
  .stadium-numbers b { font-size: .92rem; }
  .brief-objectives { grid-template-columns: 1fr; }
  .brief-objectives > span { padding: 8px; }
  .tunnel-walk { min-height: 112px; grid-template-columns: minmax(0, 1fr) auto; }
  .tunnel-walk ol { gap: 4px; }
  .tunnel-walk li { width: 34px; font-size: 1rem; }
  .tunnel-walk span { display: none; }
  .match-momentum { grid-template-columns: 64px minmax(70px, 1fr) 64px; gap: 7px; padding-inline: 8px; }
  .match-momentum small { font-size: .58rem; }
  .live-commentary { grid-template-columns: 1fr; }
  .live-commentary aside { display: none; }
  .matchday-aftermath { grid-template-columns: 1fr; }
  .matchday-journal { grid-column: auto; }
  .matchday-journal > div:last-child span { grid-template-columns: 72px minmax(90px, .8fr) minmax(120px, 1fr); gap: 6px; font-size: .74rem; }
}

@media (prefers-reduced-motion: reduce) {
  .tunnel-walk::before,
  .tunnel-walk li,
  .live-commentary span i { animation: none !important; }
  .match-momentum > i b,
  .match-momentum > i em { transition: none; }
}

.testing-auto-draft { display:inline-flex; align-items:center; gap:10px; min-height:42px; margin-top:14px; padding:7px 13px; border:1px solid rgba(245,213,71,.45); border-radius:11px; color:var(--text); background:linear-gradient(120deg,rgba(245,213,71,.13),rgba(88,242,211,.07)); cursor:pointer; text-align:left; }
.testing-auto-draft b { padding:5px 7px; border-radius:6px; color:#06120f; background:var(--gold); font-size:8px; letter-spacing:.1em; }
.testing-auto-draft span { font-size:11px; font-weight:850; }
.testing-auto-draft:hover { border-color:var(--gold); transform:translateY(-1px); }
.testing-career-shortcut { grid-column:1 / -1; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:20px 22px; border-color:rgba(245,213,71,.5); background:linear-gradient(120deg,rgba(245,213,71,.14),rgba(88,242,211,.07)); }
.testing-career-shortcut span,.testing-run-summary b { display:inline-flex; padding:5px 8px; border-radius:7px; color:#06120f; background:var(--gold); font-size:9px; font-weight:950; letter-spacing:.12em; }
.testing-career-shortcut h2 { margin:8px 0 4px; font-size:20px; }
.testing-career-shortcut p { max-width:720px; margin:0; color:var(--muted); font-size:12px; line-height:1.55; }
.testing-career-shortcut button { flex:0 0 auto; min-height:48px; padding:0 18px; border:1px solid var(--gold); border-radius:12px; color:#06120f; background:var(--gold); font-weight:950; cursor:pointer; }
.testing-career-shortcut button:disabled { cursor:wait; opacity:.72; }
.testing-run-summary { width:min(760px,calc(100% - 32px)); margin:0 auto 16px; padding:12px 16px; border:1px solid rgba(245,213,71,.42); border-radius:14px; background:rgba(245,213,71,.09); text-align:center; }
.testing-run-summary b { margin-right:10px; }
.testing-run-summary span { color:var(--text); font-size:12px; font-weight:800; }
@media (max-width: 680px) {
  .testing-career-shortcut { align-items:stretch; flex-direction:column; gap:14px; padding:16px; }
  .testing-career-shortcut button { width:100%; }
  .testing-run-summary b { display:table; margin:0 auto 8px; }
  .testing-run-summary span { display:block; line-height:1.45; }
}
.agent-career-card { grid-column:1 / -1; border-color:rgba(88,242,211,.28); background:radial-gradient(circle at 100% 0,rgba(88,242,211,.11),transparent 30%),rgba(7,22,17,.86); }.agent-current-grid { display:grid; grid-template-columns:repeat(3,minmax(0,.45fr)) minmax(260px,1.4fr); gap:8px; margin:16px 0; }.agent-current-grid > span,.agent-current-grid > div { display:grid; gap:5px; padding:12px; border:1px solid var(--line); border-radius:11px; }.agent-current-grid small { color:var(--muted); font-size:9px; }.agent-current-grid b { color:var(--gold); font-size:19px; }.agent-current-grid > div i { height:6px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.08); }.agent-current-grid > div i b { display:block; height:100%; background:linear-gradient(90deg,var(--mint),var(--lime)); }.agent-market { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }.agent-option { display:grid; align-content:start; gap:5px; min-height:220px; padding:13px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.025); }.agent-option.is-active { border-color:var(--lime); box-shadow:inset 0 3px var(--lime); }.agent-option.is-locked { opacity:.62; }.agent-option > span { color:var(--mint); font-size:8px; font-weight:900; letter-spacing:.1em; }.agent-option > strong { font-size:15px; }.agent-option > small,.agent-option > p,.agent-option > em { color:var(--muted); font-size:9px; line-height:1.45; font-style:normal; }.agent-option > p { flex:1; margin:5px 0; }.agent-option > em { color:var(--gold); }.agent-option > button,.agent-option > b { min-height:36px; margin-top:auto; border:0; border-radius:8px; color:#06120f; background:var(--lime); font-size:9px; font-weight:900; cursor:pointer; }.agent-option > b { display:grid; place-items:center; }.agent-option > button:disabled { cursor:not-allowed; opacity:.4; }
@media (max-width:900px) { .agent-market { grid-template-columns:repeat(2,minmax(0,1fr)); }.agent-current-grid { grid-template-columns:repeat(3,1fr); }.agent-current-grid > div { grid-column:1 / -1; } }
@media (max-width:560px) { .agent-market { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; }.agent-option { min-width:78vw; min-height:190px; scroll-snap-align:start; }.agent-current-grid { grid-template-columns:repeat(3,1fr); }.agent-current-grid > span { padding:9px 6px; }.agent-current-grid b { font-size:15px; } }
.transfer-clock { display:grid; gap:7px; padding:16px; border-color:rgba(245,213,71,.35); background:linear-gradient(135deg,rgba(245,213,71,.1),rgba(7,22,17,.88)); }.transfer-clock > span { color:var(--gold); font-size:9px; font-weight:900; letter-spacing:.11em; }.transfer-clock > strong { font-size:22px; }.transfer-clock > small { min-height:32px; color:var(--muted); font-size:10px; line-height:1.45; }.transfer-clock > button { min-height:40px; border:1px solid rgba(245,213,71,.4); border-radius:9px; color:var(--gold); background:rgba(245,213,71,.06); font-weight:850; cursor:pointer; }.transfer-clock > button:disabled { opacity:.4; cursor:not-allowed; }.transfer-offer.is-expired { filter:grayscale(.8); opacity:.45; cursor:not-allowed; }.transfer-offer.is-expired .negotiated-badge { color:var(--danger); }

.teammate-relationships { grid-column:1 / -1; border-color:rgba(255,159,67,.28); background:radial-gradient(circle at 0 100%,rgba(255,159,67,.1),transparent 34%),rgba(7,22,17,.86); }.teammate-lede { margin:4px 0 15px; color:var(--muted); font-size:11px; line-height:1.55; }.teammate-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }.teammate-card { display:grid; grid-template-columns:auto 1fr; gap:4px 11px; align-items:center; padding:13px; border:1px solid var(--line); border-radius:13px; background:rgba(255,255,255,.025); }.teammate-photo { grid-row:1 / 5; width:60px; aspect-ratio:4/5; border-radius:10px; object-fit:cover; object-position:top; background:rgba(255,255,255,.06); }.teammate-card > span { color:var(--gold); font-size:8px; font-weight:900; letter-spacing:.1em; }.teammate-card > strong { font-size:16px; }.teammate-card > small { color:var(--muted); font-size:9px; }.teammate-card > div { grid-column:1 / -1; display:grid; grid-template-columns:1fr auto; gap:4px 8px; margin-top:7px; }.teammate-card > div i { height:5px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.08); }.teammate-card > div i b { display:block; height:100%; background:linear-gradient(90deg,var(--mint),var(--lime)); }.teammate-card > div em { color:var(--muted); font-size:8px; font-style:normal; }.teammate-card > button { grid-column:1 / -1; min-height:40px; margin-top:7px; border:1px solid rgba(255,159,67,.35); border-radius:9px; color:#ffb36b; background:rgba(255,159,67,.07); font-weight:850; cursor:pointer; }.teammate-card > button:disabled { opacity:.4; cursor:not-allowed; }.teammate-card.is-rival { border-color:rgba(255,107,138,.25); }.teammate-update { display:flex; gap:10px; margin-top:10px; padding:10px 12px; border-radius:10px; color:var(--muted); background:rgba(255,255,255,.035); font-size:10px; }.teammate-update b { color:var(--text); }
@media (max-width:700px) { .teammate-grid { grid-template-columns:1fr; }.teammate-card { grid-template-columns:52px 1fr; }.teammate-photo { width:52px; } }

@media (max-width:767px) {
  .origin-dossier-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .origin-choice-lock { grid-template-columns:1fr; gap:3px; margin-top:12px; padding:10px 12px; }
  .origin-choice-lock small { grid-column:auto; }
  .origin-dossier.is-compact { margin-bottom:10px; padding:13px; }
  .origin-dossier-head { display:grid; gap:8px; }
  .origin-dossier-head h2 { font-size:20px; }
  .origin-dossier-head > span { justify-self:start; }
  .origin-dossier > p { margin:8px 0; font-size:12px; line-height:1.5; }
  .origin-dossier-facts { gap:6px; margin-top:10px; }
  .origin-dossier-facts span { min-height:62px; padding:8px; }
  .origin-dossier-facts b { font-size:11px; }
  .origin-dossier-note { font-size:9px; }
}

/* Mobile draft v4: compact roster first, then a distraction-free attribute board. */
@media (max-width:767px) {
  body.feature-mobile-draft-compact .draft-aside { top:auto; }
  body.feature-mobile-draft-compact .star-grid.squad-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
  body.feature-mobile-draft-compact .squad-grid .star-card { min-height:0; padding:6px; border-radius:12px; contain-intrinsic-size:0 168px; }
  body.feature-mobile-draft-compact .squad-grid .star-card-photo { margin-bottom:5px; }
  body.feature-mobile-draft-compact .squad-grid .player-headshot { aspect-ratio:1 / 1; }
  body.feature-mobile-draft-compact .squad-grid .star-card-top { margin-bottom:3px; }
  body.feature-mobile-draft-compact .squad-grid .star-card-top > span,
  body.feature-mobile-draft-compact .squad-grid .star-card-top b { font-size:8px; }
  body.feature-mobile-draft-compact .squad-grid .star-card > strong { min-height:26px; font-size:11px; line-height:1.2; }
  body.feature-mobile-draft-compact .squad-grid .star-card-action { display:none; }
  body.feature-mobile-draft-compact .squad-panel .star-grid { max-height:none; padding:0; overflow:visible; }
  body.feature-mobile-draft-compact .draft-screen.is-roster-pick .draft-heading,
  body.feature-mobile-draft-compact .draft-screen.is-roster-pick .attribute-progress,
  body.feature-mobile-draft-compact .draft-screen.is-roster-pick .roulette-card { display:none; }
  body.feature-mobile-draft-compact .draft-screen.is-roster-pick { padding-top:14px; }
  body.feature-mobile-draft-compact .draft-screen.is-roster-pick:not(.is-attribute-pick) .draft-aside { display:none; }
  body.feature-mobile-draft-compact .draft-screen.is-roster-pick:not(.is-attribute-pick) .draft-main { order:0; }
  body.feature-mobile-draft-compact .draft-screen.is-attribute-pick .draft-main { display:none; }
  body.feature-mobile-draft-compact .draft-screen.is-attribute-pick .draft-layout { display:block; }
  body.feature-mobile-draft-compact .draft-screen.is-attribute-pick .draft-aside { width:100%; margin-top:8px; }
  body.feature-mobile-draft-compact .draft-screen.is-attribute-pick .build-board-player button { min-height:44px; }
}
@media (min-width:480px) and (max-width:767px) {
  body.feature-mobile-draft-compact .star-grid.squad-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
}

/* v1.15 production hotfix: four compact club choices per phone row. */
@media (max-width:767px) {
  .club-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
  .club-card {
    min-width:0;
    min-height:108px;
    grid-template-columns:1fr;
    grid-template-rows:auto 1fr;
    align-content:center;
    justify-items:center;
    gap:7px;
    padding:9px 4px;
    text-align:center;
    touch-action:manipulation;
  }
  .club-card .club-mark { width:36px; border-radius:10px; font-size:10px; }
  .club-card .club-name { min-width:0; width:100%; }
  .club-card .club-name strong {
    min-height:24px;
    display:-webkit-box;
    overflow:hidden;
    font-size:10px;
    line-height:1.2;
    overflow-wrap:anywhere;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
  }
  .club-card .selected-check { top:4px; right:4px; bottom:auto; gap:0; font-size:0; }
  .club-card .selected-check svg { width:12px; }
}
@media (max-width:340px) {
  .club-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
  .club-card { min-height:102px; padding-inline:3px; }
  .club-card .club-mark { width:32px; }
  .club-card .club-name strong { font-size:9px; }
}

.google-signin-dialog { width:min(420px,calc(100vw - 24px)); margin:auto; padding:0; overflow:visible; border:1px solid rgba(183,255,42,.35); border-radius:22px; color:var(--text); background:#071611; box-shadow:0 30px 90px rgba(0,0,0,.7); }
.google-signin-dialog::backdrop { background:rgba(1,8,6,.78); backdrop-filter:blur(8px); }
.google-signin-dialog > section { position:relative; display:grid; justify-items:center; gap:13px; padding:30px 24px; text-align:center; }
.google-signin-dialog p { margin:0; color:var(--lime); font-size:9px; font-weight:950; letter-spacing:.16em; }
.google-signin-dialog h2 { margin:0; font-size:28px; }
.google-signin-dialog [data-google-status] { min-height:20px; color:var(--muted); font-size:12px; }
.google-signin-dialog [data-google-status].is-error { color:var(--danger); }
.google-signin-dialog [data-google-button-slot] { min-height:56px; display:grid; place-items:center; }
.google-signin-dialog .google-signin-button { position:static; min-height:56px; padding:0; border:0; background:transparent; box-shadow:none; }
.google-signin-dialog small { max-width:330px; color:var(--muted); font-size:11px; line-height:1.55; }
.google-signin-close { position:absolute; top:10px; right:10px; width:44px; height:44px; border:1px solid var(--line); border-radius:50%; color:var(--text); background:rgba(255,255,255,.04); font-size:23px; cursor:pointer; }
.progress-save-status { position:fixed; z-index:120; right:max(12px,env(safe-area-inset-right)); bottom:max(14px,calc(env(safe-area-inset-bottom) + 10px)); min-height:44px; display:flex; align-items:center; padding:10px 14px; border:1px solid rgba(88,242,211,.38); border-radius:12px; color:var(--mint); background:rgba(5,22,16,.96); box-shadow:0 16px 38px rgba(0,0,0,.42); font-size:11px; font-weight:850; opacity:0; transform:translateY(12px); pointer-events:none; transition:opacity .2s var(--ease),transform .2s var(--ease); }
.progress-save-status::before { content:''; width:8px; height:8px; margin-right:8px; border-radius:50%; background:var(--lime); box-shadow:0 0 12px rgba(183,255,42,.5); }
.progress-save-status.is-visible { opacity:1; transform:none; }
.progress-save-status[data-tone="error"] { border-color:rgba(255,107,99,.45); color:#ffb3ae; }
.progress-save-status[data-tone="error"]::before { background:var(--danger); }
@media (max-width:767px) {
  .google-signin-dialog { width:calc(100vw - 16px); border-radius:18px; }
  .google-signin-dialog > section { padding:28px 16px max(24px,env(safe-area-inset-bottom)); }
  .google-signin-dialog h2 { font-size:25px; }
  .progress-save-status { left:12px; right:12px; bottom:max(12px,calc(env(safe-area-inset-bottom) + 8px)); justify-content:center; }
}
@media (prefers-reduced-motion:reduce) { .progress-save-status { transition:none; } }

/* v1.16 candidate: one-viewport data deck for desktop and mobile. */
html:has(body.feature-single-viewport),body.feature-single-viewport { height:100%; overflow:hidden; overscroll-behavior:none; }
html:has(body.feature-single-viewport) { width:100%; max-width:100%; overflow-x:hidden; }
body.feature-single-viewport,body.feature-single-viewport .app-shell,body.feature-single-viewport #app { width:100%; max-width:100%; overflow-x:hidden; }
body.feature-single-viewport *,body.feature-single-viewport *::before,body.feature-single-viewport *::after { min-width:0; max-width:100%; box-sizing:border-box; }
body.feature-single-viewport .app-shell { display:grid; grid-template-rows:auto auto minmax(0,1fr); width:100%; height:100dvh; min-height:0; overflow:hidden; }
body.feature-single-viewport .topbar,body.feature-single-viewport .live-impact-strip { position:relative; top:auto; }
body.feature-single-viewport #app { min-height:0; overflow:hidden; }
body.feature-single-viewport .screen,body.feature-single-viewport .narrow-screen,body.feature-single-viewport .story-screen { position:relative; width:min(1340px,calc(100% - 32px)); height:100%; min-height:0!important; padding:clamp(10px,1.8vh,20px) 0 64px; overflow:hidden; animation:none; }
body.feature-single-viewport .site-footer { display:none; }
body.feature-single-viewport [data-viewport-unit][hidden],body.feature-single-viewport [data-viewport-host][hidden] { display:none!important; }
body.feature-single-viewport [data-viewport-host]:not([hidden]) { min-height:0; align-content:start; }
body.feature-single-viewport [data-viewport-horizontal] { display:block!important; width:100%; overflow:hidden!important; overscroll-behavior-inline:none; scroll-snap-type:none!important; }
body.feature-single-viewport [data-viewport-horizontal] > [data-viewport-unit]:not([hidden]) { width:100%!important; max-width:100%!important; min-width:0!important; flex:0 1 auto!important; margin-inline:0!important; scroll-snap-align:none!important; }
body.feature-single-viewport :is(.shop-filters,.career-mobile-tabs,.result-mobile-tabs) { max-width:100%; flex-wrap:wrap; overflow:hidden; }
body.feature-single-viewport :is(.panel-heading,.community-heading,.release-hero,.showcase-head,.shop-item-foot,.result-actions,.career-actions) { min-width:0; }
body.feature-single-viewport :is(h1,h2,h3,h4,p,small,strong,b,em,span,label,button,a,blockquote) { overflow-wrap:anywhere; }
body.feature-single-viewport :is(table,svg,img,canvas,video,iframe) { max-width:100%; }
body.feature-single-viewport .live-impact-strip { grid-template-columns:auto minmax(0,1fr) auto; overflow:hidden; }
body.feature-single-viewport .live-impact-values.is-paged { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); overflow:hidden; }
.live-impact-pagination { display:grid; grid-template-columns:44px auto 44px; align-items:center; gap:5px; }
.live-impact-pagination button { width:44px; height:44px; border:1px solid var(--line); border-radius:10px; color:var(--text); background:rgba(255,255,255,.045); font-size:21px; font-weight:950; cursor:pointer; touch-action:manipulation; }
.live-impact-pagination button:focus-visible { border-color:var(--lime); outline:2px solid rgba(183,255,42,.35); outline-offset:2px; }
.live-impact-pagination button:disabled { opacity:.3; cursor:not-allowed; }
.live-impact-pagination span { min-width:34px; color:var(--gold); font-size:10px; font-weight:900; font-variant-numeric:tabular-nums; text-align:center; }
.single-viewport-nav { position:absolute; z-index:45; right:0; bottom:max(8px,env(safe-area-inset-bottom)); left:0; display:grid; grid-template-columns:minmax(112px,1fr) auto minmax(112px,1fr); align-items:center; gap:10px; width:min(560px,100%); min-height:48px; margin:auto; padding:5px; border:1px solid rgba(88,242,211,.3); border-radius:15px; background:rgba(4,18,13,.96); box-shadow:0 14px 34px rgba(0,0,0,.42); backdrop-filter:blur(16px); }
.single-viewport-nav button { min-height:44px; display:flex; align-items:center; justify-content:center; gap:8px; padding:0 14px; border:1px solid var(--line); border-radius:10px; color:var(--text); background:rgba(255,255,255,.045); font:inherit; font-size:20px; font-weight:900; cursor:pointer; touch-action:manipulation; transition:border-color .18s var(--ease),background .18s var(--ease),color .18s var(--ease); }
.single-viewport-nav button span { font-size:11px; }
.single-viewport-nav button:hover,.single-viewport-nav button:focus-visible { border-color:var(--lime); color:#06120f; background:var(--lime); }
.single-viewport-nav button:disabled { opacity:.34; cursor:not-allowed; }
.single-viewport-nav strong { min-width:86px; color:var(--gold); font-size:13px; font-variant-numeric:tabular-nums; text-align:center; }
.single-viewport-nav strong span { color:var(--muted); font-size:9px; letter-spacing:.08em; }
body.feature-single-viewport.is-testing-channel .test-channel-banner { position:fixed; inset:0 0 auto; }
body.feature-single-viewport.is-testing-channel .app-shell { height:100dvh; padding-top:40px; }
body.feature-single-viewport .career-mobile-tabs,body.feature-single-viewport .result-mobile-tabs { position:relative; top:auto; display:flex; margin:0 0 10px; }
body.feature-single-viewport .career-hero,body.feature-single-viewport .result-heading,body.feature-single-viewport .section-heading,body.feature-single-viewport .simulation-hero { margin-bottom:10px; }
body.feature-single-viewport .career-hero { padding:clamp(14px,2vh,22px); }
body.feature-single-viewport .result-heading h1,body.feature-single-viewport .section-heading h1,body.feature-single-viewport .simulation-hero h1 { margin-block:7px; font-size:clamp(30px,5vh,56px); }
@media (max-width:767px) {
  body.feature-single-viewport.is-testing-channel .app-shell { padding-top:54px; }
  body.feature-single-viewport .screen,body.feature-single-viewport .narrow-screen,body.feature-single-viewport .story-screen { width:calc(100% - 16px); padding-top:8px; padding-bottom:62px; }
  body.feature-single-viewport .live-impact-strip { min-height:56px; }
  body.feature-single-viewport .live-impact-strip { grid-template-columns:minmax(0,1fr) auto; gap:4px 8px; }
  body.feature-single-viewport .live-impact-heading { min-width:0; }
  body.feature-single-viewport .live-impact-heading small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  body.feature-single-viewport .live-impact-values.is-paged { grid-column:1 / -1; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; }
  body.feature-single-viewport .live-impact-chip { min-height:38px; padding:5px 4px; }
  body.feature-single-viewport .live-impact-chip small { overflow:hidden; font-size:7px; text-overflow:ellipsis; white-space:nowrap; }
  body.feature-single-viewport .live-impact-chip b { font-size:12px; }
  body.feature-single-viewport .live-impact-pagination { grid-row:1; grid-column:2; }
  body.feature-single-viewport .career-hero { padding:10px 12px; }
  body.feature-single-viewport .career-hero h1 { font-size:27px; }
  body.feature-single-viewport .career-growth-strip,body.feature-single-viewport .career-wallet { margin-top:6px; }
  body.feature-single-viewport .section-heading p:last-child,body.feature-single-viewport .simulation-hero p:last-child { font-size:12px; line-height:1.45; }
  .single-viewport-nav { grid-template-columns:1fr auto 1fr; width:100%; min-height:52px; border-radius:13px; }
  .single-viewport-nav button { min-height:44px; padding-inline:8px; }
  .single-viewport-nav strong { min-width:72px; }
  body.feature-single-viewport :is(.shop-filters,.career-mobile-tabs,.result-mobile-tabs) > * { flex:1 1 calc(50% - 4px); width:auto; min-width:0; }
  body.feature-single-viewport :is(.leaderboard-row,.rivalry-card-header,.leadership-header,.manager-market-head,.international-header) { max-width:100%; }
  body.feature-single-viewport .collectible-token::after { right:0; left:auto; width:min(280px,calc(100vw - 32px)); }
}
@media (max-height:620px) and (orientation:landscape) {
  body.feature-single-viewport .topbar { min-height:46px; padding-block:5px; }
  body.feature-single-viewport .live-impact-strip { min-height:44px; padding-block:4px; }
  body.feature-single-viewport .screen,body.feature-single-viewport .narrow-screen,body.feature-single-viewport .story-screen { padding-top:6px; padding-bottom:56px; }
  .single-viewport-nav { min-height:46px; }
}
@media (prefers-reduced-motion:reduce) { .single-viewport-nav button { transition:none; } }
@media (prefers-reduced-motion:reduce) { .live-impact-pagination button { transition:none; } }
body:not(.feature-attention-highlights) .attention-frame { outline:0; animation:none; }
body:not(.feature-attention-highlights) .attention-label { display:none; }
body.feature-selectable-highlights .selectable-highlight-frame { position:relative; border-radius:16px; outline:2px solid rgba(88,242,211,.58); outline-offset:4px; animation:selectable-frame-pulse 2.2s ease-in-out infinite; }
.selectable-highlight-label { position:absolute; z-index:8; top:-11px; right:16px; padding:5px 10px; border:1px solid rgba(88,242,211,.34); border-radius:999px; color:#06120f; background:linear-gradient(110deg,var(--mint),var(--lime)); box-shadow:0 0 22px rgba(88,242,211,.24); font-size:9px; font-weight:950; letter-spacing:.05em; pointer-events:none; }
body.feature-selectable-highlights .selectable-choice-option { border-color:rgba(88,242,211,.34); box-shadow:inset 0 0 0 1px rgba(88,242,211,.07); }
@keyframes selectable-frame-pulse { 0%,100% { box-shadow:0 0 0 1px rgba(88,242,211,.1),0 0 16px rgba(88,242,211,.07); } 50% { box-shadow:0 0 0 3px rgba(88,242,211,.22),0 0 34px rgba(88,242,211,.17); } }
.account-progression-badge.is-level-basic { grid-template-columns:auto; min-width:74px; padding:7px 9px 10px; text-align:center; }
.account-progression-badge.is-level-basic > strong { grid-row:auto; padding:0; border:0; }
.account-progression-badge.is-level-basic > strong b { font-size:16px; }
.account-progression-badge.is-level-basic .account-title-text,.account-progression-badge.is-level-basic > small { display:none; }

/* Account legacy, titles and public honours */
.account-progression-badge{grid-template-columns:auto minmax(90px,1fr);min-width:190px;padding:8px 12px 12px;border-color:rgba(88,242,211,.28);background:linear-gradient(135deg,rgba(88,242,211,.09),rgba(255,255,255,.035));box-shadow:0 8px 24px rgba(0,0,0,.2)}.account-progression-badge>strong{grid-row:1/3;display:grid;align-content:center;padding-right:10px;border-right:1px solid var(--line);color:var(--muted);font-size:7px;letter-spacing:.1em}.account-progression-badge>strong b{display:block;color:var(--gold);font-size:21px;line-height:1}.account-progression-badge .account-title-text{align-self:end;color:var(--title-color,var(--text));font-size:11px;font-weight:950;letter-spacing:.03em}.account-progression-badge>small{color:var(--muted);font-size:8px;font-variant-numeric:tabular-nums}.account-progression-badge>i{height:4px}.title-grassroots{--title-color:#d7e0dc}.title-academy{--title-color:#80e9c4}.title-prospect{--title-color:#58f2d3}.title-breakthrough{--title-color:#8ee8ff}.title-regular{--title-color:#b7ff2a}.title-star{--title-color:#e7ff7d}.title-international{--title-color:#77a7ff}.title-elite{--title-color:#cf9cff}.title-icon{--title-color:#ff87d1}.title-legend{--title-color:#f5d547}.title-immortal{--title-color:#ffb45d}.title-forge-master{--title-color:#fff2a0}.account-progression-badge.title-star .account-title-text,.account-progression-badge.title-international .account-title-text{text-shadow:0 0 12px color-mix(in srgb,var(--title-color) 55%,transparent)}.account-progression-badge.title-elite .account-title-text,.account-progression-badge.title-icon .account-title-text,.account-progression-badge.title-legend .account-title-text,.account-progression-badge.title-immortal .account-title-text,.account-progression-badge.title-forge-master .account-title-text,.progression-reward .title-elite,.progression-reward .title-icon,.progression-reward .title-legend,.progression-reward .title-immortal,.progression-reward .title-forge-master{color:transparent;background:linear-gradient(100deg,var(--title-color),#fff,var(--title-color));background-size:220% 100%;background-clip:text;-webkit-background-clip:text;animation:title-sheen 2.8s ease-out 2;text-shadow:0 0 18px color-mix(in srgb,var(--title-color) 35%,transparent)}@keyframes title-sheen{0%{background-position:120% 0}100%{background-position:-120% 0}}
.community-hub{grid-column:1/-1;margin-top:24px;padding:20px;border-color:rgba(88,242,211,.22);background:radial-gradient(circle at 100% 0,rgba(183,255,42,.09),transparent 35%),rgba(5,19,15,.88)}.community-heading{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}.community-heading p{margin:0 0 5px;color:var(--mint);font-size:9px;font-weight:950;letter-spacing:.16em}.community-heading h2{margin:0;font-size:28px}.community-heading small{color:var(--muted);font-size:10px}.community-heading>span{display:grid;gap:3px;text-align:right;color:var(--muted);font-size:8px;letter-spacing:.08em}.community-heading>span b{color:var(--gold);font-size:12px}.leaderboard-tabs{display:flex;gap:7px;margin:16px 0 11px;overflow-x:auto;scrollbar-width:none}.leaderboard-tabs button{flex:1 0 auto;min-height:44px;padding:0 13px;border:1px solid var(--line);border-radius:10px;color:var(--muted);background:rgba(255,255,255,.025);font-size:10px;font-weight:850;cursor:pointer;transition:.2s var(--ease)}.leaderboard-tabs button:hover,.leaderboard-tabs button:focus-visible,.leaderboard-tabs button.is-active{border-color:var(--mint);color:#06120f;background:var(--mint)}.leaderboard-list{display:grid;gap:6px}.leaderboard-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:58px;padding:8px 12px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.022)}.leaderboard-rank{display:grid;place-items:center;width:34px;aspect-ratio:1;border-radius:50%;color:var(--muted);background:rgba(255,255,255,.055);font-size:15px}.leaderboard-row.rank-1{border-color:rgba(245,213,71,.38)}.leaderboard-row.rank-1 .leaderboard-rank{color:#06120f;background:#f5d547}.leaderboard-row.rank-2 .leaderboard-rank{color:#071611;background:#c9d5d2}.leaderboard-row.rank-3 .leaderboard-rank{color:#071611;background:#c88962}.leaderboard-player{display:grid;gap:4px;min-width:0}.leaderboard-player>b{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.leaderboard-player>span{display:flex;flex-wrap:wrap;gap:5px}.leaderboard-row>em{color:var(--muted);font-size:9px;font-style:normal;text-align:right}.leaderboard-row>em b{display:block;color:var(--gold);font-size:18px;font-variant-numeric:tabular-nums}.collectible-token{position:relative;display:inline-flex;align-items:center;gap:4px;min-height:26px;padding:3px 7px;border:1px solid rgba(245,213,71,.22);border-radius:99px;color:var(--gold);background:rgba(245,213,71,.07);font-size:7px;cursor:help}.collectible-token>b{font-size:6px;letter-spacing:.08em}.collectible-token>span{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collectible-token::after{position:absolute;z-index:80;left:0;bottom:calc(100% + 7px);width:max-content;max-width:min(280px,80vw);padding:8px 10px;border:1px solid var(--line-strong);border-radius:8px;color:var(--text);background:#071611;box-shadow:0 12px 30px rgba(0,0,0,.45);content:attr(data-tooltip);font-size:9px;line-height:1.5;opacity:0;pointer-events:none;transform:translateY(4px);transition:.18s var(--ease)}.collectible-token:hover::after,.collectible-token:focus-visible::after{opacity:1;transform:none}.collectible-token.rarity-01{border-color:#f5d547;color:#fff2a0;box-shadow:0 0 12px rgba(245,213,71,.12)}.leaderboard-empty{display:grid;gap:6px;padding:24px;border:1px dashed var(--line-strong);border-radius:12px;text-align:center}.leaderboard-empty span{color:var(--muted);font-size:10px}.leaderboard-skeleton{display:grid;gap:7px;margin-top:16px}.leaderboard-skeleton i{height:56px;border-radius:10px;background:linear-gradient(100deg,rgba(255,255,255,.025),rgba(255,255,255,.08),rgba(255,255,255,.025));background-size:200% 100%;animation:skeleton-pass 1.1s ease-out infinite}@keyframes skeleton-pass{to{background-position:-200% 0}}
.account-start-reminder,.collectible-showcase-dialog{width:min(680px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;overflow:auto;border:1px solid var(--line-strong);border-radius:20px;color:var(--text);background:#071611;box-shadow:0 30px 90px rgba(0,0,0,.72)}.account-start-reminder::backdrop,.collectible-showcase-dialog::backdrop{background:rgba(0,0,0,.68);backdrop-filter:blur(8px)}.account-start-reminder>section{display:grid;gap:16px;padding:28px;background:radial-gradient(circle at 100% 0,rgba(183,255,42,.14),transparent 40%)}.account-start-reminder p,.showcase-head p{margin:0;color:var(--mint);font-size:9px;font-weight:950;letter-spacing:.16em}.account-start-reminder h2{margin:0;font-size:clamp(24px,5vw,38px);line-height:1.08}.account-start-reminder ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.account-start-reminder li{padding:10px 12px 10px 34px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.025);font-size:12px}.account-start-reminder li::before{content:'✓';margin-left:-22px;margin-right:10px;color:var(--lime);font-weight:950}.account-start-reminder small,.showcase-help{color:var(--muted);font-size:10px;line-height:1.6}.account-start-reminder section>div{display:flex;flex-wrap:wrap;gap:9px}.showcase-card{padding:24px}.showcase-head{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:start}.showcase-head h2{margin:5px 0 0;font-size:30px}.showcase-head>button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;color:var(--text);background:rgba(255,255,255,.04);font-size:22px;cursor:pointer}.showcase-help{margin:15px 0}.showcase-loading{padding:40px;text-align:center;color:var(--muted)}.showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.showcase-option{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;min-height:58px;padding:9px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.025);cursor:pointer}.showcase-option.is-selected{border-color:var(--lime);box-shadow:inset 3px 0 var(--lime)}.showcase-option input{width:18px;height:18px;accent-color:var(--lime)}.showcase-option>span{min-width:0}.showcase-option .collectible-token{width:100%;justify-content:flex-start}.showcase-option>small{color:var(--gold);font-size:8px}.showcase-actions{position:sticky;bottom:0;display:flex;justify-content:flex-end;align-items:center;gap:14px;margin:18px -24px -24px;padding:12px 24px;background:rgba(7,22,17,.96);backdrop-filter:blur(14px)}.showcase-actions>span{color:var(--gold);font-weight:900}
.progression-reward{position:fixed;z-index:1300;top:50%;left:50%;display:grid;place-items:center;width:min(430px,calc(100vw - 28px));padding:34px;border:1px solid rgba(245,213,71,.55);border-radius:22px;color:var(--text);background:radial-gradient(circle,rgba(183,255,42,.16),transparent 55%),#071611;box-shadow:0 35px 100px rgba(0,0,0,.72),0 0 45px rgba(245,213,71,.13);text-align:center;opacity:0;pointer-events:none;transform:translate(-50%,-46%) scale(.94);transition:opacity .24s ease-out,transform .3s cubic-bezier(.16,1,.3,1)}.progression-reward.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}.progression-reward>p{margin:0;color:var(--mint);font-size:10px;font-weight:950;letter-spacing:.22em}.progression-reward>strong{margin:8px 0 4px;color:var(--gold);font-size:clamp(32px,8vw,56px);font-variant-numeric:tabular-nums}.progression-reward>span{color:var(--title-color,var(--text));font-size:20px;font-weight:950}.progression-reward>small{margin-top:9px;color:var(--muted)}.progression-burst{position:absolute;inset:0;overflow:hidden;border-radius:inherit}.progression-burst i{position:absolute;top:50%;left:50%;width:8px;height:80px;background:linear-gradient(var(--gold),transparent);transform-origin:50% 0;animation:xp-ray .7s ease-out both}.progression-burst i:nth-child(2){transform:rotate(120deg)}.progression-burst i:nth-child(3){transform:rotate(240deg)}@keyframes xp-ray{from{opacity:0;scale:.3}50%{opacity:.65}to{opacity:0;scale:1.8}}
@media(max-width:767px){.account-progression-badge{grid-template-columns:auto;min-width:70px;padding:7px 8px 10px;text-align:center}.account-progression-badge>strong{grid-row:auto;padding:0;border:0}.account-progression-badge>strong b{font-size:17px}.account-progression-badge .account-title-text,.account-progression-badge>small{display:none}.community-hub{margin-top:12px;padding:14px}.community-heading{grid-template-columns:1fr}.community-heading>span{text-align:left}.community-heading h2{font-size:22px}.leaderboard-tabs{margin-block:11px 8px}.leaderboard-tabs button{flex-basis:min(68vw,240px)}.leaderboard-row{grid-template-columns:32px minmax(0,1fr) auto;gap:7px;min-height:52px;padding:7px}.leaderboard-rank{width:28px}.leaderboard-player>span .collectible-token:nth-child(n+4){display:none}.leaderboard-row>em b{font-size:15px}.showcase-grid{grid-template-columns:1fr}.showcase-card,.account-start-reminder>section{padding:18px}.showcase-actions{margin:14px -18px -18px;padding:10px 18px}.account-start-reminder section>div{display:grid}.account-start-reminder .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.account-progression-badge .account-title-text,.progression-reward>span,.leaderboard-skeleton i,.progression-burst i{animation:none!important}.progression-reward{transition:none}.collectible-token::after{transition:none}}

/* v1.15 candidate: retirement title gallery, sequential level-up and right-side rankings */
.account-title-road{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.account-title-tier{position:relative;isolation:isolate;min-height:92px;align-content:center;overflow:hidden;padding:11px!important;border-color:color-mix(in srgb,var(--title-color,var(--mint)) 34%,var(--line))!important;background:linear-gradient(145deg,color-mix(in srgb,var(--title-color,var(--mint)) 10%,transparent),rgba(3,14,11,.78));box-shadow:inset 3px 0 color-mix(in srgb,var(--title-color,var(--mint)) 65%,transparent),0 8px 20px rgba(0,0,0,.17)}
.account-title-tier::after{position:absolute;z-index:-1;inset:-40% auto -40% -70%;width:38%;content:"";background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transform:skewX(-18deg);animation:retirement-title-sheen 3.6s ease-in-out infinite}
.account-title-tier>i{position:absolute;right:10px;top:10px;width:7px;height:7px;border-radius:50%;background:var(--title-color,var(--mint));box-shadow:0 0 14px var(--title-color,var(--mint))}
.account-title-tier>b{color:color-mix(in srgb,var(--title-color,var(--mint)) 72%,white)!important;font-size:8px;letter-spacing:.08em}
.account-title-tier>strong{position:relative;z-index:1;color:var(--title-color,var(--mint));font-size:12px;line-height:1.25;text-shadow:0 0 14px color-mix(in srgb,var(--title-color,var(--mint)) 38%,transparent)}
.account-title-tier>small{color:var(--muted)!important;font-size:8px!important}
.account-title-tier.is-unlocked>small{color:var(--lime)!important}
.account-title-tier.is-locked{border-style:dashed!important}
.account-title-tier.title-elite>strong,.account-title-tier.title-icon>strong,.account-title-tier.title-legend>strong,.account-title-tier.title-immortal>strong,.account-title-tier.title-forge-master>strong{color:transparent;background:linear-gradient(100deg,var(--title-color),#fff,var(--title-color));background-size:220% 100%;background-clip:text;-webkit-background-clip:text;animation:title-sheen 3s ease-in-out infinite}
@keyframes retirement-title-sheen{0%,28%{left:-70%;opacity:0}50%{opacity:1}72%,100%{left:135%;opacity:0}}

.progression-reward.is-visible{pointer-events:auto}
.progression-reward.is-level-step>strong{animation:level-number-step .28s cubic-bezier(.16,1,.3,1) both}
.progression-reward.is-level-step>span{animation:title-sheen .82s ease-out both,level-title-step .28s cubic-bezier(.16,1,.3,1) both}
.progression-skip{position:relative;z-index:2;min-width:180px;min-height:48px;margin-top:18px;padding:10px 18px;border:1px solid var(--line-strong);border-radius:12px;color:var(--text);background:rgba(255,255,255,.06);font-weight:850;transition:background .18s var(--ease),border-color .18s var(--ease)}
.progression-skip:hover,.progression-skip:focus-visible{border-color:var(--mint);background:rgba(88,242,211,.12)}
@keyframes level-number-step{from{opacity:0;transform:translateY(10px) scale(.92)}}
@keyframes level-title-step{from{opacity:0;transform:translateY(7px)}}

@media(min-width:1181px){
  .home-grid.has-community-sidebar{grid-template-columns:minmax(330px,1fr) minmax(250px,.62fr) minmax(330px,.78fr);gap:20px}
  .home-grid.has-community-sidebar .home-copy h1{font-size:clamp(48px,5vw,76px)}
  .home-grid.has-community-sidebar .hero-stage{min-height:500px}
}
.community-sidebar{grid-column:auto;margin:0;align-self:center;max-height:620px;padding:16px;overflow:hidden;border-color:rgba(88,242,211,.3)}
.community-sidebar .community-heading{grid-template-columns:1fr;gap:8px}
.community-sidebar .community-heading h2{font-size:24px}
.community-sidebar .community-heading>span{text-align:left}
.community-sidebar .leaderboard-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:12px 0 9px;overflow:visible}
.community-sidebar .leaderboard-tabs button{min-width:0;min-height:44px;padding:7px;font-size:8px;line-height:1.3;white-space:normal}
.community-sidebar .leaderboard-list{gap:5px}
.community-sidebar .leaderboard-row{grid-template-columns:30px minmax(0,1fr) auto;gap:7px;min-height:50px;padding:6px 8px}
.community-sidebar .leaderboard-rank{width:28px;font-size:12px}
.community-sidebar .leaderboard-player>b{font-size:11px}
.community-sidebar .collectible-token{min-height:22px;padding:2px 5px}
.community-sidebar .leaderboard-player>span .collectible-token:nth-child(n+3){display:none}
.community-sidebar .leaderboard-row>em b{font-size:14px}

@media(min-width:768px) and (max-width:1180px){
  .home-grid.has-community-sidebar{grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:24px}
  .home-grid.has-community-sidebar .hero-stage{display:none}
}
@media(max-width:767px){
  .account-title-road{grid-template-columns:repeat(2,minmax(0,1fr))}
  .account-title-tier{min-height:86px}
  .home-grid.has-community-sidebar{grid-template-columns:1fr;gap:18px}
  .home-grid.has-community-sidebar .hero-stage{display:none}
  .community-sidebar{width:100%;max-height:none;padding:13px}
  .community-sidebar .leaderboard-tabs{display:flex;overflow-x:auto}
  .community-sidebar .leaderboard-tabs button{flex:0 0 min(62vw,210px)}
}
@media(prefers-reduced-motion:reduce){
  .account-title-tier::after,.account-title-tier>strong,.progression-reward.is-level-step>strong,.progression-reward.is-level-step>span{animation:none!important}
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
}

/* Awards are physical career moments: every winner is marked with a trophy. */
.earned-awards > span { position:relative; padding-left:58px; }
.award-trophy { position:absolute; left:16px; top:50%; display:grid; place-items:center; width:30px; aspect-ratio:1; transform:translateY(-50%); border-radius:50%; color:#06120f; background:var(--gold); box-shadow:0 0 18px rgba(244,190,70,.25); }
.award-trophy svg { width:16px; }
.award-rank { display:flex; align-items:center; gap:6px; }
.award-rank svg { width:14px; }
.milestone-unlock-head span { display:flex; align-items:center; gap:7px; }
.milestone-unlock-head svg { width:16px; color:var(--gold); }
.milestone-trophy { display:grid!important; place-items:center; gap:3px; }
.milestone-trophy svg { width:24px; }
.milestone-trophy small { color:var(--gold); font-size:8px; }

@media (max-width:767px) {
  .squad-grid .star-card-action { min-height:32px; margin-top:6px; padding-inline:6px; font-size:8px; }
  .story-choice-list.attention-frame, .simulation-options.attention-frame, .halftime-choice-grid.attention-frame, .allocation-grid.attention-frame { outline-offset:2px; }
  .attention-label { right:8px; font-size:8px; }
  body.feature-selectable-highlights .selectable-highlight-frame { outline-offset:2px; }
  .selectable-highlight-label { right:8px; font-size:8px; }
}

/* v1.15 beta.3: every prestige tier gains a distinct visual language. */
body.feature-title-effects-v2 .account-title-tier,
body.feature-title-effects-v2 .account-progression-badge { --title-a:var(--title-color); --title-b:var(--title-color); --title-c:#fff; }
body.feature-title-effects-v2 .title-grassroots { --title-a:#d7e0dc; --title-b:#91a39d; }
body.feature-title-effects-v2 .title-academy { --title-a:#80e9c4; --title-b:#d7fff0; }
body.feature-title-effects-v2 .title-prospect { --title-a:#58f2d3; --title-b:#7fe4ff; }
body.feature-title-effects-v2 .title-breakthrough { --title-a:#8ee8ff; --title-b:#668cff; }
body.feature-title-effects-v2 .title-regular { --title-a:#b7ff2a; --title-b:#58f2d3; }
body.feature-title-effects-v2 .title-star { --title-a:#f5d547; --title-b:#fff6b1; }
body.feature-title-effects-v2 .title-international { --title-a:#77a7ff; --title-b:#63f4ff; --title-c:#d5e2ff; }
body.feature-title-effects-v2 .title-elite { --title-a:#b77cff; --title-b:#ff78d1; --title-c:#8ee8ff; }
body.feature-title-effects-v2 .title-icon { --title-a:#ff65c3; --title-b:#ffae57; --title-c:#fff0a2; }
body.feature-title-effects-v2 .title-legend { --title-a:#f5b93f; --title-b:#fff7b8; --title-c:#ffcb50; }
body.feature-title-effects-v2 .title-immortal { --title-a:#ff825d; --title-b:#ffdc62; --title-c:#d56eff; }
body.feature-title-effects-v2 .title-forge-master { --title-a:#fff09a; --title-b:#70f6ff; --title-c:#ff72d2; }
body.feature-title-effects-v2 .account-title-tier>strong,
body.feature-title-effects-v2 .account-progression-badge .account-title-text { color:var(--title-a); text-shadow:0 0 calc(4px + var(--title-rank,1) * 1px) color-mix(in srgb,var(--title-a) 42%,transparent); }
body.feature-title-effects-v2 .title-academy { box-shadow:inset 3px 0 var(--title-a),0 8px 20px rgba(0,0,0,.18); }
body.feature-title-effects-v2 .title-prospect>strong,
body.feature-title-effects-v2 .account-progression-badge.title-prospect .account-title-text { color:transparent; background:linear-gradient(100deg,var(--title-a),var(--title-b)); background-clip:text; -webkit-background-clip:text; }
body.feature-title-effects-v2 .title-breakthrough>strong,
body.feature-title-effects-v2 .title-regular>strong,
body.feature-title-effects-v2 .account-progression-badge.title-breakthrough .account-title-text,
body.feature-title-effects-v2 .account-progression-badge.title-regular .account-title-text { color:transparent; background:linear-gradient(105deg,var(--title-a),var(--title-b),var(--title-a)); background-size:180% 100%; background-clip:text; -webkit-background-clip:text; animation:title-flow-v2 3.4s ease-in-out infinite; }
body.feature-title-effects-v2 .title-star>strong,
body.feature-title-effects-v2 .account-progression-badge.title-star .account-title-text { color:transparent; background:linear-gradient(105deg,#b97813,var(--title-a),#fffbd0,var(--title-b),#b97813); background-size:240% 100%; background-clip:text; -webkit-background-clip:text; animation:title-gold-sweep-v2 2.8s ease-in-out infinite; }
body.feature-title-effects-v2 .title-international>strong,
body.feature-title-effects-v2 .account-progression-badge.title-international .account-title-text { color:transparent; background:linear-gradient(100deg,var(--title-a),var(--title-c),var(--title-b),var(--title-a)); background-size:260% 100%; background-clip:text; -webkit-background-clip:text; animation:title-flow-v2 2.5s ease-in-out infinite; }
body.feature-title-effects-v2 .title-elite>strong,
body.feature-title-effects-v2 .title-icon>strong,
body.feature-title-effects-v2 .account-progression-badge.title-elite .account-title-text,
body.feature-title-effects-v2 .account-progression-badge.title-icon .account-title-text { color:transparent; background:linear-gradient(105deg,var(--title-a),var(--title-b),var(--title-c),var(--title-a)); background-size:300% 100%; background-clip:text; -webkit-background-clip:text; animation:title-prism-v2 2.2s ease-in-out infinite; filter:drop-shadow(0 0 6px color-mix(in srgb,var(--title-b) 45%,transparent)); }
body.feature-title-effects-v2 .title-legend>strong,
body.feature-title-effects-v2 .account-progression-badge.title-legend .account-title-text { color:transparent; background:linear-gradient(92deg,#9a5a08,var(--title-a),#fff,var(--title-b),#fff,var(--title-c),#9a5a08); background-size:360% 100%; background-clip:text; -webkit-background-clip:text; animation:title-gold-sweep-v2 1.9s ease-in-out infinite; filter:drop-shadow(0 0 7px rgba(245,213,71,.55)); }
body.feature-title-effects-v2 .title-immortal>strong,
body.feature-title-effects-v2 .account-progression-badge.title-immortal .account-title-text { color:transparent; background:linear-gradient(100deg,#ff665d,#ffd85d,#69f0d1,#69a7ff,#d56eff,#ff665d); background-size:420% 100%; background-clip:text; -webkit-background-clip:text; animation:title-rainbow-v2 1.8s linear infinite; filter:drop-shadow(0 0 8px rgba(213,110,255,.55)); }
body.feature-title-effects-v2 .title-forge-master>strong,
body.feature-title-effects-v2 .account-progression-badge.title-forge-master .account-title-text { color:transparent; background:linear-gradient(92deg,#f2a52a,#fffbd4,#65efff,#ff70d0,#fff,#f2a52a); background-size:480% 100%; background-clip:text; -webkit-background-clip:text; animation:title-rainbow-v2 1.35s linear infinite; filter:drop-shadow(0 0 9px rgba(255,240,154,.72)); }
body.feature-title-effects-v2 .account-title-tier.title-elite,
body.feature-title-effects-v2 .account-title-tier.title-icon,
body.feature-title-effects-v2 .account-title-tier.title-legend,
body.feature-title-effects-v2 .account-title-tier.title-immortal,
body.feature-title-effects-v2 .account-title-tier.title-forge-master { border-color:color-mix(in srgb,var(--title-a) 72%,white)!important; background:radial-gradient(circle at 84% 16%,color-mix(in srgb,var(--title-b) 18%,transparent),transparent 34%),linear-gradient(145deg,color-mix(in srgb,var(--title-a) 13%,transparent),rgba(3,14,11,.86)); }
body.feature-title-effects-v2 .account-title-tier.title-legend,
body.feature-title-effects-v2 .account-progression-badge.title-legend { animation:title-halo-v2 2.2s ease-in-out infinite; }
body.feature-title-effects-v2 .account-title-tier.title-immortal,
body.feature-title-effects-v2 .account-progression-badge.title-immortal { animation:title-prismatic-halo-v2 2s ease-in-out infinite; }
body.feature-title-effects-v2 .account-title-tier.title-forge-master,
body.feature-title-effects-v2 .account-progression-badge.title-forge-master { border-color:#fff3a0!important; animation:title-forge-halo-v2 1.55s ease-in-out infinite; }
body.feature-title-effects-v2 .account-title-tier.title-immortal::before,
body.feature-title-effects-v2 .account-title-tier.title-forge-master::before { position:absolute; z-index:-1; inset:-70%; content:""; opacity:.2; background:conic-gradient(from 0deg,transparent,var(--title-a),transparent,var(--title-b),transparent,var(--title-c),transparent); animation:title-orbit-v2 4s linear infinite; }
body.feature-title-effects-v2 .account-title-tier.title-forge-master::before { opacity:.32; animation-duration:2.8s; }
@keyframes title-flow-v2 { 50% { background-position:100% 0; } }
@keyframes title-gold-sweep-v2 { 0%,20% { background-position:100% 0; } 80%,100% { background-position:0 0; } }
@keyframes title-prism-v2 { 50% { background-position:100% 0; } }
@keyframes title-rainbow-v2 { to { background-position:100% 0; } }
@keyframes title-orbit-v2 { to { transform:rotate(1turn); } }
@keyframes title-halo-v2 { 50% { box-shadow:inset 0 0 18px rgba(245,213,71,.1),0 0 22px rgba(245,213,71,.28); } }
@keyframes title-prismatic-halo-v2 { 50% { box-shadow:inset 0 0 20px rgba(213,110,255,.12),0 0 25px rgba(255,130,93,.32); } }
@keyframes title-forge-halo-v2 { 50% { box-shadow:inset 0 0 24px rgba(255,255,255,.15),0 0 32px rgba(255,240,154,.42),0 0 56px rgba(101,239,255,.14); } }

/* Desktop density pass: less empty card area, larger micro-copy, unchanged touch/mobile layout. */
@media (min-width:768px) {
  body.feature-desktop-density-v2 .screen { padding:clamp(24px,3.2vw,44px) clamp(20px,4vw,58px); }
  body.feature-desktop-density-v2 .section-heading { margin-bottom:26px; }
  body.feature-desktop-density-v2 .panel-heading { margin-bottom:14px; }
  body.feature-desktop-density-v2 .micro-label,
  body.feature-desktop-density-v2 .field-hint,
  body.feature-desktop-density-v2 .star-card-top,
  body.feature-desktop-density-v2 .player-ability-matrix small,
  body.feature-desktop-density-v2 .story-choice small,
  body.feature-desktop-density-v2 .preparation-choice small,
  body.feature-desktop-density-v2 .simulation-option p,
  body.feature-desktop-density-v2 .draft-club-option small,
  body.feature-desktop-density-v2 .career-dashboard small { font-size:11px; line-height:1.45; }
  body.feature-desktop-density-v2 .position-card { min-height:122px; padding:14px; }
  body.feature-desktop-density-v2 .star-card { min-height:0; padding:14px; }
  body.feature-desktop-density-v2 .star-card-top { margin-bottom:12px; }
  body.feature-desktop-density-v2 .story-choice { min-height:104px; padding:15px; }
  body.feature-desktop-density-v2 .club-aside { min-height:320px; padding:22px; }
  body.feature-desktop-density-v2 .halftime-choice { min-height:168px; padding:18px; }
  body.feature-desktop-density-v2 .preparation-choice { min-height:142px; padding:16px; }
  body.feature-desktop-density-v2 .simulation-option { min-height:168px; padding:18px; }
  body.feature-desktop-density-v2 .draft-club-option { min-height:148px; padding:18px; }
  body.feature-desktop-density-v2 .interview-broadcast { min-height:480px; }
  body.feature-desktop-density-v2 .interview-response-grid button { min-height:78px; padding:12px 16px; }
  body.feature-desktop-density-v2 .career-dashboard { gap:12px; }
  body.feature-desktop-density-v2 .career-dashboard>article,
  body.feature-desktop-density-v2 .shop-card { padding:18px; }
  body.feature-desktop-density-v2 .account-title-tier { min-height:82px; }
  body.feature-desktop-density-v2 .account-title-tier>b,
  body.feature-desktop-density-v2 .account-title-tier>small { font-size:10px!important; }
  body.feature-desktop-density-v2 .account-title-tier>strong { font-size:14px; }
}
@media (prefers-reduced-motion:reduce) {
  body.feature-title-effects-v2 .account-title-tier,
  body.feature-title-effects-v2 .account-title-tier::before,
  body.feature-title-effects-v2 .account-title-tier>strong,
  body.feature-title-effects-v2 .account-progression-badge,
  body.feature-title-effects-v2 .account-progression-badge .account-title-text { animation:none!important; }
}

/* v1.16 beta.3 candidate: device-aware density and zero horizontal page scrolling. */
html:has(body.feature-adaptive-layout),
body.feature-adaptive-layout { width:100%; max-width:100%; overflow-x:clip; overflow-y:auto; overscroll-behavior-x:none; }
body.feature-adaptive-layout { --adaptive-card-min:76px; --adaptive-choice-min:142px; --adaptive-gap:8px; --adaptive-gutter:12px; --adaptive-card-padding:12px; }
body.feature-adaptive-layout .app-shell { width:100%; min-width:0; max-width:100%; min-height:100dvh; height:auto; overflow:visible; }
body.feature-adaptive-layout #app { width:100%; min-width:0; max-width:100%; min-height:0; overflow:visible; }
body.feature-adaptive-layout .screen,
body.feature-adaptive-layout .narrow-screen,
body.feature-adaptive-layout .story-screen { width:min(1340px,calc(100% - (var(--adaptive-gutter) * 2))); max-width:calc(100% - (var(--adaptive-gutter) * 2)); min-width:0; height:auto; min-height:0; padding-top:clamp(12px,3dvh,42px); padding-bottom:clamp(30px,5dvh,58px); overflow:visible; }
body.feature-single-viewport.feature-adaptive-layout .app-shell { display:block; height:auto; padding-top:0; overflow:visible; }
body.feature-single-viewport.feature-adaptive-layout.is-testing-channel .app-shell { height:auto; padding-top:0; }
body.feature-single-viewport.feature-adaptive-layout #app { overflow:visible; }
body.feature-single-viewport.feature-adaptive-layout .screen,
body.feature-single-viewport.feature-adaptive-layout .narrow-screen,
body.feature-single-viewport.feature-adaptive-layout .story-screen { height:auto; padding-bottom:clamp(30px,5dvh,58px); overflow:visible; }
body.feature-single-viewport.feature-adaptive-layout .site-footer { display:flex; }
body.feature-single-viewport.feature-adaptive-layout .single-viewport-nav { display:none!important; }
body.feature-adaptive-layout :is(.home-grid,.profile-layout,.draft-layout,.draft-main,.club-layout,.match-layout,.result-layout,.career-dashboard,.season-summary-grid,.transfer-market-layout,.simulation-report-layout,.development-grid) { min-width:0; max-width:100%; }
body.feature-adaptive-layout :is(.glass-card,.panel-heading,.community-heading,.release-hero,.showcase-head,.shop-item-foot,.result-actions,.career-actions) { min-width:0; max-width:100%; }
body.feature-adaptive-layout :is(h1,h2,h3,h4,p,small,strong,b,em,span,label,button,a,blockquote,td,th) { min-width:0; overflow-wrap:anywhere; }
body.feature-adaptive-layout :is(img,svg,canvas,video,iframe,table) { max-width:100%; }
body.feature-adaptive-layout table { width:100%; table-layout:fixed; }

body.feature-adaptive-layout :is(.club-grid,.star-grid,.squad-grid,.shop-grid,.transfer-grid,.account-title-road,.award-grid) { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--adaptive-card-min)),1fr)); gap:var(--adaptive-gap); width:100%; max-width:100%; overflow-x:hidden; scroll-snap-type:none; }
body.feature-adaptive-layout :is(.position-grid,.story-choice-list,.choice-grid,.plan-choice-grid,.tactic-choice-grid,.simulation-options,.draft-club-options,.halftime-choice-grid,.international-choice-grid,.allocation-grid,.recovery-grid,.interview-response-grid,.development-plan-strip,.archetype-specialization-grid,.agent-market,.teammate-grid,.negotiation-options) { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--adaptive-choice-min)),1fr)); gap:var(--adaptive-gap); width:100%; max-width:100%; overflow-x:hidden; scroll-snap-type:none; }
body.feature-adaptive-layout .position-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,110px),1fr)); }
body.feature-adaptive-layout :is(.live-impact-values,.player-ability-matrix,.unlocked-list,.weather-data,.calendar-strip,.interview-impact-grid,.rivalry-impact-grid,.leadership-metrics,.condition-curve) { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,52px),1fr)); gap:var(--adaptive-gap); width:100%; max-width:100%; overflow-x:hidden; scroll-snap-type:none; }
body.feature-adaptive-layout :is(.shop-filters,.career-mobile-tabs,.result-mobile-tabs,.leaderboard-tabs) { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,92px),1fr)); gap:var(--adaptive-gap); width:100%; max-width:100%; overflow-x:hidden; scroll-snap-type:none; }
body.feature-adaptive-layout :is(.shop-filters,.career-mobile-tabs,.result-mobile-tabs,.leaderboard-tabs) > * { width:100%; min-width:0; max-width:100%; min-height:44px; margin:0; }
body.feature-adaptive-layout :is(.club-card,.star-card,.shop-card,.transfer-offer,.story-choice,.simulation-option,.halftime-choice,.preparation-choice,.draft-club-option,.agent-option,.teammate-card,.archetype-specialization) { width:100%; min-width:0; max-width:100%; height:auto; min-height:44px; padding:var(--adaptive-card-padding); margin:0; }
body.feature-adaptive-layout :is(.club-card,.star-card,.shop-card,.transfer-offer,.story-choice,.simulation-option,.draft-club-option) :is(small,p) { font-size:clamp(9px,calc(8px + .35vw),12px); line-height:1.45; }
body.feature-adaptive-layout :is(.star-card-photo,.player-headshot,.attribute-player-photo) { max-width:100%; height:auto; object-fit:cover; }
body.feature-adaptive-layout .live-impact-strip { max-width:100%; overflow-x:hidden; }
body.feature-adaptive-layout .live-impact-values.is-paged { grid-template-columns:repeat(auto-fit,minmax(min(100%,52px),1fr)); }
body.feature-adaptive-layout .live-impact-pagination { display:none; }

body.feature-adaptive-layout[data-adaptive-device="phone"] .topbar { padding-inline:max(10px,env(safe-area-inset-left)); }
body.feature-adaptive-layout[data-adaptive-device="phone"] .live-impact-strip { padding-inline:var(--adaptive-gutter); }
body.feature-adaptive-layout[data-adaptive-device="phone"] :is(.home-grid,.profile-layout,.draft-layout,.club-layout,.match-layout,.result-layout,.transfer-market-layout,.simulation-report-layout) { grid-template-columns:1fr; }
body.feature-adaptive-layout[data-adaptive-device="phone"] .hero-stage { min-height:clamp(260px,54dvh,430px); }
body.feature-adaptive-layout[data-adaptive-density="compact"] :is(.section-heading,.career-hero,.result-heading,.simulation-hero) { margin-bottom:10px; }
body.feature-adaptive-layout[data-adaptive-density="compact"] :is(.section-heading h1,.career-hero h1,.result-heading h1,.simulation-hero h1) { font-size:clamp(26px,8vw,38px); }
body.feature-adaptive-layout[data-adaptive-density="compact"] :is(.career-dashboard,.shop-grid,.result-layout,.match-layout) { gap:var(--adaptive-gap); }
body.feature-adaptive-layout[data-adaptive-orientation="landscape"][data-adaptive-device="phone"] .hero-stage { display:none; }
body.feature-adaptive-layout[data-adaptive-orientation="landscape"][data-adaptive-device="phone"] .screen { padding-top:8px; }

@supports not (overflow:clip) {
  html:has(body.feature-adaptive-layout),body.feature-adaptive-layout { overflow-x:hidden; }
}
@media (prefers-reduced-motion:reduce) {
  body.feature-adaptive-layout * { scroll-behavior:auto!important; }
}

/* v1.16 beta.4 candidate: text and figures never collapse into vertical-looking stacks. */
body.feature-horizontal-text,
body.feature-horizontal-text * {
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
}
body.feature-horizontal-text :is(h1,h2,h3,h4,p,small,strong,b,em,span,label,button,a,blockquote,td,th) {
  word-break:keep-all;
  overflow-wrap:normal;
}
body.feature-horizontal-text :is(.live-impact-chip,.ability-cell,.player-ability-matrix>*,.weather-data>*,.calendar-strip>*,.condition-curve>*,.position-card,.leaderboard-tabs button,.career-mobile-tabs button,.result-mobile-tabs button) :is(small,strong,b,span),
body.feature-horizontal-text :is(.live-impact-chip,.ability-cell,.player-ability-matrix>*,.weather-data>*,.calendar-strip>*,.condition-curve>*,.position-card,.leaderboard-tabs button,.career-mobile-tabs button,.result-mobile-tabs button) {
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* v1.16 beta.5 candidate: persistent account identity on every supported viewport. */
body.feature-account-identity .account-button.is-readonly {
  opacity:1;
  cursor:default;
  border-color:rgba(88,242,211,.28);
  color:var(--mint);
  background:rgba(88,242,211,.055);
}
@media (max-width:1024px) {
  body.feature-account-identity .topbar { grid-template-columns:auto minmax(0,1fr); }
  body.feature-account-identity .stage-progress { display:none; }
  body.feature-account-identity .topbar-meta { display:flex; min-width:0; justify-self:end; }
  body.feature-account-identity .topbar-meta :is(.live-signal,.topbar-divider,#season-meta) { display:none; }
  body.feature-account-identity #account-progression-badge { order:1; }
  body.feature-account-identity :is(#account-menu,#google-signin) { order:2; }
  body.feature-account-identity .update-button { order:3; }
  body.feature-account-identity .language-select { order:4; }
}
@media (max-width:767px) {
  body.feature-account-identity .topbar { grid-template-columns:1fr; align-items:start; }
  body.feature-account-identity .brand { justify-self:start; }
  body.feature-account-identity .topbar-meta {
    display:grid;
    grid-template-columns:minmax(132px,1fr) minmax(72px,.62fr) 44px 54px;
    gap:6px;
    width:100%;
    justify-self:stretch;
  }
  body.feature-account-identity .account-progression-badge {
    grid-template-columns:auto minmax(0,1fr);
    min-width:0;
    width:100%;
    padding:6px 8px 9px;
    text-align:left;
  }
  body.feature-account-identity .account-progression-badge>strong { grid-row:1 / 3; padding-right:7px; border-right:1px solid var(--line); }
  body.feature-account-identity .account-progression-badge>strong b { font-size:16px; }
  body.feature-account-identity .account-progression-badge .account-title-text { display:block; overflow:hidden; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
  body.feature-account-identity .account-progression-badge>small { display:block; overflow:hidden; font-size:7px; text-overflow:ellipsis; white-space:nowrap; }
  body.feature-account-identity .account-button:not(.is-hidden) { display:inline-flex; width:100%; max-width:none; min-width:0; padding-inline:7px; }
}
@media (max-width:360px) {
  body.feature-account-identity .topbar-meta { grid-template-columns:minmax(132px,1fr) minmax(72px,.62fr) 44px; }
  body.feature-account-identity .language-select { display:none; }
}
