/* App-wide text size. ID alternatives give this rule priority over page-specific
   important typography rules without changing the document IDs. */
:is(body,#horaTypography) :is(*,#horaTypography) :is(*,#horaTypography),
:is(body,#horaTypography),
:is(body,#horaTypography) :is(*,#horaTypography){font-size:16px!important}
input::placeholder,textarea::placeholder{font-size:16px!important}

/* Main page titles use the requested larger size across devices. */
:is(body,#horaTypography) :is(*,#horaTypography) :is(h1,#horaTypography),
:is(body,#horaTypography) :is(*,#horaTypography) :is(h1,#horaTypography) *{font-size:23px!important}

/* Age-stage totals in the twelve-number table. */
:is(body,#horaTypography) :is(*,#horaTypography) :is(*,#horaTypography) .atta-twelve-table tfoot td,
:is(body,#horaTypography) :is(*,#horaTypography) :is(*,#horaTypography) .atta-twelve-table tfoot td *{font-size:14px!important}

/* Compact live calendar information and creator credits on the home page. */
:is(body,#horaTypography) :is(*,#horaTypography) :is(*,#horaTypography) .home-live-info,
:is(body,#horaTypography) :is(*,#horaTypography) :is(*,#horaTypography) .home-live-info *,
:is(body,#horaTypography).home-page :is(*,#horaTypography) :is(*,#horaTypography).creator-footer,
:is(body,#horaTypography).home-page :is(*,#horaTypography).creator-footer,
:is(body,#horaTypography).home-page :is(*,#horaTypography).creator-footer :is(*,#horaTypography){font-size:clamp(12px,3.5vw,16px)!important}

/* Compact birth headings in the twelve-number table. */
:is(body,#horaTypography) :is(*,#horaTypography) :is(*,#horaTypography) .atta-twelve-table thead th{font-size:12px!important}

/* Calendar weekday headings and every date-cell label. */
:is(body,#horaTypography) :is(*,#horaTypography) :is(*,#horaTypography) .astrology-month-grid,
:is(body,#horaTypography) :is(*,#horaTypography) :is(*,#horaTypography) .astrology-month-grid *{font-size:12px!important}

/* Calendar solar date numbers remain larger than the lunar text. */
:is(body,#horaTypography) :is(*,#horaTypography) :is(*,#horaTypography) .astrology-month-grid .calendar-day-number{font-size:16px!important}

/* Weekday headings are bold and larger than lunar date labels. */
:is(body,#horaTypography) :is(*,#horaTypography) :is(*,#horaTypography) .astrology-month-grid thead th,
:is(body,#horaTypography) :is(*,#horaTypography) :is(*,#horaTypography) .astrology-month-grid thead th *{font-size:16px!important;font-weight:700!important}

/* Uniform mobile typography; preserve existing desktop sizes. */
@media(max-width:800px){
  :is(body,#horaMobileTypography#horaUniformTypography#horaTextSize#horaTextOverride#horaTextPriority#horaTextFinal),
  :is(body,#horaMobileTypography#horaUniformTypography#horaTextSize#horaTextOverride#horaTextPriority#horaTextFinal) *,
  :is(body,#horaMobileTypography#horaUniformTypography#horaTextSize#horaTextOverride#horaTextPriority#horaTextFinal) *::before,
  :is(body,#horaMobileTypography#horaUniformTypography#horaTextSize#horaTextOverride#horaTextPriority#horaTextFinal) *::after,
  :is(body,#horaMobileTypography#horaUniformTypography#horaTextSize#horaTextOverride#horaTextPriority#horaTextFinal) :is(input,textarea)::placeholder{font-size:14px!important}
}

/* Compact home information and creator credits on mobile. */
@media(max-width:800px){
  :is(body,#horaMobileTypography#horaUniformTypography#horaTextSize#horaTextOverride#horaTextPriority#horaTextFinal).home-page :is(.home-live-info,.creator-footer),
  :is(body,#horaMobileTypography#horaUniformTypography#horaTextSize#horaTextOverride#horaTextPriority#horaTextFinal).home-page :is(.home-live-info,.creator-footer) *{font-size:12px!important}
}

/* Display headings use a readable 22px size on mobile. */
@media(max-width:800px){
  :is(body,#horaMobileTypography#horaUniformTypography#horaTextSize#horaTextOverride#horaTextPriority#horaTextFinal) :is(header h1,.auth-brand h1),
  :is(body,#horaMobileTypography#horaUniformTypography#horaTextSize#horaTextOverride#horaTextPriority#horaTextFinal) :is(header h1,.auth-brand h1) *{font-size:22px!important}
}
