/* Extracted custom styles */
.sharp{border-radius:0!important}
@keyframes scroll{from{transform:translateX(0%)}to{transform:translateX(-50%)}}
.marquee{white-space:nowrap;animation:scroll 30s linear infinite;display:inline-block}
.chip{font-size:12px;padding:4px 12px;border:1px solid #D1D5DB}
.chip-active{background:#000;color:#fff}
.indices-full{max-height:none!important;overflow:visible!important}
.chart-wrap{background:linear-gradient(180deg,#fff 0%,#fafafa 100%)}
.badge-delta{padding:2px 6px;border-radius:9999px;font-size:11px}
.num{font-variant-numeric:tabular-nums}
.card-subtitle{min-height:40px;line-height:1.25}
.badge-live{font-size:10px;padding:2px 6px;border:1px solid #10b981;color:#065f46;border-radius:9999px;display:inline-flex;align-items:center;gap:6px}
.dot-live{width:6px;height:6px;background:#10b981;border-radius:9999px;animation:blink 1s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.25}}
#chartHolder{height:260px}
#mainChart{width:100%!important;height:100%!important;display:block}
@media (min-width:768px){#chartHolder{height:360px}}
.dir-up .arrow{color:#10b981}
.dir-down .arrow{color:#ef4444}
.dir-up .val{color:#065f46}
.dir-down .val{color:#991b1b}
.blink-up{background-color:rgba(16,185,129,.08)}
.blink-down{background-color:rgba(239,68,68,.08)}

/* Article typography (lightweight) */
.article-title{font-size:2rem;line-height:1.25;margin:0 0 .75rem;font-weight:800}
.article-body h2{font-size:1.625rem;line-height:1.3;margin:1.25rem 0 .5rem;font-weight:800}
.article-body h3{font-size:1.25rem;line-height:1.35;margin:1rem 0 .25rem;font-weight:700}
.article-body p{margin:.5rem 0;line-height:1.7}
.article-body ul{list-style:disc;padding-left:1.25rem;margin:.5rem 0}
.article-body li{margin:.25rem 0}
.article-body strong{font-weight:800}


