/* Readable terminal foundation. Dimensions remain rem-based for text scaling. */
:root{
 --text-2xs:.875rem;--text-xs:.9375rem;--text-sm:1rem;--text-base:1rem;
 --text-md:1.125rem;--text-lg:1.375rem;--text-xl:1.75rem;--text-2xl:2rem;
 --text-primary:#edf3fb;--text-secondary:#bfccdc;--text-tertiary:#a5b5ca;
 --t3:#98aac1;--bg-app:#0b111b;--bg-panel:#111b29;--bg-panel-hi:#172335;
 --bg-input:#111b29;--border-subtle:#29394e;--border-default:#33465e;
 --state-bear:#ff8f9a;--state-bull:#53dfa4;--state-warn:#ffd17a;
 --side-w:248px;--top-h:48px;--blu:#87bbff;
}
body{font-size:1rem;line-height:1.5;-webkit-font-smoothing:antialiased}
.main-scroll{width:100%;max-width:none;min-height:0;padding:18px 24px;scrollbar-gutter:stable}
.content{min-height:0}.pn{min-width:0}
.sidebar{background:#0e1725}.brand{padding:18px 18px}.brand h1{font-size:1.0rem;letter-spacing:1.5px}.brand .sub{font-size:0.9375rem;letter-spacing:1px}.brand .ver{font-size:0.9375rem}
.nav{padding:10px;min-height:0}.nav-item{font-size:0.9375rem;font-weight:500;min-height:42px;padding:9px 12px;gap:9px;border-radius:7px;border-left:0;margin:2px 0;line-height:1.3}.nav-item.on{background:#213957;box-shadow:inset 3px 0 #87bbff;color:#fff}.nav-item .icon{font-size:1.0625rem;color:#a8c9ed}
.workspace-nav-group{border-bottom:1px solid #25354b;padding:5px 0}.workspace-nav-group>summary{font-size:0.9375rem;font-weight:650;color:#a5b5ca;cursor:pointer;padding:10px 7px;list-style:none;display:flex;justify-content:space-between}.workspace-nav-group>summary:after{content:'+';font-size:1.0625rem}.workspace-nav-group[open]>summary:after{content:'−'}
.side-status{padding:12px 18px;font-size:0.9375rem}.side-status .row{padding:2px 0}
.topbar{padding:0 24px;gap:12px}.topbar-left,.topbar-right{gap:10px}.clock{font-size:0.9375rem;letter-spacing:0}.pill,.market-badge{font-size:0.9375rem;padding:5px 10px;white-space:nowrap}.quick-btn{font-size:0.9375rem;min-height:34px;white-space:nowrap}
.card{padding:18px;border-color:#2b3d53;border-radius:10px;background:var(--bg-panel);box-shadow:0 2px 6px #00000012}.card-t{font-size:1.0625rem;font-weight:650;color:var(--text-primary);text-transform:none;letter-spacing:0;margin-bottom:12px}.card-t span{font-size:0.9375rem}
.pn button{font-family:var(--font-sans)}.btn{font-size:0.9375rem;min-height:36px;padding:7px 13px;background:#213248;border-color:#405873;color:#edf3fb;line-height:1.4}.btn.bp,.qb-scan{background:#255da8;color:#fff;border-color:#548fdc}.btn.bp:hover{background:#306fbe}.bsm{font-size:0.9375rem;min-height:34px}.btn:disabled{opacity:.55;cursor:not-allowed}
input,select,textarea{font-family:var(--font-sans);font-size:0.9375rem;line-height:1.4;min-height:40px;color:var(--text-primary)}input::placeholder,textarea::placeholder{color:#a5b5ca}
button:focus-visible,summary:focus-visible,[role=button]:focus-visible,[role=tab]:focus-visible{outline:2px solid #a4d3ff;outline-offset:3px}
table{font-size:0.9375rem}th{font-size:0.9375rem;letter-spacing:.25px;color:#bfccdc;padding:11px 12px}td{font-size:0.9375rem;color:#d5e0ee;padding:11px 12px;line-height:1.45;font-variant-numeric:tabular-nums}
.readiness-caption,.readiness-note{font-size:0.9375rem;color:#b7c7db;line-height:1.5}.readiness-label,.readiness-state{font-size:0.9375rem;letter-spacing:.25px}.readiness-value{font-size:1.125rem}.readiness-check-title{font-size:0.9375rem;color:#edf3fb}.readiness-check{padding:14px 0}.readiness-link{font-size:0.9375rem}.readiness-metric{padding:12px;border-radius:8px}.readiness-head{gap:14px}.readiness-panel{border-top-color:#599ff4}
.kpi{padding:12px;display:grid;grid-template-columns:auto 1fr;column-gap:10px;text-align:left;border-radius:8px}.kpi .icon{grid-row:1/3;align-self:center;margin:0;font-size:1.125rem}.kpi .val{font-size:1.4375rem;line-height:1.25;margin:0;font-weight:650}.kpi .lbl{font-size:0.9375rem;letter-spacing:0;text-transform:none;color:#bfccdc}
.workspace-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px}.workspace-heading h2{font-size:1.625rem;line-height:1.2;font-weight:650;letter-spacing:-.5px}.workspace-heading p{font-size:0.9375rem;color:#a5b5ca;margin-top:3px}.workspace-label{font-size:0.9375rem;color:#bfccdc;padding:5px 10px;border:1px solid #33465e;border-radius:6px}
.workspace-tabs{display:flex;gap:4px;border-bottom:1px solid #33465e;margin-bottom:16px;overflow-x:auto;flex-shrink:0}.workspace-tabs button{border:0;border-bottom:3px solid transparent;background:none;color:#b7c7db;font:500 15px/1.3 var(--font-sans);padding:10px 14px;white-space:nowrap;cursor:pointer}.workspace-tabs button[aria-selected=true]{color:#a9d0ff;border-bottom-color:#87bbff;background:#18293f;border-radius:6px 6px 0 0}
.workspace-panel[hidden]{display:none!important}.workspace-panel>.g{gap:14px!important}.workspace-panel .g2>.card{margin-bottom:0}.workspace-panel .mb{margin-bottom:14px}.workspace-panel .card:last-child{margin-bottom:0}
[data-readiness-view=overview] .readiness-checks,[data-readiness-view=overview] .readiness-footer,[data-readiness-view=overview] .readiness-head .readiness-caption{display:none}
[data-readiness-view=overview] .readiness-metric:nth-child(3) .readiness-caption~.readiness-caption{display:none}
[data-readiness-view=overview] .readiness-head{margin-bottom:10px}[data-readiness-view=overview] .card-t{margin-bottom:0}
#workspace-overview .readiness-panel{padding:14px;margin-bottom:14px}#workspace-overview .readiness-metrics{gap:12px;margin-bottom:8px}#workspace-overview .readiness-metric{padding:10px 12px}
#workspace-overview .g2 .card{padding:14px}#workspace-overview .g2 .card-t{margin-bottom:8px}#workspace-overview .empty{padding:12px!important;font-size:0.9375rem!important;color:#a5b5ca!important}
#workspace-overview #cmdSignalQueue{max-height:180px!important}#workspace-overview #cmdRegimePanel{max-height:180px;overflow:auto}
.feat-card .fc-name{font-size:0.9375rem}.feat-card .fc-feat{font-size:0.9375rem}.feat-card .fc-badge{font-size:0.9375rem!important}.metric-mini{padding:14px}.mm-val{font-size:1.375rem}.mm-lbl{font-size:0.9375rem;letter-spacing:0;text-transform:none}
.pn [style*="font-size:0.9375rem"],.pn [style*="font-size:0.9375rem"],.pn [style*="font-size:0.9375rem"],.pn [style*="font-size:0.9375rem"]{font-size:0.9375rem!important}
@media(min-width:1250px) and (min-height:850px){#workspace-overview .g2 .card{min-height:190px}#workspace-overview .readiness-panel{padding:20px}#workspace-overview .readiness-metric{padding:16px}.workspace-heading{margin-bottom:18px}.workspace-tabs{margin-bottom:20px}}
@media(max-width:1150px){:root{--side-w:218px}.main-scroll{padding:16px}.topbar{padding:0 16px}.topbar-right{gap:6px}.pill{padding:4px 7px}.workspace-tabs button{padding:10px}.kpi .icon{display:none}.kpi{display:block}.workspace-heading h2{font-size:1.5rem}.g6{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){:root{--side-w:180px}.nav-item{font-size:0.9375rem;padding:9px 7px}.brand{padding:14px 10px}.brand h1{font-size:0.9375rem;letter-spacing:.5px}.brand .sub{font-size:0.9375rem}.brand .ver{display:none}.main-scroll{padding:12px}.workspace-label{display:none}.workspace-heading h2{font-size:1.375rem}.workspace-tabs{gap:0}.g2,.readiness-metrics{grid-template-columns:1fr}.topbar-left .clock{display:none}}
/* Phone shell layout (sidebar, menu, layout) is owned by platform-design.css (≤520px). */
@media(max-width:480px){.workspace-heading p{display:none}}
@media(min-width:1151px) and (max-height:800px){
 .workspace-heading p{display:none}.workspace-heading{margin-bottom:8px}.workspace-tabs{margin-bottom:12px}
 #workspace-overview .mb,#workspace-overview .readiness-panel{margin-bottom:10px}
 #workspace-overview .kpi{padding:8px 10px}#workspace-overview .mb-skel{height:60px!important}
}
#workspace-overview>.g:last-child{margin-bottom:0}.workspace-empty{padding:12px 0;color:#a5b5ca;font-size:0.9375rem}
@media(min-width:1151px) and (max-height:740px){.main-scroll{padding-top:14px;padding-bottom:14px}#workspace-overview .readiness-value{margin:4px 0}}

/* Readable provider metadata and shared compact labels. */
.api-card .api-name{font-size:1.25rem!important;line-height:1.35}.api-card .api-cat{font-size:0.9375rem!important;letter-spacing:.03em}
.api-pill,.api-chip,.api-status,.market-badge,.feat-card .fc-badge{font-size:0.9375rem!important;line-height:1.5;letter-spacing:.02em;padding:5px 9px}
.api-best,.api-card-msg,.api-fields label,.feat-card .fc-feat{font-size:0.9375rem;line-height:1.5}
.api-card{gap:12px;padding:20px}.api-card .api-icon{width:44px;height:44px;font-size:1.375rem}
.api-card .api-actions{flex-wrap:wrap}.api-card .api-actions button{min-height:40px;font-size:0.9375rem}

.api-filter[hidden]{display:none!important}

#apiProviderGrid{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}
.api-card .api-icon{width:44px!important;height:44px!important}
