/* ============================================================
   Forextity — marketplace-portal layout (Alibaba-style structure)
   Colours, fonts and tokens are the site's own (--gold, --emerald,
   --violet, --card …). Nothing here introduces a new colour.
   ============================================================ */
:root{--ab-w:1280px;--ab-nav-h:109px;--ab-r:12px}
html,body{overflow-x:clip !important}

/* ---------- utility bar ---------- */
.ab-top{background:var(--surface);border-bottom:1px solid var(--border);font-size:12px;color:var(--text2)}
.ab-top-in{max-width:var(--ab-w);margin:0 auto;padding:0 24px;height:32px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.ab-top-l{display:flex;align-items:center;gap:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ab-top-l i{color:var(--emerald)}
.ab-top-r{display:flex;align-items:center}
.ab-top-r a{color:var(--text2);text-decoration:none;padding:0 12px;border-left:1px solid var(--border);line-height:14px;white-space:nowrap}
.ab-top-r a:first-child{border-left:0}
.ab-top-r a:hover{color:var(--gold)}
.ab-top-r a.k{color:var(--gold);font-weight:600}
@media(max-width:820px){.ab-top-r a:nth-child(n+3){display:none}.ab-top-l{font-size:11.5px}}

/* ---------- header: logo | search | actions, then link strip ---------- */
nav{position:sticky !important;top:0;left:auto !important;right:auto !important;height:auto !important;padding:0 !important}
nav .nav-inner{max-width:var(--ab-w);height:auto !important;flex-wrap:wrap;gap:0 22px;padding:0 24px}
nav .nav-logo{order:1;height:62px}
nav .ab-search{order:2}
nav .nav-right{order:3;height:62px}
nav .nav-links{order:4;flex:0 0 100%;height:38px;gap:2px;border-top:1px solid var(--border);margin:0}
nav .nav-links > li{height:100%;display:flex;align-items:center}
nav .nav-links a,.nav-more-btn{font-size:13px !important;font-weight:600;padding:0 14px !important;height:38px;display:flex;align-items:center;border-radius:0}
nav .nav-links a:hover,.nav-more-btn:hover{background:var(--gold-dim);color:var(--gold)}
nav .nav-links a.active{color:var(--gold);box-shadow:inset 0 -2px 0 var(--gold)}
.nav-more-menu{top:100%}
.ab-search{flex:1;max-width:760px;margin:0 auto 0 12px;align-self:center;display:flex;align-items:stretch;height:42px;border:2px solid var(--gold);border-radius:999px;background:var(--card);overflow:hidden}
.ab-s-cat{border:0;border-right:1px solid var(--border);background:transparent;color:var(--text2);font:600 12.5px var(--font-body);padding:0 16px;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:8px}
.ab-s-cat:hover{color:var(--gold)}
.ab-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font:400 14px var(--font-body);padding:0 14px}
.ab-search input::placeholder{color:var(--text3)}
.ab-s-btn{border:0;cursor:pointer;background:linear-gradient(135deg,#C9A227,var(--gold-hi));color:#07080D;font:700 13.5px var(--font-body);padding:0 24px;display:flex;align-items:center;gap:8px;white-space:nowrap}
.ab-s-btn:hover{filter:brightness(1.06)}
.ab-search:focus-within{box-shadow:0 0 0 4px var(--gold-dim)}
.nav-right .nav-support-btn{animation:none !important}
.ticker-bar{position:static !important;top:auto !important}
.quickbar{position:sticky !important;top:var(--ab-nav-h) !important;z-index:98}

/* ---------- hero: sidebar | banner | account panel ---------- */
.hero.ab-hero{min-height:0 !important;padding:16px 24px 6px !important;display:block !important;overflow:visible}
.ab-grid{max-width:var(--ab-w);margin:0 auto;display:grid;grid-template-columns:236px minmax(0,1fr) 300px;gap:14px;align-items:stretch}
.ab-card{background:var(--card);border:1px solid var(--border);border-radius:var(--ab-r)}
.ab-cats{overflow:hidden;display:flex;flex-direction:column}
.ab-cats h2{margin:0;padding:12px 16px;font:700 13.5px var(--font-body);color:var(--gold);background:var(--gold-dim);border-bottom:1px solid var(--gold-border);display:flex;gap:10px;align-items:center;-webkit-text-fill-color:currentColor}
.ab-cats a{display:flex;align-items:center;gap:12px;padding:0 16px;flex:1;min-height:38px;color:var(--text);text-decoration:none;font-size:13.5px;border-bottom:1px solid var(--border);transition:background .15s,color .15s}
.ab-cats a:last-child{border-bottom:0}
.ab-cats a i.ic{width:18px;text-align:center;color:var(--gold);font-size:14px}
.ab-cats a i.ch{margin-left:auto;font-size:10px;color:var(--text3)}
.ab-cats a:hover{background:var(--gold-dim);color:var(--gold)}
.ab-cats a:hover i.ch{color:var(--gold)}

.ab-mid{display:flex;flex-direction:column;gap:14px;min-width:0}
.ab-banner{position:relative;overflow:hidden;border-radius:var(--ab-r);border:1px solid var(--border);background:var(--surface);flex:1;display:flex;align-items:center}
.ab-banner #heroCanvas{position:absolute;inset:0;width:100%;height:100%;opacity:.5}
.ab-banner .hero-inner{max-width:none !important;margin:0 !important;align-items:flex-start !important;text-align:left !important;padding:30px 34px !important}
.ab-banner .hero-badge{margin:0 0 14px !important}
.ab-banner .hero-title{font-size:clamp(30px,3.6vw,50px) !important;margin-bottom:14px}
.ab-banner .hero-sub{font-size:15px;max-width:500px;margin-bottom:20px}
.ab-banner .hero-actions{flex-direction:row !important;width:auto !important;margin-bottom:18px;justify-content:flex-start !important}
.ab-banner .hero-actions .btn{width:auto !important;padding:11px 20px}
.ab-banner .hero-stats{justify-content:flex-start !important;gap:28px}
.ab-banner .hx-streak{margin-bottom:12px}
.ab-quick{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ab-quick a{display:flex;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;color:var(--text);transition:border-color .2s,transform .2s}
.ab-quick a:hover{border-color:var(--gold);transform:translateY(-2px)}
.ab-quick .qi{width:38px;height:38px;border-radius:10px;background:var(--gold-dim);color:var(--gold);display:grid;place-items:center;flex-shrink:0;font-size:16px}
.ab-quick b{display:block;font:700 13.5px var(--font-display)}
.ab-quick small{display:block;color:var(--text2);font-size:11.5px;line-height:1.3}

.ab-right{display:flex;flex-direction:column;gap:14px;min-width:0}
.ab-welcome{padding:16px}
.ab-welcome .who{display:flex;gap:12px;align-items:center;margin-bottom:12px}
.ab-welcome .av{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--gold-dim);color:var(--gold);border:1px solid var(--gold-border);font-size:17px;flex-shrink:0}
.ab-welcome b{display:block;font:700 14.5px var(--font-display)}
.ab-welcome small{color:var(--text2);font-size:12px;line-height:1.4;display:block}
.ab-welcome .btn{width:100%;margin-top:8px;padding:10px 16px !important;font-size:13px}
.ab-movers{padding:14px 16px;flex:1}
.ab-movers .ab-h{display:flex;justify-content:space-between;align-items:center;font:700 13.5px var(--font-body);margin-bottom:10px}
.ab-movers .ab-h span{font-size:10.5px;color:var(--emerald);font-family:var(--font-data)}
.ab-movers .hx-movers{display:grid;grid-template-columns:1fr !important;gap:8px;max-width:none;margin:0}
.ab-movers .hx-col{padding:8px 10px;border-radius:10px;background:var(--panel)}

/* ---------- module headers (were the centred ruled banners) ---------- */
.grp-banner{max-width:var(--ab-w);margin:30px auto 0 !important;padding:12px 18px !important;display:flex !important;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  background:var(--card);border:1px solid var(--border);border-radius:var(--ab-r);position:relative;width:calc(100% - 48px)}
.grp-banner::before{content:"";flex:none;width:4px;height:22px;border-radius:2px;background:var(--gold);position:absolute;left:0;top:50%;transform:translateY(-50%);min-width:0;height:22px}
.grp-banner::after{display:none !important}
.grp-banner h3{font:800 19px var(--font-display) !important;letter-spacing:0 !important;text-transform:none !important;color:var(--text) !important;margin:0 0 0 6px !important}
.grp-sub{width:auto !important;order:0 !important;margin:0 !important;justify-content:flex-end !important;gap:4px !important}
.grp-sub a{border:0 !important;background:transparent !important;border-radius:6px !important;padding:6px 12px !important;font-size:13px !important;color:var(--text2) !important}
.grp-sub a::after{content:" ›";color:var(--text3)}
.grp-sub a:hover{background:var(--gold-dim) !important;color:var(--gold) !important;transform:none !important}

.ab-sec-head{max-width:var(--ab-w);margin:26px auto 0;padding:0 24px;display:flex;align-items:center;justify-content:space-between}
.ab-sec-head h2{margin:0;font:800 20px var(--font-display);padding-left:12px;border-left:4px solid var(--gold);-webkit-text-fill-color:currentColor;background:none}
.ab-sec-head a{font-size:13px;color:var(--text2);text-decoration:none}.ab-sec-head a:hover{color:var(--gold)}
.start-grid{padding-top:14px !important;max-width:var(--ab-w) !important;grid-template-columns:repeat(6,1fr) !important;gap:14px !important}
.start-card{text-align:center;border-radius:var(--ab-r) !important;padding:18px 12px !important}
.start-card .emj-lg{width:34px;height:34px;margin:0 auto 10px;display:block}
.start-card small{display:none}
.features-strip{padding:12px 24px !important}

/* ---------- sections: tighter, left-aligned, title over content ---------- */
.section{padding-left:24px !important;padding-right:24px !important}
.section:not(.full-calc-section):not(.pwa-section){padding-top:26px !important;padding-bottom:26px !important}
.section-eyebrow{letter-spacing:0 !important;text-transform:none !important;font-size:12px !important;font-weight:600 !important;color:var(--text3) !important;margin-bottom:4px !important}
.section-eyebrow::before{display:none !important}
.section-title{background:none !important;-webkit-text-fill-color:currentColor !important;color:var(--text);font-size:clamp(20px,2.2vw,26px) !important;letter-spacing:-.01em !important}
.section-sub{font-size:14px !important}
.major-card,.dash-card,.news-card,.trust-item{border-radius:var(--ab-r) !important}
.major-card:hover,.dash-card:hover{border-color:var(--gold-border)}

/* ---------- footer ---------- */
.ab-assure{max-width:var(--ab-w);margin:0 auto 34px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding-bottom:30px;border-bottom:1px solid var(--border)}
.ab-assure div{display:flex;gap:12px;align-items:center}
.ab-assure i{width:42px;height:42px;border-radius:50%;background:var(--gold-dim);color:var(--gold);display:grid;place-items:center;font-size:17px;flex-shrink:0;border:1px solid var(--gold-border)}
.ab-assure b{display:block;font:700 14px var(--font-display)}
.ab-assure small{color:var(--text2);font-size:12px;display:block;line-height:1.35}
footer{background:var(--surface)}
.footer-col-title{color:var(--text) !important}

/* ---------- responsive ---------- */
@media(max-width:1180px){
  .ab-grid{grid-template-columns:236px minmax(0,1fr)}.ab-movers .ab-h span{margin-left:8px}
  .ab-right{grid-column:1 / -1;flex-direction:row}.ab-right>*{flex:1}
  .start-grid{grid-template-columns:repeat(3,1fr) !important}
}
@media(max-width:900px){
  nav .nav-links{display:none}
  nav .nav-logo,nav .nav-right{height:58px}
  nav .ab-search{order:4;flex:0 0 100%;margin:0 0 10px;max-width:none}
  .ab-s-cat{display:none}
  .ab-grid{grid-template-columns:1fr}
  .ab-cats{flex-direction:row;overflow-x:auto;border-radius:var(--ab-r)}
  .ab-cats h2{display:none}
  .ab-cats a{flex:0 0 auto;border-bottom:0;border-right:1px solid var(--border);white-space:nowrap;min-height:44px}
  .ab-cats a i.ch{display:none}
  .ab-quick{grid-template-columns:1fr 1fr}
  .ab-assure{grid-template-columns:1fr 1fr}
  .grp-banner{width:calc(100% - 32px)}
}
@media(max-width:640px){
  .hero.ab-hero{padding:12px 12px 4px !important}
  .ab-banner .hero-inner{padding:22px 18px !important}
  .ab-banner .hero-actions{flex-direction:column !important;width:100% !important}
  .ab-banner .hero-actions .btn{width:100% !important}
  .ab-right{flex-direction:column}
  .start-grid{grid-template-columns:repeat(2,1fr) !important;padding-left:12px !important;padding-right:12px !important}
  .ab-assure{grid-template-columns:1fr}
  .grp-banner h3{font-size:16px !important}
  .grp-sub{display:none !important}
  .section{padding-left:14px !important;padding-right:14px !important}
}
@media print{.ab-top,.ab-search{display:none !important}}

/* learn card in the right column */
.ab-movers{flex:0 0 auto !important}
.ab-guides{padding:14px 16px;flex:1}
.ab-guides .ab-h{display:flex;justify-content:space-between;align-items:center;font:700 13.5px var(--font-body);margin-bottom:6px}
.ab-guides .ab-h a{font:400 12px var(--font-body);color:var(--text2);padding:0;border:0;display:inline}
.ab-guides .ab-h a:hover{color:var(--gold)}
.ab-guides > a{display:flex;gap:10px;align-items:center;padding:8px 0;color:var(--text);text-decoration:none;font-size:13px;border-top:1px solid var(--border)}
.ab-guides > a i{color:var(--gold);font-size:12px;width:14px;text-align:center}
.ab-guides > a:hover{color:var(--gold)}

/* the header search bar replaces the floating search button on wide screens */
@media(min-width:901px){#searchFab{display:none !important}}

/* ── Calmer, more professional controls ─────────────────────────── */
.ab-banner .hero-actions{gap:10px;align-items:center}
.ab-banner .hero-actions .btn{border-radius:8px;font-size:13.5px;font-weight:600;letter-spacing:.01em;padding:11px 18px !important;box-shadow:none !important;transform:none !important;transition:background .2s,border-color .2s,color .2s}
.ab-banner .hero-actions .btn-gold{background:var(--gold);color:#0b0d12}
.ab-banner .hero-actions .btn-gold:hover{background:var(--gold-hi)}
.ab-banner .hero-actions .btn-outline{background:rgba(255,255,255,.03);border:1px solid var(--border2);color:var(--text)}
.ab-banner .hero-actions .btn-outline:hover{border-color:var(--gold);color:var(--gold);background:var(--gold-dim)}
.ab-banner .hero-actions .btn::after{content:"";width:6px;height:6px;border-right:1.6px solid currentColor;border-top:1.6px solid currentColor;transform:rotate(45deg);margin-left:2px;opacity:.7}
.ab-banner .hero-actions .btn svg{width:15px;height:15px;opacity:.9}
.ab-banner .hero-actions .btn-link{background:transparent;border-color:transparent;padding-left:6px !important;padding-right:6px !important}
[data-theme="light"] .ab-banner .hero-actions .btn-outline{background:#fff}
.start-card .si{width:30px;height:30px;display:block;margin:0 auto 10px;color:var(--gold);stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.start-card{box-shadow:none !important}
.start-card:hover{transform:none !important;border-color:var(--gold);background:var(--gold-dim)}
.gm-t{background:var(--card) !important;border:1px solid var(--border2) !important;color:var(--text) !important;font-weight:600 !important;box-shadow:0 6px 24px rgba(0,0,0,.25) !important}

/* ── Market view ───────────────────────────────────────────────── */
#tool-patterns .adv-tool-wide{max-width:var(--ab-w);margin:0 auto;padding:24px;background:var(--card);border:1px solid var(--border);border-radius:var(--ab-r)}
.mv-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--border)}
.mv-title{font-family:var(--font-display);font-size:20px;font-weight:700;margin:0 0 4px;color:var(--text)}
.mv-sub{margin:0;font-size:13px;color:var(--text2)}
.mv-quote{display:flex;align-items:baseline;gap:10px;padding:8px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}
.mv-sym{font-size:12px;font-weight:600;color:var(--text2);letter-spacing:.04em}
.mv-px{font-family:var(--font-data);font-size:18px;font-weight:600;color:var(--gold)}
.mv-controls{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.mv-controls label{display:flex;flex-direction:column;gap:5px}
.mv-controls label span{font-size:11px;font-weight:600;color:var(--text3);text-transform:uppercase;letter-spacing:.06em}
.mv-controls select{background:var(--surface);border:1px solid var(--border2);color:var(--text);padding:9px 12px;border-radius:8px;font-size:13px;min-width:140px}
.mv-controls select:focus{outline:none;border-color:var(--gold)}
#tool-patterns .tv-widget-panel{border-radius:10px;overflow:hidden}
@media(max-width:700px){#tool-patterns .adv-tool-wide{padding:16px;border-radius:0;border-left:0;border-right:0}#patChartContainer{height:420px !important}}




/* ── Pick up where you left off ─────────────────────────────────── */
.recent-tools{max-width:var(--ab-w);margin:0 auto 10px;padding:0 24px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.recent-tools[hidden]{display:none}
.recent-tools .rt-l{font:600 11px var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--text3);margin-right:4px}
.recent-tools button{background:var(--card);border:1px solid var(--border);color:var(--text2);border-radius:999px;padding:5px 12px;font:500 12.5px var(--font-body);cursor:pointer;transition:border-color .2s,color .2s}
.recent-tools button:hover{border-color:var(--gold);color:var(--gold)}
.copy-plan{margin-top:10px;background:transparent;border:1px solid var(--border2);color:var(--text);border-radius:8px;padding:8px 14px;font:600 12.5px var(--font-body);cursor:pointer;transition:border-color .2s,color .2s}
.copy-plan:hover{border-color:var(--gold);color:var(--gold)}

/* ── Daily drill ────────────────────────────────────────────────── */
#drills .section-inner{max-width:var(--ab-w)}
.dr-head{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:flex-end;margin-bottom:18px}
.dr-title{font-size:clamp(22px,3vw,32px) !important}
.dr-sub{max-width:560px;margin-bottom:0 !important}
.dr-stats{display:grid;grid-template-columns:repeat(4,auto);gap:10px}
.dr-stats div{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px 16px;min-width:92px}
.dr-stats b{display:block;font:700 18px var(--font-data);color:var(--gold)}
.dr-stats span{font:500 11px var(--font-body);color:var(--text3);text-transform:uppercase;letter-spacing:.06em}
.dr-card{background:var(--card);border:1px solid var(--border);border-radius:var(--ab-r,12px);padding:22px 24px}
.dr-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.dr-done{color:var(--text2);font-size:14px;margin-right:8px}
.dr-done b{color:var(--gold)}
.dr-note{margin-top:12px;font-size:12px;color:var(--text3)}
.dr-btn{background:var(--gold);color:#0b0d12;border:1px solid var(--gold);border-radius:8px;padding:10px 18px;font:600 13.5px var(--font-body);cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.dr-btn:hover{background:var(--gold-hi)}
.dr-btn.ghost{background:transparent;color:var(--text);border-color:var(--border2)}
.dr-btn.ghost:hover{border-color:var(--gold);color:var(--gold)}
.dr-top{display:flex;justify-content:space-between;font:600 11px var(--font-body);letter-spacing:.07em;text-transform:uppercase;color:var(--text3);margin-bottom:8px}
.dr-bar{height:3px;background:var(--border);border-radius:2px;margin-bottom:18px;overflow:hidden}
.dr-bar i{display:block;height:100%;background:var(--gold);transition:width .3s}
.dr-q{font:600 18px/1.45 var(--font-display);margin:0 0 16px;color:var(--text)}
.dr-opts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.dr-opt{text-align:left;background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:10px;padding:13px 16px;font:600 15px var(--font-data);cursor:pointer;transition:border-color .2s,background .2s}
.dr-opt:hover:not(:disabled){border-color:var(--gold);background:var(--gold-dim)}
.dr-opt:disabled{cursor:default}
.dr-opt.right{border-color:var(--green);background:rgba(0,200,120,.1)}
.dr-opt.wrong{border-color:var(--red);background:rgba(255,80,80,.1)}
.dr-fb{margin-top:16px;font-size:14px;color:var(--text2);line-height:1.55}
.dr-fb .ok b{color:var(--green)} .dr-fb .no b{color:var(--red)}
.dr-fb .dr-btn{margin-top:12px}
.dr-result{text-align:center;padding:32px 24px}
.dr-big{font:700 56px var(--font-display);color:var(--gold);line-height:1}
.dr-big small{font-size:22px;color:var(--text3)}
.dr-result p{color:var(--text2);margin:10px 0 18px}
.dr-result .dr-actions{justify-content:center}
@media(max-width:700px){.dr-stats{grid-template-columns:repeat(2,1fr);width:100%}.dr-opts{grid-template-columns:1fr}.dr-card{padding:18px 16px}}

/* ── Market overview: majors ────────────────────────────────────── */
.mo-sub{margin:6px 0 0;font-size:13px;color:var(--text2)}
.majors-grid{grid-template-columns:repeat(4,1fr) !important;gap:12px !important}
@media(max-width:900px){.majors-grid{grid-template-columns:repeat(2,1fr) !important}}
.major-card{position:relative;background:var(--card) !important;border:1px solid var(--border) !important;border-radius:12px !important;padding:14px 16px 12px !important;cursor:pointer;overflow:hidden;transition:border-color .2s,background .2s !important}
.major-card:hover,.major-card:focus-visible{transform:none !important;border-color:var(--gold) !important;background:var(--gold-dim) !important;outline:none}
.major-sym{display:flex;justify-content:space-between;align-items:center;font:600 12px var(--font-body) !important;letter-spacing:.06em;color:var(--text2) !important}
.major-go{font-size:18px;line-height:1;color:var(--text3);transition:transform .2s,color .2s}
.major-card:hover .major-go{color:var(--gold);transform:translateX(3px)}
.major-bid{font:600 22px var(--font-data) !important;letter-spacing:-.01em;margin:6px 0 4px !important;color:var(--text)}
.major-chg{display:inline-block;font:600 11.5px var(--font-data) !important;padding:3px 8px;border-radius:6px;background:var(--surface)}
.major-chg.up{color:var(--green) !important;background:rgba(0,200,120,.1)}
.major-chg.down{color:var(--red) !important;background:rgba(255,80,80,.1)}
.major-src{display:none}

/* ── Multi-timeframe sentiment matrix ───────────────────────────── */
#mtfTfRow,.mtf-tf-label{display:none !important}
.mm{margin:22px 0 6px;padding:24px;border:1px solid var(--gold-border);border-radius:16px;background:radial-gradient(900px 300px at 20% -10%,rgba(201,162,39,.10),transparent 60%),var(--surface);box-shadow:0 18px 50px rgba(0,0,0,.28)}
.mm-top{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.mm-eyebrow{font:600 11px var(--font-body);letter-spacing:.09em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.mm-title{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;font:700 26px var(--font-display);color:var(--text)}
.mm-px{font:600 16px var(--font-data);color:var(--text2)}
.mm-live{font:600 11.5px var(--font-body);padding:4px 10px;border-radius:999px;border:1px solid var(--border2);color:var(--text2)}
.mm-live.bull{color:var(--green);border-color:var(--green)}.mm-live.bear{color:var(--red);border-color:var(--red)}
.mm-actions{display:flex;align-items:center;gap:10px}.mm-at{font-size:12px;color:var(--text3)}
.mm-body{display:grid;grid-template-columns:minmax(240px,320px) 1fr;gap:28px;align-items:center}
.mm-dial{text-align:center}
.mm-svg{width:100%;max-width:300px;height:auto;overflow:visible}
.mm-track,.mm-arc{fill:none;stroke-width:14;stroke-linecap:round}
.mm-track{stroke:var(--border)}.mm-arc{opacity:.95}
.mm-needle{stroke:var(--text);stroke-width:3;stroke-linecap:round}.mm-hub{fill:var(--gold)}
#mmNeedle{transition:transform 1s cubic-bezier(.2,.9,.2,1)}
.mm-tick{font:600 10px var(--font-body);fill:var(--text3);letter-spacing:.06em;text-transform:uppercase}
.mm-verdict{margin-top:2px;display:flex;flex-direction:column;gap:3px}
.mm-verdict b{font:700 20px var(--font-display);color:var(--text)}.mm-verdict span{font-size:12.5px;color:var(--text3)}
.mm-verdict.bull b{color:var(--green)}.mm-verdict.bear b{color:var(--red)}
.mm-chips{display:flex;justify-content:center;gap:8px;margin-top:12px;flex-wrap:wrap}
.mm-chips i{font:600 11.5px var(--font-body);font-style:normal;padding:4px 10px;border-radius:999px;background:var(--card);border:1px solid var(--border);color:var(--text2)}
.mm-chips i.bull{color:var(--green)}.mm-chips i.bear{color:var(--red)}
.mm-ladder{display:flex;flex-direction:column;gap:8px}
.mm-row{display:grid;grid-template-columns:46px 1fr 112px 48px 62px 14px;align-items:center;gap:14px;text-align:left;width:100%;cursor:pointer;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:13px 16px;color:inherit;font:inherit;transition:border-color .2s,transform .2s,background .2s}
.mm-row:hover{border-color:var(--gold);background:var(--gold-dim);transform:translateX(3px)}
.mm-tf{font:700 13px var(--font-data);color:var(--text);letter-spacing:.04em}
.mm-meter{position:relative;height:8px;border-radius:4px;background:var(--border)}
.mm-meter::after{content:"";position:absolute;left:50%;top:-3px;width:1px;height:14px;background:var(--text3)}
.mm-meter i{position:absolute;top:0;height:100%;border-radius:4px;background:var(--text3);transition:left .8s cubic-bezier(.2,.9,.2,1),width .8s cubic-bezier(.2,.9,.2,1)}
.mm-row.bull .mm-meter i,.mm-sr.bull .mm-meter i{background:linear-gradient(90deg,#1FBF8A,var(--green))}
.mm-row.bear .mm-meter i,.mm-sr.bear .mm-meter i{background:linear-gradient(90deg,var(--red),#FF8A9E)}
.mm-dir{font:700 13.5px var(--font-body);color:var(--text2)}
.mm-row.bull .mm-dir,.mm-sr.bull .mm-dir{color:var(--green)}.mm-row.bear .mm-dir,.mm-sr.bear .mm-dir{color:var(--red)}
.mm-sc{font:700 14px var(--font-data);color:var(--text);text-align:right}
.mm-rsi{font:500 11.5px var(--font-data);color:var(--text3);text-align:right}
.mm-go{color:var(--text3);font-size:18px}.mm-row:hover .mm-go{color:var(--gold)}
.mm-legend{display:grid;grid-template-columns:1fr 1fr 1fr;font:600 10px var(--font-body);letter-spacing:.07em;text-transform:uppercase;color:var(--text3);padding:2px 2px 0 76px}
.mm-legend span:nth-child(2){text-align:center}.mm-legend span:nth-child(3){text-align:right}
.mm-ref{background:transparent;border:1px solid var(--border2);color:var(--text2);border-radius:999px;padding:7px 16px;font:600 12.5px var(--font-body);cursor:pointer;transition:all .2s}
.mm-ref:hover{border-color:var(--gold);color:var(--gold)}
.mm-ref.gold{background:linear-gradient(135deg,#C9A227,var(--gold-hi));color:#07080D;border:0}.mm-ref.gold:hover{color:#07080D;filter:brightness(1.08)}
.mm-ref:disabled{opacity:.6;cursor:default}
.mm-scan{margin-top:22px;padding-top:20px;border-top:1px solid var(--border)}
.mm-scanhead{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.mm-scanhead b{display:block;font:700 16px var(--font-display);color:var(--text)}.mm-scanhead span{font-size:12.5px;color:var(--text3)}
.mm-scanlist{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.mm-scanwait{grid-column:1/-1;font-size:13px;color:var(--text3);padding:6px 0}
.mm-sr{display:grid;grid-template-columns:96px 1fr 104px 40px;gap:12px;align-items:center;text-align:left;cursor:pointer;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px 14px;color:inherit;font:inherit}
.mm-sr:hover{border-color:var(--gold)}.mm-sp{font:700 13px var(--font-data);color:var(--text)}
.mm-note{margin-top:16px;font-size:11.5px;line-height:1.6;color:var(--text3)}
/* SEO / guide block */
.mmx{margin-top:26px;display:grid;grid-template-columns:1.3fr 1fr;gap:28px}
.mmx h3{font:700 20px var(--font-display);color:var(--text);margin:0 0 10px}
.mmx p,.mmx li{font-size:14px;line-height:1.7;color:var(--text2)}
.mmx ul{padding-left:18px;margin:8px 0 12px}
.mmx a{color:var(--gold)}
.mmx details{border:1px solid var(--border);border-radius:10px;background:var(--card);margin-bottom:8px}
.mmx summary{cursor:pointer;padding:12px 14px;font:600 14px var(--font-body);color:var(--text);list-style:none}
.mmx summary::-webkit-details-marker{display:none}.mmx summary::after{content:"+";float:right;color:var(--gold)}
.mmx details[open] summary::after{content:"–"}.mmx details p{padding:0 14px 12px;margin:0}
@media(max-width:900px){.mm-body{grid-template-columns:1fr}.mm-scanlist{grid-template-columns:1fr}.mmx{grid-template-columns:1fr}}
@media(max-width:560px){.mm{padding:16px}.mm-title{font-size:21px}.mm-row{grid-template-columns:38px 1fr 84px 44px 12px;gap:10px;padding:12px}.mm-rsi{display:none}.mm-legend{padding-left:48px}.mm-sr{grid-template-columns:84px 1fr 88px 34px;gap:8px}}

/* ── Hero artwork ───────────────────────────────────────────────── */
.ab-banner .hero-inner{position:relative;z-index:1}
@media(max-width:760px){}

/* Ad slots: quiet, labelled, never inside tools or results */
.ad-band{max-width:var(--ab-w,1180px);margin:26px auto 0;padding:0 24px;display:flex;gap:14px;align-items:flex-start}
.ad-box{background:var(--card);border:1px solid var(--border);border-radius:var(--ab-r,12px);padding:10px 14px 14px;min-width:0}
.ad-box::before{content:"Advertisement";display:block;font:600 10px var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--text3);margin-bottom:8px}
.ad-box.ad-native{flex:1;min-height:120px;overflow:hidden}
.ad-box.ad-banner{width:196px;flex:none;min-height:342px;display:flex;flex-direction:column;align-items:center}
.ad-box.ad-banner::before{align-self:flex-start}
.ad-inline{max-width:860px;margin:30px auto 0}
.ad-inline .ad-box{width:100%}
.ad-leader{max-width:var(--ab-w,1180px);margin:30px auto 0;padding:0 24px;display:flex;justify-content:center}
.ad-box.ad-lead{width:min(756px,100%);min-height:132px;padding:10px 14px 14px;display:flex;flex-direction:column;align-items:center}
.ad-box.ad-lead::before{align-self:flex-start}
.ad-inline-wide{max-width:860px;display:flex;justify-content:center}
.ad-mobile,.ad-inline-mobile{display:none}
.ad-rect{max-width:var(--ab-w,1180px);margin:30px auto 0;padding:0 24px;display:flex;justify-content:center}
.ad-box.ad-rc{width:332px;max-width:100%;min-height:302px;display:flex;flex-direction:column;align-items:center}
.ad-box.ad-rc::before{align-self:flex-start}
.ad-rect-inline{padding:0;margin:26px auto}
.ad-box.ad-mob{width:min(352px,100%);min-height:84px;display:flex;flex-direction:column;align-items:center}
.ad-box.ad-mob::before{align-self:flex-start}
.ad-strip{max-width:var(--ab-w,1180px);margin:30px auto 0;padding:0 24px;display:flex;justify-content:center}
.ad-box.ad-st{width:min(500px,100%);min-height:96px;display:flex;flex-direction:column;align-items:center}
.ad-box.ad-st::before{align-self:flex-start}
.ad-sky{display:none}
@media(min-width:1320px){.ad-sky{display:block;position:fixed;right:max(12px,calc((100vw - 1180px)/2 - 200px));top:150px;z-index:5;width:196px}
  .ad-box.ad-sk{width:196px;min-height:650px;display:flex;flex-direction:column;align-items:center}
  .ad-box.ad-sk::before{align-self:flex-start}}
@media(max-width:800px){.ad-leader,.ad-inline-wide{display:none}.ad-mobile{display:flex;justify-content:center;padding:0 12px;margin:22px auto 0}.ad-inline-mobile{display:flex;justify-content:center;margin:22px auto 0}.ad-band{padding:0 12px;flex-direction:column;align-items:stretch}.ad-box.ad-banner{display:none}.ad-strip{display:none}}

/* ── Planner ────────────────────────────────────────────────────── */
#planner .section-inner{max-width:var(--ab-w)}
.pl-tabs{display:flex;gap:8px;margin-bottom:14px}
.pl-tabs button{background:var(--card);border:1px solid var(--border);color:var(--text2);border-radius:8px;padding:9px 16px;font:600 13px var(--font-body);cursor:pointer;transition:border-color .2s,color .2s}
.pl-tabs button.on{border-color:var(--gold);color:var(--gold);background:var(--gold-dim)}
.pl-card{background:var(--card);border:1px solid var(--border);border-radius:var(--ab-r,12px);padding:22px 24px}
.pl-grid2{display:grid;grid-template-columns:320px 1fr;gap:26px;align-items:start}
.pl-form{display:grid;gap:12px}
.pl-f{display:flex;flex-direction:column;gap:5px}
.pl-f span{font:600 11px var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--text3)}
.pl-f input,.pl-f textarea{background:var(--surface);border:1px solid var(--border2);color:var(--text);border-radius:8px;padding:9px 12px;font:500 14px var(--font-body);width:100%;box-sizing:border-box}
.pl-f textarea{resize:vertical}
.pl-f input:focus,.pl-f textarea:focus{outline:none;border-color:var(--gold)}
.pl-note{font-size:12px;line-height:1.55;color:var(--text3)}
.pl-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}
.pl-kpis div{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px}
.pl-kpis span{display:block;font:600 10.5px var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--text3);margin-bottom:4px}
.pl-kpis b{font:700 18px var(--font-data);color:var(--text)}
.pl-verdict{margin:6px 0 10px;font-size:14px;color:var(--text2)}
.good{color:var(--green) !important}.bad{color:var(--red) !important}.warn{color:var(--gold) !important}
.pl-chart{width:100%;height:auto;display:block;margin:4px 0 12px}
.pl-grid{stroke:var(--border);stroke-width:1}.pl-ax{fill:var(--text3);font:11px var(--font-data)}
.pl-band{fill:var(--gold);opacity:.16}.pl-mid{fill:none;stroke:var(--gold);stroke-width:2.5}.pl-start{stroke:var(--text3);stroke-dasharray:4 4}
.pl-risk{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:10px}
.pl-risk div{border:1px solid var(--border);border-radius:10px;padding:12px 14px}
.pl-risk b{display:block;font:700 22px var(--font-data);color:var(--gold)}.pl-risk span{font-size:12px;color:var(--text2)}
.pl-paper{background:#fff;color:#16181f;border-radius:10px;padding:26px 30px;font:14.5px/1.6 Georgia,serif}
.pl-paper h1{font-size:24px;margin:0 0 6px}.pl-paper h3{margin:18px 0 4px;font:700 12px Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#6b7080}
.pl-paper ul{margin:4px 0 4px 18px;padding:0}.pl-paper p{margin:2px 0}
.pl-actions{display:flex;gap:10px;margin-top:12px}
.pl-btn{background:var(--gold);color:#0b0d12;border:1px solid var(--gold);border-radius:8px;padding:10px 18px;font:600 13.5px var(--font-body);cursor:pointer}
.pl-btn.ghost{background:transparent;color:var(--text);border-color:var(--border2)}.pl-btn.ghost:hover{border-color:var(--gold);color:var(--gold)}
@media(max-width:900px){.pl-grid2{grid-template-columns:1fr}.pl-kpis{grid-template-columns:repeat(2,1fr)}.pl-risk{grid-template-columns:1fr}.pl-card{padding:16px}}

/* ── Market Terminal ────────────────────────────────────────────── */
#terminal{padding-top:30px}
.tm-card{border:1px solid var(--gold-border);border-radius:16px;background:radial-gradient(800px 260px at 85% -10%,rgba(201,162,39,.09),transparent 60%),var(--surface);padding:20px;box-shadow:0 18px 50px rgba(0,0,0,.25)}
.tm-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.tm-tabs{display:flex;gap:6px;flex-wrap:wrap}
.tm-tabs button{background:var(--card);border:1px solid var(--border);color:var(--text2);border-radius:999px;padding:8px 18px;font:600 13px var(--font-body);cursor:pointer;transition:all .2s}
.tm-tabs button:hover{border-color:var(--gold);color:var(--gold)}
.tm-tabs button.on{background:linear-gradient(135deg,#C9A227,var(--gold-hi));color:#07080D;border-color:transparent}
.tm-meta{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--text3)}
.tm-wait{padding:30px 6px;color:var(--text3);font-size:14px}
.tm-scroll{overflow-x:auto}
.tm-table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:640px}
.tm-table th{font:600 11px var(--font-body);letter-spacing:.07em;text-transform:uppercase;color:var(--text3);text-align:left;padding:8px 10px;cursor:pointer;white-space:nowrap}
.tm-table th.srt{color:var(--gold)}
.tm-table td{padding:11px 10px;border-top:1px solid var(--border);font-family:var(--font-data);color:var(--text2)}
.tm-table tbody tr{cursor:pointer;transition:background .15s}.tm-table tbody tr:hover{background:var(--gold-dim)}
.tm-sym{font-weight:700;color:var(--text)!important}
.tm-table td small{font:600 11px var(--font-data);color:var(--text3)}
.tm-table td .mm-meter{width:120px;display:inline-block;vertical-align:middle;margin-right:8px}
.tm-table tr.bull .mm-meter i{background:var(--green)}.tm-table tr.bear .mm-meter i{background:var(--red)}
.tm-table tr.bull .mm-dir{color:var(--green)}.tm-table tr.bear .mm-dir{color:var(--red)}
.up{color:var(--green)!important}.dn{color:var(--red)!important}
.tm-heat{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.tm-cell{display:flex;flex-direction:column;gap:3px;text-align:left;padding:16px;border:1px solid;border-radius:12px;cursor:pointer;color:var(--text);font:inherit;transition:transform .2s}
.tm-cell:hover{transform:translateY(-3px)}.tm-cell b{font:700 14px var(--font-data)}.tm-cell span{font:700 20px var(--font-data)}.tm-cell small{font:500 11.5px var(--font-data);color:var(--text2)}
.tm-legend{display:flex;justify-content:space-between;margin-top:12px;font:600 10.5px var(--font-body);letter-spacing:.07em;text-transform:uppercase;color:var(--text3)}
.tm-corr{border-collapse:separate;border-spacing:3px;font:600 11.5px var(--font-data);min-width:640px;width:100%}
.tm-corr th{font:600 10px var(--font-body);color:var(--text3);padding:4px;text-align:center;white-space:nowrap}.tm-corr tbody th{text-align:right;padding-right:8px;color:var(--text)}
.tm-corr td{text-align:center;padding:9px 4px;border-radius:6px;color:var(--text);background:var(--card)}.tm-corr td.self{color:var(--text3)}
.tm-hint,.tm-note{margin:14px 0 0;font-size:12px;line-height:1.6;color:var(--text3)}
.tm-ev{display:flex;flex-direction:column;gap:8px}
.tm-evr{display:grid;grid-template-columns:54px 1fr auto;gap:14px;align-items:center;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:12px 16px}
.tm-evr.done{opacity:.5}.tm-ccy{font:700 13px var(--font-data);color:var(--gold)}
.tm-evn{font:600 14px var(--font-body);color:var(--text)}.tm-evn small{display:block;font:500 12px var(--font-body);color:var(--text3);margin-top:2px}
.tm-cd{font:700 15px var(--font-data);color:var(--red);white-space:nowrap}
@media(max-width:560px){.tm-card{padding:14px}.tm-evr{grid-template-columns:44px 1fr;}.tm-cd{grid-column:2}}

/* ── Journal analytics ──────────────────────────────────────────── */
.js-card{margin-bottom:16px;padding:22px;border:1px solid var(--gold-border);border-radius:14px;background:radial-gradient(700px 240px at 90% -20%,rgba(201,162,39,.09),transparent 60%),var(--surface)}
.js-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.js-head h3{margin:0;font:700 20px var(--font-display);color:var(--text)}
.js-pill{font:700 12px var(--font-body);padding:6px 14px;border-radius:999px;border:1px solid var(--border2);color:var(--text2)}.js-pill.bull{color:var(--green);border-color:var(--green)}.js-pill.bear{color:var(--red);border-color:var(--red)}
.js-empty{color:var(--text3);font-size:14px;line-height:1.6;margin:0}
.js-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}
.js-kpis div{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:12px 14px}
.js-kpis b{display:block;font:700 18px var(--font-data);color:var(--text)}.js-kpis span{font:600 11px var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--text3)}
.js-chart{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:12px}.js-svg{width:100%;height:200px;display:block}.js-zero{stroke:var(--text3);stroke-width:1;stroke-dasharray:4 4}
.js-grps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}
.js-grp h4{margin:0 0 8px;font:700 11px var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.js-gr{display:grid;grid-template-columns:1fr 60px;gap:2px 8px;align-items:center;padding:7px 0;border-top:1px solid var(--border)}
.js-gn{font:600 13px var(--font-body);color:var(--text)}.js-gv{font:700 13px var(--font-data);text-align:right}.js-gm{grid-column:1/2;grid-row:2}.js-gs{grid-column:2/3;grid-row:2;font-size:10.5px;color:var(--text3);text-align:right;white-space:nowrap}
.js-note{margin:16px 0 0;font-size:12px;line-height:1.6;color:var(--text3)}
@media(max-width:900px){.js-kpis{grid-template-columns:repeat(2,1fr)}.js-grps{grid-template-columns:1fr}}

/* ── Trade Pre-Flight ───────────────────────────────────────────── */
#preflight{padding-top:30px}
.pf-card{border:1px solid var(--gold-border);border-radius:16px;padding:22px;background:radial-gradient(800px 260px at 10% -10%,rgba(201,162,39,.10),transparent 60%),var(--surface);box-shadow:0 18px 50px rgba(0,0,0,.25)}
.pf-form{display:grid;grid-template-columns:repeat(5,1fr) auto;gap:12px;align-items:end}
.pf-form label{display:flex;flex-direction:column;gap:6px;font:600 11px var(--font-body);letter-spacing:.07em;text-transform:uppercase;color:var(--text3)}
.pf-form select,.pf-form input{background:var(--card);border:1px solid var(--border2);color:var(--text);border-radius:10px;padding:11px 12px;font:600 14px var(--font-data);width:100%;box-sizing:border-box}
.pf-form select:focus,.pf-form input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-dim)}
.pf-go{padding:12px 24px;font-size:14px;border-radius:10px}
.pf-out{margin-top:20px}.pf-empty{color:var(--text3);font-size:14px;margin:0}
.pf-verdict{display:flex;flex-direction:column;gap:3px;padding:16px 20px;border-radius:12px;border:1px solid var(--border2);background:var(--card);margin-bottom:12px}
.pf-verdict b{font:700 24px var(--font-display)}.pf-verdict span{font-size:13px;color:var(--text2)}
.pf-verdict.ok{border-color:var(--green)}.pf-verdict.ok b{color:var(--green)}.pf-verdict.warn{border-color:var(--gold)}.pf-verdict.warn b{color:var(--gold)}.pf-verdict.bad{border-color:var(--red)}.pf-verdict.bad b{color:var(--red)}
.pf-list{display:flex;flex-direction:column;gap:8px}
.pf-row{display:grid;grid-template-columns:30px 1fr;gap:12px;align-items:start;padding:12px 14px;background:var(--card);border:1px solid var(--border);border-radius:10px}
.pf-row i{font:700 14px var(--font-data);font-style:normal;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--border);color:var(--text2)}
.pf-row.ok i{background:rgba(46,230,166,.18);color:var(--green)}.pf-row.warn i{background:rgba(201,162,39,.2);color:var(--gold)}.pf-row.bad i{background:rgba(255,92,122,.2);color:var(--red)}
.pf-row b{display:block;font:700 14px var(--font-body);color:var(--text)}.pf-row span{font-size:13px;line-height:1.55;color:var(--text2)}
.pf-actions{margin-top:12px}
@media(max-width:900px){.pf-form{grid-template-columns:repeat(2,1fr)}.pf-go{grid-column:1/-1}}

@media(max-width:560px){.ab-top-l{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.ab-top-r{flex-shrink:0}}

/* ── Classic technical summary (replaces dial + ladder) ─────────── */
.mc-tabs{display:flex;gap:0;border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:18px;background:var(--card)}
.mc-tab{flex:1;background:transparent;border:0;border-right:1px solid var(--border);padding:11px 6px;cursor:pointer;color:var(--text2);font:inherit;display:flex;flex-direction:column;gap:2px;align-items:center;transition:background .15s}
.mc-tab:last-child{border-right:0}.mc-tab:hover{background:var(--gold-dim)}
.mc-tf{font:700 14px var(--font-data);color:var(--text)}.mc-sub{font:600 10.5px var(--font-body);letter-spacing:.04em;color:var(--text3)}
.mc-tab.bull .mc-sub{color:var(--green)}.mc-tab.bear .mc-sub{color:var(--red)}
.mc-tab.on{background:var(--surface);box-shadow:inset 0 -3px 0 var(--gold)}.mc-tab.on .mc-tf{color:var(--gold)}
.mc-body{display:grid;grid-template-columns:minmax(240px,320px) 1fr;gap:30px;align-items:start}
.mc-gauge{text-align:center}.mc-svg{width:100%;max-width:300px;height:auto;overflow:visible}
.mc-zone{fill:none;stroke-width:16;stroke-linecap:butt}
.mc-counts{display:flex;justify-content:center;gap:22px;margin-top:14px}
.mc-counts div{display:flex;flex-direction:column;align-items:center;gap:1px}.mc-counts b{font:700 20px var(--font-data);color:var(--text)}.mc-counts span{font:600 10.5px var(--font-body);letter-spacing:.07em;text-transform:uppercase;color:var(--text3)}
.mc-counts .bull b{color:var(--green)}.mc-counts .bear b{color:var(--red)}
.mc-indhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font:600 14px var(--font-body);color:var(--text2)}.mc-indhead b{color:var(--gold);font-family:var(--font-data)}
.mc-chart{background:transparent;border:0;color:var(--gold);font:600 13px var(--font-body);cursor:pointer}.mc-chart:hover{text-decoration:underline}
.mc-table{width:100%;border-collapse:collapse;font-size:13.5px}
.mc-table th{text-align:left;font:600 10.5px var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--text3);padding:8px 10px;border-bottom:1px solid var(--border)}
.mc-table td{padding:12px 10px;border-bottom:1px solid var(--border);color:var(--text2)}.mc-v{font-family:var(--font-data);color:var(--text)!important}
.mc-a{font-weight:700;text-align:right}.mc-a.bull{color:var(--green)}.mc-a.bear{color:var(--red)}.mc-table th:last-child{text-align:right}
.mc-na{color:var(--text3)!important}.mc-all{margin-top:12px;font-size:13px;color:var(--text2)}.mc-all .bull{color:var(--green)}.mc-all .bear{color:var(--red)}
@media(max-width:900px){.mc-body{grid-template-columns:1fr;gap:20px}}
@media(max-width:560px){.mc-table td:nth-child(2){font-size:12px}}

/* ---------- v83 polish ---------- */
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
::selection{background:rgba(240,199,94,.28)}
:focus-visible{outline:2px solid var(--gold,#f0c75e);outline-offset:2px;border-radius:6px}
.ab-banner,.ab-card,.ab-side,.ab-quick a,.ab-quick>*{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.ab-quick>a:hover,.ab-quick>*:hover{transform:translateY(-2px);border-color:rgba(240,199,94,.45);box-shadow:0 10px 28px rgba(0,0,0,.35)}
.ab-card:hover{border-color:rgba(240,199,94,.28)}
.ab-banner{box-shadow:0 18px 50px rgba(0,0,0,.28)}
button,.btn,a.btn{transition:transform .12s ease,filter .15s ease}
button:active,.btn:active{transform:scale(.98)}
.ad-box{border-radius:10px;overflow:hidden;background:transparent}
.ad-strip,.ad-rect,.ad-leader,.ad-mobile{margin:20px auto;text-align:center}
img{max-width:100%;height:auto}

.ab-banner #heroCanvas{opacity:.8;-webkit-mask-image:linear-gradient(90deg,transparent 0,transparent 35%,#000 75%);mask-image:linear-gradient(90deg,transparent 0,transparent 35%,#000 75%)}
@media(max-width:760px){.ab-banner #heroCanvas{opacity:.3;-webkit-mask-image:none;mask-image:none}}

/* ---------- current trading session panel ---------- */
.ss-main{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:10px;background:var(--panel);border-left:3px solid var(--text3);margin-bottom:10px}
.ss-main b{font:700 15px var(--font-display);color:var(--text)}.ss-main span{font-size:12px;color:var(--text3)}
.ss-main.peak{border-left-color:var(--green)}.ss-main.peak b{color:var(--green)}.ss-main.high{border-left-color:var(--gold)}.ss-main.mid{border-left-color:#7FA8FF}.ss-main.closed{border-left-color:var(--red)}
.ss-rows{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}
.ss-row{display:grid;grid-template-columns:10px 70px 1fr;gap:8px;align-items:center;font-size:12px;color:var(--text3)}
.ss-row i{width:8px;height:8px;border-radius:50%;background:var(--border2)}.ss-row.on i{background:var(--green);box-shadow:0 0 0 3px rgba(46,230,166,.18)}
.ss-n{font-weight:600;color:var(--text2)}.ss-row.on .ss-n{color:var(--text)}.ss-s{text-align:right}
.ss-pairs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px}.ss-pairs span{width:100%;font:600 10px var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--text3)}
.ss-pairs button{background:var(--card);border:1px solid var(--border);color:var(--text2);border-radius:999px;padding:4px 10px;font:600 11.5px var(--font-data);cursor:pointer}.ss-pairs button:hover{border-color:var(--gold);color:var(--gold)}
.ss-foot{font-size:10.5px;line-height:1.5;color:var(--text3)}
.ss-main{padding:8px 12px;margin-bottom:8px}.ss-rows{gap:2px;margin-bottom:8px}.ss-pairs{margin-bottom:0}
.ss-now{padding:12px 14px;border-radius:12px;background:var(--panel);border-left:3px solid var(--text3);margin-bottom:10px}
.ss-tag{font:700 10px var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--text3)}
.ss-big{font:700 22px var(--font-display);color:var(--text);margin:2px 0}.ss-sub{font-size:12px;color:var(--text3)}
.ss-now.peak{border-left-color:var(--green)}.ss-now.peak .ss-big{color:var(--green)}.ss-now.high{border-left-color:var(--gold)}.ss-now.mid{border-left-color:#7FA8FF}.ss-now.closed{border-left-color:var(--red)}
.ss-cards{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}
.ss-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:9px 12px}
.ss-cn{display:flex;justify-content:space-between;align-items:baseline;font:700 13px var(--font-body);color:var(--text)}.ss-cn em{font:700 15px var(--font-data);font-style:normal;color:var(--gold)}
.ss-pr{height:5px;border-radius:3px;background:var(--border);margin:7px 0 5px;overflow:hidden}.ss-pr i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,#C9A227,var(--gold-hi))}
.ss-cs{font-size:11.5px;color:var(--text3)}
.ss-next{font-size:12px;color:var(--text3);margin-bottom:8px}.ss-next b{color:var(--text2)}

/* ---------- Sentiment terminal (st-*) ---------- */
.mtf-card.st{max-width:none;padding:22px;background:linear-gradient(180deg,var(--card),var(--surface));border:1px solid var(--border2);border-radius:20px;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.st *{box-sizing:border-box}
.st-k{font:700 10.5px var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.st-k2{margin:22px 0 10px}
.st-top{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:18px}
.st-pick{position:relative;flex:0 1 360px;min-width:260px}
.st-pickbtn{width:100%;display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:14px;background:var(--void);border:1px solid var(--gold-border);color:var(--text);cursor:pointer;text-align:left;box-shadow:0 0 0 4px var(--gold-dim)}
.st-pickbtn:hover{border-color:var(--gold)}
.st-pn{display:flex;flex-direction:column;min-width:0;flex:1}.st-pn b{font:800 20px var(--font-display);letter-spacing:.01em}.st-pn small{font-size:11.5px;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st-pp{display:flex;flex-direction:column;align-items:flex-end}.st-pp b{font:600 16px var(--font-data);color:var(--text)}.st-pp em,.sx-pr em,.st-quick em{font:600 11px var(--font-data);font-style:normal}
.up{color:var(--green)}.dn{color:var(--red)}
.st-pickbtn i{color:var(--gold);font-size:13px}
.st-pop{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 8px);background:var(--panel);border:1px solid var(--border2);border-radius:16px;padding:12px;box-shadow:0 28px 70px rgba(0,0,0,.55);min-width:320px}
.st-search{width:100%;padding:11px 14px;border-radius:10px;background:var(--void);border:1px solid var(--border2);color:var(--text);font:500 14px var(--font-body)}
.st-search:focus{outline:none;border-color:var(--gold)}
.sx-cats{display:flex;gap:4px;flex-wrap:wrap;margin:10px 0}.sx-cats button{background:transparent;border:1px solid var(--border);color:var(--text2);border-radius:999px;padding:4px 10px;font:600 11.5px var(--font-body);cursor:pointer}
.sx-cats button.on{background:var(--gold);color:#1a1405;border-color:var(--gold)}
.sx-list{max-height:320px;overflow:auto;display:flex;flex-direction:column;gap:2px}
.sx-it{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;padding:8px 10px;border-radius:10px;background:transparent;border:1px solid transparent;color:var(--text);cursor:pointer}
.sx-it:hover,.sx-it:focus{background:var(--card);outline:none}.sx-it.on{background:var(--gold-dim);border-color:var(--gold-border)}
.sx-n{display:flex;flex-direction:column;min-width:0}.sx-n b{font:700 13.5px var(--font-body)}.sx-n small{font-size:11px;color:var(--text3)}
.sx-pr{display:flex;flex-direction:column;align-items:flex-end;font:600 12.5px var(--font-data);color:var(--text2)}
.sx-none{padding:18px;text-align:center;color:var(--text3);font-size:13px}.sx-count{font-size:11px;color:var(--text3);padding:8px 4px 0}
.st-quick{display:flex;flex-wrap:wrap;gap:6px;flex:1;min-width:220px}
.st-quick button{display:flex;gap:6px;align-items:center;background:var(--void);border:1px solid var(--border);color:var(--text2);border-radius:999px;padding:6px 12px;font:600 12px var(--font-body);cursor:pointer;transition:border-color .15s,transform .15s}
.st-quick button:hover{border-color:var(--gold-border);transform:translateY(-1px)}.st-quick button.on{background:var(--gold-dim);border-color:var(--gold);color:var(--gold-hi)}
.sx-q{font:600 11px var(--font-data);padding:5px 10px;border-radius:999px;border:1px solid var(--border2);color:var(--text3);margin-left:auto}
.sx-q.live{color:var(--green);border-color:var(--emerald-border);background:var(--emerald-dim)}.sx-q.delayed{color:var(--amber);border-color:rgba(255,179,0,.35)}.sx-q.stale,.sx-q.closed,.sx-q.none{color:var(--text3)}
.st-hero{display:grid;grid-template-columns:minmax(260px,380px) minmax(0,1fr);gap:16px}
.st-gcard,.st-scard{border:1px solid var(--border);border-radius:16px;background:var(--void);padding:18px}
.st-gauge{width:100%;max-width:320px;display:block;margin:6px auto 0;overflow:visible}
.st-gauge path{fill:none;stroke-width:16;stroke-linecap:round}.st-gauge .st-nd{stroke:var(--text);stroke-width:3;stroke-linecap:round}.st-gauge .st-hub{fill:var(--card);stroke:var(--gold);stroke-width:3}
.st-gauge #stNeedle{transition:transform .9s cubic-bezier(.2,.9,.25,1.1)}.st-gl{fill:var(--text3);font:600 11px var(--font-body)}
.st-gv{text-align:center;font:800 28px var(--font-display);margin-top:-6px}.st-gv.bull{color:var(--green)}.st-gv.bear{color:var(--red)}.st-gv.neu{color:var(--text2)}
.st-gs{text-align:center;font-size:12px;color:var(--text3);margin-top:2px}
.st-scard{display:flex;flex-direction:column;gap:12px}
.st-story{font-size:16px;line-height:1.65;color:var(--text2);margin:0}.st-story b{color:var(--gold-hi);font-family:var(--font-display);margin-right:4px}
.st-ag{display:flex;align-items:baseline;gap:10px}.st-ag b{font:800 30px var(--font-data);color:var(--text)}.st-ag span{font-size:12.5px;color:var(--text3)}
.st-agbar{height:8px;border-radius:5px;background:var(--border);overflow:hidden;margin-top:6px}.st-agbar i{display:block;height:100%;border-radius:5px;transition:width .6s}.st-agbar i.bullish{background:linear-gradient(90deg,var(--emerald),var(--emerald-hi))}.st-agbar i.bearish{background:linear-gradient(90deg,#ff7a95,var(--red))}
.st-foot{display:flex;align-items:center;gap:12px;margin-top:auto}.mm-at{font-size:11.5px;color:var(--text3)}
.mm-ref{background:transparent;border:1px solid var(--border2);color:var(--text2);border-radius:999px;padding:6px 14px;font:600 12px var(--font-body);cursor:pointer}.mm-ref:hover{border-color:var(--gold);color:var(--gold)}
.st-tfs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.st-tf{border:1px solid var(--border);border-radius:14px;background:var(--void);padding:14px;display:flex;flex-direction:column;gap:10px;position:relative;overflow:hidden;transition:transform .18s,border-color .18s}
.st-tf:hover{transform:translateY(-2px)}
.st-tf::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--border2)}.st-tf.bull::before{background:var(--green)}.st-tf.bear::before{background:var(--red)}
.st-tfh{display:flex;justify-content:space-between;align-items:center;gap:6px}.st-tfh b{font:800 15px var(--font-display);color:var(--text)}
.st-lab{font:700 10.5px var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--text3)}.st-tf.bull .st-lab{color:var(--green)}.st-tf.bear .st-lab{color:var(--red)}
.st-sc{font:800 32px var(--font-data);color:var(--text)}.st-tf.bull .st-sc{color:var(--green)}.st-tf.bear .st-sc{color:var(--red)}
.st-meter{position:relative;height:8px;border-radius:5px;background:var(--border)}.st-mid{position:absolute;left:50%;top:-3px;bottom:-3px;width:2px;background:var(--border2)}
.st-fill{position:absolute;top:0;bottom:0;border-radius:5px;background:var(--text3);transition:width .6s,left .6s;width:0;left:50%}.st-tf.bull .st-fill{background:linear-gradient(90deg,var(--emerald),var(--emerald-hi))}.st-tf.bear .st-fill{background:linear-gradient(90deg,#ff7a95,var(--red))}
.st-parts{display:flex;flex-wrap:wrap;gap:4px}.st-parts span{font:600 10px var(--font-body);padding:3px 7px;border-radius:999px;border:1px solid var(--border);color:var(--text3)}
.st-parts span.up{color:var(--green);background:var(--green-dim);border-color:var(--emerald-border)}.st-parts span.dn{color:var(--red);background:var(--red-dim);border-color:rgba(255,61,104,.3)}
.st-open{margin-top:auto;background:transparent;border:0;color:var(--gold);font:600 11.5px var(--font-body);cursor:pointer;text-align:left;padding:0}.st-open:hover{text-decoration:underline}
.st-mapwrap{margin-top:24px}.st-maph{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:flex-end;margin-bottom:12px}.st-ms{font-size:12px;color:var(--text3);margin-top:4px;max-width:520px}
.st-mc{display:flex;gap:4px;flex-wrap:wrap}.st-mc button{background:transparent;border:1px solid var(--border);color:var(--text2);border-radius:999px;padding:5px 11px;font:600 11.5px var(--font-body);cursor:pointer}.st-mc button.on{background:var(--gold);color:#1a1405;border-color:var(--gold)}
.st-map{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:6px}
.st-tile{display:flex;flex-direction:column;gap:2px;align-items:flex-start;padding:10px 11px;border-radius:10px;border:1px solid var(--border);background:var(--void);color:var(--text);cursor:pointer;text-align:left;transition:transform .15s,border-color .15s}
.st-tile b{font:700 12px var(--font-body)}.st-tile span{font:600 11.5px var(--font-data)}
.st-tile.up{background:rgba(23,227,160,var(--a));border-color:rgba(23,227,160,.25)}.st-tile.dn{background:rgba(255,61,104,var(--a));border-color:rgba(255,61,104,.25)}.st-tile.nd{opacity:.5}
.st-tile:hover{transform:translateY(-2px);border-color:var(--gold)}.st-tile.on{outline:2px solid var(--gold);outline-offset:1px}
.st-note{margin-top:18px}
@media(max-width:1100px){.st-tfs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.st-hero{grid-template-columns:1fr}.mtf-card.st{padding:14px;border-radius:16px}.sx-q{margin-left:0}.st-pick{flex:1 1 100%}}
@media(max-width:560px){.st-tfs{grid-template-columns:repeat(2,minmax(0,1fr))}.st-sc{font-size:26px}.st-pop{position:fixed;left:12px;right:12px;top:auto;bottom:12px;max-height:75vh}.sx-list{max-height:45vh}}

/* ---------- current session section (sn-*) ---------- */
.sn{margin-top:26px}
.sn-hero{position:relative;border:1px solid var(--border2);border-radius:20px;padding:26px 28px;background:linear-gradient(135deg,var(--card),var(--void));overflow:hidden;margin-bottom:14px}
.sn-hero::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--c,var(--text3))}
.sn-hero.live{box-shadow:0 0 60px -20px var(--c)}
.sn-tagl{display:flex;align-items:center;gap:8px;font:700 11px var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--text3)}
.sn-big{font:800 clamp(30px,5vw,52px)/1.1 var(--font-display);color:var(--text);margin:8px 0 6px}.sn-big span{color:var(--text3);font-weight:600}.sn-big small{font:600 14px var(--font-body);color:var(--gold);letter-spacing:.08em;text-transform:uppercase;margin-left:8px}
.sn-sub{font-size:14.5px;color:var(--text2);max-width:640px}
.sn-pulse{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 0 rgba(23,227,160,.6);animation:snp 1.8s infinite}
@keyframes snp{70%{box-shadow:0 0 0 9px rgba(23,227,160,0)}100%{box-shadow:0 0 0 0 rgba(23,227,160,0)}}
.sn-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}
.sn-card{border:1px solid var(--border);border-top:3px solid var(--c);border-radius:18px;background:var(--card);padding:20px;display:flex;flex-direction:column;gap:12px}
.sn-ch{display:flex;justify-content:space-between;align-items:center}
.sn-city{font:800 22px var(--font-display);color:var(--text)}.sn-soon{font:600 12px var(--font-data);color:var(--c)}
.sn-open{display:flex;align-items:center;gap:7px;font:700 11px var(--font-body);letter-spacing:.12em;color:var(--green)}
.sn-clk{font:700 40px var(--font-data);color:var(--c);line-height:1}.sn-clk small{display:block;font:500 11px var(--font-body);color:var(--text3);letter-spacing:.06em;margin-top:6px}
.sn-prog{height:6px;border-radius:4px;background:var(--border);overflow:hidden}.sn-prog i{display:block;height:100%;border-radius:4px;background:var(--c)}
.sn-cl{font-size:12.5px;color:var(--text3)}.sn-cl b{color:var(--text)}
.sn-txt{font-size:13.5px;line-height:1.6;color:var(--text2);margin:0}
.sn-pl{display:flex;flex-direction:column;gap:5px;margin-top:2px}
.sn-plh{display:flex;justify-content:space-between;font:700 10.5px var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:2px}.sn-plh span{color:var(--green)}
.sn-pr{display:grid;grid-template-columns:1fr auto 70px;gap:10px;align-items:center;padding:9px 12px;border-radius:10px;background:var(--void);border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;transition:border-color .15s,transform .15s}
.sn-pr:hover{border-color:var(--c);transform:translateX(2px)}
.sn-ps{display:flex;align-items:center;gap:8px}.sn-ps b{font:700 13px var(--font-body)}.sn-ps .d{width:7px;height:7px;border-radius:50%;background:var(--text3)}.sn-ps .d.live{background:var(--green)}.sn-ps .d.old{background:var(--amber)}
.sn-px{font:600 13px var(--font-data);color:var(--text2)}.sn-pr em{font:600 12px var(--font-data);font-style:normal;text-align:right}.sn-pr em:not(.up):not(.dn){color:var(--text3);font-size:11px}
.sn-tl{margin-top:16px;border:1px solid var(--border);border-radius:16px;background:var(--card);padding:16px 18px}
.sn-tlh{display:flex;justify-content:space-between;font:600 11px var(--font-body);color:var(--text3);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}
.sn-tlb{position:relative;display:flex;flex-direction:column;gap:8px}
.sn-tr{display:grid;grid-template-columns:66px 1fr;align-items:center}.sn-tn{font:700 12px var(--font-body)}
.sn-tb{position:relative;height:10px;border-radius:6px;background:var(--border)}.sn-tb i{position:absolute;top:0;bottom:0;border-radius:6px}
.sn-now{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--text);box-shadow:0 0 8px var(--text)}
.sn-ax{display:flex;justify-content:space-between;margin:8px 0 0 66px;font:500 10px var(--font-data);color:var(--text3)}
@media(max-width:700px){.sn-hero{padding:20px}.sn-cols{grid-template-columns:1fr}.sn-clk{font-size:34px}}

/* ---------- all-instruments board ---------- */
.st-bdwrap{margin-top:26px}
.st-sum{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.st-sum span{font:600 12.5px var(--font-body);padding:7px 14px;border-radius:999px;border:1px solid var(--border);background:var(--void);color:var(--text2)}
.st-sum span b{font:800 15px var(--font-data);margin-right:4px}.st-sum .bull{color:var(--green);border-color:var(--emerald-border);background:var(--emerald-dim)}.st-sum .bear{color:var(--red);border-color:rgba(255,61,104,.3);background:var(--red-dim)}.st-sum .of{border:0;background:transparent;color:var(--text3)}
.st-tblw{max-height:560px;overflow:auto;border:1px solid var(--border);border-radius:14px;background:var(--void)}
.st-tbl{width:100%;border-collapse:collapse;font-size:13px}
.st-tbl th{position:sticky;top:0;background:var(--panel);z-index:1;text-align:left;padding:11px 14px;font:700 10.5px var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--text3);cursor:pointer;white-space:nowrap}
.st-tbl th:hover{color:var(--gold)}.st-tbl .r{text-align:right}
.st-tbl td{padding:9px 14px;border-top:1px solid var(--border);color:var(--text2)}
.st-tbl tbody tr{cursor:pointer;transition:background .12s}.st-tbl tbody tr:hover{background:var(--card)}.st-tbl tbody tr.on{background:var(--gold-dim)}
.st-tbl .nm b{display:block;color:var(--text);font:700 13px var(--font-body)}.st-tbl .nm small{font-size:11px;color:var(--text3)}
.st-tbl .mono{font-family:var(--font-data)}.st-tbl .nd{color:var(--text3)}
.st-tbl td.bull{color:var(--green);font:700 13px var(--font-data)}.st-tbl td.bear{color:var(--red);font:700 13px var(--font-data)}.st-tbl td.neu{color:var(--text2);font:600 13px var(--font-data)}
.pill{display:inline-block;padding:4px 10px;border-radius:999px;font:700 11px var(--font-body);border:1px solid var(--border);color:var(--text3)}
.pill.bull{color:var(--green);background:var(--green-dim);border-color:var(--emerald-border)}.pill.bear{color:var(--red);background:var(--red-dim);border-color:rgba(255,61,104,.3)}.pill.neu{color:var(--text2);background:var(--card)}
@media(max-width:560px){.st-tbl th,.st-tbl td{padding:8px 8px}.st-tbl th:nth-child(4),.st-tbl td:nth-child(4){display:none}}

/* ---------- compact session UI (overrides) ---------- */
.ab-session{padding:12px 14px !important;flex:0 0 auto !important}
.ab-session .ab-h{margin-bottom:6px !important}
.ss-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;border-radius:10px;background:var(--panel);border-left:3px solid var(--text3)}
.ss-top.peak{border-left-color:var(--green)}.ss-top.high{border-left-color:var(--gold)}.ss-top.mid{border-left-color:var(--ice)}
.ss-top .ss-big{font:800 18px var(--font-display);margin:1px 0 0}.ss-top .ss-tag{font:700 9.5px var(--font-body)}
.ss-clk{font:700 20px var(--font-data);color:var(--gold-hi);text-align:right;line-height:1}.ss-clk small{display:block;font:500 9.5px var(--font-body);color:var(--text3);margin-top:3px}
.ss-meta{font-size:11.5px;color:var(--text3);margin:7px 0 6px;line-height:1.4}
.ss-chips{display:flex;flex-wrap:wrap;gap:5px}.ss-chips button{display:flex;gap:6px;align-items:center;background:var(--void);border:1px solid var(--border);color:var(--text2);border-radius:999px;padding:4px 9px;font:600 11px var(--font-body);cursor:pointer}
.ss-chips button:hover{border-color:var(--gold-border)}.ss-chips em{font:600 10.5px var(--font-data);font-style:normal}
.sn{margin-top:14px}
.sn-hero{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:12px 18px;border-radius:14px;margin-bottom:10px}
.sn-hero .sn-big{font:800 20px var(--font-display);margin:0}.sn-hero .sn-sub{font-size:12.5px}.sn-hero.closed,.sn-hero.quiet{display:block}.sn-hero.closed .sn-big,.sn-hero.quiet .sn-big{font-size:22px;margin:4px 0}
.sn-cols{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}
.sn-card{padding:12px 14px;gap:8px;border-radius:14px}
.sn-city{font:800 16px var(--font-display)}.sn-clk{font:700 20px var(--font-data);color:var(--c);line-height:1}
.sn-cl{font-size:11.5px}
.sn-chips{display:flex;flex-wrap:wrap;gap:5px}
.sn-chip{display:flex;gap:6px;align-items:center;background:var(--void);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:5px 8px;cursor:pointer;font-size:11px}
.sn-chip:hover{border-color:var(--c)}.sn-chip b{font:700 11.5px var(--font-body)}.sn-chip span{font:500 11px var(--font-data);color:var(--text3)}.sn-chip em{font:600 10.5px var(--font-data);font-style:normal}
.sn-tl{margin-top:10px;padding:10px 14px}.sn-tlb{gap:5px}.sn-tb{height:7px}
#sessions{padding-top:28px !important;padding-bottom:12px !important}
#sessions .section-sub{display:none}

/* ---------- Sentiment matrix (mx-*) ---------- */
.mtf-card.st{padding:20px}
.mx-head{display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:space-between;align-items:flex-end;margin-bottom:14px}
.mx-title{font:800 20px var(--font-display);color:var(--text)}.mx-title span{font:500 12.5px var(--font-body);color:var(--text3);margin-left:8px}
.mx-feed{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.mx-feed span{font:600 11.5px var(--font-body);padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:var(--void);color:var(--text3)}
.mx-feed .live{color:var(--green);border-color:var(--emerald-border);background:var(--emerald-dim);display:inline-flex;align-items:center;gap:6px}.mx-feed .live i{width:7px;height:7px;border-radius:50%;background:var(--green);animation:snp 1.8s infinite}
.mx-feed .old{color:var(--amber)}.mx-feed .none{color:var(--red)}.mx-feed .of{border:0;background:transparent;padding-left:2px}
.mx-tools{display:flex;gap:8px;align-items:center}
.mx-search{width:290px;max-width:100%;padding:10px 14px;border-radius:10px;background:var(--void);border:1px solid var(--border2);color:var(--text);font:500 13.5px var(--font-body)}.mx-search:focus{outline:none;border-color:var(--gold)}
.mx-cats{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.mx-cats button{background:var(--void);border:1px solid var(--border);color:var(--text2);border-radius:999px;padding:6px 13px;font:600 12px var(--font-body);cursor:pointer;transition:border-color .15s}
.mx-cats button em{font:600 10.5px var(--font-data);font-style:normal;color:var(--text3);margin-left:4px}
.mx-cats button:hover{border-color:var(--gold-border)}.mx-cats button.on{background:var(--gold);color:#1a1405;border-color:var(--gold)}.mx-cats button.on em{color:#5a4a16}
.mx-tw{overflow:auto;max-height:640px;border:1px solid var(--border);border-radius:14px;background:var(--void)}
.mx-t{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;font-size:13px}
.mx-t th{position:sticky;top:0;z-index:2;background:var(--panel);padding:10px 12px;font:700 10.5px var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--text3);cursor:pointer;text-align:left;white-space:nowrap}
.mx-t th:hover{color:var(--gold)}.mx-t .r{text-align:right}.mx-t .c{text-align:center}
.mx-t td{padding:7px 12px;border-top:1px solid var(--border);color:var(--text2);vertical-align:middle}
.mx-t td.i{display:flex;align-items:center;gap:10px;min-width:190px}
.mx-t td.i span{display:flex;flex-direction:column}.mx-t td.i b{color:var(--text);font:700 13px var(--font-body)}.mx-t td.i small{font-size:10.5px;color:var(--text3)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--text3);flex:0 0 auto}.dot.live{background:var(--green);box-shadow:0 0 8px var(--green)}.dot.old{background:var(--amber)}.dot.none{background:var(--red);opacity:.6}
.mx-t td.p{text-align:right;font:600 13px var(--font-data);color:var(--text)}.mx-t td.g{text-align:right;font:600 12.5px var(--font-data)}.mx-t td.nd,.mx-t .nd{color:var(--text3)}
.mx-t td.c{text-align:center;font:700 13px var(--font-data);color:var(--text);width:68px;border-left:1px solid var(--void)}
.mx-t td.c.ld i{display:inline-block;width:14px;height:14px;border-radius:50%;border:2px solid var(--border2);border-top-color:var(--gold);animation:mxs .8s linear infinite}
@keyframes mxs{to{transform:rotate(360deg)}}
.mx-r{cursor:pointer;transition:background .12s}.mx-r:hover td:not(.c){background:var(--card)}.mx-r.on td:not(.c){background:var(--gold-dim)}
.mx-r td.o{white-space:nowrap}
.mx-d td{padding:0;background:var(--surface);border-top:0}
.mx-det{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,1.6fr);gap:18px;padding:16px 18px;border-top:1px solid var(--gold-border)}
.mx-dh{font:800 17px var(--font-display);color:var(--text)}.mx-dh span{font:500 12px var(--font-body);color:var(--text3);margin:0 8px}
.mx-dh .q{font:600 10.5px var(--font-data);font-style:normal;padding:3px 9px;border-radius:999px;border:1px solid var(--border2);color:var(--text3);display:inline-block;margin-top:6px}.mx-dh .q.live{color:var(--green);border-color:var(--emerald-border);background:var(--emerald-dim)}.mx-dh .q.delayed,.mx-dh .q.stale{color:var(--amber)}
.mx-story{font-size:14px;line-height:1.65;color:var(--text2);margin:10px 0}
.mx-ov{font:600 12.5px var(--font-body);padding:8px 12px;border-radius:10px;background:var(--card);border:1px solid var(--border);color:var(--text2);display:inline-block}.mx-ov b{font-weight:800}.mx-ov.bull b{color:var(--green)}.mx-ov.bear b{color:var(--red)}
.mx-dr{display:flex;flex-direction:column;gap:7px}
.mx-tf{display:grid;grid-template-columns:34px 110px 44px 98px 1fr auto;gap:10px;align-items:center;font-size:12px}
.mx-tf>b{font:800 13px var(--font-display);color:var(--text)}.mx-bar{position:relative;height:7px;border-radius:4px;background:var(--border)}.mx-bar .mid{position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;background:var(--border2)}.mx-bar em{position:absolute;top:0;bottom:0;border-radius:4px;background:var(--text3)}
.mx-tf.bull .mx-bar em{background:var(--green)}.mx-tf.bear .mx-bar em{background:var(--red)}
.mx-tf .sc{font:700 13px var(--font-data);text-align:right;color:var(--text)}.mx-tf.bull .sc,.mx-tf.bull .lb{color:var(--green)}.mx-tf.bear .sc,.mx-tf.bear .lb{color:var(--red)}.mx-tf .lb{font:700 10.5px var(--font-body);letter-spacing:.05em;text-transform:uppercase;color:var(--text3)}
.mx-tf .ch{display:flex;gap:4px;flex-wrap:wrap}.mx-tf .ch span{font:600 10px var(--font-body);padding:2px 7px;border-radius:999px;border:1px solid var(--border);color:var(--text3)}.mx-tf .ch .up{color:var(--green);background:var(--green-dim);border-color:var(--emerald-border)}.mx-tf .ch .dn{color:var(--red);background:var(--red-dim);border-color:rgba(255,61,104,.3)}
.mx-tf .open{background:transparent;border:0;color:var(--gold);font:600 11.5px var(--font-body);cursor:pointer}.mx-tf .open:hover{text-decoration:underline}
.mx-none{padding:26px;text-align:center;color:var(--text3)}
.mx-legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;font-size:11.5px;color:var(--text3)}.mx-legend .lg{width:34px;height:8px;border-radius:4px}.mx-legend .lg.r{background:linear-gradient(90deg,rgba(255,61,104,.65),rgba(255,61,104,.12))}.mx-legend .lg.g{background:linear-gradient(90deg,rgba(23,227,160,.12),rgba(23,227,160,.65))}
@media(max-width:900px){.mx-det{grid-template-columns:1fr}.mx-tf{grid-template-columns:30px 70px 40px 90px 1fr}.mx-tf .open{grid-column:1/-1;text-align:left}.mx-tf .ch{grid-column:1/-1}}
@media(max-width:600px){.mtf-card.st{padding:12px}.mx-search{width:100%}.mx-tools{width:100%}.mx-t td.i{min-width:150px}.mx-t td.i small{display:none}.mx-title span{display:block;margin:2px 0 0}}
.mx-story{font-family:var(--font-body)!important}.mx-dh,.mx-dh span{font-family:var(--font-display)}.mx-dh span{font-family:var(--font-body)}
.st-sum button{font:600 12.5px var(--font-body);padding:7px 14px;border-radius:999px;border:1px solid var(--border);background:var(--void);color:var(--text2);cursor:pointer;transition:transform .12s,border-color .15s}
.st-sum button:hover{transform:translateY(-1px);border-color:var(--gold-border)}.st-sum button b{font:800 15px var(--font-data);margin-right:4px}
.st-sum button.on{outline:2px solid var(--gold);outline-offset:1px}
.st-sum button.bull{color:var(--green);border-color:var(--emerald-border);background:var(--emerald-dim)}.st-sum button.bear{color:var(--red);border-color:rgba(255,61,104,.3);background:var(--red-dim)}.st-sum button.al{color:var(--gold-hi);border-color:var(--gold-border);background:var(--gold-dim)}
@media(max-width:900px){.mx-d td .mx-det{position:sticky;left:0;width:calc(100vw - 64px);max-width:100%;box-sizing:border-box}.mx-t td.i{position:sticky;left:0;z-index:1;background:var(--void)}.mx-r:hover td.i,.mx-r.on td.i{background:var(--card)}}
.mx-d td,.mx-det{white-space:normal}.mx-det>*{min-width:0}.mx-story{overflow-wrap:anywhere}
.wf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin-top:28px}
.wf-card{border:1px solid var(--border);border-radius:16px;background:var(--card);padding:22px;transition:transform .18s,border-color .18s}
.wf-card:hover{transform:translateY(-3px);border-color:var(--gold-border)}
.wf-card i{color:var(--gold);font-size:20px;margin-bottom:12px;display:block}
.wf-card h3{font:700 16px var(--font-display);color:var(--text);margin:0 0 6px}.wf-card p{font-size:13.5px;line-height:1.6;color:var(--text2);margin:0}

/* ---------- technical summary: positioning fixes ---------- */
#mtf-sentiment .mtf-card{max-width:none;padding:22px}
.mm{min-width:0}.mc-body{min-width:0}.mc-body>*{min-width:0}
.mc-gauge{display:flex;flex-direction:column;align-items:center;padding:6px 0}
.mc-svg{width:100%;max-width:300px;margin:0 auto;display:block;overflow:visible}
.mm-tick{font:600 10px var(--font-body);fill:var(--text3)}
.mm-verdict{align-items:center;text-align:center}
.mc-counts{width:100%;justify-content:space-evenly;gap:8px}
.mc-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
.mc-tab{min-width:0}
@media(max-width:560px){#mtf-sentiment .mtf-card{padding:14px}.mc-svg{max-width:260px}.mc-tab .mc-sub{font-size:10px;line-height:1.2;white-space:normal}.mm-top{flex-direction:column;align-items:flex-start;gap:8px}.mm-title{flex-wrap:wrap}}
#mtf-sentiment .sn-ov{max-height:460px;overflow:auto;border:1px solid var(--border);border-radius:14px;padding:10px;background:var(--void)}
#mtf-sentiment .sn-ov-title{margin-top:26px}
.mc-ind{min-width:0;overflow-x:auto}.mc-table{width:100%}
@media(max-width:560px){.mc-table th,.mc-table td{padding:8px 6px;font-size:11.5px}.mc-table .mc-v{font-size:11px;word-break:break-word}.mc-table th:nth-child(2),.mc-table td:nth-child(2){max-width:110px}}
@media(max-width:560px){.mc-table th:nth-child(2),.mc-table td:nth-child(2){display:none}}
