/* Reuse the approved semantic-pilot type scale; do not resize illustrated cards. */
:root {
  --font-ui:'Plus Jakarta Sans',system-ui,sans-serif;
  --weight-body:500; --weight-label:800; --weight-title:850;
  --tracking-title:-.035em; --tracking-label:1.15px;
  --header-eyebrow:var(--type-kicker,10px);
  --header-title:var(--type-page-title,26px);
  --header-subtitle:var(--type-helper,11px);
}
body {font-family:var(--font-ui);font-weight:var(--weight-body)}
/* Existing page shell already supplies eyebrow → title → subtitle. */
.view-kicker {font-family:var(--font-ui);font-size:var(--type-kicker);font-weight:var(--weight-label);letter-spacing:var(--tracking-label);line-height:1.25;margin:0 0 8px}
#view-title {font-family:var(--font-ui);font-size:var(--type-page-title);font-weight:var(--weight-title);letter-spacing:var(--tracking-title);line-height:var(--lh-title);margin:0 0 10px}
.view-description {font-family:var(--font-ui);font-size:var(--type-body);font-weight:var(--weight-body);line-height:var(--lh-body);margin:0 0 20px}
.view-panel:not(#home-view) :is(h2,h3):not(.card-title) {font-family:var(--font-ui);font-weight:var(--weight-label);letter-spacing:-.02em;line-height:var(--lh-title)}
.view-panel:not(#home-view) h2 {font-size:var(--type-section-title)}
.view-panel :is(input,select,textarea,button),.sleep-compact-sheet {font-family:var(--font-ui)}
.sleep-compact-sheet p {font-size:var(--type-body);line-height:var(--lh-body)}
.sleep-analytics-content,.sleep-analytics-content * {font-family:var(--font-ui)}
