/* r.css: public instant report (/r/<token>). Mobile first; no horizontal overflow at 390px.
   Shared tokens follow home.css (navy, cyan, paper). Header and footer reuse the homepage markup. */
:root{--navy:#0A1128;--cyan:#00E5FF;--cyan-dark:#007A96;--paper:#F6F8FC;--slate:#475569;--line:rgba(10,17,40,.1);
  --pass:#047857;--pass-bg:#ecfdf5;--pass-line:#a7f3d0;--fail:#b91c1c;--fail-bg:#fef2f2;--fail-line:#fecaca;
  --unk:#475569;--unk-bg:#f1f5f9;--unk-line:#cbd5e1;--blk:#b45309;--blk-bg:#fffbeb;--blk-line:#fde68a;--na:#64748b;--na-bg:#f8fafc}
body{font-family:'Inter',ui-sans-serif,system-ui,'Segoe UI',Arial,sans-serif;color:var(--navy);background:#fff}
.r-main{max-width:72rem;margin:0 auto;padding:1.5rem 1rem 3rem;overflow-wrap:anywhere}
@media(min-width:640px){.r-main{padding:2.25rem 1.5rem 4rem}}
.r-main h1,.r-main h2,.r-main h3{margin:0;letter-spacing:-.01em}
.r-main h2{font-size:1.35rem;font-weight:750}
.r-main p{margin:0}
.r-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan-dark)}
.r-muted{color:var(--slate);font-size:.9rem;line-height:1.55}
.r-link{color:var(--cyan-dark);text-decoration:underline;text-underline-offset:3px}
.r-section{margin-top:2.25rem}
.r-section>h2{margin-bottom:.35rem}
.r-section>.r-muted{margin-bottom:1rem}
.r-card{border:1px solid var(--line);border-radius:1.1rem;background:#fff;padding:1.1rem}
@media(min-width:640px){.r-card{padding:1.5rem}}
.r-state{padding:3rem 0;text-align:center;color:var(--slate)}
.r-state b{display:block;color:var(--navy);font-size:1.2rem;margin-bottom:.4rem}
.r-progress{max-width:30rem;margin:1rem auto 0;border:1px solid var(--line);border-radius:1rem;padding:1rem;text-align:left;background:var(--paper)}
.r-progress .r-bar{height:8px;border-radius:999px;background:rgba(10,17,40,.08);overflow:hidden;margin-top:.7rem}
.r-progress .r-bar i{display:block;height:100%;background:var(--cyan);border-radius:999px;transition:width .4s ease}

/* Head */
.r-head{display:grid;gap:1rem}
.r-head h1{font-size:1.7rem;font-weight:800;line-height:1.15;word-break:break-word}
@media(min-width:640px){.r-head h1{font-size:2.3rem}}
.r-head .r-domain{color:var(--cyan-dark)}
.r-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin:0}
@media(min-width:720px){.r-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
.r-stats>div{border-radius:.9rem;background:var(--paper);padding:.8rem .9rem}
.r-stats dt{font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--slate)}
.r-stats dd{margin:.25rem 0 0;font-size:1.45rem;font-weight:800;letter-spacing:-.02em}
.r-stats dd small{font-size:.78rem;font-weight:500;color:var(--slate)}
.r-coverage{border-left:3px solid var(--cyan);padding:.6rem .9rem;background:var(--paper);border-radius:0 .8rem .8rem 0;font-size:.9rem;line-height:1.6;color:#2b3648}

/* Chips */
.r-chip{display:inline-flex;align-items:center;gap:.3rem;border-radius:999px;padding:2px 9px;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border:1px solid transparent;white-space:nowrap;vertical-align:middle}
.r-chip.PASS{background:var(--pass-bg);color:var(--pass);border-color:var(--pass-line)}
.r-chip.FAIL{background:var(--fail-bg);color:var(--fail);border-color:var(--fail-line)}
.r-chip.UNKNOWN{background:var(--unk-bg);color:var(--unk);border-color:var(--unk-line)}
.r-chip.BLOCKED{background:var(--blk-bg);color:var(--blk);border-color:var(--blk-line)}
.r-chip.NOT_APPLICABLE{background:var(--na-bg);color:var(--na);border-color:#e2e8f0}
.r-chip.P0{background:var(--fail-bg);color:var(--fail);border-color:var(--fail-line)}
.r-chip.P1{background:var(--blk-bg);color:var(--blk);border-color:var(--blk-line)}
.r-chip.P2,.r-chip.P3{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
.r-chip.cls{background:var(--unk-bg);color:var(--unk);border-color:var(--unk-line);letter-spacing:.04em;text-transform:none;font-weight:650}
a.r-ctl{display:inline-flex;align-items:center;border-radius:6px;padding:2px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;font-weight:700;background:var(--navy);color:#fff;text-decoration:none;white-space:nowrap}
a.r-ctl:hover{background:#16224D}

/* Gate */
.r-gate{display:grid;gap:.9rem;border-width:2px}
.r-gate.FAIL{border-color:var(--fail-line);background:var(--fail-bg)}
.r-gate.PASS{border-color:var(--pass-line);background:var(--pass-bg)}
.r-gate.UNKNOWN{border-color:var(--blk-line);background:var(--blk-bg)}
.r-gate-title{font-size:1.55rem;font-weight:800;line-height:1.15}
@media(min-width:640px){.r-gate-title{font-size:2rem}}
.r-gate.FAIL .r-gate-title{color:var(--fail)}.r-gate.PASS .r-gate-title{color:var(--pass)}.r-gate.UNKNOWN .r-gate-title{color:var(--blk)}
.r-gate-list{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;font-size:.86rem;color:#2b3648}
.r-gate-list b{font-weight:650;margin-right:.2rem}

/* Score */
.r-score{display:grid;gap:1.25rem}
@media(min-width:720px){.r-score{grid-template-columns:minmax(0,15rem) minmax(0,1fr);align-items:start}}
.r-ring{display:flex;gap:1rem;align-items:center}
.r-ring svg{width:7.5rem;height:7.5rem;flex:none}
.r-ring .r-num{font-size:2.2rem;font-weight:800;letter-spacing:-.03em;line-height:1}
.r-ring .r-num small{font-size:.95rem;font-weight:600;color:var(--slate)}
.r-ring .r-decision{margin-top:.35rem;font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.r-ring .r-decision.gate_failed{color:var(--fail)}
.r-buckets{width:100%;border-collapse:collapse;font-size:.84rem}
.r-buckets th,.r-buckets td{text-align:left;padding:.45rem .4rem;border-bottom:1px solid var(--line);vertical-align:middle}
.r-buckets th{font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);font-weight:700}
.r-buckets td:first-child{overflow-wrap:normal;white-space:nowrap}
.r-buckets td:last-child,.r-buckets th:last-child{text-align:right;white-space:nowrap}
.r-buckets .r-bar{height:6px;border-radius:999px;background:rgba(10,17,40,.08);overflow:hidden;min-width:4rem}
.r-buckets .r-bar i{display:block;height:100%;background:var(--cyan-dark);border-radius:999px}
.r-buckets td.r-cell-bar{width:34%}

/* Pillars */
.r-pillars{display:grid;gap:.8rem}
@media(min-width:720px){.r-pillars{grid-template-columns:repeat(2,minmax(0,1fr))}}
.r-pillar{border:1px solid var(--line);border-radius:.9rem;padding:.8rem .9rem;background:#fff}
.r-pillar-head{display:flex;justify-content:space-between;gap:.6rem;align-items:baseline}
.r-pillar-head b{font-size:.92rem;font-weight:700}
.r-pillar-head span{font-size:.78rem;color:var(--slate);white-space:nowrap}
.r-stack{display:flex;height:10px;border-radius:999px;overflow:hidden;background:var(--unk-bg);margin-top:.55rem}
.r-stack i{display:block;height:100%}
.r-stack .PASS{background:#10b981}.r-stack .FAIL{background:#ef4444}.r-stack .BLOCKED{background:#f59e0b}.r-stack .UNKNOWN{background:#cbd5e1}.r-stack .NOT_APPLICABLE{background:#e2e8f0}
.r-legend{display:flex;flex-wrap:wrap;gap:.35rem .8rem;margin-top:.5rem;font-size:.72rem;color:var(--slate)}
.r-legend i{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:4px;vertical-align:-1px}

/* AI visibility */
.r-ai-head{display:flex;flex-wrap:wrap;gap:.5rem .9rem;align-items:center;font-size:.84rem;color:var(--slate)}
.r-ai-head b{color:var(--navy)}
.r-rates{display:grid;grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));gap:.6rem;margin:1rem 0}
.r-rates>div{border-radius:.8rem;background:var(--paper);padding:.7rem .8rem}
.r-rates dt{font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--slate);overflow-wrap:normal}
.r-rates dd{margin:.2rem 0 0;font-size:1.3rem;font-weight:800}
.r-answers{display:grid;gap:.7rem}
.r-answer{border:1px solid var(--line);border-radius:.9rem;padding:.8rem .9rem}
.r-answer-head{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin-bottom:.4rem}
.r-answer .r-prompt{font-weight:650;font-size:.92rem;line-height:1.45}
.r-answer details{margin-top:.5rem}
.r-answer summary{cursor:pointer;font-size:.8rem;font-weight:650;color:var(--cyan-dark)}
.r-answer .r-text{white-space:pre-wrap;font-size:.84rem;line-height:1.55;color:#2b3648;background:var(--paper);border-radius:.7rem;padding:.7rem .8rem;margin-top:.5rem;max-height:18rem;overflow:auto}
.r-answer .r-sources{margin:.5rem 0 0;padding-left:1.1rem;font-size:.76rem;color:var(--slate);line-height:1.5}
.r-answer .r-sources a{color:var(--cyan-dark);word-break:break-all}
.r-note{font-size:.8rem;color:var(--slate);line-height:1.55;margin-top:.8rem}

/* Findings */
.r-findings{display:grid;gap:.8rem}
.r-finding{border:1px solid var(--line);border-radius:1rem;padding:1rem;background:#fff}
.r-finding-head{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin-bottom:.5rem}
.r-finding h3{font-size:1.02rem;font-weight:700;line-height:1.35}
.r-finding .r-scope{font-size:.78rem;color:var(--slate);margin-top:.2rem}
.r-kv{display:grid;gap:.55rem;margin-top:.8rem;font-size:.86rem;line-height:1.55;color:#2b3648}
@media(min-width:720px){.r-kv{grid-template-columns:repeat(2,minmax(0,1fr))}}
.r-kv>div{background:var(--paper);border-radius:.7rem;padding:.6rem .75rem}
.r-kv b{display:block;font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);margin-bottom:.2rem}
.r-kv .r-wide{grid-column:1/-1}
.r-finding details{margin-top:.6rem}
.r-finding summary{cursor:pointer;font-size:.8rem;font-weight:650;color:var(--cyan-dark)}
.r-finding ul.r-urls{margin:.4rem 0 0;padding-left:1.1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.74rem;line-height:1.6;color:var(--slate);word-break:break-all}
.r-fix-first{font-size:.8rem;font-weight:700;color:var(--fail)}

/* Unverified */
.r-unverified{display:grid;gap:.6rem}
.r-unverified details{border:1px solid var(--line);border-radius:.9rem;background:#fff}
.r-unverified summary{cursor:pointer;padding:.75rem .9rem;font-weight:650;font-size:.92rem;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.r-unverified summary span{font-size:.76rem;color:var(--slate);font-weight:500}
.r-unverified ul{list-style:none;margin:0;padding:0 .9rem .8rem;display:grid;gap:.45rem;font-size:.83rem;line-height:1.5;color:#2b3648}
.r-unverified li{display:grid;grid-template-columns:auto 1fr;gap:.5rem;align-items:start}
.r-unverified li .r-chip{margin-left:.2rem}

/* CTA */
.r-cta{background:var(--navy);color:#fff;border-radius:1.25rem;padding:1.5rem;display:grid;gap:1rem}
@media(min-width:720px){.r-cta{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;padding:2rem}}
.r-cta h2{color:#fff;font-size:1.5rem}
.r-cta p{color:rgba(255,255,255,.78);font-size:.92rem;line-height:1.55;margin-top:.5rem}
.r-cta ul{margin:.7rem 0 0;padding-left:1.1rem;color:rgba(255,255,255,.85);font-size:.88rem;line-height:1.6}
.r-cta-actions{display:grid;gap:.6rem}
.r-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:999px;padding:.7rem 1.3rem;font-weight:700;font-size:.92rem;text-decoration:none;border:1px solid transparent}
.r-btn.primary{background:var(--cyan);color:var(--navy)}
.r-btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.r-small{font-size:.76rem;color:var(--slate);line-height:1.5;margin-top:1rem}
.r-main table{max-width:100%}
