* { box-sizing: border-box; }

body {
    margin: 0;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background: #f4f6f8;
    color: #1d2430;
}

.container {
    width: min(1320px, 95%);
    margin: 28px auto;
}

.page-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 24px;
    margin-bottom: 22px;
}

h1, h2 { margin-top: 0; }
h1 { margin-bottom: 8px; }

.page-header p { margin-bottom: 0; }

.my-team-form {
    min-width: min(520px, 100%);
}

.my-team-form label {
    display: block;
    font-weight: 700;
    margin-bottom: 6px;
}

.team-select-row {
    display: flex;
    gap: 8px;
}

select {
    flex: 1;
    min-width: 0;
    border: 1px solid #cfd6df;
    border-radius: 8px;
    padding: 10px 12px;
    background: white;
    font-size: 15px;
}

button {
    padding: 11px 14px;
    border: 0;
    border-radius: 8px;
    background: #202a44;
    color: white;
    cursor: pointer;
    font-weight: 650;
}

button:hover { opacity: .92; }

.notice {
    background: #eef3ff;
    border: 1px solid #cdd9f6;
    padding: 10px 14px;
    border-radius: 8px;
    margin-bottom: 16px;
}

.refresh-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 20px;
}

.refresh-grid form {
    background: white;
    border: 1px solid #dfe4ea;
    border-radius: 10px;
    padding: 14px;
}

.refresh-grid button { width: 100%; }

small {
    display: block;
    margin-top: 8px;
    color: #667085;
    overflow-wrap: anywhere;
}

.tabs {
    display: flex;
    gap: 8px;
    margin: 0 0 16px;
    flex-wrap: wrap;
}

.tab {
    background: #e8ebf0;
    color: #273043;
}

.tab.active {
    background: #202a44;
    color: white;
}

.tab-panel { display: none; }
.tab-panel.active { display: block; }

.card,
.kpi-card {
    background: white;
    border: 1px solid #dfe4ea;
    border-radius: 10px;
    padding: 18px;
}

.card { margin-bottom: 16px; }

.kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.kpi-card span {
    display: block;
    color: #667085;
    font-size: .9rem;
}

.kpi-card strong {
    display: block;
    margin-top: 6px;
    font-size: 1.35rem;
}

.analysis-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.section-title-row {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: flex-start;
}

.table-wrap { overflow-x: auto; }

table {
    width: 100%;
    border-collapse: collapse;
}

th, td {
    padding: 10px 12px;
    border-bottom: 1px solid #eceff3;
    text-align: left;
    white-space: nowrap;
}

th {
    font-size: .85rem;
    color: #667085;
}

.compact th,
.compact td {
    padding: 8px 10px;
}

.ok {
    color: #067647;
    font-weight: 700;
}

.missing {
    color: #b42318;
}

.my-row {
    background: #f0f4ff;
}

.badge {
    display: inline-block;
    margin-left: 7px;
    padding: 2px 7px;
    border-radius: 999px;
    background: #202a44;
    color: white;
    font-size: .72rem;
    font-weight: 700;
}

.squad-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    margin-top: 12px;
}

.player-chip {
    border: 1px solid #dfe4ea;
    border-radius: 8px;
    padding: 10px;
    background: #fafbfc;
}

.player-chip strong,
.player-chip span {
    display: block;
}

.player-chip span {
    margin-top: 3px;
    color: #667085;
    font-size: .82rem;
}

.player-chip.bench {
    opacity: .65;
}

@media (max-width: 980px) {
    .page-header { align-items: stretch; flex-direction: column; }
    .my-team-form { min-width: 0; }
    .refresh-grid,
    .kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .analysis-grid { grid-template-columns: 1fr; }
    .squad-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
    .refresh-grid,
    .kpi-grid { grid-template-columns: 1fr; }
    .team-select-row { flex-direction: column; }
    .squad-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}


.refresh-box {
    background: white;
    border: 1px solid #dfe4ea;
    border-radius: 10px;
    padding: 14px;
}
.refresh-box button { width: 100%; }
button:disabled { opacity: .55; cursor: wait; }

.progress-track {
    height: 5px;
    background: #e8ebf0;
    border-radius: 999px;
    margin-top: 8px;
    overflow: hidden;
}
#picks-progress-bar {
    height: 100%;
    width: 0;
    background: #202a44;
    transition: width .25s ease;
}

.team-link {
    color: #16213a;
    font-weight: 700;
    text-decoration: none;
}
.team-link:hover { text-decoration: underline; }

.back-link {
    display: inline-block;
    margin-bottom: 14px;
    color: #202a44;
    font-weight: 700;
    text-decoration: none;
}

.manager-head {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
}
.manager-head h1 { margin-bottom: 4px; }
.manager-head p { margin: 0; color: #667085; }
.manager-stats { text-align: right; }
.manager-stats span, .manager-stats strong { display: block; margin: 3px 0; }

.pitch-card {
    background: white;
    border: 1px solid #dfe4ea;
    border-radius: 12px;
    overflow: hidden;
}
.pitch {
    min-height: 650px;
    padding: 28px 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    background:
      linear-gradient(rgba(255,255,255,.08), rgba(255,255,255,.08)),
      repeating-linear-gradient(0deg, #3b8f55 0, #3b8f55 72px, #34824c 72px, #34824c 144px);
    position: relative;
}
.pitch::before {
    content: "";
    position: absolute;
    inset: 18px;
    border: 2px solid rgba(255,255,255,.55);
    pointer-events: none;
}
.pitch::after {
    content: "";
    position: absolute;
    left: 18px; right: 18px; top: 50%;
    border-top: 2px solid rgba(255,255,255,.55);
    pointer-events: none;
}
.pitch-line {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    gap: 12px;
    position: relative;
    z-index: 1;
}
.pitch-player {
    width: 145px;
    min-height: 88px;
    background: rgba(255,255,255,.96);
    color: #182033;
    border: 0;
    box-shadow: 0 3px 12px rgba(0,0,0,.18);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.pitch-player:hover { transform: translateY(-2px); opacity: 1; }
.pitch-player .shirt {
    font-size: .72rem;
    color: #667085;
    margin-bottom: 3px;
}
.pitch-player small { margin-top: 3px; }

.bench-area {
    padding: 18px;
    background: #f4f6f8;
}
.bench-area h3 { margin: 0 0 12px; }
.bench-row {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}
.bench-player { box-shadow: none; border: 1px solid #dfe4ea; }

dialog {
    width: min(560px, 92vw);
    border: 0;
    border-radius: 12px;
    padding: 24px;
    box-shadow: 0 24px 70px rgba(0,0,0,.3);
}
dialog::backdrop { background: rgba(15,23,42,.55); }
.dialog-close {
    position: absolute;
    right: 12px;
    top: 10px;
    background: transparent;
    color: #1d2430;
    font-size: 24px;
}
.player-info-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}
.player-info-grid div {
    padding: 12px;
    background: #f4f6f8;
    border-radius: 8px;
}
.player-info-grid span, .player-info-grid strong { display:block; }
.player-info-grid span { color:#667085; font-size:.8rem; margin-bottom:4px; }

@media (max-width: 720px) {
    .pitch { min-height: 580px; padding: 20px 8px; }
    .pitch-player { width: 105px; min-height: 78px; padding: 7px; font-size: .82rem; }
    .manager-head { flex-direction: column; align-items: flex-start; }
    .manager-stats { text-align: left; }
    .player-info-grid { grid-template-columns: repeat(2, 1fr); }
}


.up { color: #067647; font-weight: 700; }
.down { color: #b42318; font-weight: 700; }

.history-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.rival-select-form {
    min-width: 280px;
}
.rival-select-form label {
    display: block;
    font-weight: 700;
    margin-bottom: 5px;
}

.versus-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 14px;
    margin-top: 16px;
}
.versus-col {
    border: 1px solid #dfe4ea;
    border-radius: 10px;
    padding: 14px;
}
.versus-col h3 { margin: 0 0 3px; }
.versus-col h4 { margin: 0 0 12px; color: #667085; font-size: .9rem; }
.common-col { background: #f7f8fa; }
.versus-player {
    padding: 8px 0;
    border-bottom: 1px solid #eceff3;
    font-weight: 650;
}
.versus-player:last-child { border-bottom: 0; }
.versus-player span {
    display: block;
    color: #667085;
    font-size: .8rem;
    font-weight: 400;
}
.versus-player b {
    display: inline-block;
    margin-left: 5px;
    background: #202a44;
    color: white;
    border-radius: 999px;
    padding: 1px 6px;
    font-size: .7rem;
}

.transfer-list {
    display: grid;
    gap: 8px;
}
.transfer-row {
    display: grid;
    grid-template-columns: 80px 1fr auto;
    gap: 12px;
    align-items: center;
    padding: 10px 12px;
    background: #f7f8fa;
    border-radius: 8px;
}
.transfer-row small { margin: 0; }

@media (max-width: 820px) {
    .versus-grid { grid-template-columns: 1fr; }
    .history-actions { grid-template-columns: 1fr; }
    .transfer-row { grid-template-columns: 1fr; gap: 4px; }
}


.warn { color: #b54708; font-weight: 700; }

.weights-box {
    max-width: 520px;
    color: #475467;
}
.weights-box summary {
    cursor: pointer;
    font-weight: 700;
    color: #202a44;
}

.decision-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}
.decision-list {
    display: grid;
    gap: 8px;
}
.decision-item {
    border: 1px solid #e1e5ea;
    border-radius: 9px;
    background: #fafbfc;
}
.decision-item summary {
    list-style: none;
    cursor: pointer;
    display: grid;
    grid-template-columns: minmax(150px, 1fr) 72px 100px;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
}
.decision-item summary::-webkit-details-marker { display: none; }
.decision-item summary small {
    display: block;
    color: #667085;
    margin: 2px 0 0;
}
.score {
    justify-self: center;
    display: inline-flex;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-weight: 800;
    background: #eef1f5;
}
.risk-score { background: #fdecec; }
.opportunity-score { background: #e8f7ee; }
.threat-score { background: #fff3df; }
.differential-score { background: #eef1ff; }

.action-label {
    justify-self: end;
    font-size: .75rem;
    font-weight: 750;
    color: #475467;
}
.score-breakdown {
    display: grid;
    grid-template-columns: repeat(5, minmax(0,1fr));
    gap: 6px;
    padding: 0 12px 12px;
}
.score-breakdown span {
    background: white;
    border: 1px solid #eceff3;
    border-radius: 7px;
    padding: 7px;
    color: #667085;
    font-size: .75rem;
}
.score-breakdown b {
    display: block;
    color: #1d2430;
    margin-top: 2px;
    font-size: .9rem;
}
.player-news {
    margin: 0 12px 12px;
    padding: 8px 10px;
    background: #fff7e8;
    border-radius: 7px;
    font-size: .85rem;
}
.badge-alert {
    display: inline-block;
    padding: 2px 6px;
    margin: 1px;
    background: #fff0e6;
    color: #b54708;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 700;
}

@media (max-width: 900px) {
    .decision-grid { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
    .decision-item summary { grid-template-columns: minmax(120px,1fr) 52px; }
    .action-label { grid-column: 1 / -1; justify-self: start; }
    .score { width: 42px; height: 42px; }
    .score-breakdown { grid-template-columns: repeat(2, minmax(0,1fr)); }
}


/* =========================================================
   V4.4 Visual system — football control room
   ========================================================= */
:root {
  --ink: #101827;
  --ink-2: #1f2a44;
  --pitch: #0b8f55;
  --pitch-dark: #087445;
  --lime: #b9f227;
  --gold: #ffc857;
  --red: #ef5b5b;
  --sky: #4cc9f0;
  --paper: #ffffff;
  --bg: #eef3f1;
  --muted: #667085;
  --line: #dbe4e0;
}

body {
  background:
    radial-gradient(circle at 10% 0%, rgba(185,242,39,.12), transparent 28rem),
    linear-gradient(180deg, #f8faf9 0, var(--bg) 100%);
}

.container { width: min(1380px, 95%); }

.page-header {
  background: linear-gradient(135deg, var(--ink) 0%, #172642 62%, #0c6c47 100%);
  color: white;
  padding: 22px;
  border-radius: 18px;
  box-shadow: 0 14px 40px rgba(16,24,39,.12);
}
.page-header p, .page-header small { color: rgba(255,255,255,.72); }
.page-header label { color: white; }

.brand-title { display:flex; gap:14px; align-items:center; }
.brand-ball {
  display:inline-flex;
  width:52px; height:52px; align-items:center; justify-content:center;
  border-radius:16px;
  background:linear-gradient(145deg, rgba(255,255,255,.18), rgba(255,255,255,.07));
  font-size:28px;
}
.eyebrow {
  display:block;
  font-size:.7rem;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:#718078;
  font-weight:800;
  margin-bottom:5px;
}
.page-header .eyebrow, .hero-card .eyebrow { color: var(--lime); }

.tabs {
  padding: 6px;
  border-radius: 14px;
  background: rgba(255,255,255,.74);
  border: 1px solid var(--line);
  position: sticky;
  top: 6px;
  z-index: 10;
  backdrop-filter: blur(10px);
}
.tab { border-radius:10px; }
.tab.active { background: linear-gradient(135deg,var(--ink),#263a64); }

.card, .kpi-card, .refresh-grid form, .refresh-box {
  border-color: var(--line);
  box-shadow: 0 7px 22px rgba(16,24,39,.045);
}
.card { border-radius:14px; }
.kpi-card { border-radius:14px; border-top:3px solid var(--pitch); }

button {
  background: linear-gradient(135deg, var(--ink-2), var(--ink));
  min-height:44px;
}
button:hover { transform: translateY(-1px); }

.hero-card {
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  background:linear-gradient(135deg,var(--ink) 0,#20385f 70%,var(--pitch-dark) 100%);
  color:white;
  border-radius:18px;
  padding:24px;
  margin-bottom:16px;
}
.hero-card h1 { margin:0; }
.hero-card p { color:rgba(255,255,255,.72); margin-bottom:0; }
.hero-score {
  min-width:118px;
  text-align:center;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.18);
  padding:14px;
  border-radius:16px;
}
.hero-score span { display:block; color:rgba(255,255,255,.7); font-size:.8rem; }
.hero-score strong { display:block; font-size:2rem; color:var(--lime); }

.player-link { color:inherit; text-decoration:none; }
.player-link:hover { color:var(--pitch-dark); text-decoration:underline; }

.decision-tools {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-bottom:16px;
}
.tool-card h2 { margin-bottom:12px; }
.transfer-form {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
}
.transfer-form select { min-height:44px; }

.metric-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
}
.metric-grid > div {
  background:#f6f9f7;
  border:1px solid var(--line);
  padding:11px;
  border-radius:10px;
}
.metric-grid span { display:block; color:var(--muted); font-size:.76rem; }
.metric-grid b { display:block; margin-top:3px; font-size:1.05rem; }

.fixture-strip {
  display:flex;
  gap:9px;
  overflow-x:auto;
  padding-bottom:4px;
  scroll-snap-type:x proximity;
}
.fixture-pill {
  flex:0 0 120px;
  scroll-snap-align:start;
  border-radius:12px;
  padding:11px;
  text-align:center;
  border:1px solid rgba(0,0,0,.06);
}
.fixture-pill span,.fixture-pill strong,.fixture-pill small { display:block; }
.fixture-pill span,.fixture-pill small { font-size:.73rem; opacity:.72; }
.fixture-pill strong { margin:4px 0; }
.fdr-1 { background:#dff9e8; }
.fdr-2 { background:#eaf7e8; }
.fdr-3 { background:#fff4cf; }
.fdr-4 { background:#ffe1d5; }
.fdr-5 { background:#ffd1d1; }

.versus-comparison {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.player-compare-card { position:relative; overflow:hidden; }
.compare-main-score {
  position:absolute; top:16px; right:16px;
  width:58px; height:58px; display:flex;align-items:center;justify-content:center;
  border-radius:50%; background:var(--lime); color:var(--ink);
  font-weight:900; font-size:1.15rem;
}
.compact-fixtures { margin-top:14px; }
.compact-fixtures .fixture-pill { flex-basis:84px; padding:7px; }

.transfer-hero {
  display:grid; grid-template-columns:1fr auto 1fr; gap:18px; align-items:center;
  margin-bottom:16px;
}
.transfer-side {
  padding:22px; border-radius:16px; color:white; text-align:center;
}
.transfer-side span,.transfer-side strong,.transfer-side small { display:block; }
.transfer-side strong { font-size:1.45rem; margin:5px 0; }
.out-side { background:linear-gradient(135deg,#7c2731,#bc4050); }
.in-side { background:linear-gradient(135deg,#087445,#12a863); }
.transfer-arrow { font-size:2rem; font-weight:900; }
.error-card { border-left:5px solid var(--red); }

.live-intel-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.live-player-list { display:grid; gap:7px; }
.live-player-row {
  display:flex; justify-content:space-between; gap:10px; align-items:center;
  padding:10px 12px; border-radius:10px;
  background:#f7faf8; border:1px solid var(--line);
  color:var(--ink); text-decoration:none;
}
.live-player-row:hover { border-color:var(--pitch); }
.live-player-row strong,.live-player-row small { display:block; }
.live-player-row small { color:var(--muted); margin-top:2px; }

.muted { color:var(--muted); }

.pitch {
  background:
    radial-gradient(circle at 50% 50%, transparent 0 75px, rgba(255,255,255,.48) 76px 78px, transparent 79px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 90px, rgba(0,0,0,.025) 90px 180px),
    linear-gradient(180deg,#148954,#0b7547);
}
.pitch-player {
  border-top:4px solid var(--lime);
  transition:transform .15s ease,box-shadow .15s ease;
}
.pitch-player:hover { box-shadow:0 8px 20px rgba(0,0,0,.22); }

@media (max-width: 900px) {
  .decision-tools,.live-intel-grid,.versus-comparison { grid-template-columns:1fr; }
  .metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .transfer-form { grid-template-columns:1fr; }
  .transfer-form > span { display:none; }
}
@media (max-width: 620px) {
  .container { width:min(100% - 18px,1380px); margin:12px auto; }
  .page-header { border-radius:15px; padding:16px; }
  .brand-ball { width:44px;height:44px;font-size:23px; }
  .page-header h1 { font-size:1.45rem; }
  .tabs { overflow-x:auto; flex-wrap:nowrap; justify-content:flex-start; }
  .tab { flex:0 0 auto; }
  .hero-card { align-items:flex-start; flex-direction:column; padding:18px; }
  .hero-score { align-self:stretch; }
  .metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .transfer-hero { grid-template-columns:1fr; }
  .transfer-arrow { transform:rotate(90deg); text-align:center; }
  .live-player-row { align-items:flex-start; flex-direction:column; }
}


/* =========================================================
   V5.0 — Dark football control-room design system
   ========================================================= */
:root{
  --navy-950:#050817;
  --navy-900:#080d20;
  --navy-850:#0b1128;
  --navy-800:#101833;
  --navy-700:#172044;
  --purple:#36104f;
  --purple-2:#5d0a67;
  --lime:#b8ff39;
  --green:#13c76b;
  --green-2:#05934f;
  --cyan:#33d5ff;
  --amber:#ffb82e;
  --red:#ff4d57;
  --text:#f7f8ff;
  --muted:#929bb7;
  --line:rgba(255,255,255,.09);
  --panel:linear-gradient(145deg,rgba(17,25,55,.98),rgba(8,13,32,.98));
  --panel-soft:rgba(18,27,57,.88);
}

html{background:var(--navy-950);}
body.app-body{
  margin:0;
  color:var(--text);
  background:
    radial-gradient(circle at 70% 0%,rgba(67,22,103,.20),transparent 34rem),
    radial-gradient(circle at 5% 75%,rgba(0,180,91,.12),transparent 30rem),
    var(--navy-950);
  min-height:100vh;
}
body.app-body, body.app-body button, body.app-body input, body.app-body select{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh;}
.app-sidebar{
  position:sticky;top:0;height:100vh;
  display:flex;flex-direction:column;
  padding:18px 14px;
  background:
    radial-gradient(circle at 50% 95%,rgba(15,217,103,.18),transparent 14rem),
    linear-gradient(180deg,#070b1c,#080d20 62%,#071528);
  border-right:1px solid var(--line);
  z-index:30;
}
.sidebar-brand{display:flex;align-items:center;gap:12px;padding:4px 4px 18px;border-bottom:1px solid var(--line);}
.sidebar-logo{width:48px;height:48px;filter:drop-shadow(0 0 14px rgba(184,255,57,.18));}
.sidebar-brand strong{display:block;font-size:1.18rem;letter-spacing:.02em;}
.sidebar-brand span{display:block;color:var(--lime);font-size:.66rem;text-transform:uppercase;letter-spacing:.09em;margin-top:2px;}
.sidebar-team-card{
  display:block;margin:16px 0 12px;padding:12px 13px;border-radius:12px;
  background:linear-gradient(135deg,rgba(35,47,93,.95),rgba(20,24,56,.95));
  border:1px solid rgba(145,126,255,.22);color:var(--text);text-decoration:none;
}
.sidebar-team-card strong,.sidebar-team-card span{display:block}
.sidebar-team-card span{color:#aab3d2;font-size:.82rem;margin-top:3px}
.sidebar-nav{display:grid;gap:5px;margin-top:4px}
.sidebar-nav a{
  display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:9px;
  color:#cbd1e8;text-decoration:none;font-size:.9rem;font-weight:630;
}
.sidebar-nav a span{width:22px;text-align:center;color:#9aa5c8;font-size:1rem}
.sidebar-nav a:hover{background:rgba(255,255,255,.055);color:#fff}
.sidebar-nav a.active{background:linear-gradient(90deg,#0e973f,#0c7a39);color:#fff;box-shadow:0 7px 18px rgba(5,171,77,.18)}
.sidebar-nav a.active span{color:var(--lime)}
.sidebar-footer{margin-top:auto;padding:12px 5px;color:#8f99b9;display:grid;gap:5px}
.version-pill{display:inline-flex;width:max-content;padding:3px 7px;border-radius:6px;background:rgba(184,255,57,.11);color:var(--lime);font-size:.7rem;font-weight:800}

.app-content{min-width:0;}
.app-content .container{width:auto;max-width:none;margin:0;padding:14px 18px 38px;}
.app-content .page-header{
  background:var(--panel);border:1px solid var(--line);box-shadow:none;border-radius:12px;
}
.app-content .tabs{
  background:#090f25;border-color:var(--line);backdrop-filter:blur(12px);
}
.app-content .tab{background:transparent;color:#aab3d2}
.app-content .tab.active{background:#152044;color:#fff;box-shadow:inset 0 -2px var(--lime)}
.app-content .card,.app-content .kpi-card,.standalone-page .card,.standalone-page .kpi-card{
  color:var(--text);background:var(--panel);border-color:var(--line);box-shadow:none;
}
.app-content table,.standalone-page table{color:var(--text)}
.app-content th,.standalone-page th{color:#8994b7;border-color:var(--line)}
.app-content td,.standalone-page td{border-color:var(--line)}
.app-content .my-row{background:rgba(31,174,86,.12)}
.app-content select,.standalone-page select{
  background:#0b122c;color:#f7f8ff;border:1px solid #26335c;
}
.app-content small,.standalone-page small,.muted{color:#8f99b9}
.app-content .team-link,.standalone-page .team-link,.standalone-page .back-link{color:#f3f6ff}
.app-content .player-link,.standalone-page .player-link{color:#f7f8ff}
.app-content button,.standalone-page button{
  background:linear-gradient(135deg,#1b2b5b,#121c3f);border:1px solid rgba(137,155,231,.14);
}
.app-content button:hover,.standalone-page button:hover{border-color:rgba(184,255,57,.38)}

/* Team page */
.team-page{padding:14px 18px 32px;max-width:1550px;margin:0 auto;}
.team-topbar{
  display:flex;justify-content:space-between;align-items:center;gap:18px;
  background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin-bottom:10px;
}
.team-topbar h1{font-size:1.55rem;margin:2px 0 1px}
.team-topbar p{margin:0;color:#a5aec9;font-size:.85rem}
.eyebrow{color:var(--lime)!important;font-size:.64rem!important;letter-spacing:.12em;font-weight:850}
.topbar-kpis{display:grid;grid-template-columns:repeat(5,minmax(92px,1fr));gap:6px}
.topbar-kpis div{
  min-width:92px;text-align:center;padding:9px 11px;border-radius:10px;
  background:linear-gradient(145deg,#131c3b,#0a1028);border:1px solid var(--line)
}
.topbar-kpis strong{display:block;font-size:1.05rem}
.topbar-kpis span{display:block;color:#8994b7;font-size:.59rem;margin-top:2px;letter-spacing:.04em}

.matchday-summary{
  display:grid;grid-template-columns:repeat(5,1fr);gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:10px;
}
.matchday-summary>div{background:#0b1128;text-align:center;padding:12px 8px}
.matchday-summary strong{display:block;font-size:1.3rem}
.matchday-summary span{display:block;color:#a0aac6;font-size:.72rem;margin-top:3px}
.matchday-summary .featured-stat{background:linear-gradient(145deg,#182344,#1d294d);box-shadow:inset 0 -2px var(--lime)}
.matchday-summary .featured-stat strong{color:var(--lime);font-size:1.6rem}

.live-warning{
  display:flex;align-items:center;gap:12px;padding:10px 12px;margin-bottom:10px;
  background:rgba(255,184,46,.08);border:1px solid rgba(255,184,46,.22);border-radius:10px
}
.live-warning>span{color:var(--amber);font-size:1.4rem}
.live-warning div{flex:1}
.live-warning strong{font-size:.88rem}
.live-warning p{margin:2px 0 0;color:#9fa9c5;font-size:.75rem}
.live-warning button{padding:8px 12px;min-height:auto}

.team-stage{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:10px}
.pitch-panel{min-width:0}
.pitch-toolbar{
  display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 3px;color:#aab3cf;font-size:.78rem
}
.view-pill{display:inline-flex;padding:8px 14px!important;min-height:auto!important;border-radius:8px!important}
.view-pill.active{color:var(--lime);border-color:rgba(184,255,57,.35)!important}
.view-pill.passive{display:inline-flex;padding:8px 10px;color:#7f8aa8}
.captain-summary{color:#9ca7c8}

.fpl-pitch{
  position:relative;min-height:640px;display:flex;flex-direction:column;justify-content:space-around;
  padding:36px 22px 22px;border-radius:16px 16px 4px 4px;overflow:hidden;
  background:
    radial-gradient(ellipse at 50% 12%,rgba(184,255,57,.12),transparent 22rem),
    repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 72px,rgba(0,0,0,.025) 72px 144px),
    linear-gradient(180deg,#0da65a,#068445 72%,#04723c);
  border:1px solid rgba(83,255,153,.18);
  box-shadow:inset 0 0 55px rgba(0,0,0,.17),0 12px 34px rgba(0,0,0,.16);
}
.fpl-pitch::before{
  content:"";position:absolute;inset:14px;border:2px solid rgba(255,255,255,.82);border-radius:2px;pointer-events:none
}
.fpl-pitch::after{
  content:"";position:absolute;left:14px;right:14px;top:50%;border-top:2px solid rgba(255,255,255,.75);pointer-events:none
}
.pitch-lines{
  position:absolute;left:50%;top:50%;width:130px;height:130px;border:2px solid rgba(255,255,255,.72);
  border-radius:50%;transform:translate(-50%,-50%);pointer-events:none
}
.pitch-lines::before{
  content:"";position:absolute;left:50%;top:-320px;width:280px;height:115px;border:2px solid rgba(255,255,255,.72);
  transform:translateX(-50%);border-top:0
}
.pitch-lines::after{
  content:"";position:absolute;left:50%;bottom:-320px;width:280px;height:115px;border:2px solid rgba(255,255,255,.72);
  transform:translateX(-50%);border-bottom:0
}
.squad-line{position:relative;z-index:2;display:flex;justify-content:space-evenly;align-items:center;gap:10px;min-height:120px}

.fpl-player-card{
  position:relative;width:125px;min-height:142px;border-radius:9px;overflow:hidden;text-decoration:none;color:#fff;
  background:linear-gradient(180deg,rgba(13,21,49,.98),rgba(6,13,31,.98));
  border:1px solid rgba(255,255,255,.17);box-shadow:0 8px 18px rgba(0,0,0,.23);
  transition:transform .15s ease,border-color .15s ease;
}
.fpl-player-card:hover{transform:translateY(-3px);border-color:rgba(184,255,57,.65)}
.fpl-player-card.state-finished{box-shadow:0 0 0 1px rgba(21,211,111,.20),0 8px 18px rgba(0,0,0,.23)}
.fpl-player-card.state-live{box-shadow:0 0 0 1px rgba(255,184,46,.42),0 0 17px rgba(255,184,46,.12)}
.fpl-player-card.availability-warning{border-color:rgba(255,184,46,.7)}
.player-status-icon{
  position:absolute;left:6px;top:6px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;
  border-radius:50%;background:#1bd26f;color:#07132a;font-size:.68rem;font-weight:950;z-index:4
}
.state-live .player-status-icon{background:var(--amber)}
.state-upcoming .player-status-icon{background:#34405f;color:#cdd4e8;border:1px solid #647191}
.availability-warning .player-status-icon{background:#ffd42a;color:#17191e}
.captain-badge{
  position:absolute;right:6px;top:6px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;
  border-radius:50%;background:#4f145f;color:#fff;font-size:.63rem;font-weight:900;z-index:4;border:1px solid rgba(255,255,255,.35)
}
.captain-badge.vc{background:#301340}
.shirt-token{
  height:63px;display:flex;align-items:center;justify-content:center;padding-top:6px;
  background:linear-gradient(160deg,rgba(255,255,255,.04),rgba(255,255,255,.00))
}
.shirt-token::before{
  content:"";width:46px;height:45px;border-radius:9px 9px 15px 15px;
  background:
    linear-gradient(90deg,transparent 0 18%,rgba(255,255,255,.13) 18% 22%,transparent 22% 78%,rgba(255,255,255,.13) 78% 82%,transparent 82%),
    linear-gradient(135deg,#b61c2d,#e33643);
  clip-path:polygon(22% 2%,38% 0,42% 12%,58% 12%,62% 0,78% 2%,100% 20%,86% 36%,78% 30%,78% 100%,22% 100%,22% 30%,14% 36%,0 20%);
  box-shadow:inset 0 -10px 18px rgba(0,0,0,.18)
}
.shirt-token span{position:absolute;top:30px;font-size:.52rem;font-weight:900;color:white;text-shadow:0 1px 2px #000}
.player-name{padding:6px 5px 2px;text-align:center;font-size:.77rem;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.player-fixture{text-align:center;font-size:.64rem;color:#c4cbe0;padding:0 4px 5px}
.player-card-footer{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.08)}
.player-card-footer span{padding:5px 4px;text-align:center;font-size:.67rem;font-weight:800}
.points-cell{background:linear-gradient(90deg,#25a84b,#68cf62);color:#07172a}
.points-cell small{color:#07172a!important;font-size:.55rem;margin:0 0 0 2px;display:inline}
.price-cell{background:#143043;color:#d9f7e6}
.player-state-text{text-align:center;padding:4px;color:#77829f;font-size:.55rem;border-top:1px solid rgba(255,255,255,.05)}

.bench-zone{
  background:linear-gradient(180deg,#101834,#0b1128);border:1px solid var(--line);border-top:0;
  border-radius:0 0 13px 13px;padding:10px 13px 12px
}
.bench-title{display:block;font-size:.69rem;font-weight:850;margin-bottom:7px;color:#dce2f5}
.bench-cards{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.bench-card{width:115px;min-height:128px;opacity:.92}
.bench-card .shirt-token{height:52px}
.bench-card .shirt-token::before{width:40px;height:39px}

.team-insights{display:grid;align-content:start;gap:10px}
.dark-card{background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:13px}
.dark-card h3{font-size:.69rem;letter-spacing:.04em;margin:0 0 11px;color:#eef1ff}
.legend-list{display:grid;gap:9px;font-size:.72rem;color:#c9d0e6}
.legend-list span{display:flex;align-items:center;gap:8px}
.dot{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-style:normal;font-size:.62rem;font-weight:900}
.dot.done{background:#18d46e;color:#07172a}.dot.live{background:var(--amber);color:#201607}.dot.upcoming{border:1px solid #66708f;color:#aab3ce}.dot.warn{background:#ffd42a;color:#1b1800}
.quick-stats>div{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid var(--line)}
.quick-stats>div:last-child{border-bottom:0}
.quick-stats span{font-size:.69rem;color:#9ca7c3}.quick-stats strong{font-size:.82rem;color:var(--lime)}
.captain-box{display:flex;align-items:center;gap:8px;background:#101a39;padding:8px;border-radius:8px;margin-bottom:7px}
.captain-box span{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#511360;font-size:.64rem;font-weight:900}
.captain-box strong{font-size:.75rem}.captain-box.secondary span{background:#2a1942}

.mobile-nav{display:none}
.standalone-page{padding:18px}
.standalone-page .container{max-width:1250px}
.standalone-page .hero-card{background:var(--panel);border:1px solid var(--line)}
.standalone-page .metric-grid>div,.standalone-page .score-breakdown span{background:#0b122c;border-color:var(--line);color:#9ca7c3}
.standalone-page .metric-grid b,.standalone-page .score-breakdown b{color:#f6f8ff}

@media(max-width:1180px){
  .app-shell{grid-template-columns:215px minmax(0,1fr)}
  .app-sidebar{padding-left:10px;padding-right:10px}
  .sidebar-brand strong{font-size:1rem}
  .team-stage{grid-template-columns:minmax(0,1fr)}
  .team-insights{grid-template-columns:repeat(3,minmax(0,1fr))}
  .topbar-kpis{grid-template-columns:repeat(3,minmax(90px,1fr))}
}
@media(max-width:820px){
  .app-shell{display:block;padding-bottom:68px}
  .app-sidebar{display:none}
  .app-content .container,.team-page{padding:10px 9px 22px}
  .mobile-nav{
    position:fixed;left:7px;right:7px;bottom:7px;z-index:80;display:grid;grid-template-columns:repeat(5,1fr);
    background:rgba(7,12,29,.96);border:1px solid var(--line);border-radius:14px;padding:5px;box-shadow:0 14px 40px rgba(0,0,0,.45);
    backdrop-filter:blur(14px)
  }
  .mobile-nav a{display:grid;place-items:center;gap:2px;padding:6px 3px;color:#8e99b8;text-decoration:none;font-size:.9rem;border-radius:9px}
  .mobile-nav a span{font-size:.53rem}
  .mobile-nav a.active{background:#0b843c;color:#fff}
  .team-topbar{align-items:flex-start;flex-direction:column}
  .topbar-kpis{width:100%;grid-template-columns:repeat(3,1fr)}
  .matchday-summary{grid-template-columns:repeat(5,minmax(90px,1fr));overflow-x:auto}
  .matchday-summary>div{min-width:90px}
  .fpl-pitch{min-height:570px;padding:28px 8px 18px}
  .squad-line{gap:5px;min-height:104px}
  .fpl-player-card{width:100px;min-height:126px}
  .shirt-token{height:53px}.shirt-token::before{width:40px;height:39px}
  .player-name{font-size:.68rem}.player-fixture{font-size:.58rem}
  .player-card-footer span{font-size:.59rem}
  .team-insights{grid-template-columns:1fr}
}
@media(max-width:560px){
  .team-topbar h1{font-size:1.25rem}
  .topbar-kpis{grid-template-columns:repeat(2,1fr)}
  .topbar-kpis>div:last-child{display:none}
  .team-stage{display:block}
  .fpl-pitch{min-height:530px}
  .squad-line{justify-content:space-around}
  .fpl-player-card{width:82px;min-height:116px;border-radius:7px}
  .shirt-token{height:45px}.shirt-token::before{width:34px;height:34px}
  .shirt-token span{top:27px;font-size:.43rem}
  .player-name{font-size:.6rem;padding-left:2px;padding-right:2px}
  .player-fixture{font-size:.51rem}
  .player-card-footer span{font-size:.52rem;padding:4px 2px}
  .player-state-text{display:none}
  .player-status-icon{width:17px;height:17px;font-size:.55rem}
  .captain-badge{width:19px;height:19px;font-size:.54rem}
  .bench-card{width:78px;min-height:108px}
  .team-insights{margin-top:10px}
  .pitch-lines::before,.pitch-lines::after{width:180px}
}


/* V5.1 diagnostics */
.perf-indicator{
  margin-top:4px;
  color:#65708f!important;
  font-size:.62rem!important;
}
.compact-note{
  margin:-5px 0 10px;
  font-size:.72rem;
}


/* V5.2 — Local Premier League shirt assets */
.shirt-token.real-kit{
  height:68px;
  padding:3px 0 0;
  background:
    radial-gradient(circle at 50% 85%,rgba(184,255,57,.08),transparent 55%),
    linear-gradient(160deg,rgba(255,255,255,.035),rgba(255,255,255,0));
}
.shirt-token.real-kit::before{display:none!important}
.shirt-token.real-kit img{
  display:block;
  width:74px;
  height:58px;
  object-fit:contain;
  filter:drop-shadow(0 6px 5px rgba(0,0,0,.34));
}
.bench-card .shirt-token.real-kit{height:57px}
.bench-card .shirt-token.real-kit img{width:64px;height:50px}
@media(max-width:820px){
  .shirt-token.real-kit{height:58px}
  .shirt-token.real-kit img{width:62px;height:50px}
}
@media(max-width:560px){
  .shirt-token.real-kit{height:49px}
  .shirt-token.real-kit img{width:52px;height:43px}
}

.h2h-shell{background:linear-gradient(145deg,#0b122c,#071020);border:1px solid var(--line);border-radius:14px;padding:14px}.h2h-header{display:flex;justify-content:space-between;gap:14px;margin-bottom:12px}.h2h-header h2{margin:2px 0}.h2h-header p{margin:0;color:#8f99b9;font-size:.8rem}.h2h-rival-picker{min-width:260px}.h2h-rival-picker label{display:block;font-size:.68rem;color:#9ca7c3;margin-bottom:4px}.h2h-rival-picker select{width:100%}
.h2h-grid{display:grid;grid-template-columns:minmax(0,1fr) 250px minmax(0,1fr);gap:10px}.h2h-team-panel,.h2h-center-panel{background:linear-gradient(145deg,#101833,#091125);border:1px solid var(--line);border-radius:12px;overflow:hidden}.h2h-team-title{display:flex;justify-content:space-between;align-items:center;padding:11px 12px;border-bottom:1px solid var(--line)}.h2h-team-title strong,.h2h-team-title span{display:block}.h2h-team-title span{color:#9ca7c3;font-size:.68rem}.h2h-side-label{padding:4px 7px;border-radius:999px;font-size:.56rem!important;font-weight:900!important}.h2h-side-label.mine{background:rgba(184,255,57,.12);color:var(--lime)!important}.h2h-side-label.rival{background:rgba(255,77,87,.14);color:#ff747c!important}
.mini-pitch{position:relative;min-height:430px;display:flex;flex-direction:column;justify-content:space-around;padding:16px 8px 10px;background:radial-gradient(circle at 50% 50%,transparent 0 52px,rgba(255,255,255,.45) 53px 55px,transparent 56px),repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 54px,rgba(0,0,0,.025) 54px 108px),linear-gradient(180deg,#0a9550,#06753e)}.mini-pitch:before{content:"";position:absolute;inset:9px;border:1.5px solid rgba(255,255,255,.66)}.mini-pitch:after{content:"";position:absolute;left:9px;right:9px;top:50%;border-top:1.5px solid rgba(255,255,255,.66)}.mini-line{position:relative;z-index:2;display:flex;justify-content:space-evenly;gap:5px;min-height:82px;align-items:center}
.mini-player{position:relative;width:88px;min-height:91px;border-radius:7px;background:linear-gradient(180deg,rgba(10,19,43,.97),rgba(4,10,24,.97));border:1px solid rgba(255,255,255,.15);text-decoration:none;color:#fff;padding:4px;display:grid;justify-items:center}.mini-player img{width:52px;height:40px;object-fit:contain}.mini-player strong{max-width:80px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.61rem}.mini-player small{font-size:.5rem;color:#b9c2da}.mini-player>div{width:100%;display:flex;justify-content:space-between;font-size:.49rem}.mini-player>div span:first-child{color:var(--lime)}.mini-player.mine-player{box-shadow:0 0 0 1px rgba(184,255,57,.28)}.mini-player.rival-player{box-shadow:0 0 0 1px rgba(255,77,87,.3)}
.mini-captain{position:absolute;left:3px;top:3px;width:17px;height:17px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#511360;font-size:.5rem;font-weight:900}.mini-captain.vc{background:#2b173e}.mini-bench{display:flex;gap:5px;justify-content:center;flex-wrap:wrap;padding:8px;background:#081022}.mini-player.bench{width:80px;min-height:83px}
.h2h-center-panel{padding:13px}.h2h-center-panel>.eyebrow{text-align:center;margin-bottom:6px}.compare-stat-row{display:grid;grid-template-columns:1fr 96px 1fr;gap:5px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.compare-stat-row strong:last-child{text-align:right}.compare-stat-row span{text-align:center;color:#8f99b9;font-size:.62rem}.h2h-player-counts{margin-top:10px}.h2h-player-counts h3{text-align:center;font-size:.64rem;color:#aeb6ce}.h2h-player-counts>div{display:grid;grid-template-columns:1fr 96px 1fr;gap:5px;padding:5px 0}.h2h-player-counts strong:first-child{color:var(--lime)}.h2h-player-counts strong:last-child{text-align:right;color:#ff747c}.h2h-player-counts span{text-align:center;color:#8f99b9;font-size:.6rem}.h2h-common-summary{margin-top:12px;padding:9px;border-radius:9px;text-align:center;background:#091730}.h2h-common-summary strong,.h2h-common-summary span{display:block}.h2h-common-summary span{color:#8f99b9;font-size:.58rem}.h2h-legend{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:9px;color:#9ca7c3;font-size:.65rem}.legend-chip{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:5px}.legend-chip.common{background:#66708a}.legend-chip.mine{background:var(--lime)}.legend-chip.rival{background:#ff5a64}
@media(max-width:980px){.h2h-grid{grid-template-columns:1fr}.h2h-center-panel{order:2}.h2h-team-panel:first-child{order:1}.h2h-team-panel:last-child{order:3}}@media(max-width:620px){.h2h-header{flex-direction:column}.h2h-rival-picker{width:100%;min-width:0}.mini-player{width:68px;min-height:82px}.mini-player img{width:44px;height:34px}.mini-line{min-height:76px}}


/* V5.4 — Mon équipe séparé du Face à face */
.myteam-shell{
  background:linear-gradient(145deg,#0b122c,#071020);
  border:1px solid var(--line);
  border-radius:14px;
  padding:14px;
}
.myteam-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-bottom:12px;
}
.myteam-header h2{margin:2px 0}
.myteam-header p{margin:0;color:#8f99b9;font-size:.8rem}
.myteam-summary-inline{
  display:grid;
  grid-template-columns:repeat(4,minmax(90px,1fr));
  gap:6px;
}
.myteam-summary-inline>div{
  background:#0d1730;
  border:1px solid var(--line);
  border-radius:9px;
  padding:8px 10px;
  text-align:center;
}
.myteam-summary-inline span{
  display:block;
  font-size:.58rem;
  color:#8f99b9;
}
.myteam-summary-inline strong{
  display:block;
  margin-top:3px;
  font-size:.88rem;
  color:#fff;
}
.myteam-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 220px;
  gap:10px;
}
.myteam-pitch-card{
  background:linear-gradient(145deg,#101833,#091125);
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden;
}
.myteam-pitch{
  min-height:540px;
}
.myteam-player{
  width:96px;
  min-height:98px;
  box-shadow:0 0 0 1px rgba(184,255,57,.10),0 5px 12px rgba(0,0,0,.2);
}
.myteam-player:hover{
  box-shadow:0 0 0 1px rgba(184,255,57,.38),0 7px 14px rgba(0,0,0,.25);
}
.myteam-bench{
  padding:10px;
}
.myteam-side{
  display:grid;
  align-content:start;
  gap:10px;
}
.mini-diff-list{
  display:grid;
  gap:5px;
}
.mini-diff-list a{
  display:flex;
  justify-content:space-between;
  gap:8px;
  padding:7px 8px;
  border-radius:7px;
  background:#0d1730;
  color:#e9eefc;
  text-decoration:none;
  font-size:.68rem;
}
.mini-diff-list strong{
  color:var(--lime);
}
.quick-action{
  display:block;
  color:#dbe2f8;
  text-decoration:none;
  padding:8px 0;
  border-bottom:1px solid var(--line);
  font-size:.7rem;
}
.quick-action:last-child{border-bottom:0}
.quick-action:hover{color:var(--lime)}

@media(max-width:980px){
  .myteam-grid{grid-template-columns:1fr}
  .myteam-side{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
  .myteam-header{flex-direction:column}
  .myteam-summary-inline{width:100%;grid-template-columns:repeat(2,1fr)}
  .myteam-side{grid-template-columns:1fr}
}


/* V5.5 — Decision Center redesign */
.dc-shell{background:linear-gradient(145deg,#0b122c,#071020);border:1px solid var(--line);border-radius:14px;padding:14px}
.dc-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:12px}
.dc-header h2{margin:2px 0}.dc-header p{margin:0;color:#8f99b9;font-size:.8rem}
.dc-method{max-width:420px;font-size:.68rem;color:#9ca7c3}.dc-method summary{cursor:pointer;color:#dce3f7;font-weight:800}.dc-method p{margin:7px 0}
.dc-lab-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.dc-tool{display:grid;grid-template-columns:160px minmax(0,1fr) auto minmax(0,1fr) auto;gap:7px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:11px;background:#0b142d}
.dc-tool>div strong{display:block;font-size:.78rem}.dc-arrow{color:var(--lime);font-weight:900;font-size:.7rem}.dc-tool select{min-width:0}.dc-tool button{min-height:38px;padding:8px 12px}
.dc-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dc-panel{background:linear-gradient(145deg,#101833,#091125);border:1px solid var(--line);border-radius:12px;padding:11px}
.dc-panel-head{display:flex;gap:9px;align-items:center;margin-bottom:9px}.dc-icon{font-size:1.15rem}.dc-panel-head h3{margin:0;font-size:.88rem}.dc-panel-head p{margin:2px 0 0;color:#8792b1;font-size:.62rem}
.dc-cards{display:grid;gap:6px}
.dc-player-card{display:block;padding:8px;border-radius:9px;background:#0a132b;border:1px solid rgba(255,255,255,.065);color:#f5f7ff;text-decoration:none;transition:.15s}
.dc-player-card:hover{transform:translateY(-1px);border-color:rgba(184,255,57,.3)}
.dc-player-main{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:8px;align-items:center}
.dc-score-ring{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#172441;border:1px solid #2d406a;font-size:.68rem;font-weight:900}
.dc-risk .dc-score-ring{color:#ff7c84;border-color:rgba(255,77,87,.34);background:rgba(255,77,87,.08)}
.dc-buy .dc-score-ring{color:var(--lime);border-color:rgba(184,255,57,.3);background:rgba(184,255,57,.07)}
.dc-threat .dc-score-ring{color:#ffbe37;border-color:rgba(255,184,46,.32);background:rgba(255,184,46,.07)}
.dc-diff .dc-score-ring{color:#a9b8ff;border-color:rgba(128,148,255,.28);background:rgba(128,148,255,.07)}
.dc-player-main strong{display:block;font-size:.72rem}.dc-player-main small{display:block;color:#8994b2;font-size:.56rem;margin-top:2px}
.dc-action{font-size:.55rem;font-weight:850;color:#aab5d3;text-align:right}
.dc-mini-metrics{display:flex;gap:5px;margin-top:6px;padding-left:50px;flex-wrap:wrap}.dc-mini-metrics span{background:#101b37;border-radius:5px;padding:3px 5px;color:#7f8aa8;font-size:.51rem}.dc-mini-metrics b{color:#dce3f7;margin-left:2px}
.gw-picker{min-width:170px}.gw-picker label{display:block;color:#8f99b9;font-size:.6rem;margin-bottom:3px}.gw-picker select{width:100%;background:#0b122c;color:#fff;border:1px solid #26335c;border-radius:7px;padding:7px}
@media(max-width:1050px){.dc-lab-row,.dc-grid{grid-template-columns:1fr}.dc-tool{grid-template-columns:130px minmax(0,1fr) auto minmax(0,1fr) auto}}
@media(max-width:700px){.dc-header{flex-direction:column}.dc-tool{grid-template-columns:1fr}.dc-arrow{display:none}.dc-player-main{grid-template-columns:38px minmax(0,1fr)}.dc-action{grid-column:2;text-align:left}.dc-mini-metrics{padding-left:46px}}


/* V5.6 — Decision Center filters */
.dc-filters{
  margin-bottom:12px;
  padding:11px;
  border:1px solid var(--line);
  border-radius:11px;
  background:linear-gradient(145deg,#0d1731,#091126);
}
.dc-filter-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.dc-filter-head strong{
  display:block;
  font-size:.78rem;
}
.dc-reset-btn{
  min-height:34px!important;
  padding:6px 10px!important;
  font-size:.65rem!important;
  background:#101a36!important;
}
.dc-filter-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
}
.dc-filter-grid label>span{
  display:block;
  margin-bottom:4px;
  color:#8f99b9;
  font-size:.57rem;
  font-weight:700;
}
.dc-filter-grid select,
.dc-filter-grid input[type="range"]{
  width:100%;
}
.dc-price-wrap{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:7px;
  align-items:center;
  min-height:36px;
}
.dc-price-wrap input[type="range"]{
  accent-color:var(--lime);
}
.dc-price-wrap output{
  color:var(--lime);
  font-size:.65rem;
  font-weight:850;
  white-space:nowrap;
}
.dc-filter-summary{
  margin-top:8px;
  color:#7f8aa8;
  font-size:.58rem;
}
.dc-empty-state{
  padding:15px 8px;
  text-align:center;
  color:#7783a1;
  font-size:.66rem;
  border:1px dashed rgba(255,255,255,.08);
  border-radius:8px;
}
.dc-player-card[hidden]{
  display:none!important;
}
@media(max-width:1100px){
  .dc-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
  .dc-filter-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
  .dc-filter-grid{grid-template-columns:1fr}
}

/* V6.3 suite roadmap */
.v63-head{margin-bottom:12px}.v63-head h2{margin:2px 0}.v63-head p{margin:0;color:#8f99b9;font-size:.75rem}
.v63-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#091126}.v63-table{width:100%;border-collapse:collapse;min-width:1050px}.v63-table th,.v63-table td{padding:8px;border-bottom:1px solid var(--line);font-size:.62rem;text-align:center}.v63-table th:first-child{text-align:left;position:sticky;left:0;background:#0b142d}.fdr{display:block;padding:6px;border-radius:6px;background:#16213d}.fdr-2{background:#0d5138}.fdr-3{background:#58491d}.fdr-4,.fdr-5{background:#592436}
.v63-cardgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.v63-player,.v63-plan,.v63-alert{background:linear-gradient(145deg,#101833,#091125);border:1px solid var(--line);border-radius:10px;padding:10px}.v63-player strong,.v63-player small{display:block}.v63-player small,.v63-plan small,.v63-alert small{color:#8f99b9;font-size:.58rem}.xpts{display:inline-block;color:var(--lime);font-weight:900;margin:6px 0}.v63-metrics{display:flex;gap:5px;flex-wrap:wrap}.v63-metrics span{background:#111c39;padding:4px;border-radius:5px;font-size:.55rem}.v63-player form{margin-top:8px}.v63-player.compact{display:grid;grid-template-columns:1fr auto;align-items:center}.v63-player.compact form{grid-column:1/-1}
.v63-sub{margin:18px 0 8px}.v63-planform{display:grid;grid-template-columns:150px 70px 1fr auto 1fr auto;gap:7px;margin-bottom:12px;padding:10px;background:#0b142d;border:1px solid var(--line);border-radius:10px}.v63-plan>span{color:var(--lime);font-size:.6rem}.v63-plan h3{margin:4px 0}.v63-plan p{font-size:.7rem}.v63-plan>div{display:flex;justify-content:space-between}.good{color:var(--lime)}.bad{color:#ff747c}
.v63-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v63-row{display:grid;grid-template-columns:1fr auto auto auto;gap:8px;padding:8px;border-bottom:1px solid var(--line);font-size:.62rem}.v63-row span{color:#9ba6c3}.v63-alert{position:relative}.v63-alert p{margin:7px 0 0;color:#c3cae0;font-size:.62rem}.status-pill{position:absolute;right:8px;top:8px;border-radius:999px;background:#552432;color:#ff9ba1;padding:3px 7px;font-size:.55rem}
@media(max-width:900px){.v63-cardgrid{grid-template-columns:1fr 1fr}.v63-two{grid-template-columns:1fr}.v63-planform{grid-template-columns:1fr}}@media(max-width:600px){.v63-cardgrid{grid-template-columns:1fr}}


/* V6.3.2 — client-side navigation diagnostics */
.local-nav-badge{
  color:#59d98e!important;
  font-size:.55rem!important;
  opacity:.8;
}

.agent-export-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px;border:1px solid var(--line);border-radius:13px;background:linear-gradient(135deg,#101a39,#0a132c 70%,#073523);margin-bottom:10px}.agent-export-hero h3{margin:3px 0}.agent-export-hero p{margin:0;color:#929db9;font-size:.7rem}.agent-export-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.agent-download-btn{display:inline-flex;align-items:center;min-height:40px;padding:0 13px;border-radius:8px;background:#128647;color:#fff;text-decoration:none;font-size:.68rem;font-weight:850}.agent-export-sections{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.agent-export-sections article{padding:10px;background:linear-gradient(145deg,#101833,#091125);border:1px solid var(--line);border-radius:9px}.agent-export-sections strong,.agent-export-sections span{display:block}.agent-export-sections strong{font-size:.7rem}.agent-export-sections span{margin-top:3px;color:#8590ad;font-size:.56rem}@media(max-width:900px){.agent-export-sections{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.agent-export-hero{flex-direction:column;align-items:flex-start}.agent-export-sections{grid-template-columns:1fr}}


/* =========================================================
   V6.5 — Admin Data Center
   ========================================================= */
.sidebar-section-label{margin:12px 11px 4px;color:#596582;font-size:.5rem;font-weight:900;letter-spacing:.13em}
.data-health-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:6px;margin:10px 0}
.data-health-item{display:flex;align-items:center;gap:7px;padding:8px 10px;background:#0b142d;border:1px solid var(--line);border-radius:9px}
.data-health-item strong,.data-health-item small{display:block}.data-health-item strong{font-size:.62rem}.data-health-item small{font-size:.52rem;color:#8f99b9;margin-top:2px}
.health-dot{width:8px;height:8px;border-radius:50%;background:#69748f}.state-fresh .health-dot{background:#23d879}.state-stale .health-dot{background:#ffbd36}.state-old .health-dot,.state-missing .health-dot{background:#ff5963}.state-inactive .health-dot{background:#56617c}
.data-health-admin{display:flex;align-items:center;justify-content:center;padding:8px 10px;border-radius:9px;background:#111c3c;color:#dbe4fb;text-decoration:none;font-size:.6rem;font-weight:800}
.admin-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:10px}.admin-head h2{margin:2px 0}.admin-head p{margin:0;color:#8f99b9;font-size:.72rem}
.admin-mode-form{display:flex;align-items:center;gap:8px;padding:7px 9px;border:1px solid var(--line);border-radius:9px;background:#0b142d;font-size:.65rem}.admin-mode-form button{min-height:30px;padding:5px 9px;background:#3b2942}.admin-mode-form button.admin-on{background:#0d813e;color:#fff}
.smart-refresh-card{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px;margin-bottom:10px;border:1px solid rgba(184,255,57,.18);border-radius:12px;background:linear-gradient(135deg,#111b38,#0b152d 65%,#073321)}
.smart-refresh-card h3{margin:3px 0}.smart-refresh-card p{margin:0;color:#8f99b9;font-size:.66rem}.smart-plan{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.smart-action,.smart-skip{padding:4px 6px;border-radius:6px;background:#12213d;font-size:.54rem}.smart-action{color:#ffcd5b}.smart-skip{color:#67e398}.smart-refresh-btn{background:linear-gradient(135deg,#109149,#087039)!important;white-space:nowrap}
.admin-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:10px}.admin-card{padding:11px;background:linear-gradient(145deg,#101833,#091125);border:1px solid var(--line);border-radius:11px}.admin-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.admin-card-head h3{margin:0;font-size:.78rem}.admin-card-head span{color:#8590ad;font-size:.56rem}
.source-list{display:grid;gap:5px}.source-row{display:grid;grid-template-columns:82px minmax(0,1fr) 110px 74px;gap:8px;align-items:center;padding:8px;background:#0a132b;border-radius:8px}.source-state{display:flex;align-items:center;gap:5px;font-size:.52rem}.source-state i{width:7px;height:7px;border-radius:50%;background:#68738f}.source-state.state-fresh i{background:#23d879}.source-state.state-stale i{background:#ffbd36}.source-state.state-old i,.source-state.state-missing i{background:#ff5963}.source-state.state-inactive i{background:#56617c}.source-info strong,.source-info small{display:block}.source-info strong{font-size:.64rem}.source-info small{font-size:.51rem;color:#8792ae}.source-ttl{font-size:.53rem;color:#8e99b5}.source-action form{margin:0}.source-action button{min-height:29px;padding:4px 7px;font-size:.55rem}.source-action button:disabled{opacity:.35;cursor:not-allowed}
.picks-admin-state{display:flex;align-items:center;gap:10px;padding:10px;background:#0a132b;border-radius:8px}.big-state{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#27324f}.big-state.locked{background:#28354a}.big-state.complete{background:#0b6937}.big-state.partial{background:#5b4515}.picks-admin-state strong{font-size:.7rem}.picks-admin-state p{margin:3px 0 0;color:#8792ae;font-size:.56rem}.admin-picks-btn{width:100%;margin-top:8px}
.api-total{font-size:2rem;font-weight:900;color:var(--lime);margin-bottom:7px}.api-total small{font-size:.58rem;color:#8893af}.api-kind-list{display:grid;gap:3px}.api-kind-list div{display:flex;justify-content:space-between;padding:5px 7px;background:#0b142d;border-radius:6px;font-size:.57rem}.api-week{height:105px;display:flex;align-items:flex-end;gap:6px;margin:9px 0;padding-top:5px;border-top:1px solid var(--line)}.api-week div{flex:1;display:flex;height:100%;flex-direction:column;justify-content:flex-end;align-items:center;gap:2px}.api-week i{display:block;width:70%;max-height:70px;background:linear-gradient(#1bb968,#0b723c);border-radius:3px 3px 0 0}.api-week span,.api-week strong{font-size:.48rem;color:#8994b0}.policy-list{display:grid;gap:4px}.policy-list div{display:flex;justify-content:space-between;gap:8px;padding:7px;background:#0a132b;border-radius:6px}.policy-list strong{font-size:.58rem}.policy-list span{font-size:.53rem;color:#8e99b5;text-align:right}.admin-note{color:#6f7b99;font-size:.55rem;margin:9px 0 0}.admin-disabled{padding:30px;text-align:center;background:#0b142d;border:1px solid var(--line);border-radius:11px}.admin-disabled p{color:#8f99b9;font-size:.65rem}
@media(max-width:1050px){.data-health-strip{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}.source-row{grid-template-columns:75px 1fr 90px 70px}}
@media(max-width:650px){.data-health-strip{grid-template-columns:1fr}.admin-head,.smart-refresh-card{flex-direction:column;align-items:flex-start}.source-row{grid-template-columns:70px 1fr}.source-ttl,.source-action{grid-column:2}.source-action button{width:100%}}


/* =========================================================
   V6.6 — UX consistency, planner, live & filters
   ========================================================= */
.planner-v66{display:grid;grid-template-columns:170px 115px minmax(0,1fr) auto minmax(0,1fr) auto;gap:8px;align-items:end;padding:12px;background:#0b142d;border:1px solid var(--line);border-radius:11px}
.planner-field label,.planner-filterbar label{display:block;color:#8792ae;font-size:.55rem;margin-bottom:4px;font-weight:800}.planner-field small{display:block;color:#68738f;font-size:.48rem;margin-top:3px}.planner-field input,.planner-field select{width:100%}.planner-arrow{padding-bottom:11px;color:var(--lime);font-weight:900}.planner-add-btn{min-height:39px}
.planner-filterbar{display:grid;grid-template-columns:1.2fr .7fr .9fr .6fr .7fr;gap:7px;margin:8px 0;padding:9px;border-radius:10px;background:#091125;border:1px solid var(--line)}.planner-filterbar input,.planner-filterbar select{width:100%}
.planner-projection{display:flex;align-items:center;gap:7px;padding:7px 9px;margin-bottom:9px;border-radius:8px;background:rgba(184,255,57,.055);border:1px solid rgba(184,255,57,.13);font-size:.6rem}.planner-projection .eyebrow{margin:0!important}.planner-projection span:last-child{color:#8290ac}
.simple-filterbar{display:grid;grid-template-columns:1.2fr .7fr .8fr .8fr .55fr auto;gap:7px;margin-bottom:5px;padding:9px;background:#0b142d;border:1px solid var(--line);border-radius:10px}.simple-filterbar input,.simple-filterbar select{width:100%}.filter-count{font-size:.55rem;color:#7e89a6;margin:0 0 8px 3px}
.live-intro{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px;margin-bottom:9px;background:linear-gradient(135deg,#101a39,#0b142d 68%,#102c25);border:1px solid var(--line);border-radius:12px}.live-intro h2{margin:3px 0}.live-intro p{max-width:760px;margin:0;color:#919db9;font-size:.68rem}.live-admin-link{padding:8px 11px;border-radius:8px;background:#10203f;color:#dbe4fa;text-decoration:none;font-size:.6rem;font-weight:800;white-space:nowrap}
.live-empty-state{padding:22px;text-align:center;background:#0b142d;border:1px dashed #263353;border-radius:11px;margin-bottom:9px}.live-empty-state p{color:#8792ae;font-size:.63rem}
.live-ranking-card{padding:11px;background:linear-gradient(145deg,#101833,#091125);border:1px solid var(--line);border-radius:11px;margin-bottom:9px}.live-ranking-card h2{margin:2px 0}.live-ranking-card p{margin:0;color:#8994b1;font-size:.62rem}.live-table td,.live-table th{background:transparent!important}
.live-insight-grid-v66{display:grid;grid-template-columns:1fr 1fr;gap:9px}.live-insight-card{padding:12px;border-radius:11px;border:1px solid var(--line);background:linear-gradient(145deg,#101833,#091125)}.live-insight-card.danger{border-top:2px solid #ff5963}.live-insight-card.edge{border-top:2px solid var(--lime)}.live-insight-head{display:flex;align-items:center;gap:8px}.live-insight-head>span{font-size:1.2rem}.live-insight-card h3{margin:1px 0}.live-insight-card>p{color:#8792ae;font-size:.58rem;margin:4px 0 9px}
.live-player-row-v66{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px;margin-bottom:5px;border-radius:8px;background:#0a132b;border:1px solid rgba(255,255,255,.06);color:#f1f4ff;text-decoration:none}.live-player-row-v66:hover{border-color:rgba(184,255,57,.23)}.live-player-row-v66 strong,.live-player-row-v66 small{display:block}.live-player-row-v66 strong{font-size:.65rem}.live-player-row-v66 small{color:#8390ad;font-size:.51rem}.live-score-box{text-align:right;min-width:42px}.live-score-box strong{font-size:.85rem;color:var(--lime)}
.history-readonly-note{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px;margin-bottom:9px;border-radius:10px;background:#0b142d;border:1px solid var(--line)}.history-readonly-note strong{display:block;font-size:.68rem}.history-readonly-note p{margin:3px 0 0;color:#8590ad;font-size:.55rem}.history-readonly-note a{color:#dce4f8;text-decoration:none;font-size:.58rem;white-space:nowrap}
.bulk-cache-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:7px}.bulk-cache-grid div{padding:8px;background:#0a132b;border-radius:7px;text-align:center}.bulk-cache-grid strong,.bulk-cache-grid span{display:block}.bulk-cache-grid strong{color:var(--lime)}.bulk-cache-grid span{font-size:.52rem;color:#8894b0}.bulk-refresh-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.bulk-refresh-actions>div{padding:7px;background:#0a132b;border-radius:7px}.bulk-refresh-actions button{width:100%}.bulk-refresh-actions small{display:block;margin:4px 0;color:#7f8aa6;font-size:.5rem}
.trend-meta{display:block;color:#7985a2;font-size:.48rem;margin-top:2px}
.matchday-data-note{display:flex;align-items:center;gap:10px;padding:9px 11px;margin-bottom:9px;background:#0b142d;border:1px solid var(--line);border-radius:9px}.matchday-data-note>span{color:#7aa9ff}.matchday-data-note>div{flex:1}.matchday-data-note strong{font-size:.68rem}.matchday-data-note p{margin:2px 0 0;color:#8792ae;font-size:.55rem}.matchday-data-note a{color:#dbe4f8;text-decoration:none;font-size:.58rem}
@media(max-width:1100px){.planner-v66{grid-template-columns:1fr 120px 1fr auto 1fr}.planner-add-btn{grid-column:1/-1}.planner-filterbar{grid-template-columns:repeat(3,1fr)}}@media(max-width:800px){.live-insight-grid-v66{grid-template-columns:1fr}.simple-filterbar{grid-template-columns:1fr 1fr}.planner-filterbar{grid-template-columns:1fr 1fr}.live-intro{flex-direction:column;align-items:flex-start}}@media(max-width:560px){.planner-v66{grid-template-columns:1fr}.planner-arrow{display:none}.planner-filterbar,.simple-filterbar{grid-template-columns:1fr}.bulk-refresh-actions{grid-template-columns:1fr}.history-readonly-note,.matchday-data-note{flex-direction:column;align-items:flex-start}}


/* V6.7 */
.player-nav-row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.player-nav-row form{margin:0}.watch-toggle{min-height:36px!important;padding:7px 11px!important}.watch-toggle.add{background:linear-gradient(135deg,#0d813e,#075c30)!important}.watch-toggle.remove{background:linear-gradient(135deg,#543049,#382238)!important}
.scenario-capacity{display:inline-flex;margin-top:7px;padding:4px 7px;border-radius:6px;background:#101b37;color:#91a0c1;font-size:.55rem}
.planner-scenarios{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.planner-scenario-card{padding:11px;background:linear-gradient(145deg,#101833,#091125);border:1px solid var(--line);border-radius:11px}.planner-scenario-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:8px}.planner-scenario-head h3{margin:2px 0}.planner-scenario-head small{color:#8490ad;font-size:.53rem}.scenario-reset-btn{min-height:31px!important;padding:5px 8px!important;background:#3d2635!important;font-size:.55rem!important}.scenario-timeline{display:grid;gap:5px}.scenario-transfer{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px;background:#0a132b;border-radius:7px}.scenario-gw{display:inline-flex;justify-content:center;padding:4px;border-radius:5px;background:#132440;color:var(--lime);font-size:.55rem;font-weight:900}.scenario-transfer>div{display:flex;align-items:center;gap:6px;font-size:.64rem}.scenario-transfer>div span{color:var(--lime)}.scenario-transfer>small{color:#8894b1;font-size:.5rem;text-align:right}
.trend-player-link{color:#f1f4ff;text-decoration:none}.trend-player-link:hover strong{color:var(--lime)}
@media(max-width:850px){.planner-scenarios{grid-template-columns:1fr}.player-nav-row{align-items:flex-start;flex-direction:column}}
/* V6.8 — isolated developer environment */
.dev-global-banner{position:sticky;top:0;z-index:9999;padding:7px 12px;text-align:center;background:#7a261f;color:#fff4dc;font-size:.62rem;font-weight:900;letter-spacing:.08em;border-bottom:1px solid #d35a48}
.dev-environment .app-sidebar{border-right-color:#7a352c}.dev-environment .sidebar-brand{background:linear-gradient(135deg,rgba(122,38,31,.25),transparent)}
.dev-lab-card{border-top:2px solid #e77d49}.dev-env-status,.prod-env-status{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.dev-env-status span,.dev-env-status strong,.prod-env-status span,.prod-env-status strong{padding:5px 7px;border-radius:6px;background:#0a132b;font-size:.54rem}.dev-env-status strong{color:#ffb36b}.prod-env-status strong{color:#6ee39a}
.dev-sim-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:8px 0}.dev-sim-meta div{padding:8px;border-radius:7px;background:#0a132b}.dev-sim-meta small,.dev-sim-meta strong{display:block}.dev-sim-meta small{color:#8290ad;font-size:.48rem}.dev-sim-meta strong{font-size:.65rem;margin-top:2px}


/* V6.9 — Simulation Engine */
.sim-stage-header{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin:9px 0}.sim-stage-header>div{padding:9px;background:#0a132b;border-radius:7px}.sim-stage-header strong{display:block;margin-top:2px}.sim-state{font-size:.7rem!important}.sim-ready{color:#a8b5d3}.sim-deadline{color:#ffd15e}.sim-matchday{color:#ff9e55}.sim-market{color:#73b8ff}.sim-finished{color:#65e194}
.sim-phase-track{display:flex;align-items:center;gap:0;padding:9px 5px;margin:8px 0;background:#081122;border-radius:8px;overflow:auto}.sim-phase{display:flex;align-items:center;flex:1;min-width:80px;color:#65728f;font-size:.48rem;font-weight:800}.sim-phase:after{content:"";height:2px;flex:1;background:#25314e;margin:0 4px}.sim-phase:last-child:after{display:none}.sim-phase i{width:9px;height:9px;border-radius:50%;background:#34405d;margin-right:4px}.sim-phase.active{color:#fff}.sim-phase.active i{background:#ff8e54;box-shadow:0 0 0 4px rgba(255,142,84,.12)}
.sim-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:8px 0}.sim-kpis div{padding:8px;background:#0a132b;border-radius:7px;text-align:center}.sim-kpis strong,.sim-kpis span{display:block}.sim-kpis strong{font-size:.8rem;color:#f0f3ff}.sim-kpis span{font-size:.48rem;color:#8290ad}
.sim-primary-actions{display:flex;gap:7px;margin:9px 0}.sim-primary-actions form{margin:0}.sim-next-btn{background:linear-gradient(135deg,#a34b2f,#773323)!important}.sim-manual-controls{margin-top:8px;border-top:1px solid var(--line);padding-top:8px}.sim-manual-controls summary{cursor:pointer;color:#aab5cf;font-size:.56rem}.sim-manual-controls>div{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.sim-manual-controls form{margin:0}.sim-manual-controls button{min-height:30px;padding:5px 7px;font-size:.51rem}.sim-last-action{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;margin-top:8px;padding:7px;background:#081122;border-radius:6px;font-size:.52rem}.sim-last-action span{color:#7d89a5}.sim-last-action small{grid-column:2;color:#66728e}.sim-reset-form{margin-top:9px}.sim-reset-form button{width:100%;background:#392c39!important}.dev-not-initialized{padding:13px;background:#0a132b;border-radius:8px}.dev-not-initialized p{margin:3px 0 0;color:#8792ae;font-size:.55rem}
@media(max-width:650px){.sim-stage-header,.sim-kpis{grid-template-columns:1fr 1fr}.sim-primary-actions{flex-direction:column}.sim-primary-actions button{width:100%}}

/* V6.9.1 hotfix */
.dev-smart-disabled{padding:8px 10px;border-radius:7px;background:#382b2f;color:#e6b5aa;font-size:.55rem;font-weight:750}

/* V6.9.2 */
.fixture-empty-state{
  padding:24px;
  border:1px dashed #34415f;
  border-radius:11px;
  background:#0b142d;
  text-align:center;
}
.fixture-empty-state strong{display:block;font-size:.8rem}
.fixture-empty-state p{margin:6px auto 12px;max-width:720px;color:#8995b1;font-size:.62rem}
.fixture-empty-state a{display:inline-flex;padding:7px 10px;border-radius:7px;background:#142143;color:#eef3ff;text-decoration:none;font-size:.58rem;font-weight:800}


/* V6.9.3 — Matchday GW selector */
.gw-picker-v693{
  min-width:220px;
  padding:8px 10px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#0b142d;
}
.gw-picker-v693 label{
  display:block;
  margin-bottom:4px;
  color:#8f99b9;
  font-size:.56rem;
  font-weight:800;
}
.gw-picker-v693 select{
  width:100%;
  background:#0a132b;
  color:#fff;
  border:1px solid #26335c;
  border-radius:7px;
  padding:7px;
}
.gw-picker-v693 small{
  display:block;
  margin-top:4px;
  color:#74809d;
  font-size:.49rem;
  line-height:1.35;
}

/* V6.9.4 */
.planner-field.scenario-field select,
.planner-field.gw-field select{
  width:100%;
  min-height:38px;
}


/* V6.9.5 — Face-to-face player comparison */
.mini-player.common-active{
  filter:grayscale(.85);
  opacity:.58;
  border-color:rgba(180,188,205,.22)!important;
  box-shadow:none!important;
}
.mini-player.h2h-selectable{cursor:pointer}
.mini-player.h2h-selectable:hover{
  transform:translateY(-2px);
  opacity:1;
  filter:none;
  border-color:rgba(184,255,57,.45)!important;
}
.mini-player.compare-selected{
  opacity:1!important;
  filter:none!important;
  box-shadow:0 0 0 2px var(--lime),0 6px 16px rgba(0,0,0,.25)!important;
}
.h2h-compare-hint{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;padding:9px;margin-top:9px;border:1px dashed #34415f;border-radius:8px;background:#091226;font-size:.58rem}.h2h-compare-hint strong{color:#eef3ff}.h2h-compare-hint small{width:100%;text-align:center;color:#7783a0}
.h2h-player-analysis{margin-top:10px;padding:13px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(145deg,#0f1832,#081122)}
.h2h-analysis-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.h2h-analysis-head h3{margin:2px 0}.h2h-analysis-head p{margin:0;color:#8490ad;font-size:.58rem}.h2h-analysis-head a{color:#cdd6ee;text-decoration:none;font-size:.56rem}
.h2h-player-hero{display:grid;grid-template-columns:1fr 50px 1fr;gap:8px;align-items:center;margin:10px 0}.h2h-player-hero article{padding:10px;border-radius:9px;background:#0a132b;text-align:center}.h2h-player-hero strong,.h2h-player-hero span,.h2h-player-hero small{display:block}.h2h-player-hero strong{font-size:.8rem}.h2h-player-hero span{font-size:.56rem;color:#8b97b2;margin-top:2px}.h2h-player-hero small{font-size:.53rem;color:var(--lime);margin-top:4px}.vs-orb{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:auto;background:#25143a;color:#fff;font-size:.65rem;font-weight:900}
.h2h-metric-table{display:grid;gap:4px}.h2h-metric-row{display:grid;grid-template-columns:1fr 120px 1fr;align-items:center;gap:7px;padding:7px 9px;border-radius:6px;background:#0a132b}.h2h-metric-row span{text-align:center;color:#7f8ba8;font-size:.54rem}.h2h-metric-row strong:last-child{text-align:right}.h2h-metric-row .winner{color:var(--lime)}
.h2h-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:9px}.h2h-detail-grid>section{padding:9px;background:#0a132b;border-radius:8px}.h2h-detail-grid h4{margin:0 0 6px;font-size:.63rem}.h2h-detail-row{display:grid;grid-template-columns:1fr 70px 70px;gap:6px;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.04);font-size:.53rem}.h2h-detail-row span{color:#7f8ba8}.h2h-detail-row strong{text-align:right}.fixture-duel{display:grid;grid-template-columns:1fr 1fr;gap:6px}.fixture-duel>div{display:grid;gap:3px}.fixture-duel span{padding:4px 5px;background:#101b37;border-radius:5px;font-size:.5rem}
@media(max-width:750px){.h2h-player-hero{grid-template-columns:1fr}.vs-orb{order:2}.h2h-detail-grid{grid-template-columns:1fr}.h2h-metric-row{grid-template-columns:1fr 90px 1fr}}

/* V8.2.1-H1 — H2H common-active distinction */
.mini-player.common-squad-only{
  opacity:1;
  filter:none;
}
.gw-point-source{
  display:block;
  margin-top:2px;
  color:#667493;
  font-size:.42rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.06em;
}

/* V8.2.1-H2 */
.player-point-source{
  margin-left:4px;
  opacity:.55;
  font-size:.42rem;
  text-transform:uppercase;
}

/* V8.2.1-H3 */
.source-action form button{white-space:nowrap;}

/* V8.3.0 — authentication / multi-user */
.auth-body,.admin-users-body{min-height:100vh;background:radial-gradient(circle at 50% 0,#17254a 0,#081020 48%,#050a14 100%);color:#eef3ff}
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:20px}
.auth-card{width:min(420px,100%);padding:28px;border:1px solid #253354;border-radius:18px;background:rgba(9,18,38,.94);box-shadow:0 24px 70px rgba(0,0,0,.38)}
.auth-card h1{margin:6px 0}.auth-card>p{color:#8d99b5}.auth-ball{font-size:2rem}
.auth-form{display:grid;gap:13px;margin-top:20px}.auth-form label{display:grid;gap:6px;font-size:.72rem;color:#a9b4cd}.auth-form input{padding:12px;border:1px solid #2a385c;border-radius:9px;background:#071126;color:#fff}
.auth-form button,.admin-create-user button,.user-actions button{padding:11px 14px;border:0;border-radius:9px;background:#b8ff39;color:#071018;font-weight:900;cursor:pointer}
.auth-error,.auth-notice{padding:10px 12px;margin:12px 0;border-radius:9px;background:#34182a;border:1px solid #6e294a}.auth-notice{background:#112846;border-color:#27517e}
.auth-link{display:inline-block;margin-top:14px;color:#aab6d2}
.account-strip{position:relative;z-index:50;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 16px;background:#050b18;border-bottom:1px solid #1d2944;color:#aeb9d2;font-size:.58rem}.account-strip nav{display:flex;gap:12px;flex-wrap:wrap}.account-strip a{color:#dfe7fa;text-decoration:none}.account-strip a:hover{color:#b8ff39}
.admin-users-shell{max-width:1100px;margin:auto;padding:24px}.admin-users-head{display:flex;justify-content:space-between;align-items:center}.admin-users-head a{color:#dbe5fa}.admin-create-user{margin:18px 0;padding:16px;border:1px solid #263453;border-radius:12px;background:#0a1429}.admin-create-user form{display:grid;grid-template-columns:1fr 1fr 2fr auto;gap:8px}.admin-create-user input,.admin-create-user select{padding:10px;border:1px solid #2a385c;border-radius:8px;background:#071126;color:#fff}
.user-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.user-admin-card{padding:14px;border:1px solid #233151;border-radius:11px;background:#091328}.user-admin-card strong,.user-admin-card span{display:block}.user-admin-card p{color:#8d99b5}.user-state{display:flex;gap:7px}.user-state span{padding:4px 7px;border-radius:99px;background:#18233b;font-size:.55rem}.user-state .ok{color:#b8ff39}.user-state .off{color:#ff809e}.user-actions{display:flex;gap:7px;margin-top:10px}.user-actions button{font-size:.58rem;padding:7px 9px}
@media(max-width:720px){.account-strip{align-items:flex-start;flex-direction:column}.admin-create-user form{grid-template-columns:1fr}.user-admin-grid{grid-template-columns:1fr}}

/* V8.3.1 Hardened */
.error-card h1{font-size:1.5rem}.error-card p{line-height:1.55}


/* =========================================================
   V8.3.2 — Mobile UX
   ========================================================= */
.mobile-account-bar,
.mobile-account-menu{display:none}

@media(max-width:820px){
  .account-strip{display:none!important}

  .mobile-account-bar{
    position:sticky;top:0;z-index:110;
    display:flex;align-items:center;justify-content:space-between;
    min-height:54px;padding:8px 12px;
    background:rgba(5,11,24,.98);
    border-bottom:1px solid #1d2944;
    backdrop-filter:blur(14px);
  }
  .mobile-account-identity{min-width:0;display:flex;align-items:center;gap:9px;color:#eef3ff}
  .mobile-account-ball{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#111c36;font-size:1rem}
  .mobile-account-identity div{min-width:0}
  .mobile-account-identity strong,.mobile-account-identity small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
  .mobile-account-identity strong{font-size:.72rem}
  .mobile-account-identity small{max-width:230px;margin-top:1px;color:#7f8cab;font-size:.51rem}
  .mobile-menu-toggle{
    width:40px;height:40px;flex:0 0 40px;
    border:1px solid #293759;border-radius:10px;
    background:#0b1530;color:#f4f7ff;font-size:1.12rem;cursor:pointer
  }

  .mobile-account-menu[hidden]{display:none!important}
  .mobile-account-menu{
    position:fixed;top:58px;left:10px;right:10px;z-index:120;
    display:grid;padding:7px;border:1px solid #283758;border-radius:14px;
    background:rgba(7,14,31,.99);
    box-shadow:0 20px 55px rgba(0,0,0,.55);
    backdrop-filter:blur(18px)
  }
  .mobile-account-menu a{
    display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:center;
    padding:11px;border-radius:9px;color:#edf2ff;text-decoration:none
  }
  .mobile-account-menu a:hover,.mobile-account-menu a:active{background:#111d3a}
  .mobile-account-menu>a>span{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:#13203e}
  .mobile-account-menu strong,.mobile-account-menu small{display:block}
  .mobile-account-menu strong{font-size:.66rem}
  .mobile-account-menu small{margin-top:2px;color:#7e8aa8;font-size:.5rem}
  .mobile-account-menu .mobile-menu-logout{margin-top:4px;border-top:1px solid #1c2946;color:#ffb1bf}

  .app-shell{padding-bottom:82px}
  .mobile-nav{padding-bottom:max(5px,env(safe-area-inset-bottom))}

  .ranking-table-wrap{overflow-x:hidden}
  .ranking-table{table-layout:fixed}
  .ranking-table th,.ranking-table td{
    padding:9px 6px;white-space:normal;overflow:hidden;text-overflow:ellipsis;vertical-align:middle
  }
  .ranking-table th:nth-child(1),.ranking-table td:nth-child(1){width:9%;text-align:center}
  .ranking-table th:nth-child(2),.ranking-table td:nth-child(2){width:35%}
  .ranking-table th:nth-child(3),.ranking-table td:nth-child(3){width:38%}
  .ranking-table th:nth-child(4),.ranking-table td:nth-child(4){width:18%;text-align:center}
  .ranking-table th:nth-child(n+5),.ranking-table td:nth-child(n+5){display:none}
  .ranking-table .team-link{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .ranking-table .badge{display:none}
}

@media(max-width:480px){
  .mobile-account-identity small{max-width:190px}
  .ranking-panel .card{padding:12px 10px}
  .ranking-panel .section-title-row{align-items:center}
  .ranking-panel .section-title-row h2{font-size:1.2rem}
  .ranking-panel .section-title-row span{font-size:.58rem}
  .ranking-table th,.ranking-table td{font-size:.62rem}
  .ranking-table th:nth-child(1),.ranking-table td:nth-child(1){width:10%}
  .ranking-table th:nth-child(2),.ranking-table td:nth-child(2){width:42%}
  .ranking-table th:nth-child(3),.ranking-table td:nth-child(3){width:48%}
  .ranking-table th:nth-child(4),.ranking-table td:nth-child(4){display:none}
}

/* V8.3.3 — linked team + full mobile business navigation */
.assigned-team-chip{
  display:inline-flex;flex-direction:column;gap:2px;
  margin-top:12px;padding:8px 11px;
  border:1px solid #263759;border-radius:10px;background:#0a1530
}
.assigned-team-chip span{color:#7e8cab;font-size:.5rem;text-transform:uppercase;letter-spacing:.08em}
.assigned-team-chip strong{color:#eff4ff;font-size:.68rem}

@media(max-width:820px){
  .page-header .assigned-team-chip{margin-top:10px}
  .mobile-nav{left:10px;right:10px;bottom:10px;padding:0;overflow:hidden}
  .mobile-nav-scroll{
    display:flex;align-items:stretch;gap:4px;overflow-x:auto;
    overscroll-behavior-x:contain;scrollbar-width:none;padding:7px;
    scroll-snap-type:x proximity
  }
  .mobile-nav-scroll::-webkit-scrollbar{display:none}
  .mobile-nav-scroll a{
    flex:0 0 74px;min-width:74px;scroll-snap-align:start;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    gap:4px;min-height:62px;padding:7px 5px;border-radius:10px;
    color:#8e9ab6;text-decoration:none
  }
  .mobile-nav-scroll a span{
    display:block;max-width:70px;overflow:hidden;text-overflow:ellipsis;
    white-space:nowrap;font-size:.48rem
  }
  .mobile-nav-scroll a.active{
    background:#10953f;color:#fff;
    box-shadow:inset 0 0 0 1px rgba(184,255,57,.18)
  }
}
