/* /assets/senior-new-pages.css — senior-readable typography for /ask/, /leaderboard/, /u/, /account-delete/ and any future new public pages. Load AFTER inline page CSS so it wins specificity. */

body { font-size: 17px !important; line-height: 1.7 !important; color: #1f2937; }

/* Inputs + buttons — large tap targets, iOS-safe 16px font to avoid zoom */
input[type="text"], input[type="email"], input[type="number"], input[type="tel"], input[type="url"],
select, textarea {
  min-height: 48px !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  padding: 12px 14px !important;
  color: #1f2937 !important;
}
textarea { min-height: 110px !important; }

button, .btn, a.button, a.btn,
input[type="submit"], input[type="button"] {
  min-height: 48px !important;
  font-size: 15.5px !important;
}

/* Links underlined for visibility */
.ask-wrap a:not(.ask-btn):not(.ask-cat):not(.ask-card):not([class*="-btn"]):not(.qa-back):not(.qa-share *):not(.pp-share-btn),
.qa-wrap a:not(.qa-back):not(.qa-share *):not(.qa-ans__pick-btn):not([class*="-btn"]):not(.qa-rel a):not(.ask-btn),
.lb-wrap a:not(.lb-tab):not(.lb-row):not([class*="-btn"]),
.pp-wrap a:not(.pp-share-btn):not([class*="-btn"]) {
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* === /ask/ list page === */
.ask-card__q { font-size: 18px !important; line-height: 1.5 !important; }
.ask-card__a { font-size: 15.5px !important; line-height: 1.65 !important; color: #475569 !important; }
.ask-card__meta { font-size: 13.5px !important; color: #475569 !important; }
.ask-card__meta b { color: #1E3A5F !important; }
.ask-cat { font-size: 14.5px !important; padding: 10px 16px !important; min-height: 44px !important; display: inline-flex !important; align-items: center !important; }
.ask-hero p { font-size: 16.5px !important; color: #e2e8f0 !important; }
.ask-empty { font-size: 16px !important; }

/* === /ask/q.php detail page === */
.qa-q h1 { font-size: clamp(24px, 3vw, 30px) !important; line-height: 1.4 !important; }
.qa-q__meta { font-size: 14.5px !important; }
.qa-q__meta b { color: #fde68a !important; }
.qa-stats { font-size: 15px !important; }
.qa-guru__body { font-size: 17px !important; line-height: 1.8 !important; color: #0f172a !important; }
.qa-guru__who strong { font-size: 16px !important; }
.qa-guru__who span { font-size: 13.5px !important; color: #475569 !important; }
.qa-section-title h2 { font-size: 22px !important; }
.qa-section-title .count { font-size: 15px !important; color: #475569 !important; }
.qa-ans__text { font-size: 16.5px !important; line-height: 1.75 !important; color: #1f2937 !important; }
.qa-ans__author-info strong { font-size: 16px !important; }
.qa-ans__author-info small { font-size: 13.5px !important; color: #475569 !important; }
.qa-ans__foot { font-size: 13.5px !important; }
.qa-ans__pick-btn { font-size: 14.5px !important; padding: 12px 20px !important; min-height: 48px !important; }
.qa-ans__pick-hint { font-size: 13.5px !important; padding: 6px 14px !important; }
.qa-ans__vote button { width: 42px !important; height: 42px !important; font-size: 18px !important; }
.qa-ans__vote .count { font-size: 18px !important; }
.qa-composer textarea { font-size: 16px !important; line-height: 1.65 !important; min-height: 150px !important; }
.qa-composer__hint { font-size: 14px !important; color: #475569 !important; }
.qa-composer button { font-size: 15.5px !important; min-height: 48px !important; padding: 14px 26px !important; }
.qa-login-prompt p { font-size: 15.5px !important; color: #e2e8f0 !important; }
.qa-login-prompt a { font-size: 16px !important; min-height: 50px !important; padding: 14px 26px !important; }
.qa-cta p { font-size: 15.5px !important; color: #1f2937 !important; }
.qa-cta a { font-size: 16px !important; padding: 14px 26px !important; min-height: 50px !important; }
.qa-rel h3 { font-size: 20px !important; }
.qa-rel a { font-size: 15.5px !important; padding: 16px 18px !important; }
.qa-share button, .qa-share a { width: 48px !important; height: 48px !important; font-size: 20px !important; }

/* === /leaderboard/ === */
.lb-hero p { font-size: 16.5px !important; color: #e2e8f0 !important; }
.lb-tab { font-size: 14.5px !important; padding: 11px 20px !important; min-height: 44px !important; }
.lb-rank { font-size: 18px !important; }
.lb-rank.gold { font-size: 24px !important; }
.lb-rank.silver { font-size: 22px !important; }
.lb-rank.bronze { font-size: 20px !important; }
.lb-name { font-size: 16.5px !important; color: #0f172a !important; }
.lb-handle { font-size: 13.5px !important; color: #475569 !important; }
.lb-pts { font-size: 18px !important; }
.lb-pts small { font-size: 12.5px !important; color: #475569 !important; }
.lb-row { padding: 16px 20px !important; }
.lb-cta h3 { font-size: 22px !important; }
.lb-cta p { font-size: 16px !important; color: #1f2937 !important; }
.lb-cta a { font-size: 16px !important; padding: 15px 28px !important; min-height: 50px !important; }

/* === /u/ public profile === */
.pp-name { font-size: 28px !important; }
.pp-handle { font-size: 15px !important; color: #fde68a !important; }
.pp-bio { font-size: 16.5px !important; color: #e2e8f0 !important; line-height: 1.65 !important; }
.pp-chip { font-size: 14px !important; padding: 8px 16px !important; }
.pp-share-btn { font-size: 14.5px !important; padding: 12px 20px !important; min-height: 46px !important; }
.pp-stat strong { font-size: 28px !important; }
.pp-stat small { font-size: 12.5px !important; color: #475569 !important; }
.pp-section h2 { font-size: 20px !important; }
.pp-bg__label { font-size: 12.5px !important; color: #1E3A5F !important; }
.pp-bg__pts { font-size: 11.5px !important; color: #475569 !important; }
.pp-qa-list a { font-size: 15.5px !important; padding: 16px 18px !important; }
.pp-cta h3 { font-size: 20px !important; }
.pp-cta p { font-size: 16px !important; color: #1f2937 !important; }
.pp-cta a { font-size: 16px !important; padding: 14px 26px !important; min-height: 50px !important; }

/* === Profile settings tab (Public Profile) === */
.pp-form label { font-size: 15px !important; }
.pp-form .hint { font-size: 13.5px !important; color: #475569 !important; }
.pp-status { font-size: 13.5px !important; }
.pp-toggle-row__l strong { font-size: 15.5px !important; }
.pp-toggle-row__l small { font-size: 13.5px !important; color: #475569 !important; }
.pp-save-btn { font-size: 16px !important; min-height: 52px !important; padding: 16px 32px !important; }
.pp-pic-actions label, .pp-pic-actions button { font-size: 14px !important; min-height: 44px !important; padding: 11px 16px !important; }
.pp-msg { font-size: 14.5px !important; }
.pp-share-row a { font-size: 14px !important; padding: 11px 18px !important; min-height: 44px !important; }

/* === /account-delete/ === */
.wrap p, .wrap li { font-size: 17px !important; line-height: 1.7 !important; }

/* Empty/dashed boxes used across pages */
.ask-empty p, .lb-list + div, .qa-rel + div { font-size: 16px !important; }
