/* =========================================
   VARIÁVEIS GERAIS E ROOT (Cor Base Padrão)
========================================= */
:root {
    --bg: #0b0d12;
    --card: #151821;
    --border: rgba(255, 255, 255, 0.08);
    --txt1: #ffffff;
    --txt2: #94a3b8;
    --link: #38bdf8;
    --alta-clara: #7dd3fc;
    --alta-media: #0284c7;
    --alta-escura: #0369a1;
    --baixa-clara: #fed7aa;
    --baixa-media: #f97316;
    --baixa-escura: #c2410c;
    --thermo-bg-stem: #2a2e3d;
    --termo-gradiente-classico: linear-gradient(to top, #ffffff 0%, #ffffff 50%, #dc2626 50%, #dc2626 100%);
    --current-glow: #065f46;
}

body { background-color: var(--bg); color: var(--txt1); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; margin: 0; padding: 20px 5%; box-sizing: border-box; min-height: 100vh; transition: background-color 0.4s ease, color 0.4s ease;}

/* =========================================
   ANIMAÇÃO DE ALERTA (ÚLTIMOS 30 MINUTOS DO PREGÃO)
========================================= */
@keyframes pisca-azul-vermelho {
    0% { color: #38bdf8; text-shadow: 0 0 15px rgba(56, 189, 248, 0.9); }
    50% { color: #ef4444; text-shadow: 0 0 25px rgba(239, 68, 68, 0.9); }
    100% { color: #38bdf8; text-shadow: 0 0 15px rgba(56, 189, 248, 0.9); }
}

.relogio-alerta-fim {
    animation: pisca-azul-vermelho 0.8s infinite ease-in-out !important;
}

/* =========================================
   CAIXAS FLUTUANTES DE TRADES ATIVOS (TOPO DIREITO)
========================================= */
.active-trades-floating-container {
    position: fixed;
    top: 170px;
    right: 75px;
    z-index: 1100;
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 304.8px;
    pointer-events: auto;
    transition: top .32s ease;
}

body.tv-aberta-ativa .active-trades-floating-container {
    top: 290px;
}

.active-trade-card {
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 14px;
    padding: 12px 14px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7), inset 0 1px 0 rgba(255, 255, 255, 0.1);
    color: #fff;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 6px;
    transition: all 0.3s ease;
}

/* Fundo ATIVO: 15% de transparência baseada na direção do trade */
.active-trade-card.compra {
    background: linear-gradient(135deg, rgba(52, 211, 153, 0.15), rgba(11, 13, 18, 0.95));
    border-color: rgba(52, 211, 153, 0.4);
}

.active-trade-card.venda {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.15), rgba(11, 13, 18, 0.95));
    border-color: rgba(239, 68, 68, 0.4);
}

/* Estados de CONCLUSÃO (Gain/Loss): Fundo cai para 5% (0.05), cores demarcadas e caixa em 50% de opacidade */
.active-trade-card.concluido-gain {
    background: linear-gradient(135deg, rgba(52, 211, 153, 0.05), rgba(11, 13, 18, 0.95)); /* Verde Claro 5% */
    border-color: rgba(52, 211, 153, 0.3);
    opacity: 0.5; /* Caixa reduzida para 50% (translúcida, mas legível) */
}

.active-trade-card.concluido-loss {
    background: linear-gradient(135deg, rgba(153, 27, 27, 0.05), rgba(11, 13, 18, 0.95)); /* Vermelho Escuro 5% */
    border-color: rgba(153, 27, 27, 0.3);
    opacity: 0.5; /* Caixa reduzida para 50% (translúcida, mas legível) */
}

/* MODIFICADO: Header agora é clicável (cursor: pointer) para funcionar como Sanfona */
.trade-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    padding-bottom: 6px;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 1px;
    cursor: pointer; 
    transition: background 0.2s ease;
    white-space: nowrap;
}

.trade-card-header:hover {
    background: rgba(255, 255, 255, 0.03); /* Leve brilho ao passar o mouse */
    border-radius: 4px;
}

/* NOVO: Wrapper do título e do mini-resumo para se alinharem na mesma linha */
.header-title-wrapper {
    display: flex;
    align-items: center;
    gap: 4px;
    flex: 1;
    min-width: 0;
    white-space: nowrap;
}

/* Confiança do trade ao vivo — ao lado de "WIN (VENDA)". A cor é definida
   inline pelo JS (verde/amarelo/laranja/vermelho conforme o valor). */
.trade-confianca-vivo {
    flex: 0 0 auto;
    font-size: 13px;
    line-height: 17px;
    letter-spacing: 0;
    font-weight: 900;
    padding: 0 3px;
    border-radius: 4px;
    background: rgba(15, 23, 42, 0.55);
    border: 1px solid rgba(148, 163, 184, 0.25);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8);
    white-space: nowrap;
    cursor: help;
    transition: color 0.25s ease;
}
.trade-confianca-vivo[hidden] { display: none; }

/* NOVO: Mini Resumo de PnL (Fica invisível por padrão, só aparece quando a caixa colapsar) */
.mini-pnl-summary {
    display: none;
    font-size: 10px;
    font-weight: 900;
    text-shadow: 0 1px 2px rgba(0,0,0,0.8);
    white-space: nowrap;
}
.mini-pnl-summary.positivo { color: #34d399; }
.mini-pnl-summary.negativo { color: #f87171; }

/* NOVO: Ações da Caixa Colapsada (Sanfona) */
.active-trade-card.collapsed .trade-card-body {
    display: none !important; /* Esconde o corpo da caixa (detalhes de preço, alvos, etc) */
}

.active-trade-card.collapsed .mini-pnl-summary {
    display: inline-block !important; /* Mostra o lucro/prejuízo no header */
}

.active-trade-card.collapsed .trade-card-header {
    border-bottom: none; /* Remove a linha de baixo quando fechado para ficar mais clean */
    padding-bottom: 0;
    font-size: 8px;
}

/* ===== CAIXA COLAPSADA DE TRADE ENCERRADO =====
   Bandeira + ativo + direção em BRANCO à esquerda, resultado e valor em fonte
   grande à direita. A confiança sai de cena (o trade já acabou). */
.active-trade-card.collapsed.concluido-gain .trade-confianca-vivo,
.active-trade-card.collapsed.concluido-loss .trade-confianca-vivo {
    display: none !important;
}
.trade-ativo-titulo { white-space: nowrap; }

/* GRID de 3 colunas fixas: com as mesmas larguras em todos os cards, ativo,
   resultado e valor ficam alinhados verticalmente na pilha. O container tem
   304px; descontando padding e o X sobram ~250px, que é o total abaixo. */
.active-trade-card.collapsed.concluido-gain .header-title-wrapper,
.active-trade-card.collapsed.concluido-loss .header-title-wrapper {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 36px 84px;
    align-items: center;
    gap: 6px;
    min-width: 0;
}
.active-trade-card.collapsed.concluido-gain .trade-ativo-titulo,
.active-trade-card.collapsed.concluido-loss .trade-ativo-titulo {
    font-size: 10px;
    font-weight: 900;
    color: #ffffff !important;
    letter-spacing: .2px;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* O span do P&L deixa de ser caixa própria: seus dois filhos ocupam as colunas
   2 e 3 do grid do pai, senão resultado e valor não alinhavam entre cards. */
.active-trade-card.collapsed.concluido-gain .mini-pnl-summary,
.active-trade-card.collapsed.concluido-loss .mini-pnl-summary {
    display: contents !important;
}
.mini-resultado {
    font-style: normal;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .2px;
    text-align: left;
}
.mini-valor {
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0;
    text-align: right;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
/* Daltonismo: o par se separa por LUMINÂNCIA, não por matiz — o limão é bem mais
   claro que o vermelho, e essa diferença sobrevive a deuteranopia/protanopia.
   Sem glow: o brilho vazava da borda arredondada do card e sujava a leitura. */
.active-trade-card.collapsed.concluido-gain .mini-resultado,
.active-trade-card.collapsed.concluido-gain .mini-valor { color: #ccff00 !important; }
.active-trade-card.collapsed.concluido-loss .mini-resultado,
.active-trade-card.collapsed.concluido-loss .mini-valor { color: #ff8f8f !important; }
.active-trade-card.collapsed.concluido-gain,
.active-trade-card.collapsed.concluido-loss { padding: 7px 12px; }
/* Borda acompanha a cor: segundo canal de leitura além do texto */
.active-trade-card.collapsed.concluido-gain { border-color: rgba(204, 255, 0, .4) !important; }
.active-trade-card.collapsed.concluido-loss { border-color: rgba(255, 143, 143, .35) !important; }

.trade-close-x {
    background: transparent;
    border: none;
    color: #94a3b8;
    font-size: 14px;
    font-weight: bold;
    cursor: pointer;
    transition: color 0.2s;
    padding: 0 4px;
    z-index: 2; /* Para não bugar o clique da sanfona */
}
.trade-close-x:hover { color: #fff; }
.trade-card-actions { display:flex; align-items:center; gap:3px; flex:0 0 auto; }
.trade-exit-now { display:inline-flex; align-items:center; justify-content:center; border:1px solid; border-radius:6px; width:27px; height:22px; padding:0; font-size:13px; line-height:1; font-weight:900; cursor:pointer; white-space:nowrap; transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .15s ease; }
.trade-exit-now:hover { transform:scale(1.06); }
.trade-exit-now.lucro { color:#dcfce7; border-color:#22c55e; background:rgba(21,128,61,.42); box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 0 10px rgba(34,197,94,.18); }
.trade-exit-now.lucro:hover { background:rgba(21,128,61,.68); }
.trade-exit-now.neutro { color:#dbeafe; border-color:#38bdf8; background:rgba(3,105,161,.42); box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 0 10px rgba(56,189,248,.18); }
.trade-exit-now.neutro:hover { background:rgba(3,105,161,.68); }
.trade-exit-now.loss { color:#fee2e2; border-color:#ef4444; background:rgba(153,27,27,.48); box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 0 10px rgba(239,68,68,.18); }
.trade-exit-now.loss:hover { background:rgba(153,27,27,.72); }

.trade-card-body {
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-size: 10px;
    color: #cbd5e1;
    transition: all 0.3s ease;
}

.trade-row-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.trade-current-price-row { color:#ffe600; }
.trade-current-price-row>span { color:#ffe600; font-weight:900; text-shadow:0 0 8px rgba(255,230,0,.5); }
.trade-current-price-row>.preco-atual { color:#fff200; font-size:12px; font-weight:900; text-shadow:0 0 8px rgba(255,230,0,.8),0 0 14px rgba(255,193,7,.42); }
.trade-contracts-row { margin-top:2px; padding-top:5px; border-top:1px dashed rgba(255,255,255,.05); }
.trade-contracts-row>span { color:#7dd3fc; font-weight:800; }
.trade-contratos { min-width:24px; color:#f8fafc; text-align:center; font-size:12px; }

/* Botões de Ajuste Fino de Entrada (+ / -) */
.ajuste-preco-wrapper {
    display: flex;
    align-items: center;
    gap: 4px;
}

.btn-ajuste {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #fff;
    font-weight: bold;
    font-size: 11px;
    width: 20px;
    height: 20px;
    border-radius: 4px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
}
.btn-ajuste:hover {
    background: rgba(56, 189, 248, 0.4);
    border-color: #38bdf8;
}

.trade-pnl-val {
    font-size: 10px;
    font-weight: 900;
    text-shadow: 0 2px 4px rgba(0,0,0,0.5);
    white-space: nowrap;
}
.trade-result-row { gap:4px; font-size:8px; white-space:nowrap; }
.trade-pnl-val.positivo { color: #34d399; }
.trade-pnl-val.negativo { color: #f87171; }

/* Força atual do trade: informativa; nunca encerra a posição automaticamente. */
@keyframes pulse-trade-strong { 50% { transform:translateY(-50%) scale(1.025); border-color:#f97316; filter:brightness(1.16); } }
@keyframes blink-trade-critical { 0%,100% { background-color:rgba(91,16,36,.70); border-color:#991b1b; } 50% { background-color:rgba(23,37,84,.70); border-color:#2563eb; } }
.trade-exit-alert-side { position:absolute; top:50%; right:calc(100% + 12px); width:225px; transform:translateY(-50%); display:flex; flex-direction:column; gap:5px; padding:13px 14px; box-sizing:border-box; border:1px solid rgba(255,255,255,.28); border-radius:15px; z-index:25; text-align:left; background-color:rgba(7,14,27,.50); background-image:radial-gradient(circle at 18% 0%,rgba(255,255,255,.24),transparent 42%),linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.015) 48%,rgba(0,0,0,.15)); box-shadow:0 14px 38px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.38),inset 0 -1px 0 rgba(255,255,255,.08); backdrop-filter:blur(22px) saturate(155%); -webkit-backdrop-filter:blur(22px) saturate(155%); transition:width .24s ease,height .24s ease,padding .24s ease,gap .24s ease,right .24s ease,background-color .3s ease,border-color .3s ease; pointer-events:auto; cursor:pointer; }
.trade-exit-alert-side[hidden] { display:none; }
.trade-exit-alert-side::after { content:''; position:absolute; top:50%; left:100%; width:12px; height:2px; background:currentColor; opacity:.8; }
.trade-exit-alert-side strong { font-size:11px; letter-spacing:.7px; }
.trade-exit-alert-side b { color:#fff; font-size:18px; line-height:1; letter-spacing:.4px; }
.trade-exit-alert-side em { font-style:normal; font-size:10px; font-weight:1000; }
.trade-exit-alert-side small { color:#dbeafe; font-size:8px; font-weight:750; line-height:1.35; }
.trade-exit-alert-side.proteja-lucro { color:#bbf7d0; border-color:#4ade80; background-color:rgba(22,101,52,.70); }
.trade-exit-alert-side.movimento-forte { color:#dcfce7; border-color:#166534; background-color:rgba(5,46,22,.70); animation:pulse-trade-strong 1.1s ease-in-out infinite; }
.trade-exit-alert-side.risco-reversao { color:#fecdd3; border-color:#9f1239; background-color:rgba(101,23,43,.70); }
.trade-exit-alert-side.saida-confirmada { color:#f5f3ff; border-color:#7c3aed; animation:blink-trade-critical .72s steps(1,end) infinite; }
.trade-exit-alert-side.proteja-lucro em,.trade-exit-alert-side.movimento-forte em { color:#86efac; }
.trade-exit-alert-side.risco-reversao em { color:#fda4af; }
.trade-exit-alert-side.saida-confirmada em { color:#fff; }
.trade-force-meter { width:100%; height:8px; overflow:hidden; border-radius:999px; background:rgba(255,255,255,.13); border:1px solid rgba(255,255,255,.18); }
.trade-force-meter i { display:block; height:100%; min-width:2px; border-radius:inherit; background:linear-gradient(90deg,#65172b 0%,#facc15 50%,#22c55e 100%); box-shadow:0 0 9px currentColor; transition:width .35s ease; }

/* O aviso acompanha a sanfona do trade: fechado mostra só estado + nível. */
.active-trade-card.collapsed .trade-exit-alert-side { width:174px; gap:7px; padding:9px 11px; border-radius:12px; }
.active-trade-card.collapsed .trade-exit-alert-side strong,
.active-trade-card.collapsed .trade-exit-alert-side em,
.active-trade-card.collapsed .trade-exit-alert-side small { display:none; }
.active-trade-card.collapsed .trade-exit-alert-side b { font-size:12px; line-height:1.1; }
.active-trade-card.collapsed .trade-force-meter { height:7px; }

/* Segundo nível de sanfona: clique no próprio aviso para deixá-lo só como barra. */
.trade-exit-alert-side.recolhido,
.active-trade-card.collapsed .trade-exit-alert-side.recolhido { right:calc(100% + 5px); width:11px; height:58px; min-height:58px; gap:0; padding:0; overflow:hidden; border:0; border-radius:7px; background-image:none; box-shadow:0 0 13px currentColor,inset 1px 0 rgba(255,255,255,.36); }
.trade-exit-alert-side.recolhido::after { display:none; }
.trade-exit-alert-side.recolhido strong,
.trade-exit-alert-side.recolhido b,
.trade-exit-alert-side.recolhido em,
.trade-exit-alert-side.recolhido small,
.trade-exit-alert-side.recolhido .trade-force-meter { display:none; }
.trade-exit-alert-side.recolhido.proteja-lucro,
.trade-exit-alert-side.recolhido.movimento-forte { background-color:#22c55e; color:#22c55e; animation:none; }
.trade-exit-alert-side.recolhido.risco-reversao { background-color:#dc2626; color:#dc2626; }
.trade-exit-alert-side.recolhido.saida-confirmada { background-color:#2563eb; color:#2563eb; animation:none; }

/* =========================================
   OVERLAYS E ALERTAS
========================================= */
.overlay-defasado { position: relative !important; }
.overlay-defasado::after { content: "⚠️ SEM DADOS ATUAIS"; position: absolute; inset: 0; background: rgba(15, 20, 28, 0.75); backdrop-filter: blur(4px); color: #ffcc00; font-weight: 900; font-size: 11px; display: flex; align-items: center; justify-content: center; border-radius: 12px; z-index: 50; text-shadow: 0 2px 4px #000; border: 1px dashed rgba(255, 204, 0, 0.6); box-sizing: border-box; padding: 6px; text-align: center; letter-spacing: 0.5px; }

.overlay-zerado { position: relative !important; }
.overlay-zerado::after { 
    content: "⚠️ NÃO OPERE\A" attr(data-motivo); 
    white-space: pre-wrap; 
    position: absolute; top: 50%; left: 50%; 
    transform: translate(calc(-50% + 20px), -50%); 
    width: fit-content; 
    max-width: 90%; 
    padding: 6px 10px; 
    background: rgba(220, 38, 38, 0.20); 
    backdrop-filter: blur(1px); 
    color: #ffffff; font-weight: 900; font-size: 9px; 
    display: flex; flex-direction: column; align-items: center; justify-content: center; 
    text-align: center; z-index: 50; border-radius: 6px; border: 1px solid rgba(255,68,68, 0.4); 
    box-shadow: 0 2px 10px rgba(0,0,0,0.4); line-height: 1.1; 
}

@keyframes blink-abort {
    0% { border-color: rgba(249, 115, 22, 0.8); box-shadow: inset 0 0 10px rgba(249, 115, 22, 0.2); }
    50% { border-color: #ea580c; box-shadow: inset 0 0 30px rgba(249, 115, 22, 0.6); }
    100% { border-color: rgba(249, 115, 22, 0.8); box-shadow: inset 0 0 10px rgba(249, 115, 22, 0.2); }
}
.bail-out-active { animation: blink-abort 1s infinite !important; background: rgba(249, 115, 22, 0.15) !important; }

.bail-out-banner {
    position: absolute; top: 4px; right: 4px; width: 45%; height: 28%;
    background: rgba(249, 115, 22, 0.9); backdrop-filter: blur(2px);
    border: 1px solid #ffffff; border-radius: 4px;
    color: #ffffff; font-weight: 900; font-size: 9px; text-align: center;
    display: none; align-items: center; justify-content: center; z-index: 60;
    padding: 2px; box-shadow: 0 4px 10px rgba(0,0,0,0.5); letter-spacing: 0.5px;
}

/* =========================================
   MENU LATERAL UNIFICADO (TRADE, TEMA, SOM)
========================================= */
.side-buttons-container {
    position: fixed;
    left: 20px;
    /* Subido 180px: a barra ganhou botões e estava descendo demais na tela. */
    top: calc(38% - 320px);
    display: flex;
    flex-direction: column;
    gap: 15px;
    z-index: 1000;
    transform:scale(.6);
    transform-origin:top left;
}

.side-button { 
    background: rgba(21, 24, 33, 0.75);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 20%;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    cursor: pointer;
    box-shadow: 0 8px 25px rgba(0,0,0,0.6);
    backdrop-filter: blur(8px);
    transition: all 0.3s ease;
    position: relative;
    color: var(--txt1);
}

.side-button:hover {
    transform: scale(1.04);
    border-color: var(--link);
    box-shadow: 0 0 20px rgba(56, 189, 248, 0.5);
}
.side-menu-toggle { background:rgba(7,34,61,.92); border-color:rgba(125,211,252,.8); color:#bae6fd; box-shadow:0 0 12px rgba(56,189,248,.35); }
.side-menu-toggle:hover { background:rgba(14,116,144,.92); }
.side-buttons-container.menu-lateral-recolhido > *:not(#btn-toggle-menu-lateral) { display:none; }
.side-buttons-container.menu-lateral-recolhido { gap:0; }

#btn-modo-alto-risco.modo-ativo { border-color:#f59e0b; background:rgba(120,53,15,.82); box-shadow:0 0 13px rgba(245,158,11,.85),0 0 30px rgba(245,158,11,.35); }
#btn-modo-alto-risco.modo-ativo span { filter:drop-shadow(0 0 5px #fbbf24); }
#btn-sem-cooldown.sem-cooldown-ativo { border-color:#ef4444; background:rgba(127,29,29,.82); box-shadow:0 0 13px rgba(239,68,68,.85),0 0 30px rgba(239,68,68,.35); }
#btn-sem-cooldown.sem-cooldown-ativo span { filter:grayscale(.25) drop-shadow(0 0 5px #f87171); }

.side-button::after {
    content: attr(data-tooltip);
    position: absolute;
    left: 60px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    font-weight: 900;
    font-size: 12px;
    color: var(--txt1);
    letter-spacing: 2px;
    background: rgba(0, 0, 0, 0.7);
    padding: 6px 12px;
    border-radius: 8px;
    white-space: nowrap;
    border: 1px solid var(--border);
}

.side-button:hover::after {
    opacity: 1;
}

.relatorio-trades-overlay { position:fixed; inset:0; z-index:2147483000; display:none; align-items:center; justify-content:center; padding:3vh 3vw; background:rgba(2,6,23,.48); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.relatorio-trades-overlay.aberto { display:flex; }
.relatorio-trades-panel { width:72vw; min-width:60vw; height:82vh; min-height:60vh; display:flex; flex-direction:column; gap:14px; padding:20px; box-sizing:border-box; overflow:hidden; border:1px solid rgba(125,211,252,.3); border-radius:22px; background:linear-gradient(145deg,rgba(23,32,49,.82),rgba(5,10,20,.91)); box-shadow:0 30px 90px rgba(0,0,0,.72),inset 0 1px 0 rgba(255,255,255,.12),0 0 45px rgba(56,189,248,.09); backdrop-filter:blur(24px) saturate(140%); -webkit-backdrop-filter:blur(24px) saturate(140%); }
.relatorio-trades-header { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; flex:0 0 auto; }
.relatorio-trades-header h2 { margin:3px 0 2px; font-size:25px; color:#f8fafc; }
.relatorio-trades-header p { margin:0; max-width:760px; color:#94a3b8; font-size:10px; }
#relatorio-trades-kicker { color:#38bdf8; font-size:9px; font-weight:900; letter-spacing:1.2px; }
.relatorio-trades-header-actions { display:flex; align-items:center; gap:8px; flex:0 0 auto; flex-wrap:nowrap; }
.relatorio-trades-header-actions input { height:34px; padding:0 9px; color:#e2e8f0; color-scheme:dark; border:1px solid rgba(148,163,184,.3); border-radius:9px; background:rgba(15,23,42,.7); }
.relatorio-trades-header-actions button { width:34px; height:34px; border:1px solid rgba(248,113,113,.45); border-radius:50%; color:#fca5a5; background:rgba(127,29,29,.25); font-size:21px; cursor:pointer; }
.carteira-real-resumo { position:relative; display:grid; grid-template-columns:1.35fr repeat(3,1fr); gap:9px; padding:10px; border:1px solid rgba(52,211,153,.3); border-radius:15px; background:linear-gradient(135deg,rgba(6,78,59,.22),rgba(2,6,23,.48)); }
.carteira-real-resumo[hidden] { display:none; }
.carteira-real-saldo,.carteira-real-metrica { min-width:0; padding:9px 11px; border:1px solid rgba(148,163,184,.16); border-radius:11px; background:rgba(255,255,255,.045); text-align:left; }
.carteira-real-saldo { cursor:pointer; color:inherit; }
.carteira-real-saldo:hover { border-color:rgba(52,211,153,.55); background:rgba(52,211,153,.08); }
.carteira-real-saldo span,.carteira-real-metrica span { display:block; color:#94a3b8; font-size:8px; font-weight:900; letter-spacing:.7px; }
.carteira-real-saldo strong,.carteira-real-metrica strong { display:block; margin-top:3px; color:#f8fafc; font-size:20px; white-space:nowrap; }
.carteira-real-saldo strong,#carteira-disponivel { color:#86efac; }
.carteira-real-saldo small { color:#7dd3fc; font-size:7px; font-weight:800; }
.carteira-real-editor { position:absolute; top:calc(100% + 7px); left:10px; z-index:20; width:300px; padding:12px; border:1px solid rgba(125,211,252,.4); border-radius:12px; background:rgba(8,15,28,.98); box-shadow:0 18px 45px rgba(0,0,0,.7); }
.carteira-real-editor[hidden] { display:none; }
.carteira-real-editor label { display:flex; flex-direction:column; gap:5px; color:#cbd5e1; font-size:9px; font-weight:900; }
.carteira-real-editor input { height:34px; padding:0 9px; color:#f8fafc; border:1px solid rgba(148,163,184,.3); border-radius:8px; background:#0f172a; font-size:16px; }
.carteira-real-editor button { width:100%; margin-top:8px; padding:8px; border:1px solid rgba(52,211,153,.5); border-radius:8px; color:#d1fae5; background:rgba(5,150,105,.22); font-size:9px; font-weight:900; cursor:pointer; }
.carteira-real-editor small { display:block; margin-top:7px; color:#64748b; font-size:7px; line-height:1.4; }
.carteira-trava-garantia { grid-column:1/-1; display:flex; align-items:center; gap:8px; color:#cbd5e1; font-size:8px; font-weight:900; letter-spacing:.45px; cursor:pointer; }
.carteira-trava-garantia input { width:16px; height:16px; accent-color:#34d399; cursor:pointer; }
.carteira-real-resumo>p { grid-column:1/-1; margin:0; color:#94a3b8; font-size:8px; }
.relatorio-filtros { display:grid; grid-template-columns:auto minmax(260px,1fr) auto; gap:10px; padding:10px; border:1px solid rgba(125,211,252,.17); border-radius:14px; background:rgba(2,6,23,.38); }
.relatorio-filtro-grupo { min-width:0; padding:0 9px; border-right:1px solid rgba(148,163,184,.12); }
.relatorio-filtro-grupo:last-child { border-right:0; }
.relatorio-filtro-grupo>span { display:block; margin-bottom:7px; color:#7dd3fc; font-size:8px; font-weight:900; letter-spacing:.75px; }
.relatorio-segmentado,.relatorio-checks { display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.relatorio-segmentado label,.relatorio-checks label { cursor:pointer; }
.relatorio-segmentado input,.relatorio-checks input { position:absolute; opacity:0; pointer-events:none; }
.relatorio-segmentado b,.relatorio-checks b { display:block; padding:6px 9px; border:1px solid rgba(148,163,184,.2); border-radius:8px; color:#94a3b8; background:rgba(255,255,255,.035); font-size:8px; letter-spacing:.25px; transition:.15s ease; }
.relatorio-segmentado input:checked+b,.relatorio-checks input:checked+b { color:#e0f2fe; border-color:rgba(56,189,248,.6); background:rgba(14,165,233,.18); box-shadow:inset 0 0 14px rgba(56,189,248,.08); }
.relatorio-filtro-estrategias { min-width:260px; }
.relatorio-kpis { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:9px; }
.relatorio-kpi { min-width:0; padding:11px 12px; border:1px solid rgba(148,163,184,.15); border-radius:12px; background:rgba(255,255,255,.045); }
.relatorio-kpi span { display:block; color:#94a3b8; font-size:8px; font-weight:900; letter-spacing:.7px; text-transform:uppercase; }
.relatorio-kpi b { display:block; margin-top:4px; color:#f8fafc; font-size:20px; font-variant-numeric:tabular-nums; white-space:nowrap; }
.relatorio-kpi b.positivo { color:#34d399; }.relatorio-kpi b.negativo { color:#f87171; }
.relatorio-comparativo-ativos { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.relatorio-ativo-resumo { display:grid; grid-template-columns:auto repeat(4,1fr); align-items:center; gap:12px; padding:8px 12px; border:1px solid rgba(148,163,184,.14); border-radius:11px; background:rgba(255,255,255,.035); }
.relatorio-ativo-resumo>strong { color:#f8fafc; font-size:13px; }
.relatorio-ativo-resumo span { color:#64748b; font-size:7px; font-weight:900; text-transform:uppercase; }
.relatorio-ativo-resumo b { display:block; margin-top:2px; color:#cbd5e1; font-size:11px; white-space:nowrap; }
.relatorio-ativo-resumo b.positivo { color:#34d399; }.relatorio-ativo-resumo b.negativo { color:#f87171; }
.relatorio-graficos { display:grid; grid-template-columns:minmax(240px,.7fr) minmax(360px,1.3fr); gap:12px; min-height:215px; flex:0 0 215px; }
.relatorio-graficos article { min-width:0; padding:12px 14px; border:1px solid rgba(148,163,184,.14); border-radius:14px; background:rgba(2,6,23,.35); }
.relatorio-graficos h3 { margin:0 0 6px; color:#cbd5e1; font-size:10px; text-transform:uppercase; letter-spacing:.7px; }
.relatorio-grafico-titulo { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.legenda-trades { display:flex; align-items:center; gap:5px; color:#94a3b8; font-size:8px; }
.legenda-trades i { width:9px; height:9px; margin-left:7px; border:2px solid rgba(255,255,255,.85); border-radius:50%; box-shadow:0 0 9px currentColor; }
.legenda-trades i.gain { color:#baff66; background:#baff66; }.legenda-trades i.loss { color:#8b1028; background:#8b1028; }
.relatorio-graficos canvas { width:100% !important; height:175px !important; }
.relatorio-tabela-wrap { flex:1 1 auto; overflow:auto; border:1px solid rgba(148,163,184,.14); border-radius:14px; background:rgba(2,6,23,.3); }
.relatorio-tabela { width:100%; border-collapse:collapse; font-size:10px; }
.relatorio-tabela th { position:sticky; top:0; z-index:2; padding:9px 10px; color:#7dd3fc; background:rgba(8,15,28,.97); text-align:left; font-size:8px; letter-spacing:.6px; text-transform:uppercase; white-space:nowrap; }

/* Cabeçalho clicável para ordenar a tabela */
.relatorio-tabela th.col-ordenavel { cursor:pointer; user-select:none; transition:color .15s ease, background .15s ease; }
.relatorio-tabela th.col-ordenavel:hover { color:#e0f2fe; background:rgba(14,30,54,.99); }
.relatorio-tabela th.col-ordenavel .seta-ordem {
    display:inline-block; width:0; height:0; margin-left:5px; vertical-align:middle;
    border-left:3.5px solid transparent; border-right:3.5px solid transparent;
    border-top:4.5px solid rgba(148,163,184,.35); border-bottom:0;
    transition:border-color .15s ease, transform .15s ease;
}
.relatorio-tabela th.col-ordenavel:hover .seta-ordem { border-top-color:rgba(224,242,254,.7); }
/* Coluna ativa: seta cheia, apontando para o lado da ordenação */
.relatorio-tabela th.ordenando { color:#facc15; }
.relatorio-tabela th.ordenando .seta-ordem { border-top-color:#facc15; }
.relatorio-tabela th.ordenando.asc .seta-ordem { transform:rotate(180deg); }
.relatorio-tabela th.ordenando.desc .seta-ordem { transform:rotate(0deg); }
.relatorio-tabela td { padding:8px 10px; color:#cbd5e1; border-top:1px solid rgba(148,163,184,.09); white-space:nowrap; }
.relatorio-tabela tr:hover td { background:rgba(56,189,248,.05); }
.relatorio-resultado-gain { color:#34d399 !important; font-weight:900; }.relatorio-resultado-loss { color:#f87171 !important; font-weight:900; }.relatorio-resultado-aberto { color:#facc15 !important; font-weight:900; }
@media(max-width:1000px){.relatorio-trades-panel{width:94vw}.carteira-real-resumo{grid-template-columns:repeat(2,1fr)}.relatorio-kpis{grid-template-columns:repeat(3,1fr)}.relatorio-graficos{grid-template-columns:1fr;flex-basis:430px}.relatorio-trades-header{flex-direction:column}.relatorio-graficos article{min-height:190px}.relatorio-filtros{grid-template-columns:1fr}.relatorio-filtro-grupo{border-right:0;border-bottom:1px solid rgba(148,163,184,.12);padding-bottom:9px}.relatorio-filtro-grupo:last-child{border-bottom:0}.relatorio-comparativo-ativos{grid-template-columns:1fr}}

/* =========================================
   CLASSE MESTRE MENU LIQUID GLASS & JANELA TRADE
========================================= */
.MENUGLASS {
    background: rgba(255, 255, 255, 0.05); 
    backdrop-filter: blur(16px); 
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.3);
    padding: 20px;
    color: var(--txt1); 
    transition: all 0.3s ease;
}

.trade-window.liquid-glass-panel {
    position: fixed !important;
    left: 80px !important;
    top: calc(38% - 200px) !important;
    width: 400px !important;
    max-width: 400px !important;
    min-width: 400px !important;
    height: auto !important;
    gap: 10px !important;
    z-index: 999 !important;
    grid-template-columns: unset !important;
    flex-direction: row !important;
    padding: 15px !important;
}

.stop-loss-box {
    background: rgba(139, 0, 0, 0.6) !important;
    color: white !important;
    font-weight: bold;
    font-size: 1.2rem;
    border: 1px solid rgba(139, 0, 0, 0.8);
}

.financial-risk-box {
    background: rgba(255, 69, 0, 0.2); 
    color: #e0e0e0;
    font-size: 0.9rem;
    border: 1px solid rgba(255, 69, 0, 0.5);
}

/* =========================================
   ESTILOS DO BOTÃO DE MARCAÇÃO DE TRADE
========================================= */
.btn-marcar-trade {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.02) 100%);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(56, 189, 248, 0.4);
    color: var(--link);
    font-weight: 900;
    font-size: 10px;
    padding: 8px 12px;
    border-radius: 12px;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    width: 100%;
    margin-top: 8px;
    text-align: center;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3), inset 0 0 10px rgba(255, 255, 255, 0.05);
}

.btn-marcar-trade:hover {
    background: linear-gradient(135deg, rgba(56, 189, 248, 0.2), rgba(56, 189, 248, 0.05));
    border-color: var(--link);
    color: var(--txt1);
    box-shadow: 0 0 20px rgba(56, 189, 248, 0.5), inset 0 0 15px rgba(255, 255, 255, 0.1);
    transform: translateY(-1px);
}

.btn-marcar-trade.ativo {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.25), rgba(6, 95, 70, 0.4));
    border-color: #34d399;
    color: #34d399;
    box-shadow: 0 0 25px rgba(52, 211, 153, 0.6), inset 0 0 15px rgba(52, 211, 153, 0.2);
    animation: pulse-trade-glass 1.5s infinite;
}

/* =========================================
   SELETOR DE ESTRATÉGIAS
========================================= */
.strategy-selector-glass {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 90%;
    margin: 0 auto 15px auto;
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 30px;
    padding: 5px;
    box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    z-index: 1;
}

.strategy-option {
    flex: 1;
    text-align: center;
    font-size: 0.75rem;
    font-weight: 800;
    color: var(--txt1);
    opacity: 0.5;
    padding: 8px 0;
    transition: all 0.4s ease;
    z-index: 3;
    text-transform: uppercase;
}

.strategy-option.active {
    opacity: 1;
    text-shadow: 0 0 8px rgba(255, 255, 255, 0.6);
}

.slider-glass {
    position: absolute;
    top: 5px;
    left: 5px;
    width: calc(50% - 5px);
    height: calc(100% - 10px);
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 25px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    z-index: 2;
}

.slider-glass.right { transform: translateX(100%); }

/* =========================================
   CABEÇALHO E CALCULADORA
========================================= */
.thermometer-header-master { 
    background: linear-gradient(145deg, rgba(21, 24, 33, 0.85), rgba(13, 15, 20, 0.95)); 
    border: 1px solid var(--border); border-radius: 16px; padding: 25px; margin-bottom: 24px; 
    box-shadow: 0 20px 50px rgba(0,0,0,0.6), inset 0 1px 0 rgba(255,255,255,0.1); 
    backdrop-filter: blur(16px); display: flex; justify-content: space-between; align-items: center; gap: 40px;
}

.header-logo-container { flex: 1; display: flex; align-items: center; justify-content: center; height: 100%; }
.ativo-switcher { position:relative; left:0; top:0; z-index:1001; align-self:center; width:48px; height:48px; display:grid; place-items:center; padding:0; border:1px solid rgba(250,204,21,.7); border-radius:50%; color:#facc15; background:rgba(2,6,23,.88); font:900 16px/1 Montserrat,sans-serif; text-align:center; text-decoration:none; box-shadow:0 0 10px rgba(250,204,21,.35), inset 0 0 8px rgba(250,204,21,.12); transition:transform .2s ease, box-shadow .2s ease; }
.ativo-switcher:hover { transform:scale(1.1); box-shadow:0 0 18px rgba(250,204,21,.75), inset 0 0 10px rgba(250,204,21,.2); }
.thermometer-header-master:not(.tv-aberta) { padding-left:6px !important; }
.thermometer-header-master:not(.tv-aberta) .header-logo-container { flex:0 1 38% !important; min-width:240px !important; justify-content:flex-start !important; overflow:hidden; }
.thermometer-header-master:not(.tv-aberta) .header-logo-container img { width:min(961px,100%) !important; max-height:110px !important; transform:none !important; object-position:left center !important; }
.thermometer-header-master:not(.tv-aberta) .header-ai-cluster { min-width:0; transform:none; }
.header-ai-cluster { flex:0 1 760px; min-width:610px; display:grid; grid-template-columns:190px minmax(410px,1fr); gap:9px; align-items:stretch; transform:none; }
.header-ai-cluster { transform:translateX(-74px); }
.header-current-price { flex:0 0 220px; min-width:220px; margin-left:-34px; margin-right:-8px; display:flex; align-items:center; justify-content:center; gap:10px; color:#4ade80; font-family:'Montserrat',sans-serif; font-size:48px; font-weight:900; line-height:1; letter-spacing:-1px; text-align:center; white-space:nowrap; font-variant-numeric:tabular-nums; text-shadow:0 3px 12px rgba(0,0,0,.7),0 0 12px rgba(74,222,128,.28); }
.header-current-price-value { transform:translateX(80px); }
.header-current-price-flag { font-size:81px; line-height:1; transform:translateX(70px); filter:drop-shadow(0 2px 6px rgba(0,0,0,.55)); }
.header-news-player { flex:0 0 190px; width:190px; display:flex; flex-direction:column; gap:8px; padding:11px; background:linear-gradient(145deg,rgba(20,28,40,.88),rgba(8,12,18,.96)); border:1px solid rgba(56,189,248,.24); border-radius:12px; box-shadow:0 10px 26px rgba(0,0,0,.4), inset 0 1px rgba(255,255,255,.07); }
.header-news-player { display:none !important; }
.header-ai-cluster .header-news-player { width:190px; min-width:190px; padding:9px; box-sizing:border-box; }
.header-news-player h3 { margin:0; padding-bottom:7px; border-bottom:1px solid rgba(255,255,255,.1); color:#dbeafe; font-size:10px; font-weight:900; letter-spacing:.6px; text-transform:uppercase; text-align:center; white-space:nowrap; }
.header-news-controls { display:flex; gap:5px; }
.header-news-controls button { min-width:0; flex:1; padding:7px 5px; border:1px solid rgba(56,189,248,.3); border-radius:7px; background:rgba(56,189,248,.1); color:#e0f2fe; font-size:9px; font-weight:900; cursor:pointer; transition:.18s ease; white-space:nowrap; }
.header-news-controls button:hover { background:rgba(56,189,248,.22); border-color:rgba(56,189,248,.62); }
.header-operational-panel { position:relative; width:calc(100% + 36px); min-width:0; height:78px; box-sizing:border-box; display:grid; grid-template-columns:1fr 1fr 1.15fr 1.4fr; gap:7px; padding:7px 14px 7px 9px; border:1px solid rgba(56,189,248,.3); border-radius:13px; background:linear-gradient(135deg,rgba(7,20,38,.94),rgba(5,34,31,.9)); box-shadow:0 9px 24px rgba(0,0,0,.4),inset 0 1px rgba(255,255,255,.07); }
.header-operational-panel { width:calc(100% + 236px); transform:scale(1.3); transform-origin:left center; }
.header-operational-panel label,.header-fee-output { display:flex; flex-direction:column; justify-content:center; min-width:0; gap:4px; }
.header-operational-panel label>span,.header-fee-output>span { color:#7dd3fc; font-size:7.5px; font-weight:900; letter-spacing:.65px; white-space:nowrap; }
.header-operational-panel .header-gain-field>span { color:#86efac; }
.header-operational-panel .header-loss-field>span { color:#60a5fa; }
.header-operational-panel label>div { height:36px; display:flex; align-items:center; border:1px solid rgba(125,211,252,.25); border-radius:8px; background:rgba(2,6,23,.58); overflow:hidden; }
.header-operational-panel small { color:#94a3b8; font-size:8px; font-weight:800; }
.header-operational-panel label>div>small { padding-left:7px; color:#34d399; font:900 18px/1 'Montserrat',sans-serif; }
.header-operational-panel .header-loss-field>div>small { color:#60a5fa; }
.header-operational-panel input { width:100%; min-width:0; border:0; outline:0; background:transparent; color:#f8fafc; text-align:center; font:900 18px/1 'Montserrat',sans-serif; }
.header-contract-control button { flex:0 0 26px; align-self:stretch; padding:0; border:0; background:rgba(56,189,248,.1); color:#e0f2fe; font-size:17px; font-weight:900; cursor:pointer; }
.header-fee-output { padding:0 7px; border-left:1px solid rgba(255,255,255,.09); }
.header-fee-output b { color:#f6d365; font:900 20px/1 'Montserrat',sans-serif; white-space:nowrap; }
.header-fee-output small { white-space:nowrap; }
.header-fee-value-status { display:grid; grid-template-columns:max-content minmax(38px,1fr); align-items:center; column-gap:6px; width:100%; min-width:0; height:36px; }
.header-fee-value-status>b { min-width:max-content; }
.header-config-status { position:static; min-width:38px; display:flex; align-items:center; justify-content:flex-end; align-self:stretch; padding-right:6px; color:#34d399; font-size:25px; line-height:1; font-weight:900; }
.header-config-status.salvando { color:#facc15; }
.header-config-status.erro { color:#f87171; }
.header-config-status.salvando { animation:girar-status-config .75s linear infinite; transform-origin:50% 50%; }
@keyframes girar-status-config { to { transform:rotate(360deg); } }

.thermometer-header-master.tv-aberta { display:grid !important; grid-template-columns:minmax(0,538px) minmax(350px,1fr); grid-template-rows:60px 50px 87px; height:255px !important; min-height:255px; max-height:255px !important; gap:14px 24px; padding-top:15px !important; }
.thermometer-header-master.tv-aberta .header-iframe-container { grid-column:1; grid-row:1 / span 3; align-self:stretch; justify-content:flex-start !important; width:538px; max-width:100%; }
.thermometer-header-master.tv-aberta #tvsIframe { display:block; width:538px !important; max-width:100%; height:225px !important; border-radius:0; overflow:hidden; }
.thermometer-header-master.tv-aberta .header-logo-container { display:flex !important; grid-column:2; grid-row:1; justify-content:center !important; align-items:flex-end; align-self:end; height:auto !important; min-height:0; }
.thermometer-header-master.tv-aberta .header-logo-container img { width:min(420px, 88%) !important; max-height:60px !important; object-position:center center !important; }
.thermometer-header-master.tv-aberta .header-news-player { grid-column:2; grid-row:2; align-self:center; justify-self:center; width:190px; padding:6px 9px; gap:4px; }
.thermometer-header-master.tv-aberta .header-ai-cluster { grid-column:2; grid-row:2; width:100%; min-width:0; grid-template-columns:150px minmax(0,1fr); gap:8px; transform:none; align-self:center; justify-self:stretch; }
.thermometer-header-master.tv-aberta .header-ai-cluster .header-news-player { width:auto !important; grid-column:auto; grid-row:auto; }
.thermometer-header-master.tv-aberta .header-news-player h3 { padding-bottom:4px; }
.thermometer-header-master.tv-aberta .header-news-controls button { padding:4px; }
.thermometer-header-master.tv-aberta .header-clock-container { grid-column:2; grid-row:3; align-self:start; justify-content:center; width:100%; min-width:0; padding-top:0; }

@media (min-width:1350px) {
    .thermometer-header-master.tv-aberta {
        grid-template-columns:538px 180px minmax(160px,1fr) 300px;
        grid-template-rows:78px 133px;
        column-gap:18px;
        row-gap:14px;
        align-items:center;
    }
    .thermometer-header-master.tv-aberta .header-iframe-container { grid-column:1; grid-row:1 / span 2; }
    .thermometer-header-master.tv-aberta .header-ai-cluster { display:contents; }
    .thermometer-header-master.tv-aberta .header-news-player,
    .thermometer-header-master.tv-aberta .header-ai-cluster .header-news-player { grid-column:2; grid-row:1; align-self:stretch; width:180px !important; min-width:0; height:78px; padding:9px; gap:6px; box-sizing:border-box; }
    .thermometer-header-master.tv-aberta .header-logo-container { grid-column:3; grid-row:1; align-self:stretch; align-items:center; justify-content:flex-start !important; width:100%; overflow:hidden; }
    .thermometer-header-master.tv-aberta .header-logo-container img { width:min(720px,100%) !important; max-height:78px !important; object-position:left center !important; }
    .thermometer-header-master.tv-aberta .header-operational-panel { grid-column:2 / span 2; grid-row:2; width:100%; height:78px; align-self:center; }
    .thermometer-header-master.tv-aberta .header-news-player h3 { padding-bottom:7px; }
    .thermometer-header-master.tv-aberta .header-news-controls button { padding:7px 5px; }
    .thermometer-header-master.tv-aberta .header-clock-container { grid-column:4; grid-row:1 / span 2; align-self:center; justify-content:flex-end; padding-top:0; }
}

.master-header-img { 
    max-height: 200px; width: 100%; max-width: 900px; object-fit: contain; 
    filter: drop-shadow(0 8px 16px rgba(0,0,0,0.6)); 
    transform: scale(1.35); 
}

.header-calculator-container {
    width: 380px; background: rgba(125, 126, 127, 0.25); 
    backdrop-filter: blur(12px); border-radius: 12px; padding: 15px; 
    box-shadow: 0 10px 30px rgba(0,0,0,0.5); border: 1px solid rgba(255,255,255,0.2); 
    flex-shrink: 0; display: flex; flex-direction: column; justify-content: space-between; box-sizing: border-box;
    position: relative; z-index: 10;
}

.assets-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 12px; }
.asset-card { background: rgba(0,0,0,0.4); border: 2px solid transparent; border-radius: 10px; padding: 10px; text-align: center; cursor: pointer; transition: all 0.4s ease; }
.asset-icon { font-size: 1.4rem; margin-bottom: 2px; }
.asset-name { font-size: 9px; font-weight: 800; color: #d1d5db; text-transform: uppercase; }
.theme-win.selected { border-color: #065f46; background: rgba(6, 95, 70, 0.4); box-shadow: 0 0 20px rgba(6, 95, 70, 0.6); }
.theme-wdo.selected { border-color: #1e40af; background: rgba(30, 64, 175, 0.4); box-shadow: 0 0 20px rgba(30, 64, 175, 0.6); }

.input-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 8px; }
.input-label { font-size: 9px; font-weight: 800; color: #ffffff; text-align: center; margin-bottom: 6px; text-transform: uppercase; text-shadow: 0 1px 2px #000; }
.input-box { height: 60px; border-radius: 12px; display: flex; align-items: center; justify-content: center; position: relative; padding: 5px; transition: background 0.5s ease; border: 1px solid rgba(255,255,255,0.1); }
.box-contratos { background: #065f46; transition: background 0.3s ease; } 
.box-lucro { background: linear-gradient(135deg, #064e3b, #991b1b); }
.header-calculator-container input { background: transparent; border: none; color: #fff; font-weight: 900; outline: none; text-align: center; padding: 0; width: 50%; font-size: 2rem; text-shadow: 0 2px 4px #000;}
.no-spin::-webkit-outer-spin-button, .no-spin::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.btn-qty { background: rgba(0,0,0,0.3); color: white; border: 1px solid rgba(255,255,255,0.2); width: 35px; height: 35px; border-radius: 8px; font-weight: bold; cursor: pointer; font-size: 1.2rem; display: flex; align-items: center; justify-content: center; margin: 0 5px; }
.result-area { padding-top: 8px; border-top: 1px solid rgba(255,255,255,0.3); }
.result-row { display: flex; justify-content: space-between; margin-bottom: 2px; font-size: 12px; color: var(--txt1); font-weight: 600; text-shadow: 0 1px 2px #000;}
.result-row.total { font-size: 14px; font-weight: 900; color: var(--txt1); align-items: center;}
#res-liquido { color: #4ade80; font-weight: 900; font-size: 18px; text-shadow: 0 2px 5px rgba(0,0,0,0.8);} 

/* =========================================
   CARDS DOS ATIVOS PRINCIPAIS & GRÁFICOS
========================================= */
.grid-custom { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap:10px; row-gap:7px; margin-bottom:24px; }
.strategy-grid .card { min-width:0; }
.strategy-grid .card-header { gap:6px; padding-bottom:8px; }
.strategy-grid .asset-title-confidence { min-width:0; gap:5px; }
.strategy-grid .card-header h2 { font-size:clamp(15px,1.65vw,24px); letter-spacing:-.7px; }
.strategy-grid .strategy-title-emoji { font-size:1.45em; margin-right:1px; }
.strategy-grid .header-direction-badge { width:34px; min-width:34px; height:34px; margin-left:2px; font-size:20px; border-radius:8px; }
.strategy-grid .confianca-geral { font-size:24px; }
.strategy-grid .trade-collapse-toggle { left:auto; right:8px; top:6px; width:32px; height:32px; transform:none; font-size:20px; }
.strategy-grid .card.trade-card-collapsed .trade-collapse-toggle { transform:rotate(180deg); }
.strategy-grid .ai-suggestion-box { min-width:0; }
.strategy-grid .ai-box-content { padding-right:58px !important; }
.strategy-grid .ai-box-entrada b { font-size:clamp(16px,1.5vw,25px); }
.strategy-grid .ai-row b,
.strategy-grid .ai-row em { font-size:clamp(14px,1.35vw,22px); }
.strategy-grid .ai-row small { font-size:clamp(9px,.8vw,12px); }
@media (max-width:850px) {
    .grid-custom.strategy-grid { grid-template-columns:1fr; }
    .strategy-grid .card-header h2 { font-size:22px; }
    .strategy-grid .ai-row b,
    .strategy-grid .ai-row em { font-size:20px; }
}
.indices-shell { position:relative; width:145%; max-width:1650px; margin:0 auto -38px 0; zoom:.8; }
.market-layout { position:relative; left:80px; display:grid; grid-template-columns:218px minmax(0,1fr); align-items:stretch; gap:12px; }
.market-content { position:relative; left:-91px; grid-column:2; grid-row:1; min-width:0; display:flex; flex-direction:column; gap:0; }
.trade-collapse-toggle { position:absolute; left:calc(50% + 43px); top:-7px; transform:translateX(-50%); width:40px; height:40px; border:1px solid rgba(125,211,252,.42); border-radius:8px; background:rgba(5,15,30,.55); color:#bae6fd; font-size:24px; line-height:1; font-weight:900; cursor:pointer; transition:transform .2s,background .2s,color .2s; }
.trade-collapse-toggle:hover { background:rgba(56,189,248,.25); color:#fff; }
.thermometer-external .ticks-left { visibility:hidden; }
#card-win .trade-collapse-toggle { left:calc(50% + 83px); }
#indices-grid.strategy-grid .trade-collapse-toggle { left:auto; right:8px; top:6px; transform:none; width:32px; height:32px; font-size:20px; }
#indices-grid.strategy-grid .card.trade-card-collapsed .trade-collapse-toggle { transform:rotate(180deg); }
.header-direction-badge { display:inline-flex; align-items:center; justify-content:center; width:48px; min-width:48px; height:48px; padding:0; margin-left:8px; border:1px solid currentColor; border-radius:10px; font:900 28px/1 Montserrat,sans-serif; letter-spacing:0; text-shadow:0 0 8px currentColor,0 1px 2px #000; box-shadow:0 0 10px currentColor; white-space:nowrap; }
.header-direction-badge.compra { color:#34d399; background:rgba(6,78,59,.38); }
.header-direction-badge.venda { color:#f87171; background:rgba(127,29,29,.38); }
.header-direction-badge.aguarde { color:#7dd3fc; background:rgba(7,34,61,.42); }
.card.trade-card-collapsed .trade-collapse-toggle { transform:translateX(-50%) rotate(180deg); }
.card.trade-card-collapsed .card-top { display:none; }
.indices-shell.trades-collapsed .rsi-box-compartilhado { min-height:370px; height:370px; }
.indices-shell.trades-collapsed .rsi-box-compartilhado .rsi-chart-wrap,
.indices-shell.trades-collapsed .rsi-box-compartilhado canvas { height:348px !important; min-height:348px; }
.indices-shell.trades-collapsed .preco-3dias-box { min-height:330px; }
.indices-shell.trades-collapsed .preco-3dias-chart-wrap { height:285px; }
.thermometer-external { grid-column:1; grid-row:1; }
/* O controle de período permanece fixo; só o corpo visual do termômetro sobe. */
.thermometer-external { height:calc(100% - 60px); min-height:calc(100% - 60px); align-self:start; display:flex; flex-direction:column; align-items:center; justify-content:flex-start; gap:10px; padding:10px 3px; border:0; border-radius:0; background:transparent; box-shadow:none; }
.periodo-termometro-controle { position:relative; z-index:12; display:flex; align-items:center; gap:3px; color:#facc15; font:900 8px/1 Montserrat,sans-serif; white-space:nowrap; text-shadow:0 0 6px rgba(250,204,21,.7); transform:translate(-110px,-24px) scale(2); transform-origin:center center; }
.periodo-termometro-controle input { width:42px; padding:3px 2px; border:1px solid rgba(250,204,21,.65); border-radius:5px; background:rgba(5,15,25,.9); color:#fff; font:900 11px/1 Montserrat,sans-serif; text-align:center; outline:none; }
.periodo-icone { font-size:16px; line-height:1; }
.aplicar-periodo-termometro { width:auto; height:auto; padding:0; border:0; border-radius:0; background:transparent; color:#fff7b2; font-size:14px; line-height:1; cursor:pointer; white-space:nowrap; box-shadow:none; filter:drop-shadow(0 0 4px #22c55e) drop-shadow(0 0 9px rgba(34,197,94,.95)); }
.aplicar-periodo-termometro:hover { background:transparent; color:#fff; transform:scale(1.08); }
/* Altura própria: o termômetro não pode ser redistribuído quando algum card
   do painel principal é recolhido ou expandido. */
.thermometer-external .thermometer-widget { margin:0; width:100%; height:1060px; min-height:1060px; flex:0 0 1060px; align-items:center; justify-content:center; transform:translate(-88px,-100px); }
.thermometer-external .rsi-valor-termometro { position:absolute; inset:0; z-index:8; display:flex; align-items:center; justify-content:center; color:#fff; font-size:22px; font-weight:900; line-height:1; margin:0; transform:none; text-shadow:0 0 5px #000,0 0 10px rgba(255,255,255,.75); pointer-events:none; }
.thermometer-external .ticks { height:650px; min-height:650px; }

.panel-collapse-toggle { position:absolute; top:-1px; right:8px; z-index:8; width:30px; height:30px; border:1px solid rgba(125,211,252,.48); border-radius:8px; background:rgba(5,15,30,.72); color:#bae6fd; font:900 20px/1 Montserrat,sans-serif; cursor:pointer; }
.panel-collapse-toggle:hover { background:rgba(56,189,248,.28); color:#fff; }
.rsi-focus-toggle { position:absolute; top:-1px; right:48px !important; transform:translateX(1087px); z-index:8; width:30px; height:30px; border:1px solid rgba(125,211,252,.48); border-radius:8px; background:rgba(5,15,30,.72); color:#bae6fd; font:900 25px/26px Montserrat,sans-serif; cursor:pointer; }
.rsi-focus-toggle:hover { background:rgba(56,189,248,.28); color:#fff; }
body.rsi-focus-active::after,
body.candles-focus-active::after { content:""; position:fixed; inset:0; z-index:990; background:rgba(2,6,23,.56); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); }
.rsi-box-compartilhado.rsi-focus-open { position:fixed !important; top:10vh; left:10vw; z-index:991; width:80vw !important; height:80vh !important; min-height:80vh !important; max-width:none !important; margin:0 !important; padding:22px !important; border-color:rgba(125,211,252,.9); box-shadow:0 0 0 1px rgba(255,255,255,.12),0 24px 90px rgba(0,0,0,.8),0 0 46px rgba(56,189,248,.32); animation:rsi-popout .2s ease-out; }
.rsi-box-compartilhado.rsi-focus-open .rsi-chart-wrap,
.rsi-box-compartilhado.rsi-focus-open canvas { height:calc(80vh - 62px) !important; min-height:calc(80vh - 62px) !important; }
.rsi-box-compartilhado.rsi-focus-open .panel-collapse-toggle,
.rsi-box-compartilhado.rsi-focus-open .rsi-focus-toggle { top:-10px; }
.rsi-box-compartilhado.rsi-focus-open .rsi-panel-title { top:-35px; left:88px; font-size:16px; }
@keyframes rsi-popout { from { opacity:0; transform:scale(.92) translateY(14px); } to { opacity:1; transform:scale(1) translateY(0); } }
.rsi-panel-title { position:absolute; top:-28px; left:48px; z-index:7; color:#bae6fd; font:900 14px/1 Montserrat,sans-serif; letter-spacing:.7px; text-transform:uppercase; }
.rsi-panel-title #rsi-colapsado-resumo { color:#fff; margin-left:10px; }
.rsi-panel-title .rsi-resumo-seta { display:inline-block; font-size:2.64em; line-height:.35; vertical-align:-.18em; margin-left:3px; }
.rsi-box-compartilhado .rsi-panel-title { text-shadow:0 0 8px rgba(125,211,252,.4); }
.preco-3dias-header { position:absolute; top:7px; left:48px; right:48px; z-index:2; padding-top:1px; }
#preco-medio-direcao-colapsada { font-size:12px; font-weight:900; letter-spacing:.3px; }
#preco-medio-direcao-colapsada.media-alta { color:#facc15; text-shadow:0 0 8px rgba(250,204,21,.55); }
#preco-medio-direcao-colapsada.media-barata { color:#34d399; text-shadow:0 0 8px rgba(52,211,153,.55); }
.rsi-box-compartilhado.data-panel-collapsed { height:42px !important; min-height:42px !important; padding:5px 10px; overflow:hidden; }
.rsi-box-compartilhado.data-panel-collapsed .rsi-chart-wrap { display:none; }
.preco-3dias-box.data-panel-collapsed { height:42px !important; min-height:42px !important; padding:5px 12px; overflow:hidden; }
.preco-3dias-box.data-panel-collapsed .preco-3dias-layout { display:none; }
.preco-3dias-box.data-panel-collapsed { margin-bottom:10px; }
.rsi-composite-layout.rsi-panel-collapsed { grid-template-columns:minmax(0,1fr); min-height:42px; height:42px; }
.rsi-composite-layout.rsi-panel-collapsed .vies-rsi-side,
.rsi-composite-layout.rsi-panel-collapsed .rsi-info-box { display:none; }
.rsi-box-compartilhado.data-panel-collapsed { overflow:visible; }
.rsi-box-compartilhado.data-panel-collapsed .rsi-panel-title { top:-23px; }
.preco-3dias-box > .preco-3dias-header {
    position:absolute !important;
    top:9px !important;
    left:66px !important;
    right:48px !important;
    margin:0 !important;
    z-index:8 !important;
    font-size:13px !important;
}
.preco-3dias-box > .preco-3dias-header #preco-medio-3dias-colapsado,
.preco-3dias-box > .preco-3dias-header #preco-medio-direcao-colapsada { font-size:14px !important; }
.agressores-1000-box,
.agressores-60-box { max-height:calc(100% - 20px); min-height:0; }
/* Altura explícita: permite que o JS converta RSI (ex.: 56%) em preenchimento
   real do tubo. Altura percentual neste flex-container resolvia em 0px. */
.thermometer-external .thermo-stem { width:74px; height:770px; min-height:770px; padding-left:6px; padding-right:6px; }
.thermometer-external .thermo-stem { z-index:1; }
.rsi-composite-layout > .vies-rsi-side { align-self:stretch; width:100%; height:200px; min-height:200px; margin:0; padding:0; background:transparent; }
.rsi-composite-layout > .vies-rsi-side .vies-recent-arrow { height:260px; max-height:260px; flex:0 0 260px; transform:scale(1); transform-origin:top center; margin:0; }
.rsi-composite-layout > .vies-rsi-side .vies-recent-text { display:none; }
.rsi-composite-layout > .vies-rsi-side .vies-recent-arrow[data-direction="alta"]::before,
.rsi-composite-layout > .vies-rsi-side .vies-recent-arrow[data-direction="queda"]::before { left:27.5px; width:21px; height:144px; border-radius:11px; }
.rsi-composite-layout > .vies-rsi-side .vies-recent-arrow[data-direction="alta"]::before { top:48px; }
.rsi-composite-layout > .vies-rsi-side .vies-recent-arrow[data-direction="queda"]::before { top:auto; bottom:48px; }
@media (max-width:900px) { .market-layout { grid-template-columns:1fr; } .thermometer-external { min-height:150px; flex-direction:row; } .thermometer-external .thermometer-widget { min-height:130px; } .thermometer-external .ticks,.thermometer-external .thermo-stem { height:100px; min-height:100px; } .thermometer-external .vies-recent-indicator { order:0; width:130px; height:120px; min-height:120px; } }
.verovideo-lateral { position:relative; grid-column:1 / -1; grid-row:2; justify-self:end; align-self:start; z-index:1; width:min(820px, 100%); max-width:820px; aspect-ratio:16 / 9; }
.trade-dynamic-exit { margin-top:7px; padding:9px 10px; display:flex; flex-direction:column; gap:3px; border:1px solid rgba(56,189,248,.22); border-radius:8px; background:rgba(15,23,42,.42); font-size:10px; }
.trade-dynamic-exit strong { color:#67e8f9; font-size:9px; letter-spacing:.35px; }
.trade-dynamic-exit span { color:#e2e8f0; font-weight:900; font-size:16px; line-height:1.05; }
.trade-dynamic-exit small { color:#fff; font-size:12px; font-weight:900; line-height:1.25; letter-spacing:.15px; }
.trade-dynamic-exit.alerta { border-color:rgba(250,204,21,.55); background:rgba(120,75,0,.2); }
.trade-dynamic-exit.alerta span { color:#fde047; }
.youtube-canais-menu { position:absolute; left:12px; right:12px; top:calc(100% + 12px); bottom:auto; z-index:2; display:flex; gap:8px; justify-content:center; flex-wrap:wrap; }
.noticias-tickers { width:100%; margin:36px 0 12px; display:flex; flex-direction:column; gap:6px; }
.agressores-1000-box { width:100%; margin:10px 0 0; padding:10px 14px; box-sizing:border-box; border:1px solid rgba(125,211,252,.35); border-radius:12px; background:linear-gradient(180deg,rgba(15,23,42,.9),rgba(2,6,23,.78)); box-shadow:0 0 18px rgba(56,189,248,.12),inset 0 1px rgba(255,255,255,.08); }
.agressores-1000-header { display:flex; align-items:center; justify-content:space-between; gap:10px; color:#bae6fd; font:900 10px/1 Montserrat,sans-serif; letter-spacing:.8px; }
.agressores-1000-header b { color:#94a3b8; font-size:8px; }
.agressores-1000-arena { display:grid; grid-template-columns:minmax(0,1fr) 150px minmax(0,1fr); align-items:center; gap:14px; margin-top:10px; }
.agressor-side { display:grid; grid-template-columns:max-content 1fr max-content; align-items:center; gap:8px; min-width:0; }
.agressor-side strong { font:900 10px/1 Montserrat,sans-serif; white-space:nowrap; }
.agressor-side>span { font:900 18px/1 Montserrat,sans-serif; }
.agressor-compradores strong,.agressor-compradores>span { color:#38bdf8; }.agressor-vendedores strong,.agressor-vendedores>span { color:#f87171; }
.agressor-bar { height:16px; overflow:hidden; border-radius:999px; background:rgba(148,163,184,.16); border:1px solid rgba(255,255,255,.16); }
.agressor-bar i { display:block; width:0; height:100%; border-radius:inherit; transition:width .35s ease; }
.agressor-compradores .agressor-bar i { background:linear-gradient(90deg,#075985,#38bdf8); box-shadow:0 0 12px #38bdf8; }.agressor-vendedores .agressor-bar i { background:linear-gradient(90deg,#991b1b,#f87171); box-shadow:0 0 12px #f87171; }
.agressor-side small { grid-column:1 / -1; color:#94a3b8; font:700 8px/1 Montserrat,sans-serif; }
.agressor-centro { display:flex; flex-direction:column; align-items:center; gap:4px; text-align:center; }.agressor-centro b { color:#f8fafc; font:900 12px/1 Montserrat,sans-serif; }.agressor-centro span { color:#facc15; font:900 9px/1 Montserrat,sans-serif; letter-spacing:.5px; }
@media (max-width:700px) { .agressores-1000-arena { grid-template-columns:1fr; gap:8px; }.agressor-centro { order:-1; }.agressor-side { grid-template-columns:max-content 1fr max-content; } }
/* Disputa visual: cada barra nasce no centro e avança para o seu lado. */
.agressores-1000-arena { position:relative; grid-template-columns:minmax(0,1fr) 116px minmax(0,1fr); gap:0; min-height:112px; }
.agressor-side { position:relative; display:flex; flex-direction:column; justify-content:center; align-items:stretch; gap:6px; min-height:112px; }
.agressor-side strong,.agressor-side>span { position:relative; z-index:2; text-align:center; }
.agressor-side>span { font-size:20px; }
.agressor-bar { width:100%; height:74px; display:flex; align-items:stretch; background:rgba(148,163,184,.12); border-radius:0; border-color:rgba(255,255,255,.12); overflow:hidden; }
.agressor-bar i { width:0; height:100%; flex:0 0 auto; }
.agressor-compradores .agressor-bar { justify-content:flex-end; border-radius:10px 0 0 10px; }
.agressor-vendedores .agressor-bar { justify-content:flex-start; border-radius:0 10px 10px 0; }
.agressor-side small { position:relative; z-index:2; text-align:center; }
.agressor-compradores .agressor-bar i { background:linear-gradient(90deg,#1d4ed8,#38bdf8); box-shadow:0 0 18px #38bdf8; }
.agressor-vendedores .agressor-bar i { background:linear-gradient(90deg,#f87171,#991b1b); box-shadow:0 0 18px #f87171; }
.agressor-centro { position:relative; z-index:4; height:100%; justify-content:center; border-left:1px solid rgba(255,255,255,.2); border-right:1px solid rgba(255,255,255,.2); background:rgba(2,6,23,.78); }
/* Painel vertical à direita, espelhando o termômetro da esquerda. */
.agressores-1000-box { position:absolute; top:0; left:calc(100% + 0px); width:88px; min-height:860px; height:860px; max-height:860px; margin:0; padding:5px 2px; display:flex; flex-direction:column; z-index:12; border-color:rgba(125,211,252,.22); box-shadow:0 0 10px rgba(56,189,248,.08),inset 0 1px rgba(255,255,255,.05); }
.agressores-60-box { left:calc(100% + 69px); }
.agressores-60-box { width:40px; min-width:40px; }
.agressores-60-box .agressor-compradores strong,
.agressores-60-box .agressor-compradores > span { color:#1e3a8a; }
.agressores-60-box .agressor-vendedores strong,
.agressores-60-box .agressor-vendedores > span { color:#c06b20; }
.agressores-60-box .agressor-compradores .agressor-bar i { background:linear-gradient(to top,#0f172a,#1e3a8a 55%,#3b82f6); box-shadow:0 0 14px rgba(30,58,138,.95); }
.agressores-60-box .agressor-vendedores .agressor-bar i { background:linear-gradient(to top,#7c2d12,#c06b20 55%,#f59e0b); box-shadow:0 0 14px rgba(192,107,32,.95); }
.agressores-1000-header { flex-direction:column; align-items:center; text-align:center; gap:7px; }
.agressores-logo { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; width:100%; color:#f8fafc; font:900 11px/1 Montserrat,sans-serif; letter-spacing:.5px; white-space:nowrap; }
.agressores-logo b { font-size:20px; line-height:1; }
.agressores-luvas { display:flex; align-items:center; justify-content:center; gap:0; width:100%; }
.agressores-logo i { display:inline-block; font-style:normal; font-size:25px; line-height:.85; filter:drop-shadow(0 0 6px currentColor); }
.agressor-logo-venda { color:#ef4444; }
.agressor-logo-compra { color:#38bdf8; transform:scaleX(-1); filter:hue-rotate(220deg) saturate(1.8) drop-shadow(0 0 5px #38bdf8) !important; }
#agressores-1000-status { display:none; }
.agressores-1000-arena { flex:1; grid-template-columns:1fr; grid-template-rows:minmax(0,1fr) minmax(0,1fr) auto; gap:0; min-height:0; margin-top:8px; }
.agressor-side { min-height:0; align-items:center; }
.agressor-vendedores { grid-row:1; }
.agressor-compradores { grid-row:2; }
.agressor-compradores { flex-direction:column-reverse; }
.agressor-side strong,.agressor-side>span { text-align:center; }
.agressor-bar { position:relative; width:65px; height:100%; min-height:80px; flex:1; display:block; background:linear-gradient(180deg,rgba(15,23,42,.5),rgba(30,41,59,.18)); box-shadow:inset 0 0 10px rgba(0,0,0,.35); }
.agressor-bar::after { content:""; position:absolute; inset:0; z-index:2; pointer-events:none; border:1px solid rgba(255,255,255,.25); border-radius:inherit; background:linear-gradient(135deg,rgba(255,255,255,.24),rgba(255,255,255,.06) 32%,rgba(255,255,255,.015) 58%,rgba(255,255,255,.12)); box-shadow:inset 2px 2px 7px rgba(255,255,255,.22),inset -3px -5px 10px rgba(0,0,0,.28),0 0 8px rgba(255,255,255,.10); backdrop-filter:blur(7px) saturate(145%); -webkit-backdrop-filter:blur(7px) saturate(145%); }
.agressor-bar i { position:absolute; left:0; right:0; width:100% !important; height:0; transition:height .45s cubic-bezier(.22,.8,.25,1),filter .25s ease; }
.agressor-compradores .agressor-bar { justify-content:flex-end; border-radius:10px 10px 0 0; }
.agressor-vendedores .agressor-bar { justify-content:flex-start; border-radius:0 0 10px 10px; }
.agressor-compradores .agressor-bar i { bottom:0; background:linear-gradient(0deg,#082f75 0%,#2563eb 45%,#38bdf8 100%); box-shadow:0 0 12px #38bdf8,0 0 25px rgba(56,189,248,.7); animation:agressorCompraFluxo 1.15s ease-in-out infinite alternate; }
.agressor-vendedores .agressor-bar i { top:0; background:linear-gradient(180deg,#f87171 0%,#dc2626 45%,#7f1d1d 100%); box-shadow:0 0 12px #f87171,0 0 25px rgba(248,113,113,.7); animation:agressorVendaFluxo 1.15s ease-in-out infinite alternate; }
.agressor-side small { display:none; }
.agressor-centro { grid-row:3; width:100%; padding:8px 0 0; border-top:1px solid rgba(255,255,255,.2); border-bottom:0; border-left:0; border-right:0; }
.agressor-centro b { font-size:15px; line-height:1.1; }
.agressor-centro span { font-size:8px; line-height:1.1; }
/* Duas caixas espelhadas: as faces coloridas ficam voltadas para o centro. */
.agressor-side { display:block; }
.agressor-side strong,.agressor-side>span { position:absolute; left:0; right:0; z-index:3; text-align:center; }
.agressor-vendedores strong { top:4px; }
.agressor-vendedores>span { top:20px; }
.agressor-compradores strong { bottom:4px; }
.agressor-compradores>span { bottom:20px; }
.agressor-vendedores .agressor-bar { position:absolute; left:50%; bottom:0; transform:translateX(-50%) rotate(180deg); width:65px; height:calc(100% - 40px); min-height:70px; }
.agressor-compradores .agressor-bar { position:absolute; left:50%; top:0; transform:translateX(-50%) rotate(180deg); width:65px; height:calc(100% - 40px); min-height:70px; }
/* Junta as duas caixas no ponto central, sem distribuição vertical automática. */
.agressores-1000-arena { position:relative; display:block; flex:1 1 auto; min-height:0; height:auto; padding-bottom:54px; box-sizing:border-box; }
.agressores-1000-arena>.agressor-side { position:absolute; left:0; right:0; height:calc(50% - 27px); min-height:0; }
.agressores-1000-arena>.agressor-vendedores { top:0; }
.agressores-1000-arena>.agressor-compradores { top:calc(50% - 27px); }
.agressores-1000-arena>.agressor-vendedores .agressor-bar { top:auto; bottom:0; height:100%; min-height:0; }
.agressores-1000-arena>.agressor-compradores .agressor-bar { top:0; bottom:auto; height:100%; min-height:0; }
.agressores-1000-arena>.agressor-centro { position:absolute; left:0; right:0; bottom:0; height:54px; box-sizing:border-box; }
.agressores-1000-box,
.agressores-60-box { width:40px; min-width:40px; padding-left:1px; padding-right:1px; }
.agressores-1000-box .agressor-vendedores .agressor-bar,
.agressores-1000-box .agressor-compradores .agressor-bar { width:30px; }
.agressores-1000-box,
.agressores-60-box { width:60px; min-width:60px; }
.agressores-1000-box .agressor-vendedores .agressor-bar,
.agressores-1000-box .agressor-compradores .agressor-bar { width:54px; }
.agressores-logo b { font-size:8px; letter-spacing:0; white-space:normal; line-height:.95; }
.agressores-logo i { font-size:15px; }
.agressores-1000-box .agressor-side strong { display:none; }
.agressores-1000-box .agressor-side > span { color:#fff !important; font-size:15px; font-weight:900; text-shadow:0 0 7px rgba(255,255,255,.75); }
.agressores-1000-box .agressor-compradores > span { background:rgba(6,78,59,.96); border:1px solid rgba(34,197,94,.8); border-radius:5px; padding:3px 2px; box-sizing:border-box; box-shadow:0 0 8px rgba(22,101,52,.8); }
.agressores-1000-box .agressor-vendedores > span { background:rgba(127,29,29,.96); border:1px solid rgba(248,113,113,.85); border-radius:5px; padding:3px 2px; box-sizing:border-box; box-shadow:0 0 8px rgba(220,38,38,.8); }
.agressores-1000-box .agressor-centro .briga-seta-compra { color:#7dd3fc; font-size:24px; text-shadow:0 0 10px #38bdf8; }
.agressores-1000-box .agressor-centro .briga-seta-venda { color:#f87171; font-size:24px; text-shadow:0 0 10px #ef4444; }
.agressores-1000-box .agressor-compradores > span { background:rgba(15,23,42,.98); border-color:rgba(59,130,246,.9); box-shadow:0 0 8px rgba(30,64,175,.9); }
.agressores-60-box .agressor-compradores .agressor-bar i { background:linear-gradient(to top,#0f172a 0%,#3b82f6 55%,#bfdbfe 100%); box-shadow:0 0 14px rgba(59,130,246,.95); }
.agressores-60-box .agressor-vendedores .agressor-bar i { background:linear-gradient(to top,#450a0a 0%,#b91c1c 55%,#ef4444 100%); box-shadow:0 0 14px rgba(185,28,28,.95); }
@keyframes agressorCompraFluxo { from { filter:brightness(.9); box-shadow:0 0 10px #38bdf8,0 0 18px rgba(56,189,248,.55); } to { filter:brightness(1.35); box-shadow:0 0 18px #38bdf8,0 0 34px rgba(56,189,248,.9); } }
@keyframes agressorVendaFluxo { from { filter:brightness(.9); box-shadow:0 0 10px #f87171,0 0 18px rgba(248,113,113,.55); } to { filter:brightness(1.35); box-shadow:0 0 18px #f87171,0 0 34px rgba(248,113,113,.9); } }
.ticker-faixa { height:32px; display:flex; align-items:center; overflow:hidden; border:1px solid rgba(125,211,252,.24); border-radius:8px; background:rgba(15,23,42,.62); box-shadow:inset 0 1px rgba(255,255,255,.08); }
.ticker-faixa>b { flex:0 0 112px; height:100%; display:flex; align-items:center; justify-content:center; font-size:10px; letter-spacing:.7px; color:#fff; background:rgba(14,116,144,.5); border-right:1px solid rgba(125,211,252,.25); }
.ticker-brasil>b { background:rgba(22,101,52,.72); }.ticker-mundo>b { background:rgba(30,64,175,.72); }.ticker-bitcoin>b { background:rgba(146,64,14,.78); }
.ticker-brasil .ticker-conteudo { color:#ccff00; font-size:15px; }
.ticker-brasil .ticker-conteudo { animation-duration:130s; }
.ticker-mundo .ticker-conteudo { font-size:13px; animation-duration:130s; }
.ticker-bitcoin { background:rgba(4,78,59,.88); border-color:rgba(52,211,153,.4); }
.ticker-bitcoin>b { background:rgba(6,95,70,.95); }
.ticker-bitcoin .ticker-conteudo { color:#fff; animation-duration:130s; }
.ticker-janela { flex:1; min-width:0; overflow:hidden; white-space:nowrap; }
.ticker-conteudo { display:inline-block; padding-left:100%; color:#dbeafe; font-family:'DS-Digital','DSEG7 Classic','7 Segmental Digital Display',monospace; font-size:12px; font-weight:700; font-variant-numeric:tabular-nums; letter-spacing:.35px; line-height:32px; text-transform:uppercase; animation:ticker-rolagem 130s linear infinite; }
.ticker-faixa { position:relative; overflow:hidden; }
.ticker-faixa::before { content:""; position:absolute; inset:0; z-index:2; pointer-events:none; border-radius:inherit; background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.025) 42%,rgba(0,0,0,.14)); backdrop-filter:blur(0); -webkit-backdrop-filter:blur(0); border:1px solid rgba(255,255,255,.14); box-shadow:inset 0 1px 0 rgba(255,255,255,.2),inset 0 -8px 18px rgba(0,0,0,.1); }
.ticker-faixa > * { position:relative; z-index:1; }
.ticker-conteudo a { color:inherit; text-decoration:none; }
.ticker-conteudo a:hover { color:#fff; text-decoration:underline; }
@keyframes ticker-rolagem { from { transform:translateX(0); } to { transform:translateX(-100%); } }
@media (max-width:700px) { .ticker-faixa>b { flex-basis:84px; font-size:9px; }.ticker-conteudo { font-size:10px; } }
.youtube-canal-btn { display:inline-flex; align-items:center; gap:7px; padding:7px 12px 7px 8px; color:#e7f7ff; background:rgba(12,25,38,.66); border:1px solid rgba(125,211,252,.34); border-radius:999px; backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); box-shadow:0 5px 18px rgba(0,0,0,.28), inset 0 1px rgba(255,255,255,.12); cursor:pointer; font:600 12px/1 system-ui,sans-serif; transition:transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease; }
.youtube-canal-btn:hover { transform:translateY(-2px); border-color:rgba(125,211,252,.85); background:rgba(24,58,82,.8); }
.youtube-canal-btn.ativo { border-color:#67e8f9; background:linear-gradient(135deg,rgba(14,116,144,.82),rgba(30,41,59,.84)); box-shadow:0 0 18px rgba(34,211,238,.32), inset 0 1px rgba(255,255,255,.2); }
.youtube-canal-logo { width:24px; height:24px; display:grid; place-items:center; border-radius:50%; color:#fff; font-size:9px; font-weight:800; letter-spacing:-.3px; }
.logo-g1 { background:#e21b23; }.logo-ismeiow { background:linear-gradient(135deg,#a855f7,#ec4899); }.logo-reckless { background:linear-gradient(135deg,#f97316,#dc2626); }
.logo-miguel { background:linear-gradient(135deg,#0ea5e9,#2563eb); }.logo-filmcast { background:linear-gradient(135deg,#14b8a6,#0f766e); }.logo-jeanluca { background:linear-gradient(135deg,#f59e0b,#b45309); }.logo-beta { background:linear-gradient(135deg,#ef4444,#991b1b); }.logo-aprofundo { background:linear-gradient(135deg,#8b5cf6,#4c1d95); }
.logo-uol { background:linear-gradient(135deg,#0b66c3,#003b73); font-size:7px; }
.logo-cnn { background:linear-gradient(135deg,#e11d48,#9f1239); font-size:7px; }
@media (max-width:1200px) { .market-layout { grid-template-columns:200px minmax(0,1fr); } }
@media (max-width:900px) { .verovideo-lateral { position:relative; grid-column:1; grid-row:auto; top:auto; right:auto; width:100%; max-width:820px; margin:12px auto; } }
#indices-grid { width:100%; max-width:none; margin:0 0 20px 0; }
.card { background-color: var(--card); border: 1px solid var(--border); border-radius: 14px; padding: 18px; position: relative; overflow: hidden; display: flex; flex-direction: column; gap: 8px; box-shadow: 0 10px 30px rgba(0,0,0,0.4); backdrop-filter: blur(12px); }
.card::before { content: ""; position: absolute; inset: 0; z-index: 0; opacity: 0.05; background-size: cover; background-position: center; pointer-events: none; }
.card.direcional::before {
    opacity:.22;
    background-image:
        radial-gradient(circle at 82% 22%, rgba(255,215,64,.92) 0 3.2%, rgba(116,82,9,.42) 3.5% 4.5%, transparent 4.8%),
        radial-gradient(circle at 72% 36%, rgba(244,190,28,.78) 0 5%, rgba(92,68,10,.34) 5.3% 6.2%, transparent 6.5%),
        radial-gradient(ellipse at 52% 112%, rgba(34,197,94,.42), transparent 52%),
        repeating-linear-gradient(112deg, transparent 0 11%, rgba(250,204,21,.08) 11% 11.7%),
        linear-gradient(135deg, rgba(0,112,62,.95), rgba(3,52,33,.96) 48%, rgba(129,91,8,.82));
}
.card.direcional::after {
    content:"$  ◉  $  ◉  $";
    position:absolute;
    right:4%; bottom:5%; z-index:0;
    color:rgba(255,220,74,.15);
    font:900 76px/1 'Montserrat',sans-serif;
    letter-spacing:18px;
    transform:rotate(-8deg);
    pointer-events:none;
    white-space:nowrap;
}
.card.win::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 70'%3E%3Crect width='100' height='70' fill='%23009c3b'/%3E%3Cpolygon points='50,5 95,35 50,65 5,35' fill='%23ffdf00'/%3E%3Ccircle cx='50' cy='35' r='20' fill='%23002776'/%3E%3C/svg%3E"); }

.card-header { position: relative; z-index: 1; display: flex; align-items: center; gap: 14px; border-bottom: 1px solid var(--border); padding-bottom: 12px; }
.card-header h2 { margin: 0; font-family:'Montserrat',sans-serif; font-size:24px; font-weight:900; letter-spacing:-.5px; color:var(--txt1); }
.card-header svg { width: 48px; height: 34px; flex: 0 0 auto; border-radius: 5px; box-shadow: 0 2px 4px rgba(0,0,0,0.3); }
.asset-header-main { display:flex; align-items:center; justify-content:space-between; gap:14px; width:100%; min-width:0; flex-wrap:nowrap; }
.asset-header-main h2 { flex:0 0 auto; white-space:nowrap; }
.asset-title-confidence { display:flex; align-items:baseline; gap:9px; flex:0 0 auto; white-space:nowrap; }
.strategy-title-emoji { display:inline-block; font-size:2em; line-height:.5; vertical-align:-.16em; margin-right:3px; filter:drop-shadow(0 3px 7px rgba(0,0,0,.55)); }
.confianca-geral { font-family:'Montserrat',sans-serif; font-size:32px; font-weight:900; line-height:1; color:#94a3b8; text-shadow:0 2px 8px rgba(0,0,0,.65); font-variant-numeric:tabular-nums; }
.preco.preco-header { flex:0 0 auto; color:#fff; font-family:'Montserrat',sans-serif; font-size:30px; font-weight:900; line-height:1; letter-spacing:-1px; text-shadow:0 3px 12px rgba(0,0,0,.7); white-space:nowrap; }
.card-header .preco.preco-header { visibility:hidden; width:0; min-width:0; margin:0; padding:0; overflow:hidden; }
#card-win .preco-header { color:#4ade80; }
#card-direcional { border-color:rgba(226,184,43,.48); box-shadow:0 12px 34px rgba(0,68,38,.48), inset 0 0 38px rgba(234,179,8,.045); }
#card-direcional .card-header { border-bottom-color:rgba(250,204,21,.28); }
#card-direcional .card-header h2 { color:#f8e36c; text-shadow:0 0 14px rgba(250,204,21,.3), 0 2px 5px #000; }
#card-direcional .preco-header { color:#f6d365; text-shadow:0 0 15px rgba(250,204,21,.34), 0 3px 12px rgba(0,0,0,.7); }
#card-aurora { border-color:rgba(251,146,60,.62); background:linear-gradient(145deg,rgba(30,41,59,.96),rgba(124,45,18,.42) 62%,rgba(15,23,42,.98)); box-shadow:0 12px 34px rgba(124,45,18,.32), inset 0 0 38px rgba(251,146,60,.08); }
#card-aurora .card-header { border-bottom-color:rgba(251,146,60,.34); }
#card-aurora .card-header h2 { color:#fed7aa; text-shadow:0 0 14px rgba(251,146,60,.42), 0 2px 5px #000; }
#card-aurora .preco-header { color:#fdba74; text-shadow:0 0 15px rgba(251,146,60,.38), 0 3px 12px rgba(0,0,0,.7); }
#card-aurora::before { opacity:.2; background-image:radial-gradient(circle at 84% 18%,rgba(254,215,170,.95) 0 3%,rgba(251,146,60,.3) 4% 12%,transparent 30%),linear-gradient(155deg,rgba(30,64,175,.4),rgba(124,45,18,.55) 58%,transparent 80%); }
#card-aurora .ai-suggestion-box { position:relative; overflow:hidden; border-color:rgba(251,146,60,.65); background:linear-gradient(145deg,rgba(30,64,175,.38),rgba(124,45,18,.48) 58%,rgba(15,23,42,.5)); box-shadow:inset 0 0 24px rgba(251,146,60,.1),0 5px 18px rgba(0,0,0,.28); }
#card-aurora .ai-suggestion-box::before { content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.025) 38%,rgba(0,0,0,.18)); border:1px solid rgba(255,255,255,.15); box-shadow:inset 0 1px 0 rgba(255,255,255,.24); }
#card-aurora .ai-suggestion-box > * { position:relative; z-index:1; }
#card-aurora .ai-box-content { padding-right:88px; box-sizing:border-box; }
#card-aurora .ai-box-header { color:#fdba74; }
#card-aurora .ai-suggestion-box .btn-observar-trade,
#card-aurora .ai-suggestion-box .btn-marcar-trade { right:8px; }
#card-aurora .ai-suggestion-box .btn-observar-trade { top:calc(50% - 30px); }
#card-aurora .ai-suggestion-box .btn-marcar-trade { top:calc(50% + 30px); }
#card-aurora .ai-badge { border-color:rgba(251,146,60,.48); }

/* TERRA: atmosfera, oceano e continentes em tons naturais do planeta. */
#card-terra {
    border-color:rgba(56,189,248,.62);
    background:linear-gradient(155deg,rgba(3,24,55,.98),rgba(6,78,100,.88) 38%,rgba(20,83,45,.82) 68%,rgba(15,42,32,.98));
    box-shadow:0 12px 34px rgba(14,116,144,.3),inset 0 0 42px rgba(34,197,94,.1),inset 0 1px rgba(186,230,253,.2);
}
#card-terra .card-header { border-bottom-color:rgba(125,211,252,.38); }
#card-terra .card-header h2 { color:#bae6fd; text-shadow:0 0 14px rgba(56,189,248,.5),0 2px 5px #000; }
#card-terra .preco-header { color:#86efac; text-shadow:0 0 15px rgba(74,222,128,.4),0 3px 12px rgba(0,0,0,.7); }
#card-terra::before {
    opacity:.48;
    background-image:
        radial-gradient(ellipse at 21% 73%,rgba(224,242,254,.8) 0 2.2%,transparent 2.9%),
        radial-gradient(ellipse at 29% 70%,rgba(224,242,254,.72) 0 3%,transparent 3.8%),
        radial-gradient(ellipse at 76% 28%,rgba(224,242,254,.72) 0 2.4%,transparent 3.2%),
        radial-gradient(ellipse at 83% 26%,rgba(224,242,254,.62) 0 3%,transparent 4%),
        radial-gradient(circle at 50% 58%,rgba(8,156,206,.96) 0 31%,rgba(56,189,248,.3) 31.5% 34%,transparent 35%),
        radial-gradient(ellipse at 34% 44%,rgba(132,204,22,.95) 0 7%,transparent 7.8%),
        radial-gradient(ellipse at 66% 55%,rgba(101,163,13,.9) 0 9%,transparent 9.8%),
        radial-gradient(ellipse at 77% 35%,rgba(163,230,53,.76) 0 5%,transparent 5.8%),
        radial-gradient(circle at 82% 18%,rgba(186,230,253,.34),transparent 25%),
        linear-gradient(135deg,rgba(7,89,133,.82),rgba(8,47,73,.2) 45%,rgba(22,101,52,.68));
    filter:saturate(1.2);
}
#card-terra::after {
    content:"";
    position:absolute; left:-15%; top:4%; width:130%; height:150%; z-index:0; pointer-events:none; border-radius:50%;
    border:2px solid rgba(147,197,253,.22);
    background:radial-gradient(ellipse at 42% 38%,rgba(74,222,128,.3) 0 6%,transparent 6.7%),radial-gradient(ellipse at 66% 58%,rgba(34,197,94,.28) 0 10%,transparent 10.8%),radial-gradient(circle at 50% 50%,transparent 64%,rgba(56,189,248,.18) 67%,transparent 72%);
    box-shadow:0 0 25px rgba(56,189,248,.2),inset 0 0 30px rgba(56,189,248,.18),inset -18px -12px 34px rgba(2,30,55,.38);
}
#card-terra .ai-suggestion-box {
    border-color:rgba(74,222,128,.55);
    background:linear-gradient(145deg,rgba(7,89,133,.48),rgba(20,83,45,.62) 58%,rgba(3,24,55,.58));
    box-shadow:inset 0 0 24px rgba(56,189,248,.1),0 5px 18px rgba(0,0,0,.3);
}
#card-terra .ai-box-header { color:#86efac; }
#card-terra .ai-badge { border-color:rgba(74,222,128,.5); }
#card-terra .ai-row-stop span,
#card-terra .ai-row-stop b { color:#ffd166 !important; text-shadow:0 0 7px rgba(255,209,102,.45); }
#card-terra .ai-row-perda span,
#card-terra .ai-row-perda em { color:#f8fafc !important; text-shadow:0 0 5px rgba(248,250,252,.3); }

/* O nome da estratégia e o badge interno repetem o cabeçalho externo. */
#card-win .ai-box-header,
#card-direcional .ai-box-header,
#card-terra .ai-box-header,
#card-aurora .ai-box-header { display:none; }

/* AURORA: céu de amanhecer, horizonte quente e brilho do nascer do sol. */
#card-aurora {
    border-color:rgba(251,146,60,.7);
    background:linear-gradient(180deg,rgba(25,23,68,.98) 0%,rgba(65,29,120,.94) 15%,rgba(134,38,112,.86) 34%,rgba(190,61,77,.78) 58%,rgba(234,113,26,.72) 82%,rgba(31,41,55,.98) 100%);
    box-shadow:0 12px 38px rgba(190,61,77,.32),inset 0 0 44px rgba(251,146,60,.14),inset 0 1px rgba(255,255,255,.18);
}
#card-aurora::before {
    opacity:.42;
    background-image:
        radial-gradient(circle at 50% 110%,rgba(255,250,205,1) 0 16%,rgba(255,214,72,.96) 17% 24%,rgba(251,146,60,.62) 27% 39%,transparent 52%),
        radial-gradient(ellipse at 20% 28%,rgba(129,140,248,.45),transparent 34%),
        radial-gradient(ellipse at 78% 38%,rgba(244,114,182,.4),transparent 36%),
        linear-gradient(180deg,rgba(15,23,42,.35),transparent 42%,rgba(251,146,60,.28) 75%,rgba(15,23,42,.6));
    filter:saturate(1.3);
}
#card-aurora::after {
    content:"";
    position:absolute; left:4%; right:4%; bottom:17%; height:2px; z-index:0; pointer-events:none;
    background:linear-gradient(90deg,transparent,rgba(255,237,170,.9) 28%,rgba(255,247,190,.98) 50%,rgba(255,237,170,.9) 72%,transparent);
    box-shadow:0 0 14px rgba(255,190,65,.9),0 -9px 26px rgba(251,146,60,.28);
}
#card-aurora .ai-suggestion-box {
    border-color:rgba(253,186,116,.7);
    background:linear-gradient(160deg,rgba(49,46,129,.46),rgba(157,42,91,.48) 48%,rgba(194,65,12,.42) 82%,rgba(15,23,42,.5));
    box-shadow:inset 0 0 26px rgba(251,146,60,.15),0 5px 18px rgba(0,0,0,.3);
}
#card-aurora .ai-box-header { color:#fed7aa; }
#card-aurora .ai-badge { border-color:rgba(253,186,116,.56); }
#card-aurora .ai-row-stop span,
#card-aurora .ai-row-stop b { color:#ffe08a !important; text-shadow:0 0 7px rgba(255,224,138,.5); }
#card-aurora .ai-row-perda span,
#card-aurora .ai-row-perda em { color:#fff7ed !important; text-shadow:0 0 5px rgba(255,247,237,.35); }
#card-win .ai-box-body,
#card-direcional .ai-box-body,
#card-terra .ai-box-body,
#card-aurora .ai-box-body,
#card-win .ai-row,
#card-direcional .ai-row,
#card-terra .ai-row,
#card-aurora .ai-row { border-top:0 !important; }
#card-win .ai-box-content,
#card-direcional .ai-box-content,
#card-terra .ai-box-content,
#card-aurora .ai-box-content { justify-content:flex-start; }
#card-win .ai-box-entrada,
#card-direcional .ai-box-entrada,
#card-terra .ai-box-entrada,
#card-aurora .ai-box-entrada { margin-top:0; margin-bottom:0; }
#card-win .ai-box-body,
#card-direcional .ai-box-body,
#card-terra .ai-box-body,
#card-aurora .ai-box-body { gap:0; margin-top:0; }
#card-win .ai-box-body .ai-row:first-child b,
#card-direcional .ai-box-body .ai-row:first-child b,
#card-terra .ai-box-body .ai-row:first-child b,
#card-aurora .ai-box-body .ai-row:first-child b {
    color:#f0c419 !important;
    text-shadow:0 0 7px rgba(240,196,25,.42);
}
.header-direction-badge.compra { color:#34d399; }
.header-direction-badge.venda { color:#f87171; }
.hold-preco-espera { display:flex; align-items:baseline; justify-content:flex-end; gap:12px; white-space:nowrap; }
.hold-distancia-header { font-family:'Montserrat',sans-serif; font-size:16px; line-height:1; font-weight:900; letter-spacing:-.25px; padding:5px 8px; border:1px solid rgba(246,211,101,.35); border-radius:8px; background:rgba(6,18,25,.55); }
.hold-distancia-header.espera-alta { color:#86efac; }
.hold-distancia-header.espera-queda { color:#fca5a5; }

.card-top { position: relative; z-index: 1; display: flex; align-items:stretch; gap:8px; min-height:115px; }
.card-top-hold { min-height:115px; }
.card-top-hold .info { width:100%; }
.thermometer-widget { display:flex; align-items:center; align-self:stretch; gap:8px; flex-shrink:0; margin-left:-14px; min-height:340px; }

.ticks { display:flex; flex-direction:column; justify-content:space-between; height:310px; font-size:9px; color:var(--txt2); margin-bottom:36px; width:34px; }
.tick { position: relative; padding: 0 4px; text-align: right; width: 32px; white-space: nowrap; }
.ticks-left { order:3; margin-left:4px; }
.ticks-left .tick { text-align:left; width:44px; font-size:14px; font-weight:900; color:#e2e8f0; text-shadow:0 0 6px rgba(226,232,240,.55); }
.ticks-left .tick::after { content: ''; position: absolute; left: -5px; right:auto; top:50%; width:6px; height:1px; background: var(--border); }
.thermo-glass { display: flex; flex-direction: column; align-items: center; position: relative; }
.thermo-stem { width:20px; height:310px; background:var(--thermo-bg-stem); border:2px solid var(--border); border-bottom:none; border-radius:12px 12px 0 0; display:flex; align-items:flex-end; padding:3px 3px 0; position:relative; z-index:2; }
.thermo-stem::after { content:""; position:absolute; inset:0; z-index:5; pointer-events:none; border:1px solid rgba(255,255,255,.28); border-radius:10px 10px 0 0; background:linear-gradient(135deg,rgba(255,255,255,.25),rgba(255,255,255,.06) 30%,rgba(255,255,255,.015) 58%,rgba(255,255,255,.14)); box-shadow:inset 2px 2px 8px rgba(255,255,255,.23),inset -3px -5px 10px rgba(0,0,0,.3),0 0 10px rgba(255,255,255,.12); backdrop-filter:blur(7px) saturate(145%); -webkit-backdrop-filter:blur(7px) saturate(145%); }
.thermo-range-line { position:absolute; left:-9px; right:-9px; height:20px; z-index:7; pointer-events:auto; border-radius:5px; opacity:0; transition:bottom .25s ease, opacity .25s ease; }
.thermo-range-top,.thermo-range-bottom { height:10px; }
.thermo-range-line span { position:absolute; right:calc(100% + 7px); left:auto; top:50%; transform:translateY(-50%); white-space:nowrap; font:900 9px/1.25 Montserrat,sans-serif; letter-spacing:.3px; opacity:1; transition:opacity .2s ease; text-align:right; }
.thermo-periodo { font-size:18px; line-height:.9; }
.thermo-range-line:hover span { opacity:1; }
.thermo-range-top { background:#ff5b5b; box-shadow:0 0 8px #ff5b5b,0 0 18px rgba(255,50,50,.95),0 0 30px rgba(255,50,50,.65); color:#ff8a8a; }
.thermo-range-bottom { background:#4ade80; box-shadow:0 0 8px #4ade80,0 0 18px rgba(34,197,94,.95),0 0 30px rgba(34,197,94,.6); color:#86efac; }
.thermo-range-5m { height:13px; opacity:0; left:-9px; right:-9px; z-index:6; }
.thermo-range-5m span { left:auto; right:calc(100% + 7px); text-align:right; font-size:9px; opacity:1; }
.thermo-range-top-5 { background:rgba(248,113,113,.72); box-shadow:0 0 6px rgba(248,113,113,.8),0 0 14px rgba(248,113,113,.65); color:#fca5a5; }
.thermo-range-bottom-5 { background:rgba(74,222,128,.72); box-shadow:0 0 6px rgba(74,222,128,.8),0 0 14px rgba(74,222,128,.65); color:#86efac; }
.thermo-range-5m.visivel { opacity:.72; }
.thermo-range-10m { height:16px; opacity:0; left:-9px; right:-9px; z-index:6; }
.thermo-range-10m span { left:calc(100% + 7px); right:auto; text-align:left; font-size:12px; opacity:1; }
.thermo-range-top-10 { background:rgba(248,113,113,.72); box-shadow:0 0 5px rgba(248,113,113,.8),0 0 12px rgba(248,113,113,.65); color:#fca5a5; }
.thermo-range-bottom-10 { background:rgba(74,222,128,.72); box-shadow:0 0 5px rgba(74,222,128,.8),0 0 12px rgba(74,222,128,.65); color:#86efac; }
.thermo-range-10m.visivel { opacity:.72; }
.thermo-range-line.perto-preco { animation-duration:.8s; animation-timing-function:ease-in-out; animation-iteration-count:infinite; }
.thermo-range-top.perto-preco { animation-name:thermoTopRedPulse; }
.thermo-range-bottom.perto-preco { animation-name:thermoBottomGreenPulse; }
@keyframes thermoTopRedPulse { 0%,100% { filter:brightness(1); box-shadow:0 0 8px #ff5b5b,0 0 18px rgba(255,50,50,.95); } 50% { filter:brightness(1.8); box-shadow:0 0 14px #ff5b5b,0 0 30px #ff3232,0 0 44px rgba(255,50,50,.9); } }
@keyframes thermoBottomGreenPulse { 0%,100% { filter:brightness(1); box-shadow:0 0 8px #4ade80,0 0 18px rgba(34,197,94,.95); } 50% { filter:brightness(1.8); box-shadow:0 0 14px #4ade80,0 0 30px #22c55e,0 0 44px rgba(34,197,94,.9); } }
.thermo-range-line.visivel { opacity:1; }
.thermo-current-price-line { position:absolute; left:-6px; right:-6px; height:5px; z-index:8; pointer-events:none; border-radius:3px; opacity:0; background:#38bdf8; box-shadow:0 0 5px #38bdf8,0 0 12px rgba(56,189,248,.95); transition:bottom .25s ease,opacity .2s ease; }
.thermo-current-price-line span { position:absolute; left:50%; right:auto; top:50%; transform:translate(-50%,-50%); white-space:nowrap; text-align:center; color:#7dd3fc; font:900 11px/1 Montserrat,sans-serif; padding:4px 5px; border:1px solid rgba(125,211,252,.75); border-radius:6px; background:rgba(5,20,35,.9); box-shadow:0 0 8px rgba(56,189,248,.8), inset 0 1px rgba(255,255,255,.18); }
.thermo-current-price-line.visivel { opacity:1; }

/* O termômetro único foi movido para fora do card SCALP. Mantém a mesma
   leitura e o mesmo preenchimento pelo RSI, independentemente do contêiner. */
#card-win .stem-fill,
.thermometer-external #stem-fill-win {
    background-image:linear-gradient(to top,
        #ff2a2a 0%,
        #e31b23 20%,
        #6f1018 45%,
        #ff7a00 60%,
        #ffd400 78%,
        #fff200 100%) !important;
    background-size:100% 310px !important;
    background-position:center bottom !important;
    background-repeat:no-repeat !important;
    box-shadow:0 0 8px var(--thermo-glow, rgba(255,230,0,.9)), 0 0 18px color-mix(in srgb, var(--thermo-glow, #ffe600) 65%, transparent);
    filter:saturate(1.2) brightness(1.08);
}
.thermometer-external .thermo-stem::after {
    content:""; position:absolute; inset:3px 0 0; z-index:4; pointer-events:none;
    background:repeating-linear-gradient(to top, transparent 0 calc(10% - 1px), rgba(255,210,210,.5) calc(10% - 1px) 10%);
    border-radius:9px 9px 0 0;
}
.thermometer-external #stem-fill-win {
    background-size:100% 770px !important;
    background-position:center bottom !important;
    box-shadow:0 0 10px rgba(255,42,42,.9),0 0 24px rgba(255,122,0,.76),0 0 40px rgba(255,242,0,.58) !important;
    filter:saturate(1.35) brightness(1.12) !important;
}
#card-direcional .stem-fill {
    background-image:linear-gradient(to top,
        #08783f 0%,
        #159957 36%,
        #f8fafc 50%,
        #fff7cf 62%,
        #d4af37 82%,
        #8b6508 100%) !important;
    background-size:100% 310px !important;
    background-position:center bottom !important;
    background-repeat:no-repeat !important;
    box-shadow:0 0 8px var(--thermo-glow, rgba(21,153,87,.9)), 0 0 18px color-mix(in srgb, var(--thermo-glow, #d4af37) 65%, transparent);
    filter:saturate(1.25) brightness(1.08);
}
#card-win .bulb-fill,
.thermometer-external #bulb-fill-win { background:linear-gradient(to top,#ff2a2a 0%,#f32328 55%,#e31b23 100%) !important; box-shadow:0 0 14px rgba(255,42,42,1),0 0 32px rgba(227,27,35,.88),0 0 48px rgba(166,61,0,.42); }
#card-direcional .bulb-fill { background:#08783f !important; box-shadow:0 0 10px rgba(21,153,87,.95), 0 0 24px rgba(21,153,87,.6); }

.vwap-marker-thermo { 
    position: absolute; left: -5px; right: -5px; height: 4px; 
    background-image: linear-gradient(to right, #ffffff 50%, rgba(255,255,255,0) 0%) !important;
    background-position: bottom; background-size: 6px 4px; background-repeat: repeat-x;
    background-color: transparent !important;
    border: none !important; border-radius: 0; z-index: 10; 
    filter: drop-shadow(0 0 5px rgba(255,255,255,0.9)); 
    transition: bottom 0.5s ease; bottom: 50%; box-shadow: none !important; 
}
.preco-justo-badge { position:absolute; left:50%; top:auto; bottom:calc(100% + 6px); transform:translateX(-50%) scale(.55); transform-origin:center bottom; display:flex; flex-direction:column; align-items:center; gap:3px; min-width:94px; padding:8px 10px; border:1px solid rgba(250,204,21,.68); border-radius:9px; background:linear-gradient(135deg,rgba(8,26,38,.94),rgba(14,48,54,.88)); box-shadow:0 0 12px rgba(250,204,21,.22),inset 0 1px 0 rgba(255,255,255,.1); white-space:nowrap; }
.preco-justo-rotulo { color:#f8fafc; font:900 20px/1 'Montserrat',sans-serif; letter-spacing:.7px; text-shadow:0 1px 3px #000; }
.preco-justo-valor { color:#e2e8f0; font:900 13px/1 'Montserrat',sans-serif; letter-spacing:.2px; text-shadow:0 1px 3px #000; font-variant-numeric:tabular-nums; }
.vwap-marker-thermo[data-relacao-justo="abaixo-justo"] { filter:drop-shadow(0 0 5px rgba(74,222,128,.95)); }
.vwap-marker-thermo[data-relacao-justo="abaixo-justo"] .preco-justo-rotulo { color:#86efac; }
.vwap-marker-thermo[data-relacao-justo="abaixo-justo"] .preco-justo-badge { border-color:rgba(74,222,128,.72); box-shadow:0 0 14px rgba(74,222,128,.25),inset 0 1px 0 rgba(255,255,255,.1); }
.vwap-marker-thermo[data-relacao-justo="acima-justo"] { filter:drop-shadow(0 0 5px rgba(251,191,36,.95)); }
.vwap-marker-thermo[data-relacao-justo="acima-justo"] .preco-justo-rotulo { color:#fcd34d; }
.vwap-marker-thermo[data-relacao-justo="acima-justo"] .preco-justo-badge { border-color:rgba(251,191,36,.76); }
.vwap-marker-thermo[data-relacao-justo="no-justo"] .preco-justo-rotulo { color:#e2e8f0; }

.thermo-bulb { width:42px; height:42px; background:var(--thermo-bg-stem); border:2px solid var(--border); border-radius:50%; margin-top:-9px; position:relative; z-index:1; padding:4px; box-sizing:border-box; }
.thermo-bulb::before { content:''; position:absolute; top:-2px; left:8px; width:22px; height:5px; background:var(--thermo-bg-stem); z-index:5; }
.thermo-bulb::after { content:''; position:absolute; inset:0; z-index:6; pointer-events:none; border-radius:50%; background:linear-gradient(135deg,rgba(255,255,255,.24),rgba(255,255,255,.06) 34%,rgba(255,255,255,.015) 62%,rgba(255,255,255,.16)); border:1px solid rgba(255,255,255,.28); box-shadow:inset 2px 2px 8px rgba(255,255,255,.2),inset -3px -5px 10px rgba(0,0,0,.28); backdrop-filter:blur(5px) saturate(145%); -webkit-backdrop-filter:blur(5px) saturate(145%); }
.thermometer-external .thermo-bulb { width:168px; height:168px; margin-top:-38px; padding:14px; z-index:2; }
.thermometer-external .thermo-bulb::before { left:41px; width:78px; height:16px; }
.stem-fill { width: 100%; border-radius: 10px 10px 0 0; background: var(--termo-gradiente-classico); z-index: 1; transition: height 0.3s ease; }
.bulb-fill { width: 100%; height: 100%; border-radius: 50%; z-index: 1; position: relative; }
/* O trilho permanece neutro; apenas o preenchimento acompanha o RSI. */
.thermometer-external .thermo-stem,
.thermometer-external .thermo-bulb,
.thermometer-external .thermo-bulb::before { background:var(--thermo-bg-stem) !important; }
.thermometer-external #stem-fill-win {
    background-image:linear-gradient(to top,
        #7f1d1d 0%,
        #8f1d1d 45%,
        #d97706 55%,
        #ffe600 100%) !important;
    background-size:100% 770px !important;
    background-position:center bottom !important;
    box-shadow:none !important;
}
.thermometer-external #bulb-fill-win {
    background:#7f1d1d !important;
    box-shadow:none !important;
}

/* =========================================
   SETA DE VIÉS RECENTE
========================================= */
.vies-recent-indicator {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 330px;
    margin: 4px 6px;
    background: rgba(15, 17, 23, 0.4);
    border: none;
    border-radius: 8px;
    box-shadow: none;
    flex-shrink: 0;
    padding: 6px 2px;
}

.vies-recent-arrow {
    font-family: 'Montserrat', sans-serif;
    position:relative;
    width:76px;
    height:298px;
    flex:0 0 298px;
    font-size:0;
    font-weight: 900;
    line-height: 1;
    filter:drop-shadow(0 0 7px currentColor) drop-shadow(0 4px 5px rgba(0,0,0,.75));
    top:20px;
}

.vies-recent-arrow[data-direction="alta"]::before,
.vies-recent-arrow[data-direction="queda"]::before {
    content:'';
    position:absolute;
    left:31px;
    width:14px;
    height:200px;
    border-radius:8px;
    background:currentColor;
    box-shadow:inset 3px 0 rgba(255,255,255,.18);
}

.vies-recent-arrow[data-direction="alta"]::before { top:48px; }
.vies-recent-arrow[data-direction="queda"]::before { top:6px; }

.vies-recent-arrow[data-direction="alta"]::after,
.vies-recent-arrow[data-direction="queda"]::after {
    content:'';
    position:absolute;
    left:4px;
    width:0;
    height:0;
    border-left:34px solid transparent;
    border-right:34px solid transparent;
}

.vies-recent-arrow[data-direction="alta"]::after {
    top:4px;
    border-bottom:44px solid currentColor;
}

.vies-recent-arrow[data-direction="queda"]::after {
    bottom:4px;
    border-top:44px solid currentColor;
}

.vies-recent-arrow[data-direction="neutro"] {
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:8rem;
    text-shadow:0 0 10px rgba(0,0,0,.8);
}

.vies-recent-text {
    font-size: 9px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 4px;
    text-align: center;
    color: var(--txt2);
}

.info { flex: 1; display: flex; flex-direction: column; justify-content: center; }
.info-side-wrapper { display: flex; align-items: stretch; gap: 4px; width: 100%; }
.info-text-col { position:absolute; left:-100px; bottom:18px; width:88px; z-index:4; display:flex; justify-content:center; pointer-events:none; }
.info .preco { font-size: 15px; font-weight: bold; margin-bottom: 4px; color: var(--txt1); }
.info .vies { font-size: 9.5px; font-weight: bold; padding: 2px 5px; border-radius: 4px; display: inline-block; width: fit-content;}

.vies.alta-forte { background-color: rgba(3, 105, 161, 0.2); color: var(--alta-clara); border: 1px solid var(--alta-escura); }
.vies.baixa-media { background-color: rgba(249, 115, 22, 0.2); color: var(--baixa-media); border: 1px solid var(--baixa-media); }
.vies.baixa-fraca { background-color: rgba(254, 215, 170, 0.1); color: var(--baixa-clara); border: 1px dashed var(--baixa-clara); }

.info-side-wrapper { height:100%; }
.ai-suggestions-stack { display:flex; flex-direction:row; gap:10px; flex:1; justify-content:space-between; align-self:stretch; height:330px; min-height:330px; max-width:none; width:100%; }
.ai-suggestion-box { border-radius:10px; padding:14px 13px; font-size:13px; display:flex; align-items:stretch; gap:6px; box-sizing:border-box; width:auto; position:relative; overflow:hidden; transition:all .3s ease; flex:1 1 0; min-width:0; min-height:0; margin-top:0 !important; }
.ai-suggestions-stack.scalp-only .ai-suggestion-box { width:100%; flex:1 1 100%; padding:14px 16px; border-radius:14px; }
.ai-suggestions-stack.scalp-only .ai-box-header { font-size:16px; min-height:42px; padding-right:84px; }
.ai-suggestions-stack.scalp-only [id^="dash-prob-macropulse-"] { display:inline-block; font-size:30px !important; line-height:1; vertical-align:middle; }
.ai-suggestions-stack.scalp-only .ai-box-entrada { font-size:12px; margin:7px 0; }
.ai-suggestions-stack.scalp-only .ai-box-entrada b { font-size:22px; }
.ai-suggestions-stack.scalp-only .ai-box-body { font-size:14px; gap:10px; }
.ai-suggestions-stack.scalp-only .ai-row b,
.ai-suggestions-stack.scalp-only .ai-row em { font-size:18px; }
.ai-suggestions-stack.scalp-only .btn-marcar-trade { width:48px; height:48px; right:8px; font-size:23px; }
.ai-suggestions-stack.scalp-only .btn-observar-trade { width:48px; height:48px; right:8px; font-size:21px; }

.ai-suggestion-box.risco-normal { background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.1); }
.ai-suggestion-box.risco-alta-prob { background: rgba(255, 215, 0, 0.15); border: 1px solid gold; box-shadow: 0px 0px 15px rgba(255, 215, 0, 0.6); }
.ai-suggestion-box.risco-alto { background: rgba(220, 38, 38, 0.15); border: 1px solid red; box-shadow: 0px 0px 15px rgba(220, 38, 38, 0.6); }
.ai-suggestion-box.risco-possibilidade { opacity:.40; border-style:dashed; border-color:#f59e0b; filter:saturate(.72); }
.ai-suggestion-box.risco-possibilidade:hover { opacity:.55; }
.ai-suggestion-box.risco-liberado { opacity:1; filter:none; }
.cooldown-timer-card { display:none; margin-left:7px; padding:2px 5px; border:1px solid rgba(251,191,36,.65); border-radius:5px; color:#fde047; background:rgba(120,53,15,.46); font-size:9px; font-weight:900; letter-spacing:.35px; white-space:nowrap; box-shadow:0 0 9px rgba(245,158,11,.25); }
.cooldown-timer-card.ativo { display:inline-block; }
.cooldown-timer-ativo { display:none; padding:4px 7px; border:1px solid rgba(251,191,36,.72); border-radius:7px; color:#fde047; background:rgba(120,53,15,.52); font-family:'Montserrat',sans-serif; font-size:10px; font-weight:900; line-height:1; letter-spacing:.4px; box-shadow:0 0 11px rgba(245,158,11,.3); }
.cooldown-timer-ativo.ativo { display:inline-block; }

.alerta-v5 { width:100%; max-width:1200px; margin:0 auto 12px 0; padding:7px 10px; border-radius:12px; border:1px solid rgba(148,163,184,.28); background:linear-gradient(135deg,rgba(15,23,42,.96),rgba(2,6,23,.96)); box-shadow:0 12px 30px rgba(0,0,0,.34); transition:.25s ease; box-sizing:border-box; }
.alerta-v5.forte { border-color:#facc15; box-shadow:0 0 28px rgba(250,204,21,.28),0 18px 45px rgba(0,0,0,.5); }
.alerta-v5.confirmado { border-color:#34d399; box-shadow:0 0 30px rgba(52,211,153,.32); }
.alerta-v5-topo { display:flex; justify-content:space-between; gap:9px; align-items:center; min-height:31px; }
.alerta-v5-topo > div:first-child { flex:0 1 auto; min-width:225px; }
.alerta-v5-kicker { display:block; color:#38bdf8; font-size:8px; font-weight:900; letter-spacing:1px; white-space:nowrap; }
.alerta-v5 h2 { margin:2px 0 0; font-size:15px; line-height:1.05; font-weight:900; color:#f8fafc; white-space:nowrap; }
.alerta-v5-acoes { display:flex; align-items:center; gap:5px; flex:0 0 auto; }
.btn-marcar-entrada-v5 { border:1px solid #facc15; background:linear-gradient(135deg,#713f12,#a16207); color:#fff7cc; border-radius:999px; padding:6px 11px; font-size:9px; font-weight:900; cursor:pointer; box-shadow:0 0 12px rgba(250,204,21,.18); }
.btn-marcar-entrada-v5:disabled { cursor:not-allowed; opacity:.38; filter:grayscale(1); box-shadow:none; }
.alerta-v5-niveis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; margin-top:6px; }
.alerta-v5-niveis span { background:rgba(255,255,255,.055); border:1px solid rgba(255,255,255,.08); border-radius:7px; padding:5px 7px; color:#94a3b8; font-size:7px; font-weight:800; }
.alerta-v5-niveis b { display:block; color:#fff; font-size:12px; line-height:1; margin-top:2px; }
.v5-confluencias { display:flex; flex-wrap:nowrap; gap:5px; margin:0 5px 0 auto; min-width:0; overflow:hidden; align-items:center; justify-content:flex-end; }
.v5-confluencias span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; padding:4px 6px; border-radius:999px; background:rgba(56,189,248,.12); border:1px solid rgba(56,189,248,.32); color:#bae6fd; font-size:8px; font-weight:800; }
.v5-confluencias span.falha { background:rgba(248,113,113,.1); border-color:rgba(248,113,113,.35); color:#fecaca; }
.alerta-v5-nota { margin:10px 0 0; color:#64748b; font-size:9px; }
@media (max-width:900px) { .alerta-v5-niveis { grid-template-columns:repeat(2,minmax(0,1fr)); } .alerta-v5-topo { align-items:flex-start; flex-direction:column; } }

.ai-box-content { flex:1; display:flex; flex-direction:column; justify-content:space-between; min-height:0; min-width:0; padding-right:43px; }
.ai-box-header { font-size:14px; font-weight:900; color:var(--link); text-transform:uppercase; margin-bottom:5px; display:flex; align-items:flex-start; border-bottom:1px dashed rgba(255,255,255,.15); padding:0 82px 5px 0; min-height:34px; }
.ai-box-entrada { font-size:11px; font-weight:800; margin-bottom:5px; display:flex; justify-content:space-between; align-items:center; }
.ai-box-entrada b { font-size:17px; font-weight:900; letter-spacing:.2px; }
.txt-compra { color:#34d399 !important; font-weight:900 !important; }
.txt-venda { color:#ff4d4f !important; font-weight:900 !important; }

.ai-box-body { font-size:11px; color:var(--txt2); display:flex; flex-direction:column; gap:4px; line-height:1.25; }
.ai-row { display:flex; justify-content:space-between; align-items:center; gap:8px; }
.ai-box-body, .ai-row span { font-weight:900; }
.ai-row-stop, .ai-row-stop * { color:#ff3038 !important; font-weight:900 !important; }
.ai-row-perda, .ai-row-perda * { color:#ff8a80 !important; font-weight:900 !important; }
.ai-row b, .ai-row em { font-size:16px; font-weight:900; font-style:normal; white-space:nowrap; }
.ai-box-entrada b.txt-venda { font-size:13px; }
[id^="val-perda-"], [id^="val-lucro-"] { font-size:12px; }
.ai-badge { font-weight:900; padding:2px 6px; border-radius:4px; font-size:10px; letter-spacing:.5px; }
.ai-suggestion-box .ai-badge { position:absolute; top:14px; right:12px; padding:3px 7px; white-space:nowrap; text-align:center; }
.ai-suggestion-box .btn-marcar-trade { position:absolute; top:calc(50% + 30px); right:8px; width:36px; height:36px; margin:0; padding:0; display:flex; align-items:center; justify-content:center; border-radius:50%; font-size:18px; line-height:1; letter-spacing:0; transform:translateY(-50%); z-index:5; }
.ai-suggestion-box .btn-marcar-trade:hover { transform:translateY(-50%) scale(1.07); }
.ai-suggestion-box .btn-observar-trade { position:absolute; top:calc(50% - 30px); right:8px; width:36px; height:36px; margin:0; padding:0; display:flex; align-items:center; justify-content:center; border:1px solid rgba(125,211,252,.65); border-radius:50%; color:#e0f2fe; background:rgba(14,116,144,.32); box-shadow:0 0 14px rgba(56,189,248,.18); font-size:16px; line-height:1; cursor:pointer; z-index:5; transition:.18s ease; transform:translateY(-50%); }
.ai-suggestion-box .btn-observar-trade:hover { transform:translateY(-50%) scale(1.07); border-color:#7dd3fc; background:rgba(14,116,144,.52); }
.ai-suggestion-box .btn-observar-trade.ativo { color:#04131c; border-color:#67e8f9; background:#67e8f9; box-shadow:0 0 22px rgba(103,232,249,.72); animation:pulse-observar-trade 1.15s ease-in-out infinite; }
.ai-suggestion-box .btn-observar-trade:disabled,.ai-suggestion-box .btn-marcar-trade:disabled { cursor:not-allowed; opacity:.24; filter:grayscale(1); box-shadow:none; pointer-events:none; }
@keyframes pulse-observar-trade { 50% { transform:scale(1.09); filter:brightness(1.15); } }
.trade-observado-badge { padding:7px 8px; border:1px solid rgba(103,232,249,.52); border-radius:8px; color:#a5f3fc; background:rgba(8,145,178,.14); font-size:8px; font-weight:950; letter-spacing:.35px; text-align:center; }
.popup-direcao-manual { position:fixed; z-index:2147483647; width:180px; padding:9px; border:1px solid rgba(148,163,184,.45); border-radius:10px; background:rgba(9,14,25,.98); box-shadow:0 12px 32px rgba(0,0,0,.7); backdrop-filter:blur(12px); }
.popup-direcao-titulo { margin-bottom:7px; color:#cbd5e1; font-size:9px; font-weight:900; letter-spacing:.6px; text-align:center; }
.popup-direcao-acoes { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
.popup-direcao-acoes button { height:31px; border-radius:7px; font-size:9px; font-weight:900; cursor:pointer; }
.popup-direcao-acoes .direcao-compra { color:#34d399; border:1px solid #10b981; background:rgba(16,185,129,.16); }
.popup-direcao-acoes .direcao-venda { color:#f87171; border:1px solid #ef4444; background:rgba(239,68,68,.16); }
.popup-mega-manual { width:220px; }
.popup-mega-opcoes { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
.popup-mega-opcoes button { height:34px; border-radius:7px; font-size:9px; font-weight:900; cursor:pointer; }
.popup-mega-opcoes .mega-compra { color:#34d399; border:1px solid #10b981; background:rgba(16,185,129,.16); }
.popup-mega-opcoes .mega-venda { color:#f87171; border:1px solid #ef4444; background:rgba(239,68,68,.16); }
.ai-badge.compra { background: rgba(16, 185, 129, 0.25); color: #34d399; border: 1px solid #10b981; }
.ai-badge.venda { background: rgba(239, 68, 68, 0.25); color: #f87171; border: 1px solid #ef4444; }
.ai-badge.aguarde { background: rgba(255, 255, 255, 0.1); color: var(--txt2); border: 1px solid var(--txt2); }

/* =========================================
   GRÁFICO CHART.JS + RSI
========================================= */
.rsi-box { 
    position: relative; 
    z-index: 1; 
    padding: 10px 10px 15px 10px;
    background: var(--bg);
    border-radius: 0 0 14px 14px;
    margin-top: 10px;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.rsi-box-compartilhado {
    width:100%;
    min-width:0;
    height:282px;
    min-height:282px;
    max-width:none;
    margin:0;
    box-sizing:border-box;
    background:linear-gradient(145deg,#071426 0%,#081a30 52%,#06111f 100%);
    border:1px solid rgba(56,189,248,.58);
    border-radius:14px;
    box-shadow:0 0 9px rgba(56,189,248,.12),0 10px 30px rgba(0,0,0,.4),inset 0 1px 0 rgba(125,211,252,.06);
    backdrop-filter:blur(12px);
}
.rsi-box-compartilhado .rsi-chart-wrap { position:relative; width:100%; min-width:0; height:200px; min-height:200px; overflow:visible !important; }
.rsi-box-compartilhado,
.preco-3dias-box { position:relative; overflow:hidden; }
.rsi-box-compartilhado { overflow:visible; }
.rsi-box-compartilhado::before,
.preco-3dias-box::before { content:""; position:absolute; inset:0; z-index:0; pointer-events:none; border-radius:inherit; background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.025) 38%,rgba(0,0,0,.16) 100%); backdrop-filter:blur(3px) saturate(1.25); -webkit-backdrop-filter:blur(3px) saturate(1.25); border:1px solid rgba(255,255,255,.14); box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 -12px 28px rgba(0,0,0,.12); }
.rsi-box-compartilhado > *, .preco-3dias-box > * { position:relative; z-index:1; }
.rsi-composite-layout { display:grid; grid-template-columns:minmax(400px,1fr) 150px; gap:10px; align-items:stretch; width:100%; min-width:0; }
/* A seta central foi removida: o RSI ocupa integralmente a largura liberada. */
.rsi-composite-layout > .vies-rsi-side { display:none !important; }
.rsi-box-compartilhado canvas { display:block !important; width:100% !important; height:200px !important; visibility:visible !important; opacity:1 !important; }
.rsi-info-box { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; padding:10px; border:1px solid rgba(56,189,248,.42); border-radius:12px; background:linear-gradient(145deg,rgba(7,20,38,.92),rgba(8,26,48,.72)); box-shadow:0 0 14px rgba(56,189,248,.14), inset 0 1px rgba(255,255,255,.08); }
.rsi-info-title { color:#94a3b8; font-size:8px; font-weight:900; letter-spacing:.8px; }
.rsi-info-box span { font-size:11px; line-height:1.1; white-space:nowrap; text-shadow:0 1px 3px #000,0 0 6px currentColor; }
.rsi-info-box .valor-rsi { display:block; width:100%; color:#fff; font-size:68px; line-height:1; font-weight:950; text-align:center; text-shadow:0 2px 5px #000,0 0 12px rgba(255,255,255,.8); }
.rsi-info-box .valor-preco { color:#facc15; font-style:italic; font-weight:600; }
.rsi-info-box .valor-vwap { color:#f97316; font-weight:950; }
.rsi-info-box i { font-style:normal; font-size:15px; margin-left:3px; }
.rsi-info-box .seta-direcao-historica,
.rsi-info-box .seta-direcao-historica.baixa { height:auto; margin:0; color:#fff; font-size:92px !important; line-height:.8 !important; text-shadow:0 2px 6px #000,0 0 14px rgba(255,255,255,.78); }
.rsi-scrollbar { position:absolute; z-index:20; left:6px; right:6px; bottom:-13px; display:block; width:calc(100% - 12px); margin:0; height:14px; accent-color:#facc15; cursor:pointer; pointer-events:auto; }

/* Gráfico separado de candles M1: o RSI fica limpo no painel acima. */
.candles-composite-layout { display:grid; grid-template-columns:minmax(400px,1fr) 150px; gap:10px; align-items:stretch; width:100%; min-width:0; margin-top:10px; }
.candles-1m-box { position:relative; height:220px; min-height:220px; padding:10px; box-sizing:border-box; overflow:visible; border:1px solid rgba(74,222,128,.72); border-radius:14px; background:linear-gradient(145deg,rgba(5,46,32,.94),rgba(8,74,54,.72) 52%,rgba(4,30,23,.96)); box-shadow:0 0 14px rgba(74,222,128,.16),0 10px 30px rgba(0,0,0,.4),inset 0 1px rgba(187,247,208,.12); backdrop-filter:blur(12px); }
.candles-1m-box::before { content:""; position:absolute; inset:0; z-index:0; pointer-events:none; border-radius:inherit; background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(255,255,255,.02) 42%,rgba(0,0,0,.18)); border:1px solid rgba(187,247,208,.12); }
.candles-1m-box > * { position:relative; z-index:1; }
.candles-1m-box .panel-collapse-toggle { border-color:rgba(110,231,183,.65); color:#bbf7d0; }
.candles-focus-toggle { position:absolute; top:-1px; right:48px; z-index:8; width:30px; height:30px; border:1px solid rgba(110,231,183,.65); border-radius:8px; background:rgba(5,46,32,.78); color:#bbf7d0; font:900 25px/26px Montserrat,sans-serif; cursor:pointer; }
.candles-focus-toggle:hover { background:rgba(74,222,128,.24); color:#fff; }
.candles-1m-title { position:absolute; top:9px; left:48px; color:#bbf7d0; font:900 13px/1 Montserrat,sans-serif; letter-spacing:.75px; text-transform:uppercase; text-shadow:0 0 8px rgba(74,222,128,.38); }
.candles-period-selector { position:absolute; top:5px; left:250px; z-index:8; display:flex; align-items:center; gap:4px; }
.candles-period-selector button { min-width:30px; height:23px; padding:0 5px; border:1px solid rgba(110,231,183,.32); border-radius:6px; background:rgba(3,29,20,.58); color:#86efac; font:900 9px/1 Montserrat,sans-serif; cursor:pointer; transition:.15s ease; }
.candles-period-selector button:hover { border-color:#86efac; color:#fff; background:rgba(34,197,94,.22); }
.candles-period-selector button.active { border-color:#86efac; color:#fff; background:rgba(22,163,74,.48); box-shadow:0 0 9px rgba(74,222,128,.45); }
.candles-1m-chart-wrap { position:relative; height:170px; min-height:170px; margin-top:20px; }
.candles-1m-chart-wrap canvas { display:block !important; width:100% !important; height:170px !important; }
.candles-1m-scrollbar { position:absolute; z-index:20; left:6px; right:6px; bottom:-13px; display:block; width:calc(100% - 12px); margin:0; height:14px; accent-color:#facc15; cursor:pointer; pointer-events:auto; }
.candles-1m-info-box { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; padding:10px; border:1px solid rgba(74,222,128,.52); border-radius:12px; background:linear-gradient(145deg,rgba(5,46,32,.92),rgba(8,74,54,.68)); box-shadow:0 0 14px rgba(74,222,128,.14),inset 0 1px rgba(187,247,208,.08); }
.candles-1m-info-box span { font-size:14px; line-height:1.1; white-space:nowrap; text-shadow:0 1px 3px #000,0 0 6px currentColor; }
.candles-1m-info-box .valor-preco { color:#facc15; font-style:italic; font-weight:700; }
.candles-1m-info-box .valor-vwap { color:#fb923c; font-weight:950; }
.candles-1m-info-box i { font-style:normal; font-size:17px; margin-left:3px; }
.candles-1m-box.data-panel-collapsed { height:42px !important; min-height:42px !important; padding:5px 10px; overflow:hidden; }
.candles-1m-box.data-panel-collapsed .candles-1m-chart-wrap { display:none; }
.candles-1m-box.data-panel-collapsed .candles-1m-title { top:14px; }
.candles-1m-box.data-panel-collapsed .candles-period-selector { display:none; }
.candles-1m-box.candles-focus-open { position:fixed !important; top:5vh; left:10vw; z-index:991; width:80vw !important; height:90vh !important; min-height:90vh !important; max-width:none !important; margin:0 !important; padding:22px !important; overflow:visible; border-color:rgba(110,231,183,.92); box-shadow:0 0 0 1px rgba(255,255,255,.12),0 24px 90px rgba(0,0,0,.8),0 0 46px rgba(74,222,128,.3); animation:candles-popout .2s ease-out; }
.candles-1m-box.candles-focus-open .candles-1m-chart-wrap,
.candles-1m-box.candles-focus-open canvas { height:calc(90vh - 82px) !important; min-height:calc(90vh - 82px) !important; }
.candles-1m-box.candles-focus-open .panel-collapse-toggle,
.candles-1m-box.candles-focus-open .candles-focus-toggle { top:-10px; }
.candles-1m-box.candles-focus-open .candles-1m-title { top:12px; left:60px; font-size:16px; }
.candles-1m-box.candles-focus-open .candles-period-selector { top:10px; left:330px; }
.candles-1m-box.candles-focus-open .candles-period-selector button { min-width:38px; height:28px; font-size:11px; }
.candles-1m-box.candles-focus-open .candles-1m-chart-wrap { margin-top:34px; }
@keyframes candles-popout { from { opacity:0; transform:scale(.92) translateY(14px); } to { opacity:1; transform:scale(1) translateY(0); } }
.candles-composite-layout:has(.candles-1m-box.data-panel-collapsed) { grid-template-columns:minmax(0,1fr); min-height:42px; height:42px; }
.candles-composite-layout:has(.candles-1m-box.data-panel-collapsed) .candles-1m-info-box { display:none; }
@media (max-width:700px) { .candles-composite-layout { grid-template-columns:1fr; } }
.grafico-container,.preco-3dias-chart-wrap { position:relative; }
.grafico-valores-direita { position:absolute; top:8px; right:5px; z-index:4; display:flex; flex-direction:column; align-items:flex-end; gap:3px; pointer-events:none; text-shadow:0 1px 3px #000,0 0 6px currentColor; }
.grafico-valores-direita span { font-size:9px; line-height:1.1; white-space:nowrap; }
.grafico-valores-direita .valor-rsi { color:#fff; font-weight:800; }
.grafico-valores-direita .valor-preco { color:#facc15; font-style:italic; font-weight:600; }
.grafico-valores-direita .valor-vwap { color:#f97316; font-weight:950; }
.grafico-valores-direita i { font-style:normal; font-size:13px; margin-left:3px; }
.grafico-valores-direita .valor-rsi i { color:#fff; }
.grafico-valores-direita .valor-preco i { color:#facc15; }
.grafico-valores-direita .valor-vwap i { color:#f97316; }
.seta-direcao-historica { margin-top:7px; height:30px; font-size:24px !important; line-height:1 !important; font-weight:950; color:#facc15; text-shadow:0 0 12px currentColor,0 2px 4px #000; transform-origin:top center; }
.seta-direcao-historica.baixa { color:#f87171; }
@media (max-width:700px) { .rsi-composite-layout { grid-template-columns:1fr; } .rsi-info-box { flex-direction:row; flex-wrap:wrap; } }
.preco-3dias-box { margin-top:30px; padding:10px 12px; border:1px solid rgba(249,115,22,.42); border-radius:12px; background:linear-gradient(180deg,rgba(124,45,18,.22),rgba(15,23,42,.68)); box-shadow:0 0 18px rgba(249,115,22,.16), inset 0 1px rgba(255,255,255,.07); }
.preco-3dias-header { color:#fb923c; font-size:11px; font-weight:900; letter-spacing:1px; margin:0 42px 5px 0; display:flex; align-items:center; gap:5px; }
#preco-medio-3dias-colapsado { color:#fff; font-size:12px; letter-spacing:.4px; }
.preco-3dias-box.data-panel-collapsed .preco-3dias-header { margin:0 42px 0 0; }
.preco-3dias-chart-wrap { position:relative; height:190px; }
.preco-3dias-layout { display:grid; grid-template-columns:minmax(0,1fr) 145px; gap:10px; align-items:stretch; }
.preco-3dias-info-box { min-width:0; }
.mini-termometro-3dias { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; padding:8px; border:1px solid rgba(249,115,22,.35); border-radius:9px; background:rgba(67,20,7,.3); color:#fed7aa; text-align:center; }
.mini-termometro-titulo { display:none; }
.mini-termometro-trilho { position:relative; width:12px; height:135px; margin:8px 0 17px; border-radius:6px; background:rgba(67,20,7,.75); border:1px solid rgba(255,237,213,.35); box-shadow:inset 0 0 7px rgba(0,0,0,.65), 0 0 8px rgba(249,115,22,.22); }
.mini-termometro-trilho::after { content:""; position:absolute; width:32px; height:32px; left:50%; bottom:-22px; transform:translateX(-50%); border-radius:50%; background:#f97316; border:1px solid #fed7aa; box-shadow:0 0 12px rgba(249,115,22,.95), inset 0 0 5px rgba(255,255,255,.35); }
.mini-termometro-trilho i { position:absolute; left:1px; right:1px; bottom:1px; height:50%; border-radius:5px; background:#f97316; box-shadow:0 0 8px rgba(249,115,22,.9); z-index:1; }
.mini-termometro-trilho b { position:absolute; left:-7px; right:-7px; top:50%; height:3px; border-radius:3px; background:#fff7ed; box-shadow:0 0 8px #fff; z-index:2; }
.mini-termometro-3dias strong { color:#fff; font-size:14px; font-weight:900; letter-spacing:.3px; }
@media (max-width:700px) { .preco-3dias-layout { grid-template-columns:1fr; }.mini-termometro-3dias { flex-direction:row; flex-wrap:wrap; }.mini-termometro-trilho { height:70px; } }
#card-win .ai-suggestion-box,
#card-direcional .ai-suggestion-box {
    position:relative;
    overflow:hidden;
    border-color:rgba(240,194,55,.56);
    background:linear-gradient(145deg,rgba(3,98,55,.62),rgba(18,69,43,.48) 55%,rgba(111,77,6,.48));
    box-shadow:inset 0 0 24px rgba(34,197,94,.08),0 5px 18px rgba(0,0,0,.24);
}
#card-win .ai-suggestion-box::before,
#card-direcional .ai-suggestion-box::before {
    content:"";
    position:absolute;
    inset:0;
    border-radius:inherit;
    box-sizing:border-box;
    z-index:0;
    pointer-events:none;
    background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.025) 38%,rgba(0,0,0,.16) 100%);
    backdrop-filter:blur(3px) saturate(1.25);
    -webkit-backdrop-filter:blur(3px) saturate(1.25);
    border:1px solid rgba(255,255,255,.14);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 -12px 28px rgba(0,0,0,.12);
}
#card-win .ai-suggestion-box::before { opacity:.8; }
#card-win .ai-suggestion-box > *,
#card-direcional .ai-suggestion-box > * { position:relative; z-index:1; }
#card-direcional .ai-box-content { justify-content:flex-start; transform:translateY(-12px); }
#card-direcional .ai-box-entrada { margin-top:5px; }
#card-direcional .ai-box-body { margin-top:4px; }
#card-win .ai-box-content,
#card-direcional .ai-box-content {
    padding-right:88px;
    box-sizing:border-box;
}
#card-win .ai-box-content { transform:translateY(-12px); }
#card-win .ai-suggestions-stack,
#card-direcional .ai-suggestions-stack {
    height:172px;
    min-height:172px;
}
#card-terra .ai-suggestions-stack,
#card-aurora .ai-suggestions-stack {
    height:172px;
    min-height:172px;
}
#card-win .ai-box-entrada,
#card-win .ai-row,
#card-direcional .ai-box-entrada,
#card-direcional .ai-row {
    padding-right:0;
}
#card-win .ai-suggestion-box .btn-observar-trade,
#card-direcional .ai-suggestion-box .btn-observar-trade {
    top:calc(50% - 30px);
    right:8px;
    transform:translateY(-50%);
}
#card-win .ai-suggestion-box .btn-marcar-trade,
#card-direcional .ai-suggestion-box .btn-marcar-trade {
    top:calc(50% + 30px);
    right:8px;
    transform:translateY(-50%);
}
#card-win .ai-suggestion-box .btn-observar-trade:hover,
#card-win .ai-suggestion-box .btn-marcar-trade:hover,
#card-direcional .ai-suggestion-box .btn-observar-trade:hover,
#card-direcional .ai-suggestion-box .btn-marcar-trade:hover {
    transform:translateY(-50%) scale(1.07);
}

.rsi-header { 
    display: flex; 
    justify-content: center; 
    align-items: baseline; 
    margin-bottom: 15px; 
}

.rsi-title-center { 
    font-size: 11px; 
    color: #facc15; 
    font-weight: 900; 
    text-transform: uppercase; 
    letter-spacing: 0.5px; 
}

.rsi-chart-wrap { 
    position: relative; 
    height: 140px; 
    margin: 0; 
    background: transparent; 
    overflow: hidden; 
    border-left: 1px solid rgba(255, 255, 255, 0.05);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.rsi-line { position: absolute; left: 0; right: 0; height: 0; z-index: 1; opacity: 0.8; }
.rsi-line-75 { border-top: 1px dashed rgba(240, 196, 25, 0.8); top: 25%; }
.rsi-line-60 { border-top: 1px dashed rgba(255, 255, 255, 0.15); top: 40%; }
.rsi-line-50 { border-top: 1px solid rgba(255, 255, 255, 0.3); top: 50%; }
.rsi-line-40 { border-top: 1px dashed rgba(255, 255, 255, 0.15); top: 60%; }
.rsi-line-25 { border-top: 1px dashed rgba(240, 196, 25, 0.8); top: 75%; }

.grafico-container { position: absolute !important; top: 0; left: 0; right: 0; bottom: 0; height: 100% !important; width: 100% !important; z-index: 2; background: transparent; }

/* =========================================
   TRADINGVIEW WIDGETS & TICKERS
========================================= */
.quotes-panel { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; padding-bottom: 12px; }
.widget-wrapper { display: flex; flex-direction: column; border-radius: 12px; overflow: hidden; transition: all 0.3s ease; }
.widget-wrapper:hover { transform: scale(1.05); filter: brightness(1.10); z-index: 20; }
.widget-wrapper.widget-ibov-destaque {
    grid-column: 1 / -1;
    width: 1510px;
    max-width: 100%;
    justify-self: center;
    transform-origin: center center;
}
.widget-wrapper.widget-ibov-destaque:hover {
    position: relative;
    z-index: 100;
    transform: scale(1.03);
}

.cheat-sheet.group-brasil { background: linear-gradient(to bottom, rgba(74, 222, 128, 0.8) 0%, rgba(74, 222, 128, 0.45) 15%, rgba(74, 222, 128, 0.15) 33%, var(--bg) 50%, var(--bg) 100%); }
.cheat-sheet.group-dolar { background: linear-gradient(to bottom, rgba(56, 189, 248, 0.8) 0%, rgba(56, 189, 248, 0.45) 15%, rgba(56, 189, 248, 0.15) 33%, var(--bg) 50%, var(--bg) 100%); }
.cheat-sheet { text-align: center; font-size: 22px; color: var(--txt2); padding: 6px 8px; line-height: 1.1; display: flex; flex-direction: column; justify-content: center; align-items: center; border-top-left-radius: 12px; border-top-right-radius: 12px; }
.cs-row { display: flex; justify-content: center; gap: 10px; white-space: nowrap; margin: 1px 0; }
.arrow-up { color: #00FF66; font-weight: 900; font-size: 26px; }
.arrow-down { color: #FF4D4D; font-weight: 900; font-size: 26px; }

.tv-widget-box { background: var(--bg); border-bottom-left-radius: 12px; border-bottom-right-radius: 12px; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5); overflow: hidden; display: flex; align-items: center; justify-content: center; height: 160px; position: relative; }
.widget-wrapper.widget-ibov-destaque .tv-widget-box { height: 420px; }
.group-brasil-block { border: 0.7px solid #4ade80; box-shadow: 0 0 15px rgba(74, 222, 128, 0.3), inset 0 4px 10px rgba(74, 222, 128, 0.15); }
.group-brasil-block.ativo-positivo { border-color:#facc15; box-shadow:0 0 22px rgba(250,204,21,.78), inset 0 4px 12px rgba(250,204,21,.24); }
.group-brasil-block.ativo-negativo { border-color:#ef4444; box-shadow:0 0 22px rgba(239,68,68,.78), inset 0 4px 12px rgba(239,68,68,.24); }
.group-brasil-block.ativo-neutro { border-color:#4ade80; box-shadow:0 0 15px rgba(74,222,128,.3), inset 0 4px 10px rgba(74,222,128,.15); }
.group-brasil-block.tema-verde-claro { border-color:#86efac; box-shadow:0 0 22px rgba(134,239,172,.78), inset 0 4px 12px rgba(134,239,172,.28); }
.group-brasil-block.tema-amarelo-dourado { border-color:#facc15; box-shadow:0 0 25px rgba(250,204,21,.9), inset 0 4px 14px rgba(250,204,21,.3); }
.group-brasil-block.tema-vermelho { border-color:#ef4444; box-shadow:0 0 24px rgba(239,68,68,.86), inset 0 4px 14px rgba(239,68,68,.3); }
.group-brasil-block.tema-vermelho-claro { border-color:#f87171; box-shadow:0 0 24px rgba(248,113,113,.86), inset 0 4px 14px rgba(248,113,113,.3); }
.group-brasil-block.tema-vermelho-escuro { border-color:#991b1b; box-shadow:0 0 25px rgba(153,27,27,.9), inset 0 4px 14px rgba(153,27,27,.35); }
.group-brasil-block.tema-vermelho-sangue { border-color:#450a0a; box-shadow:0 0 28px rgba(127,0,0,.98), inset 0 4px 16px rgba(69,10,10,.5); }
.group-brasil-block.tema-azul { border-color:#38bdf8; box-shadow:0 0 24px rgba(56,189,248,.86), inset 0 4px 14px rgba(56,189,248,.3); }
.group-brasil-block.tema-verde-claro .tv-widget-box { background:linear-gradient(180deg,rgba(20,83,45,.24),var(--bg)); }
.group-brasil-block.tema-amarelo-dourado .tv-widget-box { background:linear-gradient(180deg,rgba(120,83,0,.3),var(--bg)); }
.group-brasil-block.tema-vermelho .tv-widget-box { background:linear-gradient(180deg,rgba(127,29,29,.3),var(--bg)); }
.group-brasil-block.tema-vermelho-claro .tv-widget-box { background:linear-gradient(180deg,rgba(185,28,28,.24),var(--bg)); }
.group-brasil-block.tema-vermelho-escuro .tv-widget-box { background:linear-gradient(180deg,rgba(127,29,29,.38),var(--bg)); }
.group-brasil-block.tema-vermelho-sangue .tv-widget-box { background:linear-gradient(180deg,rgba(69,10,10,.52),var(--bg)); }
.group-brasil-block.cabecalho-vermelho .cheat-sheet { background:linear-gradient(180deg,rgba(185,28,28,.9),rgba(69,10,10,.82) 58%,var(--bg) 100%); }
.group-brasil-block.cabecalho-azul .cheat-sheet { background:linear-gradient(180deg,rgba(37,99,235,.9),rgba(15,23,42,.86) 58%,var(--bg) 100%); }
.group-brasil-block.cabecalho-verde .cheat-sheet { background:linear-gradient(180deg,rgba(22,163,74,.92),rgba(20,83,45,.82) 58%,var(--bg) 100%); }
.group-brasil-block.tema-azul .tv-widget-box { background:linear-gradient(180deg,rgba(7,89,133,.3),var(--bg)); }
.group-brasil-block[class*="movimento-"] { transition:border-color .35s ease, box-shadow .35s ease, background .35s ease; }
.group-brasil-block.movimento-neutro { border-color:#38bdf8; box-shadow:0 0 20px rgba(56,189,248,.72), inset 0 4px 14px rgba(56,189,248,.22); }
.group-brasil-block.movimento-neutro .cheat-sheet { background:linear-gradient(180deg,rgba(37,99,235,.9),rgba(15,23,42,.86) 58%,var(--bg)); }
.group-brasil-block.movimento-alta { border-color:#4ade80; box-shadow:0 0 24px rgba(74,222,128,.9), inset 0 4px 14px rgba(74,222,128,.3); }
.group-brasil-block.movimento-alta .cheat-sheet { background:linear-gradient(180deg,rgba(22,163,74,.95),rgba(20,83,45,.82) 58%,var(--bg)); }
.group-brasil-block.movimento-alta-forte { border-color:#facc15; box-shadow:0 0 30px rgba(250,204,21,1), inset 0 4px 18px rgba(250,204,21,.42); }
.group-brasil-block.movimento-alta-forte .cheat-sheet { background:linear-gradient(180deg,rgba(234,179,8,.98),rgba(120,83,0,.9) 58%,var(--bg)); }
.group-brasil-block.movimento-queda { border-color:#f87171; box-shadow:0 0 24px rgba(248,113,113,.9), inset 0 4px 14px rgba(248,113,113,.3); }
.group-brasil-block.movimento-queda .cheat-sheet { background:linear-gradient(180deg,rgba(185,28,28,.92),rgba(69,10,10,.84) 58%,var(--bg)); }
.group-brasil-block.movimento-queda-forte { border-color:#dc2626; box-shadow:0 0 32px rgba(220,38,38,1), inset 0 4px 18px rgba(220,38,38,.42); }
.group-brasil-block.movimento-queda-forte .cheat-sheet { background:linear-gradient(180deg,rgba(127,29,29,.98),rgba(69,10,10,.92) 58%,var(--bg)); }
.group-brasil-block.movimento-queda-sangue { border-color:#7f0000; box-shadow:0 0 38px rgba(127,0,0,1), inset 0 4px 20px rgba(69,10,10,.58); }
.group-brasil-block.movimento-queda-sangue .cheat-sheet { background:linear-gradient(180deg,rgba(69,10,10,1),rgba(35,5,5,.96) 58%,var(--bg)); }
.group-dolar-block { border: 0.7px solid #38bdf8; box-shadow: 0 0 15px rgba(56, 189, 248, 0.3), inset 0 4px 10px rgba(56, 189, 248, 0.15); }

/* TradingView: sem glow externo ou interno nos widgets observados. */
.quotes-panel .widget-wrapper,
.quotes-panel .widget-wrapper:hover,
.quotes-panel .widget-wrapper .cheat-sheet,
.quotes-panel .widget-wrapper .tv-widget-box,
.quotes-panel .widget-wrapper[class*="movimento-"],
.quotes-panel .widget-wrapper[class*="tema-"],
.quotes-panel .widget-wrapper[class*="cabecalho-"] {
    box-shadow: none !important;
    filter: none !important;
}

.news-stack { display: flex; flex-direction: column; gap: 8px; margin-bottom: 24px; }
.news-marquee-container { background: #000000; border: 2px solid #222; border-radius: 8px; padding: 6px 15px; box-shadow: 0 8px 20px rgba(0,0,0,0.8), inset 0 0 10px rgba(0,0,0,0.9); display: flex; align-items: center; gap: 15px; overflow: hidden; }
.news-marquee-title { color: #ffffff; font-family: 'DotGothic16', monospace; font-size: 14px; white-space: nowrap; border-right: 2px solid #333; padding-right: 15px; text-shadow: 0 0 5px rgba(255,255,255,0.5); font-weight: bold; }
.news-marquee-content { font-family: 'DotGothic16', monospace; font-size: 11px; width: 100%; letter-spacing: 1px; text-transform: uppercase; color: #fff;}

/* =========================================
   TEMAS E MODAIS (NOVAS CORES INSTITUCIONAIS)
========================================= */

/* Leitura de contexto do WINFUT — camada informativa, sem efeito nos sinais. */
.side-button[onclick="toggleTvs()"] { display:none !important; }
.win-reading-information { width:100%; grid-column:1 / -1; min-width:0; margin-top:-7px; }
.win-context-panel { width:100%; box-sizing:border-box; display:flex; flex-wrap:wrap; align-items:center; gap:8px 18px; margin:0 0 14px; padding:11px 14px; border:1px solid rgba(56,189,248,.52); border-radius:10px; background:linear-gradient(90deg,rgba(7,89,133,.24),rgba(15,23,42,.72)); color:var(--txt2); transition:border-color .35s ease,background .35s ease,box-shadow .35s ease; }
.win-context-panel b { color:#7dd3fc; letter-spacing:.02em; }
.win-context-panel span { color:var(--txt2); font-size:.92rem; }
.win-context-panel small { flex-basis:100%; color:#94a3b8; font-size:calc(.76rem + 5px); line-height:1.35; text-transform:uppercase; }
.win-context-panel .win-context-number { color:#f8fafc; font-weight:900; }
.win-context-panel.leitura-alta { border-color:rgba(74,222,128,.88); background:linear-gradient(90deg,rgba(22,101,52,.58),rgba(15,23,42,.74)); box-shadow:0 0 18px rgba(34,197,94,.14); }
.win-context-panel.leitura-alta b { color:#4ade80; }
.win-context-panel.leitura-queda { border-color:rgba(239,68,68,.9); background:linear-gradient(90deg,rgba(127,29,29,.62),rgba(15,23,42,.74)); box-shadow:0 0 18px rgba(239,68,68,.14); }
.win-context-panel.leitura-queda b { color:#f87171; }
.win-context-panel.leitura-cuidado { border-color:rgba(251,146,60,.92); background:linear-gradient(90deg,rgba(124,45,18,.62),rgba(15,23,42,.74)); box-shadow:0 0 18px rgba(249,115,22,.14); }
.win-context-panel.leitura-cuidado b { color:#fb923c; }
.win-context-panel.leitura-divergencia { border-color:rgba(250,204,21,.9); background:linear-gradient(90deg,rgba(120,83,0,.58),rgba(15,23,42,.74)); box-shadow:0 0 18px rgba(250,204,21,.13); }
.win-context-panel.leitura-divergencia b { color:#facc15; }
.win-context-panel.leitura-neutra { border-color:rgba(148,163,184,.55); background:linear-gradient(90deg,rgba(51,65,85,.44),rgba(15,23,42,.72)); }
.win-orderflow-card { position:relative; overflow:hidden; width:100%; box-sizing:border-box; margin:0 0 14px; padding:14px; border:1px solid rgba(125,211,252,.32); border-radius:16px; background:linear-gradient(135deg,rgba(8,47,73,.68),rgba(15,23,42,.82) 52%,rgba(2,6,23,.92)); box-shadow:0 16px 35px rgba(2,6,23,.35),inset 0 1px 0 rgba(255,255,255,.11); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); }
.win-orderflow-card::before { content:""; position:absolute; inset:-55% 45% 20% -18%; pointer-events:none; background:radial-gradient(circle,rgba(56,189,248,.16),transparent 68%); }
.win-orderflow-header,.win-orderflow-summary,.win-orderflow-layout { position:relative; z-index:1; }
.win-orderflow-header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.win-orderflow-kicker { color:#7dd3fc; font-size:.67rem; font-weight:900; letter-spacing:.14em; }
.win-orderflow-header h3 { margin:3px 0 0; color:#f8fafc; font-size:1.02rem; letter-spacing:.01em; }
.win-orderflow-contract { padding:5px 8px; border:1px solid rgba(125,211,252,.35); border-radius:9px; color:#bae6fd; background:rgba(14,116,144,.17); font-size:.73rem; font-weight:900; white-space:nowrap; }
.win-orderflow-summary { display:flex; flex-wrap:wrap; gap:7px; margin:12px 0; color:#cbd5e1; font-size:.73rem; font-variant-numeric:tabular-nums; }
.win-orderflow-pill { padding:4px 8px; border-radius:999px; color:#dbeafe; background:linear-gradient(90deg,rgba(30,64,175,.48),rgba(14,116,144,.24)); border:1px solid rgba(96,165,250,.38); font-weight:900; letter-spacing:.04em; }
.win-orderflow-pill.buy { color:#bbf7d0; border-color:rgba(74,222,128,.55); background:linear-gradient(90deg,rgba(21,128,61,.54),rgba(6,78,59,.28)); }
.win-orderflow-pill.sell { color:#bfdbfe; border-color:rgba(59,130,246,.58); background:linear-gradient(90deg,rgba(15,23,42,.9),rgba(30,64,175,.42)); }
.win-orderflow-signal { position:relative; z-index:1; margin:0 0 12px; padding:10px; border:1px solid rgba(148,163,184,.2); border-radius:12px; background:linear-gradient(135deg,rgba(2,6,23,.48),rgba(15,23,42,.64)); }
.win-orderflow-signal-head { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:7px; color:#7dd3fc; font-size:.62rem; font-weight:900; letter-spacing:.1em; }
.win-orderflow-signal-head b { padding:4px 7px; border:1px solid rgba(148,163,184,.35); border-radius:7px; color:#cbd5e1; background:rgba(51,65,85,.38); font-size:.64rem; letter-spacing:.04em; }
.win-orderflow-signal-head b.compradora { color:#bbf7d0; border-color:rgba(134,239,172,.65); background:rgba(22,101,52,.42); }
.win-orderflow-signal-head b.vendedora { color:#bfdbfe; border-color:rgba(59,130,246,.65); background:rgba(30,64,175,.42); }
.win-orderflow-signal-head b.observar { color:#fde68a; border-color:rgba(250,204,21,.5); background:rgba(120,83,0,.28); }
.win-orderflow-signal-grid { display:grid; gap:4px; }
.win-orderflow-signal-row { display:grid; grid-template-columns:74px minmax(0,1fr); align-items:center; gap:8px; min-height:22px; padding:3px 7px; border-left:3px solid rgba(100,116,139,.55); border-radius:5px; background:rgba(15,23,42,.56); color:#cbd5e1; font-size:.7rem; font-variant-numeric:tabular-nums; }
.win-orderflow-signal-row .signal-price { color:#f8fafc; font-weight:900; }
.win-orderflow-signal-row.buy { border-left-color:#86efac; background:linear-gradient(90deg,rgba(134,239,172,.18),rgba(15,23,42,.58)); }
.win-orderflow-signal-row.sell { border-left-color:#1e40af; background:linear-gradient(90deg,rgba(30,64,175,.45),rgba(15,23,42,.58)); }
.win-orderflow-signal-row.absorption { border-left-color:#facc15; background:linear-gradient(90deg,rgba(250,204,21,.2),rgba(15,23,42,.58)); }
.win-orderflow-signal-row.current { outline:1px solid rgba(125,211,252,.75); }
.win-orderflow-signal-detail { margin-top:7px; color:#94a3b8; font-size:.68rem; line-height:1.4; }
.win-orderflow-layout { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(190px,.75fr); gap:12px; }
.win-orderflow-ladder-wrap { min-width:0; padding:8px; border:1px solid rgba(148,163,184,.18); border-radius:12px; background:rgba(2,6,23,.34); }
.win-orderflow-ladder-head { display:grid; grid-template-columns:1.2fr .7fr 1.45fr; gap:8px; padding:0 8px 6px; color:#64748b; font-size:.61rem; font-weight:900; letter-spacing:.1em; }
.win-orderflow-ladder { display:flex; flex-direction:column; gap:4px; max-height:370px; overflow:auto; scrollbar-width:thin; }
.win-orderflow-row { --heat:0; position:relative; display:grid; grid-template-columns:1.2fr .7fr 1.45fr; align-items:center; gap:8px; min-height:27px; padding:4px 8px; border:1px solid rgba(148,163,184,.13); border-radius:8px; color:#cbd5e1; font-size:.72rem; font-variant-numeric:tabular-nums; background:linear-gradient(90deg,rgba(30,64,175,calc(var(--heat) * .28)),rgba(15,23,42,.54)); }
.win-orderflow-row.buy { background:linear-gradient(90deg,rgba(134,239,172,calc(var(--heat) * .34)),rgba(15,23,42,.55)); }
.win-orderflow-row.sell { background:linear-gradient(90deg,rgba(15,23,42,.94),rgba(30,64,175,calc(var(--heat) * .58))); }
.win-orderflow-row.absorption { border-color:rgba(250,204,21,.7); box-shadow:inset 3px 0 0 #facc15,0 0 12px rgba(250,204,21,.09); }
.win-orderflow-row.current { outline:1px solid rgba(125,211,252,.8); box-shadow:0 0 16px rgba(56,189,248,.15); }
.win-orderflow-pressure { height:7px; border-radius:99px; background:linear-gradient(90deg,#bbf7d0,#4ade80); opacity:.9; transform-origin:left; transform:scaleX(var(--heat)); }
.win-orderflow-row.sell .win-orderflow-pressure { background:linear-gradient(90deg,#1e3a8a,#172554); }
.win-orderflow-price { color:#f8fafc; font-weight:900; text-align:center; }
.win-orderflow-mark { overflow:hidden; color:#94a3b8; font-size:.62rem; white-space:nowrap; text-overflow:ellipsis; }
.win-orderflow-row.absorption .win-orderflow-mark { color:#fde68a; font-weight:900; }
.win-orderflow-row.buy .win-orderflow-mark { color:#86efac; }
.win-orderflow-row.sell .win-orderflow-mark { color:#93c5fd; }
.win-orderflow-reading { display:flex; flex-direction:column; justify-content:center; min-width:0; padding:13px; border:1px solid rgba(148,163,184,.18); border-radius:12px; background:linear-gradient(160deg,rgba(15,23,42,.7),rgba(2,6,23,.45)); }
.win-orderflow-reading-title { color:#7dd3fc; font-size:.64rem; font-weight:900; letter-spacing:.12em; }
.win-orderflow-reading strong { margin-top:8px; color:#f8fafc; font-size:1.02rem; }
.win-orderflow-reading p { margin:8px 0 15px; color:#94a3b8; font-size:.74rem; line-height:1.45; }
.win-orderflow-legend { display:flex; flex-wrap:wrap; gap:7px; color:#94a3b8; font-size:.65rem; }
.win-orderflow-legend span { display:inline-flex; align-items:center; gap:4px; }
.win-orderflow-legend i { width:8px; height:8px; display:inline-block; border-radius:50%; }
.legend-buy { background:#4ade80; box-shadow:0 0 8px rgba(74,222,128,.7); }
.legend-sell { background:#f87171; box-shadow:0 0 8px rgba(248,113,113,.7); }
.legend-absorption { background:#facc15; box-shadow:0 0 8px rgba(250,204,21,.7); }
.win-orderflow-disclaimer { position:relative; z-index:1; display:block; margin-top:10px; color:#64748b; font-size:.67rem; line-height:1.35; }
.win-orderflow-empty { padding:18px 8px; color:#64748b; font-size:.76rem; text-align:center; }
@media (max-width:700px) { .win-orderflow-layout { grid-template-columns:1fr; } .win-orderflow-reading { min-height:130px; } }
.win-reading-rules { margin:0 0 12px; padding:10px 14px; border:1px solid rgba(56,189,248,.32); border-radius:10px; background:rgba(15,23,42,.72); color:var(--txt2); }
.win-reading-rules-title { margin-bottom:7px; color:#7dd3fc; font-weight:800; letter-spacing:.03em; }
.win-reading-rules-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px 14px; font-size:.82rem; line-height:1.3; }
.win-reading-rules-grid b { color:#e2e8f0; }
.win-reading-method { display:block; margin-top:8px; padding-top:7px; border-top:1px solid rgba(148,163,184,.2); color:#94a3b8; font-size:.75rem; }
.group-indice-block { border:1px solid rgba(56,189,248,.72); box-shadow:0 0 20px rgba(56,189,248,.34),inset 0 4px 12px rgba(56,189,248,.16); }
.group-indice-block .cheat-sheet { background:linear-gradient(180deg,rgba(2,132,199,.92),rgba(12,74,110,.76) 58%,var(--bg)); }
.group-indice-block[class*="movimento-"] { transition:border-color .35s ease,box-shadow .35s ease,background .35s ease; }
.group-indice-block.movimento-neutro { border-color:#38bdf8; box-shadow:0 0 20px rgba(56,189,248,.72),inset 0 4px 14px rgba(56,189,248,.22); }
.group-indice-block.movimento-alta { border-color:#4ade80; box-shadow:0 0 24px rgba(74,222,128,.9),inset 0 4px 14px rgba(74,222,128,.3); }
.group-indice-block.movimento-alta-forte { border-color:#facc15; box-shadow:0 0 30px rgba(250,204,21,1),inset 0 4px 18px rgba(250,204,21,.42); }
.group-indice-block.movimento-queda { border-color:#f87171; box-shadow:0 0 24px rgba(248,113,113,.9),inset 0 4px 14px rgba(248,113,113,.3); }
.group-indice-block.movimento-queda-forte { border-color:#dc2626; box-shadow:0 0 32px rgba(220,38,38,1),inset 0 4px 18px rgba(220,38,38,.42); }
.group-indice-block.movimento-queda-sangue { border-color:#7f0000; box-shadow:0 0 38px rgba(127,0,0,1),inset 0 4px 20px rgba(69,10,10,.58); }
@media (max-width:900px) { .win-reading-rules-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px) { .win-reading-rules-grid { grid-template-columns:1fr; } }

body.tema-tropical-sunrise { 
    --bg: #1a1612; 
    --card: #2c241b; 
    --border: rgba(255, 170, 50, 0.15); 
    --txt1: #fff8f0; 
    --txt2: #d4b29c; 
    --link: #f6ad55; 
    --thermo-bg-stem: #3d3124; 
}

body.tema-deep-sea-blue { 
    --bg: #060d1a; 
    --card: #0f1c30; 
    --border: rgba(56, 189, 248, 0.2); 
    --txt1: #f0f9ff; 
    --txt2: #93c5fd; 
    --link: #38bdf8; 
    --thermo-bg-stem: #132238; 
}

body.tema-profit-dark {
    --bg: #141414;
    --card: #1e1e1e;
    --border: rgba(255, 255, 255, 0.1);
    --txt1: #ffffff;
    --txt2: #a0a0a0;
    --link: #00ff00;
    --thermo-bg-stem: #2a2a2a;
}

body.tema-matrix-neon {
    --bg: #050505;
    --card: #0d120d;
    --border: rgba(0, 255, 65, 0.2);
    --txt1: #e0ffe0;
    --txt2: #80c080;
    --link: #00ff41;
    --thermo-bg-stem: #112211;
}

body.tema-dracula {
    --bg: #282a36;
    --card: #44475a;
    --border: rgba(255, 121, 198, 0.2);
    --txt1: #f8f8f2;
    --txt2: #6272a4;
    --link: #ff79c6;
    --thermo-bg-stem: #282a36;
}

body.tema-gold-luxury {
    --bg: #1a1814;
    --card: #26241e;
    --border: rgba(255, 215, 0, 0.15);
    --txt1: #fcf8e3;
    --txt2: #c4b581;
    --link: #ffd700;
    --thermo-bg-stem: #332f22;
}

body.tema-midnight-blue {
    --bg: #0f0c29;
    --card: #302b63;
    --border: rgba(0, 255, 255, 0.15);
    --txt1: #e0ffff;
    --txt2: #8aa2d3;
    --link: #00ffff;
    --thermo-bg-stem: #1a1744;
}

body.tema-light { --bg:#f4ead7; --card:#fff8e9; --border:rgba(120,82,35,.22); --txt1:#3b2a1a; --txt2:#806b52; --link:#b7791f; --thermo-bg-stem:#e8d5b5; }
body.tema-red { --bg:#160a0e; --card:#2a1018; --border:rgba(248,113,113,.3); --txt1:#fff1f2; --txt2:#fda4af; --link:#fb7185; --thermo-bg-stem:#421521; }
body.tema-blue { --bg:#061323; --card:#0b2038; --border:rgba(56,189,248,.32); --txt1:#e0f2fe; --txt2:#93c5fd; --link:#38bdf8; --thermo-bg-stem:#12345a; }
body.tema-gold { --bg:#3a1705; --card:#6b2b08; --border:rgba(255,215,64,.62); --txt1:#fff4b8; --txt2:#ffd166; --link:#ffd700; --thermo-bg-stem:#8a460b; }
body.tema-gold .thermometer-header-master,
body.tema-gold .card,
body.tema-gold .preco-3dias-box,
body.tema-gold .rsi-box-compartilhado { background-image:linear-gradient(145deg,rgba(255,193,7,.24),rgba(213,83,9,.24) 48%,rgba(91,27,2,.74)); border-color:rgba(255,215,64,.68); box-shadow:0 0 24px rgba(255,166,0,.28), inset 0 1px rgba(255,244,184,.22); }
body.tema-gold .card-header h2, body.tema-gold .preco-header { color:#ffe66d; text-shadow:0 0 12px rgba(255,166,0,.7), 2px 2px 0 rgba(116,38,0,.7); }
.theme-swatch { display:inline-block; width:22px; height:22px; border:1px solid; border-radius:50%; box-shadow:0 0 8px currentColor; }

/* Modais de Som */
.sound-config-list { display: flex; flex-direction: column; gap: 12px; }
.sound-config-item { background: rgba(0, 0, 0, 0.3); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 14px; padding: 12px 15px; display: flex; justify-content: space-between; align-items: center; gap: 15px; }
.sound-info { display: flex; flex-direction: column; gap: 3px; }
.sound-title { font-size: 12px; font-weight: 900; color: #ffffff; }
.sound-controls { display: flex; align-items: center; gap: 10px; }
.sound-preview-btn { background: rgba(56, 189, 248, 0.2); border: 1px solid #38bdf8; color: #38bdf8; padding: 4px 8px; border-radius: 6px; font-size: 10px; font-weight: bold; cursor: pointer; transition: background 0.2s; }
.sound-preview-btn:hover { background: rgba(56, 189, 248, 0.4); }

.switch { position: relative; display: inline-block; width: 36px; height: 20px; }
.switch input { opacity: 0; width: 0; height: 0; }
.slider { position: absolute; cursor: pointer; inset: 0; background-color: rgba(255,255,255,0.2); transition: .3s; border-radius: 20px; }
.slider:before { position: absolute; content: ""; height: 14px; width: 14px; left: 3px; bottom: 3px; background-color: white; transition: .3s; border-radius: 50%; }
input:checked + .slider { background-color: #38bdf8; }
input:checked + .slider:before { transform: translateX(16px); }

/* =========================================
   OCULTAR LINHA E HORA ATUAL DA TIMELINE
========================================= */
.timeline-now-line { display: none !important; }
.timeline-now-label { display: none !important; }

/* ===== MENU CONFIANÇA ===== */
.confianca-campos { display:flex; flex-direction:column; gap:10px; }
.confianca-campo { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.confianca-campo > span { display:flex; flex-direction:column; font-size:10px; font-weight:900; color:#e2e8f0; letter-spacing:.5px; }
.confianca-campo > span i { font-style:normal; font-size:9px; font-weight:600; color:#cbd5e1; letter-spacing:0; margin-top:2px; }
.confianca-campo input {
    width:64px; flex:0 0 64px; padding:7px 8px; text-align:center;
    font-size:14px; font-weight:900; color:#facc15;
    background:rgba(2,6,23,.75); border:1px solid rgba(148,163,184,.3); border-radius:7px;
}
.confianca-campo input:focus { outline:none; border-color:#38bdf8; color:#e0f2fe; }
.confianca-aviso {
    margin:10px 0 0 0; padding:8px 10px; font-size:9.5px; line-height:1.5; color:#fde68a;
    background:rgba(180,83,9,.18); border:1px solid rgba(251,191,36,.3); border-radius:7px;
}
.confianca-acoes { display:flex; gap:8px; margin-top:14px; }
.confianca-acoes button {
    flex:1; padding:9px 6px; font-size:9.5px; font-weight:900; letter-spacing:.5px;
    border-radius:7px; cursor:pointer; transition:filter .15s ease;
}
.confianca-acoes button:hover { filter:brightness(1.18); }
.confianca-btn-salvar { color:#022c22; background:#34d399; border:1px solid #34d399; }
.confianca-btn-padrao { color:#cbd5e1; background:rgba(148,163,184,.12); border:1px solid rgba(148,163,184,.3); }
.confianca-nota { margin:10px 0 0 0; font-size:9px; line-height:1.5; color:#7dd3fc; text-align:center; }

/* ===== BLOCOS COLAPSÁVEIS DO RELATÓRIO (sanfona) ===== */
.bloco-colapsavel { margin-bottom:10px; }
.bloco-colapsavel[hidden] { display:none; }
.bloco-toggle {
    display:flex; align-items:center; gap:8px; width:100%; padding:6px 10px;
    background:rgba(8,15,28,.72); border:1px solid rgba(148,163,184,.18); border-radius:8px;
    color:#7dd3fc; font-size:8.5px; font-weight:900; letter-spacing:.7px; text-transform:uppercase;
    cursor:pointer; text-align:left; transition:background .15s ease, color .15s ease;
}
.bloco-toggle:hover { background:rgba(14,30,54,.9); color:#e0f2fe; }
.bloco-toggle .bloco-seta {
    flex:0 0 auto; width:0; height:0; border-top:4px solid transparent; border-bottom:4px solid transparent;
    border-left:5px solid currentColor; transition:transform .18s ease;
}
.bloco-colapsavel:not(.colapsado) .bloco-toggle .bloco-seta { transform:rotate(90deg); }
/* Resumo de uma linha, visível só quando o bloco está fechado */
.bloco-toggle em {
    margin-left:auto; font-style:normal; font-size:9px; font-weight:800; letter-spacing:.3px;
    color:#e2e8f0; opacity:0; max-width:0; overflow:hidden; white-space:nowrap;
    transition:opacity .18s ease, max-width .18s ease;
}
.bloco-colapsavel.colapsado .bloco-toggle em { opacity:1; max-width:60%; }
.bloco-conteudo { padding-top:8px; }
.bloco-colapsavel.colapsado > .bloco-conteudo { display:none; }
/* Com blocos fechados a tabela cresce e aproveita o espaço liberado */
.relatorio-tabela-wrap { transition:max-height .2s ease; }

.confianca-vinculo { display:flex; align-items:flex-start; gap:7px; margin-top:2px; cursor:pointer; }
.confianca-vinculo input { margin-top:2px; flex:0 0 auto; }
.confianca-vinculo > span { display:flex; flex-direction:column; font-size:9px; font-weight:800; color:#cbd5e1; }
.confianca-vinculo > span i { font-style:normal; font-size:8.5px; font-weight:600; color:#cbd5e1; margin-top:2px; }
.confianca-campo input.calculado { color:#94a3b8; background:rgba(2,6,23,.4); border-style:dashed; cursor:not-allowed; }
.confianca-janela { margin:10px 0 0 0; padding:8px 10px; font-size:9px; line-height:1.55; color:#7dd3fc; background:rgba(8,47,73,.35); border:1px solid rgba(56,189,248,.25); border-radius:7px; }
.confianca-janela.alerta { color:#fde68a; background:rgba(180,83,9,.18); border-color:rgba(251,191,36,.35); }

/* ===== MENU ALVO E STOP ===== */
.alvostop-grid { display:flex; flex-direction:column; gap:6px; }
.alvostop-cabecalho { display:grid; grid-template-columns:52px 1fr 1fr 46px; gap:8px; align-items:center; }
.alvostop-cabecalho span { font-size:8.5px; font-weight:900; letter-spacing:.6px; color:#7dd3fc; text-align:center; }
.alvostop-cabecalho span:first-child { text-align:left; }
.alvostop-linha { display:grid; grid-template-columns:52px 1fr 1fr 46px; gap:8px; align-items:center; }
.alvostop-ativo { font-size:11px; font-weight:900; letter-spacing:.5px; }
.alvostop-ativo.win { color:#34d399; }
.alvostop-ativo.wdo { color:#60a5fa; }
.alvostop-linha input {
    width:100%; padding:7px 6px; text-align:center; font-size:13px; font-weight:900; color:#facc15;
    background:rgba(2,6,23,.75); border:1px solid rgba(148,163,184,.3); border-radius:7px;
}
.alvostop-linha input:focus { outline:none; border-color:#38bdf8; color:#e0f2fe; }
.alvostop-linha em { font-style:normal; font-size:11px; font-weight:900; text-align:center; color:#94a3b8; }
.alvostop-linha em.rr-bom { color:#34d399; }
.alvostop-linha em.rr-medio { color:#facc15; }
.alvostop-linha em.rr-ruim { color:#f87171; }
.alvostop-previa { font-size:9px; line-height:1.55; color:#cbd5e1; padding:0 2px 5px 54px; }

/* Aviso de deslize da entrada do MEGA TRADE */
.aviso-deslize-mega {
    position:fixed; top:88px; left:50%; transform:translateX(-50%);
    z-index:2147483600; display:flex; flex-direction:column; gap:3px;
    padding:12px 16px; max-width:420px; box-sizing:border-box;
    border:1px solid rgba(250,204,21,.45); border-left:4px solid #facc15; border-radius:12px;
    background:linear-gradient(135deg,rgba(23,32,49,.97),rgba(5,10,20,.98));
    box-shadow:0 18px 44px rgba(0,0,0,.7), inset 0 1px 0 rgba(255,255,255,.1);
    backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
    animation:aviso-deslize-entra .22s ease-out;
}
.aviso-deslize-mega strong { font-size:11px; font-weight:900; color:#facc15; letter-spacing:.4px; }
.aviso-deslize-mega span { font-size:10px; color:#e2e8f0; }
.aviso-deslize-mega span b { font-weight:900; }
.aviso-deslize-mega b.positivo { color:#34d399; }
.aviso-deslize-mega b.negativo { color:#f87171; }
.aviso-deslize-mega em { margin-top:3px; font-style:normal; font-size:9px; color:#94a3b8; line-height:1.45; }
.aviso-deslize-mega.saindo { opacity:0; transform:translateX(-50%) translateY(-8px); transition:opacity .55s ease, transform .55s ease; }
@keyframes aviso-deslize-entra { from { opacity:0; transform:translateX(-50%) translateY(-10px); } to { opacity:1; transform:translateX(-50%) translateY(0); } }

/* =========================================
   BACKTEST DO DIA (menu 🧪)
========================================= */
.bt-bloco-limiar { background: linear-gradient(145deg, rgba(23,32,49,.7), rgba(5,10,20,.85)); border: 1px solid var(--border); border-radius: 18px; padding: 18px 22px; margin-bottom: 18px; }
.bt-limiar-header { display:flex; align-items:baseline; justify-content:space-between; }
.bt-limiar-header h3 { margin:0; font-size:16px; color:#7dd3fc; }
.bt-limiar-total { font-size: 24px; font-weight: 900; }
.bt-limiar-sub { color: var(--txt2); font-size: 12px; margin: 4px 0 14px 0; }
.bt-ativos-grid { display:grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.bt-ativo-card { background: rgba(255,255,255,0.03); border: 1px solid var(--border); border-radius: 12px; padding: 12px 14px; }
.bt-ativo-nome { font-size: 12px; color: var(--txt2); font-weight: 700; margin-bottom: 4px; }
.bt-ativo-pnl { font-size: 20px; font-weight: 900; }
.bt-ativo-detalhe { font-size: 11px; color: var(--txt2); margin-top: 5px; }
.bt-ativo-alertas { font-size: 10.5px; color: #facc15; margin-top: 3px; }
.bt-ativo-saidas { font-size: 10.5px; color: #facc15; margin-top: 3px; }
.bt-ativo-pendente { font-size: 10.5px; color: #7dd3fc; margin-top: 3px; }
.bt-limiar-toggle { width:100%; background:none; border:0; padding:0; cursor:pointer; text-align:left; color:inherit; display:flex; align-items:center; gap:10px; }
.bt-limiar-toggle:hover h3 { color:#bae6fd; }
.bt-limiar-toggle .bt-limiar-header { flex:1; }
.bt-seta { width:0; height:0; border-left:6px solid #7dd3fc; border-top:5px solid transparent; border-bottom:5px solid transparent; transition:transform .2s ease; flex:0 0 auto; }
.bt-seta.aberta { transform:rotate(90deg); }
.bt-trades-wrap { margin-top:14px; max-height:44vh; overflow:auto; border:1px solid var(--border); border-radius:12px; }
.bt-trades-tabela { width:100%; border-collapse:collapse; font-size:11px; }
.bt-trades-tabela th { position:sticky; top:0; background:rgba(2,6,23,.96); color:#7dd3fc; font-size:9.5px; text-transform:uppercase; letter-spacing:.5px; padding:8px 7px; text-align:left; border-bottom:1px solid rgba(125,211,252,.25); white-space:nowrap; z-index:2; }
.bt-trades-tabela td { padding:7px; border-bottom:1px solid rgba(148,163,184,.1); vertical-align:top; white-space:nowrap; }
.bt-trades-tabela tbody tr:hover { background:rgba(255,255,255,.035); }
.bt-trades-tabela small { color:var(--txt2); font-size:9.5px; }

/* ── Calendário do backtest ──────────────────────────────────────
   O input date nativo não permite marcar dia por dia, e aqui isso é o
   ponto: mostrar quais pregões têm dado e de que qualidade.          */
/* A regra genérica .relatorio-trades-header-actions button obriga TODO botão
   do cabeçalho a virar um círculo vermelho de 34x34 (é o "×" de fechar).
   Estes dois são retangulares e com texto, então precisam desfazer aquilo
   explicitamente — sem isso o conteúdo transborda e os botões se sobrepõem. */
.relatorio-trades-header-actions .bt-data-botao,
.relatorio-trades-header-actions .bt-baixar-botao {
    width:auto; height:34px; border-radius:9px; font-size:12.5px;
    border:1px solid rgba(148,163,184,.35); background:rgba(15,23,42,.7);
    color:#e2e8f0; white-space:nowrap; flex:0 0 auto;
}
.bt-data-wrap { position:relative; flex:0 0 auto; }
.bt-data-botao { display:flex; align-items:center; gap:7px; padding:0 12px; cursor:pointer; }
.bt-data-botao:hover, .bt-baixar-botao:hover { border-color:#7dd3fc; color:#e0f2fe; }
.bt-data-botao b { font-size:13px; font-weight:800; }
.bt-data-botao small { font-size:8.5px; text-transform:uppercase; letter-spacing:.4px;
    padding:2px 5px; border-radius:5px; line-height:1.2; }
.bt-baixar-botao { padding:0 14px; cursor:pointer; font-weight:700; }
.bt-data-botao small.fonte-real   { background:rgba(52,211,153,.2); color:#6ee7b7; }
.bt-data-botao small.fonte-replay { background:rgba(167,139,250,.2); color:#c4b5fd; }
.bt-data-botao small.fonte-vazia  { background:rgba(148,163,184,.15); color:#94a3b8; }

.bt-calendario { position:absolute; top:calc(100% + 8px); right:0; z-index:60; width:268px; padding:12px;
    border:1px solid rgba(125,211,252,.32); border-radius:14px; background:rgba(5,10,20,.98);
    box-shadow:0 24px 60px rgba(0,0,0,.7); backdrop-filter:blur(12px); }
.bt-cal-topo { display:flex; align-items:center; justify-content:space-between; margin-bottom:9px; }
.bt-cal-topo strong { font-size:12.5px; color:#7dd3fc; }
.bt-cal-topo button { width:26px; height:26px; border-radius:7px; border:1px solid rgba(148,163,184,.3);
    background:rgba(15,23,42,.8); color:#e2e8f0; cursor:pointer; font-size:15px; line-height:1; }
.bt-cal-topo button:hover { border-color:#7dd3fc; }
.bt-cal-semana { display:grid; grid-template-columns:repeat(7,1fr); gap:3px; margin-bottom:4px; }
.bt-cal-semana span { text-align:center; font-size:9px; color:var(--txt2); font-weight:700; }
.bt-cal-grade { display:grid; grid-template-columns:repeat(7,1fr); gap:3px; }
.bt-cal-vazio { height:29px; }
.bt-cal-dia { height:29px; border-radius:7px; border:1px solid transparent; font-size:11.5px; font-weight:700;
    cursor:pointer; transition:transform .12s ease, box-shadow .12s ease; }
.bt-cal-dia.tem-real   { background:rgba(6,78,59,.75);  border-color:rgba(52,211,153,.55);  color:#a7f3d0; }
.bt-cal-dia.tem-replay { background:rgba(76,29,149,.55); border-color:rgba(167,139,250,.5); color:#ddd6fe; }
.bt-cal-dia.tem-real:hover, .bt-cal-dia.tem-replay:hover { transform:translateY(-1px); box-shadow:0 4px 12px rgba(0,0,0,.5); }
.bt-cal-dia.sem-dado   { background:rgba(255,255,255,.02); color:rgba(148,163,184,.35); cursor:not-allowed; }
.bt-cal-dia.selecionado { outline:2px solid #7dd3fc; outline-offset:1px; }
.bt-cal-rodape { margin-top:9px; font-size:9.5px; color:var(--txt2); text-align:center; }
.bt-cal-legenda { display:flex; flex-wrap:wrap; gap:9px; justify-content:center; margin-top:7px;
    padding-top:8px; border-top:1px solid rgba(148,163,184,.15); }
.bt-cal-legenda span { display:flex; align-items:center; gap:4px; font-size:9px; color:var(--txt2); }
.bt-cal-legenda i { width:10px; height:10px; border-radius:3px; display:inline-block; }
.bt-cal-legenda i.p-real   { background:rgba(6,78,59,.9);  border:1px solid rgba(52,211,153,.6); }
.bt-cal-legenda i.p-replay { background:rgba(76,29,149,.8); border:1px solid rgba(167,139,250,.6); }
.bt-cal-legenda i.p-vazio  { background:rgba(255,255,255,.04); border:1px solid rgba(148,163,184,.25); }
.bt-aviso { background: rgba(120,53,15,.25); border: 1px solid rgba(245,158,11,.4); border-radius: 12px; padding: 10px 14px; font-size: 11.5px; color: #fbbf24; margin-top: 4px; }
.bt-loading { padding: 30px; text-align:center; color: var(--txt2); font-size: 13px; }
.bt-controles { display:grid; grid-template-columns: auto auto auto auto 1fr; gap:14px; padding:14px; margin-bottom:12px; border:1px solid var(--border); border-radius:14px; background:rgba(15,23,42,.55); align-items:stretch; }
.bt-controle-grupo { display:flex; flex-direction:column; gap:6px; font-size:10px; color:var(--txt2); text-transform:uppercase; letter-spacing:.5px; }
.bt-controle-grupo > label { font-weight:800; color:#7dd3fc; margin-bottom:2px; }
.bt-controle-grupo input[type=number] { height:30px; width:64px; border:1px solid rgba(148,163,184,.3); border-radius:8px; background:rgba(15,23,42,.75); color:#e2e8f0; padding:0 8px; font-size:13px; font-weight:700; color-scheme:dark; box-sizing:border-box; text-align:center; }
.bt-inline-mini { display:flex; align-items:center; gap:6px; padding:3px 8px; border-radius:8px; font-size:10px; font-weight:800; letter-spacing:.6px; }
.bt-inline-mini span { color:#ffffff; opacity:.85; }
.bt-inline-mini input { width:56px; height:26px; background:rgba(0,0,0,.35); border:1px solid rgba(255,255,255,.25); color:#ffffff !important; }
.bt-ativo-win { background:rgba(6,78,59,.55); border:1px solid rgba(52,211,153,.4); }
.bt-ativo-wdo { background:rgba(127,29,29,.55); border:1px solid rgba(248,113,113,.4); }
.bt-ativos-col { align-items:flex-start; }
.bt-chip-linha { display:flex; gap:8px; margin-bottom:4px; }
.bt-chip { border-radius:20px; padding:6px 14px; font-size:12px; font-weight:800; cursor:pointer; border:1px solid rgba(148,163,184,.35); background:rgba(15,23,42,.6); color:#94a3b8; letter-spacing:.4px; transition:all .18s ease; }
.bt-chip:hover { transform:translateY(-1px); }
.bt-chip.ativo.bt-chip-win { background:rgba(6,78,59,.75); border-color:#34d399; color:#d1fae5; box-shadow:0 0 12px rgba(52,211,153,.35); }
.bt-chip.ativo.bt-chip-wdo { background:rgba(127,29,29,.75); border-color:#f87171; color:#fecaca; box-shadow:0 0 12px rgba(248,113,113,.35); }
.bt-toggles-linha { display:flex; flex-direction:column; gap:4px; margin-top:2px; }
.bt-check { display:flex; align-items:center; gap:6px; font-size:11px; text-transform:none; letter-spacing:0; color:#e2e8f0; cursor:pointer; }
.bt-check input { accent-color:#38bdf8; }
.bt-rodar { align-self:stretch; min-width:120px; padding:0 20px; border-radius:14px; border:1px solid rgba(52,211,153,.6); background:linear-gradient(145deg,rgba(4,120,87,.55),rgba(6,78,59,.85)); color:#d1fae5; font-weight:900; cursor:pointer; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; box-shadow:0 8px 24px rgba(52,211,153,.25),inset 0 1px 0 rgba(255,255,255,.12); transition:all .2s ease; }
.bt-rodar:hover { background:linear-gradient(145deg,rgba(4,120,87,.85),rgba(6,78,59,1)); box-shadow:0 12px 32px rgba(52,211,153,.5),inset 0 1px 0 rgba(255,255,255,.2); transform:translateY(-1px); }
.bt-rodar:hover .bt-rodar-icone { animation:bt-rodar-spin 1s linear infinite; }
.bt-rodar-icone { font-size:26px; line-height:1; }
.bt-rodar-texto { font-size:16px; letter-spacing:2px; }
.bt-rodar-sub { font-size:9px; letter-spacing:1.5px; color:#a7f3d0; opacity:.75; }
@keyframes bt-rodar-spin { from { transform:rotate(0deg); } to { transform:rotate(360deg); } }

/* HOLD: nível congelado previamente; ao tocar, sinal visual inequívoco. */
#card-direcional.hold-aguardando-esticada { border-style:solid; border-color:rgba(250,204,21,.62); }
#card-direcional.hold-esticada-atingida,
#card-direcional .ai-suggestion-box.hold-esticada-atingida {
    border-color:#facc15 !important;
    animation:hold-entrada-pulso .72s ease-in-out infinite alternate;
}
#card-direcional.hold-esticada-atingida::after { opacity:.38; }
.ai-badge.esticada-atingida {
    color:#06130b !important;
    background:linear-gradient(90deg,#facc15,#4ade80) !important;
    border-color:#fff7ae !important;
    box-shadow:0 0 12px rgba(250,204,21,.9),0 0 25px rgba(74,222,128,.72);
    font-weight:1000;
}
@keyframes hold-entrada-pulso {
    from { box-shadow:0 0 12px rgba(250,204,21,.5),0 0 22px rgba(74,222,128,.22),inset 0 0 18px rgba(250,204,21,.08); filter:brightness(1); }
    to { box-shadow:0 0 28px rgba(250,204,21,1),0 0 48px rgba(74,222,128,.72),inset 0 0 32px rgba(250,204,21,.18); filter:brightness(1.14); }
}
@media (prefers-reduced-motion:reduce) {
    #card-direcional.hold-esticada-atingida,
    #card-direcional .ai-suggestion-box.hold-esticada-atingida { animation:none; }
}
