/* ============================================================
   🎯 CENTRAL FLAVIOUP — CSS PRINCIPAL V5.0
   Visual: Preto/Cinza + Amarelo (#FFC300) — Paleta Oficial
   ============================================================ */

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }

:root {
    /* ═══════════════════════════════════════
       PALETA CENTRAL FLAVIOUP
       Preto/Cinza + Amarelo
    ═══════════════════════════════════════ */

    /* Neutros */
    --color-bg-base:         #0A0A0A;
    --color-bg-surface:      #141414;
    --color-bg-elevated:     #1E1E1E;
    --color-bg-overlay:      #2D2D2D;
    --color-border:          #3C3C3C;
    --color-border-light:    #4B4B4B;

    /* Textos */
    --color-text-primary:    #F0F0F0;
    --color-text-secondary:  #A0A0A0;
    --color-text-muted:      #5A5A5A;

    /* Amarelo — Cor Principal da Marca */
    --color-primary:         #FFC300;
    --color-primary-hover:   #E6B000;
    --color-primary-active:  #CC9E00;
    --color-primary-subtle:  #2A2000;
    --color-primary-text:    #000000;

    /* Ouro / Destaques */
    --color-accent-gold:     #F0C300;
    --color-accent-gold-light: #F0D200;

    /* Estados Funcionais */
    --color-success:         #22C55E;
    --color-success-bg:      #0D2818;
    --color-danger:          #EF4444;
    --color-danger-bg:       #2D0A0A;
    --color-warning:         #FFC300;
    --color-info:            #60A5FA;

    /* Aliases de compatibilidade (legado) */
    --green:        #22C55E;
    --green-dark:   #16A34A;
    --green-bg:     rgba(34,197,94,.12);
    --green-glow:   rgba(34,197,94,.25);
    --red:          #EF4444;
    --red-dark:     #DC2626;
    --red-bg:       rgba(239,68,68,.12);
    --red-glow:     rgba(239,68,68,.25);
    --amber:        #FFC300;
    --amber-bg:     rgba(255,195,0,.12);
    --blue:         #60A5FA;
    --blue-bg:      rgba(96,165,250,.12);
    --gold:         #FFC300;
    --gold-light:   #F0D200;
    --bg:           #0A0A0A;
    --bg-card:      #141414;
    --bg-card2:     #1E1E1E;
    --border:       #3C3C3C;
    --border-gold:  rgba(255,195,0,.25);
    --text:         #F0F0F0;
    --text-muted:   #A0A0A0;
    --light-gold:   #F0D200;
    --text-gray:    #A0A0A0;
    --shadow-sm:    0 2px 8px rgba(0,0,0,.5);
    --shadow-md:    0 4px 20px rgba(0,0,0,.6);
    --shadow-lg:    0 8px 40px rgba(0,0,0,.7);
    --radius:       14px;
    --radius-sm:    8px;
    --radius-lg:    20px;
}

body {
    font-family: 'Inter', system-ui, sans-serif;
    background: var(--color-bg-base);
    color: var(--color-text-primary);
    min-height: 100vh;
    line-height: 1.6;
}

.container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }

/* ── SCROLLBAR ───────────────────────────────────────────── */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--color-bg-base); }
::-webkit-scrollbar-thumb { background: var(--color-border); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--color-primary); }

/* ── HEADER ──────────────────────────────────────────────── */
.header {
    background: var(--color-bg-surface);
    padding: 16px 0;
    position: sticky; top: 0; z-index: 1000;
    border-bottom: 1px solid var(--color-border);
    box-shadow: var(--shadow-md);
}
.header-content { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; }

.logo { display:flex; align-items:center; gap:10px; }
.logo i { font-size:1.6rem; color:var(--color-primary); filter:drop-shadow(0 0 8px rgba(255,195,0,.4)); }
.logo h1 { font-size:1.4rem; font-weight:900; color:var(--color-text-primary);
    background: linear-gradient(135deg, var(--color-text-primary) 0%, var(--color-primary) 100%);
    -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }

/* Nav */
.nav { display:flex; gap:6px; flex-wrap:wrap; }
.nav-btn {
    background: rgba(255,255,255,.04);
    border: 1px solid var(--color-border);
    color: var(--color-text-secondary);
    padding: 8px 16px; border-radius: 10px;
    cursor:pointer; font-size:.82rem; font-weight:600;
    display:flex; align-items:center; gap:6px;
    transition: all .2s ease; white-space:nowrap;
    font-family: inherit;
    position: relative; z-index: 1001;
    user-select: none;
    -webkit-tap-highlight-color: rgba(255,195,0,0.15);
}
.nav-btn:hover { background: rgba(255,195,0,.08); color:var(--color-text-primary); border-color:var(--color-primary); }
.nav-btn.active { background: var(--color-primary); color: var(--color-primary-text); border-color:transparent;
    box-shadow: 0 4px 14px rgba(255,195,0,.35); font-weight: 800; }

/* ── HISTÓRICO ACTIONS ───────────────────────────────────── */
.historico-actions {
    margin-bottom: 20px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.historico-btn {
    flex: 1;
    min-width: 180px;
}

/* ── MAIN ────────────────────────────────────────────────── */
.main { padding: 28px 0 60px; }

/* ── WELCOME (legado — não usado atualmente) ─────────────── */
.welcome-box {
    background: var(--color-bg-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    padding: 28px 32px;
    text-align: center;
    margin-bottom: 28px;
    position: relative; overflow: hidden;
    box-shadow: var(--shadow-md);
}
.welcome-box::before {
    content:''; position:absolute; top:-60px; right:-60px;
    width:180px; height:180px;
    background: radial-gradient(circle, rgba(255,195,0,.06) 0%, transparent 70%);
    border-radius:50%;
}
.welcome-icon { font-size:2.4rem; margin-bottom:10px; }
.welcome-box h2 { font-size:1.4rem; font-weight:800; margin-bottom:8px; }
.welcome-box p  { color:var(--color-text-secondary); font-size:.9rem; }

/* Loading */
.loading { display:none; text-align:center; padding:40px; }
.loading.active { display:block; }
.spinner { width:42px; height:42px; border:3px solid var(--color-border);
    border-top-color:var(--color-primary); border-radius:50%;
    animation: spin 1s linear infinite; margin:0 auto 16px; }
.spin {
    animation: spin 0.8s linear infinite;
}
@keyframes spin { to { transform:rotate(360deg); } }

/* Sections */
.section { display:none; }
.section.active { display:block; }
.section-header { margin-bottom:24px; }
.section-header h2 { font-size:1.25rem; font-weight:800; display:flex; align-items:center; gap:10px; }
.section-header h2 i { color:var(--color-primary); }
.section-header p  { color:var(--color-text-secondary); font-size:.88rem; margin-top:4px; }

/* ── BILHETES TABS ───────────────────────────────────────── */
.bilhetes-tabs { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:24px; position:relative; z-index:10; }
.tab-btn {
    background: var(--color-bg-surface);
    border: 1px solid var(--color-border);
    color: var(--color-text-secondary); border-radius: var(--radius);
    padding: 14px 16px; cursor:pointer;
    display:flex; flex-direction:column; align-items:center; gap:4px;
    transition: all .25s ease; font-family:inherit;
    position: relative; z-index:10;
    user-select: none;
    -webkit-tap-highlight-color: rgba(255,195,0,0.15);
}
.tab-btn i { font-size:1.3rem; margin-bottom:2px; }
.tab-title  { font-size:.85rem; font-weight:700; }
.tab-subtitle { font-size:.72rem; color:var(--color-text-muted); }
.tab-btn:hover { border-color:var(--color-primary); color:var(--color-text-primary); background: var(--color-primary-subtle); }
.tab-btn.active {
    background: var(--color-primary-subtle);
    border-color: var(--color-primary); color: var(--color-primary);
    box-shadow: 0 4px 16px rgba(255,195,0,.2);
}

/*.tab-btn[data-tipo="seguro"].active {*/
/*    background: linear-gradient(135deg, #22C55E, #16A34A);*/
/*    color: #fff;*/
/*}*/

/*.tab-btn[data-tipo="medio"].active {*/
/*    background: linear-gradient(135deg, #FFC300, #E6B000);*/
/*    color: #000;*/
/*}*/

/*.tab-btn[data-tipo="arriscado"].active {*/
/*    background: linear-gradient(135deg, #EF4444, #DC2626);*/
/*    color: #fff;*/
/*}*/

/* ── BILHETE CONTENT ─────────────────────────────────────── */
.bilhete-content { min-height: 200px; }

.bilhete-header {
    background: var(--color-bg-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    padding: 22px 24px;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: nowrap;
}

.bilhete-tipo {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 800;
    font-size: 1rem;
    flex-shrink: 0;
}

.bilhete-tipo.seguro    { color: var(--color-success); }
.bilhete-tipo.medio     { color: var(--color-primary); }
.bilhete-tipo.arriscado { color: var(--color-danger); }

.bilhete-odd-total {
    font-size: 2rem;
    font-weight: 900;
    color: var(--color-primary);
    text-shadow: 0 0 20px rgba(255,195,0,.3);
    flex-shrink: 0;
}

.bilhete-mensagem {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 8px 14px;
    border-radius: 999px;
    font-size: .8rem;
    font-weight: 800;
    letter-spacing: .3px;
    white-space: nowrap;
    text-align: center;
    /*flex: 1;*/
    min-width: 0;
    border: 1px solid transparent;
    box-shadow: 0 4px 14px rgba(0,0,0,.18);
}

.bilhete-mensagem i {
    flex-shrink: 0;
}

/* pendente */
.bilhete-mensagem.pendente {
    color: var(--color-primary);
    background: linear-gradient(135deg, rgba(255,195,0,.10), rgba(255,195,0,.18));
    border-color: rgba(255,195,0,.28);
    box-shadow: 0 0 16px rgba(255,195,0,.10);
}

/* green */
.bilhete-mensagem.green {
    color: #fff;
    background: linear-gradient(135deg, #16A34A, #22C55E);
    border-color: rgba(34,197,94,.45);
    box-shadow: 0 0 18px rgba(34,197,94,.22);
}

/* red */
.bilhete-mensagem.red {
    color: #fff;
    background: linear-gradient(135deg, #DC2626, #EF4444);
    border-color: rgba(239,68,68,.45);
    box-shadow: 0 0 18px rgba(239,68,68,.22);
}

/* Bilhete Summary */
.bilhete-resumo {
    background: var(--color-bg-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    padding: 16px 20px;
    margin-top: 16px; margin-bottom: 16px;
    display:flex; justify-content:space-around; flex-wrap:wrap; gap:12px;
}
.resumo-item { display:flex; flex-direction:column; align-items:center; gap:2px; }
.resumo-item span:first-child { font-size:.75rem; color:var(--color-text-muted); text-transform:uppercase; letter-spacing:.5px; }
.resumo-item span:last-child  { font-size:1rem; font-weight:800; color:var(--color-accent-gold); }

/* ── JOGO CARD ───────────────────────────────────────────── */
.bilhete-jogos { display:flex; flex-direction:column; gap:12px; }

.jogo-card {
    background: var(--color-bg-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    overflow: hidden;
    transition: transform .2s ease, box-shadow .2s ease;
    position: relative;
}
.jogo-card:hover { transform:translateY(-2px); box-shadow:var(--shadow-md); }

/* Estado visual do jogo */
.jogo-card.jogo-finalizado.resultado-green {
    border-color: var(--color-success);
    box-shadow: 0 0 0 1px var(--color-success), 0 4px 20px var(--green-glow);
}
.jogo-card.jogo-finalizado.resultado-red {
    border-color: var(--color-danger);
    box-shadow: 0 0 0 1px var(--color-danger), 0 4px 20px var(--red-glow);
}

/* Barra colorida lateral */
.jogo-card::before {
    content:''; position:absolute; left:0; top:0; bottom:0; width:4px;
    background: var(--color-border); transition: background .3s ease;
}
.jogo-card.resultado-green::before { background: linear-gradient(180deg, var(--green-dark), var(--color-success)); }
.jogo-card.resultado-red::before   { background: linear-gradient(180deg, var(--red-dark), var(--color-danger)); }
.jogo-card.ao-vivo::before         { background: linear-gradient(180deg, #2563eb, var(--color-info)); animation: pulseBorder 1.5s ease-in-out infinite; }

@keyframes pulseBorder {
    0%,100% { opacity:1; } 50% { opacity:.5; }
}

/* Header do jogo */
.jogo-header {
    display:flex; align-items:center; justify-content:space-between;
    padding: 10px 16px 0 20px;
    gap: 8px;
}
.jogo-liga { display:flex; align-items:center; gap:6px; font-size:.75rem; color:var(--color-text-muted); font-weight:600; }
.jogo-liga i { color:var(--color-primary); font-size:.8rem; }

/* Status pill */
.jogo-status-pill {
    display:inline-flex; align-items:center; gap:5px;
    padding: 3px 10px; border-radius:20px;
    font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.5px;
}
.status-aguardando { background: var(--color-primary-subtle); border:1px solid var(--color-primary); color:var(--color-primary); }
.status-ao-vivo    { background: var(--blue-bg);  border:1px solid var(--color-info); color:var(--color-info); animation: pulseBorder 1.5s ease-in-out infinite; }
.status-green      { background: var(--color-success-bg); border:1px solid var(--color-success); color:var(--color-success); }
.status-red        { background: var(--color-danger-bg);  border:1px solid var(--color-danger);  color:var(--color-danger); }

/* Times */
.jogo-times {
    display:flex; align-items:center; justify-content:center; gap:12px;
    padding: 12px 20px 8px;
    font-weight:700; font-size:.95rem; text-align:center;
}
.jogo-vs {
    font-size:.7rem; font-weight:800; color:var(--color-text-muted);
    background: var(--color-bg-elevated); padding:3px 8px; border-radius:6px;
    flex-shrink:0;
}

/* Countdown */
.jogo-countdown {
    text-align:center; padding:4px 20px;
    font-size:.75rem; color:var(--color-primary); font-weight:600;
    display:flex; align-items:center; justify-content:center; gap:5px;
}
.jogo-countdown i { font-size:.75rem; }

/* Badge resultado (GREEN/RED/AGUARDANDO) */
.resultado-badge {
    display:inline-flex; align-items:center; gap:8px;
    padding:8px 16px; border-radius:25px;
    font-weight:700; font-size:.88rem;
    margin:8px 20px; animation: fadeIn .4s ease;
}
.resultado-badge.green  { background: var(--color-success-bg); color:var(--color-success); border:1px solid var(--color-success); box-shadow:0 0 16px var(--green-glow); }
.resultado-badge.red    { background: var(--color-danger-bg);  color:var(--color-danger);  border:1px solid var(--color-danger);  box-shadow:0 0 16px var(--red-glow); }
.resultado-badge.pending{ background: var(--color-primary-subtle); color:var(--color-primary); border:1px solid var(--color-primary); animation: pulseBorder 2s ease-in-out infinite; }
.resultado-badge.ao-vivo{ background: var(--blue-bg); color:var(--color-info); border:1px solid var(--color-info); animation: pulseBorder 1.5s ease-in-out infinite; }
.resultado-badge .placar-final { background:rgba(0,0,0,.4); padding:2px 8px; border-radius:10px; font-size:.8rem; margin-left:4px; }

/* Palpite */
.jogo-palpite {
    display:flex; align-items:center; justify-content:space-between;
    padding: 8px 20px 6px;
}
.palpite-tipo { display:flex; align-items:center; gap:6px; font-size:.82rem; font-weight:600; color:var(--color-text-primary); }
.palpite-tipo i { color:var(--color-primary); }
.palpite-odd {
    font-size:.95rem; font-weight:900; color:var(--color-accent-gold);
    background: rgba(255,195,0,.1); padding:3px 10px; border-radius:8px;
    border: 1px solid rgba(255,195,0,.2);
}

/* Probabilidade */
.jogo-probabilidade {
    padding: 6px 20px 4px;
    display:flex; align-items:center; gap:8px;
}
.prob-label { font-size:.72rem; color:var(--color-text-muted); font-weight:600; }
.prob-bar-wrap { flex:1; height:5px; background: var(--color-bg-overlay); border-radius:3px; overflow:hidden; }
.prob-bar { height:100%; border-radius:3px; transition: width .6s ease; }
.prob-bar.alta   { background: linear-gradient(90deg, var(--color-primary), var(--color-accent-gold)); }
.prob-bar.media  { background: linear-gradient(90deg, #b45309, var(--color-primary)); }
.prob-bar.baixa  { background: linear-gradient(90deg, var(--red-dark), var(--color-danger)); }
.prob-pct { font-size:.78rem; font-weight:800; min-width:36px; text-align:right; }
.prob-pct.alta   { color:var(--color-primary); }
.prob-pct.media  { color:var(--color-accent-gold); }
.prob-pct.baixa  { color:var(--color-danger); }

/* Confiança */
.jogo-confianca { padding: 4px 20px 8px; }
.confianca-badge {
    display:inline-flex; align-items:center; gap:5px;
    font-size:.72rem; font-weight:700; padding:3px 10px; border-radius:6px;
}
.confianca-badge.alta   { background: var(--color-primary-subtle); color:var(--color-primary); border: 1px solid rgba(255,195,0,.2); }
.confianca-badge.media  { background: rgba(255,195,0,.08); color:var(--color-accent-gold); }
.confianca-badge.baixa  { background: var(--color-danger-bg); color:var(--color-danger); }

/* Análise */
.jogo-analise {
    padding: 8px 20px 12px;
    background: rgba(0,0,0,.25);
    font-size:.78rem; color:var(--color-text-secondary);
    display:flex; align-items:flex-start; gap:6px; line-height:1.5;
    border-top: 1px solid var(--color-border);
}
.jogo-analise i { color:var(--color-info); flex-shrink:0; margin-top:2px; }

/* Estatísticas detalhadas */
.jogo-stats-grid {
    display:grid; grid-template-columns:1fr 1fr 1fr; gap:6px;
    padding: 8px 20px; background: rgba(0,0,0,.15);
    border-top: 1px solid var(--color-border);
}
.stat-mini { display:flex; flex-direction:column; align-items:center; gap:2px; }
.stat-mini-label { font-size:.65rem; color:var(--color-text-muted); text-align:center; text-transform:uppercase; letter-spacing:.3px; }
.stat-mini-val   { font-size:.88rem; font-weight:800; color:var(--color-text-primary); }

/* ── REFRESH BTN ─────────────────────────────────────────── */
.refresh-btn {
    width:100%; margin-top:20px;
    background: var(--color-primary);
    border:none; color: var(--color-primary-text); border-radius:var(--radius);
    padding: 14px 20px; font-size:.9rem; font-weight:700;
    cursor:pointer; display:flex; align-items:center; justify-content:center; gap:8px;
    transition: all .2s ease; font-family:inherit;
    box-shadow: 0 4px 14px rgba(255,195,0,.3);
    user-select: none;
    -webkit-tap-highlight-color: rgba(255,195,0,0.2);
}
.refresh-btn:hover { transform:translateY(-2px); box-shadow:0 6px 20px rgba(255,195,0,.4); background: var(--color-primary-hover); }
.refresh-btn:active{ transform:translateY(0); background: var(--color-primary-active); }

/* Clear notifications */
.clear-notifications {
    background: rgba(239,68,68,.1); border:1px solid rgba(239,68,68,.3);
    color:var(--color-danger); border-radius:var(--radius-sm);
    padding:10px 16px; font-size:.82rem; font-weight:700;
    cursor:pointer; display:flex; align-items:center; gap:6px;
    transition: all .2s ease; font-family:inherit;
}
.clear-notifications:hover { background:rgba(239,68,68,.2); }

/* ── STATS OVERVIEW ──────────────────────────────────────── */
.stats-overview {
    display:grid; grid-template-columns:repeat(auto-fit, minmax(160px,1fr));
    gap:12px; margin-bottom:28px;
}
.stat-card {
    background: var(--color-bg-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    padding: 18px 16px;
    display:flex; align-items:center; gap:14px;
    transition: border-color .2s ease;
}
.stat-card:hover { border-color:var(--color-primary); }
.stat-icon { width:42px; height:42px; border-radius:10px;
    display:flex; align-items:center; justify-content:center; font-size:1.1rem; flex-shrink:0; }
.stat-icon.green { background: var(--color-success-bg); color:var(--color-success); border:1px solid rgba(34,197,94,.2); }
.stat-icon.red   { background: var(--color-danger-bg);  color:var(--color-danger);  border:1px solid rgba(239,68,68,.2); }
.stat-icon.gold  { background: var(--color-primary-subtle); color:var(--color-primary); border:1px solid rgba(255,195,0,.2); }
.stat-icon.blue  { background: var(--blue-bg); color:var(--color-info); border:1px solid rgba(96,165,250,.2); }
.stat-info { display:flex; flex-direction:column; gap:2px; }
.stat-label { font-size:.72rem; font-weight:700; color:var(--color-text-muted); text-transform:uppercase; letter-spacing:.5px; }
.stat-value { font-size:1.5rem; font-weight:900; }

/* ── HISTÓRICO ───────────────────────────────────────────── */
.historico-item {
    background: var(--color-bg-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    padding: 18px 20px;
    margin-bottom: 12px;
    transition: all .2s ease;
    position: relative; overflow:hidden;
}
.historico-item::before {
    content:''; position:absolute; left:0; top:0; bottom:0; width:4px;
}
.historico-item.green::before,
.historico-item.ganho::before { background: linear-gradient(180deg, var(--green-dark), var(--color-success)); }
.historico-item.red::before,
.historico-item.perdido::before { background: linear-gradient(180deg, var(--red-dark), var(--color-danger)); }
.historico-item.pendente::before { background: var(--color-primary); }
.historico-item:hover { transform:translateX(3px); }

.historico-header { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:12px; }
.historico-data { font-size:.75rem; color:var(--color-text-muted); display:block; margin-top:2px; }
.historico-status {
    font-size:.75rem; font-weight:800; padding:4px 12px; border-radius:20px; white-space:nowrap;
}
.historico-status.green, .historico-status.ganho { background: var(--color-success-bg); color:var(--color-success); border:1px solid rgba(34,197,94,.3); }
.historico-status.red, .historico-status.perdido { background: var(--color-danger-bg);  color:var(--color-danger);  border:1px solid rgba(239,68,68,.3); }
.historico-status.pendente { background: var(--color-primary-subtle); color:var(--color-primary); border:1px solid rgba(255,195,0,.3); }

/* Jogos detalhados no histórico */
.historico-jogos { margin:10px 0; display:flex; flex-direction:column; gap:6px; }
.hist-jogo {
    display:flex; align-items:center; gap:8px;
    font-size:.78rem; padding:5px 10px; border-radius:7px;
}
.hist-jogo.hj-green { background: var(--color-success-bg); }
.hist-jogo.hj-red   { background: var(--color-danger-bg); }
.hist-jogo-icon { flex-shrink:0; font-size:.85rem; }
.hist-jogo-icon.green { color:var(--color-success); }
.hist-jogo-icon.red   { color:var(--color-danger); }
.hist-jogo-text { flex:1; color:var(--color-text-primary); }
.hist-jogo-placar { font-weight:800; font-size:.8rem; }
.hist-jogo-placar.green { color:var(--color-success); }
.hist-jogo-placar.red   { color:var(--color-danger); }

/* Novos estilos histórico V4.0 */
.historico-footer {
    display:flex; justify-content:space-between; align-items:center;
    margin-top:10px; padding-top:10px;
    border-top:1px solid var(--color-border); font-size:.82rem;
    color:var(--color-text-muted);
}
.hist-jogo.hj-pendente { background: rgba(255,195,0,.06); }
.hist-jogo-icon.gray   { color: var(--color-text-muted); }
.hist-jogo-placar.gray { color: var(--color-text-muted); }
.hist-jogo-info {
    flex:1; display:flex; flex-direction:column; gap:2px;
}
.hj-liga {
    font-size:.68rem; color:var(--color-primary); font-weight:600; letter-spacing:.3px;
}
.hist-jogo-mercado {
    font-size:.73rem; color:var(--color-text-muted);
}

/* ── DIA ENCERRADO ───────────────────────────────────────── */
.dia-encerrado-card {
    display: flex; flex-direction: column; align-items: center;
    padding: 40px 24px; gap: 16px;
    background: var(--color-bg-elevated); border: 1px solid rgba(255,195,0,.2);
    border-radius: var(--radius-lg); text-align: center;
    animation: fadeInUp .5s ease;
}
.dia-encerrado-icon  { font-size: 3.5rem; animation: pulse 2s infinite; }
.dia-encerrado-titulo {
    font-size: 1.7rem; font-weight: 700;
    background: linear-gradient(135deg, var(--color-primary), var(--color-accent-gold-light));
    -webkit-background-clip: text; -webkit-text-fill-color: transparent;
}
.dia-encerrado-data  { font-size: .9rem; color: var(--color-text-muted); margin-top: -8px; }

.dia-encerrado-stats {
    display: flex; gap: 20px; justify-content: center; margin: 8px 0;
}
.enc-stat {
    display: flex; flex-direction: column; align-items: center; gap: 4px;
    background: var(--color-bg-surface); border: 1px solid var(--color-border);
    border-radius: var(--radius); padding: 14px 22px;
    min-width: 80px;
}
.enc-stat.green { border-color: var(--color-success); }
.enc-stat.red   { border-color: var(--color-danger); }
.enc-stat-val   { font-size: 1.6rem; font-weight: 700; }
.enc-stat.green .enc-stat-val { color: var(--color-success); }
.enc-stat.red   .enc-stat-val { color: var(--color-danger); }
.enc-stat-lbl   { font-size: .75rem; color: var(--color-text-muted); }

.dia-encerrado-lucro {
    font-size: 1.2rem; font-weight: 700;
    display: flex; flex-direction: column; align-items: center; gap: 2px;
}
.dia-encerrado-lucro small { font-size: .72rem; color: var(--color-text-muted); font-weight: 400; }

.dia-encerrado-countdown {
    background: var(--color-bg-surface); border: 1px solid var(--color-border);
    border-radius: var(--radius); padding: 12px 20px;
    font-size: .9rem; color: var(--color-text-muted);
    display: flex; align-items: center; gap: 8px;
}
.dia-encerrado-countdown strong { color: var(--color-primary); font-size: 1rem; }

.btn-verificar-amanha {
    margin-top: 4px; padding: 10px 24px;
    background: var(--color-primary);
    color: var(--color-primary-text); border: none; border-radius: var(--radius); cursor: pointer;
    font-weight: 700; font-size: .9rem; display: flex; align-items: center; gap: 8px;
    transition: all .2s ease; box-shadow: 0 4px 15px rgba(255,195,0,.3);
}
.btn-verificar-amanha:hover {
    transform: translateY(-2px); box-shadow: 0 6px 20px rgba(255,195,0,.4);
    background: var(--color-primary-hover);
}

/* ── NOTIFICAÇÕES ────────────────────────────────────────── */
.notificacao-item {
    background: var(--color-bg-surface); border:1px solid var(--color-border);
    border-radius: var(--radius); padding:14px 16px; margin-bottom:10px;
    display:flex; align-items:flex-start; gap:12px; transition:all .2s ease;
}
.notificacao-item.sucesso { border-left:3px solid var(--color-success); }
.notificacao-item.erro    { border-left:3px solid var(--color-danger); }
.notificacao-item.info    { border-left:3px solid var(--color-info); }
.notificacao-icon { font-size:1.1rem; flex-shrink:0; margin-top:2px; }
.notificacao-icon.sucesso { color:var(--color-success); }
.notificacao-icon.erro    { color:var(--color-danger); }
.notificacao-icon.info    { color:var(--color-info); }
.notificacao-titulo { font-weight:700; font-size:.88rem; }
.notificacao-mensagem { color:var(--color-text-muted); font-size:.8rem; margin-top:2px; }
.notificacao-hora { font-size:.7rem; color:var(--color-text-muted); margin-top:4px; }
.notification-badge {
    position:absolute; top:-4px; right:-4px;
    background:var(--color-danger); color:#fff; font-size:.6rem; font-weight:800;
    width:16px; height:16px; border-radius:50%;
    display:flex; align-items:center; justify-content:center;
}
.nav-btn { position:relative; }
.notifications-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:16px; flex-wrap:wrap; gap:8px; }

/* ── CALCULADORA ─────────────────────────────────────────── */
.calculator-box {
    background: var(--color-bg-surface); border:1px solid rgba(255,195,0,.15);
    border-radius: var(--radius-lg); padding:28px 24px;
    max-width:560px; margin:0 auto;
}
.calculator-box h2 { font-size:1.2rem; font-weight:800; margin-bottom:24px;
    display:flex; align-items:center; gap:8px; }
.calculator-box h2 i { color:var(--color-primary); }
.calc-group { margin-bottom:16px; }
.calc-group label { display:block; font-size:.8rem; font-weight:600;
    color:var(--color-text-muted); margin-bottom:6px; }
.calc-group input {
    width:100%; background: var(--color-bg-elevated); border:1px solid var(--color-border);
    border-radius:var(--radius-sm); padding:11px 14px; color:var(--color-text-primary);
    font-size:.95rem; font-family:inherit; outline:none;
    transition:border-color .2s ease;
}
.calc-group input:focus { border-color:var(--color-primary); box-shadow:0 0 0 3px rgba(255,195,0,.15); }
.calc-group small { font-size:.72rem; color:var(--color-text-muted); margin-top:4px; display:block; }
.calc-btn {
    width:100%; margin-top:8px; padding:14px;
    background: var(--color-primary);
    border:none; color: var(--color-primary-text); border-radius:var(--radius);
    font-size:.95rem; font-weight:700; cursor:pointer;
    display:flex; align-items:center; justify-content:center; gap:8px;
    transition:all .2s ease; font-family:inherit;
    box-shadow:0 4px 14px rgba(255,195,0,.3);
}
.calc-btn:hover { transform:translateY(-2px); box-shadow:0 6px 20px rgba(255,195,0,.4); background: var(--color-primary-hover); }
.calc-result {
    margin-top:20px; background: var(--color-bg-elevated);
    border:1px solid rgba(255,195,0,.2); border-radius:var(--radius); padding:18px 20px;
}
.result-item {
    display:flex; justify-content:space-between; align-items:center;
    padding:8px 0; border-bottom:1px solid var(--color-border);
}
.result-item:last-child { border-bottom:none; }
.result-label { font-size:.82rem; color:var(--color-text-muted); }
.result-value { font-size:1rem; font-weight:800; color:var(--color-text-primary); }
.result-value.green { color:var(--color-success); }
.result-value.gold  { color:var(--color-accent-gold); }
.calc-section { background: var(--color-bg-surface); border:1px solid var(--color-border); border-radius:var(--radius); padding:20px; margin-bottom:16px; }
.calc-section h3 { font-size:.95rem; font-weight:700; margin-bottom:14px; color:var(--color-primary); }
.calc-inputs { display:flex; flex-direction:column; gap:12px; }
.calc-inputs label { font-size:.8rem; font-weight:600; color:var(--color-text-muted); display:block; margin-bottom:4px; }
.calc-inputs input {
    width:100%; background: var(--color-bg-elevated); border:1px solid var(--color-border);
    border-radius:var(--radius-sm); padding:10px 14px; color:var(--color-text-primary);
    font-size:.9rem; font-family:inherit; outline:none; transition:border-color .2s ease;
}
.calc-inputs input:focus { border-color:var(--color-primary); }
.calc-resultado {
    background: var(--color-bg-elevated);
    border:1px solid rgba(255,195,0,.2); border-radius:var(--radius);
    padding:16px 20px; margin-top:12px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px;
}
.calc-resultado .resultado-item { display:flex; flex-direction:column; align-items:center; gap:2px; }
.calc-resultado .resultado-label { font-size:.72rem; color:var(--color-text-muted); text-transform:uppercase; }
.calc-resultado .resultado-val   { font-size:1.1rem; font-weight:900; }
.calc-resultado .resultado-val.positivo { color:var(--color-success); }
.calc-resultado .resultado-val.neutro   { color:var(--color-accent-gold); }

/* ── BILHETES ONTEM (resultados) ─────────────────────────── */
.bilhetes-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(300px,1fr)); gap:16px; margin-top:24px; }

.bilhete-card {
    background: var(--color-bg-surface); border:2px solid var(--color-border);
    border-radius:var(--radius); overflow:hidden; position:relative;
    transition: box-shadow .2s ease;
}
.bilhete-card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; }
.bilhete-card.status-green { border-color:var(--color-success); box-shadow:0 4px 20px var(--green-glow); }
.bilhete-card.status-green::before { background:linear-gradient(90deg, var(--green-dark), var(--color-success)); }
.bilhete-card.status-red   { border-color:var(--color-danger);  box-shadow:0 4px 20px var(--red-glow); }
.bilhete-card.status-red::before   { background:linear-gradient(90deg, var(--red-dark), var(--color-danger)); }

.bilhete-card-header { display:flex; justify-content:space-between; align-items:center; padding:16px 16px 10px; border-bottom:1px solid var(--color-border); }
.bilhete-tipo-small { display:flex; align-items:center; gap:7px; font-weight:700; font-size:.9rem; }
.bilhete-odd-small  { font-size:.8rem; color:var(--color-text-muted); padding:6px 16px; }
.bilhete-odd-small strong { color:var(--color-accent-gold); font-size:.95rem; }

.bilhete-jogos-resultado { display:flex; flex-direction:column; padding:8px 10px 12px; gap:8px; }

/* Jogo resultado (aba Ontem) */
.jogo-resultado { border-radius:10px; overflow:hidden; border:1px solid var(--color-border); }
.jogo-resultado-inner { display:flex; align-items:stretch; min-height:62px; }
/* Aba Ontem: legenda de liga/times */
.jogo-liga-small { font-size:.68rem; color:var(--color-primary); font-weight:600; margin-bottom:2px; }
.jogo-vs-sep { color:var(--color-text-muted); margin:0 4px; font-size:.75rem; }
.jogo-mercado-text { color:var(--color-text-muted); font-size:.75rem; }

/* Bilhete status badge (aba Ontem) */
.bilhete-status-badge {
    display:inline-flex; align-items:center; gap:5px;
    padding:4px 12px; border-radius:20px; color:#fff;
    font-size:.78rem; font-weight:700;
}

.jogo-resultado-lateral {
    width:44px; display:flex; align-items:center; justify-content:center;
    font-size:1.2rem; font-weight:900; flex-shrink:0; color:#fff;
}
.jogo-acertou                       { background: var(--color-success-bg); border-color: rgba(34,197,94,.3); }
.jogo-acertou .jogo-resultado-lateral { background:linear-gradient(180deg, var(--green-dark), var(--color-success)); }
.jogo-errou                         { background: var(--color-danger-bg);  border-color: rgba(239,68,68,.3); }
.jogo-errou   .jogo-resultado-lateral { background:linear-gradient(180deg, var(--red-dark), var(--color-danger)); }

.jogo-resultado-body { flex:1; padding:8px 10px; display:flex; flex-direction:column; justify-content:center; gap:4px; }
.jogo-times-small { font-size:.82rem; font-weight:600; color:var(--color-text-primary); }
.jogo-palpite-resultado { display:flex; justify-content:space-between; font-size:.75rem; color:var(--color-text-muted); gap:6px; }
.jogo-placar { font-weight:800; font-size:.82rem; white-space:nowrap; }
.jogo-acertou .jogo-placar { color:var(--color-success); }
.jogo-errou   .jogo-placar { color:var(--color-danger); }
.jogo-resultado-icone { width:36px; display:flex; align-items:center; justify-content:center; font-size:1rem; flex-shrink:0; }
.jogo-acertou .jogo-resultado-icone { color:var(--color-success); }
.jogo-errou   .jogo-resultado-icone { color:var(--color-danger); }

/* ── FOOTER ──────────────────────────────────────────────── */
.footer { background: var(--color-bg-surface); border-top:1px solid var(--color-border); padding:20px 0; text-align:center; }
.footer p { font-size:.8rem; color:var(--color-text-muted); }
.footer .disclaimer { font-size:.72rem; margin-top:4px; color: var(--color-text-muted); }

/* ── EMPTY STATE ─────────────────────────────────────────── */
.empty-state { text-align:center; padding:50px 20px; color:var(--color-text-muted); }
.empty-state i { font-size:2.5rem; margin-bottom:14px; opacity:.4; display:block; }
.empty-state p { font-size:.95rem; }

/* ── BTN VERIFICAR MANUAL ────────────────────────────────── */
#btnVerificarManual {
    position:fixed; bottom:24px; right:24px;
    background: var(--color-primary);
    border:none; color: var(--color-primary-text); border-radius:50px;
    padding:12px 20px; font-size:.82rem; font-weight:700;
    cursor:pointer; display:flex; align-items:center; gap:7px;
    box-shadow: 0 4px 20px rgba(255,195,0,.35);
    z-index:999; transition:all .2s ease; font-family:inherit;
}
#btnVerificarManual:hover  { transform:translateY(-2px) scale(1.02); box-shadow:0 6px 24px rgba(255,195,0,.5); background: var(--color-primary-hover); }
#btnVerificarManual.verificando { opacity:.7; pointer-events:none; }

/* ── ANIMAÇÕES ───────────────────────────────────────────── */
@keyframes fadeIn    { from{opacity:0;transform:translateY(8px)}  to{opacity:1;transform:translateY(0)} }
@keyframes fadeInUp  { from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} }
@keyframes slideIn   { from{opacity:0;transform:translateX(-10px)} to{opacity:1;transform:translateX(0)} }
@keyframes pulse     { 0%,100%{transform:scale(1)} 50%{transform:scale(1.05)} }
@keyframes bounceIn  { 0%{transform:scale(.8);opacity:0} 60%{transform:scale(1.05)} 100%{transform:scale(1);opacity:1} }
@keyframes badgePop  { 0%{transform:scale(.7);opacity:0} 70%{transform:scale(1.08)} 100%{transform:scale(1);opacity:1} }

.jogo-card    { animation: fadeIn .3s ease; }
.bilhete-card { animation: fadeIn .3s ease; }
.historico-item { animation: slideIn .3s ease; }

/* ── BADGES DE FONTE DE DADOS / CONTEXTO ────────────────── */
.jogo-badges {
    display: flex; align-items: center;
    gap: 5px; margin-top: 7px; flex-wrap: wrap;
}

.badge-fonte, .badge-classico, .badge-derby, .badge-copa {
    font-size: .62rem; font-weight: 600;
    padding: 2px 7px; border-radius: 8px;
    display: inline-flex; align-items: center; gap: 3px;
    animation: badgePop .3s ease; white-space: nowrap;
}

.badge-fonte.real {
    color: var(--color-success);
    background: var(--color-success-bg);
    border: 1px solid var(--color-success);
}
.badge-fonte.historico {
    color: var(--color-text-muted);
    background: rgba(255,255,255,.04);
    border: 1px solid var(--color-border);
}
.badge-classico {
    color: var(--color-primary);
    background: var(--color-primary-subtle);
    border: 1px solid var(--color-primary);
}
.badge-derby {
    color: #e879f9;
    background: rgba(232,121,249,.12);
    border: 1px solid #e879f9;
}
.badge-copa {
    color: #fb923c;
    background: rgba(251,146,60,.12);
    border: 1px solid #fb923c;
}

/* ── INDICADOR DE SCORE ──────────────────────────────────── */
.score-badge {
    font-size: .68rem; font-weight: 700;
    padding: 2px 8px; border-radius: 10px;
    display: inline-flex; align-items: center; gap: 3px;
    letter-spacing: .4px;
}
.score-badge.excelente { color: var(--color-success);      background: var(--color-success-bg);      border: 1px solid var(--color-success); }
.score-badge.bom       { color: var(--color-primary);      background: var(--color-primary-subtle);  border: 1px solid var(--color-primary); }
.score-badge.ok        { color: var(--color-text-muted);   background: rgba(255,255,255,.05);        border: 1px solid var(--color-border); }
.score-badge.baixo     { color: var(--color-danger);       background: var(--color-danger-bg);       border: 1px solid var(--color-danger); }

/* ── MELHORIAS NO CARD ───────────────────────────────────── */
.jogo-analise {
    font-size: .75rem; color: var(--color-text-secondary);
    padding: 7px 10px; background: rgba(255,255,255,.025);
    border-radius: 6px; border-left: 2px solid var(--color-primary);
    margin-top: 8px; line-height: 1.4;
    display: flex; align-items: flex-start; gap: 6px;
}
.jogo-analise i { color: var(--color-info); flex-shrink: 0; margin-top: 1px; }

/* ── NOVO LAYOUT DE CONFRONTO ────────────────────────────── */
.jogo-confronto {
    display: flex; align-items: center;
    justify-content: center; gap: 10px;
    padding: 12px 20px 8px;
}
.jogo-time { flex: 1; display: flex; align-items: center; }
.jogo-time-casa { justify-content: flex-end; }
.jogo-time-fora { justify-content: flex-start; }
.time-nome {
    font-weight: 700; font-size: .93rem;
    color: var(--color-text-primary); line-height: 1.2;
}
.jogo-time-casa .time-nome { text-align: right; }
.jogo-time-fora .time-nome { text-align: left; }

/* ── LOGOS DOS TIMES NO CONFRONTO ────────────────────────── */
.time-info {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.time-info-fora {
    justify-content: flex-end;
}

.time-logo {
    width: 24px;
    height: 24px;
    object-fit: contain;
    flex-shrink: 0;
    display: block;
}

.time-nome {
    font-weight: 700;
    font-size: .93rem;
    color: var(--color-text-primary);
    line-height: 1.2;
    word-break: break-word;
}

.jogo-time-casa .time-info {
    justify-content: flex-end;
    text-align: right;
}

.jogo-time-fora .time-info {
    justify-content: flex-start;
    text-align: left;
}

.jogo-time-casa .time-nome {
    text-align: right;
}

.jogo-time-fora .time-nome {
    text-align: left;
}


/* Caixa de placar central */
.jogo-placar-center { flex-shrink: 0; }
.jogo-placar-box {
    display: flex; align-items: center; gap: 5px;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 10px; padding: 6px 12px;
    min-width: 62px; justify-content: center; position: relative;
}
.jogo-placar-box.placar-box-green { background: var(--color-success-bg); border-color: rgba(34,197,94,.3); }
.jogo-placar-box.placar-box-red   { background: var(--color-danger-bg);  border-color: rgba(239,68,68,.25); }
.jogo-placar-box.placar-box-live  { background: var(--color-primary-subtle); border-color: rgba(255,195,0,.25); }
.placar-num { font-size: 1.15rem; font-weight: 900; color: var(--color-text-primary); font-variant-numeric: tabular-nums; line-height: 1; }
.placar-sep { font-size: .85rem; color: var(--color-text-muted); }
.placar-live-dot {
    position: absolute; top: -3px; right: -3px;
    width: 7px; height: 7px;
    background: var(--color-primary);
    border-radius: 50%; border: 1px solid var(--color-bg-base);
    animation: pgcPulse 1.2s ease-in-out infinite;
}
.jogo-vs-box {
    background: var(--color-bg-elevated); border: 1px solid var(--color-border);
    border-radius: 8px; padding: 5px 10px; min-width: 40px;
    display: flex; align-items: center; justify-content: center;
}
.jogo-vs-text { font-size: .7rem; font-weight: 800; color: var(--color-text-muted); letter-spacing: 1px; }

/* Header do jogo melhorado */
.jogo-header-right {
    display: flex; align-items: center; gap: 6px;
    flex-wrap: wrap; justify-content: flex-end;
}
.jogo-data-hora {
    font-size: .7rem; color: var(--color-text-muted);
    display: flex; align-items: center; gap: 4px; white-space: nowrap;
}
.liga-icone { font-size: .9rem; }

/* Meta: confiança + badges */
.jogo-meta {
    padding: 4px 20px 6px;
    display: flex; align-items: flex-start;
    justify-content: space-between; flex-wrap: wrap; gap: 6px;
}

/* Badges unificados */
.fonte-badge {
    font-size: .62rem; font-weight: 600;
    padding: 2px 7px; border-radius: 8px;
    display: inline-flex; align-items: center; gap: 3px;
    animation: badgePop .3s ease; white-space: nowrap;
}
.fonte-espn     { color: var(--color-success); background: var(--color-success-bg); border: 1px solid var(--color-success); }
.fonte-hist     { color: var(--color-text-muted); background: rgba(255,255,255,.04); border: 1px solid var(--color-border); }
.fonte-classico { color: var(--color-primary); background: var(--color-primary-subtle); border: 1px solid var(--color-primary); }
.fonte-derby    { color: #e879f9; background: rgba(232,121,249,.12); border: 1px solid #e879f9; }
.fonte-copa     { color: #fb923c; background: rgba(251,146,60,.12);  border: 1px solid #fb923c; }

/* Barra de prob animada */
.prob-bar { transition: width .7s cubic-bezier(.4,0,.2,1); }

/* Stats grid central */
.stat-mini-center { border-left: 1px solid var(--color-border); border-right: 1px solid var(--color-border); }

/* ── BANNER FLAVIOUP BOAS-VINDAS ─────────────────────────── */
.flavioup-banner {
    background: linear-gradient(180deg, #1a1400 0%, #141414 100%);
    border-bottom: 2px solid rgba(255,195,0,.25);
    padding: 22px 0 20px;
    position: relative;
    overflow: hidden;
}
/* brilho decorativo de fundo */
.flavioup-banner::before {
    content: '';
    position: absolute;
    top: -60px; left: 50%;
    transform: translateX(-50%);
    width: 500px; height: 160px;
    background: radial-gradient(ellipse, rgba(255,195,0,.07) 0%, transparent 70%);
    pointer-events: none;
}

/* ── Título ── */
.fup-titulo-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 16px;
}
.fup-emoji { font-size: 1.5rem; line-height: 1; }
.fup-titulo {
    font-size: 1.25rem;
    font-weight: 900;
    color: #F0F0F0;
    text-align: center;
    margin: 0;
    letter-spacing: .3px;
}
.fup-destaque {
    color: #FFC300;
    text-shadow: 0 0 16px rgba(255,195,0,.45);
}

/* ── Lives ── */
.fup-lives-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
}
.fup-lives-label {
    font-size: .78rem;
    font-weight: 700;
    color: #A0A0A0;
    display: flex;
    align-items: center;
    gap: 6px;
    text-transform: uppercase;
    letter-spacing: .5px;
}
.fup-lives-label i { color: #FFC300; }
.fup-lives-btns {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
}

/* ── Divisor ── */
.fup-divider {
    width: 100%;
    max-width: 500px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255,195,0,.25), transparent);
    margin: 0 auto 14px;
}

/* ── Redes sociais ── */
.fup-redes-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}
.fup-redes-chamada {
    font-size: .82rem;
    color: #C0C0C0;
    text-align: center;
    line-height: 1.5;
    max-width: 520px;
}
.fup-redes-chamada i  { color: #FFC300; margin-right: 4px; }
.fup-redes-chamada strong { color: #F0F0F0; font-weight: 700; }
.fup-redes-btns {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
}

/* ── Botões base ── */
.fup-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 18px;
    border-radius: 50px;
    font-size: .82rem;
    font-weight: 700;
    text-decoration: none;
    letter-spacing: .3px;
    transition: all .22s ease;
    white-space: nowrap;
    border: 1px solid transparent;
    position: relative;
    overflow: hidden;
}
.fup-btn::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.12), transparent);
    transform: translateX(-100%);
    transition: transform .4s ease;
}
.fup-btn:hover::after { transform: translateX(100%); }
.fup-btn:hover { transform: translateY(-2px); }
.fup-btn i { font-size: .9rem; }

/* Facebook — azul */
.fup-btn-fb {
    background: #1877F2;
    color: #fff;
    border-color: rgba(255,255,255,.15);
    box-shadow: 0 3px 14px rgba(24,119,242,.4);
}
.fup-btn-fb:hover { background: #1464d8; box-shadow: 0 5px 20px rgba(24,119,242,.6); color: #fff; }

/* YouTube — vermelho */
.fup-btn-yt {
    background: #FF0000;
    color: #fff;
    border-color: rgba(255,255,255,.15);
    box-shadow: 0 3px 14px rgba(255,0,0,.35);
}
.fup-btn-yt:hover { background: #cc0000; box-shadow: 0 5px 20px rgba(255,0,0,.55); color: #fff; }

/* Instagram — gradiente */
.fup-btn-ig {
    background: linear-gradient(135deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888);
    color: #fff;
    border-color: rgba(255,255,255,.1);
    box-shadow: 0 3px 14px rgba(220,39,67,.4);
}
.fup-btn-ig:hover { box-shadow: 0 5px 20px rgba(220,39,67,.6); color: #fff; filter: brightness(1.1); }

/* WhatsApp — verde */
.fup-btn-wpp {
    background: #25D366;
    color: #fff;
    border-color: rgba(255,255,255,.15);
    box-shadow: 0 3px 14px rgba(37,211,102,.4);
}
.fup-btn-wpp:hover { background: #1db954; box-shadow: 0 5px 20px rgba(37,211,102,.6); color: #fff; }

/* Telegram — azul claro */
.fup-btn-tg {
    background: #0088CC;
    color: #fff;
    border-color: rgba(255,255,255,.15);
    box-shadow: 0 3px 14px rgba(0,136,204,.4);
}
.fup-btn-tg:hover { background: #0070aa; box-shadow: 0 5px 20px rgba(0,136,204,.6); color: #fff; }

/* ── Responsivo mobile ── */
@media (max-width: 600px) {
    .fup-titulo { font-size: 1.05rem; }
    .fup-emoji  { font-size: 1.2rem; }
    .fup-btn    { padding: 8px 14px; font-size: .78rem; }
    .fup-redes-chamada { font-size: .78rem; padding: 0 8px; }
    .fup-lives-btns,
    .fup-redes-btns { gap: 8px; }
}
@media (max-width: 380px) {
    .fup-titulo-wrap { gap: 7px; }
    .fup-btn { padding: 7px 11px; font-size: .74rem; }
}

/* ── DUPLA CHANCE: BADGE & DISTRIBUIÇÃO 1X2 ─────────────── */
.palpite-mercado-wrap {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.palpite-icon { color: var(--color-primary); }

/* Badge 1X / X2 / 12 */
.badge-dupla-chance {
    font-size: .62rem;
    font-weight: 900;
    padding: 2px 8px;
    border-radius: 20px;
    letter-spacing: .5px;
    text-transform: uppercase;
}
.badge-dc-1x  { background: rgba(34,197,94,.15);  color: #22C55E; border: 1px solid rgba(34,197,94,.35); }
.badge-dc-x2  { background: rgba(96,165,250,.15); color: #60A5FA; border: 1px solid rgba(96,165,250,.35); }
.badge-dc-12  { background: rgba(255,195,0,.15);  color: #FFC300; border: 1px solid rgba(255,195,0,.35); }

/* Distribuição probabilística 1X2 */
.jogo-dc-distribuicao {
    display: flex;
    gap: 8px;
    padding: 8px 20px 6px;
    background: rgba(0,0,0,.2);
    border-top: 1px solid var(--color-border);
}
.dc-col {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
}
.dc-label {
    font-size: .6rem;
    color: var(--color-text-muted);
    text-transform: uppercase;
    letter-spacing: .4px;
    font-weight: 700;
}
.dc-bar-wrap {
    width: 100%;
    height: 4px;
    background: var(--color-bg-overlay);
    border-radius: 2px;
    overflow: hidden;
}
.dc-bar {
    height: 100%;
    border-radius: 2px;
    background: linear-gradient(90deg, #16A34A, #22C55E);
    transition: width .7s cubic-bezier(.4,0,.2,1);
}
.dc-bar-mid  { background: linear-gradient(90deg, #A0A0A0, #D0D0D0); }
.dc-bar-fora { background: linear-gradient(90deg, #2563EB, #60A5FA); }
.dc-pct {
    font-size: .68rem;
    font-weight: 800;
    color: var(--color-text-primary);
}
.dc-casa   .dc-pct { color: #22C55E; }
.dc-empate .dc-pct { color: var(--color-text-muted); }
.dc-fora   .dc-pct { color: #60A5FA; }

/* Responsivo */
@media (max-width: 480px) {
    .jogo-dc-distribuicao { padding: 6px 12px; gap: 5px; }
    .dc-label { font-size: .55rem; }
    .dc-pct   { font-size: .62rem; }
}

/* ── SITE WRAPPER BLUR ───────────────────────────────────── */
.site-wrapper {
    transition: filter .4s ease;
}
.site-blur {
    filter: blur(8px);
    pointer-events: none;
    user-select: none;
}

/* ── MODAL VERIFICAÇÃO DE IDADE ──────────────────────────── */
.modal-idade-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.82);
    z-index: 99999;
    align-items: center;
    justify-content: center;
    padding: 20px;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    animation: fadeIn .35s ease;
}

.modal-idade-box {
    background: #141414;
    border: 1px solid rgba(255,195,0,.3);
    border-radius: 20px;
    padding: 36px 32px 28px;
    max-width: 420px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    text-align: center;
    box-shadow: 0 20px 60px rgba(0,0,0,.8), 0 0 40px rgba(255,195,0,.08);
    animation: bounceIn .45s ease;
}

.modal-idade-icon {
    font-size: 3rem;
    line-height: 1;
    filter: drop-shadow(0 0 12px rgba(255,195,0,.4));
}

.modal-idade-titulo {
    font-size: 1.6rem;
    font-weight: 900;
    background: linear-gradient(135deg, #F0F0F0 0%, #FFC300 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin: 0;
}

.modal-idade-subtitulo {
    font-size: .78rem;
    color: #A0A0A0;
    font-weight: 600;
    letter-spacing: .5px;
    text-transform: uppercase;
    margin-top: -6px;
}

.modal-idade-divider {
    width: 60px;
    height: 2px;
    background: linear-gradient(90deg, transparent, #FFC300, transparent);
    border-radius: 2px;
}

.modal-idade-pergunta {
    font-size: 1.05rem;
    font-weight: 700;
    color: #F0F0F0;
}
.modal-idade-pergunta strong {
    color: #FFC300;
}

.modal-idade-aviso {
    font-size: .74rem;
    color: #A0A0A0;
    background: rgba(255,195,0,.05);
    border: 1px solid rgba(255,195,0,.12);
    border-radius: 10px;
    padding: 8px 14px;
    display: flex;
    align-items: center;
    gap: 7px;
    text-align: left;
}
.modal-idade-aviso i {
    color: #FFC300;
    flex-shrink: 0;
}

.modal-idade-btns {
    display: flex;
    gap: 12px;
    width: 100%;
    margin-top: 4px;
}

.modal-btn-sim,
.modal-btn-nao {
    flex: 1;
    padding: 13px 16px;
    border: none;
    border-radius: 12px;
    font-size: .9rem;
    font-weight: 800;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    font-family: inherit;
    transition: all .2s ease;
    letter-spacing: .3px;
}

.modal-btn-sim {
    background: #FFC300;
    color: #000;
    box-shadow: 0 4px 18px rgba(255,195,0,.4);
}
.modal-btn-sim:hover {
    background: #E6B000;
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(255,195,0,.55);
}

.modal-btn-nao {
    background: rgba(239,68,68,.1);
    color: #EF4444;
    border: 1px solid rgba(239,68,68,.3);
}
.modal-btn-nao:hover {
    background: rgba(239,68,68,.2);
    transform: translateY(-2px);
}

.modal-idade-legal {
    font-size: .68rem;
    color: #5A5A5A;
    margin-top: -4px;
}

/* Animação de saída */
.modal-saindo {
    animation: fadeOut .4s ease forwards;
}
@keyframes fadeOut {
    to { opacity: 0; transform: scale(.95); }
}

/* ── OVERLAY DE BLOQUEIO (clicou NÃO) ────────────────────── */
.overlay-bloqueio {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.92);
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

.bloqueio-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    text-align: center;
}

.bloqueio-icon {
    font-size: 4rem;
}

.bloqueio-box h2 {
    font-size: 1.5rem;
    font-weight: 900;
    color: #EF4444;
}

.bloqueio-box p {
    font-size: .9rem;
    color: #A0A0A0;
    max-width: 280px;
}

/* Responsivo mobile */
@media (max-width: 480px) {
    .modal-idade-box { padding: 28px 20px 22px; gap: 12px; }
    .modal-idade-titulo { font-size: 1.35rem; }
    .modal-idade-pergunta { font-size: .95rem; }
    .modal-btn-sim, .modal-btn-nao { padding: 11px 12px; font-size: .84rem; }
}

/* ── INFO RTP BANNER ─────────────────────────────────────── */
.info-rtp-banner {
    background: #141414;
    border: 1px solid rgba(255,195,0,.18);
    border-radius: 14px;
    padding: 14px 20px;
    margin-bottom: 10px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.info-rtp-top {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    text-align: center;
}

.info-rtp-top i {
    color: #FFC300;
    font-size: .9rem;
    flex-shrink: 0;
}

.info-rtp-titulo {
    font-size: .82rem;
    font-weight: 800;
    color: #F0F0F0;
    text-transform: uppercase;
    letter-spacing: .5px;
    text-align: center;
}

.info-rtp-desc {
    display: flex;
    flex-direction: column;
    gap: 5px;
    border-top: 1px solid rgba(255,195,0,.1);
    padding-top: 9px;
}

.info-rtp-linha {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    font-size: .74rem;
    color: #A0A0A0;
    line-height: 1.55;
}

.info-rtp-linha i {
    flex-shrink: 0;
    margin-top: 2px;
    font-size: .72rem;
}

.info-rtp-linha:first-child i { color: #60A5FA; }
.info-rtp-linha:last-child  i { color: #FFC300; }

.info-rtp-linha strong {
    color: #FFC300;
    font-weight: 700;
}

/* ── DIVISOR BILHETES DO DIA ─────────────────────────────── */
.divisor-bilhetes {
    display: flex;
    align-items: center;
    gap: 17px;
    margin: 10px 0 24px;
}
.divisor-linha {
    flex: 1;
    height: 2px;
    background: linear-gradient(90deg, transparent, #FFC300, transparent);
    opacity: 0.6;
}
.divisor-texto {
    display: flex;
    align-items: center;
    gap: 11px;
    white-space: nowrap;
    background: #1E1E1E;
    border: 1px solid rgba(255,195,0,.3);
    border-radius: 50px;
    padding: 10px 24px;
    font-size: .98rem;
    font-weight: 600;
    color: #F0F0F0;
    box-shadow: 0 2px 14px rgba(255,195,0,.12);
}
.divisor-texto i {
    color: #FFC300;
    font-size: .94rem;
}
.divisor-texto strong {
    color: #FFC300;
    font-weight: 800;
}
.divisor-green {
    color: #22C55E !important;
    font-weight: 800;
    text-shadow: 0 0 10px rgba(34,197,94,.35);
}

/* ── RESPONSIVO ──────────────────────────────────────────── */
@media (max-width:768px) {

    /* ── Info RTP banner ── */
    .info-rtp-banner { padding: 12px 14px; gap: 6px; }
    .info-rtp-titulo { font-size: .78rem; }
    .info-rtp-desc { font-size: .7rem; }

    /* ── Divisor bilhetes ── */
    .divisor-bilhetes { flex-direction: column; gap: 8px; text-align: center; align-items: center; }
    .divisor-linha { width: 80%; height: 1px; flex: unset; }
    .divisor-texto { white-space: normal; text-align: center; justify-content: center; padding: 10px 18px; font-size: .9rem; }

    /* ── Header ── */
    .header-content { flex-direction: column; align-items: center; text-align: center; }
    .logo { justify-content: center; }
    .nav { justify-content: center; flex-wrap: wrap; }

    /* ── Performance banner ── */
    .performance-content { align-items: center; justify-content: center; }
    .performance-inner { justify-content: center; gap: 8px; }
    .performance-label { justify-content: center; }
    .performance-stats { justify-content: center; }
    .performance-badge { justify-content: center; }
    .roi-badge { justify-content: center; }
    .espn-status-badge { justify-content: center; }

    /* ── Tabs e bilhetes ── */
    @media (max-width:768px) {

        .bilhetes-tabs {
            display: grid;
            grid-template-columns: 1fr;
            gap: 12px;
            margin-bottom: 20px;
        }

        .tab-btn {
            flex-direction: row;
            align-items: center;
            justify-content: space-between;
            padding: 16px 18px;
            border-radius: 16px;
            font-size: .9rem;
            font-weight: 700;
            background: var(--color-bg-surface);
            border: 1px solid var(--color-border);
            transition: all .25s ease;
            box-shadow: 0 2px 10px rgba(0,0,0,.4);
        }

        .tab-btn i {
            font-size: 1.3rem;
            width: 30px;
            text-align: center;
        }

        .tab-title {
            font-size: .95rem;
            font-weight: 800;
        }

        .tab-subtitle {
            font-size: .75rem;
            opacity: .7;
        }

        /* Conteúdo interno alinhado */
        .tab-btn {
            display: flex;
            gap: 12px;
        }

        .tab-btn span {
            display: flex;
            flex-direction: column;
            align-items: flex-start;
        }

        /* 🔥 ESTADO ATIVO (destaque forte) */
        .tab-btn.active {
            background: linear-gradient(135deg, #FFC300, #F0C300);
            color: #000;
            border: none;
            box-shadow: 0 6px 25px rgba(255,195,0,.4);
            transform: scale(1.02);
        }

        .tab-btn.active .tab-subtitle {
            color: #000;
            opacity: .8;
        }

        /* Hover / toque */
        .tab-btn:active {
            transform: scale(.98);
        }
    }

    /* ── Bilhete header ── */
    .bilhete-header {
        flex-direction: column;
        align-items: center;
        text-align: center;
        flex-wrap: wrap;
    }

    .bilhete-tipo {
        justify-content: center;
    }

    .bilhete-mensagem {
        flex: unset;
        width: 100%;
        max-width: 100%;
        white-space: normal;
    }

    .bilhete-odd-total {
        text-align: center;
    }
    .bilhete-resumo { justify-content: center; }

    /* ── Section header ── */
    .section-header { text-align: center; }
    .section-header h2 { justify-content: center; }
    .section-header p { text-align: center; }

    /* ── Stats ── */
    .stats-overview { grid-template-columns:repeat(2,1fr); }
    .stat-card { justify-content: center; text-align: center; flex-direction: column; align-items: center; }
    .stat-info { align-items: center; }

    /* ── Histórico actions ── */
    .historico-actions { justify-content: center !important; }

    /* ── Jogos ── */
    .jogo-times { font-size:.85rem; gap:8px; }
    .jogo-header { flex-wrap: wrap; justify-content: center; gap: 6px; }
    .jogo-header-right { justify-content: center; }
    .jogo-liga { justify-content: center; }
    .jogo-palpite { flex-wrap: wrap; justify-content: center; gap: 8px; }
    .jogo-probabilidade { justify-content: center; }
    .jogo-confianca { text-align: center; }
    .jogo-meta { justify-content: center; }

    /* ── Bilhetes grid ── */
    .bilhetes-grid { grid-template-columns:1fr; }
    .jogo-stats-grid { grid-template-columns:1fr 1fr 1fr; }

    /* ── Calculadora ── */
    .calculator-box { padding: 22px 16px; }
    .calculator-box h2 { justify-content: center; }

    /* ── Histórico ── */
    .historico-header { flex-direction: column; align-items: center; gap: 6px; }
    .historico-footer { flex-direction: column; align-items: center; gap: 4px; text-align: center; }

    /* ── Footer ── */
    .footer { text-align: center; }

    /* ── BTN flutuante ── */
    #btnVerificarManual { bottom:16px; right:16px; padding:10px 16px; font-size:.78rem; }

    .resultado-badge {
        margin: 12px auto;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        width: fit-content;
        /*padding: 10px 18px;*/
        /*font-size: .9rem;*/
    }
}

@media (max-width:480px) {
    .nav { gap:4px; }
    .nav-btn { padding:6px 10px; font-size:.75rem; }
    .nav-btn span { display:none; }
    .nav-btn i { font-size:1rem; }
    .header-content { gap:8px; }
    .stats-overview { grid-template-columns:1fr 1fr; }
    .stat-card { padding: 14px 10px; }
    .bilhete-resumo { gap: 8px; }
    .resumo-item { min-width: 80px; }
    .performance-stats { gap: 14px; }
    .jogo-confronto { padding: 10px 12px 6px; gap: 6px; }
    .time-nome { font-size: .82rem; }
    .time-info { gap: 6px; }
    .time-logo { width: 20px; height: 20px; }
    .time-nome { font-size: .8rem; }
    .jogo-placar-box { padding: 4px 8px; min-width: 52px; }
    .placar-num { font-size: 1rem; }
}
