/* 11SIMULATOR — « NUIT DE MATCH » · jeu + écran d'accueil (index.html)
   Chargé EN DERNIER, après premium-experience.css. Les couches précédentes lisent les variables --up-* :
   on les redéfinit ici, puis on affine les composants clés. app.js n'est pas concerné.
   ink = Nuit de match (défaut) · paper = Jour de match (clair) */

html[data-theme="ink"]{
  color-scheme:dark;
  --up-accent:#F2C14E; --up-accent-2:#DCA834; --up-on-accent:#14110A;
  --up-bg:#080D12; --up-bg-2:#0D141B; --up-card:#111A23; --up-text:#ECF1EE; --up-muted:#8494A0;
  --up-line:rgba(236,241,238,.08); --up-shadow:0 1px 0 rgba(255,255,255,.04) inset,0 18px 40px -24px rgba(0,0,0,.9);
  --n-card-2:#16212C; --n-raise:#1B2834; --n-soft:#C3CDC9; --n-line-2:rgba(236,241,238,.16);
  --n-grass:#2FD07F; --n-glow:rgba(242,193,78,.10); --n-glow-2:rgba(47,208,127,.07);
  --grass:var(--n-grass); --text-dim:var(--n-soft);
}
html[data-theme="paper"]{
  color-scheme:light;
  --up-accent:#0E7A47; --up-accent-2:#0A6239; --up-on-accent:#FFFFFF;
  --up-bg:#F3F5F2; --up-bg-2:#E8ECE7; --up-card:#FFFFFF; --up-text:#0C1712; --up-muted:#5F6E66;
  --up-line:rgba(12,23,18,.10); --up-shadow:0 1px 2px rgba(12,23,18,.05),0 14px 34px -22px rgba(12,23,18,.35);
  --n-card-2:#F7F9F6; --n-raise:#EEF2ED; --n-soft:#2C3B33; --n-line-2:rgba(12,23,18,.18);
  --n-grass:#0E7A47; --n-glow:rgba(14,122,71,.08); --n-glow-2:rgba(220,168,52,.10);
  --grass:var(--n-grass); --gold:#B7861E; --text-dim:var(--n-soft);
}
html[data-theme]{
  --font-display:"Outfit","Inter",ui-sans-serif,system-ui,sans-serif;
  --font-body:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --radius:16px; --radius-lg:22px;
}

/* ---------- Fond & typo ---------- */
html[data-theme] body{
  background:
    radial-gradient(1100px 520px at 85% -8%,var(--n-glow),transparent 60%),
    radial-gradient(900px 600px at -10% 10%,var(--n-glow-2),transparent 60%),
    var(--up-bg)!important;
  background-attachment:fixed!important;
  font-family:var(--font-body);-webkit-font-smoothing:antialiased;
}
html[data-theme] ::selection{background:var(--up-accent);color:var(--up-on-accent)}

/* Logos : le nouveau logo est déjà aux bonnes couleurs, on retire les anciens filtres de teinte */
html[data-theme] .brand-ball img,html[data-theme] .loading-logo img,html[data-theme] .mark img,html[data-theme] .brand img{filter:none!important}
html[data-theme] .brand-ball{background:transparent!important;box-shadow:none!important;border:0!important}

/* ---------- Écran de chargement ---------- */
html[data-theme] .loading-screen{background:var(--up-bg)!important;color:var(--up-text)}
html[data-theme] .loading-screen strong{font-family:var(--font-mono);letter-spacing:.2em;font-size:.72rem;color:var(--up-accent)}

/* ---------- Écran d'accueil ---------- */
html[data-theme="ink"] .start-screen{
  background:
    linear-gradient(90deg,rgba(8,13,18,.97) 0%,rgba(8,13,18,.90) 44%,rgba(8,13,18,.62) 100%),
    linear-gradient(0deg,rgba(8,13,18,1) 0%,rgba(8,13,18,0) 40%),
    url("art/hero-stadium.webp") center 36%/cover fixed,
    var(--up-bg)!important;
}
html[data-theme="paper"] .start-screen{
  background:
    linear-gradient(90deg,rgba(243,245,242,.98) 0%,rgba(243,245,242,.93) 47%,rgba(243,245,242,.80) 100%),
    url("art/hero-stadium.webp") center 36%/cover fixed,
    var(--up-bg)!important;
}
html[data-theme] .start-brandbar{border-bottom:1px solid var(--up-line)!important}
html[data-theme] .start-site-name{font-weight:800;letter-spacing:-.045em}
html[data-theme] .start-site-name span{color:var(--up-text)!important}
html[data-theme] .start-brandbar .eyebrow,html[data-theme] .showcase-kicker{
  color:var(--up-accent)!important;font-family:var(--font-mono)!important;font-weight:600;letter-spacing:.18em!important}
html[data-theme] .showcase-kicker{display:inline-flex;align-items:center;gap:.6rem}
html[data-theme] .showcase-kicker::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--n-grass);box-shadow:0 0 0 4px color-mix(in srgb,var(--n-grass) 20%,transparent);animation:nuit-pulse 2.4s ease-in-out infinite}
@keyframes nuit-pulse{50%{box-shadow:0 0 0 7px color-mix(in srgb,var(--n-grass) 0%,transparent)}}
html[data-theme] .start-showcase h1{font-weight:800!important;letter-spacing:-.05em!important;line-height:.98!important;max-width:13ch}
html[data-theme="ink"] .start-showcase h1{color:#fff!important}
html[data-theme] .start-showcase h1 span{
  color:transparent!important;-webkit-background-clip:text;background-clip:text;
  background-image:linear-gradient(100deg,var(--up-accent) 10%,#FFE29A 50%,var(--up-accent) 90%);
}
html[data-theme="paper"] .start-showcase h1 span{background-image:linear-gradient(100deg,var(--up-accent),#1FA862)}
html[data-theme] .hero-copy{color:var(--n-soft)!important;font-size:1.05rem!important}
html[data-theme] .quick-start>div{
  background:color-mix(in srgb,var(--up-card) 80%,transparent)!important;border:1px solid var(--up-line)!important;
  border-radius:14px!important;backdrop-filter:blur(10px)}
html[data-theme] .quick-start b{background:var(--up-accent)!important;color:var(--up-on-accent)!important;font-family:var(--font-display)}
html[data-theme] .feature-strip span{background:color-mix(in srgb,var(--up-card) 70%,transparent)!important;color:var(--n-soft)!important}
html[data-theme] .showcase-score strong{color:var(--up-accent)!important}

/* Carte « Nouvelle partie » */
html[data-theme] .setup-card,html[data-theme] .start-screen .hero-card{
  background:linear-gradient(180deg,color-mix(in srgb,var(--n-card-2) 94%,transparent),color-mix(in srgb,var(--up-card) 94%,transparent))!important;
  border:1px solid var(--n-line-2)!important;border-radius:24px!important;
  box-shadow:0 40px 90px -30px rgba(0,0,0,.75),inset 0 1px 0 rgba(255,255,255,.06)!important;
}
html[data-theme="paper"] .setup-card,html[data-theme="paper"] .start-screen .hero-card{box-shadow:0 30px 70px -30px rgba(12,23,18,.35)!important}
html[data-theme] .setup-card::before,html[data-theme] .hero-card::before{
  background:linear-gradient(90deg,transparent,var(--up-accent),transparent)!important;opacity:.7}
html[data-theme] .setup-step{background:color-mix(in srgb,var(--up-accent) 12%,transparent)!important;font-family:var(--font-mono)!important;font-weight:600}
html[data-theme] .up-pays{background:color-mix(in srgb,var(--up-bg) 70%,var(--up-card))!important;border:1px solid var(--up-line)!important}
html[data-theme] .up-pays-search{border-radius:12px!important;background:var(--up-bg)!important;border:1px solid var(--n-line-2)!important}
html[data-theme] .up-pays-search:focus-within{border-color:var(--up-accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--up-accent) 20%,transparent)}
html[data-theme] .up-glow{background:radial-gradient(closest-side,color-mix(in srgb,var(--up-accent) 30%,transparent),transparent)!important}
html[data-theme] .up-chips button,html[data-theme] .up-chips>*{
  background:var(--up-card)!important;border:1px solid var(--up-line)!important;color:var(--n-soft)!important}
html[data-theme] .up-chips button:hover{border-color:var(--up-accent)!important;color:var(--up-text)!important}
html[data-theme] .start-daily-challenge{
  background:linear-gradient(100deg,color-mix(in srgb,var(--n-grass) 12%,var(--up-card)),var(--up-card))!important;
  border:1px solid color-mix(in srgb,var(--n-grass) 30%,var(--up-line))!important}
html[data-theme] .daily-challenge-icon{background:var(--n-grass)!important;color:#06140C!important}
html[data-theme] .start-footnote{color:var(--up-muted)!important}
html[data-theme] .start-footnote span:first-child{color:var(--n-grass)!important}

/* Section fonctionnalités */
html[data-theme] .start-feature-card{
  background:linear-gradient(180deg,var(--n-card-2),var(--up-card))!important;border:1px solid var(--up-line)!important;
  transition:transform .2s ease,border-color .2s ease}
html[data-theme] .start-feature-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--up-accent) 40%,var(--up-line))!important}
html[data-theme] .start-feature-icon{
  background:color-mix(in srgb,var(--up-accent) 14%,transparent)!important;color:var(--up-accent)!important;
  border:1px solid color-mix(in srgb,var(--up-accent) 30%,transparent)!important}
html[data-theme] .start-feature-cta{display:inline-flex!important;align-items:center;gap:.5rem;padding:13px 20px!important;margin-top:1.4rem;
  background:linear-gradient(180deg,color-mix(in srgb,var(--up-accent) 92%,#fff),var(--up-accent-2))!important;color:var(--up-on-accent)!important;
  border-radius:12px!important;font-weight:700;text-decoration:none!important;box-shadow:0 10px 26px -12px var(--up-accent)}
html[data-theme] .start-discover{border-top:1px solid var(--up-line)!important}
html[data-theme] .start-discover nav a{color:var(--up-muted)!important;text-decoration:none}
html[data-theme] .start-discover nav a:hover{color:var(--up-accent)!important}

/* ---------- Boutons ---------- */
html[data-theme] button,html[data-theme] .button,html[data-theme] .file-button{border-radius:12px!important}
html[data-theme] .up-orb{border-radius:50%!important;overflow:hidden}
html[data-theme] .language-quick{border-radius:999px!important;background:color-mix(in srgb,var(--up-card) 70%,transparent)!important;border:1px solid var(--up-line)!important}
html[data-theme] .language-quick select{background:transparent!important;border:0!important;box-shadow:none!important;padding:4px 6px!important;font-family:var(--font-mono)!important;font-weight:600}
html[data-theme] .start-theme{border-radius:999px!important}
html[data-theme] button.primary,html[data-theme] .primary,html[data-theme] #advanceBtn{
  background:linear-gradient(180deg,color-mix(in srgb,var(--up-accent) 92%,#fff),var(--up-accent-2))!important;
  color:var(--up-on-accent)!important;border:0!important;font-weight:700!important;
  box-shadow:0 10px 26px -12px var(--up-accent),inset 0 1px 0 rgba(255,255,255,.3)!important}
html[data-theme] button.primary:hover,html[data-theme] .primary:hover{filter:brightness(1.06);transform:translateY(-1px)}
html[data-theme] button.primary:active{transform:translateY(1px)}
html[data-theme] button.ghost{border:1px solid var(--n-line-2)!important;background:color-mix(in srgb,var(--up-card) 50%,transparent)!important}
html[data-theme] button.ghost:hover{border-color:color-mix(in srgb,var(--up-accent) 50%,transparent)!important}
html[data-theme] input,html[data-theme] select,html[data-theme] textarea{
  border-radius:10px!important;background:var(--up-bg)!important;color:var(--up-text)!important;border:1px solid var(--n-line-2)!important}
html[data-theme] input:focus,html[data-theme] select:focus,html[data-theme] textarea:focus{
  outline:none!important;border-color:var(--up-accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--up-accent) 20%,transparent)!important}

/* ---------- Interface de carrière ---------- */
html[data-theme] .topbar{
  background:color-mix(in srgb,var(--up-bg) 78%,transparent)!important;
  backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px)}
html[data-theme] .club-badge{border-radius:12px!important;font-family:var(--font-display);font-weight:800}
html[data-theme] .top-title strong{font-family:var(--font-display);letter-spacing:-.03em}
html[data-theme] .top-budget{font-family:var(--font-mono);color:var(--up-accent)!important}
html[data-theme] .save-state i{background:var(--n-grass)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--n-grass) 25%,transparent)}
html[data-theme] .ticker{background:var(--up-bg-2)!important}
html[data-theme] .ticker-label{background:var(--n-grass)!important;color:#06140C!important;font-family:var(--font-mono);font-weight:700;letter-spacing:.14em}

html[data-theme] .sidebar{background:var(--up-bg-2)!important;border-right:1px solid var(--up-line)!important}
html[data-theme] .manager-avatar{background:linear-gradient(135deg,var(--up-accent),var(--up-accent-2))!important;color:var(--up-on-accent)!important;font-family:var(--font-display);font-weight:800}
html[data-theme] .nav-section{color:var(--up-muted)!important;font-family:var(--font-mono)!important}
html[data-theme] #gameScreen .nav-btn{color:var(--n-soft)!important;background:transparent!important;border:0!important}
html[data-theme] .nav-btn i{color:var(--up-muted);font-style:normal}
html[data-theme] #gameScreen .nav-btn:hover{background:color-mix(in srgb,var(--up-text) 5%,transparent)!important;color:var(--up-text)!important}
html[data-theme] #gameScreen .sidebar .nav-btn.active,html[data-theme] #gameScreen .sidebar .nav-btn.active:hover{
  background:linear-gradient(90deg,color-mix(in srgb,var(--up-accent) 16%,transparent),transparent)!important;
  border:0!important;color:var(--up-text)!important;box-shadow:inset 3px 0 var(--up-accent)!important}
html[data-theme] .nav-btn.active i{color:var(--up-accent)}
html[data-theme] .unread{background:var(--up-accent)!important;color:var(--up-on-accent)!important}

html[data-theme] .panel,html[data-theme] .stat-card,html[data-theme] .choice-card,html[data-theme] .fixture-card,
html[data-theme] .objective,html[data-theme] .assistant-briefing,html[data-theme] .quick-action,html[data-theme] .club-card{
  background:linear-gradient(180deg,var(--n-card-2),var(--up-card))!important;
  border:1px solid var(--up-line)!important;box-shadow:var(--up-shadow)!important}
html[data-theme] .page-head h2{font-weight:800!important;letter-spacing:-.045em!important}
html[data-theme] .panel h3{font-weight:700}
html[data-theme] .eyebrow{color:var(--up-accent)!important;font-family:var(--font-mono)!important;letter-spacing:.16em!important}
html[data-theme] .stat-card strong,html[data-theme] .stat-card b{font-family:var(--font-display);letter-spacing:-.04em}
html[data-theme] table th{color:var(--up-muted)!important;font-family:var(--font-mono)!important;font-size:.66rem!important;letter-spacing:.12em!important}
html[data-theme] table tr:hover td{background:color-mix(in srgb,var(--up-accent) 5%,transparent)!important}

html[data-theme] .bottom-nav{
  background:color-mix(in srgb,var(--up-bg) 86%,transparent)!important;border-top:1px solid var(--up-line)!important;
  backdrop-filter:saturate(1.4) blur(16px);-webkit-backdrop-filter:saturate(1.4) blur(16px)}
html[data-theme] .bottom-nav button{color:var(--up-muted)!important;background:transparent!important}
html[data-theme] .bottom-nav button.active{color:var(--up-accent)!important}

html[data-theme] .modal{background:rgba(4,7,10,.72)!important;backdrop-filter:blur(6px)}
html[data-theme] .modal-card,html[data-theme] .palette-card{
  background:var(--up-card)!important;border:1px solid var(--n-line-2)!important;border-radius:22px!important;
  box-shadow:0 40px 100px -20px rgba(0,0,0,.7)!important}
html[data-theme] .toast{background:var(--n-raise)!important;color:var(--up-text)!important;border:1px solid var(--n-line-2)!important;border-radius:12px!important}

/* Match en direct */
html[data-theme] #liveMatch .lm-score b{font-family:var(--font-display)!important;font-weight:800}
html[data-theme] #liveMatch .lm-stage{background:#05090C!important}

/* ---------- Mobile ---------- */
@media (max-width:900px){
  html[data-theme="ink"] .start-screen{
    background:linear-gradient(180deg,rgba(8,13,18,.80),rgba(8,13,18,.97) 40%),url("art/hero-stadium-m.webp") center top/cover,var(--up-bg)!important}
  html[data-theme] .start-showcase h1{font-size:clamp(2.4rem,11vw,3.4rem)!important}
}
/* Mobile : le bouton Matchday sortait de l'écran (barre trop chargée) */
@media (max-width:480px){
  html[data-theme] #gameScreen .topbar{gap:6px!important;padding-inline:10px!important}
  html[data-theme] #gameScreen .topbar .club-badge{display:none!important}
  html[data-theme] #gameScreen .top-actions{gap:5px!important;min-width:0;margin-left:auto}
  html[data-theme] #gameScreen .top-actions>button{padding-inline:9px!important;font-size:.78rem!important}
}
/* ---------- Globe 3D : carte du club et habillage ---------- */
.globe3d{background:radial-gradient(1200px 800px at 30% 40%,#0b1424 0%,#04070c 70%)!important}
.globe3d .gi-kicker{color:#F2C14E!important;font-family:var(--font-mono,monospace)!important;letter-spacing:.18em!important}
.globe3d .gi-top strong{font-family:var(--font-display,system-ui);font-weight:800;letter-spacing:-.04em;text-shadow:0 6px 30px rgba(0,0,0,.6)}
.globe3d .gi-card{background:linear-gradient(180deg,rgba(22,33,44,.86),rgba(8,13,18,.92))!important;border:1px solid rgba(236,241,238,.14)!important;
  box-shadow:0 40px 90px -30px rgba(0,0,0,.9),0 0 0 1px rgba(242,193,78,.12),inset 0 1px 0 rgba(255,255,255,.06)!important;backdrop-filter:blur(18px) saturate(1.3)!important}
.globe3d .gi-card::before{content:"";position:absolute;left:24px;right:24px;top:0;height:2px;background:linear-gradient(90deg,transparent,#F2C14E,transparent);opacity:.8}
.globe3d .gi-badge{position:relative;overflow:hidden;width:64px!important;height:64px!important;border-radius:18px!important}
.globe3d .gi-badge img{position:absolute;inset:9%;width:82%;height:82%;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.45))}
.globe3d .gi-badge.has-logo{background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.14),rgba(255,255,255,.04))!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)!important}
.globe3d .gi-badge.has-logo span{opacity:0}
.globe3d .gi-stats>div{background:rgba(255,255,255,.04)!important;border:1px solid rgba(236,241,238,.1)!important;border-radius:14px!important}
.globe3d .gi-stats b{color:#F2C14E!important;font-family:var(--font-display,system-ui);letter-spacing:-.03em}
.globe3d .gi-players>div{border-radius:12px!important;background:rgba(255,255,255,.035)!important}
.globe3d .gi-players b{color:#F2C14E!important}
.globe3d .gi-goal{background:linear-gradient(100deg,rgba(47,208,127,.12),rgba(47,208,127,.03))!important;border:1px solid rgba(47,208,127,.3)!important;border-radius:14px!important}
.globe3d .gi-go{background:linear-gradient(180deg,#FFD877,#DCA834)!important;color:#14110A!important;box-shadow:0 14px 30px -12px rgba(242,193,78,.8)!important}
.globe3d .gi-skip,.globe3d .gi-back{background:rgba(255,255,255,.05)!important;border:1px solid rgba(236,241,238,.16)!important;color:#ECF1EE!important}

@media (prefers-reduced-motion:reduce){
  html[data-theme] .showcase-kicker::before{animation:none}
  html[data-theme] *{transition:none!important}
}
