/* Appworthy - the authority pages' stylesheet (storefront v7, spec D8 and 5.5).
   /about/ /methodology/ /protocol/ /audits/ /developers/ /terms/ /privacy/ keep their production
   copy and move into v7 chrome and type. This sheet restyles their content classes on v7's tokens
   (site.css :root): it defines no token of its own, and it is loaded after site.css.

   EVERY SELECTOR IS SCOPED under main.authority. site.css gives .panel, .card, .steps, .tag, .btn,
   .section, .lede and .crumbs their own v7 meanings (Discover's explainer, the app page); an
   authority page uses the same words for different things, so a bare rule here would restyle the
   storefront. The shells' <main> carries class="authority"; a test pins both halves.

   Written mobile first, with site.css's breakpoints (700px, 1000px). Light only (D9).
   Colours that are not v7 tokens are literals, and all but two are v7's own, found in site.css: the
   amber notice (#fff7e6 / #6b4a00 / #e0b25a / #8a5a00), the blues #0857bb and #8fc1ff, and the navy of
   the brand mark and the chips (--navy). The two that are this sheet's own, and appear nowhere in
   site.css, are #dbe7f5 (the pale blue of the formula code on its navy panel, .methodology-formula)
   and #4a3300 (the darker amber of the bold run in the legal banner, .legal-banner strong).

   Classes ported from the pre-v7 stylesheet, by page:
     all     section, section-head, section-head__titles, sub, crumbs, chev, hero__eyebrow, lede, btn,
             btn--accent, btn--ghost, btn--lg, textlink, row, stack, muted, small, n, panel, panel__title,
             card, flag, flag--good, flag--bad, flaglist, strip, table-scroll, doc, steps, step, step__n
     about   authority-hero (+copy, actions, model), authority-model__head, is-crowned, authority-values,
             authority-value-card, feature, feature-grid, feature__icon, authority-method, authority-process,
             authority-score, authority-score-panel (+intro, crown), authority-pillar-list, authority-score-note,
             authority-state-grid, authority-state (+neutral, watch, auto, cert), authority-integrity-note,
             authority-developer, authority-developer__panel, authority-final-strip, authority-kicker,
             authority-section-label
     method  methodology-hero, methodology-summary, methodology-scope (+grid), is-in, methodology-formula,
             methodology-pillars, methodology-version-note, evidence-ladder (+measured), methodology-input-gate,
             is-result, methodology-pipeline, methodology-guardrails (+grid), method-note, method-cta, mt-4,
             review-bars, review-bars__basis
     legal   legal-banner, placeholder
     tests   protocol, protocol-item, protocol-cancel, protocol-reasons, hr-skipped, hr-mark__session,
             audit-record, audit-totals, audit-tests, audit-voided
     devs    dp, dp-hero (+single, copy, eyebrow, title, lede, actions), dp-section-head, dp-h2, dp-services,
             dp-deliverables (+grid), dp-deliverable (+num, icon), dp-legitimacy, dp-named, dp-appcard
     new     page-title (+narrow), authority-kicker--warn, authority-note, panel--roomy, panel--record,
             panel__heading, panel__lead  (these replace the inline styles the shells used to carry)
   Not ported: authority-page, methodology-page, methodology-game-panel (no markup uses them), the old
   header, nav, footer, theme toggle and mobile-nav rules (ui.js builds v7 chrome), and every rule for a
   dp-* class the portal no longer prints. */

/* ---------- frame, type, the shared pieces ---------- */
main.authority{display:block;padding-bottom:8px}
main.authority .section{margin-top:44px}
main.authority .wrap>.section:first-child,main.authority .wrap>.authority-hero:first-child{margin-top:20px}
main.authority .section-head{display:block;margin:0 0 20px;padding:0;border:0}
main.authority .section-head__titles{min-width:0}
main.authority .section-head h2{font-size:clamp(24px,3.4vw,34px);font-weight:750;letter-spacing:-.025em;line-height:1.12;color:var(--ink)}
main.authority .section-head .sub{max-width:68ch;margin-top:8px;font-size:15px;line-height:1.55;color:var(--muted)}
main.authority .authority-section-label{display:block;margin-bottom:8px;font-size:12px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--blue)}
main.authority .crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding-top:0;margin-bottom:18px;font-size:13px;color:var(--faint)}
main.authority .crumbs a{color:var(--muted)}
main.authority .crumbs a:hover{color:var(--blue)}
main.authority .hero__eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;padding:5px 12px;border-radius:999px;background:var(--soft-2);color:var(--muted);font-size:12.5px;font-weight:650;line-height:1.3}
main.authority .authority-kicker,main.authority .dp-hero__eyebrow,main.authority .authority-developer__panel .hero__eyebrow{background:var(--blue-bg);color:var(--blue)}
main.authority .authority-kicker--warn{background:#fff7e6;color:#8a5a00}
main.authority .page-title{max-width:22ch;font-size:clamp(30px,4.6vw,46px);font-weight:750;letter-spacing:-.03em;line-height:1.06;text-wrap:balance}
main.authority .page-title--narrow{max-width:16ch}
main.authority .lede{margin-top:14px;max-width:62ch;font-size:clamp(16px,1.8vw,19px);line-height:1.55;color:var(--muted)}
main.authority .muted{color:var(--muted)}
main.authority .small{font-size:13px}
main.authority p.small,main.authority .panel p.small{font-size:13.5px;line-height:1.55}
main.authority .authority-note{margin:16px 0}
main.authority p a:not(.btn):not(.textlink):not(.dev-link),main.authority li a:not(.btn):not(.textlink),main.authority td a:not(.btn):not(.textlink),main.authority .sub a:not(.btn):not(.textlink){color:var(--blue);text-decoration:underline;text-underline-offset:2px}
main.authority .textlink{display:inline-flex;align-items:center;gap:4px;color:var(--blue);font-size:14px;font-weight:600}
main.authority .textlink:hover{text-decoration:underline}
main.authority p .textlink,main.authority li .textlink,main.authority td .textlink{display:inline;font-size:inherit}
main.authority .chev{width:15px;height:15px;flex:none;transition:transform .15s ease}
main.authority .textlink:hover .chev{transform:translateX(3px)}
main.authority .row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
main.authority .stack{display:flex;flex-direction:column;gap:10px}
main.authority strong,main.authority b{color:var(--ink);font-weight:650}
main.authority .n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}

/* buttons: v7's pill. btn--accent is the primary, btn--ghost the outline, btn--lg the roomy one */
main.authority .btn{min-height:44px;padding:10px 20px;border:1px solid transparent;font-size:15px;font-weight:650;white-space:normal;text-align:center}
main.authority .btn--accent{background:var(--blue);color:#fff}
main.authority .btn--accent:hover{background:#0857bb;text-decoration:none}
main.authority .btn--ghost{background:transparent;color:var(--ink);border-color:var(--line-strong)}
main.authority .btn--ghost:hover{background:var(--soft);text-decoration:none}
main.authority .btn--lg{min-height:48px;padding:12px 26px;font-size:16px}

/* panels and cards: authority content sits on soft panels, not on v7's grid-gap panels */
main.authority .panel{display:block;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm)}
main.authority .panel--roomy{padding:24px}
main.authority .panel + .panel{margin-top:16px}
main.authority .panel p{font-size:14.5px;line-height:1.6}
main.authority .panel p + p{margin-top:12px}
main.authority .panel__title{display:flex;align-items:center;gap:6px;margin-bottom:14px}
main.authority .panel__heading{margin-bottom:8px;font-size:18px;font-weight:700}
main.authority .panel__lead{margin-bottom:14px}
main.authority .panel--record{margin-top:22px;background:var(--soft);box-shadow:none}
main.authority .panel--record p + p{margin-top:10px}
main.authority .card{display:block;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm)}
main.authority .feature-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
main.authority .feature__icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:16px;border-radius:12px;background:var(--blue-bg);color:var(--blue)}
main.authority .feature__icon svg{width:22px;height:22px}
main.authority .feature h3{margin-bottom:6px;font-size:18px}
main.authority .feature p{font-size:14.5px;line-height:1.6;color:var(--muted)}

/* a list of statements: a check or a cross, then the sentence */
main.authority .flaglist{display:flex;flex-direction:column;gap:10px}
main.authority .flag{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;line-height:1.5;color:var(--muted)}
main.authority .flag svg{width:17px;height:17px;flex:none;margin-top:2px}
main.authority .flag--good svg{color:var(--green)}
main.authority .flag--bad svg{color:var(--red)}
main.authority .flag strong{color:var(--ink)}

/* the closing band: navy, like the brand mark */
main.authority .strip{padding:36px 22px;border-radius:24px;background:var(--navy);color:#fff;text-align:center}
main.authority .strip h2{font-size:clamp(22px,3vw,30px);font-weight:750;letter-spacing:-.02em;color:#fff}
main.authority .strip p{max-width:52ch;margin:12px auto 22px;color:rgba(255,255,255,.8)}
main.authority .authority-final-strip{padding-block:clamp(40px,6vw,60px)}
main.authority .method-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 14px;margin-top:6px}
main.authority .strip .btn--accent{background:#fff;color:var(--navy)}
main.authority .strip .btn--accent:hover{background:var(--blue-bg)}
main.authority .strip .btn--ghost{color:#fff;border-color:rgba(255,255,255,.4)}
main.authority .strip .btn--ghost:hover{background:rgba(255,255,255,.12)}

/* tables: a wide one scrolls inside its own box, never the page */
main.authority .table-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
main.authority table.doc{width:100%;border-collapse:collapse;font-size:14px}
main.authority table.doc th,main.authority table.doc td{padding:9px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
main.authority table.doc th{font-size:12px;font-weight:700;letter-spacing:.02em;color:var(--faint)}
main.authority table.doc td{color:var(--ink)}
main.authority table.doc .n{text-align:right}
main.authority table.doc tr:last-child td{border-bottom:0}
main.authority table.doc code{white-space:nowrap}
main.authority .hr-skipped{margin:10px 0 0;padding-left:20px;list-style:disc;font-size:14.5px;line-height:1.55;color:var(--muted)}
main.authority .hr-skipped li + li{margin-top:5px}
main.authority .hr-skipped li::marker{color:var(--faint)}
main.authority .hr-mark__session{font-size:12px;word-break:break-all}

/* ---------- /about/ and /methodology/: the hero ---------- */
main.authority .authority-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:center;padding:12px 0 8px}
main.authority .authority-hero__copy{min-width:0}
main.authority .authority-hero__copy h1{max-width:14ch;margin-top:4px;font-size:clamp(34px,6vw,56px);font-weight:760;letter-spacing:-.035em;line-height:1.02;text-wrap:balance}
main.authority .authority-hero__copy>p{max-width:56ch;margin-top:18px;font-size:clamp(16px,1.9vw,19px);line-height:1.6;color:var(--muted)}
main.authority .authority-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:24px}
main.authority .authority-hero__model{padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--soft)}
main.authority .authority-model__head{display:flex;justify-content:space-between;gap:12px;padding-bottom:14px;font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--faint)}
main.authority .authority-model__head b{color:var(--blue)}
main.authority .authority-hero__model article{display:grid;grid-template-columns:30px minmax(0,1fr);gap:4px 12px;align-items:start;padding:16px 0;border-top:1px solid var(--line)}
main.authority .authority-hero__model article i{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--soft-2);color:var(--muted);font-size:11px;font-style:normal;font-weight:700}
main.authority .authority-hero__model article div{display:flex;flex-direction:column;gap:4px;min-width:0}
main.authority .authority-hero__model article div b{font-size:15px}
main.authority .authority-hero__model article div span{font-size:13.5px;line-height:1.5;color:var(--muted)}
main.authority .authority-hero__model article em{grid-column:2;justify-self:start;padding:4px 9px;border-radius:999px;background:#fff;color:var(--muted);font-size:11px;font-style:normal;font-weight:700;letter-spacing:.04em}
main.authority .authority-hero__model article.is-crowned{margin:0 -12px -1px;padding:16px 12px;border-top-color:transparent;border-radius:14px;background:var(--green-bg)}
main.authority .authority-hero__model article.is-crowned i{background:var(--green);color:#fff}
main.authority .authority-hero__model article.is-crowned em{color:var(--green)}
main.authority .authority-hero__model>p{margin-top:14px;font-size:13px;line-height:1.5;color:var(--faint);text-align:center}
main.authority .authority-values .feature-grid{gap:14px}
main.authority .authority-value-card h3{margin-top:0}

/* how an app is analysed: four steps in one joined card */
main.authority .authority-process{display:grid;grid-template-columns:minmax(0,1fr);gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--line)}
main.authority .authority-process article{padding:22px;background:#fff}
main.authority .authority-process article>span{font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--blue)}
main.authority .authority-process h3{margin-top:14px;font-size:17px;line-height:1.25}
main.authority .authority-process p{margin-top:8px;font-size:14px;line-height:1.6;color:var(--muted)}

/* what we publish: the navy panel */
main.authority .authority-score-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;padding:28px 22px;border-radius:24px;background:var(--navy);color:#fff}
main.authority .authority-score-panel__intro>span{font-size:12px;font-weight:700;letter-spacing:.1em;color:rgba(255,255,255,.62)}
main.authority .authority-score-panel__intro>strong{display:block;margin-top:10px;font-size:clamp(44px,8vw,72px);font-weight:760;line-height:.95;letter-spacing:-.04em;color:#fff}
main.authority .authority-score-panel__intro>p{max-width:40ch;margin-top:18px;font-size:14.5px;line-height:1.65;color:rgba(255,255,255,.78)}
main.authority .authority-score-panel__crown{display:flex;flex-direction:column;gap:3px;margin-top:22px;padding:14px 16px;border:1px solid rgba(255,255,255,.22);border-radius:14px;background:rgba(255,255,255,.08)}
main.authority .authority-score-panel__crown b{font-size:20px;color:#fff}
main.authority .authority-score-panel__crown span{font-size:13px;color:rgba(255,255,255,.78)}
main.authority .authority-pillar-list{display:flex;flex-direction:column}
main.authority .authority-pillar-list article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.14)}
main.authority .authority-pillar-list article:last-child{border-bottom:0}
main.authority .authority-pillar-list article>span{font-size:12px;font-weight:700;color:#8fc1ff}
main.authority .authority-pillar-list article div{display:flex;flex-direction:column;gap:3px;min-width:0}
main.authority .authority-pillar-list article b{font-size:15px;color:#fff}
main.authority .authority-pillar-list article small{font-size:13px;color:rgba(255,255,255,.7)}
main.authority .authority-score-note{max-width:76ch;margin:14px auto 0;line-height:1.55;text-align:center}

/* claim strength: four states */
main.authority .authority-state-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
main.authority .authority-state-grid article{padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm)}
main.authority .authority-state{display:inline-flex;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.06em}
main.authority .authority-state--neutral{background:var(--soft-2);color:var(--muted)}
main.authority .authority-state--watch{background:#fff7e6;color:#8a5a00}
main.authority .authority-state--auto{background:var(--blue-bg);color:var(--blue)}
main.authority .authority-state--cert{background:var(--green-bg);color:var(--green)}
main.authority .authority-state-grid h3{margin-top:18px;font-size:16px}
main.authority .authority-state-grid p{margin-top:8px;font-size:14px;line-height:1.6;color:var(--muted)}
main.authority .authority-integrity-note{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;margin-top:14px;padding:18px 20px;border-left:3px solid var(--blue);border-radius:0 var(--radius) var(--radius) 0;background:var(--blue-bg)}
main.authority .authority-integrity-note b{font-size:15px;color:var(--ink)}
main.authority .authority-integrity-note span{font-size:14px;line-height:1.55;color:var(--muted)}

/* for developers, as /about/ puts it */
main.authority .authority-developer__panel{padding:clamp(22px,4vw,40px);border-color:var(--line-strong);background:var(--soft);box-shadow:none}
main.authority .authority-developer__panel h2{margin-top:2px;font-size:clamp(26px,3.6vw,36px);font-weight:750;letter-spacing:-.03em;line-height:1.1}
main.authority .authority-developer__panel h2 + p{margin-top:12px}
main.authority .authority-developer__panel p{max-width:70ch}
main.authority .authority-developer__panel .stack{margin-top:16px}
main.authority .authority-developer__panel .stack + p{margin-top:16px}
main.authority .authority-developer__panel .row{margin-top:18px}

/* ---------- /methodology/ ---------- */
main.authority .methodology-summary{padding:22px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow)}
main.authority .methodology-summary>span{font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--blue)}
main.authority .methodology-summary ol{display:flex;flex-direction:column;margin:12px 0 0;padding:0;counter-reset:method-rule;list-style:none}
main.authority .methodology-summary li{position:relative;display:flex;flex-direction:column;gap:3px;padding:14px 0 14px 40px;border-top:1px solid var(--line);counter-increment:method-rule}
main.authority .methodology-summary li::before{content:"0" counter(method-rule);position:absolute;left:0;top:16px;font-size:12px;font-weight:700;color:var(--faint)}
main.authority .methodology-summary li b{font-size:15px}
main.authority .methodology-summary li small{font-size:13.5px;line-height:1.5;color:var(--muted)}
main.authority .methodology-scope__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
main.authority .methodology-scope__grid article{padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}
main.authority .methodology-scope__grid article.is-in{border-color:var(--navy);background:var(--navy);color:#fff}
main.authority .methodology-scope__grid article>span{font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--blue)}
main.authority .methodology-scope__grid article.is-in>span{color:#8fc1ff}
main.authority .methodology-scope__grid h3{margin-top:18px;font-size:20px}
main.authority .methodology-scope__grid article.is-in h3{color:#fff}
main.authority .methodology-scope__grid p{margin-top:10px;font-size:14px;line-height:1.6;color:var(--muted)}
main.authority .methodology-scope__grid article.is-in p{color:rgba(255,255,255,.8)}
main.authority .methodology-formula{display:grid;grid-template-columns:minmax(0,1fr);gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--line)}
main.authority .methodology-formula>div{padding:22px;background:#fff}
main.authority .methodology-formula>div>span{font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--blue)}
main.authority .methodology-formula>div b{display:block;margin-top:14px;font-size:clamp(28px,4vw,38px);font-weight:750;letter-spacing:-.03em}
main.authority .methodology-formula>div small{display:block;margin-top:10px;font-size:13.5px;line-height:1.55;color:var(--muted)}
main.authority .methodology-formula code{display:grid;place-items:center;padding:26px 22px;border-radius:0;background:var(--navy);color:#dbe7f5;font-size:13.5px;line-height:1.55;text-align:center;white-space:normal;word-break:normal}
main.authority .methodology-pillars{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:14px}
main.authority .methodology-pillars article{padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff}
main.authority .methodology-pillars article>span{font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--blue)}
main.authority .methodology-pillars h3{margin-top:12px;font-size:15px;line-height:1.25}
main.authority .methodology-pillars p{margin-top:6px;font-size:13.5px;line-height:1.55;color:var(--muted)}
main.authority .methodology-version-note{margin-top:14px;text-align:center}
main.authority .evidence-ladder{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm)}
main.authority .evidence-ladder article{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line)}
main.authority .evidence-ladder article:last-child{border-bottom:0}
main.authority .evidence-ladder article>div{display:flex;flex-direction:column;gap:4px}
main.authority .evidence-ladder article>div>span{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--faint)}
main.authority .evidence-ladder article b{font-size:16px}
main.authority .evidence-ladder article p{font-size:14px;line-height:1.55;color:var(--muted)}
main.authority .evidence-ladder article em{justify-self:start;padding:5px 10px;border-radius:999px;background:var(--soft-2);color:var(--muted);font-size:11px;font-style:normal;font-weight:700;letter-spacing:.04em}
main.authority .evidence-ladder article.evidence-ladder__measured{background:var(--green-bg)}
main.authority .evidence-ladder article.evidence-ladder__measured>div>span,main.authority .evidence-ladder article.evidence-ladder__measured em{color:var(--green)}
main.authority .evidence-ladder article.evidence-ladder__measured em{background:#fff}
main.authority .methodology-input-gate{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:stretch;margin-top:16px}
main.authority .methodology-input-gate>div{padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff}
main.authority .methodology-input-gate>div>span{font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--blue)}
main.authority .methodology-input-gate>div>b{display:block;margin-top:12px;font-size:16px}
main.authority .methodology-input-gate>div>p{margin-top:6px;font-size:13.5px;line-height:1.55;color:var(--muted)}
main.authority .methodology-input-gate>i{align-self:center;justify-self:center;font-size:22px;font-style:normal;color:var(--faint)}
main.authority .methodology-input-gate>div.is-result{border-color:var(--green-line);background:var(--green-bg)}
main.authority .methodology-input-gate>div.is-result>span{color:var(--green)}
main.authority .methodology-pipeline{padding:clamp(22px,4vw,32px)}
main.authority .steps{display:flex;flex-direction:column;gap:22px;counter-reset:step}
main.authority .steps>.step{display:grid;grid-template-columns:40px minmax(0,1fr);gap:16px;align-items:start;padding:0;border:0;border-radius:0;background:none}
main.authority .step__n{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--blue);color:#fff;font-size:16px;font-weight:700;counter-increment:step}
main.authority .step__n::before{content:counter(step)}
main.authority .step h3{margin-bottom:4px;font-size:17px}
main.authority .step p{font-size:14.5px;line-height:1.6;color:var(--muted)}
main.authority .method-note{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1px solid var(--blue-bg);border-radius:14px;background:var(--blue-bg);color:var(--muted);font-size:13.5px;line-height:1.55}
main.authority .method-note svg{width:18px;height:18px;flex:none;margin-top:1px;color:var(--blue)}
main.authority .method-note strong{color:var(--ink)}
main.authority .mt-4{margin-top:32px}
main.authority .methodology-guardrails__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
main.authority .methodology-guardrails__grid article{padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm)}
main.authority .methodology-guardrails__grid article>span{font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--blue)}
main.authority .methodology-guardrails__grid h3{margin-top:14px;font-size:17px}
main.authority .methodology-guardrails__grid p{margin-top:8px;font-size:14px;line-height:1.6;color:var(--muted)}
main.authority .review-bars{min-width:640px}
main.authority .review-bars__basis{margin-top:12px}

/* ---------- /terms/ and /privacy/ ---------- */
main.authority .legal-banner{display:flex;gap:12px;align-items:flex-start;margin-top:18px;padding:15px 17px;border:1px solid #e0b25a;border-radius:14px;background:#fff7e6;color:#6b4a00;font-size:14px;line-height:1.5}
main.authority .legal-banner svg{width:19px;height:19px;flex:none;margin-top:2px;color:#8a5a00}
main.authority .legal-banner strong{color:#4a3300}
main.authority .placeholder{padding:1px 6px;border-radius:5px;background:#fff7e6;color:var(--ink);font-weight:600}

/* ---------- /protocol/ and /audits/ (printed by scripts/protocol-page.js and scripts/audit-record.js) ---------- */
main.authority .protocol,main.authority .audit-record{min-width:0}
main.authority .protocol-item{margin-bottom:14px}
main.authority .protocol-item h3{font-size:17px}
main.authority .protocol-item h3 .muted{font-weight:600}
main.authority .protocol-item p{margin-top:8px;font-size:14.5px}
/* two-column tables wrap their text (the label column leads, the other takes the rest); the wide ones (nine
   columns, six) keep a floor and scroll inside .table-scroll */
main.authority .protocol-reasons td:first-child{width:34%;font-weight:600}
main.authority .protocol-cancel td:first-child{width:58%}
main.authority .audit-totals .n{width:6rem}
main.authority .audit-tests,main.authority .audit-voided{min-width:760px}

/* ---------- /developers/ (core.js dpChooseMarkup) ---------- */
main.authority .dp{padding-top:20px}
main.authority .dp-h2{margin-bottom:14px;font-size:22px;font-weight:750;letter-spacing:-.02em}
main.authority .dp-hero{display:block;padding:16px 0 8px}
main.authority .dp-hero--single{max-width:820px}
main.authority .dp-hero__copy{min-width:0}
main.authority .dp-hero__eyebrow{margin-bottom:6px}
main.authority .dp-hero__title{max-width:16ch;margin-top:10px;font-size:clamp(34px,6vw,56px);font-weight:760;letter-spacing:-.035em;line-height:1.02;text-wrap:balance}
main.authority .dp-hero__lede{max-width:58ch;margin-top:18px;font-size:clamp(16px,1.9vw,19px);line-height:1.6;color:var(--muted)}
main.authority .dp-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
main.authority .dp-services{padding-top:48px;scroll-margin-top:80px}
main.authority .dp-section-head{max-width:650px}
main.authority .dp-section-head>span{display:block;margin-bottom:8px;font-size:12px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--blue)}
main.authority .dp-section-head .dp-h2{margin-bottom:10px;font-size:clamp(24px,3.4vw,34px);line-height:1.12}
main.authority .dp-section-head p{font-size:15px;line-height:1.55;color:var(--muted)}
main.authority .dp-services .dp-section-head + .panel{margin-top:18px}
main.authority .dp-deliverables{padding-top:56px}
main.authority .dp-deliverables__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-top:22px}
main.authority .dp-deliverable{position:relative;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm)}
main.authority .dp-deliverable__num{position:absolute;top:20px;right:22px;font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--faint)}
main.authority .dp-deliverable__icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--blue-bg);color:var(--blue)}
main.authority .dp-deliverable__icon svg{width:20px;height:20px}
main.authority .dp-deliverable h3{margin-top:18px;font-size:18px}
main.authority .dp-deliverable p{max-width:44ch;margin-top:8px;font-size:14.5px;line-height:1.6;color:var(--muted)}
main.authority .dp-legitimacy{margin:16px 0 0;padding:14px 16px;border-left:3px solid var(--blue);border-radius:0 14px 14px 0;background:var(--soft)}
main.authority .dp-legitimacy p{margin:0;color:var(--muted)}
main.authority .dp-legitimacy p + p{margin-top:8px;color:var(--ink)}
main.authority .dp-named{margin-top:22px}
main.authority .dp-appcard.results.grid{grid-template-columns:minmax(0,1fr);max-width:520px;margin-top:0}

/* ---------- wider screens ---------- */
@media (min-width:700px){
  main.authority .section{margin-top:56px}
  main.authority .feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  main.authority .authority-process{grid-template-columns:repeat(2,minmax(0,1fr))}
  main.authority .authority-state-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  main.authority .authority-integrity-note{grid-template-columns:minmax(200px,.55fr) minmax(0,1fr);gap:24px}
  main.authority .methodology-scope__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  main.authority .methodology-pillars{grid-template-columns:repeat(3,minmax(0,1fr))}
  main.authority .methodology-guardrails__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  main.authority .evidence-ladder article{grid-template-columns:minmax(150px,190px) minmax(0,1fr) auto;gap:24px}
  main.authority .evidence-ladder article em{justify-self:end}
  main.authority .authority-hero__model article{grid-template-columns:30px minmax(0,1fr) auto}
  main.authority .authority-hero__model article em{grid-column:auto;align-self:center;justify-self:end}
  main.authority .authority-pillar-list article{grid-template-columns:34px minmax(0,1fr)}
  main.authority .dp-deliverables__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  main.authority .strip{padding:44px 40px}
}
@media (min-width:1000px){
  main.authority .authority-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:56px;padding:28px 0 12px}
  main.authority .authority-process{grid-template-columns:repeat(4,minmax(0,1fr))}
  main.authority .authority-state-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  main.authority .authority-score-panel{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:56px;padding:44px}
  main.authority .methodology-formula{grid-template-columns:minmax(0,.8fr) minmax(0,1fr) minmax(0,.8fr)}
  main.authority .methodology-pillars{grid-template-columns:repeat(5,minmax(0,1fr))}
  main.authority .methodology-input-gate{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr)}
}
@media (max-width:699px){
  main.authority .authority-hero__actions .btn,main.authority .dp-hero__actions .btn{width:100%}
  main.authority .authority-hero__model article.is-crowned{margin-inline:-10px;padding-inline:10px}
  /* phone pass (owner decision 2026-10-15): a link that stands on its own line is a 44px tap target; a link inside a
     sentence (p, li, td, or a span marked .prose) is left alone, because a taller box would open up its line */
  main.authority .textlink{min-height:44px}
  main.authority .prose .textlink,main.authority p .textlink,main.authority li .textlink,main.authority td .textlink{min-height:0}
  /* the breadcrumb is shown on a phone here (site.css hides it on the storefront pages); check-mobile.js leaves .crumbs
     out, but "Home" is a link on its own, so it gets the 44px box too, and the margins keep the row where it was */
  main.authority .crumbs a{display:inline-flex;align-items:center;min-height:44px;margin:-12px -5px;padding-inline:5px}
}
