/* Larger, stronger typography across all three skins. */
.filter-bar .toggle-btn { flex:0 0 auto; min-height:43px; padding:0 16px; font-weight:700; }
.filter-bar .toggle-btn[aria-pressed="true"] { color:var(--accent); border-color:var(--accent); background:color-mix(in srgb,var(--accent) 12%,var(--panel)); box-shadow:inset 0 -2px 0 var(--accent); }
body { font-size:16px; font-weight:500; }
.app { grid-template-columns:224px minmax(0,1fr); }
.main { max-width:none; padding:30px 34px; }
.brand { font-size:32px; }
.brand small,.nav-caption,.sidebar-note,.sidebar-note small,.sidebar-account small { font-size:13px; }
.seg button { height:49px; font-size:16px; font-weight:650; }
.exchange-mark { width:22px; height:22px; font-size:14px; }
#refreshBtn { height:46px; font-size:15px; font-weight:650; }
.sidebar-account { font-size:15px; }
.sidebar-note > div { font-size:14px; }
.eyebrow { font-size:14px; }
h1 { font-size:34px; font-weight:700; }
.schedule,#nextScan { font-size:13px; }
.schedule { width:205px; } .schedule small { font-size:12px; }
.stats { flex-wrap:wrap; gap:16px 30px; }
.stat span { font-size:14px; font-weight:600; } .stat b { font-size:18px; font-weight:700; }
.scan-health { font-size:13px; font-weight:500; line-height:1.7; }
.filter-bar { gap:14px; }
.filter-bar label { font-size:14px; font-weight:600; min-width:135px; }
.filter-bar .search-field { min-width:190px; }
.filter-bar input[type="search"], select { height:43px; font-size:15px; font-weight:550; padding:0 11px; }
.filter-bar .check-field { height:43px; min-width:100px; }
input[type="checkbox"] { width:16px; height:16px; flex-shrink:0; }
.action-btn { height:42px; font-size:14px; font-weight:650; padding:0 14px; }
.icon-btn { width:42px; height:42px; font-size:21px; }
.layout { grid-template-columns:380px minmax(0,1fr); gap:28px; }
.market-list { padding-right:22px; }
.section-caption { font-size:17px; font-weight:700; }
.section-caption span { font-size:13px; }
.list-head,.row { grid-template-columns:24px minmax(86px,1fr) 65px 110px; gap:7px; }
.list-head { min-height:39px; font-size:12px; }
.row { min-height:78px; }
.star { width:24px; height:34px; font-size:22px; }
.sym { font-size:16px; font-weight:700; } .sym small { font-size:12px; }
.price { font-size:14px; font-weight:650; } .price small { font-size:11px; font-weight:500; }
.change { font-size:13px; font-weight:600; }
.rows { max-height:calc(100vh - 420px); }
.detail h2 { font-size:25px; font-weight:700; } .detail h2 small { font-size:13px; }
.quote-summary { font-size:29px; font-weight:700; }
.quote-summary > span { font-size:14px; font-weight:600; }
.pill,.risk { font-size:13px; font-weight:600; padding:5px 9px; }
.detail-top > .kpi span { font-size:13px; }
.detail-top > .kpi b { font-size:32px!important; font-weight:700!important; }
.kpis { padding:15px 0; }
.kpis .kpi span { font-size:13px; font-weight:600; }
.kpis .kpi b { font-size:17px; font-weight:700; }
.time-tabs { gap:6px!important; }
.time-tabs button { min-width:96px; min-height:46px; padding:10px 16px; font-size:17px; font-weight:700; border:1px solid var(--border); border-radius:6px; }
.time-tabs button.active { color:var(--accent); border-color:var(--accent); background:color-mix(in srgb,var(--accent) 9%,var(--panel)); }
.indicator-controls { flex-wrap:wrap; gap:14px; margin:12px 0; }
.indicator-controls label { font-size:14px; font-weight:650; }
.chart-wrap { height:570px; }
.chart-legend { font-size:12px; font-weight:650; line-height:1.45; max-width:calc(100% - 96px); }
.chart-legend b { font-weight:650; }
.chart-legend .ma-values { flex-wrap:wrap; }
.indicator-details > div { font-size:13px; font-weight:500; overflow-wrap:anywhere; }
.indicator-details strong { font-size:15px; font-weight:700; }
.chart-foot { font-size:12px; flex-wrap:wrap; line-height:1.7; }
.chart-error,.empty,.loading { font-size:15px; }
.login label,.login p { font-size:15px; } .login input,.login .primary { font-size:17px; height:48px; }
@media(min-width:1850px) { .main { padding:34px 46px; } .layout { grid-template-columns:430px minmax(0,1fr); gap:34px; } .list-head,.row { grid-template-columns:24px minmax(110px,1fr) 76px 130px; } .chart-wrap { height:650px; } }
@media(max-width:1200px) { .app { grid-template-columns:188px minmax(0,1fr); } header { padding:24px 12px; } .main { padding:24px; } .brand { font-size:27px; } .layout { grid-template-columns:1fr; } .market-list { padding:0; border:0; } .rows { max-height:260px; min-height:0; } .sidebar-note > div { font-size:12px; } .sidebar-note i { margin:0; } }
@media(max-width:760px) { .app { display:block; } .main { padding:22px 16px; } header { padding:16px; } .brand { font-size:28px; } .seg button { height:43px; padding:0 10px; font-size:14px; } #refreshBtn { height:43px; font-size:13px; margin:0; } .sidebar-actions .icon-btn { width:36px; height:36px; } .toolbar { gap:8px; } .schedule { width:143px; font-size:12px; } #nextScan { font-size:12px; } .eyebrow { font-size:12px; } h1 { font-size:28px; } .stats { gap:14px 10px; } .stat span { font-size:12px; } .stat b { font-size:15px; } .scan-health { font-size:12px; } .filter-bar { gap:12px; } .filter-bar label { min-width:130px; font-size:13px; } .filter-bar .search-field { min-width:160px; } .list-head,.row { grid-template-columns:22px minmax(72px,1fr) 61px 99px; gap:5px; } .sym { font-size:15px; } .sym small { font-size:11px; } .change,.price { font-size:12px; } .price small { font-size:10px; } .list-head { font-size:11px; } .rows { max-height:254px; } .kpis { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; } .time-tabs button { min-width:82px; padding:10px 12px; font-size:16px; } .chart-wrap { height:555px; } .chart-legend { font-size:11px; } .indicator-controls label { font-size:13px; } .indicator-details { grid-template-columns:1fr; gap:0; } .indicator-details > div { padding:10px 0; } .chart-tools { gap:12px; } }
