/* Ajustes de leitura nas telas do aluno. Não altera a raiz de 10px nem o painel admin. */
html body:not(.page-id-23) :is(.shape-section-subtitle,.shape-fw-subtitle,.shape-form-label) { font-size: 16px; line-height: 1.45; }
html body:not(.page-id-23) .shape-btn { font-size: 16px !important; line-height: 1.4; white-space: normal; }
html body:not(.page-id-23) :is(.shape-form-input,.shape-form-select,.shape-form-textarea) { font-size: 16px; }
html body:not(.page-id-23) :is(.shape-field-details,.shape-weight-date,.shape-weight-obj,.shape-perfil-email,.shape-lang-picker-label) { font-size: 14px; line-height: 1.4; }

/* Início, treino e indicadores: rótulos secundários legíveis. */
html :is(.shape-stat-label,.shape-home-water-subtitle,.shape-treino-mini-time,.shape-treino-mini-name,.shape-quick-link-label,.shape-workout-card-time,.shape-home-water-portions,.shape-fw-treino-groups,.shape-fw-treino-time,.shape-fw-current-date) { font-size: 14px; line-height: 1.4; }
html :is(.shape-routine-pill,.shape-sleep-log-btn,#shape-cal-edit-label,.shape-stat-unit,#shape-water-done) { font-size: 14px; }
html :is(.shape-cal-name,.shape-sleep-week-label,.shape-cal-tag,.shape-fw-cal-abbr,.shape-fw-cal-letter,.shape-treino-mini-badge,.shape-workout-card-badge,.shape-fw-treino-letter,.shape-fw-current-badge) { font-size: 12px; }
html :is(.shape-macro-label,.shape-macros-label,.shape-dieta-comparison-tag,.shape-dieta-comparison-macros,.shape-dieta-comparison-note,.shape-dieta-comparison-label,#shape-diet-sync-text,.shape-pref-hint,.shape-pref-card small) { font-size: 14px; line-height: 1.4; }
html .shape-meal-bar-add { font-size: 14px; }
html :is(.shape-stats-card-info,.shape-stats-tip,.shape-stats-overall-label,.shape-run-total-l,.shape-affiliate-stat-label,.shape-affiliate-earning-label,.shape-affiliate-notice) { font-size: 14px; line-height: 1.4; }
html :is(.shape-stats-chip,.shape-suporte-tab) { font-size: 15px; }

/* Minha Assinatura usava rem com a base global de 10px. */
html .ma-page { font-size: 16px; line-height: 1.45; }
html .ma-page .ma-title { font-size: 28px; }
html .ma-page .ma-hero-plan { font-size: 28px; }
html .ma-page .ma-hero-price { font-size: 17px; }
html .ma-page .ma-hero-price strong { font-size: 22px; }
html .ma-page :is(.ma-hero-eyebrow,.ma-hero-note,.ma-badge,.ma-step-hint,.ma-actions-hint,.ma-family-chip) { font-size: 14px; line-height: 1.45; }
html .ma-page :is(.ma-step-label,.ma-notice,.ma-alert strong,.ma-alert p,.ma-cancel p,.ma-cancel-btn) { font-size: 16px; line-height: 1.45; }
html .ma-page .ma-step-value { font-size: 18px; white-space: normal; overflow-wrap: anywhere; }
html .ma-page .ma-btn { font-size: 17px; white-space: normal; line-height: 1.4; }
html .ma-page .ma-btn-primary { font-size: 18px; }

html :is(.fam-hint,.fam-note,.fam-member-meta,.fam-tips-list,.fam-tips-toggle,.fam-acting-bar,.fam-acting-bar button) { font-size: 14px; line-height: 1.4; }
html :is(.fam-pitch-text,.fam-pitch-list li,.fam-empty p,.shape-onb-modern .shape-onb-fields label) { font-size: 16px; line-height: 1.45; }
html .fam-badge { font-size: 12px; }
html .fam-add { font-size: 15px; }

/* Vendas: consentimento, descrições e cadastro com espaço no celular. */
html body.page-id-9182 main p { font-size: 16px !important; line-height: 1.5; }
html body.page-id-9182 main p a { font-size: inherit !important; }
html body.page-id-9182 :is(#brxe-hbrvim,#brxe-ywedxs,#brxe-fspazp,#brxe-ckbufu,#brxe-sxyjzx,#brxe-rvldgs,#brxe-jwknii,#brxe-kvzavc,.brxe-pfczpk) { font-size: 16px !important; line-height: 1.45; }
html body.page-id-9182 :is(.brxe-button,#brxe-ombeow input,#brxe-ombeow button) { font-size: 16px !important; }
@media (max-width: 767px) {
  html body.page-id-9182 main { overflow-x: clip; }
  html body.page-id-9182 #brxe-frkzst { width: calc(100% - 32px); max-width: 520px; flex-direction: column; flex-wrap: nowrap; gap: 28px; }
  html body.page-id-9182 :is(#brxe-gfndyw,#brxe-rwovhr,#brxe-egksfl) { width: 100%; max-width: 100%; min-width: 0; }
  html body.page-id-9182 #brxe-egksfl { height: auto; padding: 24px; box-sizing: border-box; }
  html body.page-id-9182 #brxe-ombeow { width: 100%; }
  html body.page-id-9182 #brxe-ombeow :is(input,.iti) { width: 100%; max-width: 100%; box-sizing: border-box; }
}
