/* Audit typography roles for the three primary Notes surfaces. */
:is(#home-main, #pricing-main, #workspace-main) {
  --np-display: 650 clamp(40px, 5vw, 68px)/1.08;
  --np-section: 650 clamp(32px, 3.1vw, 40px)/1.15;
  --np-card-title: 600 24px/1.25;
  --np-lead: 400 18px/1.5;
  --np-body: 400 16px/1.5;
  --np-small: 400 14px/1.45;
  --np-label: 600 12px/1.3;
  --np-type-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
  font: var(--np-body) var(--np-type-family);
}

:is(#home-main, #pricing-main, #workspace-main) :where(p, li, dd, span, a, em, small, b, label, summary, div.hero-badge):not(:where(.product-window *, .fake-slide *, .step-visual *)) {
  font: var(--np-body) var(--np-type-family);
}
:is(#home-main, #pricing-main, #workspace-main) :where(strong, b, dt, label, summary, button, a.btn, a.price-secondary, .np-platform-actions > a, .generate-button > span):not(:where(.product-window *, .fake-slide *, .step-visual *)) {
  font: 600 16px/1.5 var(--np-type-family);
}
:is(#home-main, #pricing-main, #workspace-main) :where(input, textarea, select) {
  font: var(--np-body) var(--np-type-family);
  min-width: 0;
}
:is(#home-main, #pricing-main, #workspace-main) :where(h2, h3, h4):not(:where(.product-window *, .fake-slide *, .step-visual *)) {
  font: var(--np-card-title) var(--np-type-family);
  letter-spacing: -0.015em;
  overflow-wrap: anywhere;
}
:is(#home-main, #pricing-main, #workspace-main) :where(h1) {
  font: var(--np-section) var(--np-type-family);
  letter-spacing: -0.02em;
}
:is(#home-main, #pricing-main) :where(h1, h1 > span) {
  font: var(--np-display) var(--np-type-family);
  letter-spacing: -0.02em;
}
:is(#home-main, #pricing-main) :where(.section-heading h2, .final-cta h2, .pricing-teaser h2, .topup-section-heading h2, .pricing-context h2) {
  font: var(--np-section) var(--np-type-family);
}
:is(#home-main, #pricing-main, #workspace-main) :where(.hero-lede, .pricing-hero > p, .workspace-heading > p, .section-heading > p) {
  font: var(--np-lead) var(--np-type-family);
}
:is(#home-main, #pricing-main, #workspace-main) :where(small, .help, .help > *, .terms-hint, .terms-hint span, .terms-hint a, .preflight-help, .generation-summary, .hero-proof > span, .try-actions > p, .disclosure-action > span, .home-settings-summary, .workspace-settings-summary, .pricing-action-note, .topup-requirement, .price-value > span, .topup-price > span, .provider-explanation, .ai-credit-unit, .ai-credit-subline, .ai-wallet-summary p, #account-plan-reset, .np-home-notes-help, .np-home-notes-help a, .note-footer span) {
  font: var(--np-small) var(--np-type-family);
}
:is(#home-main, #pricing-main, #workspace-main) :where(.section-kicker, .price-label, .price-pill, .recommended, .topup-best-value, .hero-badge, .browse-chip, .step-card > span, .deck-top > *, .empty-notes > span, .filled-notes > span, .feature-icon, .account-plan-kicker, .account-plan-status, .step-badge > span, .home-options label > span, .instruction-field > span) {
  font: var(--np-label) var(--np-type-family);
}
:is(#pricing-main, #workspace-main) :where(.price-value > strong, .topup-price > strong, .ai-credit-balance) {
  font: var(--np-section) var(--np-type-family);
  letter-spacing: -0.02em;
}

@media (max-width: 680px) {
  :is(#home-main, #pricing-main, #workspace-main) {
    --np-display: 650 clamp(34px, 10vw, 40px)/1.08;
    --np-section: 650 32px/1.15;
    --np-card-title: 600 24px/1.25;
  }
  #pricing-main [data-free-reset] {
    overflow-wrap: anywhere;
  }
}
#pricing-main :is(.pro-credit-subtitle, .topup-unit-price, .price-reset-time) {
  font: var(--np-small) var(--np-type-family);
}
#pricing-main .pro-credit-subtitle { font-size: 14px !important; }
#pricing-main .price-reset-time { display: block; overflow-wrap: anywhere; }
#workspace-main #account-plan-card :is(.ai-wallet-label, .ai-wallet-details > summary, .ai-wallet-included strong, .ai-wallet-breakdown strong) {
  font: 600 16px/1.5 var(--np-type-family);
}
#workspace-main #account-plan-card :is(#ai-credit-unit, .ai-wallet-included p, #plan-provider, #plan-vision) {
  font: var(--np-small) var(--np-type-family);
}
#workspace-main #account-plan-card #ai-credit-balance {
  font: var(--np-section) var(--np-type-family);
}
:is(#home-main, #workspace-main) #home-settings-summary { font: var(--np-small) var(--np-type-family); }
:is(#home-main, #pricing-main, #workspace-main) :where(em) { font-style: italic; }

@media (max-width: 680px) {
  #pricing-main .pricing-hero h1 br { display: none; }
  :is(#home-main, #workspace-main) .disclosure-action [data-disclosure-label] { display: none; }
}
