/* One type system, loaded after the legacy component styles. */
@font-face{font-family:"Atlas Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url('/fonts/inter-ui-20261017.woff2') format('woff2')}
:root{--font-ui:"Atlas Inter","Segoe UI","Microsoft YaHei UI","Microsoft YaHei","PingFang SC","Hiragino Sans GB","Noto Sans CJK SC",system-ui,sans-serif;--type-body:16px;--type-ui:15px;--type-meta:14px;--type-heading:30px;--muted:#4b5b70}
:root[data-theme=dark]{--muted:#c0ccdc}
body{font-family:var(--font-ui)!important;font-optical-sizing:auto;font-size:var(--type-body);font-weight:500;line-height:1.65;letter-spacing:normal;-webkit-font-smoothing:auto;text-shadow:none}
button,input,select,textarea{font-family:var(--font-ui)!important;font-optical-sizing:auto;letter-spacing:normal}
h1,h2,h3,h4,strong,b{font-family:inherit}
.meta,.foot,.view-note,.directory-note,.notification-help,.notification-fine{font-size:var(--type-ui)!important;font-weight:500;line-height:1.75}
.eyebrow,.heading .eyebrow,.plans .plan-card>.eyebrow,.plans .plan-card>.recommend{font-size:var(--type-meta)!important;font-weight:650;letter-spacing:.035em;line-height:1.5}
.heading h1,.discover-heading h1,.token-search h1{font-size:var(--type-heading)!important;line-height:1.3;font-weight:650;letter-spacing:-.025em}
.plans>h1{font-size:34px;font-weight:650;letter-spacing:-.025em}
.heading-copy,.discover-heading .meta,.token-search>.meta{font-size:var(--type-body)!important;font-weight:500;line-height:1.75}
.catalog-total{font-size:var(--type-ui);font-weight:550;line-height:1.5}
/* Navigation and account badges remain readable at their actual display size. */
.balanced-sidebar .nav-tab{font-size:16px;font-weight:600;line-height:1.5}
.follow-heading{font-size:14px;font-weight:650;letter-spacing:.025em;line-height:1.5}
.watch-name .source-text{font-size:15px!important;font-weight:600;line-height:1.5}
.watch-name .source-text small{font-size:13px!important;font-weight:500;line-height:1.5}
.balanced-sidebar .manage-sources,.balanced-sidebar .alert-settings-link,.balanced-sidebar .desk-discover{font-size:15px!important;font-weight:600;line-height:1.5;min-height:44px;text-decoration:none}
.balanced-sidebar .watchlist-legend{font-size:14px;font-weight:500;line-height:1.65;align-items:flex-start}
.watchlist-legend .ui-icon{width:16px;height:16px;flex-shrink:0;margin-top:3px}
.sidebar-upgrade p,.sidebar-upgrade button{font-size:15px;font-weight:500;line-height:1.6}
body>header .account{font-size:15px!important;font-weight:600}
.account-entry .account-name{font-size:15px;font-weight:600;max-width:150px}
.account-entry .account-plan{font-size:14px!important;font-weight:600;line-height:1.5;padding:4px 8px;letter-spacing:normal;text-transform:none;white-space:nowrap}
.account-entry .account-trigger{max-width:350px}
/* Statements and model context use an explicit body/meta hierarchy. */
.message .name{font-size:17px!important;font-weight:650;line-height:1.5}
.message .source-caption,.message .time{font-size:14px!important;font-weight:500;line-height:1.6}
.message .demo-label{font-size:14px!important;font-weight:550;line-height:1.5;padding:4px 8px;max-width:190px;white-space:normal;overflow-wrap:anywhere;overflow:visible;text-overflow:clip}
.message-title{font-size:20px!important;font-weight:650;line-height:1.55!important;letter-spacing:-.012em}
.message-excerpt{font-size:16px;font-weight:450;line-height:1.75}
.message-signal .signal,.signal-confidence{font-size:14px!important;font-weight:550;line-height:1.5}
.message-signal .signal{padding:4px 8px}
.analysis-link,.comments-toggle,.message-bottom .analysis-link,.message-bottom .comments-toggle{font-size:15px!important;font-weight:600;line-height:1.5;min-height:40px}
.inline-insight>span{font-size:14px!important;font-weight:650;letter-spacing:.025em;line-height:1.5;flex-wrap:wrap;row-gap:8px}
.inline-insight .direction-pill{font-size:14px;font-weight:600;letter-spacing:normal;line-height:1.5;padding:3px 8px}
.inline-insight p{font-size:16px!important;font-weight:500;line-height:1.75}
.insight-assets button{font-size:14px!important;font-weight:600;line-height:1.5;min-height:36px;padding:7px 10px}
.connection-detail summary{font-size:14px!important;font-weight:550;line-height:1.6;min-height:36px;max-width:100%;white-space:normal}
.connection-detail{font-size:14px!important}
.translation-language{font-size:13px;font-weight:650;letter-spacing:normal}
.translation-label{font-size:15px;font-weight:600}
.translation-method,.translation-note{font-size:14px;font-weight:500;line-height:1.6}
.english-translation .translation-copy strong{font-size:18px;font-weight:600;line-height:1.65;letter-spacing:-.01em}
.english-translation .translation-copy p{font-size:16px;font-weight:450;line-height:1.8}
.translation-wait-copy strong,.translation-wait-copy>span{font-size:15px}
/* Alert and signal overviews share the same readable controls. */
.alert-focus h2{font-size:24px;font-weight:650;letter-spacing:-.015em;line-height:1.4;margin:10px 0}
.alert-focus p,.delivery-summary,.planned-channel{font-size:15px;font-weight:500;line-height:1.75}
.delivery-summary>strong{font-size:17px;font-weight:650;line-height:1.5}
.alert-dashboard-actions button,.alert-filter-bar button{font-size:15px!important;font-weight:600;line-height:1.5;min-height:44px;padding:10px 14px}
.alert-filter-bar{gap:10px}
.alert-filter-bar b{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;padding:3px 6px;margin-left:7px}
.insight-banner h2{font-size:26px;font-weight:650;line-height:1.35}
.insight-banner p{font-size:16px;font-weight:500;line-height:1.75}
.insight-metrics span{font-size:14px!important;font-weight:600;letter-spacing:.025em;line-height:1.5}
.insight-metrics small{font-size:14px;font-weight:500;line-height:1.6}
.insight-metrics strong{font-size:28px!important;font-weight:650;font-variant-numeric:tabular-nums;line-height:1.4;margin-top:6px}
.insight-filters{flex-wrap:wrap;gap:16px}
.insight-filters label{font-size:15px;font-weight:600;line-height:1.5;min-width:0}
.insight-filters select{font-size:16px;min-height:44px;max-width:100%}
.insight-filters p{font-size:14px;font-weight:500;line-height:1.7;max-width:34ch}
/* Side summaries no longer depend on 10–12px text. */
.rail-card h2{font-size:18px!important;font-weight:650;line-height:1.4}
.rail-source strong,.rail-source small{font-size:15px!important;line-height:1.6}
.rail-source strong{font-weight:600}
.rail-source small{font-weight:500}
.rail-card>.meta,.rail-empty,.rail-membership p,.rail-foot{font-size:15px!important;font-weight:500;line-height:1.75}
.rail-link{font-size:15px;font-weight:600;line-height:1.5;min-height:44px;box-sizing:border-box;text-align:left}
.rail-insight strong{font-size:15px;font-weight:600;line-height:1.5}
.rail-insight span{font-size:15px;font-weight:500;line-height:1.7;-webkit-line-clamp:3;margin:8px 0}
.rail-insight small{font-size:14px;font-weight:550;line-height:1.6}
/* Directory statistics and filters are information, not microcopy. */
#source-overview{align-items:stretch;gap:22px;padding:20px;flex-wrap:wrap}
.source-stat{min-width:125px}
.source-stat>span,.source-stat span{font-size:14px!important;font-weight:600;letter-spacing:.025em;line-height:1.5}
.source-stat strong{font-size:28px;font-weight:650;line-height:1.4;font-variant-numeric:tabular-nums;margin:5px 0}
.source-stat small{font-size:14px!important;font-weight:500;line-height:1.6}
.directory-views{align-self:center}
.directory-views button{width:42px;height:42px}
.directory-facets{gap:20px;align-items:flex-end}
.directory-facets label{display:flex;flex-direction:column;align-items:stretch;gap:7px;font-size:15px!important;font-weight:600;line-height:1.5}
.directory-facets select{font-size:16px!important;min-height:46px;margin-top:0;border-radius:10px}
.directory-caption{font-size:15px!important;font-weight:500;gap:12px;flex-wrap:wrap;line-height:1.65}
.category-tabs button{font-size:15px!important;font-weight:550;line-height:1.5;padding:9px 12px;min-height:44px}
.category-tabs button small{font-size:14px;font-weight:550;opacity:1}
.directory-distribution h3{font-size:17px;font-weight:650;line-height:1.5}
.directory-distribution>div{font-size:14px;font-weight:500;line-height:1.6;gap:7px}
.directory-distribution b{font-weight:600;font-variant-numeric:tabular-nums}
.directory-rail>.meta{font-size:14px!important;line-height:1.75}
.token-search label{font-size:16px;font-weight:600;line-height:1.5}
.token-search>.foot,#token-state{font-size:15px!important;font-weight:500;line-height:1.75}
.token-search form button{font-size:16px;font-weight:600;min-height:48px}
.plans .plan-card h2{font-weight:650;letter-spacing:-.015em}
.plans .plan-card li,.plans .plan-card>.meta,.plans .membership .meta{font-size:16px;font-weight:500;line-height:1.75}
.plans .plan-card>.full,.plans .membership>button{font-size:16px;font-weight:600;min-height:46px;text-decoration:none}
.plans .price{font-weight:650;font-variant-numeric:tabular-nums}
.plans .price span{font-size:16px;font-weight:500}
@media(max-width:1350px) and (min-width:761px){.account-entry .account-plan{display:none}.account-entry .account-name{max-width:120px}}
@media(max-width:760px){:root{--type-heading:28px}.message .demo-label{max-width:100%;justify-self:start}.message-title{font-size:19px!important}.message .source-caption,.message .time{font-size:14px!important}.source-stat{min-width:0;flex:1 1 40%}#source-overview{gap:18px;padding:18px}.insight-metrics{grid-template-columns:1fr}.insight-metrics>div+div{border-left:0;border-top:1px solid var(--line)}.insight-filters label{flex:1 1 160px}.insight-filters p{flex:1 0 100%;max-width:none}.account-entry .account-name{max-width:150px}.message-bottom .analysis-link,.message-bottom .comments-toggle{min-height:44px}.plans>h1{font-size:29px}.directory-facets{gap:14px}.translation-method{margin-left:0}}

/* Compact sound control shares the stream toolbar without crowding mobile tabs. */
.stream-playback{display:flex;gap:8px;align-items:center;flex-shrink:0}
.sound-toggle{width:44px;min-width:44px;height:44px;padding:10px;display:grid;place-items:center}
.sound-toggle .ui-icon{width:21px;height:21px}
.sound-toggle[data-state="ready"]{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}
.sound-toggle[data-state="off"]{color:var(--muted)}
.sound-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.sound-settings{display:flex;align-items:center;gap:16px;padding:0 0 18px}
.sound-settings p{flex:1;margin:0;color:var(--muted);font-size:14px;line-height:1.6}
.sound-settings button{flex-shrink:0;min-height:44px;font-size:15px;font-weight:600}
@media(max-width:760px){.stream-playback{gap:6px}.stream-tabs{grid-template-columns:repeat(4,max-content)!important;justify-content:space-between;overflow-x:auto}.sound-settings{align-items:flex-start;flex-wrap:wrap}}
