#news-tab.active{display:block!important}
.nh-wrap{display:flex;flex-direction:column;gap:10px;padding:10px 12px;min-height:calc(100vh - 100px);color:#e2e8f0;background:#0b0e14;border-radius:12px;border:1px solid rgba(255,255,255,.08)}
.nh-ticker{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}
.nh-tick{flex:0 0 auto;min-width:118px;background:#121722;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:6px 8px}
.nh-tick-name{font-size:10px;color:#94a3b8;display:flex;justify-content:space-between;gap:6px}
.nh-tick-sym{font-family:monospace;color:#64748b;font-size:9px}
.nh-tick-price{font-size:13px;font-weight:800;color:#fff;margin:2px 0}
.nh-tick-chg{font-size:10px;font-weight:700}
.nh-tick-chg.up,.nh-up{color:#34d399}
.nh-tick-chg.down,.nh-down{color:#f87171}
.nh-tick-spark{height:18px;margin-top:3px}
.nh-tick-spark svg{width:100%;height:100%;display:block}
.nh-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:10px;min-height:0;flex:1}
.nh-main{background:#0f141c;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:12px;min-width:0;display:flex;flex-direction:column;gap:10px;overflow:hidden}
.nh-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.nh-head h2{margin:0;font-size:16px;font-weight:800;white-space:nowrap}
.nh-subtabs{display:flex;gap:4px;flex-wrap:wrap;flex:1}
.nh-subtab{background:transparent;border:none;border-bottom:2px solid transparent;color:#94a3b8;font-size:12px;font-weight:600;padding:6px 8px;cursor:pointer}
.nh-subtab.active{color:#fff;border-bottom-color:#3b82f6}
.nh-reload{background:rgba(59,130,246,.15);border:1px solid rgba(59,130,246,.4);color:#93c5fd;border-radius:6px;padding:5px 10px;font-size:11px;font-weight:700;cursor:pointer}
.nh-pane{display:none;flex:1;min-height:0;overflow:auto}
.nh-pane.active{display:flex;flex-direction:column}
.nh-calendar-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:12px;min-height:420px}
.nh-cal-side{display:flex;flex-direction:column;gap:12px}
.nh-month{background:#121722;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:10px}
.nh-month-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;font-weight:700}
.nh-month-head button{background:transparent;border:none;color:#94a3b8;cursor:pointer;font-size:14px}
.nh-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}
.nh-dow{font-size:9px;color:#64748b;padding:2px 0}
.nh-day{font-size:11px;padding:5px 0;border-radius:999px;cursor:pointer;color:#cbd5e1}
.nh-day.muted{color:#475569}
.nh-day.selected{background:#2563eb;color:#fff;font-weight:700}
.nh-day.has-event{box-shadow:inset 0 -2px 0 #60a5fa}
.nh-filters,.nh-impact-legend{background:#121722;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:10px;font-size:11px}
.nh-filter-label{font-size:11px;font-weight:700;color:#e2e8f0;margin-bottom:6px}
.nh-filters select{width:100%;margin-bottom:6px;background:#0b0e14;border:1px solid rgba(255,255,255,.12);color:#e2e8f0;border-radius:5px;padding:6px;font-size:11px}
.nh-impact-legend div{display:flex;align-items:center;gap:6px;margin:4px 0;color:#94a3b8}
.nh-dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.nh-dot.high{background:#ef4444}.nh-dot.medium{background:#f59e0b}.nh-dot.low{background:#eab308}
.nh-cal-table-wrap{overflow:auto;border:1px solid rgba(255,255,255,.08);border-radius:8px}
.nh-cal-table{width:100%;border-collapse:collapse;font-size:12px}
.nh-cal-table th{position:sticky;top:0;background:#121722;color:#94a3b8;text-align:left;padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.1);font-size:11px;font-weight:700}
.nh-cal-table td{padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.06);color:#e2e8f0;vertical-align:middle}
.nh-cal-dayrow td{background:#0d1219;color:#93c5fd;font-weight:700;font-size:11px;padding-top:10px}
.nh-impact{display:inline-flex;gap:2px}
.nh-impact i{width:6px;height:6px;border-radius:50%;background:#334155;display:inline-block}
.nh-impact.high i{background:#ef4444}
.nh-impact.medium i:nth-child(-n+2){background:#f59e0b}
.nh-impact.low i:first-child{background:#eab308}
.nh-act-up{color:#34d399;font-weight:700}
.nh-act-down{color:#f87171;font-weight:700}
.nh-side{display:flex;flex-direction:column;gap:10px;min-height:0;overflow:auto}
.nh-side-block{background:#0f141c;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px}
.nh-side-block h3{margin:0 0 8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:#e2e8f0}
/* Sidebar items with thumbnail */
.nh-side-item{display:grid;grid-template-columns:1fr 56px;gap:8px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06);cursor:pointer;align-items:start}
.nh-side-item:last-child{border-bottom:none}
.nh-side-meta{font-size:10px;color:#64748b;margin-bottom:2px}
.nh-side-title{font-size:12px;font-weight:700;color:#f1f5f9;line-height:1.3}
.nh-side-src{font-size:10px;color:#64748b;margin-top:3px}
.nh-thumb{width:56px;height:56px;border-radius:6px;object-fit:cover;display:block}
.nh-thumb-fallback{width:56px;height:56px;border-radius:6px;background:linear-gradient(135deg,#1e293b,#0f172a);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.nh-video-card{position:relative}
.nh-video-thumb{
  width:100%;
  aspect-ratio:16/9;
  border-radius:8px;
  background:#0f172a;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:6px;
  position:relative;
  overflow:hidden;
  border:1px solid rgba(56,189,248,0.25);
  box-shadow:0 4px 14px rgba(0,0,0,0.5);
}
.nh-video-thumb-img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform 0.35s ease, filter 0.35s ease;
}
.nh-video-card:hover .nh-video-thumb-img{
  transform:scale(1.05);
  filter:brightness(1.1);
}
.nh-video-play-btn{
  position:absolute;
  inset:0;
  margin:auto;
  width:44px;
  height:44px;
  border-radius:50%;
  background:rgba(15,23,42,0.8);
  backdrop-filter:blur(4px);
  border:2px solid rgba(56,189,248,0.85);
  color:#38bdf8;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:17px;
  padding-left:3px;
  box-shadow:0 0 16px rgba(56,189,248,0.45);
  transition:all 0.25s ease;
  z-index:2;
  pointer-events:none;
}
.nh-video-card:hover .nh-video-play-btn{
  transform:scale(1.14);
  background:#38bdf8;
  color:#0f172a;
  box-shadow:0 0 24px rgba(56,189,248,0.85);
}
.nh-video-dur{
  position:absolute;
  right:8px;
  bottom:8px;
  background:rgba(2,6,23,0.85);
  backdrop-filter:blur(4px);
  color:#f8fafc;
  font-size:10px;
  font-weight:700;
  padding:2px 7px;
  border-radius:4px;
  border:1px solid rgba(56,189,248,0.3);
  display:flex;
  align-items:center;
  gap:4px;
  z-index:2;
}
.nh-video-dur::before{
  content:'';
  display:inline-block;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#ef4444;
  box-shadow:0 0 6px #ef4444;
}
/* Feed items: vertical card with hero image */
.nh-feed{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.nh-feed-item{display:flex;flex-direction:column;background:#121722;border:1px solid rgba(255,255,255,.08);border-radius:8px;overflow:hidden;cursor:pointer;transition:border-color .2s}
.nh-feed-item:hover{border-color:rgba(59,130,246,.5)}
.nh-feed-item > div:last-child{padding:10px;flex:1;display:flex;flex-direction:column;gap:4px}
.nh-feed-hero{width:100%;height:160px;object-fit:cover;border-radius:6px 6px 0 0;display:block;flex-shrink:0}
.nh-feed-ph{min-height:80px;display:flex;align-items:center;justify-content:center;font-size:2.2rem;background:linear-gradient(135deg,#1e293b,#0f172a);flex-shrink:0}
.nh-feed-title{font-size:13px;font-weight:700;color:#f8fafc;margin-bottom:4px;line-height:1.4}
.nh-feed-sum{font-size:11px;color:#94a3b8;line-height:1.4;flex:1}
.nh-empty{color:#64748b;font-size:12px;padding:24px;text-align:center}

/* ==========================================
   ANALYSIS & COMMENTARY CARDS (MARKDOWN)
   ========================================== */
/* =============================================================
   2-TIER HORIZONTAL ANALYSIS & COMMENTARY LAYOUT (CÁCH A)
   ============================================================= */
.nh-analysis-layout{display:flex;flex-direction:column;gap:12px;width:100%}

/* TẦNG 1: TOP TIER FULL WIDTH */
.nh-an-top-tier{background:#111622;border:1px solid rgba(59,130,246,.25);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 16px rgba(0,0,0,.3)}
.nh-an-top-header{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:linear-gradient(90deg,rgba(59,130,246,.15),rgba(15,20,30,.8));border-bottom:1px solid rgba(255,255,255,.08);flex-wrap:wrap;gap:8px}
.nh-an-top-badge{display:flex;align-items:center;gap:10px}
.nh-an-top-icon{font-size:20px;background:rgba(59,130,246,.2);color:#60a5fa;width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(59,130,246,.4);flex-shrink:0}
.nh-an-top-title{font-size:13px;font-weight:800;color:#f8fafc;letter-spacing:.4px}
.nh-an-top-sub{font-size:11px;color:#94a3b8}
.nh-an-top-tag{font-size:9.5px;font-weight:800;color:#93c5fd;background:rgba(59,130,246,.2);border:1px solid rgba(59,130,246,.35);padding:3px 9px;border-radius:4px;letter-spacing:.5px}
.nh-an-top-body{padding:12px 14px;overflow-x:hidden;overflow-y:visible}
.nh-macro-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1.05fr) minmax(0,1fr);gap:12px;width:100%;overflow-x:hidden}
.nh-macro-col{background:#141a26;border:1px solid rgba(255,255,255,.07);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;min-height:165px;overflow:hidden}
.nh-macro-col.col-main{border-left:3px solid #3b82f6}
.nh-macro-col.col-drivers{border-left:3px solid #10b981}
.nh-macro-col.col-action{border-left:3px solid #f59e0b;background:rgba(245,158,11,.04)}
.nh-macro-col-title{font-size:10.5px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;padding-bottom:5px;border-bottom:1px solid rgba(255,255,255,.06);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nh-macro-col.col-main .nh-macro-col-title{color:#93c5fd}
.nh-macro-col.col-drivers .nh-macro-col-title{color:#86efac}
.nh-macro-col.col-action .nh-macro-col-title{color:#fcd34d}
.nh-macro-col-content{font-size:11.5px;line-height:1.6;color:#cbd5e1;overflow-y:auto;flex:1;max-height:170px}
.nh-macro-col-content::-webkit-scrollbar{width:3px}
.nh-macro-col-content::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:2px}
.nh-macro-fallback{max-height:200px;overflow-y:auto;font-size:12px;line-height:1.65;color:#cbd5e1;padding:4px}
.nh-comm-list{display:flex;flex-direction:column;gap:6px}
.nh-comm-row{display:flex;align-items:flex-start;gap:8px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05);border-radius:6px;padding:6px 8px;line-height:1.55}
.nh-comm-row:hover{background:rgba(255,255,255,.05);border-color:rgba(59,130,246,.25)}
.nh-comm-icon{font-size:14px;line-height:1.4;flex-shrink:0}
.nh-comm-desc{flex:1;font-size:11.5px;color:#cbd5e1}
.nh-comm-desc strong{color:var(--str-text-main,#f8fafc);font-weight:700}


/* TẦNG 2: 4 SECTOR CARDS (2x2 GRID) */
.nh-an-bottom-title{font-size:11px;font-weight:800;color:#94a3b8;letter-spacing:.5px;text-transform:uppercase;margin-top:2px;display:flex;align-items:center;gap:6px}
.nh-an-bottom-title::after{content:'';flex:1;height:1px;background:rgba(255,255,255,.08)}
.nh-an-bottom-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}

/* SECTOR CARD */
.nh-an-sector-card{background:#111622;border:1px solid rgba(255,255,255,.08);border-radius:9px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s;height:300px}
.nh-an-sector-card:hover{border-color:rgba(59,130,246,.35);box-shadow:0 4px 18px rgba(0,0,0,.35)}
.nh-an-sec-head{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;background:#141a26;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}
.nh-an-sec-title-wrap{display:flex;align-items:center;gap:8px;min-width:0}
.nh-an-sec-icon{font-size:16px;flex-shrink:0}
.nh-an-sec-title{font-size:11.5px;font-weight:800;letter-spacing:.4px}
.nh-an-sec-sub{font-size:9.5px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nh-an-sec-badge{font-size:8.5px;font-weight:800;padding:2px 6px;border-radius:4px;letter-spacing:.4px;flex-shrink:0}
.nh-an-sec-body{padding:12px 14px;flex:1;overflow-y:auto;font-size:11.5px;line-height:1.6;color:#cbd5e1}
.nh-an-sec-body::-webkit-scrollbar{width:4px}
.nh-an-sec-body::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:2px}

/* MARKDOWN ELEMENTS */
.nh-an-h1{font-size:12.5px;font-weight:800;color:#60a5fa;margin:10px 0 6px;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.1);text-transform:uppercase}
.nh-an-h2{font-size:12px;font-weight:800;color:#93c5fd;margin:8px 0 4px}
.nh-an-h3{font-size:11.5px;font-weight:700;color:#e2e8f0;margin:6px 0 3px}
.nh-an-ul{list-style:none;padding:0;margin:6px 0;display:flex;flex-direction:column;gap:6px}
.nh-an-li{display:flex;align-items:flex-start;gap:6px;line-height:1.55}
.nh-an-dot{color:#3b82f6;font-size:9px;margin-top:3px;flex-shrink:0}
.nh-an-gap{height:10px;border-bottom:1px dashed rgba(255,255,255,.08);margin-bottom:10px}
.nh-an-top-body strong,.nh-an-sec-body strong,.nh-macro-col-content strong{color:var(--str-text-main,#f8fafc);font-weight:700}
.nh-an-kw-up{color:#34d399;font-weight:700;background:rgba(16,185,129,.12);padding:1px 4px;border-radius:3px}
.nh-an-kw-down{color:#f87171;font-weight:700;background:rgba(239,68,68,.12);padding:1px 4px;border-radius:3px}
.nh-an-kw-warn{color:#fbbf24;font-weight:700}

@media(max-width:1000px){
  .nh-an-top-body{columns:1}
  .nh-an-bottom-grid{grid-template-columns:1fr}
}

/* ==========================================
   STR FINANCIAL TV - BLOOMBERG / CNBC STUDIO
   ========================================== */
.nh-body.video-active{grid-template-columns:1fr;min-height:0;flex:1;height:100%;overflow:hidden}
.nh-body.video-active .nh-side{display:none}
.nh-body.video-active .nh-main{height:100%;flex:1;display:flex;flex-direction:column;padding:12px;overflow:hidden}

/* A. Fix: Tab video takes calc(100vh - 180px) and hides all scrollbars */
#nh-pane-video.active{
  display:flex;
  flex-direction:column;
  flex:1;
  height:calc(100vh - 180px);
  min-height:0;
  overflow:hidden;
}

/* Studio container: 64/36 grid, no overflow, fill height */
.nh-studio-container{
  display:grid;
  grid-template-columns:minmax(0,64fr) minmax(0,36fr);
  gap:12px;
  flex:1;
  height:100%;
  min-height:0;
  align-items:stretch;
  width:100%;
  overflow:hidden;
}

.nh-studio-player-col{
  display:flex;
  flex-direction:column;
  min-width:0;
  height:100%;
  overflow:hidden;
}

/* Main screen: fixed 16:9 ratio, no extra height, no scrollbar */
.nh-studio-screen{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  background:#050811;
  border-radius:12px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 12px 36px rgba(0,0,0,.65);
  display:flex;
  flex-direction:column;
  cursor:pointer;
  user-select:none;
  flex-shrink:0;
}

/* Fullscreen: when in fullscreen, allow height auto */
.nh-studio-screen:fullscreen{
  aspect-ratio:auto;
  width:100vw;
  height:100vh;
  border-radius:0;
}

/* ==============================================================
   BROADCAST VIRTUAL STUDIO SCENE (16:9) - Matches Target Reference
   ============================================================== */
.nh-studio-scene{
  position:relative;
  width:100%;
  flex:1;
  min-height:0;
  overflow:hidden;
  background:#020617;
}

/* Layer 1: Virtual Studio Newsroom Backdrop & MC Broadcast Video */
.nh-studio-set-bg,
.nh-studio-mc-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:1;
  pointer-events:none;
}

/* Full broadcast video mode: Display complete news clip */
.nh-studio-scene.has-full-video #nh-studio-mc-img,
.nh-studio-scene.has-full-video #nh-studio-led-screen,
.nh-studio-scene.has-full-video #nh-studio-headline-box {
  display: none !important;
}

.nh-studio-scene.has-full-video .nh-studio-mc-video {
  display: block !important;
  z-index: 2;
  object-fit: contain;
  background: #000;
  width: 100%;
  height: 100%;
  pointer-events: none;
  transform: translateZ(0);
  will-change: transform;
  backface-visibility: hidden;
}

/* Layer 2: LED Video Wall Screen on right wall */
.nh-studio-led-screen{
  position:absolute;
  left:50.3%;
  top:6.2%;
  width:48.2%;
  height:60.5%;
  border-radius:4px;
  overflow:hidden;
  z-index:2;
  box-shadow:inset 0 0 25px rgba(0,0,0,0.85), 0 0 20px rgba(37,99,235,0.35);
  border:1px solid rgba(96,165,250,0.4);
  background:#030712;
}
.nh-led-bg-img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:opacity 0.6s ease;
  will-change:transform;
}
@keyframes kenburns{
  0%{transform:scale(1.0) translate(0,0)}
  50%{transform:scale(1.08) translate(-1%,-.5%)}
  100%{transform:scale(1.04) translate(1%,.5%)}
}
.nh-led-bg-img.ken-burns{animation:kenburns 24s infinite alternate ease-in-out}

.nh-led-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(3,7,18,0.82) 0%, rgba(3,7,18,0.2) 35%, rgba(3,7,18,0.88) 100%);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:8px 12px;
  z-index:3;
  pointer-events:none;
}
.nh-led-brand{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:10px;
  color:#94a3b8;
  font-weight:700;
  text-shadow:0 1px 3px rgba(0,0,0,0.9);
}
.nh-led-logo-text{color:#60a5fa;font-weight:800;letter-spacing:.3px}
.nh-led-sub{color:#cbd5e1;font-size:9px;border-left:1px solid rgba(255,255,255,.2);padding-left:6px;margin-left:2px}

.nh-led-content{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.nh-led-cat{
  display:inline-block;
  align-self:flex-start;
  background:rgba(59,130,246,.3);
  border:1px solid rgba(96,165,250,.6);
  color:#93c5fd;
  font-size:9px;
  font-weight:800;
  padding:2px 7px;
  border-radius:3px;
  text-transform:uppercase;
  letter-spacing:.5px;
}
.nh-led-title{
  font-size:13px;
  font-weight:800;
  color:#ffffff;
  line-height:1.3;
  text-shadow:0 2px 4px rgba(0,0,0,.95);
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.nh-led-bullets{
  margin:2px 0 0 0;
  padding-left:14px;
  font-size:9.5px;
  color:#e2e8f0;
  font-weight:700;
  line-height:1.35;
  text-shadow:0 1px 3px rgba(0,0,0,.9);
  list-style-type:disc;
}
.nh-led-bullets li{margin-bottom:1px}

.nh-led-scanlines{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:4;
  background:linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%);
  background-size:100% 3px;
  opacity:0.5;
}

/* Layer 3: Foreground MC Anchor (BTV Minh Anh) sitting at desk */
.nh-mc-anchor-wrap{
  position:absolute;
  left:4%;
  bottom:0;
  width:49%;
  height:76%;
  z-index:6;
  pointer-events:none;
  display:flex;
  align-items:flex-end;
  animation:mcBreathe 4s ease-in-out infinite;
  will-change:transform;
}

/* Layer 1: Base MC (Full body, 100% stable, zero vibration) */
.nh-mc-base-layer{
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:auto;
  display:block;
  object-fit:contain;
  filter:drop-shadow(4px 0 16px rgba(0,0,0,.85));
  z-index:1;
  opacity:1;
  pointer-events:none;
}

/* Layer 2: Mouth Lip-Sync overlay (only 0.8% mouth pixels, perfectly aligned) */
.nh-mc-mouth-layer{
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:auto;
  display:block;
  object-fit:contain;
  z-index:3;
  opacity:0;
  transition:opacity 0.07s ease-in-out;
  pointer-events:none;
}
.nh-mc-mouth-layer.speaking{
  opacity:1;
}

/* Layer 4: Gesture overlay (points to LED screen on topic changes) */
.nh-mc-gesture-layer{
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:auto;
  display:block;
  object-fit:contain;
  filter:drop-shadow(4px 0 16px rgba(0,0,0,.85));
  z-index:4;
  opacity:0;
  transition:opacity 0.35s ease-in-out;
  pointer-events:none;
}
.nh-mc-gesture-layer.active{
  opacity:1;
}

@keyframes mcBreathe{
  0%,100%{transform:scale(1.0) translateY(0)}
  50%{transform:scale(1.006) translateY(-2px)}
}

/* Wave Bar & Keyframes (used by bottom control wave) */
.nh-wave-bar{
  width:2.5px;
  height:3px;
  background:#60a5fa;
  border-radius:1px;
  transition:height .15s ease;
}
@keyframes nhWavePulse{0%{height:3px;background:#60a5fa}100%{height:12px;background:#38bdf8;box-shadow:0 0 5px #38bdf8}}

/* Topbar: STR Financial TV header */
.nh-studio-topbar{
  position:absolute;
  top:0;
  left:0;
  right:0;
  z-index:12;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:8px 12px;
  pointer-events:none;
}
.nh-studio-topbar > *{pointer-events:auto}
.nh-studio-live-badge{display:flex;align-items:center;gap:7px;background:rgba(0,0,0,.75);backdrop-filter:blur(8px);border:1px solid rgba(239,68,68,.5);border-radius:6px;padding:3px 9px}
.nh-live-dot{width:7px;height:7px;border-radius:50%;background:#ef4444;box-shadow:0 0 8px #ef4444;animation:livePulse 1.4s infinite;flex-shrink:0}
@keyframes livePulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.85)}}
.nh-live-text{font-size:10.5px;font-weight:900;color:#ef4444;letter-spacing:.5px}
.nh-session-pill{font-size:10.5px;font-weight:700;color:#f8fafc;border-left:1px solid rgba(255,255,255,.2);padding-left:8px;margin-left:3px;text-transform:uppercase}
.nh-studio-brand{display:flex;align-items:center;gap:7px;background:rgba(0,0,0,.75);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.14);border-radius:6px;padding:3px 9px}
.nh-channel-logo{font-size:10.5px;font-weight:800;letter-spacing:.8px;color:#cbd5e1}
.nh-logo-accent{color:#3b82f6}
.nh-clock-pill{font-family:monospace;font-size:10.5px;font-weight:700;color:#93c5fd;background:rgba(59,130,246,.2);padding:2px 6px;border-radius:4px}
.nh-screen-btn{
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.2);
  color:#e2e8f0;
  font-size:11px;
  padding:2px 7px;
  border-radius:4px;
  cursor:pointer;
  transition:all .2s;
}
.nh-screen-btn:hover{background:rgba(59,130,246,.4);border-color:#60a5fa;color:#fff}

/* Layer 4: Lower-Third News Headline Banner (matches target image) */
.nh-studio-headline-box{
  position:absolute;
  left:10px;
  right:10px;
  bottom:8px; /* sits right at bottom of video scene */
  z-index:14;
  background:rgba(7,11,20,.94);
  backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.14);
  border-left:4px solid #ef4444;
  border-radius:6px;
  padding:5px 12px;
  box-shadow:0 6px 24px rgba(0,0,0,.6);
  display:flex;
  align-items:center;
  gap:12px;
  transition:all .3s ease;
}
.nh-headline-live-group{
  display:flex;
  align-items:center;
  gap:6px;
  flex-shrink:0;
}
.nh-hl-clock{
  font-family:monospace;
  font-size:12px;
  font-weight:800;
  color:#e2e8f0;
  background:rgba(255,255,255,.1);
  padding:2px 6px;
  border-radius:4px;
}
.nh-hl-live-pill{
  background:#ef4444;
  color:#ffffff;
  font-size:9.5px;
  font-weight:900;
  padding:2px 6px;
  border-radius:3px;
  letter-spacing:.5px;
}
.nh-headline-text-group{
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:1px;
}
.nh-headline-title{
  font-size:12.5px;
  font-weight:800;
  color:#ffffff;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  text-transform:uppercase;
  letter-spacing:.3px;
}
.nh-headline-sub{
  font-size:10.5px;
  font-weight:500;
  color:#94a3b8;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.nh-headline-cat-badge{
  flex-shrink:0;
  background:rgba(59,130,246,.2);
  border:1px solid rgba(59,130,246,.5);
  color:#60a5fa;
  font-size:9.5px;
  font-weight:800;
  padding:2px 7px;
  border-radius:4px;
  text-transform:uppercase;
}

/* OSD Overlay */
.nh-osd-overlay{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
  z-index:25;
  opacity:0;
}
.nh-osd-overlay.flash{animation:nhOsdFlash .65s ease-out forwards}
@keyframes nhOsdFlash{
  0%{opacity:0;transform:scale(0.7)}
  30%{opacity:1;transform:scale(1.1)}
  70%{opacity:.8;transform:scale(1)}
  100%{opacity:0;transform:scale(1.02)}
}
.nh-osd-icon{
  width:56px;
  height:56px;
  border-radius:50%;
  background:rgba(0,0,0,.82);
  border:2px solid rgba(255,255,255,.4);
  backdrop-filter:blur(8px);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
  box-shadow:0 0 24px rgba(0,0,0,.8);
}

/* Layer 5: Video Player Controls Bar (matches YouTube/TV player in reference) */
.nh-studio-bottom-bar{
  position:relative;
  z-index:16;
  height:38px;
  background:rgba(8,12,18,.98);
  border-top:1px solid rgba(255,255,255,.1);
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 10px;
  gap:10px;
  flex-shrink:0;
}
.nh-bottom-left-controls{
  display:flex;
  align-items:center;
  gap:7px;
  flex-shrink:0;
}
.nh-bottom-play-btn{
  width:26px;
  height:26px;
  border-radius:50%;
  background:#ef4444;
  border:none;
  color:#fff;
  font-size:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:all .2s;
  flex-shrink:0;
}
.nh-bottom-play-btn:hover{background:#dc2626;transform:scale(1.06)}

.nh-mute-unmute-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:26px;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.2);
  color:#cbd5e1;
  font-size:12px;
  border-radius:4px;
  cursor:pointer;
  transition:all .2s;
  flex-shrink:0;
}
.nh-mute-unmute-btn:hover{background:rgba(59,130,246,.4);border-color:#60a5fa;color:#fff}
.nh-mute-unmute-btn.unmuted{background:rgba(16,185,129,.25);border-color:rgba(16,185,129,.7);color:#34d399}

/* Modern Compact Volume Control Group */
.nh-volume-control{
  display:flex;
  align-items:center;
  gap:6px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  border-radius:6px;
  padding:2px 7px 2px 2px;
  transition:all .2s ease;
}
.nh-volume-control:hover{
  background:rgba(255,255,255,.1);
  border-color:rgba(56,189,248,.5);
}
.nh-volume-slider-wrap{
  display:flex;
  align-items:center;
  width:64px;
}
.nh-volume-slider{
  -webkit-appearance:none;
  appearance:none;
  width:100%;
  height:4px;
  background:rgba(255,255,255,.25);
  border-radius:2px;
  outline:none;
  cursor:pointer;
  transition:background .2s;
}
.nh-volume-slider:hover{
  background:rgba(255,255,255,.45);
}
.nh-volume-slider::-webkit-slider-thumb{
  -webkit-appearance:none;
  appearance:none;
  width:12px;
  height:12px;
  border-radius:50%;
  background:#38bdf8;
  box-shadow:0 0 6px #0284c7;
  cursor:pointer;
  transition:transform .15s, background .15s;
}
.nh-volume-slider::-webkit-slider-thumb:hover{
  transform:scale(1.25);
  background:#60a5fa;
}
.nh-volume-slider::-moz-range-thumb{
  width:12px;
  height:12px;
  border-radius:50%;
  background:#38bdf8;
  border:none;
  box-shadow:0 0 6px #0284c7;
  cursor:pointer;
}

.nh-bottom-live-badge{
  display:flex;
  align-items:center;
  gap:5px;
  color:#ef4444;
  font-size:10px;
  font-weight:800;
  letter-spacing:.4px;
  margin-left:2px;
  white-space:nowrap;
}

/* Progress Timeline */
.nh-progress-area{
  flex:1;
  display:flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  min-width:60px;
}
.nh-progress-bar{
  flex:1;
  height:4px;
  background:rgba(255,255,255,.15);
  border-radius:2px;
  overflow:hidden;
  position:relative;
  transition:height .15s;
}
.nh-progress-area:hover .nh-progress-bar{height:6px}
.nh-progress-fill{
  height:100%;
  background:#ef4444;
  border-radius:2px;
  transition:width .12s linear;
}
.nh-time-display{
  font-family:monospace;
  font-size:10.5px;
  color:#94a3b8;
  font-weight:600;
  white-space:nowrap;
}

.nh-bottom-right-controls{
  display:flex;
  align-items:center;
  gap:6px;
  flex-shrink:0;
}
.nh-bottom-wave{
  display:flex;
  align-items:flex-end;
  gap:2px;
  height:14px;
}
.nh-bottom-wave .nh-wave-bar{
  width:2.5px;
  height:3px;
  background:#60a5fa;
  border-radius:1px;
}
.nh-bottom-wave.speaking .nh-wave-bar:nth-child(1){animation:nhWavePulse .5s infinite alternate}
.nh-bottom-wave.speaking .nh-wave-bar:nth-child(2){animation:nhWavePulse .4s infinite alternate .1s}
.nh-bottom-wave.speaking .nh-wave-bar:nth-child(3){animation:nhWavePulse .6s infinite alternate .2s}
.nh-bottom-wave.speaking .nh-wave-bar:nth-child(4){animation:nhWavePulse .45s infinite alternate .15s}

.nh-ctrl-icon-btn{
  background:transparent;
  border:none;
  color:#94a3b8;
  font-size:13px;
  cursor:pointer;
  padding:2px 5px;
  border-radius:3px;
  transition:all .2s;
}
.nh-ctrl-icon-btn:hover{color:#fff;background:rgba(255,255,255,.1)}

/* Playlist Column (Right 36%) - Full Stretch, no scrollbar on container */
.nh-studio-playlist-col{
  background:#0f141c;
  border:1px solid rgba(255,255,255,.1);
  border-radius:12px;
  padding:12px;
  display:flex;
  flex-direction:column;
  gap:10px;
  min-width:0;
  height:100%;
  box-shadow:0 4px 20px rgba(0,0,0,.3);
  overflow:hidden;
}
.nh-playlist-head{display:flex;justify-content:space-between;align-items:center;gap:8px;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:10px;flex-wrap:wrap;flex-shrink:0}
.nh-pl-title-wrap{display:flex;align-items:center;gap:8px}
.nh-pl-icon{font-size:18px}
.nh-pl-title{font-size:12px;font-weight:800;letter-spacing:.4px;color:#f8fafc;text-transform:uppercase}
.nh-pl-sub{font-size:10px;color:#64748b}
.nh-live-stream-badge{display:flex;align-items:center;gap:6px;background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.4);color:#ef4444;font-size:10px;font-weight:800;border-radius:6px;padding:4px 8px;white-space:nowrap}

/* Playlist items: scrollable, thin custom scrollbar, no overflow on parent */
.nh-playlist-items{
  display:flex;
  flex-direction:column;
  gap:8px;
  overflow-y:auto;
  flex:1;
  min-height:0;
  max-height:100%;
  padding-right:4px;
}
.nh-playlist-items::-webkit-scrollbar{width:4px}
.nh-playlist-items::-webkit-scrollbar-track{background:transparent}
.nh-playlist-items::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:2px}

/* Playlist Card */
.nh-pl-card{display:grid;grid-template-columns:105px minmax(0,1fr);gap:10px;background:#121722;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:8px;cursor:pointer;transition:all .2s;position:relative}
.nh-pl-card:hover{border-color:rgba(59,130,246,.5);background:#161c28;transform:translateY(-1px)}
.nh-pl-card.active{border-color:#3b82f6;background:rgba(59,130,246,.12);box-shadow:0 0 12px rgba(59,130,246,.25)}
.nh-pl-thumb-wrap{position:relative;width:105px;aspect-ratio:16/9;border-radius:6px;overflow:hidden;flex-shrink:0}
.nh-pl-thumb{width:100%;height:100%;object-fit:cover;display:block}
.nh-pl-dur{position:absolute;right:4px;bottom:4px;background:rgba(0,0,0,.75);color:#fff;font-size:9px;font-weight:700;padding:1px 4px;border-radius:3px}
.nh-pl-card-body{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0}
.nh-pl-card-meta{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:2px}
.nh-pl-time{font-size:10px;font-weight:800;color:#60a5fa}
.nh-pl-badge{display:none;font-size:9px;font-weight:800;padding:1px 6px;border-radius:4px;text-transform:uppercase}
.nh-pl-badge.live{display:inline-block;background:#ef4444;color:#fff;animation:livePulse 1.4s infinite}
.nh-pl-card-title{font-size:12px;font-weight:700;color:#f8fafc;line-height:1.3;margin:0 0 2px 0}
.nh-pl-card-sum{font-size:10px;color:#94a3b8;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* Block Cards (4 Pillar Blocks) */
.nh-block-card{padding:10px;gap:12px;grid-template-columns:115px minmax(0,1fr);border-left:3px solid #3b82f6}
.nh-block-card.active{border-left:3px solid #ef4444}
.nh-block-thumb-wrap{width:115px}
.nh-block-title{font-size:12.5px;font-weight:800;color:#f8fafc;line-height:1.35;margin-bottom:4px}
.nh-block-bullets{list-style:none;padding:0;margin:3px 0 0 0;display:flex;flex-direction:column;gap:3px}
.nh-block-bullet-item{display:flex;align-items:flex-start;gap:5px;font-size:10.5px;color:#cbd5e1;line-height:1.35}
.nh-bullet-dot{color:#3b82f6;font-size:9px;line-height:1.4;flex-shrink:0}
.nh-bullet-text{flex:1;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}

/* Event Radar & Commodity Scenario Matrix Widget */
.nh-event-radar-wrap{background:#10151f;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:12px;margin-top:10px;display:flex;flex-direction:column;gap:10px}
.nh-radar-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:8px;flex-wrap:wrap;gap:8px}
.nh-radar-title-group{display:flex;align-items:center;gap:8px}
.nh-radar-icon{font-size:16px;background:rgba(245,158,11,.15);color:#f59e0b;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid rgba(245,158,11,.3)}
.nh-radar-title{font-size:12px;font-weight:800;color:#f8fafc;letter-spacing:.4px;text-transform:uppercase}
.nh-radar-sub{font-size:10px;color:#94a3b8}
.nh-radar-live-badge{display:flex;align-items:center;gap:6px;background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.35);color:#fca5a5;font-size:9px;font-weight:800;padding:3px 8px;border-radius:4px;letter-spacing:.5px}
.nh-radar-pulse{width:6px;height:6px;border-radius:50%;background:#ef4444;box-shadow:0 0 6px #ef4444;animation:livePulse 1.4s infinite}
.nh-radar-grid{display:grid;grid-template-columns:minmax(0,38fr) minmax(0,62fr);gap:12px;align-items:stretch}
.nh-radar-focus-card{background:#141a26;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:8px;border-left:3px solid #f59e0b}
.nh-focus-top{display:flex;justify-content:space-between;align-items:center}
.nh-focus-tag{font-size:9px;font-weight:800;text-transform:uppercase;padding:2px 6px;border-radius:4px;background:rgba(245,158,11,.2);color:#fcd34d}
.nh-focus-time{font-size:10px;font-weight:700;color:#93c5fd}
.nh-focus-event-name{font-size:13px;font-weight:800;color:#fff;line-height:1.35}
.nh-focus-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:10.5px;color:#cbd5e1}
.nh-meta-badge{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:4px;padding:2px 6px}
.nh-countdown-box{display:flex;align-items:center;justify-content:center;gap:8px;background:#0b0e14;border:1px solid rgba(59,130,246,.25);border-radius:6px;padding:8px;margin:2px 0}
.nh-cd-item{display:flex;flex-direction:column;align-items:center}
.nh-cd-val{font-family:'Consolas','Courier New',monospace;font-size:20px;font-weight:800;color:#38bdf8;line-height:1}
.nh-cd-lbl{font-size:8px;font-weight:700;color:#64748b;margin-top:3px}
.nh-cd-sep{font-size:18px;font-weight:700;color:#475569;margin-top:-6px}
.nh-focus-advice{display:flex;gap:8px;align-items:flex-start;font-size:10px;line-height:1.35;color:#94a3b8;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);border-radius:6px;padding:6px 8px}
.nh-advice-icon{font-size:14px;flex-shrink:0}
.nh-focus-advice strong{color:#fca5a5}
.nh-radar-matrix{display:flex;flex-direction:column;gap:6px}
.nh-matrix-title{font-size:10.5px;font-weight:800;color:#94a3b8;text-transform:uppercase;letter-spacing:.4px}
.nh-matrix-cards{display:flex;flex-direction:column;gap:6px;flex:1}
.nh-scenario-card{background:#141a26;border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:7px 10px;display:flex;flex-direction:column;gap:4px}
.nh-scenario-card.energy{border-left:3px solid #f97316}
.nh-scenario-card.agro{border-left:3px solid #22c55e}
.nh-scenario-card.metals{border-left:3px solid #8b5cf6}
.nh-scen-head{display:flex;justify-content:space-between;align-items:center;font-size:10.5px;font-weight:800}
.nh-scenario-card.energy .nh-scen-cat{color:#fdba74}
.nh-scenario-card.agro .nh-scen-cat{color:#86efac}
.nh-scenario-card.metals .nh-scen-cat{color:#c4b5fd}
.nh-scen-vol{font-size:9px;color:#64748b;background:rgba(255,255,255,.06);padding:1px 5px;border-radius:3px}
.nh-scen-row{display:flex;align-items:center;gap:8px;font-size:10px;line-height:1.35}
.nh-tag-dir{font-size:8.5px;font-weight:800;padding:1px 5px;border-radius:3px;flex-shrink:0;text-transform:uppercase}
.nh-tag-dir.buy{background:rgba(16,185,129,.2);color:#34d399;border:1px solid rgba(16,185,129,.35)}
.nh-tag-dir.sell{background:rgba(239,68,68,.2);color:#f87171;border:1px solid rgba(239,68,68,.35)}
.nh-tag-dir.hold{background:rgba(148,163,184,.15);color:#94a3b8;border:1px solid rgba(148,163,184,.3)}
.nh-scen-desc{color:#cbd5e1}
/* Bottom Market Strip under Player Screen */
.nh-studio-stats-strip{
  margin-top:10px;
  background:#090d16;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:8px;
  padding:10px 12px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.nh-stats-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.nh-stats-title{
  font-size:10.5px;
  font-weight:800;
  color:#94a3b8;
  letter-spacing:0.5px;
  text-transform:uppercase;
}
.nh-stats-live-tag{
  font-size:9px;
  font-weight:900;
  color:#22c55e;
  background:rgba(34,197,94,0.12);
  border:1px solid rgba(34,197,94,0.3);
  padding:1px 5px;
  border-radius:3px;
}
.nh-stats-cards-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:7px;
}
.nh-stat-item{
  background:#111726;
  border:1px solid rgba(255,255,255,0.06);
  border-radius:6px;
  padding:6px 8px;
  display:flex;
  flex-direction:column;
  gap:2px;
  transition:all 0.2s;
}
.nh-stat-item:hover{
  border-color:rgba(59,130,246,0.4);
  background:#162033;
}
.nh-stat-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.nh-stat-name{
  font-size:9.5px;
  font-weight:700;
  color:#cbd5e1;
}
.nh-stat-chg{
  font-size:9.5px;
  font-weight:800;
}
.nh-stat-chg.up{color:#22c55e}
.nh-stat-chg.down{color:#ef4444}
.nh-stat-price{
  font-size:13px;
  font-weight:800;
  color:#f8fafc;
}
.nh-stat-unit{
  font-size:8.5px;
  font-weight:500;
  color:#64748b;
}
.nh-stat-desc{
  font-size:9px;
  color:#94a3b8;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.nh-desk-rec-banner{
  display:flex;
  align-items:center;
  gap:8px;
  background:#131b2e;
  border:1px solid rgba(255,255,255,0.06);
  border-radius:5px;
  padding:5px 8px;
}
.nh-desk-rec-badge{
  flex-shrink:0;
  font-size:8.5px;
  font-weight:800;
  color:#f59e0b;
  background:rgba(245,158,11,0.15);
  border:1px solid rgba(245,158,11,0.4);
  padding:1px 5px;
  border-radius:3px;
  text-transform:uppercase;
}
.nh-desk-rec-text{
  font-size:10px;
  color:#cbd5e1;
  line-height:1.35;
}

@media (max-width:1100px){
  .nh-radar-grid{grid-template-columns:1fr}
  .nh-body{grid-template-columns:1fr}
  .nh-calendar-layout{grid-template-columns:1fr}
  .nh-feed{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}
  .nh-studio-container{grid-template-columns:1fr}
  .nh-mc-overlay{width:22%;max-width:140px}
  .nh-studio-headline-box{margin-left:24%}
}

/* =============================================================
   INLINE COMMODITY RESEARCH REPORTS HUB
   ============================================================= */
.nh-reports-section {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-top: 14px;
  width: 100%;
}
.nh-reports-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  padding: 12px 16px;
  background: linear-gradient(90deg, rgba(30, 41, 59, 0.7), rgba(15, 23, 42, 0.95));
  border: 1px solid rgba(59, 130, 246, 0.25);
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
}
.nh-reports-title-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
}
.nh-reports-icon {
  font-size: 20px;
  background: rgba(59, 130, 246, 0.2);
  color: #60a5fa;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(59, 130, 246, 0.4);
  flex-shrink: 0;
}
.nh-reports-title {
  font-size: 13.5px;
  font-weight: 800;
  color: #f8fafc;
  letter-spacing: 0.4px;
}
.nh-reports-sub {
  font-size: 11px;
  color: #94a3b8;
}
.nh-reports-filter-bar {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  align-items: center;
}
.nh-report-filter-btn {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: #94a3b8;
  border-radius: 999px;
  padding: 5px 12px;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
}
.nh-report-filter-btn:hover {
  background: rgba(59, 130, 246, 0.18);
  color: #93c5fd;
  border-color: rgba(59, 130, 246, 0.4);
}
.nh-report-filter-btn.active {
  background: #2563eb !important;
  color: #fff !important;
  border-color: #3b82f6 !important;
  box-shadow: 0 0 10px rgba(37, 99, 235, 0.45);
}
.nh-reports-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(460px, 1fr));
  gap: 14px;
  width: 100%;
}
.nh-report-card {
  background: #111622;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 10px;
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: border-color 0.25s, box-shadow 0.25s, transform 0.2s;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25);
}
.nh-report-card:hover {
  border-color: rgba(59, 130, 246, 0.4);
  box-shadow: 0 6px 22px rgba(0, 0, 0, 0.35);
  transform: translateY(-1px);
}
.nh-report-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.nh-report-badges {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.nh-cat-pill {
  font-size: 9.5px;
  font-weight: 800;
  padding: 2px 7px;
  border-radius: 4px;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}
.nh-sym-pill {
  font-size: 10px;
  font-weight: 800;
  padding: 2px 7px;
  border-radius: 4px;
  background: rgba(59, 130, 246, 0.15);
  color: #60a5fa;
  border: 1px solid rgba(59, 130, 246, 0.35);
  font-family: monospace;
}
.nh-type-pill {
  font-size: 9px;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.06);
  color: #94a3b8;
  letter-spacing: 0.3px;
}
.nh-signal-tag {
  font-size: 10px;
  font-weight: 800;
  padding: 3px 9px;
  border-radius: 5px;
  letter-spacing: 0.3px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
}
.nh-signal-tag.buy {
  background: rgba(16, 185, 129, 0.18);
  color: #34d399;
  border: 1px solid rgba(16, 185, 129, 0.45);
  box-shadow: 0 0 8px rgba(16, 185, 129, 0.25);
}
.nh-signal-tag.sell {
  background: rgba(239, 68, 68, 0.18);
  color: #f87171;
  border: 1px solid rgba(239, 68, 68, 0.45);
  box-shadow: 0 0 8px rgba(239, 68, 68, 0.25);
}
.nh-signal-tag.watch {
  background: rgba(245, 158, 11, 0.18);
  color: #fbbf24;
  border: 1px solid rgba(245, 158, 11, 0.45);
  box-shadow: 0 0 8px rgba(245, 158, 11, 0.25);
}
.nh-signal-dot {
  font-size: 8px;
}
.nh-report-title {
  font-size: 13px;
  font-weight: 800;
  color: #f8fafc;
  line-height: 1.45;
}
.nh-report-setup-box {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  background: #141a26;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 8px;
  padding: 8px 10px;
}
.nh-setup-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
  overflow: hidden;
}
.nh-setup-lbl {
  font-size: 9px;
  color: #64748b;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.nh-setup-val {
  font-size: 11.5px;
  font-weight: 800;
  color: #e2e8f0;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.nh-setup-val.entry { color: #38bdf8; }
.nh-setup-val.tp { color: #34d399; }
.nh-setup-val.sl { color: #f87171; }
.nh-setup-val.rr { color: #fbbf24; }
.nh-report-summary {
  font-size: 11.5px;
  line-height: 1.6;
  color: #cbd5e1;
}
.nh-report-details {
  margin-top: 6px;
  padding-top: 10px;
  border-top: 1px dashed rgba(255, 255, 255, 0.1);
  font-size: 11.5px;
  line-height: 1.65;
  color: #cbd5e1;
  background: rgba(255, 255, 255, 0.02);
  border-radius: 6px;
  padding: 10px;
}
.nh-report-details.hidden {
  display: none !important;
}
.nh-report-foot {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding-top: 8px;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  margin-top: auto;
  flex-wrap: wrap;
}
.nh-report-toggle-btn {
  background: rgba(59, 130, 246, 0.12);
  border: 1px solid rgba(59, 130, 246, 0.35);
  color: #93c5fd;
  border-radius: 6px;
  padding: 4px 10px;
  font-size: 10.5px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s ease;
}
.nh-report-toggle-btn:hover {
  background: rgba(59, 130, 246, 0.25);
  border-color: #3b82f6;
  color: #fff;
}
.nh-report-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 10px;
  color: #64748b;
  flex-wrap: wrap;
}
@media (max-width: 900px) {
  .nh-reports-grid {
    grid-template-columns: 1fr;
  }
  .nh-report-setup-box {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ===================================================
   STR DYNAMIC THEME SYSTEM INTEGRATION (#news-tab)
   =================================================== */

/* Container and Layout */
#news-tab .nh-wrap {
    background: var(--str-bg-base, #0b0e14) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
    color: var(--str-text-main, #e2e8f0) !important;
    transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

body.str-themed-borders #news-tab .nh-wrap {
    border-color: var(--str-accent, #3b82f6) !important;
    box-shadow: 0 0 16px var(--str-accent-soft, rgba(59, 130, 246, 0.18)) !important;
}

/* Ticker on top */
.nh-tick {
    background: var(--str-bg-card, #121722) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.1)) !important;
    transition: all 0.2s ease;
}
.nh-tick:hover {
    border-color: var(--str-accent, #3b82f6) !important;
}
.nh-tick-name {
    color: var(--str-text-muted, #94a3b8) !important;
}
.nh-tick-sym {
    color: var(--str-text-muted, #64748b) !important;
}
.nh-tick-price {
    color: var(--str-text-main, #ffffff) !important;
}

/* Main Container and Sidebar */
.nh-main {
    background: var(--str-bg-surface, #0f141c) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.1)) !important;
    transition: background 0.25s ease, border-color 0.25s ease;
}

.nh-side-block {
    background: var(--str-bg-surface, #0f141c) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.1)) !important;
    transition: background 0.25s ease, border-color 0.25s ease;
}
.nh-side-block h3 {
    color: var(--str-text-main, #e2e8f0) !important;
    border-bottom: 2px solid var(--str-accent, #3b82f6) !important;
    padding-bottom: 4px;
}
.nh-side-title {
    color: var(--str-text-main, #f1f5f9) !important;
}
.nh-side-meta,
.nh-side-src {
    color: var(--str-text-muted, #64748b) !important;
}
.nh-side-item {
    border-bottom-color: var(--str-border-subtle, rgba(255, 255, 255, 0.06)) !important;
    transition: background 0.2s ease;
}
.nh-side-item:hover {
    background: var(--str-accent-soft, rgba(59, 130, 246, 0.08)) !important;
}

/* Subtabs Nav */
.nh-subtab {
    color: var(--str-text-muted, #94a3b8) !important;
    transition: color 0.2s ease, border-color 0.2s ease;
}
.nh-subtab:hover {
    color: var(--str-text-main, #ffffff) !important;
}
.nh-subtab.active {
    color: var(--str-accent, #3b82f6) !important;
    border-bottom: 2px solid var(--str-accent, #3b82f6) !important;
    font-weight: 700 !important;
}

.nh-reload {
    background: var(--str-accent-soft, rgba(59, 130, 246, 0.15)) !important;
    border: 1px solid var(--str-accent, #3b82f6) !important;
    color: var(--str-accent, #93c5fd) !important;
    transition: all 0.2s ease;
}
.nh-reload:hover {
    background: var(--str-accent, #3b82f6) !important;
    color: var(--str-accent-fg, #ffffff) !important;
}

/* Calendar & Filters */
.nh-month,
.nh-filters,
.nh-impact-legend {
    background: var(--str-bg-card, #121722) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
    color: var(--str-text-main, #e2e8f0) !important;
}
.nh-filter-label {
    color: var(--str-text-main, #e2e8f0) !important;
}
.nh-month-head {
    color: var(--str-text-main, #ffffff) !important;
}
.nh-month-head button {
    color: var(--str-text-muted, #94a3b8) !important;
}
.nh-month-head button:hover {
    color: var(--str-accent, #3b82f6) !important;
}
.nh-dow {
    color: var(--str-text-muted, #64748b) !important;
}
.nh-day {
    color: var(--str-text-main, #cbd5e1) !important;
    transition: all 0.2s ease;
}
.nh-day:hover {
    background: var(--str-accent-soft, rgba(59, 130, 246, 0.15)) !important;
    color: var(--str-accent, #3b82f6) !important;
}
.nh-day.muted {
    color: var(--str-text-muted, #475569) !important;
    opacity: 0.45;
}
.nh-day.selected {
    background: var(--str-accent, #2563eb) !important;
    color: var(--str-accent-fg, #ffffff) !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 10px var(--str-accent-soft, rgba(37, 99, 235, 0.35)) !important;
}
.nh-day.has-event {
    box-shadow: inset 0 -2px 0 var(--str-accent, #60a5fa) !important;
}
.nh-day.selected.has-event {
    box-shadow: 0 2px 10px var(--str-accent-soft, rgba(37, 99, 235, 0.35)), inset 0 -2px 0 #ffffff !important;
}
.nh-filters select {
    background: var(--str-bg-base, #0b0e14) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.12)) !important;
    color: var(--str-text-main, #e2e8f0) !important;
}
.nh-cal-table-wrap {
    background: var(--str-bg-card, #121722) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
}
.nh-cal-table th {
    background: var(--str-bg-surface, #121722) !important;
    color: var(--str-text-muted, #94a3b8) !important;
    border-bottom-color: var(--str-border-subtle, rgba(255, 255, 255, 0.1)) !important;
}
.nh-cal-table td {
    border-bottom-color: var(--str-border-subtle, rgba(255, 255, 255, 0.06)) !important;
    color: var(--str-text-main, #e2e8f0) !important;
}
.nh-cal-table tbody tr:hover td {
    background: var(--str-accent-soft, rgba(59, 130, 246, 0.06)) !important;
}
.nh-cal-dayrow td {
    background: var(--str-bg-base, #0d1219) !important;
    color: var(--str-accent, #93c5fd) !important;
}

/* Event Radar & Focus Card */
.nh-event-radar-wrap {
    background: var(--str-bg-surface, #0f141c) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
}
.nh-radar-head {
    border-bottom-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
}
.nh-radar-title {
    color: var(--str-accent, #38bdf8) !important;
}
.nh-radar-sub {
    color: var(--str-text-muted, #94a3b8) !important;
}
.nh-radar-focus-card {
    background: var(--str-bg-card, #141a26) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.07)) !important;
}
.nh-focus-tag {
    background: var(--str-accent-soft, rgba(56, 189, 248, 0.15)) !important;
    color: var(--str-accent, #38bdf8) !important;
    border-color: var(--str-accent, rgba(56, 189, 248, 0.35)) !important;
}
.nh-focus-time {
    color: var(--str-text-muted, #94a3b8) !important;
}
.nh-focus-event-name {
    color: var(--str-text-main, #f8fafc) !important;
}
.nh-meta-badge {
    background: var(--str-bg-base, #0d1219) !important;
    color: var(--str-text-muted, #94a3b8) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
}
.nh-meta-badge strong {
    color: var(--str-text-main, #e2e8f0) !important;
}
.nh-countdown-box {
    background: var(--str-bg-base, #090d14) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
}
.nh-cd-val {
    color: var(--str-accent, #38bdf8) !important;
}
.nh-cd-lbl {
    color: var(--str-text-muted, #64748b) !important;
}
.nh-focus-advice {
    background: var(--str-accent-soft, rgba(245, 158, 11, 0.08)) !important;
    border-color: var(--str-accent, rgba(245, 158, 11, 0.3)) !important;
    color: var(--str-text-main, #cbd5e1) !important;
}
.nh-matrix-title {
    color: var(--str-text-muted, #94a3b8) !important;
}
.nh-scenario-card {
    background: var(--str-bg-card, #141a26) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.07)) !important;
}
.nh-scen-head {
    border-bottom-color: var(--str-border-subtle, rgba(255, 255, 255, 0.06)) !important;
}
.nh-scen-cat {
    color: var(--str-text-main, #f8fafc) !important;
}
.nh-scen-vol {
    color: var(--str-accent, #38bdf8) !important;
}
.nh-scen-desc {
    color: var(--str-text-muted, #cbd5e1) !important;
}

/* Feed Cards */
.nh-feed-item {
    background: var(--str-bg-card, #121722) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
    transition: all 0.2s ease;
}
.nh-feed-item:hover {
    border-color: var(--str-accent, rgba(59, 130, 246, 0.5)) !important;
    box-shadow: 0 4px 16px var(--str-accent-soft, rgba(0, 0, 0, 0.3)) !important;
}
.nh-feed-title {
    color: var(--str-text-main, #f8fafc) !important;
}
.nh-feed-sum {
    color: var(--str-text-muted, #94a3b8) !important;
}

/* Analysis 2-Tier */
.nh-an-top-tier {
    background: var(--str-bg-card, #111622) !important;
    border-color: var(--str-border-subtle, rgba(59, 130, 246, 0.25)) !important;
}
.nh-an-top-header {
    background: linear-gradient(90deg, var(--str-accent-soft, rgba(59, 130, 246, 0.15)), var(--str-bg-surface, rgba(15, 20, 30, 0.8))) !important;
    border-bottom-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
}
.nh-an-top-icon {
    background: var(--str-accent-soft, rgba(59, 130, 246, 0.2)) !important;
    color: var(--str-accent, #60a5fa) !important;
    border-color: var(--str-accent, rgba(59, 130, 246, 0.4)) !important;
}
.nh-an-top-title {
    color: var(--str-text-main, #f8fafc) !important;
}
.nh-an-top-sub {
    color: var(--str-text-muted, #94a3b8) !important;
}
.nh-an-top-tag {
    color: var(--str-accent, #93c5fd) !important;
    background: var(--str-accent-soft, rgba(59, 130, 246, 0.2)) !important;
    border-color: var(--str-accent, rgba(59, 130, 246, 0.35)) !important;
}
.nh-macro-col {
    background: var(--str-bg-surface, #141a26) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.07)) !important;
}
.nh-macro-col.col-main {
    border-left: 3px solid var(--str-accent, #3b82f6) !important;
}
.nh-macro-col.col-main .nh-macro-col-title {
    color: var(--str-accent, #93c5fd) !important;
}
.nh-macro-col-content {
    color: var(--str-text-main, #cbd5e1) !important;
}
.nh-comm-row {
    background: var(--str-bg-base, rgba(255, 255, 255, 0.025)) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.05)) !important;
}
.nh-comm-row:hover {
    background: var(--str-accent-soft, rgba(255, 255, 255, 0.05)) !important;
    border-color: var(--str-accent, rgba(59, 130, 246, 0.25)) !important;
}
.nh-comm-desc {
    color: var(--str-text-main, #cbd5e1) !important;
}
.nh-an-bottom-title {
    color: var(--str-text-muted, #94a3b8) !important;
}
.nh-an-sector-card {
    background: var(--str-bg-card, #111622) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
}
.nh-an-sector-card:hover {
    border-color: var(--str-accent, rgba(59, 130, 246, 0.35)) !important;
    box-shadow: 0 4px 18px var(--str-accent-soft, rgba(0, 0, 0, 0.35)) !important;
}
.nh-an-sec-head {
    background: var(--str-bg-surface, #141a26) !important;
    border-bottom-color: var(--str-border-subtle, rgba(255, 255, 255, 0.06)) !important;
}
.nh-an-sec-title {
    color: var(--str-text-main, #f8fafc) !important;
}
.nh-an-sec-sub {
    color: var(--str-text-muted, #64748b) !important;
}
.nh-an-sec-body {
    color: var(--str-text-main, #cbd5e1) !important;
}
.nh-an-h1 {
    color: var(--str-accent, #60a5fa) !important;
    border-bottom-color: var(--str-border-subtle, rgba(255, 255, 255, 0.1)) !important;
}
.nh-an-h2 {
    color: var(--str-accent, #93c5fd) !important;
}
.nh-an-h3 {
    color: var(--str-text-main, #e2e8f0) !important;
}
.nh-an-dot {
    color: var(--str-accent, #3b82f6) !important;
}

/* Reports Grid & Filters */
.nh-report-filter-btn {
    background: var(--str-bg-card, rgba(255, 255, 255, 0.06)) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.12)) !important;
    color: var(--str-text-muted, #94a3b8) !important;
}
.nh-report-filter-btn:hover {
    background: var(--str-accent-soft, rgba(59, 130, 246, 0.18)) !important;
    color: var(--str-accent, #93c5fd) !important;
    border-color: var(--str-accent, #3b82f6) !important;
}
.nh-report-filter-btn.active {
    background: var(--str-accent, #2563eb) !important;
    color: var(--str-accent-fg, #ffffff) !important;
    border-color: var(--str-accent, #3b82f6) !important;
    box-shadow: 0 0 10px var(--str-accent-soft, rgba(37, 99, 235, 0.45)) !important;
}
.nh-report-card {
    background: var(--str-bg-card, #111622) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
}
.nh-report-card:hover {
    border-color: var(--str-accent, rgba(59, 130, 246, 0.4)) !important;
}
.nh-report-title {
    color: var(--str-text-main, #f8fafc) !important;
}
.nh-report-setup-box {
    background: var(--str-bg-surface, #141a26) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.07)) !important;
}
.nh-setup-lbl {
    color: var(--str-text-muted, #64748b) !important;
}
.nh-setup-val {
    color: var(--str-text-main, #e2e8f0) !important;
}
.nh-setup-val.entry {
    color: var(--str-accent, #38bdf8) !important;
}
.nh-report-summary,
.nh-report-details {
    color: var(--str-text-main, #cbd5e1) !important;
}
.nh-report-details {
    background: var(--str-bg-surface, rgba(255, 255, 255, 0.02)) !important;
    border-top-color: var(--str-border-subtle, rgba(255, 255, 255, 0.1)) !important;
}
.nh-report-toggle-btn {
    background: var(--str-accent-soft, rgba(59, 130, 246, 0.12)) !important;
    border-color: var(--str-accent, rgba(59, 130, 246, 0.35)) !important;
    color: var(--str-accent, #93c5fd) !important;
}
.nh-report-toggle-btn:hover {
    background: var(--str-accent, #3b82f6) !important;
    color: var(--str-accent-fg, #ffffff) !important;
}
.nh-report-meta {
    color: var(--str-text-muted, #64748b) !important;
}

/* STR Financial TV */
.nh-studio-stats-strip {
    background: var(--str-bg-card, #0f141c) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
}
.nh-stat-item {
    background: var(--str-bg-surface, #141a26) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.07)) !important;
}
.nh-stat-name {
    color: var(--str-text-muted, #94a3b8) !important;
}
.nh-stat-price {
    color: var(--str-text-main, #f8fafc) !important;
}
.nh-stat-desc {
    color: var(--str-text-muted, #64748b) !important;
}
.nh-desk-rec-banner {
    background: var(--str-accent-soft, rgba(59, 130, 246, 0.1)) !important;
    border-color: var(--str-accent, rgba(59, 130, 246, 0.3)) !important;
    color: var(--str-text-main, #cbd5e1) !important;
}
.nh-desk-rec-badge {
    background: var(--str-accent, #3b82f6) !important;
    color: var(--str-accent-fg, #ffffff) !important;
}
.nh-studio-playlist-col {
    background: var(--str-bg-surface, #0f141c) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
}
.nh-playlist-head {
    border-bottom-color: var(--str-border-subtle, rgba(255, 255, 255, 0.08)) !important;
}
.nh-pl-title {
    color: var(--str-text-main, #f8fafc) !important;
}
.nh-pl-sub {
    color: var(--str-text-muted, #94a3b8) !important;
}
.nh-playlist-item {
    background: var(--str-bg-card, #141a26) !important;
    border-color: var(--str-border-subtle, rgba(255, 255, 255, 0.06)) !important;
}
.nh-playlist-item:hover {
    background: var(--str-accent-soft, rgba(59, 130, 246, 0.1)) !important;
    border-color: var(--str-accent, #3b82f6) !important;
}
.nh-playlist-item.active {
    background: var(--str-accent-soft, rgba(59, 130, 246, 0.18)) !important;
    border-color: var(--str-accent, #3b82f6) !important;
}
.nh-pl-item-title {
    color: var(--str-text-main, #f8fafc) !important;
}

/* ===================================================
   LIGHT MODE OVERRIDES (#news-tab)
   =================================================== */
body:not(.dark-mode):not(.cosmic-mode) #news-tab .nh-wrap,
body.str-pure-white #news-tab .nh-wrap {
    background: #ffffff !important;
    border-color: #e2e8f0 !important;
    color: #0f172a !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-main,
body.str-pure-white .nh-main,
body:not(.dark-mode):not(.cosmic-mode) .nh-side-block,
body.str-pure-white .nh-side-block {
    background: #f8fafc !important;
    border-color: #e2e8f0 !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-tick,
body.str-pure-white .nh-tick {
    background: #ffffff !important;
    border-color: #e2e8f0 !important;
}
body:not(.dark-mode):not(.cosmic-mode) .nh-tick-price,
body.str-pure-white .nh-tick-price {
    color: #0f172a !important;
}
body:not(.dark-mode):not(.cosmic-mode) .nh-tick-name,
body.str-pure-white .nh-tick-name {
    color: #475569 !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-month,
body.str-pure-white .nh-month,
body:not(.dark-mode):not(.cosmic-mode) .nh-filters,
body.str-pure-white .nh-filters,
body:not(.dark-mode):not(.cosmic-mode) .nh-impact-legend,
body.str-pure-white .nh-impact-legend {
    background: #ffffff !important;
    border-color: #e2e8f0 !important;
    color: #0f172a !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-month-head,
body.str-pure-white .nh-month-head {
    color: #0f172a !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-day,
body.str-pure-white .nh-day {
    color: #334155 !important;
}
body:not(.dark-mode):not(.cosmic-mode) .nh-day.muted,
body.str-pure-white .nh-day.muted {
    color: #94a3b8 !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-filters select,
body.str-pure-white .nh-filters select {
    background: #f8fafc !important;
    border-color: #cbd5e1 !important;
    color: #0f172a !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-cal-table-wrap,
body.str-pure-white .nh-cal-table-wrap {
    background: #ffffff !important;
    border-color: #e2e8f0 !important;
}
body:not(.dark-mode):not(.cosmic-mode) .nh-cal-table th,
body.str-pure-white .nh-cal-table th {
    background: #f1f5f9 !important;
    color: #334155 !important;
    border-bottom-color: #cbd5e1 !important;
}
body:not(.dark-mode):not(.cosmic-mode) .nh-cal-table td,
body.str-pure-white .nh-cal-table td {
    border-bottom-color: #f1f5f9 !important;
    color: #0f172a !important;
}
body:not(.dark-mode):not(.cosmic-mode) .nh-cal-dayrow td,
body.str-pure-white .nh-cal-dayrow td {
    background: #f8fafc !important;
    color: var(--str-accent, #2563eb) !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-feed-item,
body.str-pure-white .nh-feed-item,
body:not(.dark-mode):not(.cosmic-mode) .nh-an-sector-card,
body.str-pure-white .nh-an-sector-card,
body:not(.dark-mode):not(.cosmic-mode) .nh-report-card,
body.str-pure-white .nh-report-card,
body:not(.dark-mode):not(.cosmic-mode) .nh-radar-focus-card,
body.str-pure-white .nh-radar-focus-card,
body:not(.dark-mode):not(.cosmic-mode) .nh-scenario-card,
body.str-pure-white .nh-scenario-card {
    background: #ffffff !important;
    border-color: #e2e8f0 !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-an-top-tier,
body.str-pure-white .nh-an-top-tier {
    background: #ffffff !important;
    border-color: #e2e8f0 !important;
}
body:not(.dark-mode):not(.cosmic-mode) .nh-an-top-header,
body.str-pure-white .nh-an-top-header {
    background: #f8fafc !important;
    border-bottom-color: #e2e8f0 !important;
}
body:not(.dark-mode):not(.cosmic-mode) .nh-an-top-title,
body.str-pure-white .nh-an-top-title,
body:not(.dark-mode):not(.cosmic-mode) .nh-an-sec-title,
body.str-pure-white .nh-an-sec-title,
body:not(.dark-mode):not(.cosmic-mode) .nh-feed-title,
body.str-pure-white .nh-feed-title,
body:not(.dark-mode):not(.cosmic-mode) .nh-side-title,
body.str-pure-white .nh-side-title,
body:not(.dark-mode):not(.cosmic-mode) .nh-report-title,
body.str-pure-white .nh-report-title,
body:not(.dark-mode):not(.cosmic-mode) .nh-focus-event-name,
body.str-pure-white .nh-focus-event-name {
    color: #0f172a !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-feed-sum,
body.str-pure-white .nh-feed-sum,
body:not(.dark-mode):not(.cosmic-mode) .nh-an-sec-body,
body.str-pure-white .nh-an-sec-body,
body:not(.dark-mode):not(.cosmic-mode) .nh-macro-col-content,
body.str-pure-white .nh-macro-col-content,
body:not(.dark-mode):not(.cosmic-mode) .nh-comm-desc,
body.str-pure-white .nh-comm-desc,
body:not(.dark-mode):not(.cosmic-mode) .nh-macro-fallback,
body.str-pure-white .nh-macro-fallback,
body:not(.dark-mode):not(.cosmic-mode) .nh-an-li > span:not(.nh-an-dot),
body.str-pure-white .nh-an-li > span:not(.nh-an-dot),
body:not(.dark-mode):not(.cosmic-mode) .nh-report-summary,
body.str-pure-white .nh-report-summary,
body:not(.dark-mode):not(.cosmic-mode) .nh-report-details,
body.str-pure-white .nh-report-details {
    color: #334155 !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-an-top-body strong,
body.str-pure-white .nh-an-top-body strong,
body:not(.dark-mode):not(.cosmic-mode) .nh-an-sec-body strong,
body.str-pure-white .nh-an-sec-body strong,
body:not(.dark-mode):not(.cosmic-mode) .nh-macro-col-content strong,
body.str-pure-white .nh-macro-col-content strong,
body:not(.dark-mode):not(.cosmic-mode) .nh-comm-desc strong,
body.str-pure-white .nh-comm-desc strong {
    color: #0f172a !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-an-h3,
body.str-pure-white .nh-an-h3 {
    color: #1e293b !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-an-dot,
body.str-pure-white .nh-an-dot {
    color: var(--str-accent, #2563eb) !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-macro-col,
body.str-pure-white .nh-macro-col,
body:not(.dark-mode):not(.cosmic-mode) .nh-an-sec-head,
body.str-pure-white .nh-an-sec-head,
body:not(.dark-mode):not(.cosmic-mode) .nh-report-setup-box,
body.str-pure-white .nh-report-setup-box,
body:not(.dark-mode):not(.cosmic-mode) .nh-stat-item,
body.str-pure-white .nh-stat-item {
    background: #f8fafc !important;
    border-color: #e2e8f0 !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-comm-row,
body.str-pure-white .nh-comm-row {
    background: #f8fafc !important;
    border-color: #e2e8f0 !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-countdown-box,
body.str-pure-white .nh-countdown-box {
    background: #f1f5f9 !important;
    border-color: #e2e8f0 !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-report-filter-btn,
body.str-pure-white .nh-report-filter-btn {
    background: #ffffff !important;
    border-color: #cbd5e1 !important;
    color: #475569 !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-event-radar-wrap,
body.str-pure-white .nh-event-radar-wrap,
body:not(.dark-mode):not(.cosmic-mode) .nh-studio-stats-strip,
body.str-pure-white .nh-studio-stats-strip,
body:not(.dark-mode):not(.cosmic-mode) .nh-studio-playlist-col,
body.str-pure-white .nh-studio-playlist-col {
    background: #ffffff !important;
    border-color: #e2e8f0 !important;
}

body:not(.dark-mode):not(.cosmic-mode) .nh-playlist-item,
body.str-pure-white .nh-playlist-item {
    background: #f8fafc !important;
    border-color: #e2e8f0 !important;
}
body:not(.dark-mode):not(.cosmic-mode) .nh-pl-item-title,
body.str-pure-white .nh-pl-item-title {
    color: #0f172a !important;
}

/* ===================================================
   COSMIC MODE OVERRIDES (#news-tab)
   =================================================== */
body.cosmic-mode #news-tab .nh-wrap,
body.str-bg-cosmic #news-tab .nh-wrap {
    background: rgba(6, 9, 19, 0.88) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
}

body.cosmic-mode .nh-main,
body.str-bg-cosmic .nh-main,
body.cosmic-mode .nh-side-block,
body.str-bg-cosmic .nh-side-block {
    background: rgba(15, 23, 42, 0.7) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
}

body.cosmic-mode .nh-tick,
body.str-bg-cosmic .nh-tick,
body.cosmic-mode .nh-month,
body.str-bg-cosmic .nh-month,
body.cosmic-mode .nh-filters,
body.str-bg-cosmic .nh-filters,
body.cosmic-mode .nh-cal-table-wrap,
body.str-bg-cosmic .nh-cal-table-wrap,
body.cosmic-mode .nh-feed-item,
body.str-bg-cosmic .nh-feed-item,
body.cosmic-mode .nh-an-top-tier,
body.str-bg-cosmic .nh-an-top-tier,
body.cosmic-mode .nh-an-sector-card,
body.str-bg-cosmic .nh-an-sector-card,
body.cosmic-mode .nh-report-card,
body.str-bg-cosmic .nh-report-card,
body.cosmic-mode .nh-radar-focus-card,
body.str-bg-cosmic .nh-radar-focus-card,
body.cosmic-mode .nh-scenario-card,
body.str-bg-cosmic .nh-scenario-card {
    background: rgba(15, 23, 42, 0.65) !important;
    border-color: rgba(255, 255, 255, 0.07) !important;
}

/* ===================================================
   THEMED BORDERS OVERRIDES (#news-tab)
   =================================================== */
body.str-themed-borders .nh-main,
body.str-themed-borders .nh-side-block,
body.str-themed-borders .nh-an-top-tier,
body.str-themed-borders .nh-an-sector-card,
body.str-themed-borders .nh-report-card,
body.str-themed-borders .nh-radar-focus-card {
    border-color: var(--str-accent, #3b82f6) !important;
    box-shadow: 0 0 10px var(--str-accent-soft, rgba(59, 130, 246, 0.15)) !important;
}