/* ============================================================================
   app-next.css - opt-in preview layer, loaded only for ?design=next
   ----------------------------------------------------------------------------
   Never loads for ordinary visitors. Layers over app.css and changes nothing
   structural - no new layout, nothing repositioned. What it adds is the system
   app.css grew out of: one type scale instead of 23 compounding em sizes, one
   spacing rhythm instead of 36 ad-hoc values, one surface treatment, and fixes
   for the accessibility defects found by measuring the live pages.

   Rules this file obeys:
   1. Motion must fail safe. Every animation is opt-out via prefers-reduced-
      motion AND rests in the finished state. Nothing is hidden by CSS that only
      JS can bring back, so a script failure can never blank the page.
   2. The Muṣḥaf is never restyled. Qur'anic text has its own metrics and is
      explicitly excluded from every type rule below.
   ========================================================================= */

:root {
    /* Type scale, 1.25 ratio, whole pixels. app.css renders 23 distinct sizes
       on the home page (14.08px, 10.24px, 38.44px …) because nested em units
       compound. These are absolute so they cannot compound. */
    --fs-micro: 0.75rem;    /* 12px - hard floor, nothing smaller exists   */
    --fs-label: 0.8125rem;  /* 13px - kickers, eyebrow labels, chips       */
    --fs-small: 0.9375rem;  /* 15px - captions, meta, table cells          */
    --fs-body: 1.0625rem;   /* 17px - long-form reading                    */
    --fs-lead: 1.25rem;     /* 20px - intros, h4                           */
    --fs-h3: 1.75rem;
    --fs-h2: clamp(2rem, 3.2vw, 2.75rem);
    --fs-h1: clamp(2.25rem, 5vw, 3.75rem);

    /* One rhythm, 4px grid, replacing 36 loose spacing values. */
    --sp-1: 0.25rem;  --sp-2: 0.5rem;   --sp-3: 0.75rem;  --sp-4: 1rem;
    --sp-5: 1.5rem;   --sp-6: 2rem;     --sp-7: 3rem;     --sp-8: 4rem;

    /* Layered shadows read as light on paper rather than one grey blur. */
    --lift-1: 0 1px 2px rgba(10, 42, 36, .06), 0 2px 8px rgba(10, 42, 36, .05);
    --lift-2: 0 2px 4px rgba(10, 42, 36, .07), 0 12px 28px rgba(10, 42, 36, .10);
    --lift-3: 0 4px 8px rgba(10, 42, 36, .08), 0 24px 56px rgba(10, 42, 36, .13);

    --gold-lit: #e6c985;   /* caramel - gold text on ink, 7.7:1 */
    --ease-calm: cubic-bezier(.22, .61, .36, 1);

    /* Every card-like surface in the site, named once. */
    --card-radius: 4px;
}


/* ================================================================= fixes ===
   Measured defects, not preferences. */

/* Card 2 of each journey grid takes an ink background. app.css recolours its
   <span> for that but not its <small>: #7d5c22 on #0e3b34 is 2.02:1, less than
   half the 4.5:1 floor. Caramel on the same ink measures 7.71:1. */
.home-system-grid > a:nth-child(2) small { color: var(--gold-lit); }

/* Nothing below 12px anywhere. app.css ships 10.24px and 10.4px label text,
   which is below the threshold most people can read comfortably. */
small, figcaption, .section-kicker, [class*="-kicker"], [class*="-badge"],
[class*="-chip"], [class*="-tag"], [class*="-meta"], [class*="-label"] {
    font-size: var(--fs-label);
    letter-spacing: .12em;
}

/* Standalone source links sit at 19px tall. Vertical padding on an inline
   element grows the hit area without changing line box height.

   This selector is deliberately narrow. An earlier version used a bare element
   selector for anchors inside common containers, which also matched the CONTENT
   CARDS - .home-system-grid > a, .about-card and .article-card are all anchors -
   and overrode their 2rem padding down to 4px. Because app.css bottom-aligns the
   card label with margin-top:auto, the lost padding reappeared as a 73px gap
   under the numeral. Keep this scoped to named link lists only. */
.source-card-links > a, .catalog-coverage dd > a { padding-block: var(--sp-1); }

/* Controls reach the 44px comfortable target. */
.btn { min-height: 44px; padding-top: var(--sp-3); padding-bottom: var(--sp-3); }
.text-link { min-height: 44px; padding-top: var(--sp-3); padding-bottom: var(--sp-2); }
.nav-actions .icon-button, .tool-button { width: 44px; height: 44px; }

/* A visible focus ring on everything focusable, consistently. */
a:focus-visible, button:focus-visible, [tabindex]:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible,
summary:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
    border-radius: 2px;
}


/* Long-form reading: a measure limit and looser leading. Past roughly 70
   characters the eye loses the return sweep. */
.article-body p, .article-body li, .prose p, .prose li,
.legal-body p, .legal-body li, .guide-body p {
    max-width: 68ch;
    font-size: var(--fs-body);
    line-height: 1.75;
}
.article-body h2, .prose h2 { margin-top: var(--sp-7); }
.article-body h3, .prose h3 { margin-top: var(--sp-6); }

/* ============================================================== surfaces ===
   One treatment for every card-like block, so /learn, /articles, /about,
   /library, /community and the home page read as one system. A gold hairline
   lights along the top edge on hover - the "illumination" half of the site's
   vocabulary, applied consistently instead of ad hoc. */
.home-system-grid > a, .surah-tile, .guide-card, .about-card, .article-card,
.pillar-grid > *, .contact-channel, .source-context-card, .faq-item,
.search-surah-result, .prayer-time-grid > *, .source-ledger > *,
.public-scholar-review, .knowledge-citation-review, .rhythm-day,
.pilot-grid > *, .story-hadith-grid > *, .search-path-grid > * {
    position: relative;
    box-shadow: var(--lift-1);
    transition: transform .28s var(--ease-calm), box-shadow .28s var(--ease-calm),
                background .28s var(--ease-calm);
}
.home-system-grid > a::after, .surah-tile::after, .guide-card::after,
.about-card::after, .article-card::after, .contact-channel::after,
.source-context-card::after, .faq-item::after, .search-surah-result::after {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    opacity: 0;
    transition: opacity .28s var(--ease-calm);
    pointer-events: none;
}
.home-system-grid > a:hover::after, .surah-tile:hover::after, .guide-card:hover::after,
.about-card:hover::after, .article-card:hover::after, .contact-channel:hover::after,
.source-context-card:hover::after, .faq-item:hover::after,
.search-surah-result:hover::after { opacity: 1; }

.home-system-grid > a:hover, .surah-tile:hover, .guide-card:hover,
.about-card:hover, .article-card:hover, .contact-channel:hover,
.search-surah-result:hover { box-shadow: var(--lift-3); }

/* ================================================================= forms ===
   /login, /register, /contact, /report, /account, /prayer-times. */
input:not([type="checkbox"]):not([type="radio"]), select, textarea {
    min-height: 44px;
    padding: var(--sp-3) var(--sp-4);
    font-size: var(--fs-body);
    border-radius: var(--card-radius);
    transition: border-color .2s var(--ease-calm), box-shadow .2s var(--ease-calm);
}
input:not([type="checkbox"]):not([type="radio"]):focus, select:focus, textarea:focus {
    border-color: var(--gold);
    box-shadow: 0 0 0 3px rgba(201, 162, 75, .18);
}
label, .field-title { font-size: var(--fs-small); font-weight: 600; letter-spacing: .01em; }
/* A checkbox you can actually hit on a phone. */
input[type="checkbox"], input[type="radio"] { width: 20px; height: 20px; accent-color: var(--ink); }

/* ================================================================ tables ===
   /community's ledger, /methodology's source tables. Narrow screens scroll the
   table rather than the page - the page itself must never scroll sideways. */
table { width: 100%; border-collapse: collapse; font-size: var(--fs-small); }
th, td { padding: var(--sp-3) var(--sp-4); text-align: left; }
thead th {
    font-size: var(--fs-label);
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--gold-dark);
    border-bottom: 1px solid var(--gold);
}
tbody tr + tr { border-top: 1px solid var(--line); }
tbody tr:nth-child(even) { background: rgba(255, 253, 248, .5); }

/* =============================================================== rhythm ====
   Section spacing on the scale, tightening on small screens so a phone does
   not spend half its height on whitespace. */
.section-space { padding-block: var(--sp-8); }
.section-heading { margin-bottom: var(--sp-6); }

@media (max-width: 767px) {
    .section-space { padding-block: var(--sp-7); }
    .section-heading { margin-bottom: var(--sp-5); }
    :root { --fs-h1: clamp(2rem, 8vw, 2.5rem); --fs-h2: clamp(1.65rem, 6vw, 2rem); --fs-h3: 1.4rem; }
    /* Cards stop lifting on touch - there is no hover, and the transform only
       causes repaint cost and sticky :hover states after a tap. */
    .home-system-grid > a:hover, .surah-tile:hover, .guide-card:hover,
    .about-card:hover, .article-card:hover { transform: none; }
}

@media (min-width: 768px) and (max-width: 1023px) {
    :root { --fs-h1: clamp(2.25rem, 5.5vw, 3rem); }
    .section-space { padding-block: calc(var(--sp-7) + var(--sp-2)); }
}

/* =============================================================== motion ====
   The scroll-reveal that used to live here was removed on purpose. It hid each
   element at zero opacity and faded it in on intersection, so a card was an
   empty outlined box until the observer fired - visible as blank boxes while
   scrolling, and indistinguishable from a broken layout. Decorative motion is
   not worth making content briefly invisible.

   What remains is transition-only: the hover lift and the gold hairline both
   animate from a fully visible resting state, so nothing can ever be hidden. */

/* ------------------------------------------------------- decorative numerals
   A family of large numerals (01, 02 …) uses var(--gold) #c9a24b on cream and
   lands at 2.22:1, under the 3:1 that large text still has to meet - and most
   carry an opacity below 1, so the rendered figure is worse again. --gold-dark
   on the same cream measures 5.68:1 and keeps the illuminated look. Only
   selectors verified to sit on light cards are listed; gold on ink is correct
   and is left alone. */
.about-num, .path-index, .pillar-grid .pillar-card > span, .lane-rank,
.lesson-step-number strong, .water-study > strong, .learn-compass span,
.journey-route > a > span, .snapshot-number, .source-order,
.trust-steps article > span, .scholar-public-process li > span,
.home-system-grid > a:not(:nth-child(2)) > span {
    color: var(--gold-dark);
    opacity: .9;
}

/* ------------------------------------------------------------ final polish */
/* Selection in the site's own colours rather than the browser default blue. */
::selection { background: rgba(201, 162, 75, .28); color: var(--ink); }

/* Images never overflow their column, whatever the source dimensions. */
img { max-width: 100%; height: auto; }

/* Wide content scrolls inside its own box so the page never scrolls sideways. */
table, pre { display: block; max-width: 100%; overflow-x: auto; }

/* Smooth in-page jumps, but only for people who have not opted out. */
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }

/* === GENERATED FLOOR BELOW - regenerate with scratchpad/genfloor.py === */
/* ---------------------------------------------------------------------
   Legibility floor - GENERATED, do not hand-edit.
   361 top-level rules in app.css set font sizes below 12px, the smallest
   at 7.20px. Each selector is repeated verbatim and re-declared at the
   floor; this file loads later, so source order decides it - no
   !important and no specificity guessing.
   Rules inside @media blocks are skipped on purpose: hoisting them out
   of their query would apply a mobile-only size at every width.
   Qur'anic text is excluded - not ours to resize.
   --------------------------------------------------------------------- */
.mushaf-type-scale > span { font-size: var(--fs-micro); } /* was 0.45rem */
.mushaf-hero-facts small { font-size: var(--fs-micro); } /* was 0.49rem */
.mushaf-utility-bar small { font-size: var(--fs-micro); } /* was 0.49rem */
.mushaf-jump-heading small { font-size: var(--fs-micro); } /* was 0.50rem */
.page-jump label { font-size: var(--fs-micro); } /* was 0.50rem */
.mushaf-jump-foot { font-size: var(--fs-micro); } /* was 0.50rem */
.mushaf-aside-card > small { font-size: var(--fs-micro); } /* was 0.50rem */
.mushaf-reader-end small { font-size: var(--fs-micro); } /* was 0.50rem */
.city-search-state { font-size: var(--fs-micro); } /* was 0.50rem */
.mushaf-topbar-facts dt { font-size: var(--fs-micro); } /* was 0.50rem */
.mushaf-paper-head { font-size: var(--fs-micro); } /* was 0.51rem */
.mushaf-turn small { font-size: var(--fs-micro); } /* was 0.52rem */
.mushaf-surah-links a > span { font-size: var(--fs-micro); } /* was 0.52rem */
.rhythm-day small { font-size: var(--fs-micro); } /* was 0.52rem */
.revelation-facts article > span { font-size: var(--fs-micro); } /* was 0.52rem */
.contact-account-identity small { font-size: var(--fs-micro); } /* was 0.53rem */
.search-surah-result > div small { font-size: var(--fs-micro); } /* was 0.53rem */
.audience-switch-link span { font-size: var(--fs-micro); } /* was 0.53rem */
.kids-parent-note small, .kids-guide-source small { font-size: var(--fs-micro); } /* was 0.53rem */
.action-guide-intro small { font-size: var(--fs-micro); } /* was 0.54rem */
.mushaf-keyboard-hint { font-size: var(--fs-micro); } /* was 0.54rem */
.library-hadith-portal small { font-size: var(--fs-micro); } /* was 0.54rem */
.citation-list dt { font-size: var(--fs-micro); } /* was 0.54rem */
.source-section-label span { font-size: var(--fs-micro); } /* was 0.54rem */
.story-hadith-grid div > span { font-size: var(--fs-micro); } /* was 0.54rem */
.search-proof small { font-size: var(--fs-micro); } /* was 0.54rem */
.search-shortcuts small { font-size: var(--fs-micro); } /* was 0.54rem */
.qibla-center small { font-size: var(--fs-micro); } /* was 0.54rem */
.wudu-illustration > small { font-size: var(--fs-micro); } /* was 0.54rem */
.streak-orbit span { font-size: var(--fs-micro); } /* was 0.55rem */
.rhythm-day > span { font-size: var(--fs-micro); } /* was 0.55rem */
.proof-label { font-size: var(--fs-micro); } /* was 0.55rem */
.citation-type { font-size: var(--fs-micro); } /* was 0.55rem */
.pilot-grid > article > div span { font-size: var(--fs-micro); } /* was 0.55rem */
.scholar-status { font-size: var(--fs-micro); } /* was 0.55rem */
.pose-diagram small { font-size: var(--fs-micro); } /* was 0.55rem */
.location-options button small { font-size: var(--fs-micro); } /* was 0.55rem */
.source-context-card footer small, .source-hadith-ledger-head small { font-size: var(--fs-micro); } /* was 0.55rem */
.source-section-label small { font-size: var(--fs-micro); } /* was 0.55rem */
.story-hadith-grid small { font-size: var(--fs-micro); } /* was 0.55rem */
.religious-report-card small { font-size: var(--fs-micro); } /* was 0.55rem */
.contact-message-body small { font-size: var(--fs-micro); } /* was 0.55rem */
.search-command label { font-size: var(--fs-micro); } /* was 0.55rem */
.search-surah-result dl div { font-size: var(--fs-micro); } /* was 0.55rem */
.search-empty small { font-size: var(--fs-micro); } /* was 0.55rem */
.search-path-grid small { font-size: var(--fs-micro); } /* was 0.55rem */
.qibla-status-panel small, .qibla-result-grid small { font-size: var(--fs-micro); } /* was 0.55rem */
.qibla-calibration small, .qibla-next small { font-size: var(--fs-micro); } /* was 0.55rem */
.times-qibla-card small { font-size: var(--fs-micro); } /* was 0.55rem */
.surah-card-tag { font-size: var(--fs-micro); } /* was 0.55rem */
.ayah-action-legend small { font-size: var(--fs-micro); } /* was 0.56rem */
.ayah-key span { font-size: var(--fs-micro); } /* was 0.56rem */
.mushaf-hero-folio > span, .mushaf-hero-folio > small { font-size: var(--fs-micro); } /* was 0.56rem */
.rhythm-goal-form label { font-size: var(--fs-micro); } /* was 0.56rem */
.knowledge-submit-panel > summary small { font-size: var(--fs-micro); } /* was 0.56rem */
.scholar-decision { font-size: var(--fs-micro); } /* was 0.56rem */
.scholar-profile-head small { font-size: var(--fs-micro); } /* was 0.56rem */
.revelation-facts small { font-size: var(--fs-micro); } /* was 0.56rem */
.source-map-ledger-head small { font-size: var(--fs-micro); } /* was 0.56rem */
.source-map-provider > span { font-size: var(--fs-micro); } /* was 0.56rem */
.source-map-ayah-meta small, .source-map-translation small { font-size: var(--fs-micro); } /* was 0.56rem */
.contact-submit-row span { font-size: var(--fs-micro); } /* was 0.56rem */
.search-group-heading small { font-size: var(--fs-micro); } /* was 0.56rem */
.atomic-claim-review span { font-size: var(--fs-micro); } /* was 0.57rem */
.location-attribution { font-size: var(--fs-micro); } /* was 0.57rem */
.readonly-community-cta small { font-size: var(--fs-micro); } /* was 0.57rem */
.contact-channel small { font-size: var(--fs-micro); } /* was 0.57rem */
.search-counts span { font-size: var(--fs-micro); } /* was 0.57rem */
.navbar-brand small { font-size: var(--fs-micro); } /* was 0.58rem */
.journey-explore-link small { font-size: var(--fs-micro); } /* was 0.58rem */
.ayah-action::after { font-size: var(--fs-micro); } /* was 0.58rem */
.collection-status { font-size: var(--fs-micro); } /* was 0.58rem */
.public-scholar-review small { font-size: var(--fs-micro); } /* was 0.58rem */
.scholar-gate-heading small { font-size: var(--fs-micro); } /* was 0.58rem */
.pilot-board-heading small { font-size: var(--fs-micro); } /* was 0.58rem */
.pilot-grid li { font-size: var(--fs-micro); } /* was 0.58rem */
.priority-badge, .status-badge { font-size: var(--fs-micro); } /* was 0.58rem */
.reported-wording span { font-size: var(--fs-micro); } /* was 0.58rem */
.lesson-step-number small { font-size: var(--fs-micro); } /* was 0.58rem */
.method-disclosure small { font-size: var(--fs-micro); } /* was 0.58rem */
.public-scholar-grid article > small { font-size: var(--fs-micro); } /* was 0.58rem */
.certainty-legend > span { font-size: var(--fs-micro); } /* was 0.58rem */
.reference-only-badge { font-size: var(--fs-micro); } /* was 0.58rem */
.source-hadith-grid small { font-size: var(--fs-micro); } /* was 0.58rem */
.readonly-policy-grid small { font-size: var(--fs-micro); } /* was 0.58rem */
.contact-trust-strip small { font-size: var(--fs-micro); } /* was 0.58rem */
.private-contact-form label > small { font-size: var(--fs-micro); } /* was 0.58rem */
.contact-process-card li span { font-size: var(--fs-micro); } /* was 0.58rem */
.search-ayah-identity small { font-size: var(--fs-micro); } /* was 0.58rem */
.qibla-center span { font-size: var(--fs-micro); } /* was 0.58rem */
.kids-choice-count { font-size: var(--fs-micro); } /* was 0.58rem */
.kids-choice-card > small { font-size: var(--fs-micro); } /* was 0.58rem */
.kids-step-copy > small { font-size: var(--fs-micro); } /* was 0.58rem */
.recitation-when { font-size: var(--fs-micro); } /* was 0.58rem */
.prayer-pose-figure small { font-size: var(--fs-micro); } /* was 0.58rem */
.say-box-label { font-size: var(--fs-micro); } /* was 0.58rem */
.rakahs-cta-figures i { font-size: var(--fs-micro); } /* was 0.58rem */
.admin-kv small { font-size: var(--fs-micro); } /* was 0.58rem */
.public-atomic-claim span { font-size: var(--fs-micro); } /* was 0.59rem */
.times-form-heading small { font-size: var(--fs-micro); } /* was 0.59rem */
.public-scholar-grid dt { font-size: var(--fs-micro); } /* was 0.59rem */
.reader-topbar small { font-size: var(--fs-micro); } /* was 0.60rem */
.password-control button { font-size: var(--fs-micro); } /* was 0.60rem */
.password-form .secure-field small { font-size: var(--fs-micro); } /* was 0.60rem */
.knowledge-scope > span { font-size: var(--fs-micro); } /* was 0.60rem */
.citation-concern small { font-size: var(--fs-micro); } /* was 0.60rem */
.context-record-top { font-size: var(--fs-micro); } /* was 0.60rem */
.knowledge-citation-review > span { font-size: var(--fs-micro); } /* was 0.60rem */
.claim-safety-row > span { font-size: var(--fs-micro); } /* was 0.60rem */
.gate-pass, .gate-waiting { font-size: var(--fs-micro); } /* was 0.60rem */
.concern-facts dt { font-size: var(--fs-micro); } /* was 0.60rem */
.next-prayer small { font-size: var(--fs-micro); } /* was 0.60rem */
.source-context-top { font-size: var(--fs-micro); } /* was 0.60rem */
.compact-choice small { font-size: var(--fs-micro); } /* was 0.60rem */
.kids-choice-visual small { font-size: var(--fs-micro); } /* was 0.60rem */
.admin-surah-badges i { font-size: var(--fs-micro); } /* was 0.60rem */
.hadith-grade { font-size: var(--fs-micro); } /* was 0.60rem */
.service-status { font-size: var(--fs-micro); } /* was 0.60rem */
.notice-label { font-size: var(--fs-micro); } /* was 0.61rem */
.catalog-coverage dt { font-size: var(--fs-micro); } /* was 0.61rem */
.public-claim-labels span { font-size: var(--fs-micro); } /* was 0.61rem */
.scholar-profile-card dt { font-size: var(--fs-micro); } /* was 0.61rem */
.registry-decision-note small { font-size: var(--fs-micro); } /* was 0.61rem */
.learning-path-card > small { font-size: var(--fs-micro); } /* was 0.61rem */
.prayer-time-grid article > small { font-size: var(--fs-micro); } /* was 0.61rem */
.source-map-ledger > footer { font-size: var(--fs-micro); } /* was 0.61rem */
.private-form-badge { font-size: var(--fs-micro); } /* was 0.61rem */
.qibla-manual form > p { font-size: var(--fs-micro); } /* was 0.61rem */
.security-trust span { font-size: var(--fs-micro); } /* was 0.62rem */
.library-card-meta { font-size: var(--fs-micro); } /* was 0.62rem */
.library-card-proof { font-size: var(--fs-micro); } /* was 0.62rem */
.proof-ledger span { font-size: var(--fs-micro); } /* was 0.62rem */
.knowledge-invite-card > div:nth-child(2) > div span { font-size: var(--fs-micro); } /* was 0.62rem */
.knowledge-proof span { font-size: var(--fs-micro); } /* was 0.62rem */
.context-record-foot { font-size: var(--fs-micro); } /* was 0.62rem */
.journey-route small, .snapshot-grid small, .journey-record-meta span, .collection-lanes small { font-size: var(--fs-micro); } /* was 0.62rem */
.pillar-grid small { font-size: var(--fs-micro); } /* was 0.62rem */
.prayer-time-grid article > strong { font-size: var(--fs-micro); } /* was 0.62rem */
.times-source-card > small { font-size: var(--fs-micro); } /* was 0.62rem */
.source-map-status { font-size: var(--fs-micro); } /* was 0.62rem */
.search-shortcuts > span { font-size: var(--fs-micro); } /* was 0.62rem */
.search-open { font-size: var(--fs-micro); } /* was 0.62rem */
.qibla-live-readout small { font-size: var(--fs-micro); } /* was 0.62rem */
.qibla-manual label { font-size: var(--fs-micro); } /* was 0.62rem */
.kids-guide-seal strong { font-size: var(--fs-micro); } /* was 0.62rem */
.kids-step-copy > span { font-size: var(--fs-micro); } /* was 0.62rem */
.admin-stat small { font-size: var(--fs-micro); } /* was 0.62rem */
.admin-table th { font-size: var(--fs-micro); } /* was 0.62rem */
.kids-step-art .prayer-pose-figure small { font-size: var(--fs-micro); } /* was 0.62rem */
.rakahs-table thead th { font-size: var(--fs-micro); } /* was 0.62rem */
.status-badge { font-size: var(--fs-micro); } /* was 0.62rem */
.learn-reading-text small { font-size: var(--fs-micro); } /* was 0.62rem */
.guide-result small { font-size: var(--fs-micro); } /* was 0.63rem */
.revelation-unknown-note a { font-size: var(--fs-micro); } /* was 0.63rem */
.source-map-ayahs article > a { font-size: var(--fs-micro); } /* was 0.63rem */
.qibla-copy .qibla-permission-copy { font-size: var(--fs-micro); } /* was 0.63rem */
.source-pill { font-size: var(--fs-micro); } /* was 0.64rem */
.role-badge { font-size: var(--fs-micro); } /* was 0.64rem */
.security-submit > span { font-size: var(--fs-micro); } /* was 0.64rem */
.weekly-progress small { font-size: var(--fs-micro); } /* was 0.64rem */
.registry-decision-note strong { font-size: var(--fs-micro); } /* was 0.64rem */
.story-hadith-grid article > a { font-size: var(--fs-micro); } /* was 0.64rem */
.source-map-provider a { font-size: var(--fs-micro); } /* was 0.64rem */
.contact-account-identity span { font-size: var(--fs-micro); } /* was 0.64rem */
.kids-learning-promise li small { font-size: var(--fs-micro); } /* was 0.64rem */
.status-sub { font-size: var(--fs-micro); } /* was 0.64rem */
.mushaf-bar-turn { font-size: var(--fs-micro); } /* was 0.64rem */
.surah-card-meta { font-size: var(--fs-micro); } /* was 0.64rem */
.folio-topic { font-size: var(--fs-micro); } /* was 0.64rem */
.search-article-copy small { font-size: var(--fs-micro); } /* was 0.64rem */
.ayah-source { font-size: var(--fs-micro); } /* was 0.65rem */
.mushaf-type-scale button { font-size: var(--fs-micro); } /* was 0.65rem */
.mushaf-aside-card p { font-size: var(--fs-micro); } /* was 0.65rem */
.mushaf-reader-end p { font-size: var(--fs-micro); } /* was 0.65rem */
.account-details dt { font-size: var(--fs-micro); } /* was 0.65rem */
.library-count { font-size: var(--fs-micro); } /* was 0.65rem */
.public-difference-note strong { font-size: var(--fs-micro); } /* was 0.65rem */
.second-reviewer-note { font-size: var(--fs-micro); } /* was 0.65rem */
.home-system-grid small { font-size: var(--fs-micro); } /* was 0.65rem */
.journey-surah-seal span { font-size: var(--fs-micro); } /* was 0.65rem */
.lane-state { font-size: var(--fs-micro); } /* was 0.65rem */
.journey-ai-card small { font-size: var(--fs-micro); } /* was 0.65rem */
.step-source { font-size: var(--fs-micro); } /* was 0.65rem */
.clarity-points span { font-size: var(--fs-micro); } /* was 0.65rem */
.calmness-line span { font-size: var(--fs-micro); } /* was 0.65rem */
.public-scholar-heading > span { font-size: var(--fs-micro); } /* was 0.65rem */
.choice-row small { font-size: var(--fs-micro); } /* was 0.65rem */
.search-proof p { font-size: var(--fs-micro); } /* was 0.65rem */
.search-surah-result > div p { font-size: var(--fs-micro); } /* was 0.65rem */
.qibla-privacy-note small { font-size: var(--fs-micro); } /* was 0.65rem */
.kids-step-count span { font-size: var(--fs-micro); } /* was 0.65rem */
.surah-facts dt { font-size: var(--fs-micro); } /* was 0.66rem */
.action-guide-intro p { font-size: var(--fs-micro); } /* was 0.66rem */
.ayah-action { font-size: var(--fs-micro); } /* was 0.66rem */
.ayah-feedback, [data-reader-status] { font-size: var(--fs-micro); } /* was 0.66rem */
.page-jump button { font-size: var(--fs-micro); } /* was 0.66rem */
.citation-list a { font-size: var(--fs-micro); } /* was 0.66rem */
.knowledge-citation-review a { font-size: var(--fs-micro); } /* was 0.66rem */
.scholar-review-history small { font-size: var(--fs-micro); } /* was 0.66rem */
.scholar-review-history a { font-size: var(--fs-micro); } /* was 0.66rem */
.revision-warning { font-size: var(--fs-micro); } /* was 0.66rem */
.reviewed-badge { font-size: var(--fs-micro); } /* was 0.66rem */
.source-ledger code { font-size: var(--fs-micro); } /* was 0.66rem */
.location-menu > p { font-size: var(--fs-micro); } /* was 0.66rem */
.source-context-card footer a, .source-hadith-ledger-head a { font-size: var(--fs-micro); } /* was 0.66rem */
.source-hadith-grid article > a { font-size: var(--fs-micro); } /* was 0.66rem */
.privacy-danger summary small { font-size: var(--fs-micro); } /* was 0.66rem */
.search-shortcuts strong { font-size: var(--fs-micro); } /* was 0.66rem */
.recitation-source { font-size: var(--fs-micro); } /* was 0.66rem */
.prayer-count-stat small { font-size: var(--fs-micro); } /* was 0.66rem */
.rakahs-hero-seal small { font-size: var(--fs-micro); } /* was 0.66rem */
.article-card-topic { font-size: var(--fs-micro); } /* was 0.66rem */
.journey-explore-link span { font-size: var(--fs-micro); } /* was 0.67rem */
.ayah-action-legend strong { font-size: var(--fs-micro); } /* was 0.67rem */
.mushaf-paper-foot strong { font-size: var(--fs-micro); } /* was 0.67rem */
.secure-field .field-title { font-size: var(--fs-micro); } /* was 0.67rem */
.knowledge-form-submit p { font-size: var(--fs-micro); } /* was 0.67rem */
.contact-submit-row strong { font-size: var(--fs-micro); } /* was 0.67rem */
.search-path-grid a { font-size: var(--fs-micro); } /* was 0.67rem */
.qibla-status-panel p { font-size: var(--fs-micro); } /* was 0.67rem */
.kids-parent-note p { font-size: var(--fs-micro); } /* was 0.67rem */
.footer-links span { font-size: var(--fs-micro); } /* was 0.68rem */
.catalog-coverage small { font-size: var(--fs-micro); } /* was 0.68rem */
.read-destination { font-size: var(--fs-micro); } /* was 0.68rem */
.sidebar-link small { font-size: var(--fs-micro); } /* was 0.68rem */
.auth-trust { font-size: var(--fs-micro); } /* was 0.68rem */
.library-hadith-portal p { font-size: var(--fs-micro); } /* was 0.68rem */
.collection-rule { font-size: var(--fs-micro); } /* was 0.68rem */
.hadith-collection-card > a { font-size: var(--fs-micro); } /* was 0.68rem */
.public-scholar-review a { font-size: var(--fs-micro); } /* was 0.68rem */
.citation-author { font-size: var(--fs-micro); } /* was 0.68rem */
.hadith-editorial-head p { font-size: var(--fs-micro); } /* was 0.68rem */
.difference-review-note strong { font-size: var(--fs-micro); } /* was 0.68rem */
.resolution-form label { font-size: var(--fs-micro); } /* was 0.68rem */
.audit-list code { font-size: var(--fs-micro); } /* was 0.68rem */
.ledger-status { font-size: var(--fs-micro); } /* was 0.68rem */
.source-type { font-size: var(--fs-micro); } /* was 0.68rem */
.citation-chips span { font-size: var(--fs-micro); } /* was 0.68rem */
.times-source-card a { font-size: var(--fs-micro); } /* was 0.68rem */
.scholar-suspension-note a { font-size: var(--fs-micro); } /* was 0.68rem */
.revelation-unknown-note p { font-size: var(--fs-micro); } /* was 0.68rem */
.privacy-card a { font-size: var(--fs-micro); } /* was 0.68rem */
.provider-list span { font-size: var(--fs-micro); } /* was 0.68rem */
.private-contact-form > label, .contact-field-pair label { font-size: var(--fs-micro); } /* was 0.68rem */
.search-ayah-identity > span { font-size: var(--fs-micro); } /* was 0.68rem */
.qibla-compass-actions p { font-size: var(--fs-micro); } /* was 0.68rem */
.qibla-manual summary span { font-size: var(--fs-micro); } /* was 0.68rem */
.kids-parent-note a, .kids-guide-source a { font-size: var(--fs-micro); } /* was 0.68rem */
.tafsir-attribution { font-size: var(--fs-micro); } /* was 0.68rem */
.journey-sibling-dir { font-size: var(--fs-micro); } /* was 0.68rem */
.article-sibling span { font-size: var(--fs-micro); } /* was 0.68rem */
.admin-article-status { font-size: var(--fs-micro); } /* was 0.68rem */
.articles-lead-flag { font-size: var(--fs-micro); } /* was 0.68rem */
.lesson-source-band small { font-size: var(--fs-micro); } /* was 0.69rem */
.times-search-card label { font-size: var(--fs-micro); } /* was 0.69rem */
.legal-nav a { font-size: var(--fs-micro); } /* was 0.69rem */
.section-kicker { font-size: var(--fs-micro); } /* was 0.70rem */
.trust-line span { font-size: var(--fs-micro); } /* was 0.70rem */
.verse-reference { font-size: var(--fs-micro); } /* was 0.70rem */
.mushaf-focus-exit { font-size: var(--fs-micro); } /* was 0.70rem */
.library-standard a { font-size: var(--fs-micro); } /* was 0.70rem */
.knowledge-breadcrumb { font-size: var(--fs-micro); } /* was 0.70rem */
.knowledge-scope a { font-size: var(--fs-micro); } /* was 0.70rem */
.citation-panel-heading p { font-size: var(--fs-micro); } /* was 0.70rem */
.citation-list dd { font-size: var(--fs-micro); } /* was 0.70rem */
.knowledge-citation-review p, .knowledge-citation-review dl { font-size: var(--fs-micro); } /* was 0.70rem */
.supporting-citation-form > summary { font-size: var(--fs-micro); } /* was 0.70rem */
.scholar-consent { font-size: var(--fs-micro); } /* was 0.70rem */
.pilot-board-heading p { font-size: var(--fs-micro); } /* was 0.70rem */
.scholar-profile-card dd { font-size: var(--fs-micro); } /* was 0.70rem */
.registry-decision-note p { font-size: var(--fs-micro); } /* was 0.70rem */
.discussion-meta { font-size: var(--fs-micro); } /* was 0.70rem */
.review-meta { font-size: var(--fs-micro); } /* was 0.70rem */
.review-verse { font-size: var(--fs-micro); } /* was 0.70rem */
.concern-details > strong { font-size: var(--fs-micro); } /* was 0.70rem */
.audit-list > div { font-size: var(--fs-micro); } /* was 0.70rem */
.location-options button strong { font-size: var(--fs-micro); } /* was 0.70rem */
.source-context-card footer strong { font-size: var(--fs-micro); } /* was 0.70rem */
.revelation-facts p { font-size: var(--fs-micro); } /* was 0.70rem */
.source-hadith-grid p { font-size: var(--fs-micro); } /* was 0.70rem */
.compact-choice strong { font-size: var(--fs-micro); } /* was 0.70rem */
.contact-channel > strong { font-size: var(--fs-micro); } /* was 0.70rem */
.religious-report-card p { font-size: var(--fs-micro); } /* was 0.70rem */
.search-group-heading > p { font-size: var(--fs-micro); } /* was 0.70rem */
.qibla-method-link { font-size: var(--fs-micro); } /* was 0.70rem */
.audience-switch-link strong { font-size: var(--fs-micro); } /* was 0.70rem */
.say-when { font-size: var(--fs-micro); } /* was 0.70rem */
.account-tab-count { font-size: var(--fs-micro); } /* was 0.70rem */
.articles-chip i { font-size: var(--fs-micro); } /* was 0.70rem */
.twofa-state { font-size: var(--fs-micro); } /* was 0.70rem */
.footer-bottom { font-size: var(--fs-micro); } /* was 0.72rem */
.journey-read-link .surah-number { font-size: var(--fs-micro); } /* was 0.72rem */
.journey-read-link .surah-name small, .journey-read-link .surah-meta { font-size: var(--fs-micro); } /* was 0.72rem */
.ayah-key strong { font-size: var(--fs-micro); } /* was 0.72rem */
.mushaf-paper-head strong { font-size: var(--fs-micro); } /* was 0.72rem */
.search-result > div span { font-size: var(--fs-micro); } /* was 0.72rem */
.guide-examples { font-size: var(--fs-micro); } /* was 0.72rem */
.guide-result.is-knowledge p small { font-size: var(--fs-micro); } /* was 0.72rem */
.reviewer-link p { font-size: var(--fs-micro); } /* was 0.72rem */
.library-standard p { font-size: var(--fs-micro); } /* was 0.72rem */
.hadith-method-link { font-size: var(--fs-micro); } /* was 0.72rem */
.collection-note { font-size: var(--fs-micro); } /* was 0.72rem */
.hadith-process p { font-size: var(--fs-micro); } /* was 0.72rem */
.scholar-review-form > summary { font-size: var(--fs-micro); } /* was 0.72rem */
.scholar-organization { font-size: var(--fs-micro); } /* was 0.72rem */
.report-assurance li p { font-size: var(--fs-micro); } /* was 0.72rem */
.urgent-note p { font-size: var(--fs-micro); } /* was 0.72rem */
.source-ledger dt { font-size: var(--fs-micro); } /* was 0.72rem */
.journey-record-foot { font-size: var(--fs-micro); } /* was 0.72rem */
.source-pair { font-size: var(--fs-micro); } /* was 0.72rem */
.method-disclosure p { font-size: var(--fs-micro); } /* was 0.72rem */
.method-disclosure a { font-size: var(--fs-micro); } /* was 0.72rem */
.scholar-public-process p { font-size: var(--fs-micro); } /* was 0.72rem */
.scholar-suspension-note p { font-size: var(--fs-micro); } /* was 0.72rem */
.source-precision-strip { font-size: var(--fs-micro); } /* was 0.72rem */
.story-hadith-grid p { font-size: var(--fs-micro); } /* was 0.72rem */
.consent-status-card p { font-size: var(--fs-micro); } /* was 0.72rem */
.privacy-action p { font-size: var(--fs-micro); } /* was 0.72rem */
.legal-data-grid p { font-size: var(--fs-micro); } /* was 0.72rem */
.contact-process-card li > strong { font-size: var(--fs-micro); } /* was 0.72rem */
.search-empty p, .search-boundary-error p { font-size: var(--fs-micro); } /* was 0.72rem */
.search-path-grid p { font-size: var(--fs-micro); } /* was 0.72rem */
.qibla-manual summary strong { font-size: var(--fs-micro); } /* was 0.72rem */
.qibla-calibration p { font-size: var(--fs-micro); } /* was 0.72rem */
.times-qibla-card p { font-size: var(--fs-micro); } /* was 0.72rem */
.admin-table td small { font-size: var(--fs-micro); } /* was 0.72rem */
.admin-field small { font-size: var(--fs-micro); } /* was 0.72rem */
.admin-surah-name small { font-size: var(--fs-micro); } /* was 0.72rem */
.hf-small, .hf-block { font-size: var(--fs-micro); } /* was 0.72rem */
.prayer-unit em { font-size: var(--fs-micro); } /* was 0.72rem */
.mushaf-save-hint { font-size: var(--fs-micro); } /* was 0.72rem */
.mushaf-resume-chip { font-size: var(--fs-micro); } /* was 0.72rem */
.surah-card-read { font-size: var(--fs-micro); } /* was 0.72rem */
.surah-card-story { font-size: var(--fs-micro); } /* was 0.72rem */
.tafsir-bar small { font-size: var(--fs-micro); } /* was 0.72rem */
.ayah-tafsir-toggle { font-size: var(--fs-micro); } /* was 0.72rem */
.mushaf-recite-status { font-size: var(--fs-micro); } /* was 0.72rem */
.twofa-setup small { font-size: var(--fs-micro); } /* was 0.72rem */
.public-scholar-review p { font-size: var(--fs-micro); } /* was 0.73rem */
.surah-row .surah-number { font-size: var(--fs-micro); } /* was 0.74rem */
.knowledge-review-intro p { font-size: var(--fs-micro); } /* was 0.74rem */
.scholar-review-history p { font-size: var(--fs-micro); } /* was 0.74rem */
.journey-route p { font-size: var(--fs-micro); } /* was 0.74rem */
.city-menu .location-options button strong { font-size: var(--fs-micro); } /* was 0.74rem */
.owner-only-boundary p { font-size: var(--fs-micro); } /* was 0.74rem */
.source-map-empty p { font-size: var(--fs-micro); } /* was 0.74rem */
.contact-channel p { font-size: var(--fs-micro); } /* was 0.74rem */
.admin-stat a { font-size: var(--fs-micro); } /* was 0.74rem */
.linklike { font-size: var(--fs-micro); } /* was 0.74rem */
.recitation-link { font-size: var(--fs-micro); } /* was 0.74rem */
.admin-coverage-summary small { font-size: var(--fs-micro); } /* was 0.74rem */
.opening-tafsir-expand { font-size: var(--fs-micro); } /* was 0.74rem */
.collapsible-btn { font-size: var(--fs-micro); } /* was 0.74rem */
.mushaf-recite-continuous { font-size: var(--fs-micro); } /* was 0.74rem */
.mushaf-recite-from-place { font-size: var(--fs-micro); } /* was 0.74rem */
.pw-verdict { font-size: var(--fs-micro); } /* was 0.74rem */
.pw-rules li { font-size: var(--fs-micro); } /* was 0.74rem */
.pw-match { font-size: var(--fs-micro); } /* was 0.74rem */
.clock-switch button { font-size: var(--fs-micro); } /* was 0.74rem */
.mushaf-surah-jump noscript button { font-size: var(--fs-micro); } /* was 0.74rem */
.inline-confirm label { font-size: var(--fs-micro); } /* was 0.74rem */

/* Measured on /community at 1280px: these resolve below 12px through em
   inheritance rather than a rem declaration, so the sweep above misses
   them. Listed explicitly. */
.source-type, .source-head span, dl dt, dd code, code, kbd,
.footer-bottom span, .catalog-coverage dt { font-size: var(--fs-micro); }
