:root {
      /* === ORACLE DARK THEME (default) === */
      /* V25.23 RESTYLE fintech: ciano smorzato + bagliori ridotti. Solo tinte,
         nessuna struttura toccata. Reversibile ripristinando queste righe. */
      --bg-dark: #080c14;
      --bg-card: #0e1420;
      --bg-card-light: #111827;
      --bg-input: #1a2235;
      --accent-cyan: #22b8e0;
      --accent-blue: #3b82f6;
      --accent-green: #00e5a0;
      --accent-yellow: #fbbf24;
      --accent-red: #f87171;
      --accent-purple: #a78bfa;
      --accent-gold: #f59e0b;
      --accent-emerald: #10b981;
      --text: #e2e8f0;
      --text-white: #f8fafc;
      --text-gray: #94a3b8;
      --text-dark: #64748b;
      --border: rgba(255,255,255,0.09);
      --shadow-sm: 0 1px 3px rgba(0,0,0,0.4);
      --shadow-md: 0 4px 16px rgba(0,0,0,0.5);
      --shadow-lg: 0 10px 30px rgba(0,0,0,0.6);
      --glow-cyan: 0 0 12px rgba(34,184,224,0.14);
      --glow-gold: 0 0 12px rgba(245,158,11,0.15);
      --glow-green: 0 0 12px rgba(0,229,160,0.13);
    }
    /* === LIGHT MODE OVERRIDE === */
    body.light-mode {
      --bg-dark: #f0f4f8;
      --bg-card: #ffffff;
      --bg-card-light: #f8fafc;
      --bg-input: #e8edf5;
      --accent-cyan: #0e93b8;
      --accent-blue: #2563eb;
      --accent-green: #059669;
      --accent-yellow: #d97706;
      --accent-red: #dc2626;
      --accent-purple: #7c3aed;
      --accent-gold: #b45309;
      --text: #1e293b;
      --text-white: #0f172a;
      --text-gray: #475569;
      --text-dark: #94a3b8;
      --border: rgba(0,0,0,0.10);
      --shadow-sm: 0 1px 3px rgba(0,0,0,0.12);
      --shadow-md: 0 4px 16px rgba(0,0,0,0.12);
      --shadow-lg: 0 10px 30px rgba(0,0,0,0.15);
      --glow-cyan: 0 0 10px rgba(14,147,184,0.10);
      --glow-gold: 0 0 10px rgba(180,83,9,0.10);
      --glow-green: 0 0 10px rgba(5,150,105,0.10);
    }
    body.light-mode { background-image: radial-gradient(ellipse at top left, rgba(0,153,204,0.05) 0%, transparent 55%), radial-gradient(ellipse at bottom right, rgba(5,150,105,0.04) 0%, transparent 55%); }
    body.light-mode .header { background: rgba(240,244,248,0.96); border-bottom-color: rgba(0,153,204,0.15); }
    body.light-mode .match-item { background: #fff; border-color: rgba(0,0,0,0.08); }
    body.light-mode .match-item:hover { background: #f0f9ff; }
    body.light-mode .panel { background: #fff; border-color: rgba(0,0,0,0.08); }
    body.light-mode .analysis-card { background: var(--bg-card); border-color: rgba(0,0,0,0.08); }
    body.light-mode .analysis-section { background: var(--bg-card-light); border-color: rgba(0,0,0,0.08); }
    body.light-mode .btn-secondary { background: #e8edf5; color: #1e293b; border-color: rgba(0,0,0,0.12); }
    body.light-mode .settings-panel { background: #fff; }

    /* === SKELETON LOADING STYLES === */
    @keyframes shimmer { 0%{background-position:-400px 0} 100%{background-position:400px 0} }
    .skeleton {
      background: linear-gradient(90deg, var(--bg-card) 25%, var(--bg-card-light) 50%, var(--bg-card) 75%);
      background-size: 800px 100%;
      animation: shimmer 1.4s infinite linear;
      border-radius: 8px;
    }
    .skeleton-card { background: var(--bg-card); border: 1px solid var(--border); border-radius: 16px; padding: 20px; margin-bottom: 12px; }
    .skeleton-line { height: 14px; margin: 8px 0; }
    .skeleton-line.short { width: 40%; }
    .skeleton-line.medium { width: 65%; }
    .skeleton-line.long { width: 90%; }
    .skeleton-circle { width: 40px; height: 40px; border-radius: 50%; }
    .skeleton-badge { width: 60px; height: 22px; border-radius: 20px; display:inline-block; }
    * { margin: 0; padding: 0; box-sizing: border-box; }
    body {
      font-family: 'Inter', -apple-system, sans-serif;
      background: var(--bg-dark);
      background-image: 
        radial-gradient(ellipse at top left, rgba(0,212,255,0.06) 0%, transparent 55%),
        radial-gradient(ellipse at bottom right, rgba(0,229,160,0.05) 0%, transparent 55%),
        radial-gradient(ellipse at center, rgba(245,158,11,0.03) 0%, transparent 60%);
      color: var(--text);
      min-height: 100vh;
      padding-bottom: 100px;
    }
    .header {
      background: rgba(8,12,20,0.96);
      backdrop-filter: blur(24px);
      border-bottom: 1px solid rgba(0,212,255,0.12);
      padding: 12px 24px;
      position: sticky;
      top: 0;
      z-index: 100;
      box-shadow: 0 2px 20px rgba(0,0,0,0.5), 0 1px 0 rgba(0,212,255,0.1);
    }
    .header-inner {
      max-width: 1400px;
      margin: 0 auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      flex-wrap: wrap;
    }
    .brand { display: flex; align-items: center; gap: 12px; }
    .brand-icon {
      width: 40px; height: 40px;
      background: linear-gradient(135deg, var(--accent-cyan), var(--accent-blue));
      border-radius: 10px;
      display: flex; align-items: center; justify-content: center;
      font-size: 1.3rem;
    }
    .brand-name {
      font-size: 1.3rem;
      font-weight: 800;
      background: linear-gradient(135deg, var(--accent-cyan), var(--accent-blue));
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .header-right { display: flex; align-items: center; gap: 16px; }
    .status-bar { display: flex; gap: 12px; }
    .status-item { display: flex; align-items: center; gap: 6px; font-size: 0.7rem; color: var(--text-dark); }
    .status-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--text-dark); }
    .status-dot.online { background: var(--accent-green); box-shadow: 0 0 8px var(--accent-green); }
    .status-dot.loading { background: var(--accent-yellow); animation: blink 1s infinite; }
    @keyframes blink { 0%,100%{opacity:1} 50%{opacity:.3} }
    .slip-badge {
      display: flex; align-items: center; gap: 8px;
      padding: 8px 16px;
      background: linear-gradient(135deg, var(--accent-green), var(--accent-cyan));
      border-radius: 20px;
      font-size: 0.8rem; font-weight: 700;
      cursor: pointer;
      color: white;
      box-shadow: 0 2px 8px rgba(16,185,129,0.3);
      transition: all 0.2s;
    }
    .slip-badge:hover { 
      transform: scale(1.05); 
      box-shadow: 0 4px 12px rgba(16,185,129,0.4);
    }
    .main { max-width: 1400px; margin: 0 auto; padding: 24px; }
    .date-tabs {
      display: flex; gap: 8px; margin-bottom: 20px; flex-wrap: wrap;
    }
    .date-tab {
      padding: 10px 20px;
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 10px;
      color: var(--text-gray);
      font-size: 0.85rem; font-weight: 600;
      cursor: pointer;
      transition: all 0.2s;
    }
    .date-tab:hover { 
      border-color: var(--accent-cyan); 
      color: var(--accent-cyan);
      box-shadow: 0 2px 8px rgba(2,132,199,0.15);
    }
    .date-tab.active {
      background: linear-gradient(135deg, rgba(2,132,199,0.12), rgba(59,130,246,0.12));
      border-color: var(--accent-cyan);
      color: var(--accent-cyan);
      border-width: 2px;
      box-shadow: 0 2px 8px rgba(2,132,199,0.2);
    }
    .panel {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 16px;
      padding: 20px;
      margin-bottom: 20px;
      box-shadow: 0 2px 8px rgba(0,0,0,0.04);
      transition: box-shadow 0.2s;
    }
    .panel:hover {
      box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    }
    .panel-title { font-size: 1rem; font-weight: 700; margin-bottom: 16px; color: var(--accent-cyan); }
    .select-field {
      width: 100%;
      padding: 14px 18px;
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 12px;
      color: var(--text-white);
      font-size: 0.95rem;
      cursor: pointer;
    }
    .select-field:focus { outline: none; border-color: var(--accent-cyan); }
    .matches-list { display: flex; flex-direction: column; gap: 10px; }
    .match-item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 14px 18px;
      background: var(--bg-card-light);
      border: 1px solid var(--border);
      border-radius: 12px;
      cursor: pointer;
      transition: all 0.2s;
    }
    .match-item:hover {
      border-color: var(--accent-cyan);
      transform: translateX(4px);
      box-shadow: 0 2px 8px rgba(2,132,199,0.15);
      background: var(--bg-card);
    }
    .match-item-left { display: flex; align-items: center; gap: 14px; flex: 1; min-width: 0; }
    .match-item-time {
      font-family: 'JetBrains Mono', monospace;
      font-size: 0.8rem;
      color: var(--accent-cyan);
      min-width: 45px;
    }
    .match-item-teams { font-weight: 600; font-size: 0.9rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .match-item-badge {
      padding: 4px 10px;
      border-radius: 6px;
      font-size: 0.65rem;
      font-weight: 700;
      background: var(--bg-input);
      color: var(--text-gray);
      flex-shrink: 0;
    }
    .match-item-badge.live { background: var(--accent-red); color: white; }
    .back-btn {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 10px 20px;
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 10px;
      color: var(--text-gray);
      font-size: 0.85rem;
      cursor: pointer;
      margin-bottom: 20px;
      transition: all 0.2s;
    }
    .back-btn:hover { 
      border-color: var(--accent-cyan); 
      color: var(--accent-cyan); 
      box-shadow: 0 2px 8px rgba(2,132,199,0.15);
      transform: translateX(-2px);
    }
    .analysis-hero {
      background: linear-gradient(145deg, var(--bg-card), var(--bg-card-light));
      border: 1px solid var(--border);
      border-radius: 20px;
      padding: 30px;
      margin-bottom: 20px;
      text-align: center;
      box-shadow: 0 4px 16px rgba(0,0,0,0.06);
    }
    .hero-league { font-size: 0.8rem; color: var(--text-dark); margin-bottom: 20px; }
    .hero-match { display: flex; align-items: center; justify-content: center; gap: 24px; margin-bottom: 20px; flex-wrap: wrap; }
    .hero-team { display: flex; flex-direction: column; align-items: center; gap: 10px; }
    .hero-team-logo { width: 60px; height: 60px; object-fit: contain; }
    .hero-team-logo-fallback {
      width: 60px; height: 60px;
      background: linear-gradient(135deg, var(--accent-cyan), var(--accent-blue));
      border-radius: 14px;
      display: flex; align-items: center; justify-content: center;
      font-weight: 700; font-size: 1rem;
    }
    .hero-team-name { font-size: 1rem; font-weight: 700; max-width: 120px; text-align: center; }
    
    /* MG NELL'HERO */
    .hero-mg-section {
      display: flex;
      gap: 16px;
      justify-content: center;
      margin-top: 20px;
      padding-top: 16px;
      border-top: 1px solid var(--border);
    }
    .hero-mg-box {
      background: linear-gradient(135deg, rgba(217,119,6,0.1), rgba(16,185,129,0.1));
      border: 2px solid var(--accent-gold);
      border-radius: 12px;
      padding: 12px 20px;
      text-align: center;
      min-width: 120px;
      box-shadow: 0 2px 8px rgba(217,119,6,0.15);
    }
    .hero-mg-label {
      font-size: 0.75rem;
      color: #b45309;
      margin-bottom: 4px;
      font-weight: 600;
    }
    .hero-mg-value {
      font-size: 1.3rem;
      font-weight: 800;
      color: #d97706;
    }
    .hero-mg-prob {
      font-size: 0.85rem;
      color: var(--accent-emerald);
      font-family: 'JetBrains Mono', monospace;
      font-weight: 700;
    }
    
    .hero-prediction { display: flex; align-items: center; gap: 10px; }
    .hero-score-box {
      width: 50px; height: 50px;
      background: var(--bg-input);
      border: 2px solid var(--accent-cyan);
      border-radius: 12px;
      display: flex; align-items: center; justify-content: center;
      font-family: 'JetBrains Mono', monospace;
      font-size: 1.5rem; font-weight: 700;
      box-shadow: 0 2px 8px rgba(2,132,199,0.2);
      color: var(--accent-cyan);
    }
    .hero-vs { 
      padding: 6px 12px; 
      background: linear-gradient(135deg, var(--accent-cyan), var(--accent-blue)); 
      border-radius: 6px; 
      font-weight: 700; 
      font-size: 0.8rem; 
      color: white;
      box-shadow: 0 2px 6px rgba(59,130,246,0.3);
    }
    .analysis-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; margin-bottom: 20px; }

    /* === ADVICE TABS === */
    .advice-tabs { display:flex; gap:6px; margin-bottom:-1px; position:relative; z-index:1; }
    .advice-tab {
      padding: 8px 18px; border-radius: 12px 12px 0 0;
      border: 1px solid var(--border); border-bottom: none;
      font-size: 0.78rem; font-weight: 700; cursor: pointer;
      background: var(--bg-card-light); color: var(--text-gray);
      transition: all 0.15s;
    }
    .advice-tab.active { background: var(--bg-card); color: var(--text-white); border-color: rgba(0,212,255,0.25); }
    .advice-tab.active.stat { color: var(--accent-cyan); }
    .advice-panel { display:none; }
    .advice-panel.active { display:block; }

    /* === ACCORDION SEZIONI === */
    .section-accordion { margin-bottom: 12px; }
    .section-accordion-header {
      display: flex; align-items: center; justify-content: space-between;
      padding: 11px 16px; background: var(--bg-card);
      border: 1px solid var(--border); border-radius: 12px;
      cursor: pointer; transition: background 0.15s, border-color 0.15s;
      user-select: none;
    }
    .section-accordion-header:hover { background: var(--bg-card-light); border-color: rgba(0,212,255,0.15); }
    .section-accordion-header.open { border-radius: 12px 12px 0 0; border-color: rgba(0,212,255,0.2); border-bottom-color: transparent; }
    .section-accordion-title { display:flex; align-items:center; gap:8px; font-size:0.82rem; font-weight:700; color:var(--text-white); }
    .section-accordion-meta { font-size:0.68rem; color:var(--text-dark); }
    .section-accordion-arrow { font-size:0.7rem; color:var(--text-dark); transition:transform 0.2s; }
    .section-accordion-header.open .section-accordion-arrow { transform: rotate(180deg); }
    .section-accordion-body {
      display: none; border: 1px solid rgba(0,212,255,0.2); border-top: none;
      border-radius: 0 0 12px 12px; background: var(--bg-card);
      overflow: hidden;
    }
    .section-accordion-body.open { display: block; }
    .section-accordion-body .analysis-grid { margin: 0; padding: 14px; gap: 12px; }
    .section-accordion-body .analysis-card { margin: 0; }
    .analysis-card {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 16px;
      padding: 20px;
      box-shadow: 0 2px 8px rgba(0,0,0,0.04);
      transition: all 0.2s;
    }
    .analysis-card:hover {
      box-shadow: 0 4px 12px rgba(0,0,0,0.08);
      transform: translateY(-2px);
    }
    .analysis-card.wide { grid-column: 1 / -1; }
    .card-title {
      display: flex; align-items: center; gap: 10px;
      margin-bottom: 16px;
      font-size: 0.9rem; font-weight: 700;
    }
    .card-title-icon {
      width: 32px; height: 32px;
      background: linear-gradient(135deg, rgba(2,132,199,0.15), rgba(59,130,246,0.15));
      border-radius: 8px;
      display: flex; align-items: center; justify-content: center;
      font-size: 1rem;
      box-shadow: 0 2px 6px rgba(2,132,199,0.15);
    }
    .card-title-badge {
      margin-left: auto;
      padding: 4px 10px;
      background: linear-gradient(135deg, var(--accent-cyan), var(--accent-blue));
      border-radius: 6px;
      font-size: 0.7rem; font-weight: 700;
      color: white;
      box-shadow: 0 2px 4px rgba(2,132,199,0.3);
    }
    .prob-row { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
    .prob-row:last-child { margin-bottom: 0; }
    .prob-label { width: 80px; font-size: 0.8rem; color: var(--text-gray); font-weight: 600; }
    .prob-bar-track { flex: 1; height: 10px; background: var(--bg-input); border-radius: 6px; overflow: hidden; box-shadow: inset 0 1px 3px rgba(0,0,0,0.08); }
    .prob-bar-fill { height: 100%; border-radius: 6px; transition: width 0.3s; }
    .prob-bar-fill.cyan { background: linear-gradient(90deg, #0284c7, #3b82f6); box-shadow: 0 2px 4px rgba(2,132,199,0.3); }
    .prob-bar-fill.green { background: linear-gradient(90deg, #10b981, #059669); box-shadow: 0 2px 4px rgba(16,185,129,0.3); }
    .prob-bar-fill.yellow { background: linear-gradient(90deg, #f59e0b, #d97706); box-shadow: 0 2px 4px rgba(245,158,11,0.3); }
    .prob-bar-fill.purple { background: linear-gradient(90deg, #8b5cf6, #7c3aed); box-shadow: 0 2px 4px rgba(139,92,246,0.3); }
    .prob-value {
      width: 50px; text-align: right;
      font-family: 'JetBrains Mono', monospace;
      font-size: 0.85rem; font-weight: 700;
      color: var(--accent-cyan);
    }
    .stat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
    .stat-box {
      background: var(--bg-card-light);
      border-radius: 10px;
      padding: 12px;
      text-align: center;
      border: 1px solid var(--border);
      transition: all 0.2s;
    }
    .stat-box:hover {
      border-color: var(--accent-cyan);
      box-shadow: 0 2px 8px rgba(2,132,199,0.15);
    }
    .stat-box-label { font-size: 0.65rem; color: var(--text-gray); margin-bottom: 4px; text-transform: uppercase; font-weight: 600; }
    .stat-box-value { font-family: 'JetBrains Mono', monospace; font-size: 1.2rem; font-weight: 800; color: var(--accent-cyan); }
    .stat-box-sub { font-size: 0.6rem; color: var(--text-gray); margin-top: 2px; }
    .scores-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(60px, 1fr)); gap: 8px; }
    .score-box {
      background: var(--bg-card-light);
      border-radius: 8px;
      padding: 10px 6px;
      text-align: center;
      border: 1px solid var(--border);
      transition: all 0.2s;
      cursor: pointer;
    }
    .score-box:hover {
      border-color: var(--accent-cyan);
      box-shadow: 0 2px 8px rgba(2,132,199,0.15);
    }
    .score-box.highlight { 
      background: linear-gradient(135deg, var(--accent-cyan), var(--accent-blue)); 
      border-color: var(--accent-blue);
      box-shadow: 0 2px 8px rgba(59,130,246,0.3);
    }
    .score-box-value { font-family: 'JetBrains Mono', monospace; font-size: 0.9rem; font-weight: 700; }
    .score-box-prob { font-size: 0.6rem; color: var(--text-gray); margin-top: 2px; font-weight: 600; }
    .score-box.highlight .score-box-prob { color: rgba(255,255,255,0.9); }
    
    /* COMBO SUGGERITE */
    .combo-panel {
      background: linear-gradient(135deg, var(--bg-card), var(--bg-card-light));
      border: 2px solid var(--accent-purple);
      border-radius: 20px;
      padding: 24px;
      margin-bottom: 20px;
      box-shadow: 0 4px 16px rgba(139,92,246,0.12);
    }
    .combo-title { font-size: 1.1rem; font-weight: 700; color: var(--accent-purple); margin-bottom: 16px; }
    .combo-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 12px; }
    .combo-card {
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 16px;
      text-align: center;
      cursor: pointer;
      transition: all 0.2s;
    }
    .combo-card:hover { 
      border-color: var(--accent-purple); 
      transform: translateY(-2px); 
      box-shadow: 0 4px 12px rgba(139,92,246,0.2);
    }
    .combo-card.selected { 
      border-color: var(--accent-green); 
      background: rgba(16,185,129,0.08); 
      border-width: 2px;
      box-shadow: 0 4px 12px rgba(16,185,129,0.2);
    }
    .combo-value { font-size: 1rem; font-weight: 700; margin-bottom: 8px; }
    .combo-stats { display: flex; justify-content: center; gap: 12px; font-size: 0.75rem; font-weight: 600; }
    .combo-prob { color: var(--accent-cyan); font-weight: 700; }
    .combo-odds { color: var(--accent-emerald); font-weight: 700; }
    
    /* MULTIGOAL GRID */
    .multigoal-grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
      gap: 8px;
    }
    .multigoal-box {
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 10px;
      padding: 10px 6px;
      text-align: center;
      transition: all 0.2s;
      cursor: pointer;
    }
    .multigoal-box:hover {
      border-color: var(--accent-cyan);
      box-shadow: 0 2px 8px rgba(2,132,199,0.15);
    }
    .multigoal-box.best {
      border-color: var(--accent-green);
      background: rgba(16,185,129,0.08);
      border-width: 2px;
      box-shadow: 0 2px 8px rgba(16,185,129,0.2);
    }
    .multigoal-range {
      font-size: 1rem;
      font-weight: 700;
      color: var(--text);
      margin-bottom: 2px;
    }
    .multigoal-prob {
      font-size: 0.85rem;
      color: var(--accent-cyan);
      font-weight: 700;
    }
    .multigoal-quota {
      font-size: 0.68rem;
      color: var(--accent-emerald);
      margin-top: 2px;
      font-weight: 600;
    }
    /* SMART PICK HERO */
    .mg-smart-pick {
      background: linear-gradient(135deg, rgba(16,185,129,0.12), rgba(34,211,238,0.08));
      border: 2px solid rgba(16,185,129,0.4);
      border-radius: 14px;
      padding: 16px;
      margin-bottom: 14px;
      position: relative;
      overflow: hidden;
    }
    .mg-smart-pick::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0;
      height: 3px;
      background: linear-gradient(90deg, #10b981, #00d4ff, #a78bfa);
    }
    .mg-smart-label {
      font-size: 0.65rem;
      font-weight: 700;
      color: #10b981;
      text-transform: uppercase;
      letter-spacing: 1px;
      margin-bottom: 8px;
    }
    .mg-smart-range {
      font-size: 1.8rem;
      font-weight: 900;
      color: white;
      line-height: 1;
    }
    .mg-smart-prob {
      font-size: 1.1rem;
      font-weight: 800;
      color: #00e5a0;
      margin-top: 4px;
    }
    .mg-smart-quota {
      font-size: 0.78rem;
      color: var(--accent-cyan);
      font-weight: 600;
    }
    .mg-smart-confidence {
      display: inline-block;
      padding: 3px 10px;
      border-radius: 20px;
      font-size: 0.62rem;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.5px;
    }
    .mg-smart-confidence.alta { background: rgba(16,185,129,0.15); color: #10b981; }
    .mg-smart-confidence.media { background: rgba(251,191,36,0.15); color: #fbbf24; }
    .mg-smart-confidence.bassa { background: rgba(248,113,113,0.15); color: #f87171; }
    /* GOAL DISTRIBUTION BAR */
    .mg-dist-bar {
      display: flex;
      align-items: flex-end;
      gap: 4px;
      height: 60px;
      padding: 0 4px;
    }
    .mg-dist-col {
      flex: 1;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 2px;
    }
    .mg-dist-fill {
      width: 100%;
      border-radius: 4px 4px 0 0;
      min-height: 3px;
      transition: all 0.3s;
    }
    .mg-dist-label {
      font-size: 0.58rem;
      color: var(--text-dark);
      font-weight: 600;
    }
    .mg-dist-pct {
      font-size: 0.55rem;
      color: var(--text-gray);
      font-weight: 700;
    }
    
    /* TEMPO GOL */
    .tempo-highlight {
      background: linear-gradient(135deg, rgba(139,92,246,0.08), rgba(59,130,246,0.08));
      border: 2px solid var(--accent-purple);
      border-radius: 10px;
      padding: 12px;
      margin-top: 12px;
      text-align: center;
      font-size: 0.85rem;
      box-shadow: 0 2px 6px rgba(139,92,246,0.15);
    }
    .tempo-highlight strong {
      color: var(--accent-cyan);
      margin: 0 6px;
      font-weight: 700;
    }
    .tempo-prob {
      color: var(--accent-emerald);
      font-weight: 700;
    }
    
    /* FORM DISPLAY */
    .form-display {
      display: flex;
      flex-direction: column;
      gap: 12px;
    }
    .form-team {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 8px 0;
      border-bottom: 1px solid var(--border);
    }
    .form-team:last-child { border-bottom: none; }
    .form-team-name {
      font-weight: 600;
      font-size: 0.85rem;
    }
    .form-string {
      display: flex;
      gap: 4px;
    }
    .form-w, .form-d, .form-l {
      width: 24px;
      height: 24px;
      border-radius: 6px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.7rem;
      font-weight: 700;
    }
    .form-w { background: var(--accent-green); color: white; box-shadow: 0 2px 4px rgba(16,185,129,0.2); }
    .form-d { background: var(--accent-yellow); color: white; box-shadow: 0 2px 4px rgba(245,158,11,0.2); }
    .form-l { background: var(--accent-red); color: white; box-shadow: 0 2px 4px rgba(239,68,68,0.2); }
    
    /* CLASSIFICA E MOTIVAZIONE */
    .standings-card {
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 12px;
      margin-bottom: 8px;
    }
    .standings-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 8px;
    }
    .standings-position {
      font-size: 1.5rem;
      font-weight: 800;
      color: var(--accent-cyan);
    }
    .standings-position sup {
      font-size: 0.7rem;
      color: var(--text-dark);
    }
    .motivation-badge {
      padding: 4px 10px;
      border-radius: 20px;
      font-size: 0.7rem;
      font-weight: 600;
    }
    .motivation-badge.gold { background: rgba(217,119,6,0.15); color: #d97706; border: 1px solid #d97706; font-weight: 700; }
    .motivation-badge.cyan { background: rgba(6,182,212,0.2); color: var(--accent-cyan); border: 1px solid var(--accent-cyan); }
    .motivation-badge.blue { background: rgba(59,130,246,0.2); color: var(--accent-blue); border: 1px solid var(--accent-blue); }
    .motivation-badge.red { background: rgba(239,68,68,0.2); color: var(--accent-red); border: 1px solid var(--accent-red); }
    .motivation-badge.orange { background: rgba(249,115,22,0.2); color: #f97316; border: 1px solid #f97316; }
    .motivation-badge.gray { background: rgba(156,163,175,0.2); color: var(--text-dark); border: 1px solid var(--border); }
    .standings-stats {
      display: flex;
      gap: 12px;
      font-size: 0.75rem;
      color: var(--text-dark);
    }
    .standings-stat {
      display: flex;
      align-items: center;
      gap: 4px;
    }
    
    /* INFORTUNATI */
    .injuries-card {
      background: rgba(239,68,68,0.05);
      border: 1px solid rgba(239,68,68,0.3);
      border-radius: 12px;
      padding: 12px;
    }
    .injuries-header {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 8px;
      font-weight: 600;
      color: var(--accent-red);
    }
    .injuries-list {
      display: flex;
      flex-wrap: wrap;
      gap: 6px;
    }
    .injury-chip {
      background: rgba(239,68,68,0.1);
      border: 1px solid rgba(239,68,68,0.3);
      padding: 4px 8px;
      border-radius: 6px;
      font-size: 0.7rem;
      color: var(--text);
    }
    .no-injuries {
      color: var(--accent-green);
      font-size: 0.8rem;
    }
    
    /* PANNELLO IMPOSTAZIONI */
    .settings-panel {
      position: fixed;
      top: 0;
      right: 0;
      width: 320px;
      height: 100vh;
      background: var(--bg-card);
      border-left: 1px solid var(--border);
      padding: 20px;
      z-index: 1000;
      overflow-y: auto;
      transform: translateX(100%);
      transition: transform 0.3s ease;
    }
    .settings-panel.open { transform: translateX(0); }
    .settings-overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0,0,0,0.5);
      z-index: 999;
      display: none;
    }
    .settings-overlay.open { display: block; }
    .settings-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 20px;
      padding-bottom: 15px;
      border-bottom: 1px solid var(--border);
    }
    .settings-title {
      font-size: 1.2rem;
      font-weight: 700;
      color: var(--text);
    }
    .settings-close {
      background: none;
      border: none;
      color: var(--text-dark);
      font-size: 1.5rem;
      cursor: pointer;
    }
    .settings-section {
      margin-bottom: 20px;
    }
    .settings-section-title {
      font-size: 0.85rem;
      font-weight: 600;
      color: var(--accent-cyan);
      margin-bottom: 12px;
    }
    .settings-row {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 12px;
    }
    .settings-label {
      font-size: 0.85rem;
      color: var(--text);
    }
    .settings-input {
      width: 70px;
      padding: 6px 10px;
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 6px;
      color: var(--text);
      text-align: center;
    }
    .settings-toggle {
      position: relative;
      width: 44px;
      height: 24px;
      background: var(--bg-input);
      border-radius: 12px;
      cursor: pointer;
      transition: background 0.3s;
    }
    .settings-toggle.active { background: var(--accent-green); }
    .settings-toggle::after {
      content: '';
      position: absolute;
      top: 2px;
      left: 2px;
      width: 20px;
      height: 20px;
      background: white;
      border-radius: 50%;
      transition: transform 0.3s;
    }
    .settings-toggle.active::after { transform: translateX(20px); }
    
    /* STORICO WIN RATE */
    .history-chart {
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 16px;
      margin-top: 12px;
    }
    .history-bars {
      display: flex;
      align-items: flex-end;
      gap: 4px;
      height: 80px;
      margin-bottom: 8px;
    }
    .history-bar {
      flex: 1;
      background: var(--accent-cyan);
      border-radius: 4px 4px 0 0;
      min-height: 4px;
      position: relative;
    }
    .history-bar.won { background: var(--accent-green); }
    .history-bar.lost { background: var(--accent-red); }
    .history-labels {
      display: flex;
      justify-content: space-between;
      font-size: 0.65rem;
      color: var(--text-dark);
    }
    
    /* WIN RATE PER SEGNO */
    .winrate-grid {
      display: flex;
      flex-direction: column;
      gap: 12px;
      margin-bottom: 16px;
    }
    .winrate-item {
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 10px;
      padding: 12px;
    }
    .winrate-label {
      font-weight: 700;
      font-size: 0.85rem;
      color: var(--text-white);
      margin-bottom: 6px;
    }
    .winrate-stats {
      display: flex;
      gap: 12px;
      font-size: 0.75rem;
      color: var(--text-gray);
      margin-bottom: 8px;
    }
    .winrate-won { color: var(--accent-green); }
    .winrate-lost { color: var(--accent-red); }
    .winrate-bar {
      height: 8px;
      background: var(--bg-dark);
      border-radius: 4px;
      overflow: hidden;
      margin-bottom: 4px;
    }
    .winrate-bar-fill {
      height: 100%;
      border-radius: 4px;
      transition: width 0.3s;
    }
    .winrate-bar-fill.good { background: linear-gradient(90deg, var(--accent-green), var(--accent-cyan)); }
    .winrate-bar-fill.bad { background: linear-gradient(90deg, var(--accent-red), var(--accent-yellow)); }
    .winrate-percent {
      font-family: 'JetBrains Mono', monospace;
      font-size: 0.9rem;
      font-weight: 700;
      color: var(--accent-cyan);
      text-align: right;
    }
    .winrate-summary {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 8px;
      padding: 12px;
      background: var(--bg-card);
      border-radius: 10px;
      border: 1px solid var(--border);
    }
    .winrate-summary-item {
      text-align: center;
    }
    .winrate-summary-item span {
      display: block;
      font-size: 0.65rem;
      color: var(--text-dark);
      margin-bottom: 2px;
    }
    .winrate-summary-item strong {
      font-size: 1rem;
      font-weight: 700;
    }
    
    /* SETTINGS BUTTON */
    .settings-btn {
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 8px;
      padding: 8px 12px;
      color: var(--text);
      cursor: pointer;
      display: flex;
      align-items: center;
      gap: 6px;
      font-size: 0.85rem;
      transition: all 0.2s;
    }
    .settings-btn:hover {
      border-color: var(--accent-cyan);
      background: rgba(6,182,212,0.1);
    }
    
    /* BUTTON STYLES */
    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 12px 24px;
      font-size: 0.9rem;
      font-weight: 600;
      border-radius: 12px;
      cursor: pointer;
      transition: all 0.2s ease;
      border: none;
      outline: none;
      position: relative;
      z-index: 10;
      user-select: none;
    }
    .btn-primary {
      background: linear-gradient(135deg, var(--accent-cyan), var(--accent-blue));
      color: white;
      box-shadow: 0 4px 12px rgba(6,182,212,0.3);
    }
    .btn-primary:hover {
      transform: translateY(-2px);
      box-shadow: 0 6px 20px rgba(6,182,212,0.4);
    }
    .btn-primary:active {
      transform: translateY(0);
    }
    .btn-secondary {
      background: var(--bg-card-light);
      color: var(--text-white);
      border: 1px solid var(--border);
    }
    .btn-secondary:hover {
      background: var(--bg-input);
      border-color: var(--accent-cyan);
    }
    .btn-secondary:active {
      transform: scale(0.98);
    }
    
    /* MG PROBABILE BOX */
    .mg-best-box {
      background: linear-gradient(135deg, rgba(139,92,246,0.08), rgba(59,130,246,0.08));
      border: 2px solid var(--accent-purple);
      border-radius: 10px;
      padding: 10px 12px;
      margin-top: 10px;
      text-align: center;
      box-shadow: 0 2px 6px rgba(139,92,246,0.15);
    }
    .mg-best-label {
      font-size: 0.7rem;
      color: var(--text-gray);
      margin-bottom: 4px;
      font-weight: 600;
    }
    .mg-best-value {
      font-size: 1rem;
      font-weight: 800;
      color: var(--accent-cyan);
    }
    .mg-best-prob {
      font-size: 0.75rem;
      color: var(--accent-emerald);
      font-weight: 700;
    }
    
    /* MG SOTTO RISULTATI ESATTI */
    .mg-under-scores {
      display: flex;
      gap: 12px;
      margin-top: 16px;
      padding-top: 12px;
      border-top: 1px solid var(--border);
    }
    .mg-box-compact {
      flex: 1;
      background: linear-gradient(135deg, rgba(217,119,6,0.08), rgba(16,185,129,0.08));
      border: 2px solid var(--accent-gold);
      border-radius: 10px;
      padding: 10px;
      text-align: center;
      box-shadow: 0 2px 6px rgba(217,119,6,0.12);
    }
    .mg-box-compact .mg-box-label {
      font-size: 0.7rem;
      color: #b45309;
      margin-bottom: 4px;
      font-weight: 600;
    }
    .mg-box-compact .mg-box-value {
      font-size: 1.1rem;
      font-weight: 800;
      color: #d97706;
    }
    .mg-box-compact .mg-box-prob {
      font-size: 0.8rem;
      color: var(--accent-emerald);
      font-family: 'JetBrains Mono', monospace;
      font-weight: 700;
    }
    
    /* LINEE OVER/UNDER CORNER E CARTELLINI */
    .ou-lines {
      display: flex;
      flex-direction: column;
      gap: 6px;
    }
    .ou-line-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 6px 10px;
      background: var(--bg-input);
      border-radius: 6px;
      font-size: 0.75rem;
    }
    .ou-line-label {
      color: var(--text-gray);
      font-weight: 500;
      flex: 1;
    }
    .ou-line-over, .ou-line-under {
      padding: 3px 8px;
      border-radius: 4px;
      font-family: 'JetBrains Mono', monospace;
      font-weight: 600;
      margin-left: 6px;
    }
    .ou-line-over {
      background: rgba(16,185,129,0.12);
      color: var(--accent-emerald);
      font-weight: 700;
    }
    .ou-line-under {
      background: rgba(239,68,68,0.12);
      color: var(--accent-red);
      font-weight: 700;
    }
    .ou-line-over.highlight {
      background: rgba(16,185,129,0.25);
      border: 1px solid var(--accent-green);
      font-weight: 800;
    }
    .ou-line-under.highlight {
      background: rgba(239,68,68,0.25);
      border: 1px solid var(--accent-red);
      font-weight: 800;
    }
    
    /* PRONOSTICI AI */
    .predictions-panel {
      background: linear-gradient(135deg, var(--bg-card), var(--bg-card-light));
      border: 1px solid var(--border);
      border-radius: 20px;
      padding: 24px;
      margin-bottom: 20px;
      box-shadow: 0 4px 16px rgba(0,0,0,0.06);
    }
    .predictions-header { text-align: center; margin-bottom: 20px; }
    .predictions-title {
      font-size: 1.3rem; font-weight: 800; margin-bottom: 8px;
      background: linear-gradient(135deg, var(--accent-cyan), var(--accent-blue));
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .predictions-subtitle { font-size: 0.8rem; color: var(--text-dark); }
    .predictions-legend { display: flex; justify-content: center; gap: 16px; margin-top: 10px; font-size: 0.7rem; }
    .legend-item { display: flex; align-items: center; gap: 4px; }
    .legend-dot { width: 10px; height: 10px; border-radius: 50%; box-shadow: 0 2px 4px rgba(0,0,0,0.15); }
    .legend-dot.high { background: var(--accent-green); box-shadow: 0 2px 6px rgba(16,185,129,0.4); }
    .legend-dot.mid { background: var(--accent-yellow); box-shadow: 0 2px 6px rgba(245,158,11,0.4); }
    .legend-dot.low { background: var(--accent-red); box-shadow: 0 2px 6px rgba(239,68,68,0.4); }
    .predictions-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 12px; }
    .prediction-card {
      background: var(--bg-input);
      border: 2px solid var(--border);
      border-radius: 14px;
      padding: 16px;
      text-align: center;
      cursor: pointer;
      transition: all 0.2s;
      position: relative;
    }
    .prediction-card:hover { 
      border-color: var(--accent-cyan); 
      transform: translateY(-2px); 
      box-shadow: 0 4px 12px rgba(2,132,199,0.2);
    }
    .prediction-card.selected { 
      border-color: var(--accent-green); 
      background: rgba(16,185,129,0.08); 
      box-shadow: 0 4px 12px rgba(16,185,129,0.25);
    }
    .prediction-card.selected::after {
      content: 'Ã¢Å“â€œ';
      position: absolute;
      top: 8px; right: 8px;
      width: 20px; height: 20px;
      background: var(--accent-green);
      border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      font-size: 0.7rem; font-weight: 700;
    }
    .prediction-market { font-size: 0.65rem; color: var(--text-dark); text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 6px; }
    .prediction-value { font-size: 1.1rem; font-weight: 800; margin-bottom: 8px; }
    .prediction-prob {
      display: inline-flex; align-items: center; gap: 4px;
      padding: 4px 10px;
      border-radius: 12px;
      font-family: 'JetBrains Mono', monospace;
      font-size: 0.75rem; font-weight: 600;
    }
    .prediction-prob.high { background: rgba(16,185,129,0.2); color: var(--accent-green); }
    .prediction-prob.mid { background: rgba(251,191,36,0.2); color: var(--accent-yellow); }
    .prediction-prob.low { background: rgba(239,68,68,0.2); color: var(--accent-red); }
    
    /* HOME SECTIONS - Picks del giorno */
    .home-sections { display: flex; flex-direction: column; gap: 20px; margin-bottom: 24px; }
    .picks-section {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 16px;
      padding: 20px;
      position: relative;
      overflow: hidden;
    }
    .picks-section::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0;
      height: 3px;
    }
    .picks-section.raddoppi::before { background: linear-gradient(90deg, var(--accent-green), var(--accent-cyan)); }
    .picks-section.gg::before { background: linear-gradient(90deg, var(--accent-yellow), var(--accent-green)); }
    .picks-section.over::before { background: linear-gradient(90deg, var(--accent-cyan), var(--accent-blue)); }
    .picks-section.pareggi::before { background: linear-gradient(90deg, var(--accent-purple), var(--accent-blue)); }
    .picks-section.over1t::before { background: linear-gradient(90deg, var(--accent-red), var(--accent-yellow)); }
    
    /* AI CONSIGLIO */
    .ai-advice {
      background: linear-gradient(135deg, rgba(168,85,247,0.15), rgba(34,211,238,0.15));
      border: 2px solid var(--accent-purple);
      border-radius: 20px;
      padding: 24px;
      margin-bottom: 20px;
      position: relative;
      overflow: hidden;
    }
    .ai-advice::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0;
      height: 4px;
      background: linear-gradient(90deg, var(--accent-purple), var(--accent-cyan), var(--accent-green));
    }
    .ai-header {
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 16px;
    }
    .ai-icon {
      width: 48px;
      height: 48px;
      background: linear-gradient(135deg, var(--accent-purple), var(--accent-cyan));
      border-radius: 14px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.5rem;
    }
    .ai-title-group { flex: 1; }
    .ai-title {
      font-size: 1.1rem;
      font-weight: 800;
      background: linear-gradient(135deg, var(--accent-purple), var(--accent-cyan));
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .ai-subtitle { font-size: 0.75rem; color: var(--text-dark); }
    .ai-confidence {
      padding: 6px 14px;
      border-radius: 20px;
      font-size: 0.8rem;
      font-weight: 700;
    }
    .ai-confidence.high { background: rgba(16,185,129,0.2); color: var(--accent-green); }
    .ai-confidence.medium { background: rgba(251,191,36,0.2); color: var(--accent-yellow); }
    .ai-confidence.low { background: rgba(239,68,68,0.2); color: var(--accent-red); }
    .ai-pick {
      background: var(--bg-input);
      border-radius: 16px;
      padding: 20px;
      text-align: center;
      margin-bottom: 16px;
    }
    .ai-pick-label { font-size: 0.7rem; color: var(--text-dark); text-transform: uppercase; letter-spacing: 1px; margin-bottom: 8px; }
    .ai-pick-value {
      font-size: 1.8rem;
      font-weight: 800;
      color: var(--accent-cyan);
      margin-bottom: 4px;
    }
    .ai-pick-prob {
      font-family: 'JetBrains Mono', monospace;
      font-size: 1rem;
      color: var(--accent-green);
    }
    .ai-reasoning {
      background: var(--bg-card-light);
      border-radius: 12px;
      padding: 16px;
    }
    .ai-reasoning-title {
      font-size: 0.75rem;
      color: var(--text-dark);
      text-transform: uppercase;
      letter-spacing: 0.5px;
      margin-bottom: 10px;
      display: flex;
      align-items: center;
      gap: 6px;
    }
    .ai-reasoning-list { display: flex; flex-direction: column; gap: 8px; }
    .ai-reason {
      display: flex;
      align-items: center;
      gap: 10px;
      font-size: 0.85rem;
      color: var(--text-gray);
    }
    .ai-reason-icon { font-size: 1rem; }
    .ai-reason.positive { color: var(--accent-green); }
    .ai-reason.negative { color: var(--accent-red); }
    .ai-reason.neutral { color: var(--accent-yellow); }
    .ai-alternatives {
      margin-top: 16px;
      padding-top: 16px;
      border-top: 1px solid var(--border);
    }
    .ai-alt-title { font-size: 0.7rem; color: var(--text-dark); margin-bottom: 10px; }
    .ai-alt-grid { display: flex; gap: 10px; flex-wrap: wrap; }
    .ai-alt-chip {
      padding: 8px 14px;
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 20px;
      font-size: 0.8rem;
      color: var(--text-gray);
      cursor: pointer;
      transition: all 0.2s;
    }
    .ai-alt-chip:hover { border-color: var(--accent-cyan); color: var(--text-white); }
    
    /* LIVE BETTING */
    .live-tab { 
      background: linear-gradient(135deg, var(--accent-red), #ff6b6b) !important; 
      animation: livePulse 2s infinite;
    }
    .live-tab.active { box-shadow: 0 0 20px rgba(239,68,68,0.5); }
    @keyframes livePulse {
      0%, 100% { opacity: 1; }
      50% { opacity: 0.8; }
    }
    .live-badge-count {
      background: white;
      color: var(--accent-red);
      font-size: 0.7rem;
      font-weight: 800;
      padding: 2px 6px;
      border-radius: 10px;
      margin-left: 6px;
    }
    .live-section {
      background: linear-gradient(145deg, rgba(239,68,68,0.08), rgba(251,191,36,0.08));
      border: 1px solid rgba(239,68,68,0.3);
      border-radius: 20px;
      padding: 20px;
      margin-bottom: 20px;
    }
    .live-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 16px;
    }
    .live-title {
      font-size: 1.1rem;
      font-weight: 800;
      color: var(--accent-red);
      display: flex;
      align-items: center;
      gap: 8px;
    }
    .live-dot {
      width: 10px;
      height: 10px;
      background: var(--accent-red);
      border-radius: 50%;
      animation: livePulse 1s infinite;
    }
    .live-refresh-btn {
      padding: 8px 16px;
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 10px;
      color: var(--text-gray);
      font-size: 0.8rem;
      cursor: pointer;
      transition: all 0.2s;
    }
    .live-refresh-btn:hover { border-color: var(--accent-cyan); color: var(--text-white); }
    .live-alerts-grid { display: flex; flex-direction: column; gap: 16px; }
    .live-alert-card {
      background: var(--bg-card);
      border-radius: 16px;
      overflow: hidden;
      border: 1px solid var(--border);
      transition: all 0.3s;
    }
    .live-alert-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.3); }
    .live-alert-card.high { border-color: var(--accent-red); border-width: 2px; }
    .live-alert-card.medium { border-color: var(--accent-yellow); }
    .live-alert-card.low { border-color: var(--accent-cyan); }
    .live-alert-header {
      padding: 12px 16px;
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
    .live-alert-card.high .live-alert-header { background: rgba(239,68,68,0.15); }
    .live-alert-card.medium .live-alert-header { background: rgba(251,191,36,0.15); }
    .live-alert-card.low .live-alert-header { background: rgba(34,211,238,0.15); }
    .live-alert-level {
      font-size: 0.75rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.5px;
    }
    .live-alert-card.high .live-alert-level { color: var(--accent-red); }
    .live-alert-card.medium .live-alert-level { color: var(--accent-yellow); }
    .live-alert-card.low .live-alert-level { color: var(--accent-cyan); }
    .live-alert-time {
      display: flex;
      align-items: center;
      gap: 6px;
      font-family: 'JetBrains Mono', monospace;
      font-weight: 700;
      color: var(--accent-red);
    }
    .live-alert-body { padding: 16px; }
    .live-alert-match {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 12px;
    }
    .live-alert-teams { font-weight: 600; color: var(--text-white); }
    .live-alert-score {
      font-family: 'JetBrains Mono', monospace;
      font-size: 1.2rem;
      font-weight: 800;
      color: var(--accent-cyan);
      background: var(--bg-input);
      padding: 6px 12px;
      border-radius: 8px;
    }
    .live-alert-stats {
      display: flex;
      gap: 16px;
      flex-wrap: wrap;
      margin-bottom: 12px;
      padding: 10px;
      background: var(--bg-input);
      border-radius: 10px;
    }
    .live-stat {
      font-size: 0.8rem;
      color: var(--text-gray);
    }
    .live-stat strong { color: var(--text-white); }
    .live-alert-pick {
      background: linear-gradient(135deg, rgba(16,185,129,0.15), rgba(34,211,238,0.15));
      border: 1px solid var(--accent-green);
      border-radius: 12px;
      padding: 14px;
      text-align: center;
    }
    .live-pick-label { font-size: 0.7rem; color: var(--text-dark); margin-bottom: 6px; }
    .live-pick-value {
      font-size: 1.3rem;
      font-weight: 800;
      color: var(--accent-green);
    }
    .live-pick-details {
      display: flex;
      justify-content: center;
      gap: 16px;
      margin-top: 8px;
      font-size: 0.85rem;
    }
    .live-pick-prob { color: var(--accent-cyan); }
    .live-pick-reason {
      font-size: 0.8rem;
      color: var(--text-gray);
      margin-top: 10px;
      font-style: italic;
    }
    .live-empty {
      text-align: center;
      padding: 40px;
      color: var(--text-dark);
    }
    .live-empty-icon { font-size: 3rem; margin-bottom: 12px; }
    .live-filters {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
    }
    .live-filter-btn {
      padding: 6px 14px;
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 20px;
      font-size: 0.8rem;
      color: var(--text-gray);
      cursor: pointer;
      transition: all 0.2s;
    }
    .live-filter-btn:hover { border-color: var(--accent-cyan); }
    .live-filter-btn.active { background: var(--accent-cyan); color: var(--bg-dark); border-color: var(--accent-cyan); }
    .live-auto-refresh {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 0.75rem;
      color: var(--text-dark);
    }
    .live-countdown {
      font-family: 'JetBrains Mono', monospace;
      color: var(--accent-cyan);
    }
    .ai-alt-chip span { color: var(--accent-green); margin-left: 6px; }

    /* DUAL ADVICE LAYOUT */
    .dual-advice-container {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 20px;
      margin-bottom: 20px;
    }
    @media (max-width: 968px) {
      .dual-advice-container { grid-template-columns: 1fr; }
    }

    /* STATISTICAL ADVICE */
    .statistical-advice {
      background: linear-gradient(135deg, rgba(34,211,238,0.15), rgba(16,185,129,0.15));
      border: 2px solid var(--accent-cyan);
      border-radius: 20px;
      padding: 24px;
      position: relative;
      overflow: hidden;
    }
    .statistical-advice::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0;
      height: 4px;
      background: linear-gradient(90deg, var(--accent-cyan), var(--accent-green), var(--accent-yellow));
    }

    /* SMART FILTERS */
    .smart-filters-section {
      background: linear-gradient(145deg, rgba(168,85,247,0.08), rgba(34,211,238,0.08));
      border: 1px solid rgba(168,85,247,0.3);
      border-radius: 20px;
      padding: 20px;
      margin-bottom: 20px;
      position: relative;
    }
    .smart-filters-section::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0;
      height: 3px;
      background: linear-gradient(90deg, var(--accent-purple), var(--accent-cyan), var(--accent-green));
    }
    .filters-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 16px;
      flex-wrap: wrap;
      gap: 10px;
    }
    .filters-title {
      font-size: 1.1rem;
      font-weight: 800;
      color: var(--accent-purple);
      display: flex;
      align-items: center;
      gap: 8px;
    }
    .filters-count {
      padding: 4px 12px;
      background: var(--bg-input);
      border-radius: 12px;
      font-size: 0.75rem;
      color: var(--text-gray);
    }
    .filter-buttons {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      margin-bottom: 16px;
    }
    .filter-btn {
      padding: 10px 20px;
      background: var(--bg-input);
      border: 2px solid var(--border);
      border-radius: 12px;
      color: var(--text-gray);
      font-size: 0.85rem;
      font-weight: 700;
      cursor: pointer;
      transition: all 0.2s;
    }
    .filter-btn:hover {
      border-color: var(--accent-cyan);
      color: var(--text-white);
      transform: translateY(-2px);
    }
    .filter-btn.active {
      background: linear-gradient(135deg, var(--accent-purple), var(--accent-cyan));
      border-color: var(--accent-purple);
      color: white;
      box-shadow: 0 4px 15px rgba(168,85,247,0.4);
    }
    .filtered-picks {
      display: flex;
      flex-direction: column;
      gap: 8px;
      max-height: 500px;
      overflow-y: auto;
    }
    .filtered-pick-card {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 12px 16px;
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 12px;
      cursor: pointer;
      transition: all 0.2s;
    }
    .filtered-pick-card:hover {
      border-color: var(--accent-cyan);
      transform: translateX(4px);
    }
    .filtered-pick-rank {
      width: 28px;
      height: 28px;
      background: var(--bg-input);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.75rem;
      font-weight: 700;
      color: var(--text-gray);
      flex-shrink: 0;
    }
    .filtered-pick-left {
      flex: 1;
      min-width: 0;
    }
    .filtered-pick-match {
      font-size: 0.85rem;
      font-weight: 600;
      color: var(--text-white);
      margin-bottom: 4px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .filtered-pick-league {
      font-size: 0.7rem;
      color: var(--text-dark);
    }
    .filtered-pick-right {
      display: flex;
      align-items: center;
      gap: 10px;
      flex-shrink: 0;
    }
    .filtered-pick-bet {
      padding: 6px 14px;
      background: var(--accent-purple);
      border-radius: 8px;
      font-size: 0.85rem;
      font-weight: 700;
      color: white;
    }
    .filtered-pick-prob {
      font-family: 'JetBrains Mono', monospace;
      font-size: 1.1rem;
      font-weight: 800;
      color: var(--accent-green);
      min-width: 55px;
      text-align: right;
    }
    .picks-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
    .picks-title { display: flex; align-items: center; gap: 10px; font-size: 1rem; font-weight: 700; }
    .picks-title-icon { font-size: 1.3rem; }
    .picks-count { 
      padding: 4px 12px; 
      background: var(--bg-input); 
      border-radius: 12px; 
      font-size: 0.75rem; 
      color: var(--text-gray); 
    }
    .picks-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }
    .pick-card {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 14px 16px;
      background: var(--bg-card-light);
      border: 1px solid var(--border);
      border-radius: 12px;
      cursor: pointer;
      transition: all 0.2s;
    }
    .pick-card:hover { border-color: var(--accent-cyan); transform: translateX(4px); }
    .pick-card.selected { border-color: var(--accent-green); background: rgba(16,185,129,0.1); }
    .pick-info { flex: 1; min-width: 0; }
    .pick-match { font-size: 0.8rem; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-bottom: 4px; }
    .pick-league { font-size: 0.65rem; color: var(--text-dark); }
    .pick-bet { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
    .pick-value { font-weight: 700; color: var(--accent-cyan); }
    .pick-prob { 
      font-family: 'JetBrains Mono', monospace; 
      font-size: 0.75rem; 
      padding: 2px 8px; 
      border-radius: 6px;
      background: rgba(16,185,129,0.2); 
      color: var(--accent-green); 
    }
    
    /* RADDOPPI COMBINATI */
    .raddoppi-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 14px; }
    .raddoppio-card {
      background: linear-gradient(145deg, var(--bg-card-light), var(--bg-input));
      border: 2px solid var(--accent-green);
      border-radius: 14px;
      padding: 16px;
      cursor: pointer;
      transition: all 0.2s;
    }
    .raddoppio-card:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(16,185,129,0.2); }
    .raddoppio-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
    .raddoppio-badge {
      background: var(--accent-green);
      color: var(--bg-dark);
      padding: 4px 10px;
      border-radius: 8px;
      font-size: 0.7rem;
      font-weight: 700;
    }
    .raddoppio-odds {
      font-family: 'JetBrains Mono', monospace;
      font-size: 1.1rem;
      font-weight: 700;
      color: var(--accent-cyan);
    }
    .raddoppio-bets { display: flex; flex-direction: column; gap: 8px; margin-bottom: 12px; }
    .raddoppio-bet {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 8px 12px;
      background: var(--bg-input);
      border-radius: 8px;
    }
    .raddoppio-match { font-size: 0.8rem; color: var(--text-gray); }
    .raddoppio-pick { 
      font-weight: 700; 
      color: var(--accent-cyan);
      padding: 2px 8px;
      background: rgba(34,211,238,0.15);
      border-radius: 4px;
      font-size: 0.8rem;
    }
    .raddoppio-footer { text-align: center; }
    .raddoppio-prob {
      font-family: 'JetBrains Mono', monospace;
      font-size: 0.85rem;
      color: var(--accent-green);
      font-weight: 600;
    }
    
    /* MONEY MANAGEMENT */
    .money-section {
      background: linear-gradient(135deg, var(--bg-card), var(--bg-card-light));
      border: 2px solid var(--accent-purple);
      border-radius: 20px;
      padding: 24px;
    }
    .money-header { text-align: center; margin-bottom: 20px; }
    .money-title { 
      font-size: 1.2rem; font-weight: 800; 
      background: linear-gradient(135deg, var(--accent-purple), var(--accent-cyan));
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      margin-bottom: 6px;
    }
    .money-subtitle { font-size: 0.8rem; color: var(--text-dark); }
    .money-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; margin-bottom: 20px; }
    .money-input-group { display: flex; flex-direction: column; gap: 6px; }
    .money-label { font-size: 0.75rem; color: var(--text-gray); text-transform: uppercase; letter-spacing: 0.5px; }
    .money-input {
      padding: 14px 16px;
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 12px;
      color: var(--text-white);
      font-size: 1.1rem;
      font-family: 'JetBrains Mono', monospace;
      font-weight: 600;
    }
    .money-input:focus { outline: none; border-color: var(--accent-cyan); }
    .money-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 12px; }
    .money-stat {
      background: var(--bg-input);
      border-radius: 12px;
      padding: 16px;
      text-align: center;
    }
    .money-stat-label { font-size: 0.65rem; color: var(--text-dark); text-transform: uppercase; margin-bottom: 6px; }
    .money-stat-value { font-family: 'JetBrains Mono', monospace; font-size: 1.3rem; font-weight: 700; }
    .money-stat-value.green { color: var(--accent-green); }
    .money-stat-value.cyan { color: var(--accent-cyan); }
    .money-stat-value.yellow { color: var(--accent-yellow); }
    .money-stat-value.purple { color: var(--accent-purple); }
    .money-strategy { 
      margin-top: 16px; 
      padding: 16px; 
      background: var(--bg-card-light); 
      border-radius: 12px; 
      display: flex; 
      flex-wrap: wrap; 
      gap: 12px; 
      justify-content: center;
    }
    .strategy-btn {
      padding: 10px 20px;
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 10px;
      color: var(--text-gray);
      font-size: 0.8rem;
      font-weight: 600;
      cursor: pointer;
      transition: all 0.2s;
    }
    .strategy-btn:hover { border-color: var(--accent-cyan); color: var(--text-white); }
    .strategy-btn.active { background: var(--accent-purple); border-color: var(--accent-purple); color: white; }
    
    /* SISTEMA OBIETTIVO */
    .money-grid-4 { 
      display: grid; 
      grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); 
      gap: 12px; 
      margin-bottom: 20px; 
    }
    .progress-section { margin-bottom: 20px; }
    .progress-bar-container {
      position: relative;
      height: 32px;
      background: var(--bg-input);
      border-radius: 16px;
      overflow: hidden;
    }
    .progress-bar-fill {
      position: absolute;
      top: 0; left: 0; bottom: 0;
      background: linear-gradient(90deg, var(--accent-green), var(--accent-cyan));
      border-radius: 16px;
      transition: width 0.5s;
    }
    .progress-bar-text {
      position: absolute;
      top: 50%; left: 50%;
      transform: translate(-50%, -50%);
      font-family: 'JetBrains Mono', monospace;
      font-size: 0.8rem;
      font-weight: 600;
      color: var(--text-white);
      text-shadow: 0 1px 3px rgba(0,0,0,0.5);
    }
    .stake-section {
      background: linear-gradient(145deg, rgba(34,211,238,0.1), rgba(59,130,246,0.1));
      border: 2px solid var(--accent-cyan);
      border-radius: 16px;
      padding: 20px;
      margin-bottom: 20px;
      text-align: center;
    }
    .stake-section.warning { border-color: var(--accent-yellow); }
    .stake-section.reached { border-color: var(--accent-green); background: rgba(16,185,129,0.15); }
    .stake-header {
      display: flex;
      justify-content: space-between;
      margin-bottom: 16px;
      font-size: 0.85rem;
    }
    .stake-label { color: var(--text-gray); font-weight: 600; }
    .stake-remaining { color: var(--accent-cyan); }
    .stake-reached {
      font-size: 1.5rem;
      font-weight: 800;
      color: var(--accent-green);
      padding: 20px;
    }
    .stake-value { margin-bottom: 12px; }
    .stake-amount {
      font-family: 'JetBrains Mono', monospace;
      font-size: 2.5rem;
      font-weight: 800;
      color: var(--accent-cyan);
      text-shadow: 0 0 20px rgba(34,211,238,0.5);
    }
    .stake-info { font-size: 0.85rem; color: var(--text-gray); margin-top: 8px; }
    .stake-warning { 
      font-size: 0.8rem; 
      color: var(--accent-yellow); 
      margin-top: 8px;
      padding: 6px 12px;
      background: rgba(251,191,36,0.1);
      border-radius: 8px;
      display: inline-block;
    }
    .stake-preview {
      font-size: 0.9rem;
      color: var(--text-gray);
      margin-bottom: 16px;
    }
    .stake-preview strong { color: var(--accent-green); }
    .stake-buttons { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
    .stake-btn {
      padding: 12px 28px;
      border: none;
      border-radius: 10px;
      font-size: 0.95rem;
      font-weight: 700;
      cursor: pointer;
      transition: all 0.2s;
    }
    .stake-btn.win { background: var(--accent-green); color: white; }
    .stake-btn.win:hover { transform: scale(1.05); box-shadow: 0 4px 16px rgba(16,185,129,0.4); }
    .stake-btn.loss { background: var(--accent-red); color: white; }
    .stake-btn.loss:hover { transform: scale(1.05); box-shadow: 0 4px 16px rgba(239,68,68,0.4); }
    .stake-btn.reset { background: var(--bg-card); border: 1px solid var(--border); color: var(--text-gray); }
    .stake-btn.reset:hover { border-color: var(--accent-cyan); color: var(--text-white); }
    
    /* SCHEDINA FLOATING */
    .slip-floating {
      position: fixed;
      bottom: 0; left: 0; right: 0;
      background: rgba(12,18,34,0.98);
      backdrop-filter: blur(20px);
      border-top: 1px solid var(--border);
      padding: 12px 20px;
      z-index: 1000;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 16px;
    }
    .slip-count {
      display: flex; align-items: center; gap: 8px;
      padding: 8px 16px;
      background: var(--accent-cyan);
      border-radius: 20px;
      font-weight: 700;
      color: var(--bg-dark);
    }
    .slip-btn {
      padding: 10px 20px;
      border: none;
      border-radius: 10px;
      font-size: 0.85rem; font-weight: 700;
      cursor: pointer;
      display: flex; align-items: center; gap: 6px;
    }
    .slip-btn.primary { background: var(--accent-green); color: white; }
    .slip-btn.secondary { background: var(--bg-card); border: 1px solid var(--border); color: var(--text-white); }
    .slip-btn.danger { background: transparent; border: 1px solid var(--accent-red); color: var(--accent-red); }
    
    /* SLIP MODAL */
    .slip-modal {
      position: fixed;
      top: 0; left: 0; right: 0; bottom: 0;
      background: rgba(0,0,0,0.8);
      z-index: 2000;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 20px;
    }
    .slip-modal-content {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 20px;
      width: 100%;
      max-width: 500px;
      max-height: 80vh;
      overflow-y: auto;
    }
    .slip-modal-header {
      padding: 20px;
      border-bottom: 1px solid var(--border);
      display: flex;
      align-items: center;
      justify-content: space-between;
    }
    .slip-modal-title { font-size: 1.2rem; font-weight: 700; }
    .slip-modal-close {
      width: 32px; height: 32px;
      background: var(--bg-input);
      border: none;
      border-radius: 8px;
      color: var(--text-gray);
      cursor: pointer;
      font-size: 1.2rem;
    }
    .slip-modal-body { padding: 20px; }
    .slip-item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 12px;
      background: var(--bg-card-light);
      border-radius: 10px;
      margin-bottom: 10px;
    }
    .slip-item-info { flex: 1; }
    .slip-item-match { font-size: 0.75rem; color: var(--text-dark); margin-bottom: 4px; }
    .slip-item-bet { font-weight: 700; }
    .slip-item-prob { font-size: 0.8rem; color: var(--accent-cyan); }
    .slip-item-remove {
      width: 28px; height: 28px;
      background: transparent;
      border: 1px solid var(--accent-red);
      border-radius: 6px;
      color: var(--accent-red);
      cursor: pointer;
    }
    .slip-total {
      padding: 16px;
      background: var(--bg-input);
      border-radius: 12px;
      text-align: center;
      margin-top: 16px;
    }
    .slip-total-label { font-size: 0.8rem; color: var(--text-dark); margin-bottom: 4px; }
    .slip-total-value { font-size: 1.5rem; font-weight: 800; color: var(--accent-green); }
    
    .loading { display: flex; flex-direction: column; align-items: center; padding: 40px; }
    .spinner { width: 40px; height: 40px; border: 3px solid var(--border); border-top-color: var(--accent-cyan); border-radius: 50%; animation: spin 1s linear infinite; margin-bottom: 12px; }
    @keyframes spin { to { transform: rotate(360deg); } }
    .loading-text { color: var(--text-gray); font-size: 0.9rem; }
    .empty { text-align: center; padding: 40px; color: var(--text-dark); }
    .empty-icon { font-size: 2.5rem; margin-bottom: 12px; }
    
    @media (max-width: 768px) {
      .main { padding: 16px; }
      .header { padding: 10px 16px; }
      .brand-name { font-size: 1.1rem; }
      .status-bar { font-size: 0.65rem; }
      .hero-match { gap: 16px; }
      .hero-team-logo, .hero-team-logo-fallback { width: 50px; height: 50px; }
      .hero-score-box { width: 40px; height: 40px; font-size: 1.2rem; }
      .analysis-grid { grid-template-columns: 1fr; }
      .predictions-grid { grid-template-columns: repeat(2, 1fr); }
      .stat-grid { grid-template-columns: repeat(3, 1fr); }
      .combo-grid { grid-template-columns: repeat(2, 1fr); }
      .slip-floating { flex-wrap: wrap; gap: 10px; padding: 10px 16px; }
    }
    
    /* TRACKING & STATS */
    .track-btn {
      background: linear-gradient(135deg, var(--accent-green), var(--accent-cyan));
      color: white;
      border: none;
      padding: 10px 20px;
      border-radius: 10px;
      font-weight: 700;
      cursor: pointer;
      margin-top: 12px;
      width: 100%;
      font-size: 0.95rem;
      transition: all 0.3s;
    }
    .track-btn:hover { transform: scale(1.02); box-shadow: 0 4px 15px rgba(16,185,129,0.4); }
    .track-btn:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }
    .track-btn.tracked { background: var(--text-dark); }
    
    .stats-section {
      background: linear-gradient(145deg, rgba(168,85,247,0.1), rgba(34,211,238,0.1));
      border: 1px solid rgba(168,85,247,0.3);
      border-radius: 20px;
      padding: 20px;
      margin-bottom: 20px;
    }
    .stats-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 16px;
    }
    .stats-title {
      font-size: 1.1rem;
      font-weight: 800;
      color: var(--accent-purple);
      display: flex;
      align-items: center;
      gap: 8px;
    }
    .stats-overview {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 12px;
      margin-bottom: 20px;
    }
    .stats-card {
      background: var(--bg-card);
      padding: 16px;
      border-radius: 12px;
      text-align: center;
    }
    .stats-card-value {
      font-size: 1.8rem;
      font-weight: 800;
      color: var(--text-white);
    }
    .stats-card-value.green { color: var(--accent-green); }
    .stats-card-value.red { color: var(--accent-red); }
    .stats-card-value.yellow { color: var(--accent-yellow); }
    .stats-card-label {
      font-size: 0.75rem;
      color: var(--text-gray);
      margin-top: 4px;
    }
    .stats-winrate {
      background: var(--bg-card);
      padding: 20px;
      border-radius: 16px;
      text-align: center;
      margin-bottom: 20px;
    }
    .stats-winrate-value {
      font-size: 3rem;
      font-weight: 800;
      background: linear-gradient(135deg, var(--accent-green), var(--accent-cyan));
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }
    .stats-winrate-label {
      font-size: 0.9rem;
      color: var(--text-gray);
    }
    .stats-breakdown {
      display: flex;
      flex-direction: column;
      gap: 8px;
    }
    .stats-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      background: var(--bg-card);
      padding: 12px 16px;
      border-radius: 10px;
    }
    .stats-row-label {
      font-weight: 600;
      color: var(--text-white);
    }
    .stats-row-value {
      display: flex;
      align-items: center;
      gap: 12px;
    }
    .stats-row-wr {
      font-weight: 700;
      padding: 4px 10px;
      border-radius: 6px;
      font-size: 0.85rem;
    }
    .stats-row-wr.good { background: rgba(16,185,129,0.2); color: var(--accent-green); }
    .stats-row-wr.medium { background: rgba(251,191,36,0.2); color: var(--accent-yellow); }
    .stats-row-wr.bad { background: rgba(239,68,68,0.2); color: var(--accent-red); }
    .stats-row-count {
      font-size: 0.8rem;
      color: var(--text-dark);
    }
    .stats-toggle-btn {
      padding: 8px 16px;
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 10px;
      color: var(--text-gray);
      font-size: 0.85rem;
      cursor: pointer;
      transition: all 0.2s;
    }
    .stats-toggle-btn:hover { border-color: var(--accent-purple); color: var(--text-white); }
    .stats-toggle-btn.active { background: var(--accent-purple); color: white; border-color: var(--accent-purple); }
    
    .live-track-btn {
      background: linear-gradient(135deg, var(--accent-green), var(--accent-cyan));
      color: white;
      border: none;
      padding: 8px 16px;
      border-radius: 8px;
      font-weight: 700;
      cursor: pointer;
      font-size: 0.85rem;
      margin-top: 10px;
      transition: all 0.2s;
    }
    .live-track-btn:hover { transform: scale(1.02); }
    .live-track-btn.tracked { background: var(--text-dark); }
    
    /* === CONSIGLI SECTION === */
    .consigli-section {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 16px;
      padding: 20px;
      margin-bottom: 20px;
    }
    .consigli-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 20px;
    }
    .consigli-title {
      font-size: 1.2rem;
      font-weight: 700;
      display: flex;
      align-items: center;
      gap: 10px;
    }
    .consigli-badge {
      padding: 6px 14px;
      background: linear-gradient(135deg, var(--accent-gold), var(--accent-emerald));
      border-radius: 20px;
      font-size: 0.75rem;
      font-weight: 700;
    }
    .consigli-category {
      background: var(--bg-card-light);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 16px;
      margin-bottom: 16px;
    }
    .consigli-category-header {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 12px;
      padding-bottom: 10px;
      border-bottom: 1px solid var(--border);
    }
    .consigli-category-icon {
      font-size: 1.2rem;
    }
    .consigli-category-title {
      font-weight: 700;
      font-size: 0.95rem;
      color: var(--accent-gold);
      flex: 1;
    }
    .consigli-category-count {
      padding: 4px 10px;
      background: var(--bg-input);
      border-radius: 8px;
      font-size: 0.7rem;
      font-weight: 600;
      color: var(--text-gray);
    }
    .consigli-grid {
      display: flex;
      flex-direction: column;
      gap: 8px;
    }
    .consiglio-card {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 12px;
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 10px;
      cursor: pointer;
      transition: all 0.2s;
    }
    .consiglio-card:hover {
      border-color: var(--accent-gold);
      transform: translateX(4px);
    }
    .consiglio-rank {
      width: 28px;
      height: 28px;
      background: linear-gradient(135deg, var(--accent-gold), var(--accent-emerald));
      border-radius: 8px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 700;
      font-size: 0.8rem;
      flex-shrink: 0;
    }
    .consiglio-info {
      flex: 1;
      min-width: 0;
    }
    .consiglio-match {
      font-weight: 600;
      font-size: 0.85rem;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .consiglio-league {
      font-size: 0.7rem;
      color: var(--text-dark);
    }
    .consiglio-bet {
      text-align: right;
      flex-shrink: 0;
    }
    .consiglio-value {
      display: block;
      font-weight: 700;
      font-size: 0.9rem;
      color: var(--accent-gold);
    }
    .consiglio-prob {
      font-family: 'JetBrains Mono', monospace;
      font-size: 0.8rem;
      color: var(--accent-emerald);
    }
    .consigli-tab.active {
      background: linear-gradient(135deg, rgba(245,158,11,0.2), rgba(16,185,129,0.2));
      border-color: var(--accent-gold);
      color: var(--accent-gold);
    }
    
    /* === TRADER SECTION === */
    .trader-section {
      background: linear-gradient(135deg, rgba(245,158,11,0.08), rgba(16,185,129,0.08));
      border: 1px solid rgba(245,158,11,0.25);
      border-radius: 16px;
      padding: 20px;
      margin-bottom: 20px;
    }
    .trader-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 16px;
      flex-wrap: wrap;
      gap: 12px;
    }
    .trader-title {
      display: flex;
      align-items: center;
      gap: 12px;
    }
    .trader-icon {
      width: 44px;
      height: 44px;
      background: linear-gradient(135deg, var(--accent-gold), var(--accent-emerald));
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.4rem;
      box-shadow: var(--glow-gold);
    }
    .trader-title-text h3 {
      font-size: 1.1rem;
      font-weight: 700;
      background: linear-gradient(135deg, var(--accent-gold), var(--accent-emerald));
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .trader-title-text p {
      font-size: 0.7rem;
      color: var(--text-dark);
    }
    .trader-stats {
      display: flex;
      gap: 16px;
    }
    .trader-stat {
      text-align: center;
    }
    .trader-stat-value {
      font-family: 'JetBrains Mono', monospace;
      font-size: 1.3rem;
      font-weight: 800;
      color: var(--accent-gold);
    }
    .trader-stat-label {
      font-size: 0.6rem;
      color: var(--text-dark);
      text-transform: uppercase;
    }
    .trader-content {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
    }
    @media (max-width: 768px) {
      .trader-content { grid-template-columns: 1fr; }
    }
    .trader-box {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 16px;
    }
    .trader-box-title {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 12px;
      font-size: 0.85rem;
      font-weight: 600;
      color: var(--accent-gold);
    }
    .trader-picks {
      display: flex;
      flex-direction: column;
      gap: 10px;
    }
    .trader-pick {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 10px 12px;
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 8px;
      cursor: pointer;
      transition: all 0.2s;
    }
    .trader-pick:hover {
      border-color: var(--accent-gold);
      transform: translateX(4px);
    }
    .trader-pick-info {
      flex: 1;
      min-width: 0;
    }
    .trader-pick-match {
      font-size: 0.8rem;
      font-weight: 600;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .trader-pick-league {
      font-size: 0.65rem;
      color: var(--text-dark);
    }
    .trader-pick-bet {
      text-align: right;
    }
    .trader-pick-value {
      font-weight: 700;
      color: var(--accent-gold);
      font-size: 0.9rem;
    }
    .trader-pick-prob {
      font-family: 'JetBrains Mono', monospace;
      font-size: 0.75rem;
      color: var(--accent-emerald);
    }
    .trader-combined {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 12px;
      background: linear-gradient(135deg, var(--accent-gold), var(--accent-emerald));
      border-radius: 10px;
      margin-top: 12px;
    }
    .trader-combined-label {
      font-size: 0.75rem;
      font-weight: 600;
    }
    .trader-combined-value {
      font-family: 'JetBrains Mono', monospace;
      font-size: 1.2rem;
      font-weight: 800;
    }
    .trader-strategy {
      font-size: 0.7rem;
      color: var(--text-gray);
      background: var(--bg-input);
      padding: 10px;
      border-radius: 8px;
      margin-top: 10px;
      line-height: 1.5;
    }
    .trader-strategy strong {
      color: var(--accent-gold);
    }
    
    /* === TRADER VERDICT (Analysis Page) === */
    .trader-verdict {
      background: linear-gradient(135deg, rgba(245,158,11,0.1), rgba(16,185,129,0.1));
      border: 2px solid rgba(245,158,11,0.3);
      border-radius: 16px;
      padding: 20px;
      margin-top: 20px;
      margin-bottom: 20px;
    }
    .verdict-header {
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 16px;
    }
    .verdict-icon {
      width: 48px;
      height: 48px;
      background: linear-gradient(135deg, var(--accent-gold), var(--accent-emerald));
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.5rem;
      box-shadow: var(--glow-gold);
    }
    .verdict-title {
      flex: 1;
    }
    .verdict-title h3 {
      font-size: 1.1rem;
      font-weight: 700;
      background: linear-gradient(135deg, var(--accent-gold), var(--accent-emerald));
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .verdict-title p {
      font-size: 0.7rem;
      color: var(--text-dark);
    }
    .verdict-badge {
      padding: 8px 16px;
      border-radius: 20px;
      font-weight: 700;
      font-size: 0.85rem;
    }
    .verdict-badge.play { background: rgba(34,197,94,0.2); color: #22c55e; }
    .verdict-badge.caution { background: rgba(234,179,8,0.2); color: #eab308; }
    .verdict-badge.avoid { background: rgba(239,68,68,0.2); color: #ef4444; }
    .verdict-content {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
    }
    @media (max-width: 768px) {
      .verdict-content { grid-template-columns: 1fr; }
    }
    .verdict-box {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 16px;
    }
    .verdict-box-title {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 12px;
      font-size: 0.85rem;
      font-weight: 600;
      color: var(--accent-gold);
    }
    .verdict-main-pick {
      text-align: center;
      padding: 16px;
      background: var(--bg-input);
      border-radius: 10px;
      margin-bottom: 12px;
    }
    .verdict-main-pick-label {
      font-size: 0.65rem;
      color: var(--text-dark);
      text-transform: uppercase;
      margin-bottom: 6px;
    }
    .verdict-main-pick-value {
      font-size: 1.5rem;
      font-weight: 800;
      color: var(--accent-gold);
      margin-bottom: 4px;
    }
    .verdict-main-pick-prob {
      font-family: 'JetBrains Mono', monospace;
      font-size: 1.1rem;
      color: var(--accent-emerald);
    }
    .verdict-stars {
      color: var(--accent-gold);
      font-size: 0.9rem;
      margin-top: 6px;
    }
    .verdict-suggestion {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 10px 12px;
      background: var(--bg-input);
      border-radius: 8px;
      margin-bottom: 8px;
    }
    .verdict-suggestion-icon {
      font-size: 1rem;
    }
    .verdict-suggestion-text {
      font-size: 0.8rem;
      color: var(--text-gray);
    }
    .verdict-suggestion-text strong {
      color: var(--text-white);
    }
    .verdict-warning {
      display: flex;
      align-items: flex-start;
      gap: 8px;
      padding: 10px 12px;
      background: rgba(239,68,68,0.1);
      border: 1px solid rgba(239,68,68,0.2);
      border-radius: 8px;
      margin-top: 12px;
    }
    .verdict-warning-icon {
      font-size: 1rem;
      color: var(--accent-red);
    }
    .verdict-warning-text {
      font-size: 0.75rem;
      color: var(--text-gray);
      line-height: 1.4;
    }
    .verdict-warning-text strong {
      color: var(--accent-red);
    }
    
    /* Cache indicator */
    .cache-indicator {
      display: inline-flex;
      align-items: center;
      gap: 4px;
      padding: 4px 10px;
      background: rgba(245,158,11,0.1);
      border-radius: 6px;
      font-size: 0.65rem;
      color: var(--accent-gold);
      margin-left: 10px;
    }
    
    /* === STORICO VARIAZIONI PRONOSTICI === */
    .history-section {
      background: linear-gradient(135deg, rgba(139, 92, 246, 0.08), rgba(59, 130, 246, 0.08));
      border: 1px solid rgba(139, 92, 246, 0.25);
      border-radius: 16px;
      padding: 20px;
      margin-top: 20px;
      margin-bottom: 20px;
    }
    .history-header {
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 16px;
    }
    .history-icon {
      width: 44px;
      height: 44px;
      background: linear-gradient(135deg, var(--accent-purple), #3b82f6);
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.3rem;
    }
    .history-title h3 {
      font-size: 1rem;
      font-weight: 700;
      color: var(--text-white);
    }
    .history-title p {
      font-size: 0.7rem;
      color: var(--text-dark);
    }
    .history-timeline {
      display: flex;
      flex-direction: column;
      gap: 8px;
    }
    .history-item {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 10px 14px;
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 10px;
    }
    .history-item.current {
      border-color: var(--accent-gold);
      background: rgba(245, 158, 11, 0.08);
    }
    .history-item.significant {
      border-color: var(--accent-yellow);
      background: rgba(251, 191, 36, 0.08);
    }
    .history-time {
      font-family: 'JetBrains Mono', monospace;
      font-size: 0.7rem;
      color: var(--text-dark);
      min-width: 50px;
    }
    .history-pick {
      flex: 1;
      display: flex;
      align-items: center;
      gap: 8px;
    }
    .history-pick-value {
      font-weight: 700;
      color: var(--accent-gold);
      font-size: 0.85rem;
    }
    .history-pick-prob {
      font-family: 'JetBrains Mono', monospace;
      font-size: 0.75rem;
      padding: 2px 8px;
      background: rgba(16, 185, 129, 0.2);
      color: var(--accent-green);
      border-radius: 4px;
    }
    .history-change {
      font-size: 0.65rem;
      padding: 3px 8px;
      border-radius: 4px;
      font-weight: 600;
      white-space: nowrap;
    }
    .history-change.first { background: rgba(59, 130, 246, 0.2); color: #3b82f6; }
    .history-change.minor { background: rgba(100, 116, 139, 0.2); color: var(--text-gray); }
    .history-change.significant { background: rgba(251, 191, 36, 0.2); color: var(--accent-yellow); }
    .history-change.major { background: rgba(239, 68, 68, 0.2); color: var(--accent-red); }
    .history-empty {
      text-align: center;
      padding: 20px;
      color: var(--text-dark);
      font-size: 0.85rem;
    }
    .history-stats {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 10px;
      margin-top: 16px;
      padding-top: 16px;
      border-top: 1px solid var(--border);
    }
    .history-stat {
      text-align: center;
    }
    .history-stat-value {
      font-family: 'JetBrains Mono', monospace;
      font-size: 1.1rem;
      font-weight: 700;
      color: var(--accent-purple);
    }
    .history-stat-label {
      font-size: 0.6rem;
      color: var(--text-dark);
      text-transform: uppercase;
    }
    
    /* === PERFORMANCE & GRAFICI === */
    .chart-container {
      position: relative;
      background: var(--bg-card);
      border-radius: 16px;
      padding: 20px;
      margin-bottom: 20px;
      border: 1px solid var(--border);
    }
    .chart-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 16px;
      padding-bottom: 12px;
      border-bottom: 1px solid var(--border);
    }
    .chart-title {
      font-size: 1.1rem;
      font-weight: 700;
      color: var(--text-white);
      display: flex;
      align-items: center;
      gap: 10px;
    }
    .chart-filters {
      display: flex;
      gap: 8px;
    }
    .chart-filter-btn {
      padding: 6px 12px;
      background: var(--bg-input);
      border: 1px solid var(--border);
      border-radius: 8px;
      color: var(--text-gray);
      font-size: 0.8rem;
      cursor: pointer;
      transition: all 0.2s;
    }
    .chart-filter-btn:hover {
      border-color: var(--accent-cyan);
      color: var(--text-white);
    }
    .chart-filter-btn.active {
      background: var(--accent-cyan);
      color: white;
      border-color: var(--accent-cyan);
    }
    .chart-canvas-wrapper {
      position: relative;
      height: 300px;
    }
    canvas {
      max-height: 100%;
    }
    .performance-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
      gap: 16px;
      margin-bottom: 20px;
    }
    .performance-card {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: 16px;
      padding: 20px;
    }
    .performance-card-header {
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 16px;
      padding-bottom: 12px;
      border-bottom: 1px solid var(--border);
    }
    .performance-card-icon {
      width: 40px;
      height: 40px;
      background: linear-gradient(135deg, var(--accent-cyan), var(--accent-purple));
      border-radius: 10px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.2rem;
    }
    .performance-card-title {
      flex: 1;
      font-size: 1rem;
      font-weight: 700;
      color: var(--text-white);
    }
    .ml-insights {
      background: linear-gradient(135deg, rgba(139,92,246,0.1), rgba(59,130,246,0.1));
      border: 2px solid rgba(139,92,246,0.3);
      border-radius: 16px;
      padding: 20px;
      margin-bottom: 20px;
    }
    .ml-insights-header {
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 16px;
    }
    .ml-insights-icon {
      width: 48px;
      height: 48px;
      background: linear-gradient(135deg, var(--accent-purple), var(--accent-cyan));
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.5rem;
      box-shadow: 0 0 20px rgba(139,92,246,0.4);
    }
    .ml-insights-title {
      font-size: 1.2rem;
      font-weight: 800;
      background: linear-gradient(135deg, var(--accent-purple), var(--accent-cyan));
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .ml-suggestion-card {
      background: var(--bg-card);
      border: 1px solid rgba(139,92,246,0.3);
      border-radius: 12px;
      padding: 16px;
      margin-bottom: 12px;
    }
    .ml-suggestion-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 10px;
    }
    .ml-suggestion-market {
      font-weight: 700;
      color: var(--accent-purple);
      font-size: 0.95rem;
    }
    .ml-suggestion-status {
      padding: 4px 10px;
      border-radius: 6px;
      font-size: 0.7rem;
      font-weight: 600;
    }
    .ml-suggestion-status.improving {
      background: rgba(16,185,129,0.2);
      color: var(--accent-green);
    }
    .ml-suggestion-status.declining {
      background: rgba(239,68,68,0.2);
      color: var(--accent-red);
    }
    .ml-suggestion-status.stable {
      background: rgba(251,191,36,0.2);
      color: var(--accent-yellow);
    }
    .ml-suggestion-body {
      font-size: 0.85rem;
      color: var(--text-gray);
      line-height: 1.5;
    }
    .ml-suggestion-body strong {
      color: var(--text-white);
    }
    
    /* Box Confronto Prima vs Ora */
    .history-compare {
      background: linear-gradient(135deg, rgba(245,158,11,0.15), rgba(16,185,129,0.15));
      border: 2px solid rgba(245,158,11,0.4);
      border-radius: 12px;
      padding: 16px;
      margin-bottom: 16px;
    }
    .history-compare-title {
      font-size: 0.75rem;
      font-weight: 700;
      color: var(--accent-gold);
      margin-bottom: 12px;
      display: flex;
      align-items: center;
      gap: 8px;
    }
    .history-compare-grid {
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      gap: 12px;
      align-items: center;
    }
    .history-compare-box {
      background: var(--bg-card);
      border-radius: 10px;
      padding: 12px;
      text-align: center;
    }
    .history-compare-box.first {
      border: 1px solid var(--text-dark);
    }
    .history-compare-box.current {
      border: 2px solid var(--accent-gold);
    }
    .history-compare-label {
      font-size: 0.65rem;
      color: var(--text-dark);
      margin-bottom: 4px;
    }
    .history-compare-time {
      font-family: 'JetBrains Mono', monospace;
      font-size: 0.7rem;
      color: var(--text-gray);
      margin-bottom: 6px;
    }
    .history-compare-pick {
      font-size: 1rem;
      font-weight: 700;
      color: var(--accent-gold);
      margin-bottom: 4px;
    }
    .history-compare-prob {
      font-family: 'JetBrains Mono', monospace;
      font-size: 0.9rem;
      color: var(--accent-emerald);
    }
    .history-compare-arrow {
      font-size: 1.5rem;
      color: var(--text-dark);
    }
    .history-compare-arrow.changed {
      color: var(--accent-red);
    }
    .history-compare-arrow.stable {
      color: var(--accent-green);
    }
    .history-compare-verdict {
      text-align: center;
      margin-top: 12px;
      padding: 10px;
      border-radius: 8px;
      font-size: 0.8rem;
      font-weight: 600;
    }
    .history-compare-verdict.changed {
      background: rgba(239,68,68,0.15);
      color: var(--accent-red);
    }
    .history-compare-verdict.stable {
      background: rgba(34,197,94,0.15);
      color: var(--accent-green);
    }
    .history-compare-diff {
      font-family: 'JetBrains Mono', monospace;
      font-size: 0.75rem;
      margin-top: 4px;
    }
    
    /* === AUTH / LOGIN STYLES === */
    .auth-btn {
      display: flex;
      align-items: center;
      gap: 6px;
      padding: 8px 14px;
      background: linear-gradient(135deg, var(--accent-purple), var(--accent-blue));
      border: none;
      border-radius: 10px;
      color: white;
      font-size: 0.8rem;
      font-weight: 600;
      cursor: pointer;
      transition: all 0.2s ease;
    }
    .auth-btn:hover {
      transform: translateY(-1px);
      box-shadow: 0 4px 12px rgba(139,92,246,0.3);
    }
    .auth-btn.logged-in {
      background: linear-gradient(135deg, var(--accent-green), var(--accent-cyan));
    }
    .user-email {
      font-size: 0.75rem;
      color: var(--text-gray);
      padding: 4px 10px;
      background: var(--bg-card);
      border-radius: 8px;
      max-width: 100px;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    
    .login-modal-overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0,0,0,0.6);
      backdrop-filter: blur(4px);
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 1000;
      animation: fadeIn 0.2s ease;
    }
    .login-modal {
      background: var(--bg-card);
      border-radius: 20px;
      width: 90%;
      max-width: 420px;
      box-shadow: 0 20px 60px rgba(0,0,0,0.3);
      animation: slideUp 0.3s ease;
    }
    @keyframes slideUp {
      from { transform: translateY(30px); opacity: 0; }
      to { transform: translateY(0); opacity: 1; }
    }
    .login-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 20px 24px;
      border-bottom: 1px solid var(--border);
    }
    .login-header h2 {
      margin: 0;
      font-size: 1.2rem;
      color: var(--text-white);
    }
    .login-close {
      background: none;
      border: none;
      font-size: 1.5rem;
      color: var(--text-gray);
      cursor: pointer;
    }
    .login-body {
      padding: 24px;
    }
    .login-info {
      color: var(--text-gray);
      font-size: 0.9rem;
      margin-bottom: 20px;
      text-align: center;
    }
    .login-error {
      background: rgba(239,68,68,0.15);
      color: var(--accent-red);
      padding: 12px;
      border-radius: 10px;
      margin-bottom: 16px;
      font-size: 0.85rem;
      text-align: center;
    }
    .login-form {
      display: flex;
      flex-direction: column;
      gap: 12px;
    }
    .login-input {
      padding: 14px 16px;
      border: 1px solid var(--border);
      border-radius: 10px;
      background: var(--bg-input);
      color: var(--text-white);
      font-size: 0.95rem;
      outline: none;
      transition: border-color 0.2s;
    }
    .login-input:focus {
      border-color: var(--accent-cyan);
    }
    .login-buttons {
      display: flex;
      gap: 10px;
      margin-top: 8px;
    }
    .login-btn {
      flex: 1;
      padding: 14px;
      border: none;
      border-radius: 10px;
      font-size: 0.9rem;
      font-weight: 600;
      cursor: pointer;
      transition: all 0.2s;
    }
    .login-btn.primary {
      background: linear-gradient(135deg, var(--accent-cyan), var(--accent-blue));
      color: white;
    }
    .login-btn.primary:hover {
      transform: translateY(-2px);
      box-shadow: 0 4px 16px rgba(6,182,212,0.4);
    }
    .login-btn.secondary {
      background: var(--bg-input);
      color: var(--text-gray);
      border: 1px solid var(--border);
    }
    .login-btn.secondary:hover {
      border-color: var(--accent-cyan);
      color: var(--accent-cyan);
    }
    .login-btn:disabled {
      opacity: 0.6;
      cursor: not-allowed;
    }
    .login-note {
      margin-top: 20px;
      padding: 16px;
      background: var(--bg-input);
      border-radius: 10px;
      font-size: 0.8rem;
      color: var(--text-gray);
    }
    .login-note p { margin: 0 0 8px 0; }
    .login-note ul {
      margin: 0;
      padding-left: 20px;
    }
    .login-note li {
      margin: 4px 0;
    }
    
    /* === PRONOSTICI AI LIST === */
    .pronostici-ai-list {
      display: flex;
      flex-direction: column;
      gap: 8px;
      max-height: 500px;
      overflow-y: auto;
    }
    .pronostico-ai-item {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 12px 16px;
      background: var(--bg-card-light);
      border: 1px solid var(--border);
      border-radius: 12px;
      transition: all 0.2s ease;
    }
    .pronostico-ai-item:hover {
      border-color: var(--accent-cyan);
      transform: translateX(4px);
      box-shadow: 0 4px 12px rgba(2,132,199,0.1);
    }
    .pronostico-ai-left {
      flex: 1;
      min-width: 0;
    }
    .pronostico-ai-league {
      font-size: 0.7rem;
      color: var(--text-dark);
      margin-bottom: 4px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .pronostico-ai-match {
      display: flex;
      align-items: center;
      gap: 10px;
    }
    .pronostico-ai-time {
      font-size: 0.8rem;
      font-weight: 700;
      color: var(--accent-cyan);
      min-width: 45px;
    }
    .pronostico-ai-teams {
      font-size: 0.85rem;
      font-weight: 600;
      color: var(--text-white);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .pronostico-ai-right {
      display: flex;
      align-items: center;
      gap: 12px;
      flex-shrink: 0;
    }
    .pronostico-ai-pick {
      padding: 6px 14px;
      border-radius: 20px;
      font-size: 0.8rem;
      font-weight: 700;
      color: white;
      display: flex;
      align-items: center;
      gap: 6px;
    }
    .pronostico-ai-prob {
      font-size: 1rem;
      font-weight: 800;
      color: var(--accent-green);
      min-width: 45px;
      text-align: right;
    }
    
    @media (max-width: 600px) {
      .stats-overview { grid-template-columns: repeat(2, 1fr); }
      .history-stats { grid-template-columns: repeat(2, 1fr); }
      .history-compare-grid { grid-template-columns: 1fr; gap: 8px; }
      .history-compare-arrow { transform: rotate(90deg); }
      .auth-btn span { display: none; }
      .user-email { display: none; }
      .pronostico-ai-match { flex-direction: column; align-items: flex-start; gap: 2px; }
      .pronostico-ai-teams { font-size: 0.75rem; }
      .pronostico-ai-pick { padding: 4px 10px; font-size: 0.7rem; }
      .pronostico-ai-prob { font-size: 0.85rem; min-width: 35px; }
      .main { padding: 10px; }
      .header { padding: 10px 12px; }
      .brand-name { font-size: 1rem; }
      .status-bar { display: none; }
      .date-tabs { gap: 4px; }
      .date-tab { padding: 8px 12px; font-size: 0.75rem; }
      .panel { padding: 12px; border-radius: 12px; }
      .raddoppi-grid { grid-template-columns: 1fr !important; }
      .slip-badge { padding: 6px 10px; font-size: 0.7rem; }
    }

    /* === ANALIZZA BUTTON Ã¢â‚¬â€ ORACLE STYLE === */
    .analizza-btn {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 11px 22px;
      background: linear-gradient(135deg, #0a1628, #0d1f3c);
      border: 1px solid rgba(0,212,255,0.4);
      border-radius: 10px;
      color: #00d4ff;
      font-size: 0.85rem;
      font-weight: 700;
      cursor: pointer;
      transition: all 0.25s;
      box-shadow: 0 0 16px rgba(0,212,255,0.15), inset 0 1px 0 rgba(255,255,255,0.05);
      letter-spacing: 0.5px;
      text-transform: uppercase;
    }
    .analizza-btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 0 28px rgba(0,212,255,0.35), 0 4px 20px rgba(0,0,0,0.5);
      border-color: rgba(0,212,255,0.7);
      background: linear-gradient(135deg, #0d1f3c, #0a2540);
      color: #7df4ff;
    }
    .analizza-btn.loading {
      opacity: 0.6;
      cursor: wait;
      animation: btnPulse 1.2s infinite;
    }
    @keyframes btnPulse { 0%,100%{box-shadow:0 0 16px rgba(0,212,255,0.15)} 50%{box-shadow:0 0 28px rgba(0,212,255,0.4)} }
    .analizza-btn-area {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 20px;
      flex-wrap: wrap;
      gap: 10px;
    }

    /* === SUPER ALGORITHM PANEL Ã¢â‚¬â€ ORACLE === */
    .super-algo-panel {
      background: linear-gradient(145deg, #04070f, #080d1a, #060c18);
      border: 1px solid rgba(0,212,255,0.2);
      border-radius: 20px;
      padding: 24px;
      margin-bottom: 20px;
      box-shadow: 
        0 0 0 1px rgba(245,158,11,0.08),
        0 8px 40px rgba(0,0,0,0.7),
        inset 0 1px 0 rgba(0,212,255,0.07),
        0 0 60px rgba(0,212,255,0.04);
      animation: oracleFadeIn 0.4s ease;
      position: relative;
      overflow: hidden;
    }
    .super-algo-panel::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0;
      height: 1px;
      background: linear-gradient(90deg, transparent, rgba(0,212,255,0.5), rgba(245,158,11,0.4), transparent);
    }
    @keyframes oracleFadeIn {
      from { opacity: 0; transform: translateY(-8px); }
      to { opacity: 1; transform: translateY(0); }
    }
    .super-algo-header {
      display: flex;
      align-items: center;
      gap: 14px;
      margin-bottom: 22px;
      padding-bottom: 18px;
      border-bottom: 1px solid rgba(0,212,255,0.1);
    }
    .super-algo-icon {
      width: 48px; height: 48px;
      background: linear-gradient(135deg, rgba(0,212,255,0.15), rgba(245,158,11,0.1));
      border: 1px solid rgba(0,212,255,0.3);
      border-radius: 14px;
      display: flex; align-items: center; justify-content: center;
      font-size: 1.5rem;
      flex-shrink: 0;
      box-shadow: 0 0 20px rgba(0,212,255,0.15);
    }
    .super-algo-title-group { flex: 1; }
    .super-algo-title {
      font-size: 1.15rem;
      font-weight: 800;
      background: linear-gradient(135deg, #00d4ff, #f59e0b, #00e5a0);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      margin-bottom: 4px;
      letter-spacing: 0.3px;
    }
    .super-algo-subtitle { font-size: 0.73rem; color: rgba(148,163,184,0.7); }
    .super-algo-badge {
      padding: 5px 14px;
      background: linear-gradient(135deg, rgba(245,158,11,0.2), rgba(0,212,255,0.1));
      border: 1px solid rgba(245,158,11,0.4);
      border-radius: 20px;
      font-size: 0.68rem;
      font-weight: 800;
      color: #f59e0b;
      text-transform: uppercase;
      letter-spacing: 1px;
    }
    
    /* === PICKS GRID === */
    .super-picks-grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
      gap: 10px;
      margin-bottom: 18px;
    }
    .super-pick-card {
      background: rgba(255,255,255,0.02);
      border: 1px solid rgba(255,255,255,0.07);
      border-radius: 14px;
      padding: 14px 12px;
      text-align: center;
      transition: all 0.2s;
      cursor: pointer;
      position: relative;
      overflow: hidden;
    }
    .super-pick-card::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0;
      height: 2px;
    }
    /* GOLD #1 */
    .super-pick-card.rank-1 { 
      border-color: rgba(245,158,11,0.6); 
      background: rgba(245,158,11,0.06);
      box-shadow: 0 0 24px rgba(245,158,11,0.18), inset 0 0 20px rgba(245,158,11,0.04);
      animation: oracleFadeIn 0.4s ease, goldPulse 3s ease-in-out infinite;
    }
    @keyframes goldPulse {
      0%, 100% { box-shadow: 0 0 24px rgba(245,158,11,0.18), inset 0 0 20px rgba(245,158,11,0.04); }
      50% { box-shadow: 0 0 36px rgba(245,158,11,0.32), inset 0 0 24px rgba(245,158,11,0.07); }
    }
    .super-pick-card.rank-1::before { background: linear-gradient(90deg, #f59e0b, #fcd34d, #f59e0b); }
    /* CYAN #2 */
    .super-pick-card.rank-2 { 
      border-color: rgba(0,212,255,0.35);
      background: rgba(0,212,255,0.04);
      box-shadow: 0 0 15px rgba(0,212,255,0.1);
    }
    .super-pick-card.rank-2::before { background: linear-gradient(90deg, #00d4ff, #67e8f9, #00d4ff); }
    /* GREEN #3 */
    .super-pick-card.rank-3 { 
      border-color: rgba(0,229,160,0.35);
      background: rgba(0,229,160,0.04);
    }
    .super-pick-card.rank-3::before { background: linear-gradient(90deg, #00e5a0, #34d399, #00e5a0); }
    /* Others */
    .super-pick-card.rank-other {
      border-color: rgba(255,255,255,0.07);
    }
    .super-pick-card.rank-other::before { background: linear-gradient(90deg, rgba(148,163,184,0.3), rgba(100,116,139,0.3)); }
    .super-pick-card:hover {
      transform: translateY(-3px);
      box-shadow: 0 6px 24px rgba(0,0,0,0.5);
      border-color: rgba(0,212,255,0.4);
    }
    .super-pick-rank {
      position: absolute;
      top: 8px; left: 10px;
      font-size: 0.62rem;
      font-weight: 800;
      color: rgba(148,163,184,0.5);
      font-family: 'JetBrains Mono', monospace;
    }
    .super-pick-market {
      font-size: 0.65rem;
      color: rgba(148,163,184,0.5);
      margin-bottom: 5px;
      text-transform: uppercase;
      letter-spacing: 0.8px;
      margin-top: 10px;
    }
    .super-pick-value {
      font-size: 0.95rem;
      font-weight: 800;
      color: #e2e8f0;
      margin-bottom: 6px;
      line-height: 1.2;
    }
    .super-pick-prob {
      font-size: 1.55rem;
      font-weight: 900;
      font-family: 'JetBrains Mono', monospace;
      margin-bottom: 4px;
      letter-spacing: -1px;
    }
    .super-pick-prob.prob-high { 
      color: #00e5a0; 
      text-shadow: 0 0 16px rgba(0,229,160,0.4);
    }
    .super-pick-prob.prob-med { 
      color: #fbbf24;
      text-shadow: 0 0 12px rgba(251,191,36,0.3);
    }
    .super-pick-prob.prob-low { color: #64748b; }
    .super-pick-confidence {
      font-size: 0.63rem;
      padding: 2px 8px;
      border-radius: 10px;
      font-weight: 700;
      display: inline-block;
    }
    .super-pick-confidence.high { background: rgba(0,229,160,0.15); color: #00e5a0; }
    .super-pick-confidence.medium { background: rgba(251,191,36,0.15); color: #fbbf24; }
    .super-pick-confidence.low { background: rgba(100,116,139,0.15); color: #64748b; }
    .super-signals-row {
      display: flex;
      gap: 5px;
      justify-content: center;
      margin-top: 7px;
      flex-wrap: wrap;
    }
    .super-signal {
      width: 7px; height: 7px;
      border-radius: 50%;
      display: inline-block;
    }
    .super-signal.on { background: #00e5a0; box-shadow: 0 0 5px rgba(0,229,160,0.7); }
    .super-signal.off { background: rgba(255,255,255,0.08); }
    
    /* === SUMMARY BOX === */
    .super-algo-summary {
      background: rgba(0,0,0,0.3);
      border: 1px solid rgba(255,255,255,0.06);
      border-radius: 14px;
      padding: 14px;
      display: flex;
      gap: 14px;
      flex-wrap: wrap;
      align-items: center;
    }
    .super-summary-item { text-align: center; flex: 1; min-width: 70px; }
    .super-summary-num {
      font-size: 1.3rem;
      font-weight: 900;
      color: #00d4ff;
      font-family: 'JetBrains Mono', monospace;
      text-shadow: 0 0 12px rgba(0,212,255,0.4);
    }
    .super-summary-label {
      font-size: 0.63rem;
      color: rgba(148,163,184,0.55);
      margin-top: 3px;
      text-transform: uppercase;
      letter-spacing: 0.5px;
    }
    
    /* === LOADING === */
    .super-loading {
      text-align: center;
      padding: 40px 20px;
      color: rgba(148,163,184,0.7);
    }
    .super-loading-spinner {
      display: inline-block;
      width: 36px; height: 36px;
      border: 2px solid rgba(0,212,255,0.15);
      border-top-color: #00d4ff;
      border-right-color: #f59e0b;
      border-radius: 50%;
      animation: spin 0.7s linear infinite;
      margin-bottom: 14px;
    }
    @keyframes spin { to { transform: rotate(360deg); } }
    
    /* === AI ORACLE SECTION === */
    .super-ai-section {
      margin-top: 18px;
      padding-top: 18px;
      border-top: 1px solid rgba(0,212,255,0.1);
    }
    .super-ai-header {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 12px;
      font-size: 0.88rem;
      color: #e2e8f0;
    }
    .super-ai-live {
      background: linear-gradient(135deg, rgba(0,212,255,0.2), rgba(245,158,11,0.15));
      border: 1px solid rgba(0,212,255,0.4);
      color: #00d4ff;
      font-size: 0.68rem;
      font-weight: 800;
      padding: 2px 9px;
      border-radius: 20px;
      letter-spacing: 0.8px;
      text-transform: uppercase;
    }
    .super-ai-tag {
      display: inline-block;
      background: rgba(0,212,255,0.07);
      border: 1px solid rgba(0,212,255,0.2);
      border-radius: 20px;
      padding: 3px 10px;
      font-size: 0.72rem;
      color: rgba(148,163,184,0.9);
    }
    /* Oracle verdict boxes */
    .oracle-verdict-box {
      background: rgba(0,0,0,0.35);
      border: 1px solid rgba(255,255,255,0.06);
      border-radius: 12px;
      padding: 12px 14px;
      flex: 1;
      min-width: 90px;
      text-align: center;
    }
    .oracle-news-item {
      display: flex;
      align-items: flex-start;
      gap: 8px;
      padding: 7px 10px;
      background: rgba(255,255,255,0.02);
      border-radius: 8px;
      margin-bottom: 5px;
      font-size: 0.79rem;
      color: #cbd5e1;
      line-height: 1.5;
    }
    .oracle-verdict-text {
      font-size: 0.86rem;
      color: #cbd5e1;
      line-height: 1.65;
      padding: 12px;
      background: rgba(0,0,0,0.25);
      border-radius: 10px;
      border-left: 2px solid #f59e0b;
      margin: 10px 0;
    }
    
    /* === ADVICE CARD (Consiglio AI per ogni partita) === */
    .advice-grid { display: flex; flex-direction: column; gap: 14px; }
    .advice-card {
      background: var(--bg-card); border: 1px solid var(--border);
      border-radius: 16px; overflow: hidden; transition: all 0.2s;
    }
    .advice-card:hover { box-shadow: var(--shadow-md); }
    .advice-card-head {
      display: flex; align-items: center; justify-content: space-between;
      padding: 10px 16px; background: var(--bg-card-light);
      border-bottom: 1px solid var(--border); gap: 8px;
    }
    .advice-league { font-size: 0.7rem; color: var(--text-dark); display: flex; align-items: center; gap: 5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .advice-league img { width: 16px; height: 16px; border-radius: 2px; }
    .advice-time { font-family: 'JetBrains Mono', monospace; font-size: 0.75rem; color: var(--accent-cyan); font-weight: 600; flex-shrink: 0; }
    .advice-body { padding: 14px; }
    .advice-teams {
      display: flex; align-items: center; justify-content: space-between;
      margin-bottom: 10px; gap: 6px;
    }
    .advice-team { display: flex; align-items: center; gap: 6px; font-weight: 600; font-size: 0.85rem; min-width: 0; }
    .advice-team img { width: 22px; height: 22px; flex-shrink: 0; }
    .advice-team-name { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .advice-vs { font-size: 0.65rem; color: var(--text-dark); font-weight: 700; padding: 2px 8px; background: var(--bg-input); border-radius: 6px; flex-shrink: 0; }
    .advice-xg-bar {
      display: flex; align-items: center; justify-content: center; gap: 14px;
      padding: 5px 10px; background: var(--bg-input); border-radius: 8px;
      font-size: 0.7rem; color: var(--text-gray); margin-bottom: 10px;
    }
    .advice-xg-val { font-weight: 700; color: var(--accent-cyan); }
    .advice-main {
      padding: 12px; border-radius: 10px; margin-bottom: 8px;
      background: linear-gradient(135deg, rgba(16,185,129,0.06), rgba(2,132,199,0.06));
      border: 1px solid rgba(16,185,129,0.15);
    }
    .advice-main-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 6px; }
    .advice-main-label { font-size: 0.6rem; color: var(--text-dark); text-transform: uppercase; font-weight: 700; letter-spacing: 0.5px; }
    .advice-main-conf { font-size: 0.6rem; padding: 2px 8px; border-radius: 8px; font-weight: 700; }
    .advice-main-conf.high { background: rgba(16,185,129,0.15); color: var(--accent-green); }
    .advice-main-conf.medium { background: rgba(245,158,11,0.15); color: var(--accent-yellow); }
    .advice-main-conf.low { background: rgba(148,163,184,0.15); color: var(--text-dark); }
    .advice-main-row { display: flex; align-items: center; justify-content: space-between; }
    .advice-main-pick { font-size: 1.15rem; font-weight: 800; color: var(--text-white); }
    .advice-main-prob { font-size: 1.4rem; font-weight: 800; }
    .advice-main-prob.high { color: var(--accent-green); }
    .advice-main-prob.medium { color: var(--accent-yellow); }
    .advice-main-prob.low { color: var(--text-gray); }
    .advice-reasons { margin-bottom: 8px; }
    .advice-reason { font-size: 0.72rem; color: var(--text-gray); padding: 2px 0; display: flex; align-items: center; gap: 6px; }
    .advice-reason.positive { color: var(--accent-green); }
    .advice-reason.negative { color: var(--accent-red); }
    .advice-reason.neutral { color: var(--text-dark); }
    .advice-alts {
      display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 10px;
    }
    .advice-alt-chip {
      padding: 4px 10px; background: var(--bg-input); border: 1px solid var(--border);
      border-radius: 8px; font-size: 0.72rem; font-weight: 600; color: var(--text-gray);
    }
    .advice-alt-chip b { color: var(--accent-cyan); }
    .advice-footer { display: flex; gap: 8px; }
    .btn-giocato {
      flex: 1; padding: 10px; border: none; border-radius: 8px; color: white;
      font-size: 0.8rem; font-weight: 700; cursor: pointer; transition: all 0.2s;
      display: flex; align-items: center; justify-content: center; gap: 6px;
      background: linear-gradient(135deg, var(--accent-green), #059669);
    }
    .btn-giocato:hover { transform: scale(1.02); box-shadow: 0 2px 8px rgba(16,185,129,0.3); }
    .btn-giocato.tracked { background: linear-gradient(135deg, #94a3b8, #64748b); cursor: default; }
    .btn-dettaglio {
      padding: 10px 14px; background: var(--bg-input); border: 1px solid var(--border);
      border-radius: 8px; color: var(--text-gray); font-size: 0.8rem; font-weight: 600;
      cursor: pointer; transition: all 0.2s;
    }
    .btn-dettaglio:hover { border-color: var(--accent-cyan); color: var(--accent-cyan); }

    /* === SCHEDINA VIRTUALE === */
    .schedina-section {
      background: var(--bg-card); border: 2px solid var(--accent-gold);
      border-radius: 16px; padding: 18px; margin-bottom: 20px;
      box-shadow: 0 0 20px rgba(217,119,6,0.1);
    }
    .schedina-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; flex-wrap: wrap; gap: 8px; }
    .schedina-title { font-size: 1rem; font-weight: 800; color: var(--accent-gold); display: flex; align-items: center; gap: 8px; }
    .schedina-stats { display: flex; gap: 10px; }
    .schedina-stat { text-align: center; padding: 4px 10px; background: var(--bg-input); border-radius: 8px; }
    .schedina-stat-n { font-size: 1rem; font-weight: 800; }
    .schedina-stat-n.g { color: var(--accent-green); }
    .schedina-stat-n.r { color: var(--accent-red); }
    .schedina-stat-n.y { color: var(--accent-yellow); }
    .schedina-stat-l { font-size: 0.6rem; color: var(--text-dark); }
    .schedina-wr {
      display: flex; align-items: center; gap: 12px; padding: 10px;
      background: var(--bg-input); border-radius: 10px; margin-bottom: 12px;
    }
    .schedina-wr-bar { flex: 1; height: 8px; background: #e2e8f0; border-radius: 4px; overflow: hidden; }
    .schedina-wr-fill { height: 100%; border-radius: 4px; transition: width 0.5s; }
    .schedina-list { display: flex; flex-direction: column; gap: 5px; }
    .schedina-item {
      display: flex; align-items: center; justify-content: space-between;
      padding: 9px 12px; border-radius: 8px; background: var(--bg-card-light);
      border: 1px solid var(--border); gap: 6px;
    }
    .schedina-item.won { background: rgba(16,185,129,0.06); border-color: rgba(16,185,129,0.25); }
    .schedina-item.lost { background: rgba(239,68,68,0.06); border-color: rgba(239,68,68,0.25); }
    .schedina-item.pending { border-left: 3px solid var(--accent-yellow); }
    .schedina-item-left { display: flex; flex-direction: column; gap: 1px; min-width: 0; flex: 1; }
    .schedina-item-match { font-size: 0.78rem; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .schedina-item-info { font-size: 0.65rem; color: var(--text-dark); }
    .schedina-item-right { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
    .schedina-item-pick { padding: 3px 8px; background: var(--accent-cyan); color: white; border-radius: 6px; font-size: 0.7rem; font-weight: 700; }
    .schedina-item-status { font-size: 1.1rem; }

    @media (max-width: 600px) {
      .advice-teams { gap: 4px; }
      .advice-team { font-size: 0.78rem; }
      .advice-team img { width: 18px; height: 18px; }
      .advice-main-pick { font-size: 1rem; }
      .advice-main-prob { font-size: 1.2rem; }
      .advice-alts { gap: 4px; }
      .advice-alt-chip { padding: 3px 7px; font-size: 0.65rem; }
      .advice-xg-bar { font-size: 0.65rem; gap: 8px; }
      .advice-reason { font-size: 0.65rem; }
      .schedina-stats { gap: 6px; }
      .schedina-stat { padding: 3px 6px; }
      .schedina-item { padding: 7px 10px; }
      .schedina-item-match { font-size: 0.7rem; }
    }
    /* === GIUDIZIO FINALE === */
    .gf-overlay {
      position: fixed; top: 0; left: 0; width: 100%; height: 100%;
      background: rgba(0,0,0,0.75); backdrop-filter: blur(8px);
      z-index: 2000; display: flex; align-items: center; justify-content: center;
      animation: gfFadeIn 0.3s ease;
    }
    @keyframes gfFadeIn { from { opacity: 0; } to { opacity: 1; } }
    .gf-modal {
      background: linear-gradient(145deg, #0c1222 0%, #141d2f 50%, #1a2642 100%);
      border: 2px solid rgba(168,85,247,0.4);
      border-radius: 20px;
      width: 95%; max-width: 600px; max-height: 90vh;
      overflow-y: auto; padding: 0;
      box-shadow: 0 0 60px rgba(168,85,247,0.2), 0 0 120px rgba(34,211,238,0.1);
      animation: gfSlideUp 0.4s ease;
    }
    @keyframes gfSlideUp { from { transform: translateY(40px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
    .gf-header {
      background: linear-gradient(135deg, rgba(168,85,247,0.15), rgba(34,211,238,0.1));
      border-bottom: 1px solid rgba(168,85,247,0.2);
      padding: 20px 24px; position: relative;
    }
    .gf-close { position: absolute; top: 16px; right: 20px; background: none; border: none;
      color: var(--text-dark); font-size: 1.5rem; cursor: pointer; }
    .gf-close:hover { color: white; }
    .gf-title { font-size: 1.3rem; font-weight: 800;
      background: linear-gradient(135deg, #a855f7, #22d3ee);
      -webkit-background-clip: text; -webkit-text-fill-color: transparent; margin-bottom: 4px; }
    .gf-match-info { font-size: 0.78rem; color: var(--text-gray); }
    .gf-teams { font-size: 1.1rem; font-weight: 700; color: white; margin-top: 8px; }
    .gf-body { padding: 20px 24px; }
    .gf-section { margin-bottom: 20px; }
    .gf-section-title { font-size: 0.82rem; font-weight: 700; color: var(--accent-purple);
      margin-bottom: 12px; display: flex; align-items: center; gap: 8px; }
    .gf-result-grid { display: flex; flex-direction: column; gap: 8px; }
    .gf-result-item {
      display: flex; align-items: center; gap: 12px;
      padding: 12px 16px; background: var(--bg-card-light);
      border: 1px solid var(--border); border-radius: 12px;
      transition: all 0.2s;
    }
    .gf-result-item.top { border-color: rgba(168,85,247,0.4);
      background: linear-gradient(135deg, rgba(168,85,247,0.08), rgba(34,211,238,0.05)); }
    .gf-result-rank { min-width: 28px; height: 28px; border-radius: 8px;
      display: flex; align-items: center; justify-content: center;
      font-size: 0.75rem; font-weight: 800; background: var(--bg-input); color: var(--text-gray); }
    .gf-result-item.top .gf-result-rank { background: linear-gradient(135deg, #a855f7, #22d3ee); color: white; }
    .gf-result-value { flex: 1; font-weight: 700; font-size: 0.95rem; }
    .gf-result-prob { font-family: 'JetBrains Mono', monospace; font-size: 0.9rem; font-weight: 700; }
    .gf-result-prob.high { color: var(--accent-green); }
    .gf-result-prob.mid { color: var(--accent-cyan); }
    .gf-result-prob.low { color: var(--accent-yellow); }
    .gf-result-bar { width: 60px; height: 6px; background: var(--bg-input); border-radius: 3px; overflow: hidden; }
    .gf-result-bar-fill { height: 100%; border-radius: 3px;
      background: linear-gradient(90deg, #a855f7, #22d3ee); }
    .gf-exact-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(90px, 1fr)); gap: 8px; }
    .gf-exact-box { background: var(--bg-card-light); border: 1px solid var(--border);
      border-radius: 10px; padding: 10px 6px; text-align: center; }
    .gf-exact-box.top { border-color: rgba(168,85,247,0.5);
      background: linear-gradient(135deg, rgba(168,85,247,0.12), rgba(34,211,238,0.08)); }
    .gf-exact-score { font-family: 'JetBrains Mono', monospace; font-size: 1.1rem; font-weight: 800; color: white; }
    .gf-exact-prob { font-size: 0.72rem; color: var(--accent-cyan); margin-top: 2px; }
    .gf-meta { padding: 16px; background: rgba(168,85,247,0.06); border: 1px solid rgba(168,85,247,0.15);
      border-radius: 12px; margin-top: 16px; }
    .gf-meta-title { font-size: 0.75rem; color: var(--accent-purple); font-weight: 700; margin-bottom: 8px; }
    .gf-meta-row { display: flex; justify-content: space-between; font-size: 0.72rem; color: var(--text-gray);
      padding: 3px 0; }
    .gf-meta-val { font-weight: 600; color: var(--accent-cyan); }
    .gf-timestamp { font-size: 0.65rem; color: var(--text-dark); text-align: center; margin-top: 12px; }

    /* === RISULTATO REALE === */
    .real-result-banner {
      background: linear-gradient(135deg, rgba(16,185,129,0.08), rgba(0,212,255,0.05));
      border: 1.5px solid rgba(16,185,129,0.25);
      border-radius: 14px;
      padding: 14px 16px;
      margin-top: 12px;
    }
    .real-result-banner.lost {
      background: linear-gradient(135deg, rgba(239,68,68,0.06), rgba(251,191,36,0.03));
      border-color: rgba(239,68,68,0.2);
    }
    .real-result-header {
      display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px;
    }
    .real-result-badge {
      font-size: 0.68rem; font-weight: 800; padding: 3px 10px; border-radius: 8px;
    }
    .real-result-badge.ft { background: rgba(16,185,129,0.15); color: #10b981; }
    .real-result-badge.live { background: rgba(239,68,68,0.15); color: #f87171; animation: pulse 1.5s infinite; }
    .real-result-score-row {
      display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 10px;
    }
    .real-result-score {
      font-size: 2rem; font-weight: 900; color: white;
      background: linear-gradient(135deg, rgba(16,185,129,0.15), rgba(0,212,255,0.1));
      border: 1px solid rgba(16,185,129,0.3); border-radius: 12px;
      padding: 6px 18px; min-width: 46px; text-align: center;
    }
    .real-result-vs { font-size: 0.72rem; color: var(--text-dark); font-weight: 700; }
    .real-result-predicted {
      display: flex; align-items: center; justify-content: center; gap: 6px;
      font-size: 0.72rem; color: var(--text-dark); margin-bottom: 12px;
    }
    .verifica-grid {
      display: flex; flex-direction: column; gap: 5px;
    }
    .verifica-row {
      display: flex; align-items: center; justify-content: space-between;
      padding: 6px 10px; border-radius: 8px; font-size: 0.72rem;
      background: rgba(255,255,255,0.02);
    }
    .verifica-row .v-label { color: var(--text-gray); font-weight: 600; }
    .verifica-row .v-pick { color: var(--text-white); font-weight: 700; }
    .verifica-row .v-result { font-weight: 800; }
    .verifica-row .v-result.win { color: #10b981; }
    .verifica-row .v-result.lose { color: #ef4444; }
    .verifica-summary {
      display: flex; align-items: center; justify-content: center; gap: 14px;
      margin-top: 10px; padding: 10px; border-radius: 10px;
      background: rgba(255,255,255,0.03); border: 1px solid var(--border);
    }
    .verifica-stat { text-align: center; }
    .verifica-stat-num { font-size: 1.2rem; font-weight: 900; }
    .verifica-stat-label { font-size: 0.6rem; color: var(--text-dark); }
    .gf-cached-notice { font-size: 0.68rem; background: rgba(251,191,36,0.08); border: 1px solid rgba(251,191,36,0.2);
      border-radius: 8px; padding: 8px 12px; color: #fbbf24; margin-bottom: 12px; display: flex; align-items: center; gap: 8px; }
    .gf-btn {
      display: flex; align-items: center; justify-content: center; gap: 10px;
      width: 100%; padding: 14px 20px; margin-top: 16px;
      background: linear-gradient(135deg, rgba(168,85,247,0.2), rgba(34,211,238,0.15));
      border: 2px solid rgba(168,85,247,0.4); border-radius: 14px;
      color: white; font-size: 0.95rem; font-weight: 700; cursor: pointer;
      transition: all 0.3s;
    }
    .gf-btn:hover { transform: scale(1.02); border-color: rgba(168,85,247,0.7);
      box-shadow: 0 0 25px rgba(168,85,247,0.3); }
    .gf-btn:active { transform: scale(0.98); }
    /* ====================================================================
       MOBILE & TABLET OPTIMIZATION
       ================================================================== */
    
    /* === TABLET (601-968px) === */
    @media (max-width: 968px) {
      .header-inner { gap: 10px; }
      .header-right { gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
      .main { padding: 16px; }
      .performance-grid { grid-template-columns: 1fr !important; }
      .chart-container { grid-column: span 1 !important; }
    }
    
    /* === MOBILE (max 600px) === */
    @media (max-width: 600px) {
      /* HEADER COMPACT */
      .header { padding: 8px 10px; }
      .header-inner { gap: 6px; }
      .brand-icon { width: 32px; height: 32px; font-size: 1rem; border-radius: 8px; }
      .brand-name { font-size: 0.95rem; }
      .brand { gap: 8px; }
      .header-right { gap: 6px; }
      .status-bar { gap: 6px; }
      .status-item span:not(.status-dot) { display: none; }
      .status-dot { width: 7px; height: 7px; }
      .auth-btn { padding: 5px 10px; font-size: 0.7rem; }
      .settings-btn { padding: 5px 8px; font-size: 0.85rem; }
      .slip-badge { padding: 5px 10px; font-size: 0.7rem; gap: 4px; border-radius: 16px; }
      
      /* MAIN CONTENT */
      .main { padding: 8px; }
      .panel { padding: 10px; border-radius: 10px; margin-bottom: 12px; }
      .panel-title { font-size: 0.85rem; }
      
      /* DATE TABS */
      .date-tabs { gap: 3px; margin-bottom: 12px; overflow-x: auto; flex-wrap: nowrap; -webkit-overflow-scrolling: touch; }
      .date-tab { padding: 7px 10px; font-size: 0.72rem; flex-shrink: 0; border-radius: 8px; }
      
      /* FILTER BUTTONS */
      .filter-buttons { gap: 4px; overflow-x: auto; flex-wrap: nowrap; -webkit-overflow-scrolling: touch; padding-bottom: 4px; }
      .filter-btn, .filter-buttons button { padding: 6px 10px; font-size: 0.68rem; flex-shrink: 0; white-space: nowrap; }
      .filters-header { gap: 6px; }
      .filters-title { font-size: 0.88rem; }
      .filters-count { font-size: 0.65rem; padding: 3px 8px; }
      
      /* MATCH CARDS */
      .match-card { padding: 10px; border-radius: 10px; }
      .match-card-header { gap: 6px; }
      .match-teams { font-size: 0.78rem; }
      .match-logo { width: 20px; height: 20px; }
      .match-time { font-size: 0.68rem; }
      .match-league { font-size: 0.62rem; }
      
      /* PICKS GRID */
      .picks-grid { grid-template-columns: 1fr !important; }
      .raddoppi-grid { grid-template-columns: 1fr !important; }
      
      /* HERO (analysis page) */
      .hero-match { gap: 10px; padding: 12px 8px; }
      .hero-team-logo, .hero-team-logo-fallback { width: 40px; height: 40px; }
      .hero-team-name { font-size: 0.78rem; max-width: 90px; }
      .hero-score-box { width: 34px; height: 34px; font-size: 1rem; }
      .hero-vs { font-size: 0.85rem; }
      
      /* STATS OVERVIEW */
      .stats-overview { grid-template-columns: repeat(2, 1fr) !important; gap: 8px; }
      .stats-card { padding: 10px 8px; }
      .stats-card-value { font-size: 1.2rem; }
      .stats-card-label { font-size: 0.6rem; }
      
      /* ANALYSIS GRIDS */
      .analysis-grid { grid-template-columns: 1fr !important; gap: 8px; }
      .predictions-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 6px; }
      .stat-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 6px; }
      .combo-grid { grid-template-columns: 1fr !important; }
      
      /* ACCORDION */
      .accordion-header { padding: 10px 12px; font-size: 0.78rem; }
      .accordion-content { padding: 10px; }
      
      /* PRONOSTICO AI CARDS */
      .pronostico-ai-card, .advice-card { padding: 10px; border-radius: 10px; }
      
      /* ORACLE SECTION */
      .oracle-verdict-box { min-width: 100px !important; padding: 10px; }
      
      /* TRADER / EXCHANGE */
      .trader-content { grid-template-columns: 1fr !important; }
      .verdict-content { grid-template-columns: 1fr !important; }
      .trader-box { padding: 12px; }
      
      /* SCHEDINA */
      .schedina-modal { width: 100%; max-width: 100%; border-radius: 16px 16px 0 0; }
      .schedina-item { padding: 8px; }
      
      /* PERFORMANCE CHARTS */
      .performance-grid { grid-template-columns: 1fr !important; }
      .chart-container { grid-column: span 1 !important; }
      
      /* TOUCH TARGETS Ã¢â‚¬â€ min 44px for tappability */
      button, .btn, .date-tab, .filter-btn, .accordion-header { min-height: 36px; }
      
      /* SCROLLBAR thin on mobile */
      ::-webkit-scrollbar { width: 3px; height: 3px; }
      
      /* HISTORY SECTION */
      .history-compare-grid { grid-template-columns: 1fr !important; gap: 8px; }
      .history-compare-arrow { transform: rotate(90deg); margin: -4px auto; }
      .history-compare-box { padding: 10px; }
      .history-item { padding: 6px 8px; font-size: 0.72rem; }
      .history-stats { grid-template-columns: repeat(3, 1fr); gap: 6px; }
      
      /* SUPER ALGORITHM */
      .super-summary-item { min-width: 55px; }
      
      /* SCHEDINA BTN */
      .schedina-btn { padding: 4px 8px !important; font-size: 0.68rem !important; gap: 3px !important; }
      
      /* SLIP FLOATING */
      .slip-floating { padding: 8px 10px; flex-wrap: wrap; gap: 6px; }
      .slip-floating button { font-size: 0.7rem; padding: 6px 10px; }
      
      /* LOGIN MODAL */
      .login-modal { width: 95%; margin: 10px; border-radius: 16px; }
      
      /* GIUDIZIO FINALE MODAL */
      .gf-modal { width: 98%; max-width: 98%; border-radius: 16px; }
    }
    
    /* === SMALL PHONES (max 380px) === */
    @media (max-width: 380px) {
      .header { padding: 6px 8px; }
      .brand-icon { width: 28px; height: 28px; font-size: 0.85rem; }
      .brand-name { font-size: 0.85rem; }
      .header-right { gap: 4px; }
      .slip-badge { padding: 4px 8px; font-size: 0.65rem; }
      .auth-btn { padding: 4px 8px; font-size: 0.65rem; }
      .main { padding: 6px; }
      .panel { padding: 8px; }
      .date-tab { padding: 6px 8px; font-size: 0.68rem; }
      .hero-team-logo, .hero-team-logo-fallback { width: 34px; height: 34px; }
      .hero-team-name { font-size: 0.7rem; max-width: 70px; }
      .predictions-grid { grid-template-columns: 1fr !important; }
      .stats-overview { gap: 6px; }
      .stats-card-value { font-size: 1rem; }
    }
    
    /* === LANDSCAPE PHONE FIX === */
    @media (max-height: 500px) and (orientation: landscape) {
      .header { position: relative; } /* non sticky in landscape */
      .gf-modal { max-height: 95vh; }
      .login-modal { max-height: 95vh; }
    }
    
    /* === SAFE AREA (iPhone notch) === */
    @supports (padding: env(safe-area-inset-top)) {
      .header { padding-top: max(8px, env(safe-area-inset-top)); }
      .slip-floating { padding-bottom: max(8px, env(safe-area-inset-bottom)); }
      body { padding-bottom: env(safe-area-inset-bottom); }
    }
    
    /* === PREVENT HORIZONTAL OVERFLOW === */
    html, body { overflow-x: hidden; max-width: 100vw; }
    .main, .header-inner { overflow-x: hidden; }
    
    /* === SMOOTH SCROLLING === */
    @media (hover: none) {
      * { -webkit-tap-highlight-color: rgba(0,212,255,0.15); }
      button:active, .date-tab:active, .filter-btn:active, .match-card:active { opacity: 0.7; transition: opacity 0.1s; }
    }

    /* === ODDS LAB === */
    .odds-lab { margin-top: 14px; }
    .odds-lab-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 10px; }
    @media (max-width: 600px) { .odds-lab-grid { grid-template-columns: 1fr; } }
    .odds-bk-card { background: var(--bg-card-light); border: 1px solid var(--border); border-radius: 10px; padding: 12px; }
    .odds-bk-name { font-size: 0.68rem; color: var(--text-dark); font-weight: 600; margin-bottom: 6px; }
    .odds-bk-row { display: flex; justify-content: space-between; gap: 6px; }
    .odds-bk-cell { flex: 1; text-align: center; padding: 6px 4px; border-radius: 6px; font-size: 0.78rem; font-weight: 700; font-family: 'JetBrains Mono', monospace; }
    .odds-bk-cell.home { background: rgba(59,130,246,0.12); color: #60a5fa; }
    .odds-bk-cell.draw { background: rgba(251,191,36,0.12); color: #fbbf24; }
    .odds-bk-cell.away { background: rgba(248,113,113,0.12); color: #f87171; }
    .odds-bk-cell.sharp { border: 1px solid rgba(0,229,160,0.4); }
    .odds-steam { margin-top: 10px; padding: 10px 12px; border-radius: 10px; font-size: 0.72rem; }
    .odds-steam.bullish { background: rgba(0,229,160,0.08); border: 1px solid rgba(0,229,160,0.2); color: #00e5a0; }
    .odds-steam.bearish { background: rgba(248,113,113,0.08); border: 1px solid rgba(248,113,113,0.2); color: #f87171; }
    .odds-steam.neutral { background: rgba(100,116,139,0.08); border: 1px solid rgba(100,116,139,0.2); color: #94a3b8; }
    .odds-drop-badge { display: inline-flex; align-items: center; gap: 4px; padding: 2px 8px; border-radius: 12px; font-size: 0.62rem; font-weight: 700; }
    .odds-drop-badge.drop { background: rgba(0,229,160,0.15); color: #00e5a0; }
    .odds-drop-badge.rise { background: rgba(248,113,113,0.15); color: #f87171; }

    /* === VALUE BET ENGINE === */
    .value-engine { margin-top: 14px; }
    .value-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 8px; margin-top: 10px; }
    .value-card { padding: 10px; border-radius: 10px; background: var(--bg-card-light); border: 1px solid var(--border); position: relative; overflow: hidden; }
    .value-card.is-value { border-color: rgba(0,229,160,0.4); background: rgba(0,229,160,0.04); }
    .value-card.is-value::before { content: 'VALUE'; position: absolute; top: 4px; right: 6px; font-size: 0.52rem; font-weight: 800; color: #00e5a0; letter-spacing: 1px; }
    .value-market { font-size: 0.68rem; color: var(--text-dark); font-weight: 600; margin-bottom: 4px; }
    .value-pick { font-size: 0.88rem; font-weight: 800; color: var(--text-white); }
    .value-row { display: flex; justify-content: space-between; align-items: center; margin-top: 4px; }
    .value-prob { font-size: 0.68rem; color: var(--accent-cyan); font-family: 'JetBrains Mono', monospace; }
    .value-edge { font-size: 0.68rem; font-weight: 700; }
    .value-edge.positive { color: #00e5a0; }
    .value-edge.negative { color: #f87171; }
    .value-kelly { font-size: 0.62rem; color: var(--accent-gold); margin-top: 3px; }

    /* === REGRESSION SCORE === */
    .regression-panel { margin-top: 14px; padding: 14px; background: linear-gradient(135deg, rgba(139,92,246,0.06), rgba(59,130,246,0.04)); border: 1px solid rgba(139,92,246,0.2); border-radius: 12px; }
    .regression-score-big { font-size: 2.2rem; font-weight: 900; font-family: 'JetBrains Mono', monospace; text-align: center; }
    .regression-label { font-size: 0.68rem; color: var(--text-dark); text-align: center; margin-top: 2px; }
    .regression-factors { margin-top: 12px; }
    .regression-factor { display: flex; align-items: center; gap: 8px; padding: 5px 0; border-bottom: 1px solid rgba(255,255,255,0.03); }
    .regression-factor:last-child { border-bottom: none; }
    .regression-factor-name { flex: 1; font-size: 0.68rem; color: var(--text-gray); }
    .regression-factor-bar { width: 80px; height: 6px; background: var(--bg-input); border-radius: 3px; overflow: hidden; }
    .regression-factor-fill { height: 100%; border-radius: 3px; transition: width 0.3s; }
    .regression-factor-val { font-size: 0.68rem; font-weight: 700; width: 36px; text-align: right; font-family: 'JetBrains Mono', monospace; }

    /* === CONSENSUS ENGINE === */
    .consensus-panel { margin-top: 14px; padding: 16px; background: linear-gradient(135deg, rgba(0,212,255,0.08), rgba(245,158,11,0.06)); border: 1px solid rgba(0,212,255,0.25); border-radius: 14px; }
    .consensus-pick { font-size: 1.4rem; font-weight: 900; text-align: center; margin: 8px 0; }
    .consensus-confidence { text-align: center; font-size: 0.72rem; margin-bottom: 10px; }
    .consensus-sources { display: grid; grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); gap: 6px; margin-top: 10px; }
    .consensus-src { padding: 8px; border-radius: 8px; background: var(--bg-card); border: 1px solid var(--border); text-align: center; }
    .consensus-src.agrees { border-color: rgba(0,229,160,0.3); }
    .consensus-src.disagrees { border-color: rgba(248,113,113,0.2); }
    .consensus-src-name { font-size: 0.6rem; color: var(--text-dark); font-weight: 600; margin-bottom: 3px; }
    .consensus-src-pick { font-size: 0.78rem; font-weight: 800; }
    .consensus-meter { height: 8px; background: var(--bg-input); border-radius: 4px; overflow: hidden; margin: 10px 0 6px; }
    .consensus-meter-fill { height: 100%; border-radius: 4px; transition: width 0.4s; }