/* Atlas · Pulso del mercado: vista limpia, alerta roja/verde, medidor de miedo */
:root{--pulse-red:#ff4d4d;--pulse-green:#3fe08f;--pulse-amber:#f2c14e}

/* ── Vista limpia: solo paneles principales en la pantalla de inicio ── */
body.atlas-clean:not(.category-window) .dashboard>.panel:not(.is-main){display:none!important}
body.atlas-clean:not(.category-window):not(.wow-open) .atlas-wow{display:none!important}
.category-launcher-list .atlas-wow-launch.active{border-color:var(--lime)!important;color:var(--lime)!important}
body.atlas-clean:not(.category-window) .dashboard{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)!important}
body.atlas-clean:not(.category-window) .dashboard>.panel.is-main{grid-column:auto!important;min-height:330px}
body.atlas-clean:not(.category-window) .dashboard>#atlas-view{order:1!important}
body.atlas-clean:not(.category-window) .dashboard>#news{order:2!important}
body.atlas-clean:not(.category-window) .dashboard>#liquidity{order:3!important}
body.atlas-clean:not(.category-window) .dashboard>#watchlist{order:4!important}
@media(max-width:900px){body.atlas-clean:not(.category-window) .dashboard{grid-template-columns:minmax(0,1fr)!important}}

.category-launcher-list .atlas-bot-launch{color:#2fb8ff!important;border-color:#2fb8ff!important;font-weight:700;box-shadow:0 0 12px #2fb8ff55}
.main-nav .atlas-bot-nav{color:#2fb8ff!important}
.pulse-view-toggle{margin-left:auto;height:24px;padding:0 10px;border:1px solid #53604d;border-radius:3px;background:linear-gradient(180deg,#3a4536,#20271f);color:#d0d8c6;font:600 13px var(--display);cursor:pointer}
.pulse-view-toggle:hover{filter:brightness(1.2)}

/* ── Alerta roja / verde (toda la terminal) ── */
.pulse-overlay{position:fixed;inset:0;z-index:60;pointer-events:none;opacity:0;transition:opacity .2s}
body.pulse-down .pulse-overlay{opacity:1;box-shadow:inset 0 0 0 6px var(--pulse-red),inset 0 0 120px #ff3b3b88;background:#ff2a2a14;animation:pulse-blink .9s steps(2,end) infinite}
body.pulse-up .pulse-overlay{opacity:1;box-shadow:inset 0 0 0 6px var(--pulse-green),inset 0 0 120px #2bd98f88;background:#2bd98f12;animation:pulse-blink .9s steps(2,end) infinite}
body.pulse-down .topbar{background:linear-gradient(180deg,#5a1717,#2a0d0d)!important;border-bottom-color:var(--pulse-red)!important}
body.pulse-up .topbar{background:linear-gradient(180deg,#0f4a2c,#0a2618)!important;border-bottom-color:var(--pulse-green)!important}
body.pulse-down .panel{border-color:#a33!important}
body.pulse-up .panel{border-color:#2a8a5a!important}
@keyframes pulse-blink{0%{opacity:1}50%{opacity:.35}100%{opacity:1}}

.pulse-banner{position:fixed;z-index:70;top:calc(env(safe-area-inset-top,0px) + 74px);left:50%;transform:translateX(-50%);width:min(860px,calc(100% - 24px));display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:14px 18px;border-radius:8px;color:#fff;box-shadow:0 12px 40px #000c}
.pulse-banner[data-dir="down"]{background:linear-gradient(135deg,#b3161b,#6e0b0e);border:2px solid var(--pulse-red);animation:pulse-shake .5s ease 2}
.pulse-banner[data-dir="up"]{background:linear-gradient(135deg,#0f8a50,#085230);border:2px solid var(--pulse-green);animation:pulse-shake .5s ease 2}
.pulse-banner-main{display:flex;flex-direction:column;gap:6px;min-width:0}
.pulse-title{font:700 clamp(17px,2.2vw,24px) var(--display);letter-spacing:.06em}
.pulse-detail{display:flex;flex-wrap:wrap;gap:6px 12px;font:600 15px var(--mono)}
.pulse-detail span{padding:2px 7px;border-radius:4px;background:#0004}
.pulse-detail small{opacity:.85;font:14px var(--mono);align-self:center}
.pulse-banner-actions{display:flex;gap:8px}
.pulse-banner-actions button{height:32px;padding:0 12px;border-radius:5px;border:1px solid #fff8;background:#0003;color:#fff;font:600 14px var(--display);cursor:pointer}
.pulse-banner-actions button:hover{background:#0006}
@keyframes pulse-shake{0%,100%{transform:translateX(-50%)}25%{transform:translateX(calc(-50% - 6px))}75%{transform:translateX(calc(-50% + 6px))}}

/* ── Medidor de miedo (VIX + bono 10 años) ── */
.pulse-fear{display:flex;align-items:center;gap:8px;height:40px;padding:0 10px;border:1px solid #4b5846;border-radius:5px;background:linear-gradient(180deg,#232b22,#171c17);color:#dfe6d6;cursor:pointer;text-align:left;white-space:nowrap}
.pulse-fear:hover{filter:brightness(1.15)}
.pf-dot{width:10px;height:10px;border-radius:50%;background:#7c8a76;flex:none}
.pf-main{display:flex;flex-direction:column;line-height:1.05}
.pf-main b{font:600 11px var(--display);letter-spacing:.12em;color:#9aa596}
.pf-main em{font:700 14px var(--display);font-style:normal;letter-spacing:.06em}
.pf-sub{font:13px var(--mono);color:#b9c3b3}
.pulse-fear[data-level="calm"] .pf-dot{background:var(--pulse-green)} .pulse-fear[data-level="calm"] em{color:var(--pulse-green)}
.pulse-fear[data-level="normal"] .pf-dot{background:#9fd46b} .pulse-fear[data-level="normal"] em{color:#c9e39a}
.pulse-fear[data-level="nervous"] .pf-dot{background:var(--pulse-amber)} .pulse-fear[data-level="nervous"] em{color:var(--pulse-amber)}
.pulse-fear[data-level="fear"] .pf-dot{background:#ff8a3d;box-shadow:0 0 8px #ff8a3d} .pulse-fear[data-level="fear"] em{color:#ff9f5e}
.pulse-fear[data-level="panic"]{border-color:var(--pulse-red)} .pulse-fear[data-level="panic"] .pf-dot{background:var(--pulse-red);box-shadow:0 0 10px var(--pulse-red);animation:pulse-blink .8s steps(2,end) infinite} .pulse-fear[data-level="panic"] em{color:var(--pulse-red)}
.pulse-fear[data-combo="refugio"]{border-color:#ff8a3d}
@media(max-width:1100px){.pulse-fear .pf-sub{display:none}}

.ticker-card.pulse-card{outline:1px solid #2fb8ff33}

/* ── Ajustes de la alerta ── */
.pulse-settings{position:fixed;z-index:80;top:calc(env(safe-area-inset-top,0px) + 70px);right:max(12px,env(safe-area-inset-right,0px));width:min(400px,calc(100% - 24px));max-height:calc(100vh - 100px);overflow:auto;padding:14px;border:1px solid #687653;border-radius:7px;background:linear-gradient(160deg,#252d23,#151a15);color:#e6ecdd;box-shadow:0 18px 50px #000d;display:flex;flex-direction:column;gap:10px;font:14px var(--sans)}
.pulse-settings header{display:flex;justify-content:space-between;align-items:center}
.pulse-settings header b{font:700 14px var(--display);letter-spacing:.1em;color:var(--lime)}
.pulse-x{width:28px;height:28px;border:1px solid #53604d;border-radius:4px;background:transparent;color:#e6ecdd;font-size:18px;cursor:pointer}
.pulse-status{margin:0;font:13px var(--mono);color:#b9c3b3;overflow-wrap:anywhere}
.pulse-help{margin:0;color:#c8d0c1;line-height:1.45}
.pulse-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pulse-grid label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#a5b09d}
.pulse-grid input,.pulse-grid select{height:30px;padding:0 6px;border:1px solid #4b5846;border-radius:4px;background:#101410;color:#edf0e6;font:14px var(--mono);width:100%}
.pulse-check{display:flex;gap:8px;align-items:center;color:#d0d8c6}
.pulse-actions{display:flex;flex-wrap:wrap;gap:6px}
.pulse-actions button{height:30px;padding:0 10px;border:1px solid #53604d;border-radius:4px;background:linear-gradient(180deg,#3a4536,#20271f);color:#e6ecdd;font:600 13px var(--display);cursor:pointer}
.pulse-actions #pulse-test-down{border-color:#a33;color:#ffb3b3}
.pulse-actions #pulse-test-up{border-color:#2a8a5a;color:#a8f0c8}
.pulse-actions button:disabled{opacity:.6;cursor:default}
.pulse-log{display:flex;flex-direction:column;gap:4px;font:13px var(--mono);border-top:1px solid #3a4439;padding-top:8px}
.pulse-log small{color:#9aa596}
.pulse-settings .neg,.pulse-detail .neg,.pulse-log .neg{color:#ff9a9a}
.pulse-settings .pos,.pulse-detail .pos,.pulse-log .pos{color:#9ff0c4}
.pulse-detail .neg,.pulse-detail .pos{color:#fff}
@media(max-width:560px){.pulse-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){body.pulse-down .pulse-overlay,body.pulse-up .pulse-overlay,.pulse-banner,.pulse-fear .pf-dot{animation:none!important}}

/* ── Fuerza relativa vs SPY ── */
.strength-box{margin:0 13px 8px;padding:8px 10px;border:1px solid #2fb8ff44;border-radius:6px;background:linear-gradient(180deg,#0f1a26,#0b121b)}
.strength-box[data-mode="falling"]{border-color:#ff4d4d88;box-shadow:0 0 18px #ff4d4d22}
.strength-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.strength-label{display:flex;flex-direction:column;gap:1px;min-width:190px}
.strength-label b{font:700 13px var(--display);letter-spacing:.12em;color:#2fb8ff}
.strength-sub{font:13px var(--mono);color:#b9c3b3}
.strength-sub .neg{color:#ff8080}
.strength-chips{display:flex;flex-wrap:wrap;gap:6px;flex:1;min-width:0;align-items:center}
.rs-chip{display:flex;gap:6px;align-items:baseline;height:28px;padding:0 9px;border-radius:5px;border:1px solid;background:transparent;cursor:pointer;font:13px var(--mono)}
.rs-chip b{font:700 13px var(--display);color:#eef3e6}
.rs-chip.pos{border-color:#2ecc8077;background:#2ecc8018;color:#8ff0bd}
.rs-chip.neg{border-color:#e6484877;background:#e6484818;color:#ff9c9c}
.rs-chip:hover{filter:brightness(1.25)}
.rs-sep{width:1px;height:22px;background:#3a4a5a;margin:0 4px}
.rs-empty{font:13px var(--mono);color:#c8d0c1}
.strength-toggle{height:28px;padding:0 10px;border:1px solid #2fb8ff66;border-radius:4px;background:#2fb8ff14;color:#9fdcff;font:600 13px var(--display);cursor:pointer;white-space:nowrap}
.strength-map{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;margin-top:10px}
.rs-group h3{margin:0 0 5px;font:600 12px var(--display);letter-spacing:.1em;color:#9fb0c0;text-transform:uppercase}
.rs-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:4px}
.rs-tile{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-height:58px;padding:5px 6px;border:1px solid #ffffff22;border-radius:4px;color:#fff;cursor:pointer;text-align:left}
.rs-tile b{font:700 13px var(--display)}
.rs-tile small{font:11px var(--sans);opacity:.85;line-height:1.1}
.rs-tile span{font:12px var(--mono)}
.rs-tile em{font:11px var(--mono);font-style:normal;opacity:.9}
.rs-tile:hover{outline:1px solid #fff}
.rs-note{grid-column:1/-1;margin:2px 0 0;font:12px var(--sans);color:#9aa596}
@media(max-width:720px){.strength-box{margin:0 7px 8px}}

/* ── Plan del día ── */
.category-launcher-list .atlas-plan-launch{color:#f2c14e!important;border-color:#f2c14e!important;font-weight:700}
.plan-ready-bar{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;margin:0 13px 8px;padding:12px 16px;border:2px solid #f2c14e;border-radius:8px;background:linear-gradient(135deg,#3a2f0c,#1d1806);color:#fff3cf;text-decoration:none;animation:pulse-blink 1.4s ease-in-out 4}
.plan-ready-bar b{font:700 16px var(--display);letter-spacing:.08em;color:#f2c14e}
.plan-ready-bar span{font:14px var(--sans)}

/* ── Portada de bienvenida ── */
.atlas-cover{position:fixed;inset:0;z-index:200;display:grid;place-items:end center;background:#050913;cursor:default;transition:opacity .7s ease,visibility .7s}
.atlas-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:coverZoom 7s ease-out forwards}
.atlas-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(5,9,19,.85))}
.atlas-cover button{position:relative;z-index:1;margin-bottom:max(6vh,calc(env(safe-area-inset-bottom,0px) + 24px));height:52px;padding:0 34px;border-radius:12px;border:1px solid #ffe08a;
  background:linear-gradient(180deg,#ffe7a3 0%,#f2c14e 45%,#c9902f 75%,#a8741f 100%);color:#2a1a02;font:700 17px var(--display);letter-spacing:.18em;cursor:pointer;
  box-shadow:inset 0 1px rgba(255,255,255,.75),inset 0 -2px 4px rgba(90,55,0,.55),0 4px 0 #6b4710,0 10px 30px rgba(242,193,78,.4)}
.atlas-cover button:hover{filter:brightness(1.08);transform:translateY(-1px)}
.atlas-cover.hide{opacity:0;visibility:hidden}
@keyframes coverZoom{from{transform:scale(1.06)}to{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.atlas-cover img{animation:none}}

/* ── Gatillos del plan en vivo ── */
.trig-box{margin:0 13px 8px;padding:10px 12px;border:1px solid #f2c14e66;border-radius:8px;background:linear-gradient(180deg,#14130a,#0b0f16)}
.trig-head{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;margin-bottom:8px}
.trig-head>b{font:700 13px var(--display);letter-spacing:.12em;color:#f2c14e}
.trig-sub{font:13px var(--mono);color:#b9c3b3;flex:1;min-width:200px}
.trig-add{display:flex;gap:10px;align-items:center}
.trig-add input{height:28px;width:100px;padding:0 8px;border:1px solid #6b5a2a;border-radius:5px;background:#0a0d12;color:#f3ecd6;font:13px var(--mono);text-transform:uppercase}
.trig-add a{color:#f2c14e;font:600 13px var(--display);text-decoration:none;white-space:nowrap}
.trig-rows{display:grid;gap:5px}
.trig-row{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;padding:7px 10px;border:1px solid #2a3442;border-radius:6px;background:#0d131b;font:14px var(--mono)}
.trig-row[data-st="bear"]{border-color:#ff5a6e;background:linear-gradient(90deg,#3a0f16,#0d131b 60%)}
.trig-row[data-st="bull"]{border-color:#3fe08f;background:linear-gradient(90deg,#0d3322,#0d131b 60%)}
.t-sym{font:700 15px var(--display);color:#eef3e6;min-width:52px}
.t-px{color:#eef3e6;min-width:78px}
.t-lv{color:#b9c3b3}.t-lv b{font-weight:600}.t-lv small{opacity:.75}
.t-lv.bear b{color:#ff8a98}.t-lv.bull b{color:#8ff0bd}
.t-badge{font:700 12px var(--display);letter-spacing:.08em;padding:3px 8px;border-radius:4px}
.t-badge.wait{color:#c8d0c1;background:#ffffff10}
.t-badge.bear{color:#fff;background:#d6283d;box-shadow:0 0 10px #ff5a6e88}
.t-badge.bull{color:#04120a;background:#3fe08f;box-shadow:0 0 10px #3fe08f88}
.t-tg{color:#c8d0c1}.t-tg i{font-style:normal}.t-tg i.hit{color:#f2c14e;text-decoration:line-through}
.t-x{margin-left:auto;width:24px;height:24px;border:1px solid #3a4452;border-radius:4px;background:transparent;color:#9aa596;cursor:pointer}
.t-err{color:#ff9aa6;font-size:13px}.t-wait{color:#9aa596}
.trig-banner{position:fixed;z-index:75;left:50%;bottom:max(20px,env(safe-area-inset-bottom,0px));transform:translateX(-50%);width:min(820px,calc(100% - 24px));display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:14px 18px;border-radius:10px;color:#fff;box-shadow:0 14px 40px #000c}
.trig-banner[data-kind="bear"]{background:linear-gradient(135deg,#b3161b,#5e0a0d);border:2px solid #ff5a6e}
.trig-banner[data-kind="bull"]{background:linear-gradient(135deg,#0f8a50,#064326);border:2px solid #3fe08f}
.trig-banner[data-kind="info"]{background:linear-gradient(135deg,#6b5312,#2c2306);border:2px solid #f2c14e}
.trig-banner.flash{animation:pulse-shake .5s ease 2}
.trig-b-main{display:flex;flex-direction:column;gap:4px;min-width:0}
.trig-b-main b{font:700 clamp(16px,2vw,22px) var(--display);letter-spacing:.05em}
.trig-b-main span{font:14px var(--mono);overflow-wrap:anywhere}
.trig-banner button{height:34px;padding:0 14px;border-radius:6px;border:1px solid #fff9;background:#0003;color:#fff;font:600 14px var(--display);cursor:pointer}

/* ── Letrero de eventos económicos ── */
.ev-box{margin:0 13px 8px;padding:10px 12px;border:1px solid #2fb8ff55;border-radius:8px;background:linear-gradient(180deg,#0f1a26,#0a1119)}
.ev-box[data-mood="today"]{border-color:#f2c14e;background:linear-gradient(135deg,#2a2208,#0c1018 70%);box-shadow:0 0 18px #f2c14e22}
.ev-box[data-mood="soon"]{border-color:#f2c14e;background:linear-gradient(135deg,#3a2c06,#0c1018 70%);animation:pulse-blink 1.2s ease-in-out infinite}
.ev-box[data-mood="neg"]{border-color:#ff5a6e;background:linear-gradient(135deg,#3a0f16,#0c1018 70%);box-shadow:0 0 18px #ff5a6e33}
.ev-box[data-mood="pos"]{border-color:#3fe08f;background:linear-gradient(135deg,#0d3322,#0c1018 70%);box-shadow:0 0 18px #3fe08f33}
.ev-title{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
.ev-title b{font:700 14px var(--display);letter-spacing:.1em;color:#f2c14e}
.ev-box[data-mood="calm"] .ev-title b{color:#2fb8ff}
.ev-cd{font:13px var(--mono);color:#d8dfcf;flex:1;min-width:220px}
.ev-cd em{font-style:normal;color:#fff;font-weight:600}
.ev-toggle{height:26px;padding:0 10px;border:1px solid #4a5a6a;border-radius:4px;background:transparent;color:#c8d0c1;font:600 12px var(--display);cursor:pointer}
.ev-list{display:grid;gap:5px;margin-top:8px}
.ev-item{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;padding:7px 10px;border-radius:6px;background:#0008;border:1px solid #2a3442}
.ev-item[data-state="neg"]{border-color:#ff5a6e}.ev-item[data-state="pos"]{border-color:#3fe08f}
.ev-time{font:600 14px var(--mono);color:#f2c14e;min-width:70px}
.ev-name{font:600 14px var(--sans);color:#eef3e6}
.ev-name i{font-style:normal;color:#f2c14e;font-size:12px;margin-left:4px}
.ev-res{font:13px var(--mono);color:#c8d0c1;flex:1;min-width:200px}
.ev-res .pos{color:#8ff0bd}.ev-res .neg{color:#ff9aa6}
.ev-react{font:700 12px var(--display);letter-spacing:.04em;padding:3px 8px;border-radius:4px}
.ev-react.neg{background:#d6283d;color:#fff}.ev-react.pos{background:#3fe08f;color:#04120a}.ev-react.flat{background:#ffffff14;color:#c8d0c1}
.ev-week{display:grid;gap:3px;margin-top:8px;border-top:1px solid #2a3442;padding-top:8px}
.ev-wk{display:grid;grid-template-columns:110px 80px minmax(0,1fr) 50px;gap:8px;font:13px var(--mono);color:#c8d0c1}
.ev-wk i{font-style:normal;color:#f2c14e}
.ev-note{margin:4px 0 0;font:12px var(--sans);color:#8a96a6}
.ev-err{font:13px var(--mono);color:#ff9aa6}
@media(max-width:720px){.ev-box{margin:0 7px 8px}.ev-wk{grid-template-columns:90px 66px minmax(0,1fr)}.ev-wk i{display:none}}


/* ── Mejor contrato por señal ── */
.t-cbtn{height:26px;padding:0 10px;border:1px solid #f2c14e88;border-radius:5px;background:linear-gradient(180deg,#3a3010,#1f1a08);color:#f2c14e;font:600 12px var(--display);cursor:pointer;white-space:nowrap}
.t-cbtn.on,.t-cbtn:hover{background:linear-gradient(180deg,#ffe7a3,#f2c14e 50%,#a8741f);color:#2a1a02}
.t-con{margin:-1px 0 4px;padding:8px 10px;border:1px solid #f2c14e55;border-top:0;border-radius:0 0 6px 6px;background:#0a0e14;display:grid;gap:8px}
.tc-side{display:grid;gap:4px;min-width:0}
.tc-head{font:600 13px var(--display);letter-spacing:.04em}
.tc-side.call .tc-head{color:#8ff0bd}.tc-side.put .tc-head{color:#ff9aa6}
.tc-tbl{width:100%;border-collapse:collapse;font:13px var(--mono);display:block;overflow-x:auto}
.tc-tbl th{text-align:left;font:600 11px var(--display);letter-spacing:.06em;color:#9aa596;padding:4px 8px;border-bottom:1px solid #2a3442;white-space:nowrap}
.tc-tbl td{padding:5px 8px;border-bottom:1px solid #1c2430;color:#d8dfcf;white-space:nowrap}
.tc-tbl tr.top td{background:#f2c14e14;color:#fff}.tc-tbl tr.top td:first-child{color:#f2c14e;font-weight:600}
.tc-tbl td.pos{color:#8ff0bd}.tc-tbl td.neg{color:#ff9aa6}
.tc-msg{font:13px var(--mono);color:#9aa596}.tc-msg.err{color:#ff9aa6}
.tc-note{margin:0;font:12px var(--sans);color:#8a96a6}

/* ── Sesgo por patrones ── */
.bias-card{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;margin:0 13px 8px;padding:9px 12px;border:1px solid #43c4ff55;border-radius:8px;background:linear-gradient(180deg,#0f1a2a,#0a1119);text-decoration:none;color:#d8dfcf}
.bias-card b{font:700 13px var(--display);letter-spacing:.12em;color:#9fdcff}
.bias-main{font:13.5px var(--mono);flex:1;min-width:220px}
.bias-main em{font-style:normal;font-weight:700;letter-spacing:.06em}
.bias-card[data-v="ALCISTA"]{border-color:#3fe08f88}.bias-card[data-v="ALCISTA"] em{color:#8ff0bd}
.bias-card[data-v="BAJISTA"]{border-color:#ff5a6e88}.bias-card[data-v="BAJISTA"] em{color:#ff9aa6}
.bias-card[data-v="NEUTRAL"] em{color:#e6eef8}
.bias-more{font:600 13px var(--display);color:#f2c14e;white-space:nowrap}
.bias-card:hover{border-color:#f2c14e}
@media(max-width:720px){.bias-card{margin:0 7px 8px}}

/* Gatillos en vivo: resumen, grupos y últimas alertas */
.trig-sum{display:flex;flex-wrap:wrap;gap:6px 16px;padding:4px 2px 2px;font:600 13px var(--mono)}
.trig-sum .bull{color:#3fe08f}.trig-sum .bear{color:#ff5a6e}.trig-sum .wait{color:#b9c3b3}
.trig-log{display:flex;flex-wrap:wrap;gap:6px;padding:2px 0 4px}
.trig-log span{padding:3px 8px;border-radius:5px;border:1px solid #f2c14e55;background:#1a1608;color:#f3ecd6;font:12px var(--mono)}
.trig-log span[data-k="bull"]{border-color:#3fe08f88;background:#0d2a1c}
.trig-log span[data-k="bear"]{border-color:#ff5a6e88;background:#2e0d13}
.trig-log small{color:#b9c3b3}
.trig-group{display:flex;align-items:baseline;gap:8px;margin-top:6px;padding:2px 2px 0;font:700 12px var(--display);letter-spacing:.12em;text-transform:uppercase;color:#f2c14e}
.trig-group small{font:12px var(--mono);color:#8a8f86;letter-spacing:0}

/* Botón Estrategias */
.category-launcher-list .atlas-strat-launch{color:#43c4ff!important;border-color:#43c4ff!important;font-weight:700}
.main-nav .atlas-strat-nav{color:#43c4ff!important}
.t-cross{padding:2px 8px;border-radius:5px;border:1px solid #f2c14e88;background:#1a1608;color:#ffe7a3;font:600 12px var(--mono);text-decoration:none;white-space:nowrap}
.t-cross[data-x^="golden"]{border-color:#3fe08f;color:#9ff5c6;background:#0d2a1c}.t-cross[data-x^="death"]{border-color:#ff5a6e;color:#ffb3bd;background:#2e0d13}

/* Pantalla completa */
.heat-full-btn{margin-left:auto}
#heat-map.heat-full{position:fixed;inset:0;z-index:300;margin:0;border-radius:0;min-height:0;overflow:auto;padding:16px 20px;display:flex;flex-direction:column;background:#070c14}
#heat-map.heat-full>*{flex-shrink:0}
#heat-map.heat-full .panel-head{height:auto;padding-bottom:8px}
#heat-map.heat-full .panel-head h2{font-size:24px}
#heat-map.heat-full .tab-row{height:34px}
#heat-map.heat-full .tab-row button{height:30px;font-size:15px;padding:0 14px}
body.heat-full-open{overflow:hidden}

/* ═════ Mapa de calor treemap ═════ */
#heat-map.tm-on>.tab-row,#heat-map.tm-on>.heatmap,#heat-map.tm-on>#heat-filter-empty,#heat-map.tm-on>.demo-caption{display:none!important}
#heat-map.tm-on{display:flex;flex-direction:column}
.tm-root{position:relative;display:flex;flex-direction:column;gap:6px;flex:1;min-height:0}
.tm-bar{display:flex;flex-wrap:wrap;gap:6px}
.tm-seg{display:inline-flex;border:1px solid #2b3647;border-radius:6px;overflow:hidden}
.tm-seg button{height:24px;padding:0 9px;border:0;background:#121a26;color:#aab6c6;font:600 12px var(--display);cursor:pointer}
.tm-seg button[aria-pressed="true"]{background:#2a62c9;color:#fff}
.tm-box{position:relative;height:420px;background:#000;border-radius:4px;overflow:hidden}
.tm-sec{position:absolute;box-sizing:border-box;border:1px solid #000;background:#000}
.tm-sh{position:absolute;left:0;right:0;top:0;height:18px;display:flex;justify-content:space-between;align-items:center;gap:6px;padding:0 5px;font:600 11.5px var(--display);color:#d7dde6;white-space:nowrap;overflow:hidden}
.tm-sh span{overflow:hidden;text-overflow:ellipsis}.tm-sh b{font:600 11px var(--mono)}.tm-sh b.up{color:#4fe08f}.tm-sh b.dn{color:#ff7a85}
.tm-t{position:absolute;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.12em;overflow:hidden;color:#fff;cursor:pointer;text-align:center;line-height:1.05;outline:1px solid #000;transition:filter .12s}
.tm-t:hover{filter:brightness(1.25);z-index:2;outline:2px solid #fff}
.tm-t b{font-weight:700;font-family:var(--display);letter-spacing:.01em;white-space:nowrap}
.tm-t span{font-size:.72em;font-weight:600;font-family:var(--mono);white-space:nowrap;opacity:.95}
.tm-foot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}
.tm-scale{display:flex}.tm-scale i{font:600 11px var(--mono);font-style:normal;color:#fff;padding:2px 8px;min-width:30px;text-align:center}
.tm-info{font:12px var(--mono);color:#8e9bb0}
.tm-tip{position:absolute;z-index:5;pointer-events:none;padding:5px 9px;border-radius:6px;background:#0b111b;border:1px solid #35435a;color:#e6edf7;font:13px var(--mono);white-space:nowrap;box-shadow:0 6px 18px #000a}
.tm-tip[hidden]{display:none}
body.category-window:not(.heat-full-open) #heat-map .tm-box{height:calc(100vh - 240px);min-height:420px}
#heat-map.heat-full .tm-root{flex:1}
#heat-map.heat-full .tm-box{flex:1;height:auto;min-height:300px}
#heat-map.heat-full .tm-sh{height:22px;font-size:14px}
#heat-map.heat-full .tm-seg button{height:30px;font-size:14px;padding:0 14px}
#heat-map.heat-full{overflow:hidden}

.trig-sum .gw-err{color:#ffd77a}
.trig-row .aq-badge{height:20px;font-size:10.5px}
.tm-empty{position:absolute;inset:0;display:grid;place-items:center;color:#8e9bb0;font:600 15px var(--display)}
.ticker-card .tq-src{display:block;margin-top:2px;font:600 10px var(--mono);letter-spacing:.03em;color:#8fa0b6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ticker-card .tq-src[data-st="REALTIME"]{color:#5ff0a8}.ticker-card .tq-src[data-st="DELAYED"]{color:#ffd77a}.ticker-card .tq-src[data-st="STALE"]{color:#ff9aa6}.ticker-card .tq-src[data-st="CLOSED"]{color:#b8c4d4}.ticker-card .tq-src[data-st="DEMO"]{color:#c9b6ff}
