*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#08070a;--sidebar-bg:#08070a;--topbar-bg:#08070a;--topbar-border:#1a1a2e;
  --card:#101012;--border:#1a1a2e;--card-shadow:none;--card-radius:10px;--card-filter:none;
  --text:#e2e8f0;--text2:#94a3b8;--muted:#6b7280;--dim:#4b5563;
  --accent:#22c55e;--blue:#22c55e;--green:#34d399;--red:#f87171;--gold:#e0b84a;
  --color-up:#34d399;--color-dn:#f87171;--max:1320px;
  --input-bg:#12121e;--sr-border:#1a1a2e;--table-td-border:#0d0d18;--pb-bg:rgba(255,255,255,0.08);
  --si-active-bg:rgba(34,197,94,0.12);--si-active-text:#fff;--si-active-border:var(--accent);--glow:none;
  font-family:Segoe UI,system-ui,sans-serif;
}
:root[data-theme="dark"]{
  --bg:#08070a;--sidebar-bg:#08070a;--topbar-bg:#08070a;--topbar-border:#1a1a2e;
  --card:#101012;--border:#1a1a2e;--card-shadow:none;--card-radius:10px;--card-filter:none;
  --text:#e2e8f0;--text2:#94a3b8;--muted:#6b7280;--dim:#4b5563;
  --color-up:#34d399;--color-dn:#f87171;--input-bg:#12121e;
  --sr-border:#1a1a2e;--table-td-border:#0d0d18;--pb-bg:rgba(255,255,255,0.08);
  --si-active-bg:rgba(34,197,94,0.12);--si-active-text:#fff;--glow:none
}
:root[data-theme="glass"]{
  --bg:#0B0F14;--sidebar-bg:rgba(25,32,45,0.6);--topbar-bg:rgba(25,32,45,0.5);--topbar-border:rgba(255,255,255,0.08);
  --card:rgba(25,32,45,0.5);--border:rgba(255,255,255,0.08);--card-shadow:0 8px 32px rgba(0,0,0,0.25);--card-radius:16px;--card-filter:blur(16px) saturate(140%);
  --text:#E5E7EB;--text2:#9CA3AF;--muted:#9CA3AF;--dim:#6b7280;
  --accent:#22C55E;--blue:#60A5FA;--green:#22C55E;--red:#EF4444;
  --color-up:#22C55E;--color-dn:#EF4444;--input-bg:rgba(255,255,255,0.06);
  --sr-border:rgba(255,255,255,0.06);--table-td-border:rgba(255,255,255,0.06);--pb-bg:rgba(255,255,255,0.1);
  --si-active-bg:rgba(34,197,94,0.12);--si-active-text:#22C55E;--si-active-border:#22C55E;--glow:none;
  font-family:'Inter',system-ui,sans-serif
}
:root[data-theme="clean"]{
  --bg:#f0f2f5;--sidebar-bg:#ffffff;--topbar-bg:#ffffff;--topbar-border:#e5e7eb;
  --card:#ffffff;--border:#e5e7eb;--card-shadow:0 1px 3px rgba(0,0,0,0.08);--card-radius:10px;--card-filter:none;
  --text:#1a1a2a;--text2:#374151;--muted:#6b7280;--dim:#9ca3af;
  --accent:#22c55e;--blue:#22c55e;--green:#22c55e;--red:#dc2626;--gold:#a8790a;
  --color-up:#16a34a;--color-dn:#dc2626;--input-bg:#f9fafb;
  --sr-border:#f3f4f6;--table-td-border:#f3f4f6;--pb-bg:#e5e7eb;
  --si-active-bg:#f0fdf4;--si-active-text:#16a34a;--glow:none
}
html,body{height:100%;background:var(--bg);color:var(--text);overflow:hidden}
.app{display:flex;height:100vh}
.sidebar{width:200px;background:var(--sidebar-bg);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;backdrop-filter:var(--card-filter)}
.logo{padding:16px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:14px}
.logo-mark{flex-shrink:0;border-radius:50%;object-fit:cover;display:block}
.logo-line1{font-size:19px;font-weight:700;color:#fff;line-height:1.2}
.logo-line2{font-size:13px;font-weight:600;color:var(--gold);line-height:1.2;margin-top:1px}
.logo-sub{font-size:9px;color:var(--dim);letter-spacing:.03em;margin-top:4px}
.nav{padding:10px 0;flex:1}
.ni{display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:13px;color:var(--muted);cursor:pointer;border-left:3px solid transparent;transition:.15s}
.ni .ti{font-size:16px;flex-shrink:0;opacity:.7;transition:.15s}
.ni:hover .ti,.ni.active .ti{opacity:1}
.ni:hover{color:var(--text);background:rgba(255,255,255,.03)}
.ni.active{color:var(--si-active-text);background:var(--si-active-bg);border-left-color:var(--si-active-border)}
.sb-bot{padding:14px 16px;border-top:1px solid var(--border)}
.av{width:32px;height:32px;border-radius:50%;background:#14532d;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#4ade80}
.main{flex:1;display:flex;flex-direction:column;min-width:0}
.topbar{height:52px;background:var(--topbar-bg);border-bottom:1px solid var(--topbar-border);display:flex;align-items:center;justify-content:space-between;padding:0 24px;flex-shrink:0;backdrop-filter:var(--card-filter)}
.tb-t{font-size:14px;font-weight:600}
.live{background:#0f2d1a;color:var(--green);font-size:10px;padding:4px 10px;border-radius:20px;border:1px solid #166534}
.views{flex:1;overflow-y:auto;padding:20px 24px 32px}
.view{display:none}
.view.active{display:block}
.page{max-width:var(--max);margin:0 auto;width:100%}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}
.card,.cg{background:var(--card);border:1px solid var(--border);border-radius:var(--card-radius);padding:16px;box-shadow:var(--card-shadow);backdrop-filter:var(--card-filter)}
.mc{background:var(--card);border:1px solid var(--border);border-radius:var(--card-radius);padding:16px;box-shadow:var(--card-shadow);backdrop-filter:var(--card-filter);display:flex;align-items:center;gap:14px}
.mc-icon-circle{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:22px;transition:.2s;background:rgba(var(--mc-accent-rgb),0.15);color:var(--mc-accent)}
.mc-body{flex:1;min-width:0}
.mc-lbl{font-size:10px;color:var(--dim);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}
.mc-val{font-size:clamp(19px,2.1vw,26px);font-weight:600;color:var(--text);white-space:nowrap}
.mc-sub{font-size:11px;color:var(--muted);margin-top:4px}
.up{color:var(--color-up)}.dn{color:var(--color-dn)}
.row2{display:grid;grid-template-columns:1.65fr 1fr;gap:14px;margin-bottom:16px}
.card-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:8px;flex-wrap:wrap}
.card-t{font-size:13px;font-weight:600}
.tabs{display:flex;gap:4px;flex-wrap:wrap}
.tab{font-size:10px;padding:4px 8px;border-radius:5px;cursor:pointer;color:var(--muted);border:1px solid transparent}
.tab.active{background:rgba(34,197,94,.15);color:#4ade80;border-color:rgba(34,197,94,.3)}
.ch{position:relative;width:100%;height:200px}
.ch-sm{height:160px}
.sr{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--sr-border)}
.sr:last-child{border:none}
.sl{font-size:11px;color:var(--muted)}.sv{font-size:11px;font-weight:600;white-space:nowrap}
.pb-bg{background:var(--pb-bg);border-radius:4px;height:5px;margin:4px 0 8px}
.pb{height:5px;border-radius:4px}
.sec-lbl{font-size:11px;font-weight:600;color:var(--dim);text-transform:uppercase;letter-spacing:.6px;margin:18px 0 10px}
.tbl-wrap{overflow-x:auto;border-radius:10px}

/* ── Sticky horizontal scrollbar (tabelas de trades) ──
   .sticky-scroll-bottom é o container real com overflow-x:auto — é
   onde a <table> mora e onde a scrollbar nativa aparece, colada no
   fundo da tabela. Quando essa scrollbar nativa sai da tela (tabela
   mais alta que a viewport), initStickyScroll (app.js) cria uma barra
   "flutuante" (.sticky-scroll-floating, position:fixed, um elemento
   por wrapper) e a exibe grudada no topo ou no fundo da viewport,
   sincronizada por scroll com .sticky-scroll-bottom. */
.sticky-scroll-wrap{position:relative}
.sticky-scroll-bottom{overflow-x:auto;overflow-y:visible}
.sticky-scroll-floating{position:fixed;left:0;right:0;height:14px;background:#0c110c;border-top:0.5px solid #1a2a1a;overflow-x:auto;overflow-y:hidden;z-index:100;display:none}
.sticky-scroll-floating-inner{height:1px}

table.tt{width:100%;border-collapse:collapse;min-width:1100px}
table.tt th{font-size:9px;color:var(--dim);text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;background:var(--card)}
table.tt td{font-size:11px;padding:9px 10px;border-bottom:1px solid var(--table-td-border);color:var(--text2);white-space:nowrap}
table.tt tr:hover td{background:rgba(255,255,255,.02)}
.sym{color:var(--text);font-weight:600}
.pill{font-size:9px;padding:3px 7px;border-radius:4px;font-weight:600}
.buy{background:#0a2218;color:var(--green);border:1px solid #0f4026}
.sell{background:#1f0a0a;color:var(--red);border:1px solid #3d1212}
.sel{font-size:10px;padding:4px 6px;border-radius:4px;background:#1a1f2e;border:1px solid #2a2f3e;color:#94a3b8;cursor:pointer;min-width:58px;max-width:90px}
.cg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.cg-t{font-size:10px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}
.leg-row{display:flex;gap:10px;margin-bottom:8px;flex-wrap:wrap}
.leg{display:flex;align-items:center;gap:4px;font-size:9px;color:var(--muted)}
.leg-sq{width:8px;height:8px;border-radius:2px}
.asset-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.btn{font-size:12px;padding:8px 14px;border-radius:6px;border:1px solid var(--border);background:var(--input-bg);color:var(--text);cursor:pointer}
.btn:hover{background:#222838}
.btn-primary{background:rgba(34,197,94,.2);border-color:rgba(34,197,94,.4);color:#86efac}
.btn-danger{color:var(--red);border-color:#3d1212}
.btn-sm{font-size:10px;padding:4px 10px}
.import-box{border:2px dashed #2a3348;border-radius:12px;padding:48px 24px;text-align:center;background:rgba(255,255,255,.02);cursor:pointer;transition:.2s}
.import-box.dragover{border-color:var(--blue);background:rgba(34,197,94,.08)}
.import-box p{color:var(--muted);font-size:13px;margin-top:8px}
.import-box strong{color:var(--text)}
.info-card{margin-top:16px;padding:16px;border-radius:10px;background:var(--card);border:1px solid var(--border);font-size:12px;color:var(--muted);line-height:1.6}
.modal-bg{position:fixed;inset:0;background:rgba(0,0,0,.65);display:none;align-items:center;justify-content:center;z-index:100;padding:20px}
.modal-bg.open{display:flex}
.modal{background:var(--card);border:1px solid var(--border);border-radius:12px;width:min(900px,95vw);max-height:90vh;overflow-y:auto;padding:20px;backdrop-filter:var(--card-filter)}
.modal-img-area{width:100%;height:400px;border-radius:8px;background:#0d1117;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;margin-top:6px;margin-bottom:16px}
.modal-img-area img{width:100%;height:100%;object-fit:contain;display:none}
.modal-img-area .img-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--dim);pointer-events:none}
.modal-img-area .img-placeholder span:first-child{font-size:36px;line-height:1}
.modal-img-area .img-placeholder span:last-child{font-size:11px}
.modal-view{width:min(900px,95vw)}
.view-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:16px;background:#1a1f2e;border-radius:8px;border:1px solid var(--border);margin-bottom:16px}
.view-info-item{display:flex;flex-direction:column;gap:4px}
.view-label{font-size:10px;color:var(--dim);text-transform:uppercase}
.view-val{font-size:14px;font-weight:600;color:var(--text)}
tr[data-view]{cursor:pointer}
tr[data-view]:hover td{background:rgba(255,255,255,.03)}
.modal-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.modal-title{font-size:16px;font-weight:600}
.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}
.field label{display:block;font-size:10px;color:var(--dim);text-transform:uppercase;margin-bottom:4px}
.field select,.field input{width:100%;padding:8px;border-radius:6px;background:var(--input-bg);border:1px solid var(--border);color:var(--text);font-size:12px}
.thumb{width:48px;height:48px;border-radius:6px;object-fit:cover;background:#1a1f2e;border:1px solid var(--border);cursor:pointer}
.thumb-empty{display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--dim)}
.empty-msg{text-align:center;padding:40px;color:var(--muted);font-size:13px}
.toast{position:fixed;bottom:24px;right:24px;background:#14532d;color:#fff;padding:12px 18px;border-radius:8px;font-size:13px;opacity:0;transition:.3s;z-index:200;pointer-events:none}
.toast.show{opacity:1}
@media(max-width:1200px){.cg-grid{grid-template-columns:repeat(2,1fr)}.asset-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.row2,.cards3,.cg-grid,.asset-grid{grid-template-columns:1fr}}
/* ── Dashboard layout ── */
.db-row4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.db-row3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}
.db-row2w{display:grid;grid-template-columns:1.8fr 1fr;gap:12px;margin-bottom:14px}
.db-row2s{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}
.mc-accent-green{--mc-accent:#22c55e;--mc-accent-rgb:34,197,94;border-top:2px solid #22c55e}
.mc-accent-yellow{--mc-accent:#f59e0b;--mc-accent-rgb:245,158,11;border-top:2px solid #f59e0b}
.mc-accent-blue{--mc-accent:#3b82f6;--mc-accent-rgb:59,130,246;border-top:2px solid #3b82f6}
.mc-accent-cyan{--mc-accent:#22d3ee;--mc-accent-rgb:34,211,238;border-top:2px solid #22d3ee}
.mc-accent-red{--mc-accent:#ef4444;--mc-accent-rgb:239,68,68;border-top:2px solid #ef4444}
.meta-edit-btn{font-size:10px;color:var(--dim);background:none;border:none;cursor:pointer;padding:2px 4px;transition:.15s}
.meta-edit-btn:hover{color:#22c55e}
/* ── Mini Calendar ── */
.mini-cal{font-size:11px}
.mini-cal-hd{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}
.mini-cal-dh{text-align:center;color:var(--dim);font-size:9px;font-weight:600;padding:2px 0}
.mini-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.mini-cal-day{display:flex;align-items:center;justify-content:center;aspect-ratio:1;border-radius:4px;color:var(--muted);font-size:10px;font-weight:500}
.mini-cal-up{background:rgba(34,197,94,.18);color:#22c55e;font-weight:700}
.mini-cal-dn{background:rgba(248,113,113,.14);color:#f87171;font-weight:700}
/* ── Combos ── */
#combosContent{font-size:9px}
/* ── Streak / Cards2 ── */
.cards2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:1200px){.db-row4{grid-template-columns:repeat(2,1fr)}.db-row3{grid-template-columns:repeat(2,1fr)}.db-row2w{grid-template-columns:1fr}}
@media(max-width:900px){.db-row4,.db-row3,.db-row2w,.db-row2s{grid-template-columns:1fr}}
/* ── Metas ── */
.metas-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.meta-item{display:flex;flex-direction:column;gap:8px}
.meta-lbl{font-size:10px;color:var(--dim);text-transform:uppercase;letter-spacing:.5px;font-weight:600}
.meta-input-row{display:flex;align-items:center;gap:6px}
.meta-currency{font-size:13px;color:var(--muted)}
.meta-input{background:var(--input-bg);border:1px solid var(--border);color:var(--text);padding:6px 10px;border-radius:6px;font-size:13px;width:100%;outline:none;transition:.15s}
.meta-input:focus{border-color:#22c55e}
.meta-pb-bg{background:var(--pb-bg);border-radius:4px;height:6px;overflow:hidden}
.meta-pb-fill{height:6px;border-radius:4px;transition:width .4s,background .3s}
.meta-pb-label{font-size:11px;color:var(--muted)}
/* ── Replay ── */
.replay-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}
.replay-filter-btn{font-size:11px;font-weight:600;padding:5px 14px;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--dim);cursor:pointer;transition:.15s}
.replay-filter-btn.active{background:#22c55e;border-color:#22c55e;color:#fff}
.replay-counter{font-size:12px;color:var(--muted);font-weight:500}
.replay-card{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:16px}
.replay-img-wrap{background:#0d1117;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;padding-bottom:0}
.replay-info{padding:18px 20px}
.replay-sym{font-size:24px;font-weight:700;color:#f1f5f9;letter-spacing:.02em;margin-bottom:6px}
.replay-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:8px}
.replay-prices{display:flex;gap:16px;font-size:12px;color:#94a3b8;margin-bottom:10px}
.replay-tags{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:10px}
.replay-tag-group{display:flex;flex-direction:column;gap:3px}
.replay-tag-lbl{font-size:9px;color:var(--dim);text-transform:uppercase;letter-spacing:.4px}
.replay-obs{font-size:12px;color:var(--muted);background:#1a1f2e;border-radius:6px;padding:8px 12px;margin-top:4px;line-height:1.5;border:1px solid var(--border)}
.replay-nav{display:flex;gap:12px;justify-content:center}
.replay-nav-btn{font-size:13px;padding:10px 28px;font-weight:600;min-width:140px}
.replay-nav-btn:disabled{opacity:.3;cursor:not-allowed}
@media(max-width:700px){.metas-grid{grid-template-columns:1fr}.replay-nav-btn{min-width:100px;padding:10px 16px}}
/* ── Theme toggle ── */
.theme-toggle{display:flex;background:var(--input-bg);border:1px solid var(--border);border-radius:6px;overflow:hidden}
.theme-btn{padding:4px 10px;font-size:11px;font-weight:700;color:var(--muted);background:transparent;border:none;cursor:pointer;transition:.15s;display:flex;align-items:center;gap:4px;white-space:nowrap}
.theme-btn:hover{color:var(--text)}
/* ── Wallet switcher (topbar) ── */
.wallet-switch{position:relative}
.wallet-switch-btn{display:flex;align-items:center;gap:6px;background:var(--input-bg);border:1px solid var(--border);border-radius:6px;padding:4px 10px;font-size:11px;font-weight:700;color:var(--text);cursor:pointer;white-space:nowrap}
.wallet-switch-btn:hover{background:#222838}
.wallet-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;display:inline-block}
.wallet-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:var(--card);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.35);padding:6px;display:none;z-index:60}
.wallet-dropdown.open{display:block}
.wallet-dropdown-item{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:6px;font-size:12px;color:var(--text);cursor:pointer}
.wallet-dropdown-item:hover{background:rgba(255,255,255,.06)}
.wallet-dropdown-item.active{color:#4ade80;font-weight:600}
.wallet-dropdown-sep{height:1px;background:var(--border);margin:6px 2px}
.wallet-dropdown-manage{padding:7px 8px;font-size:11px;color:var(--dim);cursor:pointer;border-radius:6px}
.wallet-dropdown-manage:hover{background:rgba(255,255,255,.06);color:var(--text)}
/* ── Wallets (Carteiras) page ── */
.wallet-card{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:10px;background:var(--card);border:1px solid var(--border);margin-bottom:10px}
.wallet-card-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}
.wallet-card-body{flex:1;min-width:0}
.wallet-card-name{font-size:13px;font-weight:600;color:var(--text)}
.wallet-card-meta{font-size:11px;color:var(--dim);margin-top:2px}
.wallet-active-badge{font-size:10px;font-weight:700;color:#4ade80;background:rgba(34,197,94,.15);border:1px solid rgba(34,197,94,.3);padding:4px 10px;border-radius:20px;white-space:nowrap}
.wallet-color-pick{display:flex;gap:8px;margin-top:8px}
.wallet-color-swatch{width:24px;height:24px;border-radius:50%;cursor:pointer;border:2px solid transparent}
.wallet-color-swatch.active{border-color:var(--text)}
/* ── Calendar ── */
.cal-controls{display:flex;gap:12px;align-items:center;margin-bottom:20px}
.cal-select{background:#1a1f2e;border:1px solid var(--border);color:var(--text);padding:6px 14px;border-radius:6px;font-size:13px;cursor:pointer}
.cal-card{background:#161b27;border:1px solid var(--border);border-radius:10px;padding:16px}
.cal-card-hd{font-size:13px;font-weight:700;margin-bottom:10px;color:var(--text);text-transform:uppercase;letter-spacing:.04em}
.cal-table{width:100%;border-collapse:collapse;font-size:12px}
.cal-table th{padding:6px 10px;text-align:right;color:var(--dim);font-size:10px;text-transform:uppercase;font-weight:600;border-bottom:1px solid #1e2433}
.cal-table th:first-child{text-align:left}
.cal-table td{padding:7px 10px;text-align:right;border-bottom:1px solid #1a1f2e}
.cal-week-label{text-align:left!important;color:var(--dim);font-size:11px;white-space:nowrap;font-weight:500}
.cal-day-cell{min-width:70px;font-weight:600}
.cal-day-cell.up{color:#34d399}
.cal-day-cell.dn{color:#f87171}
.cal-out{background:transparent}
.cal-val{font-weight:700;white-space:nowrap}
.cal-val.up{color:#34d399}
.cal-val.dn{color:#f87171}
.cal-total-row td{border-top:2px solid var(--border);border-bottom:none;padding-top:10px}
.cal-year-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}
.cal-year-total{text-align:right;font-size:15px;font-weight:700;padding:14px 18px;background:#161b27;border-radius:8px;border:1px solid var(--border)}
.cal-year-total.up{color:#34d399}
.cal-year-total.dn{color:#f87171}
@media(max-width:900px){.cal-year-grid{grid-template-columns:1fr}}
/* ── Família page ── */
.fam-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;gap:10px}
.fam-period-btns{display:flex;background:#1a1f2e;border:1px solid var(--border);border-radius:6px;padding:3px;gap:2px}
.fam-period-btn{font-size:11px;font-weight:600;padding:4px 10px;border-radius:4px;border:none;background:transparent;color:var(--dim);cursor:pointer;transition:.15s}
.fam-period-btn.active{background:#22c55e;color:#fff}
.fam-add-wrap{display:flex;align-items:center;gap:6px}
.fam-add-input-row{display:flex;align-items:center;gap:6px}
.fam-ticker-input{background:#1a1f2e;border:1px solid var(--border);color:var(--text);padding:5px 10px;border-radius:6px;font-size:12px;width:80px;outline:none;text-transform:uppercase}
.fam-ticker-input:focus{border-color:#22c55e}
.fam-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fam-empty{grid-column:1/-1;text-align:center;padding:70px 20px;color:var(--muted);font-size:13px;display:flex;flex-direction:column;align-items:center;gap:8px}
.fam-card{background:var(--card);border:1px solid var(--border);border-radius:10px;overflow:hidden;display:flex;flex-direction:column}
.fam-wr-bar{height:5px;background:rgba(248,113,113,.2);flex-shrink:0}
.fam-wr-fill{height:5px;background:#34d399;transition:width .4s}
.fam-card-body{padding:16px;flex:1;display:flex;flex-direction:column}
.fam-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:3px}
.fam-ticker{font-size:22px;font-weight:700;color:#f1f5f9;letter-spacing:.01em;line-height:1}
.fam-ticker-sub{font-size:11px;color:var(--muted);margin-bottom:10px}
.fam-dim{color:var(--dim)!important}
.fam-atr-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}
.fam-atr-val{font-size:12px;font-weight:600;color:#94a3b8}
.fam-cat{font-size:10px;font-weight:700;padding:2px 8px;border-radius:10px;border:1px solid;background:transparent;letter-spacing:.02em}
.fam-divider{height:1px;background:#1e2433;margin:12px 0}
.fam-stats{display:flex;flex-direction:column;gap:5px}
.fam-stat-row{display:flex;justify-content:space-between;align-items:center}
.fam-stat-lbl{font-size:11px;color:var(--muted)}
.fam-stat-val{font-size:11px;font-weight:600;color:#94a3b8}
.fam-no-data{font-size:11px;color:var(--dim);text-align:center;padding:6px 0}
.fam-remove-btn{font-size:10px;padding:2px 6px;border-radius:4px;border:1px solid var(--border);background:transparent;color:var(--dim);cursor:pointer;transition:.15s;line-height:1.4;flex-shrink:0;margin-top:2px}
.fam-remove-btn:hover{border-color:#3d1212;color:#f87171}
@media(max-width:1100px){.fam-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.fam-grid{grid-template-columns:1fr}}
/* ── Characteristics editor ── */
.char-settings-list{display:flex;flex-direction:column;gap:10px}
.char-card{background:#1a1f2e;border:1px solid var(--border);border-radius:8px;padding:12px;cursor:default;transition:.15s}
.char-card.dragging{opacity:.4;border-style:dashed}
.char-card.drag-over{border-color:#22c55e;background:rgba(34,197,94,.06)}
.char-card-hd{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.drag-handle{font-size:16px;color:var(--dim);cursor:grab;user-select:none;line-height:1;flex-shrink:0}
.drag-handle:active{cursor:grabbing}
.char-label-inp{flex:1;background:#0d1117;border:1px solid #2a2f3e;color:var(--text);padding:4px 8px;border-radius:5px;font-size:13px;font-weight:600;outline:none}
.char-label-inp:focus{border-color:#22c55e}
.char-type-sel{flex-shrink:0;background:#0d1117;border:1px solid #2a2f3e;color:var(--muted);padding:4px 6px;border-radius:5px;font-size:11px;outline:none;cursor:pointer}
.char-type-sel:focus{border-color:#22c55e}
.char-del-btn{font-size:11px;padding:3px 7px;border-radius:4px;border:1px solid var(--border);background:transparent;color:var(--dim);cursor:pointer;transition:.15s;flex-shrink:0}
.char-del-btn:hover{border-color:#3d1212;color:#f87171}
.char-opts-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px;min-height:24px}
.char-opt-pill{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:3px 8px;border-radius:4px;background:#0d1117;border:1px solid #2a2f3e;color:#94a3b8;cursor:grab;user-select:none}
.char-opt-pill:active{cursor:grabbing}
.char-opt-pill.dragging{opacity:.3}
.char-opt-pill.drag-over{border-color:#22c55e;background:rgba(34,197,94,.08)}
.opt-del-btn{background:none;border:none;color:#4b5563;cursor:pointer;padding:0;font-size:13px;line-height:1;margin-left:2px}
.opt-del-btn:hover{color:#f87171}
.char-add-opt-row{display:flex;gap:6px;align-items:center;margin-top:4px}
.char-opt-inp{flex:1;background:#0d1117;border:1px solid #2a2f3e;color:var(--text);padding:4px 8px;border-radius:5px;font-size:11px;outline:none;max-width:180px}
.char-opt-inp:focus{border-color:#22c55e}
.char-add-form{margin-top:12px;background:#0d1117;border:1px solid var(--border);border-radius:8px;padding:14px}
/* ── Theme: fam-card / replay-card effects ── */
.fam-card,.replay-card{box-shadow:var(--card-shadow);backdrop-filter:var(--card-filter);border-radius:var(--card-radius)}
/* ── Theme: Neon – left border accent on metric cards ── */
:root[data-theme="dark"] .mc-accent-green{border:1px solid rgba(34,197,94,0.2);border-left:3px solid #22c55e}
:root[data-theme="dark"] .mc-accent-yellow{border:1px solid rgba(245,158,11,0.2);border-left:3px solid #f59e0b}
:root[data-theme="dark"] .mc-accent-cyan{border:1px solid rgba(34,211,238,0.2);border-left:3px solid #22d3ee}
:root[data-theme="dark"] .mc-accent-blue{border:1px solid rgba(59,130,246,0.2);border-left:3px solid #3b82f6}
:root[data-theme="dark"] .mc-accent-red{border:1px solid rgba(239,68,68,0.2);border-left:3px solid #ef4444}
/* ── Theme: Glass – Glassmorphism ── */
:root[data-theme="glass"] body{background:linear-gradient(135deg,#0B0F14 0%,#111827 40%,#0F172A 70%,#0B0F14 100%)}
:root[data-theme="glass"] .sidebar{background:linear-gradient(180deg,rgba(16,185,129,0.08) 0%,rgba(16,185,129,0) 100%),rgba(25,32,45,0.6);backdrop-filter:blur(16px) saturate(140%);border-right-color:rgba(255,255,255,0.08)}
:root[data-theme="glass"] .topbar{backdrop-filter:blur(16px) saturate(140%)}
:root[data-theme="glass"] .card:hover,:root[data-theme="glass"] .mc:hover,:root[data-theme="glass"] .cg:hover{box-shadow:0 12px 40px rgba(0,0,0,0.35);transition:box-shadow 0.2s ease-in-out}
:root[data-theme="glass"] .card,:root[data-theme="glass"] .mc,:root[data-theme="glass"] .cg,:root[data-theme="glass"] .btn,:root[data-theme="glass"] .ni{transition:all 0.2s ease-in-out}
:root[data-theme="glass"] .view.active{animation:glassIn 0.3s ease}
@keyframes glassIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
:root[data-theme="glass"] .field select:focus,:root[data-theme="glass"] .field input:focus,:root[data-theme="glass"] .meta-input:focus{box-shadow:0 0 0 2px rgba(34,197,94,0.15);border-color:rgba(34,197,94,0.4);outline:none}
:root[data-theme="glass"] .live{background:rgba(34,197,94,0.1);color:#22C55E;border-color:rgba(34,197,94,0.25);box-shadow:0 0 6px rgba(34,197,94,0.7)}
:root[data-theme="glass"] .btn{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.1)}
:root[data-theme="glass"] .btn:hover{background:rgba(255,255,255,0.12)}
:root[data-theme="glass"] .btn-primary{background:rgba(34,197,94,0.15);border-color:rgba(34,197,94,0.3);color:#22C55E}
:root[data-theme="glass"] .btn-primary:hover{background:rgba(34,197,94,0.22)}
:root[data-theme="glass"] .ni .ti{font-size:20px;color:#9CA3AF;opacity:1}
:root[data-theme="glass"] .ni:hover .ti,:root[data-theme="glass"] .ni.active .ti{color:#22C55E}
:root[data-theme="glass"] .ni:hover{background:rgba(255,255,255,0.04)}
:root[data-theme="glass"] .mc-icon-circle{background:rgba(var(--mc-accent-rgb),0.12)}
:root[data-theme="glass"] .mini-cal-up{background:rgba(34,197,94,0.15);color:#22C55E}
:root[data-theme="glass"] .mini-cal-dn{background:rgba(239,68,68,0.15);color:#EF4444}
:root[data-theme="glass"] .cal-day-cell.up{color:#22C55E}
:root[data-theme="glass"] .cal-day-cell.dn{color:#EF4444}
:root[data-theme="glass"] .cal-val.up{color:#22C55E}
:root[data-theme="glass"] .cal-val.dn{color:#EF4444}
:root[data-theme="glass"] .cal-year-total.up{color:#22C55E}
:root[data-theme="glass"] .cal-year-total.dn{color:#EF4444}
:root[data-theme="glass"] .fam-wr-fill{background:#22C55E}
:root[data-theme="glass"] table.tt tr:nth-child(even) td{background:rgba(255,255,255,0.02)}
:root[data-theme="glass"] table.tt tr:hover td{background:rgba(255,255,255,0.04)}
:root[data-theme="glass"] .buy{background:rgba(34,197,94,0.1);color:#22C55E;border-color:rgba(34,197,94,0.2)}
:root[data-theme="glass"] .sell{background:rgba(239,68,68,0.1);color:#EF4444;border-color:rgba(239,68,68,0.2)}
:root[data-theme="glass"] .tab.active{background:rgba(34,197,94,0.12);color:#22C55E;border-color:rgba(34,197,94,0.25)}
:root[data-theme="glass"] .replay-filter-btn.active{background:#22C55E}
:root[data-theme="glass"] ::-webkit-scrollbar{width:4px;height:4px;background:transparent}
:root[data-theme="glass"] ::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.1);border-radius:2px}
:root[data-theme="glass"] ::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.18)}
/* ── Theme: Clean – light theme overrides ── */
:root[data-theme="clean"] .mc{border:1px solid var(--border) !important}
:root[data-theme="clean"] .ni{color:#374151}
:root[data-theme="clean"] .ni:hover{color:#1a1a2a;background:rgba(0,0,0,0.04)}
:root[data-theme="clean"] .ni.active{color:#16a34a;background:#f0fdf4;border-left-color:#16a34a}
:root[data-theme="clean"] .logo-line1{color:#1a1a2a}
:root[data-theme="clean"] .av{background:#dcfce7;color:#16a34a}
:root[data-theme="clean"] .mc-val{color:#1a1a2a}
:root[data-theme="clean"] .mc-lbl{color:#9ca3af}
:root[data-theme="clean"] .mc-sub{color:#6b7280}
:root[data-theme="clean"] .card-t{color:#1a1a2a}
:root[data-theme="clean"] .sym{color:#1a1a2a}
:root[data-theme="clean"] .fam-ticker{color:#1a1a2a}
:root[data-theme="clean"] .replay-sym{color:#1a1a2a}
:root[data-theme="clean"] table.tt td{color:#374151}
:root[data-theme="clean"] table.tt th{color:#6b7280}
:root[data-theme="clean"] table.tt tr:hover td{background:#f9fafb}
:root[data-theme="clean"] tr[data-view]:hover td{background:#f3f4f6}
:root[data-theme="clean"] .live{background:#f0fdf4;color:#16a34a;border-color:#bbf7d0}
:root[data-theme="clean"] .btn{background:#ffffff;color:#374151;border-color:#e5e7eb}
:root[data-theme="clean"] .btn:hover{background:#f9fafb}
:root[data-theme="clean"] .btn-danger{color:#dc2626;border-color:#fecaca;background:#fff5f5}
:root[data-theme="clean"] .cal-card{background:#ffffff;border-color:#e5e7eb}
:root[data-theme="clean"] .cal-card-hd{color:#1a1a2a}
:root[data-theme="clean"] .cal-select{background:#f9fafb;border-color:#e5e7eb;color:#1a1a2a}
:root[data-theme="clean"] .cal-table th{border-bottom-color:#e5e7eb}
:root[data-theme="clean"] .cal-table td{border-bottom-color:#f3f4f6}
:root[data-theme="clean"] .cal-year-total{background:#ffffff;border-color:#e5e7eb}
:root[data-theme="clean"] .fam-card{background:#ffffff;border-color:#e5e7eb}
:root[data-theme="clean"] .fam-divider{background:#f3f4f6}
:root[data-theme="clean"] .fam-period-btns{background:#f3f4f6;border-color:#e5e7eb}
:root[data-theme="clean"] .fam-ticker-input{background:#f9fafb;border-color:#e5e7eb;color:#1a1a2a}
:root[data-theme="clean"] .replay-card{background:#ffffff;border-color:#e5e7eb}
:root[data-theme="clean"] .replay-img-wrap{background:#f3f4f6}
:root[data-theme="clean"] .replay-obs{background:#f9fafb;color:#374151;border-color:#e5e7eb}
:root[data-theme="clean"] .modal{background:#ffffff}
:root[data-theme="clean"] .modal-img-area{background:#f9fafb;border-color:#e5e7eb}
:root[data-theme="clean"] .view-info-grid{background:#f9fafb;border-color:#e5e7eb}
:root[data-theme="clean"] .view-label{color:#9ca3af}
:root[data-theme="clean"] .view-val{color:#1a1a2a}
:root[data-theme="clean"] .tab.active{background:rgba(34,197,94,0.12);color:#16a34a;border-color:rgba(34,197,94,0.3)}
:root[data-theme="clean"] .sel{background:#f9fafb;border-color:#e5e7eb;color:#374151}
:root[data-theme="clean"] .import-box{border-color:#d1d5db;background:rgba(0,0,0,0.02)}
:root[data-theme="clean"] .char-card{background:#f9fafb;border-color:#e5e7eb}
:root[data-theme="clean"] .char-label-inp{background:#ffffff;border-color:#d1d5db;color:#1a1a2a}
:root[data-theme="clean"] .char-opt-pill{background:#f9fafb;border-color:#d1d5db;color:#374151}
:root[data-theme="clean"] .char-opt-inp{background:#ffffff;border-color:#d1d5db;color:#1a1a2a}
:root[data-theme="clean"] .char-add-form{background:#f9fafb;border-color:#e5e7eb}
.combo-row{background:#0c110c;border:0.5px solid #1a2a1a;border-radius:8px;padding:10px 14px;display:flex;align-items:center;gap:12px;margin-bottom:6px;transition:transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;cursor:default}
.combo-row:hover{transform:translateY(-3px);background:#111811;box-shadow:0 4px 12px rgba(0,0,0,0.3)}
.combo-row.win{border-left:3px solid #22c55e}
.combo-row.loss{border-left:3px solid #f87171}
.combo-row.neutral{border-left:3px solid #fbbf24}
.combo-row.win:hover{box-shadow:0 4px 12px rgba(34,197,94,0.1)}
.combo-row.loss:hover{box-shadow:0 4px 12px rgba(248,113,113,0.1)}
.combo-row.neutral:hover{box-shadow:0 4px 12px rgba(251,191,36,0.1)}
.combo-row-tags{display:flex;flex-wrap:wrap;gap:4px;flex:1}
.combo-row-tag{font-size:11px;padding:4px 9px;border-radius:5px;background:#131a13;color:#94a3b8;border:0.5px solid #1a2a1a}
.combo-row-stats{display:flex;gap:16px;align-items:center;flex-shrink:0}
.combo-row-stat{font-size:11px;color:#6b7280;text-align:center}
.combo-row-stat strong{display:block;font-weight:500}

/* ============================================================
   FILTRO DE CARACTERÍSTICAS — barra fixa no Dashboard, entre
   Operações Recentes e Análise de Estratégia (#charFilterBar em
   index.html). Não flutua nem segue o scroll — é só mais uma seção
   no fluxo normal da página. Afeta apenas os gráficos de estratégia
   e a tabela de operações recentes (ver onCharFilterChange, app.js).
   ============================================================ */
.char-filter-sel{font-size:10px;padding:3px 6px;border-radius:5px;background:#131a13;border:0.5px solid #1a2a1a;color:#94a3b8;cursor:pointer}
.char-filter-sel.active{border-color:#22c55e;color:#4ade80}

/* ============================================================
   REPLAY ZOOM — overlay em tela cheia para ampliar a foto do trade
   ============================================================ */
.replay-zoom-btn{margin:8px 0 12px;align-self:center}
.replay-zoom-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,0.95);z-index:9999;display:none;align-items:center;justify-content:center}
.replay-zoom-overlay.open{display:flex}
.zv-stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:grab;touch-action:none}
.zv-stage.dragging{cursor:grabbing}
.replay-zoom-overlay img{max-width:90vw;max-height:88vh;object-fit:contain;border-radius:8px;transform-origin:center center;user-select:none;-webkit-user-drag:none;will-change:transform}
.zv-btn{position:absolute;z-index:2;background:rgba(20,20,24,.85);border:1px solid #2a2a35;color:#e2e8f0;border-radius:8px;cursor:pointer;font-size:18px;line-height:1;padding:10px 14px;transition:.15s}
.zv-btn:hover{background:rgba(212,175,90,.18);border-color:#d4af5a}
.zv-btn:disabled{opacity:.25;cursor:not-allowed}
.zv-close{top:18px;right:22px}
.zv-nav{top:50%;transform:translateY(-50%);font-size:26px;padding:16px 18px}
.zv-prev{left:22px}.zv-next{right:22px}
.zv-caption{position:absolute;top:20px;left:50%;transform:translateX(-50%);z-index:2;font-size:13px;color:#cbd5e1;background:rgba(20,20,24,.7);padding:6px 14px;border-radius:8px;pointer-events:none}
.zv-caption:empty{display:none}
.zv-tools{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:2;display:flex;align-items:center;gap:8px;background:rgba(20,20,24,.85);border:1px solid #2a2a35;border-radius:10px;padding:6px 10px}
.zv-tools .zv-btn{position:static;padding:6px 12px;font-size:16px}
.zv-tools .zv-reset{font-size:12px}
.zv-label{min-width:48px;text-align:center;font-size:12px;color:#94a3b8}
/* ── Fotos de Abertura ── */
.ab-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;background:var(--card);border:1px solid var(--border);border-radius:var(--card-radius);padding:16px;margin-bottom:18px}
.ab-field{display:flex;flex-direction:column;gap:5px;font-size:11px;color:var(--dim)}
.ab-field input[type=date]{background:#131a13;border:1px solid var(--border);color:var(--text);border-radius:6px;padding:7px 10px;font-size:13px;color-scheme:dark}
.ab-prev{width:120px;height:68px;border:1px dashed var(--border);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--dim);overflow:hidden;text-align:center}
.ab-prev img{width:100%;height:100%;object-fit:cover}
.ab-hint{font-size:11px;color:var(--dim);margin:-8px 0 16px}
.ab-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.ab-card{background:var(--card);border:1px solid var(--border);border-radius:var(--card-radius);overflow:hidden;display:flex;flex-direction:column}
.ab-thumb{height:150px;background:#0d1117;display:flex;align-items:center;justify-content:center;cursor:zoom-in;overflow:hidden;font-size:11px;color:var(--dim)}
.ab-thumb img{width:100%;height:100%;object-fit:cover}
.ab-info{padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.ab-date{font-size:14px;font-weight:700;color:var(--text)}
.ab-wd{font-size:10px;color:var(--dim);font-weight:500;margin-left:6px;text-transform:uppercase}
.ab-actions{display:flex;gap:6px;flex-wrap:wrap}
.ab-actions .btn{font-size:11px;padding:5px 10px}
.ab-danger{border-color:#d9635f!important;color:#d9635f!important}
.ab-modal{position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:10000;display:flex;align-items:center;justify-content:center}
.ab-modal-box{background:#101012;border:1px solid #2a2a35;border-radius:12px;padding:20px 22px;min-width:320px;max-width:440px;display:flex;flex-direction:column;gap:14px}
.ab-modal-box h3{margin:0;font-size:15px;color:#f1f5f9}
.ab-modal-box p{margin:0;font-size:13px;color:#94a3b8;line-height:1.5}
.ab-modal-box input[type=date]{background:#131a13;border:1px solid #1a2a1a;color:#e2e8f0;border-radius:6px;padding:8px 10px;font-size:13px;color-scheme:dark}
.ab-modal-err{color:#d9635f;font-size:12px;min-height:14px}
.ab-modal-btns{display:flex;gap:8px;justify-content:flex-end}

/* ============================================================
   ABA EVOLUÇÃO — cards de blocos de 20 trades + comparação
   ============================================================ */
.evolucao-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin-bottom:8px}
.evo-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:14px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;backdrop-filter:var(--card-filter)}
.evo-card:hover{transform:translateY(-2px);box-shadow:0 4px 14px rgba(0,0,0,.25)}
.evo-card.expanded{border-color:rgba(34,197,94,.4)}
.evo-card-hd{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:10px}
.evo-card-title{font-size:13px;font-weight:600;color:var(--text)}
.evo-card-range{font-size:10px;color:var(--dim);margin-top:3px}
.evo-compare-chk{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--muted);cursor:pointer;white-space:nowrap;flex-shrink:0}
.evo-card-stats{display:flex;justify-content:space-between;gap:8px;margin-bottom:8px}
.evo-stat{display:flex;flex-direction:column;gap:2px}
.evo-stat-lbl{font-size:9px;color:var(--dim);text-transform:uppercase;letter-spacing:.3px}
.evo-stat-val{font-size:14px;font-weight:600;color:var(--text)}
.evo-card-expand-hint{font-size:10px;color:var(--dim);display:flex;align-items:center;gap:3px}
.evo-card-detail{margin-top:10px;padding-top:10px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px}
.evo-detail-row{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}
.evo-cmp-up{color:#4ade80;font-size:11px;font-weight:600;display:inline-flex;align-items:center;gap:3px}
.evo-cmp-dn{color:#f87171;font-size:11px;font-weight:600;display:inline-flex;align-items:center;gap:3px}
.evo-cmp-eq{color:var(--dim);font-size:11px}
.evo-compare-table th:first-child,.evo-compare-table td:first-child{color:var(--muted)}
@media(max-width:700px){.evolucao-grid{grid-template-columns:1fr}}

/* Gráficos da aba Evolução (linha por bloco / barras de comparação) */
.evo-charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
@media(max-width:700px){.evo-charts-grid{grid-template-columns:1fr}}
/* Fade suave ao trocar entre modo linha (padrão) e modo barra (comparação) —
   como a seção inteira é substituída via innerHTML a cada troca, a animação
   dispara sozinha em cada elemento .evo-charts-fade recém-inserido */
.evo-charts-fade{animation:evoChartsFadeIn .3s ease}
@keyframes evoChartsFadeIn{from{opacity:0}to{opacity:1}}

/* Aba Matemática — cada métrica é um bloco grande com número total +
   explicação, tabela de faixas de referência, e gráfico de evolução
   por bloco de 20 trades */
.math-block-top{display:flex;gap:20px;flex-wrap:wrap;align-items:flex-start}
.math-value-col{flex:1;min-width:220px}
.math-value{font-size:34px;font-weight:700;line-height:1.15;margin-bottom:8px}
.math-explain{font-size:12px;color:var(--muted);line-height:1.6}
.math-explain-detail{display:flex;flex-direction:column;gap:10px}
.math-explain-part{font-size:12px;color:var(--muted);line-height:1.65}
.math-explain-lbl{display:block;font-size:9px;font-weight:700;color:var(--dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}
.math-explain-indicates{padding:10px 12px;border-radius:8px;background:rgba(224,184,74,0.06);border:1px solid rgba(224,184,74,0.2);color:var(--text2)}
.math-explain-indicates .math-explain-lbl{color:#e0b84a}
.math-range-col{flex:1;min-width:240px;display:flex;flex-direction:column;gap:6px}
.math-range-row{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-radius:6px;border:1px solid var(--border);font-size:12px}
.math-range-row.active{border-width:1.5px}
.math-no-data{font-size:12px;color:var(--dim);padding:8px 0}
.math-chart-wrap{margin-top:4px}
.math-chart{height:200px}
.math-chart-legend{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}
.math-legend-item{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--muted)}
.math-legend-swatch{width:12px;height:2px;border-radius:1px;flex-shrink:0}
.math-legend-swatch.dashed{width:12px;height:0;border-top:2px dashed #e0b84a;background:none}
@media(max-width:760px){.math-block-top{flex-direction:column}}

/* Tabela compacta de períodos de risco (MLPT) — deliberadamente NÃO
   usa table.tt (min-width:1100px, pensada pra tabela de trades) já
   que essa tem só 4 colunas curtas */
.math-periods-table{width:100%;border-collapse:collapse}
.math-periods-table th{font-size:9px;color:var(--dim);text-align:left;padding:7px 8px;border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.4px}
.math-periods-table td{font-size:12px;padding:8px;border-bottom:1px solid var(--table-td-border);color:var(--text2)}
.math-periods-table tr:hover td{background:rgba(255,255,255,.02)}


/* ── Resumo da estratégia filtrada (Painel) ── */
.strat-sum{background:var(--card);border:1px solid var(--border);border-radius:var(--card-radius);padding:14px 16px;margin-bottom:14px}
.strat-sum-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px;font-size:11px;color:var(--dim)}
.strat-sum-tag{background:#131a13;border:1px solid #1a2a1a;border-radius:5px;padding:2px 8px;color:#cbd5e1;font-size:11px}
.strat-sum-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.strat-sum-it{display:flex;align-items:center;gap:12px;background:#0c0c0e;border:1px solid var(--border);border-radius:9px;padding:12px 14px}
.strat-sum-it i{font-size:22px;color:var(--text2)}
.strat-sum-v{font-size:22px;font-weight:700;color:#f1f5f9;line-height:1.1}
.strat-sum-l{font-size:10px;color:var(--dim);text-transform:uppercase;letter-spacing:.5px;margin-top:3px}
.strat-sum-s{font-size:10px;color:var(--muted);margin-top:2px}
.strat-sum-v.up{color:#6fae6a}.strat-sum-v.dn{color:#d9635f}
@media(max-width:900px){.strat-sum-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ── Fotos de Abertura: grupos por data, várias fotos por dia ── */
.ab-prevs{display:flex;gap:6px;flex-wrap:wrap}
.ab-prev{position:relative}
.ab-prev-x{position:absolute;top:2px;right:2px;background:rgba(0,0,0,.7);border:1px solid #2a2a35;color:#e2e8f0;border-radius:4px;cursor:pointer;font-size:10px;line-height:1;padding:2px 5px}
.ab-prev-x:hover{border-color:#d9635f;color:#d9635f}
.ab-group{margin-bottom:22px}
.ab-group-h{display:flex;align-items:baseline;gap:8px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--border)}
.ab-group-h .ab-date{font-size:16px}
.ab-count{margin-left:auto;font-size:11px;color:var(--dim);background:#131a13;border:1px solid #1a2a1a;border-radius:10px;padding:1px 9px}
.ab-thumb{position:relative}
.ab-badge{position:absolute;top:6px;left:6px;background:rgba(0,0,0,.72);color:#e2e8f0;font-size:10px;font-weight:600;border-radius:5px;padding:2px 7px}

/* ---- Analisar FabFor (aba Familia) ---- */
.ff-box{margin-top:18px}
.ff-head{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap}
.ff-title{font-size:14px;font-weight:600;color:var(--text)}
.ff-sub{font-size:11px;color:var(--muted);margin-top:3px}
.ff-ctrl{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
.ff-lbl{display:flex;flex-direction:column;gap:3px;font-size:10px;color:var(--dim);text-transform:uppercase;letter-spacing:.4px}
.ff-date{background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:6px 8px;font-size:12px}
.ff-status{font-size:11px;color:var(--muted);margin-top:12px;min-height:14px;line-height:1.5}
.ff-status.err{color:var(--color-dn)}
.ff-res{margin-top:10px;overflow-x:auto}
.ff-tbl{width:100%;border-collapse:collapse;font-size:12px}
.ff-tbl th{text-align:left;font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--dim);padding:6px 8px;border-bottom:1px solid var(--border);white-space:nowrap}
.ff-tbl td{padding:8px;border-bottom:1px solid var(--border);vertical-align:top}
.ff-tbl td.num{white-space:nowrap;font-variant-numeric:tabular-nums}
.ff-sym{font-weight:600;color:var(--text)}
.ff-yes{color:var(--color-up);font-weight:600}
.ff-no{color:var(--dim)}
.ff-wait{color:var(--text);font-weight:600}
.ff-why{color:var(--muted);font-size:11px}
.ff-plan{color:var(--muted);font-size:11px;margin-top:4px}
.ff-note{font-size:10px;color:var(--dim);margin-top:10px;line-height:1.5}

/* Painel: Ativos com FabFor */
.fp-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px}
.fp-when{font-size:10px;color:var(--dim)}
.fp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px;max-height:150px;overflow-y:auto}
.fp-chip{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:5px 8px;border-radius:7px;background:rgba(255,255,255,.04);border:1px solid var(--sr-border);font-size:12px;font-weight:600;cursor:pointer;transition:transform .12s,background .12s,border-color .12s}
.fp-chip:hover{transform:translateY(-1px);background:rgba(255,255,255,.08)}
.fp-chip.yes{border-color:rgba(47,209,106,.5);background:rgba(47,209,106,.10)}
.fp-chip.yes .fp-mk{color:#2fd16a}
.fp-chip.no{opacity:.65}.fp-chip.no .fp-mk{color:#ff5a5f}
.fp-chip.ele{box-shadow:0 0 0 1px #2fd16a inset}
.fp-mk{font-size:13px;font-weight:700}
.fp-plan{font-size:10px;color:var(--dim);margin-top:8px}
.fp-empty{font-size:11px;color:var(--dim)}

/* ── Barras de rolagem (vertical e horizontal): finas, escuras, arredondadas ── */
*{scrollbar-width:thin;scrollbar-color:#2b3a30 transparent}
::-webkit-scrollbar{width:12px;height:12px;background:transparent}
::-webkit-scrollbar-track{background:transparent;margin:4px}
::-webkit-scrollbar-thumb{background:#26332b;border-radius:10px;border:3px solid transparent;background-clip:padding-box;transition:background-color .18s ease}
::-webkit-scrollbar-thumb:hover{background:#3c5a46;background-clip:padding-box;border:3px solid transparent}
::-webkit-scrollbar-thumb:active{background:#22c55e;background-clip:padding-box;border:3px solid transparent}
::-webkit-scrollbar-corner{background:transparent}
.sticky-scroll-floating{background:rgba(8,7,10,.92);backdrop-filter:blur(6px);border-top:1px solid #1d2a21;height:16px}
.sticky-scroll-floating::-webkit-scrollbar{height:12px}
.sticky-scroll-floating::-webkit-scrollbar-thumb{background:#2f4a38;background-clip:padding-box}
.views{scroll-behavior:smooth}

/* ── Análise quantitativa: formulário "Adicionar operação" ── */
.qe-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px 16px;align-items:end}
.qe-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.qe-wide{grid-column:span 2}
.qe-lbl{font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.3px}
.qe-ctl{width:100%;height:36px;padding:0 12px;border-radius:8px;background:var(--input-bg);border:1px solid var(--border);color:var(--text);font-size:13px;font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s}
.qe-ctl:hover{border-color:rgba(34,197,94,.35)}
.qe-ctl:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(34,197,94,.15)}
.qe-select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:32px;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%;background-size:5px 5px;background-repeat:no-repeat}
.qe-select option{background:#12121e;color:var(--text)}
.qe-money{position:relative;display:block}
.qe-money>span{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--dim);pointer-events:none}
.qe-money .qe-ctl{padding-left:24px}
.qe-seg{display:flex;height:36px;padding:3px;gap:3px;border-radius:8px;background:var(--input-bg);border:1px solid var(--border)}
.qe-opt{flex:1;min-width:0;border:none;border-radius:6px;background:transparent;color:var(--muted);font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}
.qe-opt:hover{color:var(--text);background:rgba(255,255,255,.05)}
.qe-opt:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.qe-opt.on{background:rgba(34,197,94,.16);color:#eafff1;box-shadow:inset 0 0 0 1px rgba(34,197,94,.45)}
.qe-opt.sell.on{background:rgba(248,113,113,.16);color:#ffecec;box-shadow:inset 0 0 0 1px rgba(248,113,113,.45)}
.qe-add{height:36px;border-radius:8px;font-size:13px;font-weight:600;white-space:nowrap}
:root[data-theme="clean"] .qe-opt.on{color:#14532d}:root[data-theme="clean"] .qe-opt.sell.on{color:#7f1d1d}
:root[data-theme="clean"] .qe-select option{background:#fff}
@media (max-width:900px){.qe-wide{grid-column:auto}}
@media (prefers-reduced-motion:reduce){.qe-ctl,.qe-opt{transition:none}}

/* Analise quantitativa: grafico de bolinhas */
.qs-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.qs-tg{display:flex;flex-wrap:wrap;gap:6px}
.qs-chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--dim);font:600 12px/1 inherit;font-family:inherit;cursor:pointer;transition:color .15s,background .15s,border-color .15s}
.qs-chip.on{color:var(--text);background:var(--input-bg);border-color:rgba(255,255,255,.16)}
.qs-chip:not(.on) .qs-dot{opacity:.3}
.qs-chip:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.qs-dot{display:inline-block;width:9px;height:9px;border-radius:50%;vertical-align:middle;margin-right:2px}
.qs-y{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}
.qs-y .qe-select{height:32px;width:auto;min-width:140px}
.qs-wrap{position:relative}
.qs-svg{width:100%;height:auto;display:block}
.qs-grid{stroke:var(--border);stroke-width:1}
.qs-zero{stroke:var(--dim)}
.qs-tick{fill:var(--dim);font-size:11px}
.qs-ax{fill:var(--muted);font-size:11px}
.qs-pt{fill-opacity:.8;stroke:var(--card);stroke-width:1.2;cursor:pointer;transition:fill-opacity .12s,r .12s}
.qs-hl .qs-pt{fill-opacity:.12;stroke-opacity:.15}
.qs-hl .qs-pt.on{fill-opacity:1;stroke-opacity:1;r:8;stroke:#fff;stroke-width:2}
.qs-pt:focus{outline:none}
.qs-pt.qs-furou{stroke:#fbbf24;stroke-width:2.2}
.qs-hl .qs-pt.qs-furou.on{stroke:#fbbf24;stroke-width:3}
.qs-tip{position:absolute;z-index:5;max-width:280px;padding:8px 10px;border-radius:8px;background:var(--card);border:1px solid var(--border);box-shadow:0 6px 24px rgba(0,0,0,.35);font-size:12px;line-height:1.6;color:var(--text);pointer-events:none}
.qs-empty{padding:28px 8px;text-align:center;color:var(--dim);font-size:13px}
:root[data-theme="clean"] .qs-chip.on{border-color:#d1d5db}
:root[data-theme="clean"] .qs-hl .qs-pt.on{stroke:#111}
@media (prefers-reduced-motion:reduce){.qs-chip,.qs-pt{transition:none}}
.qe-editando{box-shadow:0 0 0 1px rgba(251,191,36,.55) inset}
#qeCancel[hidden]{display:none}
.qe-sec{margin-top:28px}
.qe-sec-hd{font-size:17px;font-weight:700;color:var(--text);padding:14px 2px 12px;margin-bottom:14px;border-top:1px solid var(--border);letter-spacing:.01em}
.qe-sec-hd::before{content:"";display:inline-block;width:4px;height:16px;border-radius:2px;background:var(--accent);margin-right:10px;vertical-align:-2px}
.qs-multi path{stroke:none}
.qs-multi .qs-multi-borda{fill:none}
.qs-multi{transform-box:fill-box;transform-origin:center;transition:transform .12s}
.qs-hl .qs-multi.on{transform:scale(1.45)}
@media (prefers-reduced-motion:reduce){.qs-multi{transition:none}}
.qs-svg{cursor:grab;user-select:none}
.qs-arrastando .qs-svg{cursor:grabbing}
.qs-arrastando .qs-tip{display:none}
.qs-zoom{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:4px;font-size:11px;color:var(--dim)}
.qs-zoom .qs-chip{height:26px}
.qs-y{display:flex;align-items:center;gap:8px}
.qs-fullbtn{height:32px;white-space:nowrap}
.card.qs-full{position:fixed;inset:0;z-index:9000;margin:0!important;border-radius:0;overflow:auto;background:var(--bg);padding:18px 22px;backdrop-filter:none}
body.qs-full-aberto{overflow:hidden}
.qs-flex{display:flex;gap:12px;align-items:flex-start}
.qs-main{flex:1;min-width:0;position:relative}
.qs-rank{flex:none;width:230px;overflow-y:auto;border:1px solid var(--border);border-radius:8px;background:var(--input-bg);font-size:12px}
.qs-rank-hd{position:sticky;top:0;z-index:1;padding:8px 10px;font-weight:600;color:var(--muted);background:var(--card);border-bottom:1px solid var(--border)}
.qs-rank-row{display:grid;grid-template-columns:26px 1fr auto auto;gap:6px;align-items:center;padding:5px 10px;border-bottom:1px solid var(--table-td-border);cursor:pointer;color:var(--text2)}
.qs-rank-row:hover,.qs-rank-row.on{background:rgba(34,197,94,.12);color:var(--text)}
.qs-rank-row.on{box-shadow:inset 3px 0 0 var(--accent)}
.qs-rank-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.qs-rank-n{color:var(--dim);font-variant-numeric:tabular-nums}
.qs-rank-sym{font-weight:600;color:var(--text)}
.qs-rank-d{color:var(--dim);font-variant-numeric:tabular-nums}
.qs-rank-v{font-weight:700;font-variant-numeric:tabular-nums;text-align:right;min-width:40px}
@media (max-width:900px){.qs-flex{flex-direction:column}.qs-rank{width:100%;max-height:260px}}
.qs-rank-hd{padding:6px}
.qs-rank-tg{display:flex;gap:3px;padding:2px;border-radius:7px;background:var(--input-bg);border:1px solid var(--border)}
.qs-rank-b{flex:1;height:26px;border:none;border-radius:5px;background:transparent;color:var(--muted);font:600 11px/1 inherit;font-family:inherit;cursor:pointer;white-space:nowrap}
.qs-rank-b:hover{color:var(--text)}
.qs-rank-b.on{background:rgba(34,197,94,.16);color:var(--text);box-shadow:inset 0 0 0 1px rgba(34,197,94,.45)}
.qs-rank-b:focus-visible{outline:2px solid var(--accent);outline-offset:1px}

/* ---- Familia: botao e lista "Acompanhar ATR" (04/11) ---- */
.fam-atr-btn{border-color:rgba(224,184,74,.5);color:var(--gold);background:rgba(224,184,74,.08);font-weight:600}
.fam-atr-ov{position:fixed;inset:0;z-index:9000;background:rgba(0,0,0,.6);display:none;align-items:flex-start;justify-content:center;padding:6vh 16px 16px}
.fam-atr-ov.open{display:flex}
.fam-atr-box{width:100%;max-width:420px;max-height:88vh;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.fam-atr-head{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--border)}
.fam-atr-head>div{flex:1;min-width:0}
.fam-atr-title{font-size:15px;font-weight:700;color:var(--text)}
.fam-atr-sub{font-size:11px;color:var(--muted);margin-top:2px}
.fam-atr-list{overflow-y:auto;padding:4px 16px 10px}
.fam-atr-row2{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--border)}
.fam-atr-row2:last-child{border-bottom:none}
.fam-atr-sym{font-size:17px;font-weight:700;color:var(--text);letter-spacing:.3px}
.fam-atr-right{display:flex;align-items:center;gap:10px}
.fam-atr-num{font-size:19px;font-weight:600;color:var(--gold);font-variant-numeric:tabular-nums;min-width:80px;text-align:right}
/* Analise quantitativa: lista "O que ja esta guardado" mostra ~6 ativos e rola o resto */
.qa-guardado{max-height:var(--qa-guardado-h,252px);overflow-y:auto}
.qa-guardado thead th{position:sticky;top:0;z-index:1;background:var(--card)}
/* Analise quantitativa: "Operacoes analisadas" mostra ~5 e rola o resto */
.qe-ops{max-height:var(--qe-ops-h,268px);overflow-y:auto}
.qe-ops thead th{position:sticky;top:0;z-index:1;background:var(--card)}
/* Filtrar analise (05/11/2026): dropdown igual ao de antes, lista com caixinhas */
.cf-group{position:relative}
.cf-btn{display:inline-flex;align-items:center;gap:5px;font-family:inherit;line-height:1.3}
.cf-btn i{font-size:10px;opacity:.7;transition:transform .15s ease}
.cf-group.open .cf-btn i{transform:rotate(180deg)}
.cf-menu{display:none;position:absolute;top:calc(100% + 4px);left:0;z-index:50;min-width:150px;max-height:280px;overflow-y:auto;background:#0f160f;border:0.5px solid #2a3d2a;border-radius:7px;padding:4px;box-shadow:0 8px 24px rgba(0,0,0,.45)}
.cf-group.open .cf-menu{display:block}
.cf-toggle{display:block;width:100%;text-align:left;font-size:10px;background:none;border:0;border-bottom:0.5px solid #1a2a1a;padding:5px 8px 6px;margin-bottom:3px;color:#6b7280;cursor:pointer;white-space:nowrap;font-family:inherit}
.cf-toggle:hover{color:#4ade80}
.cf-opt{display:flex;align-items:center;gap:7px;font-size:11px;color:#6b7280;padding:5px 8px;border-radius:5px;cursor:pointer;user-select:none;white-space:nowrap}
.cf-opt:hover{background:#131a13}
.cf-opt input{appearance:none;-webkit-appearance:none;margin:0;width:12px;height:12px;border:1px solid #3a4a3a;border-radius:3px;background:#0c110c;display:grid;place-content:center;cursor:pointer;flex-shrink:0;transition:background .12s ease,border-color .12s ease}
.cf-opt input::after{content:"";width:6px;height:3px;border-left:1.5px solid #0c110c;border-bottom:1.5px solid #0c110c;transform:rotate(-45deg) translate(0,-1px);opacity:0}
.cf-opt input:checked{background:#22c55e;border-color:#22c55e}
.cf-opt input:checked::after{opacity:1}
.cf-opt input:focus-visible{outline:1px solid #4ade80;outline-offset:1px}
.cf-opt:has(input:checked){color:#cbd5e1}
.qs-corr{margin-left:auto;color:var(--text2)}


/* Operações: seletor "Minhas operações" x "Operações de Outras Contas" (só o administrador, 06/11/2026) */
.ops-switch{display:inline-flex;background:var(--input-bg);border:1px solid var(--border);border-radius:8px;padding:3px;gap:2px;margin-bottom:12px}
.ops-sw-btn{font-size:12px;font-weight:600;padding:6px 14px;border-radius:6px;border:none;background:transparent;color:var(--muted);cursor:pointer;transition:.15s;font-family:inherit}
.ops-sw-btn.on{background:var(--accent);color:#fff}
.ops-sw-select{background:var(--input-bg);border:1px solid var(--border);color:var(--text);padding:5px 8px;border-radius:6px;font-size:12px;font-family:inherit;max-width:240px}

/* Analise quantitativa: filtro por caracteristica (07/11) */
.qs-filtros{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:-2px 0 10px}
.qs-filtros:empty{display:none}
.qs-filtros-lbl{font-size:11px;color:var(--muted);display:inline-flex;align-items:center;gap:4px;margin-right:2px}
.qs-filtros .char-filter-sel{font-size:11px;padding:4px 8px}
.qs-filtros-limpar:hover{color:#4ade80}
.qs-rank-b.qs-rank-wide{flex:1.7;padding:0 4px}
.qs-rank-tg:has(.qs-rank-wide) .qs-rank-b{font-size:11px;font-weight:600}

/* Analise quantitativa: foto da operacao (07/11) */
.qe-foto{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:36px}
.qe-foto-prev{height:36px;max-width:90px;object-fit:cover;border-radius:5px;border:1px solid var(--border)}
.qe-foto-nome{font-size:11px;color:var(--dim)}
/* Replay quantitativo */
#view-quantreplay .qs-filtros{margin:0}
.qr-val{font-size:12px;color:var(--text2, #cbd5e1)}
