/* Shared typography: values assume a 16px browser default and scale with user preferences. */
:root {
  --sv-type-caption: .75rem;
  --sv-type-secondary: .8125rem;
  --sv-type-body: .875rem;
  --sv-type-reading: 1rem;
  --sv-type-card-title: 1rem;
  --sv-type-section-title: 1.125rem;
  --sv-type-page-title: 1.5rem;
  --sv-type-metric: 1.625rem;
  --sv-leading-compact: 1.4;
  --sv-leading-body: 1.5;
  --sv-leading-reading: 1.625;
}
/* Keep interactive controls at body size; compact metadata may use secondary. */
button, [role='button'], nav a, nav button,
.sv-mega-panel a, .sp-checkout-link, .sp-final-secondary { font-size: var(--sv-type-body); }
.sv-console :is(.seo-table-panel table,.seo-catalog-table,.sd-table-wrap table) { font-size: var(--sv-type-body); line-height: var(--sv-leading-body); }
.sv-console :is(.seo-filterbar select,.seo-list-toolbar select,.seo-list-toolbar input,.seo-catalog-search input,.seo-pager select) { font-size: var(--sv-type-body); }
.sv-console :is(.seo-panel-heading h2,.sd-panel-head h2) { font-size: var(--sv-type-card-title); line-height: 1.5; }
@media (max-width: 640px) {
  input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='hidden']), select, textarea { font-size: var(--sv-type-reading); }
}
/* Readable product copy and actions; caption is reserved for short supporting labels. */
.sv-console :is(.sv-console-module-card p,.sv-console-next p,.sv-console-next strong,.sv-console-resume button,.sd-empty,.sd-note,.sd-subtle,.sd-context,.ip-platform-progress,.ip-capability-note,.ip-platform-error,.ip-no-data) { font-size: var(--sv-type-secondary); line-height: var(--sv-leading-body); }
.sv-console :is(.sv-console-primary,.sd-tabs button,.sd-text-button,.seo-table-panel button,.seo-catalog-table a) { font-size: var(--sv-type-body); }
.sv-console :is(.sd-url,.ip-status,.sd-breadcrumb) { font-size: var(--sv-type-secondary); }
@media (max-width: 640px) {
  .sv-console :is(input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='hidden']),select,textarea) { font-size: var(--sv-type-reading); }
}
.sv-console :is(.seo-heading p,.geo-console-embedded .page-heading p,.geo-console-embedded .od-heading p,.seo-metric-label,.seo-metric p,.seo-filterbar label > span,.seo-list-toolbar label,.seo-report-summary span) { font-size: var(--sv-type-body); line-height: var(--sv-leading-body); }
.sv-console :is(.geo-console-embedded .od-panel p,.geo-console-embedded .od-panel li,.geo-console-embedded .panel p,.geo-console-embedded .panel li) { font-size: var(--sv-type-body); line-height: var(--sv-leading-body); }
@media (max-width: 500px) {
  .sv-console .od-heading { flex-direction: column; align-items: stretch; }
  .sv-console .od-heading .primary { align-self: flex-start; white-space: normal; }
}

.sv-console :is(.od-heading p,.od-panel p,.od-panel li) { font-size: var(--sv-type-body); line-height: var(--sv-leading-body); }
.public-site :is(.public-nav button,.public-text-link,.public-footer button,.public-login-button,.public-primary-button,.public-secondary-button,.public-outline-button,.public-social-button,.guide-sidebar button),
.growth-home :is(.public-announcement button,.public-nav button,.public-footer button),
.sv-header-actions .sv-button,
.sv-footer nav a,
.sv-journey-tabs button,
.sv-resource-card summary,
.sv-onboard-step-nav button,
.sv-console :is(.sv-console-sidebar nav .sv-console-subnav a,.sv-console-service-actions a,.sv-console-rail nav a,.sv-console-account-menu nav a,.sv-console-tools-mobile a,.sv-overview-range select),
.sv-console .workspace-theme :is(.sidebar nav button,.cms-platform-tabs button,.od-filters :is(select,button.geo-select)),
.sv-console .seo-console-embedded :is(.seo-nav-item,.seo-breadcrumb,.seo-topbar-meta a,.seo-filterbar select,.seo-filter-reset,.seo-error button,.seo-catalog-search button,.seo-catalog-tabs a,.seo-catalog-pagination button,.seo-login-action),
.seekvera-pricing :is(.sp-cycle button,.sp-final-secondary,.sp-header-action,.sp-cta,.sp-final-primary) { font-size: var(--sv-type-body); }
@media (max-width: 640px) {
  .sv-console-three-level .sv-console-topbar { gap: 8px; }
  .sv-console-three-level .sv-console-breadcrumb { flex: 1 1 0; min-width: 0; }
  .sv-console-three-level .sv-console-top-actions { flex: 0 0 auto; }
}
.sv-hero h1 { font-size: clamp(2.25rem, 4vw, 3.5rem); line-height: 1.12; letter-spacing: -.045em; }
