/* Reading type is 20% below the previous large-text release, shared by
   index.html's customer and administrator routes. Navigation is unchanged.
   Load after the older screen layers and before responsive phone overrides.
   Text scales independently of page/artwork. Booking type and the
   separately sized navigation are deliberately excluded from screen overrides.
   Classic screens (.fc-classic, Oct 8 look) are excluded too; classic-oct8.css owns them.
   Enrollment (the auth dialog and its onboarding steps) is excluded and keeps the v2 scale. */
:root {
  --fs-body:25.6px;
  --fs-small:20.8px;
  --fs-kicker:17.6px;
}

/* Booking's separately scoped typography is reduced in fc5-cinematic.css.
   Other screens retain their existing geometry and colors here. */
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) {
  font-size:var(--fs-body);
  line-height:1.5;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.small,.fc5-card-meta,.fc5-mono,.field .hint,.field .err,.err,.rowitem .m,.finance-audit,.account-details dt,.fc5-metrics dd.fc5-metric-sub,.steps .st,.hold) {
  font-size:20.8px;
  line-height:1.5;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.kicker,.fc5-eyebrow,.fc5-test-label,.fc5-metrics dt,.tags-order .to .n,.fc5-badge,.rowitem .date,.profile-facts dt,.pass .stub .code) {
  font-size:17.6px;
  line-height:1.5;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.sub,.list-inline) {
  font-size:24.8px;
  line-height:1.55;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.fc5-sub,.fc5-card-name,.ccard .name,.event-card-title) {
  font-size:25.6px;
  line-height:1.5;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.note,.status,.banner,.fc5-notice,.facts dd,.finance-table,.fc-table,.profile-social-count,.profile-social-followers) {
  font-size:22.4px;
  line-height:1.5;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.empty,.fc5-empty) {
  font-size:23.2px;
  line-height:1.5;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.facts dt,.banner .k,.fc-table th) {
  font-size:17.6px;
  line-height:1.5;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.ccard .meta,.radio .d,.linkrow .d,.social-prefix,.profile-social-source) {
  font-size:20px;
  line-height:1.5;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.rowitem .t,.radio .l,.linkrow .l) {
  font-size:24px;
  line-height:1.4;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) .rowitem .date { width:72px; min-width:72px; }
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) .rowitem .date b { font-size:32px; line-height:1.1; }
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) .rowitem .date span { font-size:14.4px; }
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) .pass .line { font-size:21.6px; line-height:1.5; }
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.pass .stub .hint,.pass .tchip,.pass .seal) { font-size:16px; line-height:1.4; }
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) .profile-facts dd { font-size:22.4px; }

/* Controls grow intrinsically with their text. No fixed heights or page zoom:
   labels wrap and text fields keep a normal editable single-line value. */
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.btn,.fc5-btn) {
  font-size:24px;
  line-height:1.35;
  min-height:64px;
  height:auto;
  max-width:100%;
  padding:12px 20px;
  white-space:normal;
  overflow-wrap:anywhere;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.btn-sm,.fc5-btn-sm,.seg button,.chip) {
  font-size:22.4px;
  line-height:1.35;
  min-height:60px;
  height:auto;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.field label,.field .lbl,.field legend) {
  font-size:22.4px;
  line-height:1.4;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.field input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="color"]),.field textarea,.field select,.social-input-wrap input) {
  font-size:25.6px;
  line-height:1.4;
  min-height:68px;
  height:auto;
  min-width:0;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.search input,.search .tw) {
  font-size:27.2px;
  line-height:1.4;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *)) .search { min-height:76px; }
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *)) :is(.pill,.tag-src) {
  font-size:19.2px;
  min-height:36px;
  line-height:1.4;
  white-space:normal;
  overflow-wrap:anywhere;
}
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.h3,.fc5-slot-head h3) { font-size:28.8px; }
:is(.fc5:not([data-fc5-screen="bookings"],[data-fc5-screen="booking-detail"],[data-fc5-screen="creator-bookings"]), .page:not(.fc5,.fc-classic,.auth-dialog *), .sheet, .media-dialog) :is(.h2,.fc5-h2) { font-size:32px; line-height:1.2; }

/* Discover's more-specific pill rules and profile's bounded, ellipsized byline
   retain their presentation constraints; only reading text sizes change. Page
   content rules skip classic Oct 8 roots; :where() keeps their specificity. */
.fc5[data-fc5-screen="discover"] .fc5-title { font-size:clamp(44.8px,9.6vw,64px); line-height:1.08; min-width:0; max-width:100%; }
.fc5[data-fc5-screen="discover"] .discovery-tag-rail .chip { font-size:20.8px; min-height:60px; line-height:1.35; }
.fc5[data-fc5-screen="discover"] .discovery-city-trigger { font-size:22.4px; line-height:1.35; min-height:68px; height:auto; }
.discovery-city-option { font-size:24px; line-height:1.4; min-height:64px; }
.ux-v6-city-credit { font-size:17.6px; line-height:1.4; }
.profile-cover-byline:where(:not(.fc-classic *)) { font-size:22.4px; line-height:1.4; }
.profile-cover-facts dd:where(:not(.fc-classic *)) { font-size:20.8px; line-height:1.4; }
.profile-cover-facts dt:where(:not(.fc-classic *)) { font-size:16px; line-height:1.5; }
.body-copy:where(:not(.fc-classic *)) { font-size:23.2px; line-height:1.55; }
.body-copy-sm:where(:not(.fc-classic *)) { font-size:22.4px; line-height:1.55; }
.legal-copy:where(:not(.fc-classic *)) { font-size:24px; line-height:1.6; }
.status-copy:where(:not(.fc-classic *)) { font-size:inherit; line-height:1.5; }
.profile-social-icons .profile-social-icon:where(:not(.fc-classic *)) { width:auto; min-width:56px; max-width:none; }
.profile-social-icon-count:where(:not(.fc-classic *)) { font-size:19.2px; line-height:1.3; }
.media-controls label:where(:not(.fc-classic *)) { font-size:22.4px; line-height:1.4; }
.media-controls { min-width:0; }
.media-controls label:where(:not(.fc-classic *)) { grid-template-columns:minmax(0,1fr); }
.event-card-date:where(:not(.fc-classic *)) { flex-basis:64px; }
.event-card-date b:where(:not(.fc-classic *)) { font-size:28.8px; line-height:1.1; }
.event-card-date .kicker:where(:not(.fc-classic *)) { font-size:17.6px; }

/* Enrollment keeps the v2 (Oct 13) desktop scale (WP10-11). The screen groups above skip the auth
   dialog, its pages and the onboarding .fc-root steps. auth-modal.css, onboarding-v5.css and
   web-entry.css size them. onboarding-v5.css keeps the --fc-text-scale accessibility multiplier.
   Plain text, .small and .kicker in the dialog inherit the type tokens. The dialog sets them back
   to the tokens.css values. Phones keep the responsive-v8.css sizes. */
.auth-dialog { --fs-body:16px; --fs-small:13px; --fs-kicker:11px; font-size:var(--fs-body); }
/* This submit is an arrow-only 44px grid cell, not a text button. Keep its
   44px hit target and zero padding. */
.fc-root .fc-btn.fc-verify__go { font-size:16px; line-height:1; width:44px; height:44px; min-width:44px; min-height:44px; padding:0; flex:none; }
/* This is a functional escape route from the intro, not decorative ticket
   lettering. Wrap the full action label inside either the page or auth modal. */
.public-intro-page .btn[data-action=skipIntro] { font-size:17.6px; line-height:1.4; max-width:calc(100% - 32px); white-space:normal; text-align:center; }

/* Floating surfaces and footer live outside route roots. The main navigation,
   avatar/brand marks, icon-only controls and cover images are intentionally not
   selected here, so their recently enlarged geometry stays exactly unchanged. */
.notification-inbox { font-size:16px; }
.notification-title { font-size:16px; line-height:1.45; }
.notification-body,.notification-inline-error,.notification-inline-error button { font-size:16px; line-height:1.45; }
.notification-meta { font-size:12.8px; line-height:1.45; overflow-wrap:anywhere; }
.notification-empty { font-size:16px; line-height:1.45; }
.notification-inbox-head h2 { font-size:17.6px; line-height:1.3; }
.fc6-feedback .k,.fc5 .fc6-feedback .k { font-size:22.4px; line-height:1.4; }
.fc6-feedback .b p { font-size:20.8px; line-height:1.5; }
.fc6-feedback .btn { font-size:22.4px; line-height:1.4; min-height:56px; }
.toast { font-size:22.4px; line-height:1.4; overflow-wrap:anywhere; }

/* The dedicated same-origin call document has no application shell and loads
   this layer directly. Its provider/media lifecycle is deliberately untouched. */
.fc-call { font-size:25.6px; line-height:1.5; }
.fc-call-eyebrow { font-size:19.2px; line-height:1.5; }
.fc-call-footnote { font-size:22.4px; line-height:1.5; }
.fc-call .fc-call-button { font-size:25.6px; line-height:1.35; min-height:68px; height:auto; white-space:normal; overflow-wrap:anywhere; }

/* Display text and utility sheets not covered by the reading-copy groups. */
.page:not(.fc5,.fc-classic,.auth-dialog *) .h1,.fc5 .h1,.fc5 .fc5-title { font-size:clamp(22.4px,4.8vw,32px); }
.fc5[data-fc5-screen="discover"] .fc5-title { font-size:clamp(44.8px,9.6vw,64px); }
.fc5-discovery-hero-copy strong { font-size:clamp(20.8px,4vw,32px); }
.fc5-discovery-hero-copy>span:last-child { font-size:25.6px; }
.profile-cover-name .h1:where(:not(.fc-classic *)) { font-size:clamp(17.6px,2.4vw,25.6px); }
.account-inline-handle-input { font-size:22.4px; }
.settings-dropdown { font-size:16px; }
.settings-dropdown-head h2 { font-size:17.6px; }
.settings-dropdown .linkrow .l { font-size:16px; }
.settings-dropdown .linkrow .d { font-size:12.8px; }
.settings-dropdown .appearance-toggle .small,.settings-motion-toggle [data-motion-state] { font-size:14.4px; }
.settings-dropdown .linkrow .chev { font-size:17.6px; }

@media(max-width:600px) {
  .form-grid,.fc5 .form-grid { grid-template-columns:minmax(0,1fr); }
  .account-details>div { grid-template-columns:minmax(0,1fr); gap:4px; }
  .fc-root .fc-choice { grid-template-columns:24px minmax(0,1fr); }
  .fc-root .fc-choice__time { grid-column:2; }
  .notification-inbox-head { flex-wrap:wrap; }
}
