/* Universal UI refinement. No data, sync, search, or state mutations. */
:root{
 --frame-space-1:4px;--frame-space-2:8px;--frame-space-3:12px;
 --frame-space-4:16px;--frame-space-5:24px;
 --frame-radius-control:10px;--frame-radius-card:16px;
}
/* Use the selected color mainly for actions and selected controls; descriptive
   headings/eyebrows remain neutral so the interface is calmer in all palettes. */
.content .eyebrow,.fs-kicker,.fs-section-label,.fs-live-label,.rec-filter-label{color:var(--muted)}
.hero-kicker{color:var(--muted)}
/* Body copy: retain the existing Inter/system font stack; increase legibility. */
.page-head p,.content .note{font-size:14px;line-height:1.6;color:var(--muted)}
.content .panel>p,.content .panel>div>p,.detail-content p:not(.mini),.fs-panel-intro{font-size:13px;line-height:1.6;color:var(--muted)}
.section-head small{font-size:13px;line-height:1.5}
.content .empty{font-size:13px;line-height:1.6}
.primary,.secondary,.topbar .frame-theme-toggle,.chip,.filterbar .chip{border-radius:var(--frame-radius-control)}
.primary,.secondary{min-height:36px}
.topbar .frame-theme-toggle{min-width:38px;min-height:38px;display:inline-flex;align-items:center;justify-content:center;font-size:18px;padding:7px}
.topbar .frame-theme-toggle:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface2))}
.topbar .frame-theme-toggle:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.panel,.stat,.catalog-result,.card,.rec{border-radius:var(--frame-radius-card)}
/* The sidebar no longer carries a promo/export panel. Maintain its existing
   navigation (and the mobile bottom-navigation fallback). */
.sidebar{justify-content:flex-start}
.mobile-nav button{min-height:42px;min-width:0;padding:4px 2px}
.mobile-nav button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:7px}
@media(max-width:600px){
 .topbar{gap:8px}
 .topbar .searchbar{flex:1 1 0;min-width:0;width:auto;padding:8px 10px}
 .topbar .top-actions{flex:0 0 auto;gap:7px}
 .topbar .frame-theme-toggle{min-height:37px;min-width:37px}
 .topbar .primary{white-space:nowrap}
 .mobile-nav{gap:0}
 .mobile-nav button{flex:1 1 0;font-size:10px}
 .page-head p,.content .note{font-size:13px}
}
@media(max-width:380px){.topbar .primary{font-size:10px;padding:9px 10px}.topbar .searchbar input{font-size:12px}}
@media(prefers-reduced-motion:reduce){.topbar .frame-theme-toggle{transition:none}}
