@font-face{font-family:"HG Aeonik";src:url("/fonts/Aeonik/Aeonik-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"HG Aeonik";src:url("/fonts/Aeonik/Aeonik-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"HG Oldschool";src:url("/fonts/OldschoolGrotesk/OldschoolGrotesk-Heavy.woff2") format("woff2");font-weight:900;font-style:normal;font-display:swap}

.page-hard-report .o-header,
.page-hard-report .o-footer,
.page-hard-report .o-reading-progress,
.page-hard-report .skip-link{display:none!important}
.page-hard-report #main{padding:0}
.page-hard-report{background:#eef8ff}

.hard-grade-page{
  --hg-ink:#101010;
  --hg-muted:#6d6d68;
  --hg-line:rgba(17,17,17,.12);
  --hg-paper:#fff;
  --hg-serif:"Iowan Old Style","Baskerville","Times New Roman",Georgia,serif;
  --hg-sans:"HG Aeonik",Aeonik,Inter,system-ui,sans-serif;
  --hg-display:"HG Oldschool","Arial Black",sans-serif;
  color:var(--hg-ink);
  font-family:var(--hg-sans);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
.hard-grade-shell{width:min(1040px,calc(100% - 36px));margin-inline:auto}

/* ── Acquisition hero ───────────────────────────────────────────── */
.hard-grade-sky{
  min-height:100svh;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#9dd4f7 url("/static/hard-sky.svg") center/cover no-repeat;
}
.hard-grade-sky::before{
  content:"";
  position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.16) 54%,rgba(255,255,255,.58) 100%);
}
.hard-grade-sky::after{
  content:"";
  position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(circle at 50% 36%,transparent 0 34%,rgba(18,65,99,.07) 100%);
  mix-blend-mode:multiply;
}
.hard-grade-hero{
  min-height:100svh;
  position:relative;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;
  padding:12px 0 64px;
}
.hard-grade-specimen-stack{
  width:min(860px,89vw);
  position:relative;
  margin-bottom:-34px;
  perspective:1400px;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.96) 75%,rgba(0,0,0,.64) 88%,transparent 100%);
  mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.96) 75%,rgba(0,0,0,.64) 88%,transparent 100%);
}
.hard-grade-specimen-stack::before,
.hard-grade-specimen-stack::after{
  content:"";
  position:absolute;
  inset:11px 18px auto;
  height:calc(100% - 10px);
  border:1px solid rgba(17,17,17,.065);
  border-radius:13px;
  background:rgba(255,255,255,.86);
  transform-origin:50% 10%;
  pointer-events:none;
}
.hard-grade-specimen-stack::before{
  z-index:0;
  transform:translateY(13px) scale(.978) rotate(-.65deg);
  box-shadow:0 18px 38px rgba(31,67,94,.08);
}
.hard-grade-specimen-stack::after{
  z-index:1;
  transform:translateY(7px) scale(.989) rotate(.36deg);
  background:rgba(255,255,255,.94);
  box-shadow:0 10px 24px rgba(31,67,94,.065);
}
.hard-grade-specimen-shadow{
  position:absolute;inset:34px 9% -12px;
  background:rgba(28,74,104,.22);
  filter:blur(42px);
  border-radius:50%;
  z-index:1;
}
.hard-grade-specimen{
  position:relative;z-index:2;
  color:#101010;
  background:
    linear-gradient(180deg,rgba(255,255,255,.995),rgba(250,252,253,.985)),
    radial-gradient(circle at 18% 8%,rgba(255,255,255,.65),transparent 32%);
  border:1px solid rgba(17,17,17,.09);
  border-radius:13px;
  box-shadow:
    0 2px 1px rgba(255,255,255,.92) inset,
    0 -1px 0 rgba(13,38,55,.03) inset,
    0 1px 2px rgba(16,45,67,.07),
    0 28px 64px rgba(28,74,104,.15);
  padding:15px 16px 17px;
  transform:rotateX(1deg) rotateZ(-.24deg);
}
.hard-grade-specimen-top{
  height:22px;
  display:flex;align-items:center;justify-content:space-between;
  font-size:8px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8a8a86;
}
.hard-grade-browser{
  border:1px solid #d9d9d6;border-radius:8px;overflow:hidden;background:#f8f8f6;text-align:left;
}
.hard-grade-browserbar{
  height:29px;border-bottom:1px solid #ddd;background:linear-gradient(#f8f8f7,#ececea);
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:0 9px;
}
.hard-grade-dots{display:flex;gap:4px}
.hard-grade-dots i{width:6px;height:6px;border-radius:50%;background:#c4c4c1;display:block}
.hard-grade-address{
  width:72%;justify-self:center;padding:4px 10px;border-radius:4px;background:#fff;border:1px solid #dededb;
  color:#969691;font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.hard-grade-browser-state{font-size:7px;font-weight:700;color:#4e6b56}
.hard-grade-mockbody{display:grid;grid-template-columns:66px 1fr;min-height:306px;background:#fff}
.hard-grade-mocknav{
  padding:17px 12px;border-right:1px solid #e8e8e5;background:#f6f6f3;
  display:flex;flex-direction:column;align-items:center;gap:14px;
}
.hard-grade-mocklogo{
  width:29px;height:29px;border-radius:8px;background:#101010;color:#fff;display:grid;place-items:center;
  font:900 11px/1 var(--hg-display);margin-bottom:9px;
}
.hard-grade-mocknav i{display:block;width:18px;height:5px;background:#d7d7d3;border-radius:99px}
.hard-grade-mockmain{padding:25px 28px 22px}
.hard-grade-mockheader{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.hard-grade-mock-kicker{font-size:7px;letter-spacing:.11em;text-transform:uppercase;color:#999;margin:0 0 4px}
.hard-grade-mockmain h3{font:600 23px/1.02 var(--hg-serif);letter-spacing:-.035em;margin:0}
.hard-grade-mockpill{
  border:1px solid #d6d6d2;border-radius:99px;padding:5px 7px;font-size:7px;color:#666;background:#f9f9f7;white-space:nowrap;
}
.hard-grade-mockcustomer{
  display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;
  margin-top:19px;padding:11px 12px;border:1px solid #e3e3df;border-radius:8px;background:#fafaf8;
}
.hard-grade-avatar{width:25px;height:25px;border-radius:50%;background:linear-gradient(135deg,#c5d8ef,#8daed0)}
.hard-grade-mockcustomer strong{display:block;font-size:8px}.hard-grade-mockcustomer small{display:block;font-size:7px;color:#8b8b86;margin-top:2px}
.hard-grade-mockcustomer b{font-size:7px;font-weight:700;color:#2f6f49}
.hard-grade-mockmessage{
  margin-top:12px;padding:11px 12px;border-left:2px solid #d4d4cf;background:#f6f6f3;font:400 9px/1.45 var(--hg-serif);color:#64645f;
}
.hard-grade-mockdecision{
  margin-top:12px;padding-top:12px;border-top:1px solid #e8e8e5;
  display:flex;align-items:center;justify-content:space-between;gap:14px;
}
.hard-grade-mockdecision small{display:block;font-size:6px;letter-spacing:.08em;text-transform:uppercase;color:#999}
.hard-grade-mockdecision strong{display:block;font-size:9px;margin-top:2px}
.hard-grade-mockdecision button{
  border:0;border-radius:5px;background:#111;color:#fff;padding:7px 10px;font-size:7px;font-weight:700;
}
.hard-grade-mockfooter{
  margin-top:10px;display:flex;justify-content:space-between;gap:10px;font-size:6px;color:#9b9b96;
}

.hard-grade-eyebrow{
  font-size:9px;font-weight:700;letter-spacing:.145em;text-transform:uppercase;color:rgba(16,16,16,.56);margin:0 0 12px;
}
.hard-grade-hero h1{
  position:relative;z-index:2;
  width:min(1050px,96vw);max-width:none;margin:0;
  font:600 clamp(56px,5.2vw,74px)/.94 var(--hg-serif);
  letter-spacing:-.058em;
  text-wrap:balance;
}
.hard-grade-sub{
  position:relative;z-index:2;
  max-width:450px;margin:16px auto 21px;
  color:rgba(16,16,16,.63);
  font:400 14px/1.44 var(--hg-serif);
  text-wrap:balance;
}
.hard-grade-scan{
  width:min(520px,100%);
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;
  background:rgba(255,255,255,.975);
  border:1px solid rgba(17,17,17,.12);
  border-radius:11px;
  padding:5px 5px 5px 12px;
  box-shadow:
    0 1px 0 rgba(255,255,255,.96) inset,
    0 1px 2px rgba(17,17,17,.04),
    0 16px 34px rgba(44,86,117,.105);
  backdrop-filter:blur(8px);
  transition:box-shadow .2s ease,transform .2s ease;
}
.hard-grade-scan:focus-within{
  box-shadow:0 0 0 3px rgba(17,17,17,.12),0 18px 38px rgba(44,86,117,.16);
  transform:translateY(-1px);
}
.hard-grade-scan-icon{
  width:25px;height:25px;display:grid;place-items:center;
  color:#111;font:500 18px/1 var(--hg-serif);transform:translateY(-1px);
}
.hard-grade-scan input{
  min-width:0;border:0;background:transparent;outline:0;padding:14px 10px;
  color:#111;font:400 13px/1 var(--hg-sans);
}
.hard-grade-scan input::placeholder{color:#92928d}
.hard-grade-scan button{
  display:flex;align-items:center;gap:8px;
  border:0;border-left:1px solid #e0e0dc;border-radius:0;background:transparent;color:#111;
  padding:11px 10px 11px 14px;font:700 11px/1 var(--hg-sans);cursor:pointer;
  transition:background .15s ease,color .15s ease;
}
.hard-grade-scan button i{
  width:25px;height:25px;border-radius:7px;background:#111;color:#fff;
  display:grid;place-items:center;font-style:normal;font-size:13px;transition:transform .15s ease;
}
.hard-grade-scan button:hover{background:#f7f7f4}
.hard-grade-scan button:hover i{transform:translateX(2px)}
.hard-grade-scan button:active i{transform:translateX(0)}
.hard-grade-micro{font-size:9px;color:rgba(17,17,17,.48);margin:9px 0 0;font-style:italic}
.hard-grade-proof{
  margin-top:30px;display:flex;align-items:center;justify-content:center;gap:10px;
  font-size:7px;font-weight:700;letter-spacing:.13em;color:rgba(17,17,17,.44);
}
.hard-grade-proof i{width:2px;height:2px;border-radius:50%;background:rgba(17,17,17,.33)}

/* ── Analysis transition ────────────────────────────────────────── */
.hard-grade-analysis{background:#fff;border-top:1px solid #ececea;border-bottom:1px solid #ececea;padding:21px 0}
.hard-grade-analysis-inner{
  display:grid;grid-template-columns:auto minmax(190px,1fr) minmax(220px,.8fr);gap:14px;align-items:center;
}
.hard-grade-analysis-pulse{
  width:9px;height:9px;border-radius:50%;background:#111;
  box-shadow:0 0 0 0 rgba(17,17,17,.2);animation:hg-pulse 1.5s ease-out infinite;
}
.hard-grade-analysis-inner>p{margin:0;display:flex;align-items:center;gap:10px;min-width:0}
.hard-grade-analysis-inner strong{font-size:10px}
.hard-grade-analysis-inner p span{font-size:9px;color:#8b8b86;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hard-grade-analysis-progress{height:2px;background:#ecece8;overflow:hidden;border-radius:99px}
.hard-grade-analysis-progress i{display:block;height:100%;width:34%;background:#111;animation:hg-progress 1.35s ease-in-out infinite}
.hard-grade-analysis-list{display:none!important}
@keyframes hg-pulse{0%{box-shadow:0 0 0 0 rgba(17,17,17,.19)}70%{box-shadow:0 0 0 8px rgba(17,17,17,0)}100%{box-shadow:0 0 0 0 rgba(17,17,17,0)}}
@keyframes hg-progress{0%{transform:translateX(-120%)}55%{transform:translateX(135%)}100%{transform:translateX(300%)}}

/* ── Grade-aware editorial report world ───────────────────────── */
.hard-grade-results{
  --grade-accent:#315efb;
  --grade-accent-2:#557cff;
  --grade-soft:#e9edff;
  --grade-faint:#f7f8ff;
  --grade-ink:#17388f;
  --grade-on:#fff;
  --grade-shadow:rgba(49,94,251,.18);
  --status-supported:#24724a;
  --status-warning:#b57500;
  --status-critical:#bb3039;
  --status-unknown:#7b7b76;
  padding:88px 0 118px;
  background:
    radial-gradient(ellipse 42% 17% at 9% 1%,rgba(255,255,255,.96) 0 20%,rgba(255,255,255,.44) 48%,transparent 76%),
    radial-gradient(ellipse 40% 16% at 92% 3%,rgba(255,255,255,.94) 0 18%,rgba(255,255,255,.4) 48%,transparent 76%),
    linear-gradient(180deg,var(--grade-soft) 0%,#f8fbff 34%,#fff 78%);
  transition:background .35s ease;
}
.hard-grade-results[data-grade="aplus"]{--grade-accent:#05745b;--grade-accent-2:#0d9674;--grade-soft:#e3f5ee;--grade-faint:#f4fbf8;--grade-ink:#064737;--grade-on:#fff;--grade-shadow:rgba(5,116,91,.18)}
.hard-grade-results[data-grade="a"]{--grade-accent:#0b7c61;--grade-accent-2:#20a080;--grade-soft:#e6f6f0;--grade-faint:#f5fbf8;--grade-ink:#074d3c;--grade-on:#fff;--grade-shadow:rgba(11,124,97,.18)}
.hard-grade-results[data-grade="b"]{--grade-accent:#315efb;--grade-accent-2:#557cff;--grade-soft:#e9edff;--grade-faint:#f6f8ff;--grade-ink:#17388f;--grade-on:#fff;--grade-shadow:rgba(49,94,251,.19)}
.hard-grade-results[data-grade="c"]{--grade-accent:#d9a11c;--grade-accent-2:#efbd46;--grade-soft:#fff2cb;--grade-faint:#fffaf0;--grade-ink:#6b4c00;--grade-on:#2c2107;--grade-shadow:rgba(217,161,28,.18)}
.hard-grade-results[data-grade="d"]{--grade-accent:#e16b36;--grade-accent-2:#f18c60;--grade-soft:#ffe8dd;--grade-faint:#fff7f3;--grade-ink:#7e3417;--grade-on:#1a120e;--grade-shadow:rgba(225,107,54,.19)}
.hard-grade-results[data-grade="f"]{--grade-accent:#c93440;--grade-accent-2:#e25964;--grade-soft:#ffe5e8;--grade-faint:#fff6f7;--grade-ink:#791820;--grade-on:#fff;--grade-shadow:rgba(201,52,64,.2)}

.hard-grade-report{
  width:min(1080px,calc(100% - 32px));
  margin-inline:auto;
  background:#fff;
  border:1px solid rgba(17,17,17,.11);
  border-radius:18px;
  overflow:hidden;
  box-shadow:
    0 1px 0 rgba(255,255,255,.96) inset,
    0 2px 4px rgba(17,17,17,.035),
    0 36px 100px var(--grade-shadow);
}
.hard-grade-cover{
  display:grid;
  grid-template-columns:43% 57%;
  min-height:540px;
  border-bottom:1px solid #dfdfdb;
}
.hard-grade-cover-color{
  position:relative;
  display:flex;flex-direction:column;justify-content:space-between;
  padding:26px 28px 28px;
  color:var(--grade-on);
  background:
    radial-gradient(circle at 74% 20%,color-mix(in srgb,var(--grade-accent-2) 92%,#fff) 0 8%,transparent 32%),
    linear-gradient(155deg,var(--grade-accent-2),var(--grade-accent) 58%,color-mix(in srgb,var(--grade-accent) 78%,#000));
  overflow:hidden;
}
.hard-grade-cover-color::after{
  content:"";
  position:absolute;inset:auto -17% -25% auto;width:78%;aspect-ratio:1;border-radius:50%;
  border:1px solid color-mix(in srgb,var(--grade-on) 20%,transparent);
  box-shadow:
    0 0 0 48px color-mix(in srgb,var(--grade-on) 5%,transparent),
    0 0 0 96px color-mix(in srgb,var(--grade-on) 3%,transparent);
  opacity:.8;pointer-events:none;
}
.hard-grade-cover-topline,.hard-grade-cover-footer{
  position:relative;z-index:2;
  display:flex;justify-content:space-between;align-items:center;gap:14px;
  font-size:8px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;
}
.hard-grade-cover-topline{opacity:.74}
.hard-grade-cover-grade{position:relative;z-index:1;display:flex;align-items:center;min-height:290px}
.hard-grade-letter-shadow{
  position:absolute;left:13px;top:50%;transform:translateY(-48%);
  font:900 clamp(190px,20vw,300px)/.7 var(--hg-display);
  letter-spacing:-.12em;
  color:color-mix(in srgb,var(--grade-on) 9%,transparent);
  user-select:none;white-space:nowrap;
}
.hard-grade-letter{
  position:relative;z-index:1;
  font:900 clamp(155px,16.5vw,245px)/.72 var(--hg-display);
  letter-spacing:-.105em;
  color:var(--grade-on);
  white-space:nowrap;
  text-shadow:0 1px 0 rgba(255,255,255,.1);
}
.hard-grade-results[data-grade="aplus"] .hard-grade-letter{font-size:clamp(126px,14vw,205px);letter-spacing:-.12em}
.hard-grade-results[data-grade="aplus"] .hard-grade-letter-shadow{font-size:clamp(150px,16vw,235px);letter-spacing:-.12em}
.hard-grade-company{
  display:block;max-width:64%;
  font-size:8px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.hard-grade-report-chip{
  border:1px solid color-mix(in srgb,var(--grade-on) 35%,transparent);
  border-radius:99px;padding:5px 7px;color:var(--grade-on);
  font-size:7px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
}
.hard-grade-cover-detail{
  padding:42px 44px 38px;
  display:flex;flex-direction:column;justify-content:center;
}
.hard-grade-score-lockup{display:flex;align-items:flex-end;justify-content:space-between;gap:22px}
.hard-grade-score-label{display:flex;align-items:center;gap:8px;margin-bottom:7px}
.hard-grade-score-label p{
  margin:0;color:var(--grade-ink);
  font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;
}
.hard-grade-score-label span{
  border:1px solid color-mix(in srgb,var(--grade-accent) 24%,#ddd);
  border-radius:99px;padding:4px 6px;background:var(--grade-faint);color:var(--grade-ink);
  font-size:6px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
}
.hard-grade-score{
  display:flex;align-items:flex-end;gap:6px;
  font:500 58px/.9 var(--hg-serif);letter-spacing:-.05em;
}
.hard-grade-score small{font:400 13px/1 var(--hg-sans);color:#90908a;margin-bottom:6px;letter-spacing:0}
.hard-grade-score-meter{margin-top:20px}
.hard-grade-score-track{height:8px;border-radius:99px;background:#ecece8;position:relative;overflow:visible}
.hard-grade-score-fill{
  position:absolute;inset:0 auto 0 0;width:calc(var(--grade-score,0) * 1%);
  border-radius:inherit;background:linear-gradient(90deg,var(--grade-accent),var(--grade-accent-2));
  transition:width .75s cubic-bezier(.2,.75,.2,1);
}
.hard-grade-score-marker{
  position:absolute;top:50%;left:calc(var(--grade-score,0) * 1%);
  width:16px;height:16px;border-radius:50%;background:#fff;border:4px solid var(--grade-accent);
  transform:translate(-50%,-50%);box-shadow:0 2px 8px rgba(0,0,0,.14);
  transition:left .75s cubic-bezier(.2,.75,.2,1);
}
.hard-grade-score-scale{position:relative;height:11px;margin-top:7px;color:#aaa;font-size:7px}
.hard-grade-score-scale span{position:absolute;top:0;transform:translateX(-50%)}
.hard-grade-score-scale span:nth-child(1){left:0;transform:none}
.hard-grade-score-scale span:nth-child(2){left:40%}
.hard-grade-score-scale span:nth-child(3){left:60%}
.hard-grade-score-scale span:nth-child(4){left:75%}
.hard-grade-score-scale span:nth-child(5){left:90%}
.hard-grade-score-scale span:nth-child(6){right:0;left:auto;transform:none}
.hard-grade-cover-detail>h2{
  max-width:19.5ch;margin:31px 0 0;
  font:500 clamp(30px,3.25vw,41px)/1.015 var(--hg-serif);
  letter-spacing:-.04em;text-wrap:balance;
}
.hard-grade-posture{
  margin-top:26px;
  display:grid;grid-template-columns:auto 1fr;gap:11px;align-items:center;
  padding:12px 0;border-top:1px solid #dededa;border-bottom:1px solid #dededa;
}
.hard-grade-posture-mark{
  width:31px;height:31px;border-radius:8px;background:#111;color:#fff;
  display:grid;place-items:center;font:900 11px/1 var(--hg-display);
}
.hard-grade-posture span{display:block;font-size:7px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#8c8c87}
.hard-grade-posture strong{display:block;margin-top:2px;font-size:10px;letter-spacing:.09em}
.hard-grade-posture small{display:block;margin-top:3px;color:#858580;font-size:9px;line-height:1.35}
.hard-grade-meta{
  display:flex;gap:0;margin-top:16px;padding-top:15px;border-top:1px solid #e1e1dd;
}
.hard-grade-meta>div{
  flex:1;min-height:0;padding:0 14px;border:0;border-right:1px solid #e1e1dd;background:transparent;border-radius:0;
  display:flex;flex-direction:column;gap:5px;
}
.hard-grade-meta>div:first-child{padding-left:0}
.hard-grade-meta>div:last-child{padding-right:0;border-right:0}
.hard-grade-meta span{font-size:7px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#93938e}
.hard-grade-meta strong{font:500 24px/.95 var(--hg-serif)}

/* 01 — the decision: full-bleed inside the paper */
.hard-grade-priority{
  position:relative;
  margin:0;
  padding:54px 62px 48px;
  background:#111;color:#fff;
  overflow:hidden;
}
.hard-grade-priority::after{
  content:"";
  position:absolute;right:-110px;top:-120px;width:360px;height:360px;border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--grade-accent) 58%,#111) 0%,transparent 68%);
  opacity:.46;
}
.hard-grade-priority-index{
  position:absolute;right:30px;top:16px;z-index:0;
  color:rgba(255,255,255,.055);
  font:900 122px/.82 var(--hg-display);letter-spacing:-.08em;
}
.hard-grade-priority-copy,.hard-grade-trace,.hard-grade-prove,.hard-grade-claim-limit{position:relative;z-index:1}
.hard-grade-priority-label{display:flex;align-items:center;gap:8px;margin-bottom:13px}
.hard-grade-priority-dot{width:7px;height:7px;border-radius:50%;background:var(--grade-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--grade-accent) 22%,transparent)}
.hard-grade-priority-label .hard-grade-eyebrow{margin:0;color:#bbb}
.hard-grade-priority h3{
  max-width:17ch;margin:0;
  font:500 clamp(38px,4.6vw,54px)/.98 var(--hg-serif);letter-spacing:-.046em;text-wrap:balance;
}
.hard-grade-priority-copy>p:last-child{max-width:68ch;margin:13px 0 0;color:#bdbdb7;font-size:11px;line-height:1.55}
.hard-grade-trace{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  margin-top:34px;border-top:1px solid rgba(255,255,255,.17);border-bottom:1px solid rgba(255,255,255,.17);
}
.hard-grade-trace>div{
  min-height:136px;padding:18px 18px 17px 0;border-right:1px solid rgba(255,255,255,.115);
}
.hard-grade-trace>div+div{padding-left:16px}
.hard-grade-trace>div:last-child{border-right:0}
.hard-grade-trace span,.hard-grade-prove span{
  display:block;color:#9e9e98;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
}
.hard-grade-trace p{margin:8px 0 0;color:#d0d0cb;font-size:9.5px;line-height:1.58}
.hard-grade-prove{
  margin-top:17px;display:grid;grid-template-columns:110px 1fr;gap:20px;align-items:start;
}
.hard-grade-prove strong{font:500 18px/1.35 var(--hg-serif);color:#fff}
.hard-grade-claim-limit{margin:14px 0 0;color:#777772;font-size:8px;line-height:1.45}

/* 02/03 section rhythm — editorial, not card grid */
.hard-grade-views,.hard-grade-findings,.hard-grade-provenance{padding:52px 62px 0;margin:0}
.hard-grade-section-kicker{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.hard-grade-section-kicker span{font:900 26px/1 var(--hg-display);color:var(--grade-accent)}
.hard-grade-section-kicker p{margin:0;font-size:8px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#81817c}
.hard-grade-views>h3,.hard-grade-findings h3{
  max-width:18ch;margin:0 0 26px;font:500 32px/1.03 var(--hg-serif);letter-spacing:-.035em;
}
.hard-grade-view-row{
  display:grid;grid-template-columns:minmax(0,1fr) 70px;gap:24px;align-items:center;
  min-height:82px;padding:15px 0;border-top:1px solid #dfdfdb;
  background:transparent;margin:0;border-radius:0;box-shadow:none;
}
.hard-grade-view-row:last-child{border-bottom:1px solid #dfdfdb}
.hard-grade-view-row:hover{transform:none;box-shadow:none;border-color:#ccc}
.hard-grade-view-copy strong{display:block;font-size:11px}
.hard-grade-view-copy span{display:block;margin-top:4px;color:#85857f;font-size:8px;line-height:1.4}
.hard-grade-view-bar{height:3px;margin-top:10px;background:#ecece8;border-radius:99px;overflow:hidden}
.hard-grade-view-bar>i{display:block;height:100%;background:var(--grade-accent)}
.hard-grade-view-score{
  width:auto;height:auto;border:0;background:transparent;border-radius:0;
  color:var(--grade-ink);font:500 28px/1 var(--hg-serif);justify-self:end;
}
.hard-grade-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.hard-grade-quiet-btn{
  border:1px solid #d8d8d4;border-radius:8px;background:#fff;color:#111;padding:9px 11px;
  font-size:8px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;
}
.hard-grade-quiet-btn:hover{border-color:#111}
.hard-grade-finding{
  --finding-accent:var(--status-unknown);
  position:relative;margin:9px 0 0;padding:16px 15px 15px 19px;
  border:1px solid #e1e1dd;border-radius:10px;background:#fff;
}
.hard-grade-finding[data-status="pass"]{--finding-accent:var(--status-supported)}
.hard-grade-finding[data-status="warning"]{--finding-accent:var(--status-warning)}
.hard-grade-finding[data-status="critical"]{--finding-accent:var(--status-critical)}
.hard-grade-finding::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--finding-accent)}
.hard-grade-finding-head{display:grid;grid-template-columns:1fr auto;gap:15px}
.hard-grade-finding h4{margin:0;font:500 18px/1.08 var(--hg-serif)}
.hard-grade-finding-status{
  border:1px solid color-mix(in srgb,var(--finding-accent) 38%,#ddd);border-radius:99px;padding:4px 6px;
  color:var(--finding-accent);font-size:7px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;
}
.hard-grade-finding>p{margin:7px 0 0;color:#62625d;font-size:10px;line-height:1.5}
.hard-grade-finding details{margin-top:10px;border-top:1px solid #ecece8;padding-top:9px}
.hard-grade-finding summary{font-size:8px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.hard-grade-finding details p{font-size:9px;line-height:1.5;color:#5f5f5a}

/* Unknown = one strong editorial spread */
.hard-grade-unknowns{
  margin:52px 62px 0;
  padding:30px 0 31px;
  display:grid;grid-template-columns:150px 1fr;gap:34px;align-items:center;
  border-top:1px solid #d9d9d5;border-bottom:1px solid #d9d9d5;
  background:transparent;border-left:0;border-right:0;border-radius:0;
}
.hard-grade-unknown-number{
  font:900 92px/.8 var(--hg-display);letter-spacing:-.07em;color:#b0b0aa;
}
.hard-grade-unknowns .hard-grade-eyebrow{margin-bottom:8px}
.hard-grade-unknowns h3{margin:0 0 8px;font:500 30px/1 var(--hg-serif);letter-spacing:-.035em}
.hard-grade-unknowns>div:last-child>p:last-child{max-width:64ch;margin:0;color:#666661;font-size:10px;line-height:1.5}

/* Request CTA */
.hard-grade-request{
  position:relative;overflow:hidden;
  margin:52px 62px 0;padding:34px 35px 32px;
  border-radius:14px;background:var(--grade-accent);color:var(--grade-on);
}
.hard-grade-request::before{
  content:"";position:absolute;right:-68px;top:-100px;width:280px;height:280px;border-radius:50%;
  border:1px solid color-mix(in srgb,var(--grade-on) 20%,transparent);
  box-shadow:0 0 0 44px color-mix(in srgb,var(--grade-on) 5%,transparent),0 0 0 88px color-mix(in srgb,var(--grade-on) 3%,transparent);
}
.hard-grade-request-badge{
  position:relative;z-index:1;display:inline-flex;padding:5px 7px;border:1px solid color-mix(in srgb,var(--grade-on) 33%,transparent);
  border-radius:99px;color:var(--grade-on);font-size:7px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;margin-bottom:18px;
}
.hard-grade-request .hard-grade-eyebrow{position:relative;z-index:1;color:color-mix(in srgb,var(--grade-on) 70%,transparent)}
.hard-grade-request h3{
  position:relative;z-index:1;max-width:14ch;margin:0 0 10px;
  color:var(--grade-on);font:500 34px/1 var(--hg-serif);letter-spacing:-.04em;
}
.hard-grade-request>p{position:relative;z-index:1;max-width:60ch;color:color-mix(in srgb,var(--grade-on) 75%,transparent);font-size:10px;line-height:1.5}
.hard-grade-review-form{position:relative;z-index:1;margin-top:20px;max-width:650px}
.hard-grade-review-form label{display:block;margin-bottom:6px;color:color-mix(in srgb,var(--grade-on) 65%,transparent);font-size:7px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.hard-grade-review-form>div{
  display:grid;grid-template-columns:1fr auto;gap:8px;padding:0;border:0;background:transparent;
}
.hard-grade-review-input.input{
  min-width:0;
  min-height:42px;
  background:#fff;
  color:#111;
  border-color:rgba(17,17,17,.16);
  box-shadow:var(--shadow-1);
  font-size:11px;
}
.hard-grade-review-form .button.button-primary{
  min-height:42px;
  border-radius:var(--button-radius);
  font-size:9px;
  font-weight:var(--w-medium);
}
.hard-grade-request-status,.hard-grade-preview-link{position:relative;z-index:1;color:color-mix(in srgb,var(--grade-on) 75%,transparent)!important;font-size:8px!important}
.hard-grade-preview-link a{color:var(--grade-on)}

.hard-grade-provenance{padding-bottom:54px}
.hard-grade-provenance>p{max-width:72ch;color:#777;font-size:9px;line-height:1.5}
.hard-grade-source-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}
.hard-grade-source-links a{color:#111;text-decoration:none;border-bottom:1px solid #bbb;padding-bottom:2px;font-size:8px}
.hard-grade-error{
  max-width:620px;margin:14px auto 0;padding:12px 14px;border:1px solid #bb3037;border-radius:8px;background:#fff7f7;color:#821b22;font-size:10px
}

/* Result reveal */
.hard-grade-results:not([hidden]) .hard-grade-report{animation:hg-report-in .55s cubic-bezier(.18,.72,.2,1) both}
.hard-grade-results:not([hidden]) .hard-grade-letter{animation:hg-grade-in .66s cubic-bezier(.18,.82,.22,1) .08s both}
@keyframes hg-report-in{from{opacity:0;transform:translateY(24px) scale(.989)}to{opacity:1;transform:none}}
@keyframes hg-grade-in{from{opacity:0;transform:translateY(18px) scale(.92);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}

@media(max-width:760px){
  .hard-grade-shell{width:min(100% - 24px,1040px)}
  .hard-grade-hero{padding:28px 0 52px}
  .hard-grade-specimen-stack{width:98vw;margin-bottom:-22px}
  .hard-grade-mockbody{min-height:218px;grid-template-columns:44px 1fr}
  .hard-grade-mockmain{padding:13px 14px}.hard-grade-mocknav{padding:10px 7px}
  .hard-grade-mockcustomer,.hard-grade-mockmessage,.hard-grade-mockfooter{display:none}
  .hard-grade-hero h1{width:100%;font-size:38px;line-height:.96;letter-spacing:-.06em}.hard-grade-sub{font-size:13px;max-width:320px;margin-top:15px}
  .hard-grade-scan{grid-template-columns:auto 1fr auto;padding-left:10px}
  .hard-grade-scan button{width:auto}
  .hard-grade-scan button span{display:none}
  .hard-grade-scan .hard-grade-scan-submit.button.button-primary{min-width:42px;padding:10px 12px}
  .hard-grade-proof{gap:7px}.hard-grade-proof i{display:none}
  .hard-grade-analysis{padding:22px 0}.hard-grade-analysis-inner{grid-template-columns:auto 1fr}.hard-grade-analysis-progress{grid-column:1/-1;width:100%}
  .hard-grade-results{padding:58px 0 80px}
  .hard-grade-report{width:min(100% - 20px,1080px);border-radius:14px}
  .hard-grade-cover{grid-template-columns:1fr;min-height:0}
  .hard-grade-cover-color{min-height:335px;padding:21px 20px 22px}
  .hard-grade-cover-grade{min-height:220px}
  .hard-grade-letter{font-size:160px}.hard-grade-letter-shadow{font-size:188px}
  .hard-grade-results[data-grade="aplus"] .hard-grade-letter{font-size:128px}.hard-grade-results[data-grade="aplus"] .hard-grade-letter-shadow{font-size:148px}
  .hard-grade-cover-detail{padding:28px 20px 29px}
  .hard-grade-score{font-size:48px}.hard-grade-cover-detail>h2{font-size:34px}
  .hard-grade-meta{display:flex}.hard-grade-meta>div{padding:0 9px}.hard-grade-meta>div:first-child{padding-left:0}.hard-grade-meta>div:last-child{padding-right:0}
  .hard-grade-priority{padding:39px 20px 36px}.hard-grade-priority-index{font-size:78px;right:14px}
  .hard-grade-priority h3{font-size:36px}
  .hard-grade-trace{grid-template-columns:1fr 1fr}.hard-grade-trace>div{min-height:116px}.hard-grade-trace>div:nth-child(2){border-right:0}.hard-grade-trace>div:nth-child(3){border-top:1px solid rgba(255,255,255,.13)}
  .hard-grade-prove{grid-template-columns:1fr;gap:6px}
  .hard-grade-views,.hard-grade-provenance{padding-left:20px;padding-right:20px}
  .hard-grade-findings{padding-left:14px;padding-right:14px}
  .hard-grade-finding{
    margin-top:10px;
    padding:17px 14px 16px 17px;
    border-radius:12px;
  }
  .hard-grade-finding-head{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:9px;
  }
  .hard-grade-finding h4{
    max-width:none;
    font-size:25px;
    line-height:1.02;
    letter-spacing:-.026em;
  }
  .hard-grade-finding-status{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    align-self:flex-start;
    justify-self:start;
    width:auto!important;
    min-width:0!important;
    max-width:100%;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    padding:5px 8px;
    border-radius:999px;
    background:color-mix(in srgb,var(--finding-accent) 7%,#fff);
    font-size:8px;
    line-height:1;
    letter-spacing:.075em;
    white-space:nowrap;
  }
  .hard-grade-finding>p{
    margin-top:10px;
    font-size:13px;
    line-height:1.45;
  }
  .hard-grade-finding details{
    margin-top:13px;
    padding-top:12px;
  }
  .hard-grade-finding summary{font-size:9px}
  .hard-grade-finding details p{font-size:11px;line-height:1.55}
  .hard-grade-results{padding-bottom:calc(104px + env(safe-area-inset-bottom))}
  .hard-grade-provenance{padding-bottom:calc(54px + env(safe-area-inset-bottom))}
  .hard-grade-unknowns{margin-left:20px;margin-right:20px;grid-template-columns:90px 1fr;gap:20px}.hard-grade-unknown-number{font-size:66px}
  .hard-grade-request{margin-left:20px;margin-right:20px;padding:28px 20px}.hard-grade-request h3{font-size:31px}
  .hard-grade-review-form>div{grid-template-columns:1fr}.hard-grade-review-form .button{width:100%}
  .hard-grade-section-head{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
}

.hard-grade-letter:focus,
.hard-grade-letter:focus-visible{
  outline:none!important;
  box-shadow:none!important;
}

/* First-load choreography: one settle-in, never a looping float. */
.hard-grade-specimen-stack{
  animation:hg-specimen-enter .72s cubic-bezier(.18,.78,.2,1) both;
}
.hard-grade-hero h1{
  animation:hg-hero-copy-enter .62s cubic-bezier(.2,.75,.2,1) .08s both;
}
.hard-grade-sub{
  animation:hg-hero-copy-enter .58s cubic-bezier(.2,.75,.2,1) .14s both;
}
.hard-grade-scan{
  animation:hg-hero-control-enter .56s cubic-bezier(.2,.75,.2,1) .19s both;
}
.hard-grade-micro,
.hard-grade-proof{
  animation:hg-hero-copy-enter .5s cubic-bezier(.2,.75,.2,1) .24s both;
}
@keyframes hg-specimen-enter{
  from{opacity:0;transform:translateY(-14px) scale(.986);filter:blur(3px)}
  to{opacity:1;transform:none;filter:none}
}
@keyframes hg-hero-copy-enter{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:none}
}
@keyframes hg-hero-control-enter{
  from{opacity:0;transform:translateY(10px) scale(.99)}
  to{opacity:1;transform:none}
}


/* ── Product Grade depth pass · night atmosphere + Plot reuse ─────────────── */
.hard-grade-sky{
  color:#f7f9fc;
  background:#174d91 url("/static/hard-sky.svg") center/cover no-repeat;
}
.hard-grade-sky::before{
  background:
    linear-gradient(180deg,rgba(6,25,70,.04),rgba(13,59,126,.015) 48%,rgba(15,57,112,.12) 100%);
}
.hard-grade-sky::after{
  background:
    radial-gradient(ellipse 58% 42% at 50% 82%,rgba(91,174,238,.18),transparent 72%),
    radial-gradient(circle at 50% 40%,transparent 0 42%,rgba(5,27,72,.08) 100%);
  mix-blend-mode:normal;
}
.hard-grade-hero h1{
  color:#f8fbff;
  text-shadow:0 1px 1px rgba(0,0,0,.2),0 14px 44px rgba(0,0,0,.18);
}
.hard-grade-sub{color:rgba(239,246,253,.74)}
.hard-grade-micro{color:rgba(239,246,253,.78)}
.hard-grade-proof{color:rgba(239,246,253,.74)}
.hard-grade-proof i{background:rgba(239,246,253,.58)}
.hard-grade-specimen-shadow{background:rgba(10,50,104,.28)}
.hard-grade-scan{
  box-shadow:
    0 1px 0 rgba(255,255,255,.98) inset,
    0 1px 2px rgba(0,0,0,.14),
    0 22px 50px rgba(0,5,15,.24);
}
.hard-grade-scan:focus-within{
  box-shadow:0 0 0 3px rgba(255,255,255,.2),0 24px 54px rgba(0,5,15,.3);
}
.hard-grade-product-input.input{
  min-height:0;
  border:0;
  border-radius:8px;
  background:transparent;
  box-shadow:none;
  padding:13px 10px;
  color:#111;
  font-family:var(--font-text);
  font-size:13px;
}
.hard-grade-product-input.input:focus,
.hard-grade-product-input.input:focus-visible{
  border:0;
  box-shadow:none;
}
.hard-grade-scan .hard-grade-scan-submit.button.button-primary{
  min-height:38px;
  border:1px solid var(--ink);
  border-radius:8px;
  background:var(--ink);
  color:var(--bg);
  padding:10px 12px;
  box-shadow:
    inset 0 1px 0 hsl(0 0% 100% / .08),
    0 1px 2px hsl(0 0% 0% / .15),
    0 4px 12px hsl(0 0% 0% / .08);
  font-family:var(--font-text);
  font-size:11px;
  font-weight:var(--w-medium);
}
.hard-grade-scan .hard-grade-scan-submit.button.button-primary i{
  width:auto;
  height:auto;
  border-radius:0;
  background:transparent;
  color:inherit;
  font-size:13px;
}

/* Plot design-system primitives are composed, then art-directed here. */
.hard-grade-mockpill.tag{
  padding:4px 7px;
  border-radius:var(--tag-radius);
  font-size:7px;
  line-height:1.2;
  background:var(--tag-bg);
  color:var(--tag-text);
  border-color:var(--color-border-faint);
}
.hard-grade-mockaction.button.button-primary{
  min-height:0;
  padding:7px 10px;
  border-radius:var(--button-radius);
  font-size:7px;
  line-height:1;
  box-shadow:
    inset 0 1px 0 hsl(0 0% 100% / .08),
    0 1px 2px hsl(0 0% 0% / .15),
    0 4px 10px hsl(0 0% 0% / .07);
}

.hard-grade-report-chip.tag,
.hard-grade-score-qualifier.tag,
.hard-grade-finding-status.tag,
.hard-grade-view-qualifier.tag,
.hard-grade-evidence-pill.tag,
.hard-grade-evidence-stages .tag,
.hard-grade-method-tags .tag{
  font-family:var(--hg-sans);
  box-shadow:none;
}
.hard-grade-report-chip.tag{background:transparent;color:var(--grade-on)}
.hard-grade-score-qualifier.tag{background:var(--grade-faint)}
.hard-grade-quiet-btn.button{min-height:0}
.hard-grade-review-form .button.button-primary{min-height:0}

/* Read-the-grade note: Plot .m-callout behavior, editorialized to avoid card chrome. */
.hard-grade-scope-note{
  margin:0 62px;
  padding:19px 0 20px;
  grid-template-columns:26px minmax(0,1fr);
  gap:12px;
  background:transparent;
  border:0;
  border-bottom:1px solid #dededa;
  border-radius:0;
  color:#55554f;
}
.hard-grade-scope-icon{
  color:var(--grade-accent);
  font:500 22px/1 var(--hg-serif);
}
.hard-grade-scope-note strong{
  display:block;
  color:#171714;
  font:500 17px/1.12 var(--hg-serif);
  letter-spacing:-.02em;
}
.hard-grade-scope-note p{
  max-width:76ch;
  margin:5px 0 0;
  color:#6e6e68;
  font-size:10px;
  line-height:1.52;
}

/* More report substance without turning the artifact into a dashboard. */
.hard-grade-section-intro{
  max-width:73ch;
  margin:-13px 0 28px;
  color:#6d6d67;
  font-size:10px;
  line-height:1.58;
}
.hard-grade-findings .hard-grade-section-intro{
  max-width:66ch;
  margin:8px 0 0;
}
.hard-grade-view-row{
  min-height:124px;
  padding:20px 0 18px;
  grid-template-columns:minmax(0,1fr) 78px;
  gap:28px;
  align-items:start;
}
.hard-grade-view-copy>strong{
  font-size:10px;
  letter-spacing:.015em;
}
.hard-grade-view-question{
  max-width:62ch;
  margin:7px 0 0;
  color:#252521;
  font:500 16px/1.24 var(--hg-serif);
  letter-spacing:-.018em;
}
.hard-grade-view-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 11px;
  margin-top:11px;
  color:#85857f;
  font-size:7px;
  line-height:1.3;
}
.hard-grade-view-meta>span:not(.tag){white-space:nowrap}
.hard-grade-view-qualifier.tag{
  padding:3px 6px;
  border-color:color-mix(in srgb,var(--grade-accent) 20%,#ddd);
  background:var(--grade-faint);
  color:var(--grade-ink);
  font-size:6px;
  font-weight:700;
  letter-spacing:.07em;
}
.hard-grade-view-bar{margin-top:12px}
.hard-grade-view-score{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:4px;
  padding-top:2px;
}
.hard-grade-view-score strong{
  color:var(--grade-ink);
  font:500 30px/.92 var(--hg-serif);
}
.hard-grade-view-score span{
  color:#9a9a94;
  font-size:6px;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.hard-grade-evidence-summary{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:22px 0 3px;
  padding:13px 0;
  border-top:1px solid #e1e1dd;
  border-bottom:1px solid #e1e1dd;
}
.hard-grade-evidence-pill.tag{
  padding:5px 8px;
  border-color:color-mix(in srgb,var(--finding-accent,#777) 28%,#ddd);
  background:#fff;
  color:#5f5f59;
  font-size:7px;
  line-height:1;
}
.hard-grade-evidence-pill b{color:#181815;font-size:8px}
.hard-grade-evidence-pill[data-status="pass"]{--finding-accent:var(--status-supported)}
.hard-grade-evidence-pill[data-status="warning"]{--finding-accent:var(--status-warning)}
.hard-grade-evidence-pill[data-status="critical"]{--finding-accent:var(--status-critical)}
.hard-grade-evidence-pill[data-status="unknown"]{--finding-accent:var(--status-unknown)}
.hard-grade-finding-status.tag{
  border-color:color-mix(in srgb,var(--finding-accent) 38%,#ddd);
  background:color-mix(in srgb,var(--finding-accent) 5%,#fff);
}

.hard-grade-evidence-stages{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  margin-top:14px;
}
.hard-grade-evidence-stages .tag{
  padding:5px 8px;
  border-color:#d8d8d4;
  background:#fff;
  color:#33332f;
  font-size:7px;
  font-weight:700;
  letter-spacing:.05em;
}
.hard-grade-evidence-stages i{
  color:#a2a29c;
  font-style:normal;
  font-size:10px;
}
.hard-grade-unknown-note{
  max-width:64ch;
  margin:11px 0 0;
  color:#7b7b75;
  font-size:9px;
  line-height:1.52;
}

/* Human-intent gate: explain the lead flow instead of hiding it behind one field. */
.hard-grade-review-steps{
  position:relative;
  z-index:1;
  max-width:650px;
  margin:22px 0 18px;
  padding:0;
  list-style:none;
  border-bottom:1px solid color-mix(in srgb,var(--grade-on) 15%,transparent);
}
.hard-grade-review-steps li{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:12px;
  padding:11px 0 12px;
  border-top:1px solid color-mix(in srgb,var(--grade-on) 15%,transparent);
}
.hard-grade-review-steps li>span{
  color:color-mix(in srgb,var(--grade-on) 48%,transparent);
  font:700 7px/1.3 var(--hg-sans);
  letter-spacing:.12em;
}
.hard-grade-review-steps strong{
  display:block;
  color:var(--grade-on);
  font-size:9px;
}
.hard-grade-review-steps small{
  display:block;
  margin-top:3px;
  color:color-mix(in srgb,var(--grade-on) 66%,transparent);
  font-size:8px;
  line-height:1.45;
}

/* Method provenance and exactly which bounded surfaces were inspected. */
.hard-grade-provenance>h3{
  max-width:24ch;
  margin:5px 0 12px;
  font:500 26px/1.04 var(--hg-serif);
  letter-spacing:-.03em;
}
.hard-grade-method-note{
  max-width:72ch!important;
  margin:12px 0 0!important;
  padding-left:12px;
  border-left:2px solid var(--grade-accent);
  color:#6f6f69!important;
  font-size:9px!important;
  line-height:1.55!important;
}
.hard-grade-method-note strong{color:#343430}
.hard-grade-method-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:16px;
}
.hard-grade-method-tags .tag{
  padding:5px 8px;
  background:#fafaf8;
  border-color:#dededa;
  color:#575751;
  font-size:7px;
}
.hard-grade-surface-disclosure{
  margin-top:17px;
  border-top:1px solid #dededa;
  border-bottom:1px solid #dededa;
}
.hard-grade-surface-disclosure summary{
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding:12px 0;
  color:#292925;
  font-size:8px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  cursor:pointer;
}
.hard-grade-surface-disclosure summary span{color:var(--grade-ink)}
.hard-grade-surface-row{
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  gap:8px;
  padding:9px 0;
  border-top:1px solid #ecece8;
}
.hard-grade-surface-row>span{
  color:#a0a09a;
  font:700 7px/1.5 var(--hg-sans);
}
.hard-grade-surface-row code{
  min-width:0;
  overflow-wrap:anywhere;
  color:#575751;
  font:400 8px/1.45 var(--font-mono);
  background:transparent;
  border:0;
  padding:0;
}
.hard-grade-source-links{margin-top:17px}
.hard-grade-source-links .link-arrow{
  border-bottom:0;
  padding-bottom:0;
}
.hard-grade-ui-provenance{
  max-width:72ch!important;
  margin:13px 0 0!important;
  color:#8a8a84!important;
  font-size:8px!important;
  line-height:1.5!important;
}
.hard-grade-ui-provenance .link-arrow{
  display:inline;
  color:#44443f;
  border-bottom:0;
  padding-bottom:0;
  font:inherit;
  letter-spacing:inherit;
}

@media(max-width:760px){
  .hard-grade-sky{background-position:50% top}
  .hard-grade-hero h1{font-size:39px}
  .hard-grade-sub{max-width:330px;color:rgba(239,246,253,.76)}
  .hard-grade-proof{color:rgba(239,246,253,.78)}
  .hard-grade-scope-note{
    margin:0 20px;
    padding:18px 0 19px;
  }
  .hard-grade-scope-note strong{font-size:18px}
  .hard-grade-scope-note p{font-size:11px}
  .hard-grade-section-intro{
    margin:-14px 0 22px;
    font-size:11px;
    line-height:1.55;
  }
  .hard-grade-findings .hard-grade-section-intro{margin-top:8px}
  .hard-grade-view-row{
    grid-template-columns:1fr;
    gap:11px;
    padding:20px 0;
  }
  .hard-grade-view-question{font-size:18px;line-height:1.18}
  .hard-grade-view-meta{gap:7px 10px;font-size:8px}
  .hard-grade-view-score{
    justify-self:start;
    flex-direction:row;
    align-items:baseline;
    gap:6px;
  }
  .hard-grade-view-score strong{font-size:30px}
  .hard-grade-evidence-summary{margin-top:18px}
  .hard-grade-evidence-pill.tag{font-size:8px}
  .hard-grade-evidence-stages{gap:6px}
  .hard-grade-evidence-stages i{display:none}
  .hard-grade-unknown-note{font-size:10px}
  .hard-grade-review-steps{margin-top:19px}
  .hard-grade-review-steps li{grid-template-columns:30px 1fr}
  .hard-grade-review-steps strong{font-size:10px}
  .hard-grade-review-steps small{font-size:9px}
  .hard-grade-provenance>h3{font-size:27px}
  .hard-grade-method-tags .tag{font-size:8px}
  .hard-grade-surface-row{grid-template-columns:24px 1fr}
  .hard-grade-surface-row code{font-size:9px}
}


/* ── Report utility + readability audit pass ────────────────────────────────
   Decorative specimen microcopy may stay miniature. Anything that communicates
   report meaning, evidence, posture, method, or an action must remain readable. */
.hard-grade-report-actions{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px 28px;
  align-items:center;
  margin:0 62px;
  padding:22px 0 21px;
  border-bottom:1px solid #dededa;
}
.hard-grade-report-actions-copy strong{
  display:block;
  color:#171714;
  font:500 17px/1.15 var(--hg-serif);
  letter-spacing:-.018em;
}
.hard-grade-report-actions-copy span{
  display:block;
  max-width:68ch;
  margin-top:5px;
  color:#6c6c66;
  font-size:11px;
  line-height:1.5;
}
.hard-grade-report-actions-controls{
  display:flex;
  align-items:center;
  gap:8px;
}
.hard-grade-report-actions-controls .button{
  min-height:40px;
  gap:8px;
  font-size:11px;
  white-space:nowrap;
}
.hard-grade-report-actions-controls .button i{
  font-style:normal;
  font-size:13px;
}
.hard-grade-report-actions-controls [aria-disabled="true"]{
  opacity:.45;
  pointer-events:none;
}
.hard-grade-share-status{
  grid-column:1/-1;
  min-height:0;
  margin:-8px 0 0;
  color:#777771;
  font-size:10px;
  line-height:1.4;
}
.hard-grade-share-status a{
  color:#44443f;
  overflow-wrap:anywhere;
  word-break:break-word;
}

/* Cover: preserve compression, remove sub-9px semantic text. */
.hard-grade-cover-topline,
.hard-grade-cover-footer{font-size:10px}
.hard-grade-company{font-size:10px}
.hard-grade-report-chip{font-size:9px}
.hard-grade-score-label p{font-size:11px}
.hard-grade-score-label span{font-size:9px}
.hard-grade-score-scale{font-size:9px}
.hard-grade-posture span{font-size:9px}
.hard-grade-posture strong{font-size:12px}
.hard-grade-posture small{font-size:11px;line-height:1.45}
.hard-grade-meta span{font-size:9px;line-height:1.25}

/* Priority: these are review instructions, not decoration. */
.hard-grade-priority-copy>p:last-child{font-size:12px;line-height:1.6}
.hard-grade-trace span,
.hard-grade-prove span{font-size:9px}
.hard-grade-trace p{font-size:11.5px;line-height:1.58}
.hard-grade-claim-limit{font-size:10.5px;line-height:1.55}

/* Report sections. */
.hard-grade-section-kicker p{font-size:10px}
.hard-grade-scope-note p{font-size:11.5px;line-height:1.58}
.hard-grade-section-intro{font-size:11.5px;line-height:1.6}
.hard-grade-view-copy>strong{font-size:11px}
.hard-grade-view-meta{font-size:10px;line-height:1.4}
.hard-grade-view-qualifier.tag{font-size:8.5px;line-height:1.15}
.hard-grade-view-score span{font-size:8px}
.hard-grade-evidence-pill.tag{font-size:9px;line-height:1.1}
.hard-grade-evidence-pill b{font-size:10px}
.hard-grade-finding-status{font-size:9px}
.hard-grade-finding>p{font-size:11.5px;line-height:1.58}
.hard-grade-finding summary{font-size:10px}
.hard-grade-finding details p{font-size:11px;line-height:1.6}
.hard-grade-unknowns>div:last-child>p:last-child{font-size:11.5px;line-height:1.58}
.hard-grade-evidence-stages .tag{font-size:9.5px}
.hard-grade-unknown-note{font-size:11px;line-height:1.58}

/* Review request and method boundary contain consequential process text. */
.hard-grade-request-badge{font-size:9px}
.hard-grade-request>p{font-size:11.5px;line-height:1.58}
.hard-grade-review-form label{font-size:9px}
.hard-grade-review-input.input{font-size:12px}
.hard-grade-review-form .button.button-primary{font-size:11px}
.hard-grade-request-status,
.hard-grade-preview-link{font-size:10px!important;line-height:1.45}
.hard-grade-review-steps li>span{font-size:9px}
.hard-grade-review-steps strong{font-size:11px}
.hard-grade-review-steps small{font-size:10.5px;line-height:1.5}

.hard-grade-provenance>p{font-size:11px;line-height:1.6}
.hard-grade-source-links a{font-size:10.5px}
.hard-grade-method-note{font-size:11px!important;line-height:1.6!important}
.hard-grade-method-tags .tag{font-size:9px}
.hard-grade-surface-disclosure summary{font-size:10px}
.hard-grade-surface-row>span{font-size:9px}
.hard-grade-surface-row code{font-size:10px;line-height:1.55}
.hard-grade-ui-provenance{font-size:10px!important;line-height:1.55!important}

/* Semantic contrast floor: small report text stays legible, not merely present. */
.hard-grade-results{
  --status-warning:#946000;
  --status-unknown:#6f6f69;
}
.hard-grade-score-scale{color:#6f6f69}
.hard-grade-posture span{color:#6d6d67}
.hard-grade-posture small{color:#62625d}
.hard-grade-meta span{color:#6f6f69}
.hard-grade-view-meta{color:#6f6f69}
.hard-grade-view-score span{color:#70706a}
.hard-grade-provenance>p{color:#6f6f69}
.hard-grade-unknown-note{color:#6f6f69}
.hard-grade-ui-provenance{color:#6f6f69!important}
.hard-grade-share-status{color:#6f6f69}
.hard-grade-claim-limit{color:#8e8e88}
.hard-grade-trace span,
.hard-grade-prove span{color:#a8a8a3}

.hard-grade-request .hard-grade-eyebrow,
.hard-grade-review-form label,
.hard-grade-review-steps li>span{
  color:color-mix(in srgb,var(--grade-on) 94%,transparent);
}
.hard-grade-request>p,
.hard-grade-review-steps small,
.hard-grade-request-status,
.hard-grade-preview-link{
  color:color-mix(in srgb,var(--grade-on) 92%,transparent)!important;
}

/* Semantic microcopy floor: report meaning never drops below 10px. */
.hard-grade-eyebrow{font-size:10px}
.hard-grade-analysis-inner p span{font-size:10px}
.hard-grade-report-chip{font-size:10px}
.hard-grade-score-label span{font-size:10px}
.hard-grade-score-scale{font-size:10px}
.hard-grade-posture span{font-size:10px}
.hard-grade-meta span{font-size:10px}
.hard-grade-trace span,
.hard-grade-prove span{font-size:10px}
.hard-grade-quiet-btn{font-size:10.5px}
.hard-grade-view-qualifier.tag{font-size:10px}
.hard-grade-view-score span{font-size:10px}
.hard-grade-evidence-pill.tag{font-size:10px}
.hard-grade-finding-status{font-size:10px}
.hard-grade-evidence-stages .tag{font-size:10px}
.hard-grade-request-badge{font-size:10px}
.hard-grade-review-form label{font-size:10px}
.hard-grade-review-steps li>span{font-size:10px}
.hard-grade-method-tags .tag{font-size:10px}
.hard-grade-surface-row>span{font-size:10px}

/* Acquisition trust copy remains secondary but should not require squinting. */
.hard-grade-micro{font-size:10px}
.hard-grade-proof{font-size:9.5px}

@media(max-width:760px){
  .hard-grade-report-actions{
    grid-template-columns:1fr;
    gap:14px;
    margin:0 20px;
    padding:20px 0;
  }
  .hard-grade-report-actions-copy strong{font-size:18px}
  .hard-grade-report-actions-copy span{font-size:12px}
  .hard-grade-report-actions-controls{
    display:grid;
    grid-template-columns:1fr 1fr;
    width:100%;
  }
  .hard-grade-report-actions-controls .button{
    width:100%;
    min-height:44px;
    font-size:11px;
  }
  .hard-grade-share-status{margin:-4px 0 0;font-size:11px}

  .hard-grade-cover-topline,
  .hard-grade-cover-footer,
  .hard-grade-company{font-size:10px}
  .hard-grade-score-label p{font-size:10px}
  .hard-grade-score-label span{font-size:10px}
  .hard-grade-score-scale{font-size:10px}
  .hard-grade-posture span{font-size:10px}
  .hard-grade-posture strong{font-size:12px}
  .hard-grade-posture small{font-size:11px}
  .hard-grade-meta span{font-size:10px}

  .hard-grade-trace span,
  .hard-grade-prove span{font-size:10px}
  .hard-grade-trace p{font-size:12px;line-height:1.58}
  .hard-grade-claim-limit{font-size:11px}

  .hard-grade-section-kicker p{font-size:10px}
  .hard-grade-view-meta{font-size:10px}
  .hard-grade-view-qualifier.tag{font-size:10px}
  .hard-grade-evidence-pill.tag{font-size:10px}
  .hard-grade-finding-status{font-size:10px}
  .hard-grade-finding summary{font-size:10px}
  .hard-grade-finding details p{font-size:12px;line-height:1.62}
  .hard-grade-evidence-stages .tag{font-size:10px}
  .hard-grade-review-steps strong{font-size:11px}
  .hard-grade-review-steps small{font-size:10.5px}
  .hard-grade-method-tags .tag{font-size:10px}
  .hard-grade-surface-disclosure summary{font-size:10px}
  .hard-grade-surface-row>span{font-size:10px}
  .hard-grade-surface-row code{font-size:10px}
}


/* Final readability calibration after real 1440px / 390px screenshot review. */
.hard-grade-report-actions-copy span{font-size:12px;line-height:1.55}
.hard-grade-report-actions-controls .button{font-size:12px}
.hard-grade-share-status{font-size:11px}

.hard-grade-scope-note p{font-size:12px}
.hard-grade-section-intro{font-size:12px}
.hard-grade-view-meta{font-size:11px;gap:7px 12px}
.hard-grade-view-qualifier.tag{font-size:10.5px}
.hard-grade-view-score span{font-size:10.5px}

.hard-grade-finding>p{font-size:12px}
.hard-grade-finding details p{font-size:11.5px}
.hard-grade-unknowns>div:last-child>p:last-child{font-size:12px}
.hard-grade-unknown-note{font-size:11.5px}
.hard-grade-claim-limit{font-size:11px}

.hard-grade-request>p{font-size:12px}
.hard-grade-review-steps small{font-size:11px}
.hard-grade-provenance>p{font-size:11.5px}
.hard-grade-method-note{font-size:11.5px!important}
.hard-grade-source-links a{font-size:11px}
.hard-grade-surface-row code{font-size:10.5px}
.hard-grade-ui-provenance{font-size:11px!important}
.hard-grade-proof{font-size:10px}

@media(max-width:760px){
  .hard-grade-report-actions-copy span{font-size:12px}
  .hard-grade-report-actions-controls .button{font-size:12px}
  .hard-grade-view-meta{font-size:11px}
  .hard-grade-view-qualifier.tag{font-size:10.5px}
  .hard-grade-finding details p{font-size:12px}
  .hard-grade-review-steps small{font-size:11px}
  .hard-grade-source-links a{font-size:11px}
  .hard-grade-surface-row code{font-size:10.5px}
}


/* Four-view evidence metadata is decision-supporting data, not decorative microcopy. */
.hard-grade-view-meta{
  color:#5d5d57;
  font-size:12px;
  line-height:1.45;
  gap:8px 14px;
}
.hard-grade-view-qualifier.tag{font-size:10.5px}
.hard-grade-view-score span{font-size:10.5px}
@media(max-width:760px){
  .hard-grade-view-meta{
    font-size:12px;
    gap:7px 12px;
  }
}


/* Specificity fix: legacy .hard-grade-view-copy span set these to 8px directly. */
.hard-grade-view-copy .hard-grade-view-meta>span:not(.tag){
  display:inline;
  margin-top:0;
  color:#5d5d57;
  font-size:12px;
  line-height:1.45;
  white-space:nowrap;
}
@media(max-width:760px){
  .hard-grade-view-copy .hard-grade-view-meta>span:not(.tag){
    font-size:12px;
  }
}


/* ── Product-grade continuity + export polish ───────────────────────────────
   One atmospheric world: sapphire acquisition -> pale blue mist -> warm paper. */
.page-hard-report{
  background:#f5f0ea;
  overflow-x:hidden;
}
.hard-grade-page{
  position:relative;
  background:
    linear-gradient(180deg,#164f93 0 22%,#70a8d8 31%,#dce7ef 39%,#f2ebe4 48%,#f7f3ee 62%,#fff 100%);
}
.hard-grade-sky{
  box-shadow:none;
}
.hard-grade-sky::before{
  background:
    linear-gradient(
      180deg,
      rgba(5,25,70,.02) 0%,
      rgba(12,58,124,.01) 54%,
      rgba(101,157,207,.10) 70%,
      rgba(194,216,233,.42) 82%,
      rgba(215,229,239,.82) 92%,
      #e3eaf0 100%
    );
}
.hard-grade-sky::after{
  background:
    radial-gradient(ellipse 56% 34% at 50% 72%,rgba(118,190,240,.24),transparent 72%),
    radial-gradient(ellipse 86% 24% at 50% 100%,rgba(238,236,231,.82),transparent 72%),
    radial-gradient(circle at 50% 38%,transparent 0 42%,rgba(5,27,72,.06) 100%);
}
.hard-grade-hero{
  isolation:isolate;
}
.hard-grade-hero::after{
  content:"";
  position:absolute;
  z-index:0;
  left:50%;
  bottom:-1px;
  width:100vw;
  height:clamp(128px,16vh,200px);
  transform:translateX(-50%);
  pointer-events:none;
  background:
    radial-gradient(ellipse 72% 70% at 50% 100%,rgba(227,234,240,.98) 0%,rgba(207,225,238,.70) 52%,transparent 78%),
    linear-gradient(180deg,transparent 0%,rgba(207,224,237,.18) 34%,#e3eaf0 100%);
}
.hard-grade-scan,
.hard-grade-micro,
.hard-grade-proof{
  position:relative;
  z-index:2;
}

.hard-grade-results{
  position:relative;
  isolation:isolate;
  margin-top:-1px;
  background:
    radial-gradient(ellipse 72% 310px at 50% 0%,rgba(91,153,211,.20) 0%,rgba(167,200,226,.13) 38%,transparent 76%),
    radial-gradient(ellipse 50% 240px at 8% 5%,rgba(255,255,255,.62),transparent 78%),
    radial-gradient(ellipse 50% 240px at 92% 4%,rgba(255,255,255,.58),transparent 78%),
    linear-gradient(180deg,#e3eaf0 0%,#eee9e5 190px,#f6f1ec 520px,#fff 1320px);
}
.hard-grade-results::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0 0 auto;
  height:520px;
  pointer-events:none;
  background:
    radial-gradient(ellipse 44% 210px at 50% 0%,color-mix(in srgb,var(--grade-accent) 7%,transparent),transparent 75%);
  opacity:.8;
}
.hard-grade-report{
  position:relative;
  z-index:1;
  border-color:rgba(255,255,255,.82);
  box-shadow:
    0 1px 0 rgba(255,255,255,.98) inset,
    0 2px 4px rgba(17,17,17,.04),
    0 32px 80px rgba(49,70,88,.10),
    0 54px 130px color-mix(in srgb,var(--grade-accent) 9%,transparent);
}

/* Grade cover gets material depth rather than reading as a flat tinted card. */
.hard-grade-cover-color{
  background:
    radial-gradient(circle at 77% 15%,color-mix(in srgb,var(--grade-accent-2) 68%,#fff) 0 7%,transparent 30%),
    radial-gradient(ellipse 82% 55% at 5% 105%,color-mix(in srgb,var(--grade-accent) 84%,#000) 0%,transparent 72%),
    linear-gradient(145deg,
      color-mix(in srgb,var(--grade-accent-2) 92%,#fff) 0%,
      var(--grade-accent) 48%,
      color-mix(in srgb,var(--grade-accent) 76%,#111) 100%);
}
.hard-grade-cover-color::before{
  content:"";
  position:absolute;
  z-index:0;
  width:76%;
  aspect-ratio:1.25;
  left:-21%;
  bottom:-31%;
  border-radius:50%;
  background:
    radial-gradient(circle at 54% 36%,color-mix(in srgb,var(--grade-on) 12%,transparent),transparent 61%);
  filter:blur(2px);
  pointer-events:none;
}
.hard-grade-cover-color::after{
  inset:auto -26% -34% auto;
  width:98%;
  aspect-ratio:1.08;
  border-color:color-mix(in srgb,var(--grade-on) 18%,transparent);
  box-shadow:
    0 0 0 42px color-mix(in srgb,var(--grade-on) 4%,transparent),
    0 0 0 86px color-mix(in srgb,var(--grade-on) 2.5%,transparent);
  transform:rotate(-8deg);
  opacity:.62;
}
.hard-grade-cover-detail{
  background:
    radial-gradient(ellipse 70% 34% at 100% 0%,color-mix(in srgb,var(--grade-faint) 70%,transparent),transparent 78%),
    linear-gradient(145deg,#fff 0%,color-mix(in srgb,var(--grade-faint) 38%,#fff) 100%);
}

/* Export actions are compact tools, not another CTA block. */
.hard-grade-report-actions{
  background:
    linear-gradient(180deg,rgba(255,255,255,.94),rgba(252,251,248,.92));
}
.hard-grade-report-actions-controls{
  gap:9px;
}
.hard-grade-report-actions-controls .hard-grade-tool{
  min-height:42px;
  padding:0 14px;
  border-radius:999px;
  gap:8px;
  letter-spacing:-.005em;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    0 1px 2px rgba(17,17,17,.05),
    0 8px 22px rgba(32,42,52,.06);
}
.hard-grade-report-actions-controls .hard-grade-tool.button-secondary{
  background:rgba(255,255,255,.72);
  border-color:rgba(17,17,17,.14);
  backdrop-filter:blur(12px);
}
.hard-grade-report-actions-controls .hard-grade-tool.button-primary{
  background:#171715;
  border-color:#171715;
  color:#fff;
}
.hard-grade-tool-icon{
  width:16px;
  height:16px;
  flex:0 0 16px;
}
.hard-grade-report-actions-controls .hard-grade-tool:hover{
  transform:translateY(-1px);
}
.hard-grade-report-actions-controls .hard-grade-tool:active{
  transform:translateY(0);
}

/* Mobile browser chrome can overlap the visual viewport; provide real top air. */
@media(max-width:760px){
  .hard-grade-hero{
    padding-top:max(62px,calc(40px + env(safe-area-inset-top)));
    padding-bottom:70px;
  }
  .hard-grade-specimen-stack{
    width:94vw;
  }
  .hard-grade-results{
    padding-top:54px;
    background:
      radial-gradient(ellipse 110% 260px at 50% 0%,rgba(94,155,211,.21),transparent 72%),
      linear-gradient(180deg,#e0e9f1 0%,#efe9e4 180px,#f6f1ec 420px,#fff 1080px);
  }
  .hard-grade-report-actions-controls{
    grid-template-columns:1fr 1fr;
    gap:9px;
  }
  .hard-grade-report-actions-controls .hard-grade-tool{
    min-height:46px;
    justify-content:center;
    padding-inline:12px;
    font-size:12px;
  }
  .hard-grade-tool-icon{
    width:17px;
    height:17px;
    flex-basis:17px;
  }
}

/* Same-DOM PDF mode: Chromium prints the actual report route, not a second design. */
html[data-hard-print="true"],
html[data-hard-print="true"] body{
  background:#f5f0ea!important;
}
html[data-hard-print="true"]{
  scroll-behavior:auto!important;
}
html[data-hard-print="true"] .hard-grade-report-actions{
  display:none!important;
}
html[data-hard-print="true"] .hard-grade-results,
html[data-hard-print="true"] .hard-grade-report,
html[data-hard-print="true"] .hard-grade-cover,
html[data-hard-print="true"] .hard-grade-priority,
html[data-hard-print="true"] .hard-grade-views,
html[data-hard-print="true"] .hard-grade-findings,
html[data-hard-print="true"] .hard-grade-unknowns,
html[data-hard-print="true"] .hard-grade-request,
html[data-hard-print="true"] .hard-grade-provenance{
  animation:none!important;
  transition:none!important;
}
html[data-hard-print="true"] .hard-grade-report{
  box-shadow:none;
}

@media print{
  @page{
    size:A4 portrait;
    margin:0;
  }
  html,
  body{
    margin:0!important;
    padding:0!important;
    background:#f5f0ea!important;
  }
  *,
  *::before,
  *::after{
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
    animation:none!important;
    transition:none!important;
  }
  .hard-grade-report-actions{
    display:none!important;
  }
  .hard-grade-results{
    padding-bottom:72px;
  }
  .hard-grade-report{
    box-shadow:none!important;
  }
  .hard-grade-finding,
  .hard-grade-view-row,
  .hard-grade-scope-note,
  .hard-grade-unknowns,
  .hard-grade-request{
    break-inside:avoid;
    page-break-inside:avoid;
  }
}


/* Final mobile rhythm + print pagination polish from real artifact review. */
@media(max-width:760px){
  .hard-grade-sky,
  .hard-grade-hero{
    min-height:min(100svh,780px);
  }
}
@media print{
  .hard-grade-sky,
  .hard-grade-hero{
    width:100%!important;
    height:297mm!important;
    min-height:297mm!important;
    max-height:297mm!important;
  }
  .hard-grade-hero{
    box-sizing:border-box;
    padding-top:12mm;
    padding-bottom:18mm;
  }
  .hard-grade-results{
    break-before:page;
    page-break-before:always;
  }
  .hard-grade-priority{
    break-before:page;
    page-break-before:always;
  }
  .hard-grade-section-kicker,
  .hard-grade-priority-copy{
    break-after:avoid;
    page-break-after:avoid;
  }
  .hard-grade-finding h4,
  .hard-grade-view-question{
    break-after:avoid;
    page-break-after:avoid;
  }
}


/* Final PDF cleanup: complete evidence, no browser-only controls or blank tail page. */
@media print{
  html[data-hard-print="true"] [data-hard-toggle-findings]{
    display:none!important;
  }
  html[data-hard-print="true"] .hard-grade-results{
    padding-bottom:0!important;
    margin-bottom:0!important;
  }
  html[data-hard-print="true"] .hard-grade-provenance{
    padding-bottom:0!important;
    margin-bottom:0!important;
  }
}


/* ── Deep continuity + physical document pass ───────────────────────────────
   Screen: the report now rises out of the hero atmosphere instead of starting
   as a second painted section. Print: the same DOM is re-typeset as a report. */
.hard-grade-print-cover-meta{display:none}

.hard-grade-results:not([hidden]){
  position:relative;
  z-index:3;
  overflow-x:clip;
  margin-top:-190px;
  padding-top:132px;
  background:
    linear-gradient(
      180deg,
      rgba(227,234,240,0) 0,
      rgba(227,234,240,.24) 44px,
      rgba(227,234,240,.66) 104px,
      rgba(239,235,231,.94) 198px,
      #f6f1ec 510px,
      #fff 1320px
    );
}
.hard-grade-results:not([hidden])::after{
  content:"";
  position:absolute;
  z-index:-1;
  top:-54px;
  left:50%;
  width:min(1240px,108vw);
  height:310px;
  transform:translateX(-50%);
  pointer-events:none;
  background:
    radial-gradient(ellipse 64% 56% at 50% 34%,rgba(209,228,242,.52),transparent 72%),
    radial-gradient(ellipse 84% 54% at 50% 100%,rgba(246,240,234,.86),transparent 78%);
  filter:blur(1px);
}
.hard-grade-results:not([hidden]) .hard-grade-report{
  box-shadow:
    0 1px 0 rgba(255,255,255,.98) inset,
    0 2px 5px rgba(17,17,17,.035),
    0 34px 92px rgba(45,64,80,.115),
    0 70px 160px color-mix(in srgb,var(--grade-accent) 8%,transparent);
}

@media(max-width:760px){
  .hard-grade-results:not([hidden]){
    margin-top:-150px;
    padding-top:108px;
    background:
      linear-gradient(
        180deg,
        rgba(227,234,240,0) 0,
        rgba(227,234,240,.28) 38px,
        rgba(226,234,240,.72) 88px,
        rgba(240,235,230,.96) 168px,
        #f6f1ec 390px,
        #fff 1020px
      );
  }
  .hard-grade-results:not([hidden])::after{
    top:-34px;
    width:100vw;
    height:230px;
  }
}

/* Physical-document mode. The visual system stays the same, but interactive
   landing-page grammar is replaced by print hierarchy and readable measures. */
@media print{
  html[data-hard-print="true"],
  html[data-hard-print="true"] body,
  html[data-hard-print="true"] .hard-grade-page{
    background:#fff!important;
  }

  html[data-hard-print="true"] .hard-grade-results{
    margin-top:0!important;
    padding:0!important;
    background:#fff!important;
  }
  html[data-hard-print="true"] .hard-grade-results::before,
  html[data-hard-print="true"] .hard-grade-results::after{
    display:none!important;
  }

  /* Page 1 — actual report cover, not a marketing form. */
  html[data-hard-print="true"] .hard-grade-hero{
    justify-content:flex-start!important;
    align-items:center!important;
    box-sizing:border-box;
    padding:18mm 18mm 16mm!important;
    text-align:left!important;
  }
  html[data-hard-print="true"] .hard-grade-hero>h1,
  html[data-hard-print="true"] .hard-grade-sub,
  html[data-hard-print="true"] .hard-grade-scan,
  html[data-hard-print="true"] .hard-grade-micro,
  html[data-hard-print="true"] .hard-grade-proof{
    display:none!important;
  }
  html[data-hard-print="true"] .hard-grade-specimen-stack{
    width:158mm!important;
    max-width:158mm!important;
    margin:0 auto 12mm!important;
    transform:none!important;
    flex:0 0 auto;
  }
  html[data-hard-print="true"] .hard-grade-print-cover-meta{
    display:block;
    width:158mm;
    margin:0 auto;
    color:#fff;
    text-align:left;
  }
  .hard-grade-print-kicker{
    margin:0 0 6mm;
    font:700 9.5pt/1.2 var(--hg-sans);
    letter-spacing:.13em;
    text-transform:uppercase;
    color:rgba(255,255,255,.76);
  }
  .hard-grade-print-cover-meta h2{
    margin:0;
    color:#fff;
    font:500 34pt/.95 var(--hg-serif);
    letter-spacing:-.045em;
  }
  .hard-grade-print-cover-meta h3{
    max-width:150mm;
    margin:5mm 0 0;
    color:#fff;
    font:500 20pt/1.05 var(--hg-serif);
    letter-spacing:-.025em;
  }
  .hard-grade-print-meta{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:5mm 10mm;
    margin:11mm 0 0;
    padding-top:6mm;
    border-top:.25mm solid rgba(255,255,255,.28);
  }
  .hard-grade-print-meta>div:last-child{grid-column:1/-1}
  .hard-grade-print-meta dt{
    margin:0;
    color:rgba(255,255,255,.62);
    font:700 7.5pt/1.2 var(--hg-sans);
    letter-spacing:.12em;
    text-transform:uppercase;
  }
  .hard-grade-print-meta dd{
    margin:2mm 0 0;
    color:#fff;
    font:400 10.5pt/1.4 var(--hg-sans);
    overflow-wrap:anywhere;
  }
  .hard-grade-print-boundary{
    max-width:145mm;
    margin:9mm 0 0;
    color:rgba(255,255,255,.78);
    font:400 9.5pt/1.5 var(--hg-sans);
  }

  /* Page 2 — executive Product Signal summary. */
  html[data-hard-print="true"] .hard-grade-report{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    overflow:visible!important;
    box-shadow:none!important;
    background:#fff!important;
  }
  html[data-hard-print="true"] .hard-grade-cover{
    width:100%;
    height:297mm!important;
    min-height:297mm!important;
    max-height:297mm!important;
    box-sizing:border-box;
    border:0!important;
    break-after:page;
    page-break-after:always;
  }
  html[data-hard-print="true"] .hard-grade-cover-color{
    padding:18mm 14mm!important;
  }
  html[data-hard-print="true"] .hard-grade-cover-detail{
    padding:24mm 16mm!important;
  }
  html[data-hard-print="true"] .hard-grade-cover-topline,
  html[data-hard-print="true"] .hard-grade-cover-footer{
    font-size:9pt!important;
  }
  html[data-hard-print="true"] .hard-grade-company,
  html[data-hard-print="true"] .hard-grade-report-chip{
    font-size:8.5pt!important;
  }
  html[data-hard-print="true"] .hard-grade-letter{
    font-size:150pt!important;
  }
  html[data-hard-print="true"] .hard-grade-letter-shadow{
    font-size:170pt!important;
  }
  html[data-hard-print="true"] .hard-grade-score{
    font-size:44pt!important;
  }
  html[data-hard-print="true"] .hard-grade-score-label p,
  html[data-hard-print="true"] .hard-grade-score-label span,
  html[data-hard-print="true"] .hard-grade-score-scale,
  html[data-hard-print="true"] .hard-grade-posture span,
  html[data-hard-print="true"] .hard-grade-meta span{
    font-size:8.5pt!important;
  }
  html[data-hard-print="true"] .hard-grade-cover-detail>h2{
    max-width:18ch;
    font-size:28pt!important;
    line-height:1.02!important;
  }
  html[data-hard-print="true"] .hard-grade-posture strong{
    font-size:10pt!important;
  }
  html[data-hard-print="true"] .hard-grade-posture small{
    font-size:9pt!important;
    line-height:1.45!important;
  }
  html[data-hard-print="true"] .hard-grade-meta strong{
    font-size:19pt!important;
  }
  html[data-hard-print="true"] .hard-grade-scope-note{
    display:none!important;
  }

  /* Page 3 — consequential decision as a full editorial spread. */
  html[data-hard-print="true"] .hard-grade-priority{
    width:100%;
    min-height:297mm;
    box-sizing:border-box;
    margin:0!important;
    padding:22mm 16mm!important;
    display:flex;
    flex-direction:column;
    justify-content:center;
    break-before:page;
    page-break-before:always;
    break-after:page;
    page-break-after:always;
  }
  html[data-hard-print="true"] .hard-grade-priority h3{
    max-width:16ch;
    font-size:34pt!important;
    line-height:.98!important;
  }
  html[data-hard-print="true"] .hard-grade-priority-copy>p:last-child{
    max-width:150mm;
    font-size:10.5pt!important;
    line-height:1.55!important;
  }
  html[data-hard-print="true"] .hard-grade-trace{
    margin-top:14mm;
  }
  html[data-hard-print="true"] .hard-grade-trace span,
  html[data-hard-print="true"] .hard-grade-prove span{
    font-size:7.5pt!important;
  }
  html[data-hard-print="true"] .hard-grade-trace p{
    font-size:9.5pt!important;
    line-height:1.55!important;
  }
  html[data-hard-print="true"] .hard-grade-prove strong{
    font-size:14pt!important;
  }
  html[data-hard-print="true"] .hard-grade-claim-limit{
    font-size:8.5pt!important;
    line-height:1.5!important;
  }

  /* Reading sections: generous margins and physical-report type sizes. */
  html[data-hard-print="true"] .hard-grade-views,
  html[data-hard-print="true"] .hard-grade-findings,
  html[data-hard-print="true"] .hard-grade-provenance{
    box-sizing:border-box;
    padding:20mm 16mm 15mm!important;
  }
  html[data-hard-print="true"] .hard-grade-views{
    break-before:page;
    page-break-before:always;
  }
  html[data-hard-print="true"] .hard-grade-findings{
    break-before:page;
    page-break-before:always;
  }
  html[data-hard-print="true"] .hard-grade-provenance{
    break-before:page;
    page-break-before:always;
  }
  html[data-hard-print="true"] .hard-grade-section-kicker{
    margin-bottom:5mm;
  }
  html[data-hard-print="true"] .hard-grade-section-kicker span{
    font-size:24pt!important;
  }
  html[data-hard-print="true"] .hard-grade-section-kicker p{
    font-size:8pt!important;
  }
  html[data-hard-print="true"] .hard-grade-views>h3,
  html[data-hard-print="true"] .hard-grade-findings h3,
  html[data-hard-print="true"] .hard-grade-provenance>h3{
    max-width:18ch;
    margin-bottom:7mm!important;
    font-size:25pt!important;
    line-height:1.02!important;
  }
  html[data-hard-print="true"] .hard-grade-section-intro,
  html[data-hard-print="true"] .hard-grade-provenance>p,
  html[data-hard-print="true"] .hard-grade-method-note,
  html[data-hard-print="true"] .hard-grade-ui-provenance{
    max-width:148mm!important;
    font-size:10.5pt!important;
    line-height:1.55!important;
  }

  html[data-hard-print="true"] .hard-grade-view-row{
    min-height:28mm;
    padding:6mm 0!important;
    gap:8mm;
  }
  html[data-hard-print="true"] .hard-grade-view-copy>strong{
    font-size:9.5pt!important;
  }
  html[data-hard-print="true"] .hard-grade-view-question{
    max-width:135mm;
    margin-top:2.5mm;
    font-size:14pt!important;
    line-height:1.25!important;
  }
  html[data-hard-print="true"] .hard-grade-view-meta,
  html[data-hard-print="true"] .hard-grade-view-copy .hard-grade-view-meta>span:not(.tag){
    font-size:8.5pt!important;
    line-height:1.45!important;
  }
  html[data-hard-print="true"] .hard-grade-view-score strong{
    font-size:24pt!important;
  }

  /* Evidence becomes an editorial audit trail, not a stack of app cards. */
  html[data-hard-print="true"] .hard-grade-evidence-summary{
    margin:7mm 0 4mm;
  }
  html[data-hard-print="true"] .hard-grade-finding{
    margin:0!important;
    padding:8mm 0 8mm 6mm!important;
    border:0!important;
    border-top:.25mm solid #d8d8d3!important;
    border-radius:0!important;
    background:transparent!important;
    break-inside:avoid;
    page-break-inside:avoid;
  }
  html[data-hard-print="true"] .hard-grade-finding:last-child{
    border-bottom:.25mm solid #d8d8d3!important;
  }
  html[data-hard-print="true"] .hard-grade-finding::before{
    width:1.2mm;
  }
  html[data-hard-print="true"] .hard-grade-finding h4{
    max-width:145mm;
    font-size:16pt!important;
    line-height:1.12!important;
  }
  html[data-hard-print="true"] .hard-grade-finding-status{
    font-size:7.5pt!important;
  }
  html[data-hard-print="true"] .hard-grade-finding>p{
    max-width:148mm;
    font-size:10.5pt!important;
    line-height:1.55!important;
  }
  html[data-hard-print="true"] .hard-grade-finding summary{
    font-size:8pt!important;
  }
  html[data-hard-print="true"] .hard-grade-finding details p{
    max-width:148mm;
    font-size:9.5pt!important;
    line-height:1.55!important;
  }

  /* Interpretive spread. */
  html[data-hard-print="true"] .hard-grade-unknowns{
    box-sizing:border-box;
    margin:0!important;
    padding:22mm 16mm!important;
    min-height:150mm;
    break-before:page;
    page-break-before:always;
    border-top:0;
  }
  html[data-hard-print="true"] .hard-grade-unknown-number{
    font-size:72pt!important;
  }
  html[data-hard-print="true"] .hard-grade-unknowns h3{
    font-size:24pt!important;
  }
  html[data-hard-print="true"] .hard-grade-unknowns>div:last-child>p:last-child,
  html[data-hard-print="true"] .hard-grade-unknown-note{
    font-size:10.5pt!important;
    line-height:1.55!important;
  }

  /* Next step becomes a static report page; the browser form is not useful on paper. */
  html[data-hard-print="true"] .hard-grade-request{
    box-sizing:border-box;
    margin:0!important;
    padding:22mm 16mm!important;
    min-height:210mm;
    border-radius:0!important;
    break-before:page;
    page-break-before:always;
  }
  html[data-hard-print="true"] .hard-grade-request h3{
    font-size:28pt!important;
  }
  html[data-hard-print="true"] .hard-grade-request>p{
    max-width:145mm;
    font-size:10.5pt!important;
    line-height:1.55!important;
  }
  html[data-hard-print="true"] .hard-grade-review-form,
  html[data-hard-print="true"] .hard-grade-request-status,
  html[data-hard-print="true"] .hard-grade-preview-link{
    display:none!important;
  }
  html[data-hard-print="true"] .hard-grade-review-steps{
    max-width:150mm;
    margin-top:12mm;
  }
  html[data-hard-print="true"] .hard-grade-review-steps strong{
    font-size:10.5pt!important;
  }
  html[data-hard-print="true"] .hard-grade-review-steps small{
    font-size:9.5pt!important;
    line-height:1.5!important;
  }

  /* Appendix / method page. */
  html[data-hard-print="true"] .hard-grade-method-tags{
    gap:2.5mm;
    margin-top:6mm;
  }
  html[data-hard-print="true"] .hard-grade-method-tags .tag{
    font-size:8pt!important;
  }
  html[data-hard-print="true"] .hard-grade-surface-disclosure summary{
    font-size:8.5pt!important;
  }
  html[data-hard-print="true"] .hard-grade-surface-row code{
    font-size:8.5pt!important;
    line-height:1.5!important;
  }
  html[data-hard-print="true"] .hard-grade-source-links a{
    font-size:9pt!important;
  }
}


/* Final deep-audit corrections: eliminate the last section seam and keep all
   four assessment views together on one physical-report page. */
.hard-grade-results:not([hidden]){
  background:
    linear-gradient(
      180deg,
      rgba(219,233,243,.16) 0,
      rgba(219,233,243,.66) 54px,
      #dce8f0 108px,
      #e7e8e8 162px,
      #f0eae5 226px,
      #f6f1ec 510px,
      #fff 1320px
    );
}
@media(max-width:760px){
  .hard-grade-results:not([hidden]){
    background:
      linear-gradient(
        180deg,
        rgba(219,233,243,.20) 0,
        rgba(219,233,243,.72) 42px,
        #dce8f0 84px,
        #e7e8e8 126px,
        #f0eae5 178px,
        #f6f1ec 390px,
        #fff 1020px
      );
  }
}

@media print{
  html[data-hard-print="true"] .hard-grade-view-row{
    grid-template-columns:minmax(0,1fr) 25mm!important;
    gap:7mm!important;
    align-items:start!important;
    min-height:0!important;
    padding:4.5mm 0!important;
  }
  html[data-hard-print="true"] .hard-grade-view-score{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-end!important;
    justify-self:end!important;
    gap:1.5mm!important;
    padding-top:0!important;
  }
  html[data-hard-print="true"] .hard-grade-view-score strong{
    font-size:22pt!important;
    line-height:.9!important;
  }
  html[data-hard-print="true"] .hard-grade-view-score span{
    font-size:7.5pt!important;
  }
  html[data-hard-print="true"] .hard-grade-view-question{
    max-width:125mm!important;
    font-size:13pt!important;
  }
  html[data-hard-print="true"] .hard-grade-view-meta{
    margin-top:3mm!important;
  }
}


/* Physical-document micro typography. */
.hard-grade-ui-provenance .link-arrow::after{
  margin-left:.45ch;
}
@media print{
  html[data-hard-print="true"] p,
  html[data-hard-print="true"] li,
  html[data-hard-print="true"] dd{
    widows:3;
    orphans:3;
  }
  html[data-hard-print="true"] .hard-grade-ui-provenance .link-arrow::after{
    margin-left:.65ch;
  }
}


/* ── Founder conversion pass ─────────────────────────────────────────────── */
.hard-grade-founder-kicker{
  position:relative;
  z-index:2;
  margin:0 0 12px;
  color:rgba(244,249,255,.78);
  font:700 10px/1.2 var(--hg-sans);
  letter-spacing:.16em;
  text-transform:uppercase;
}
.hard-grade-hero h1{
  max-width:850px;
}
.hard-grade-sub{
  max-width:700px;
}
.hard-grade-scan button span{
  white-space:nowrap;
}

/* The founder implication comes immediately after the first consequential
   decision, before the long evidence trail. */
.hard-grade-founder-bridge{
  position:relative;
  margin:0;
  padding:58px 62px 54px;
  overflow:hidden;
  border-bottom:1px solid #d9d9d4;
  background:
    radial-gradient(circle at 92% 8%,color-mix(in srgb,var(--grade-accent) 9%,transparent),transparent 28%),
    linear-gradient(180deg,#f8f5f0 0%,#fff 100%);
}
.hard-grade-founder-bridge-index{
  position:absolute;
  top:22px;
  right:30px;
  color:#ece8e1;
  font:900 104px/.8 var(--hg-display);
  letter-spacing:-.07em;
}
.hard-grade-founder-bridge-copy,
.hard-grade-founder-bridge-signal,
.hard-grade-founder-bridge-priority,
.hard-grade-founder-bridge-actions,
.hard-grade-founder-share-status{
  position:relative;
  z-index:1;
}
.hard-grade-founder-bridge-copy{
  max-width:790px;
}
.hard-grade-founder-bridge-copy .hard-grade-eyebrow{
  margin:0 0 10px;
  color:var(--grade-ink);
}
.hard-grade-founder-bridge-copy h3{
  max-width:18ch;
  margin:0;
  color:#171714;
  font:500 clamp(34px,4.2vw,50px)/1 var(--hg-serif);
  letter-spacing:-.045em;
  text-wrap:balance;
}
.hard-grade-founder-bridge-copy>p:last-child{
  max-width:68ch;
  margin:16px 0 0;
  color:#5f5f59;
  font-size:13px;
  line-height:1.62;
}
.hard-grade-founder-bridge-signal{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:34px;
  border-top:1px solid #d9d9d4;
  border-bottom:1px solid #d9d9d4;
}
.hard-grade-founder-bridge-signal>div{
  padding:19px 18px 18px 0;
  border-right:1px solid #dfdfda;
}
.hard-grade-founder-bridge-signal>div+div{padding-left:18px}
.hard-grade-founder-bridge-signal>div:last-child{border-right:0}
.hard-grade-founder-bridge-signal strong{
  display:block;
  color:var(--grade-ink);
  font:500 34px/.95 var(--hg-serif);
}
.hard-grade-founder-bridge-signal span{
  display:block;
  margin-top:7px;
  color:#6a6a64;
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.hard-grade-founder-bridge-priority{
  display:grid;
  grid-template-columns:155px minmax(0,1fr);
  gap:24px;
  align-items:start;
  margin-top:25px;
}
.hard-grade-founder-bridge-priority span{
  color:#767670;
  font-size:10px;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.hard-grade-founder-bridge-priority strong{
  max-width:26ch;
  color:#1b1b18;
  font:500 21px/1.28 var(--hg-serif);
}
.hard-grade-founder-bridge-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:27px;
}
.hard-grade-founder-bridge-actions .button{
  min-height:44px;
  gap:9px;
  padding-inline:15px;
  font-size:11px;
}
.hard-grade-founder-bridge-actions .button i{
  font-style:normal;
}
.hard-grade-founder-share-status{
  min-height:14px;
  margin:9px 0 0;
  color:#6b6b65;
  font-size:10px;
  line-height:1.4;
}
.hard-grade-founder-share-status a{
  color:#33332f;
  overflow-wrap:anywhere;
}

/* The conversion section leads with value, then the verification mechanics. */
.hard-grade-request{
  padding-top:38px;
}
.hard-grade-review-deliverables{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  max-width:760px;
  margin:25px 0 4px;
  border-top:1px solid color-mix(in srgb,var(--grade-on) 20%,transparent);
  border-bottom:1px solid color-mix(in srgb,var(--grade-on) 20%,transparent);
}
.hard-grade-review-deliverables>div{
  padding:16px 17px 16px 0;
  border-right:1px solid color-mix(in srgb,var(--grade-on) 16%,transparent);
}
.hard-grade-review-deliverables>div+div{padding-left:17px}
.hard-grade-review-deliverables>div:last-child{border-right:0}
.hard-grade-review-deliverables span{
  display:block;
  color:color-mix(in srgb,var(--grade-on) 55%,transparent);
  font-size:9px;
  font-weight:700;
  letter-spacing:.1em;
}
.hard-grade-review-deliverables strong{
  display:block;
  margin-top:7px;
  color:var(--grade-on);
  font:500 15px/1.25 var(--hg-serif);
}
.hard-grade-review-deliverables small{
  display:block;
  margin-top:5px;
  color:color-mix(in srgb,var(--grade-on) 78%,transparent);
  font-size:10.5px;
  line-height:1.5;
}
.hard-grade-review-form .button.button-primary{
  white-space:nowrap;
}

@media(max-width:760px){
  .hard-grade-founder-kicker{
    margin-bottom:10px;
    font-size:9px;
    letter-spacing:.13em;
  }
  .hard-grade-hero h1{
    font-size:40px;
    line-height:.94;
  }
  .hard-grade-sub{
    max-width:340px;
  }
  .hard-grade-founder-bridge{
    padding:42px 20px 38px;
  }
  .hard-grade-founder-bridge-index{
    top:15px;
    right:14px;
    font-size:74px;
  }
  .hard-grade-founder-bridge-copy h3{
    max-width:13ch;
    font-size:35px;
  }
  .hard-grade-founder-bridge-copy>p:last-child{
    font-size:12px;
  }
  .hard-grade-founder-bridge-signal{
    grid-template-columns:1fr 1fr;
    margin-top:25px;
  }
  .hard-grade-founder-bridge-signal>div{
    padding:15px 12px 15px 0;
  }
  .hard-grade-founder-bridge-signal>div+div{padding-left:12px}
  .hard-grade-founder-bridge-signal>div:nth-child(2){border-right:0}
  .hard-grade-founder-bridge-signal>div:last-child{
    grid-column:1/-1;
    padding-left:0;
    border-top:1px solid #dfdfda;
    border-right:0;
  }
  .hard-grade-founder-bridge-signal strong{font-size:30px}
  .hard-grade-founder-bridge-priority{
    grid-template-columns:1fr;
    gap:7px;
    margin-top:21px;
  }
  .hard-grade-founder-bridge-priority strong{
    font-size:20px;
  }
  .hard-grade-founder-bridge-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .hard-grade-founder-bridge-actions .button{
    width:100%;
    justify-content:center;
  }
  .hard-grade-review-deliverables{
    grid-template-columns:1fr;
    margin-top:22px;
  }
  .hard-grade-review-deliverables>div{
    padding:14px 0;
    border-right:0;
    border-bottom:1px solid color-mix(in srgb,var(--grade-on) 16%,transparent);
  }
  .hard-grade-review-deliverables>div+div{padding-left:0}
  .hard-grade-review-deliverables>div:last-child{border-bottom:0}
}

/* Physical report: Founder Check becomes an implication page; interactive
   conversion controls disappear but the decision rationale remains. */
@media print{
  html[data-hard-print="true"] .hard-grade-founder-kicker{
    display:none!important;
  }
  html[data-hard-print="true"] .hard-grade-founder-bridge{
    box-sizing:border-box;
    min-height:297mm;
    margin:0!important;
    padding:24mm 16mm!important;
    display:flex;
    flex-direction:column;
    justify-content:center;
    break-before:page;
    page-break-before:always;
    break-after:page;
    page-break-after:always;
    background:#f8f5f0!important;
  }
  html[data-hard-print="true"] .hard-grade-founder-bridge-index{
    top:14mm;
    right:12mm;
    font-size:86pt!important;
  }
  html[data-hard-print="true"] .hard-grade-founder-bridge-copy h3{
    max-width:155mm;
    font-size:29pt!important;
    line-height:1!important;
  }
  html[data-hard-print="true"] .hard-grade-founder-bridge-copy>p:last-child{
    max-width:148mm;
    font-size:10.5pt!important;
    line-height:1.55!important;
  }
  html[data-hard-print="true"] .hard-grade-founder-bridge-signal{
    margin-top:12mm;
  }
  html[data-hard-print="true"] .hard-grade-founder-bridge-signal strong{
    font-size:27pt!important;
  }
  html[data-hard-print="true"] .hard-grade-founder-bridge-signal span{
    font-size:7.5pt!important;
  }
  html[data-hard-print="true"] .hard-grade-founder-bridge-priority{
    grid-template-columns:38mm 1fr;
    gap:8mm;
    margin-top:10mm;
  }
  html[data-hard-print="true"] .hard-grade-founder-bridge-priority span{
    font-size:7.5pt!important;
  }
  html[data-hard-print="true"] .hard-grade-founder-bridge-priority strong{
    max-width:110mm;
    font-size:15pt!important;
  }
  html[data-hard-print="true"] .hard-grade-founder-bridge-actions,
  html[data-hard-print="true"] .hard-grade-founder-share-status{
    display:none!important;
  }

  html[data-hard-print="true"] .hard-grade-review-deliverables{
    max-width:150mm;
    margin-top:10mm;
  }
  html[data-hard-print="true"] .hard-grade-review-deliverables span{
    font-size:7.5pt!important;
  }
  html[data-hard-print="true"] .hard-grade-review-deliverables strong{
    font-size:11pt!important;
  }
  html[data-hard-print="true"] .hard-grade-review-deliverables small{
    font-size:9pt!important;
    line-height:1.45!important;
  }
}


/* Mobile acquisition CTA keeps meaning instead of collapsing to an anonymous arrow. */
@media(max-width:760px){
  .hard-grade-scan .hard-grade-scan-submit.button.button-primary{
    min-width:72px;
  }
  .hard-grade-scan .hard-grade-scan-submit>span{
    display:inline!important;
    font-size:0;
  }
  .hard-grade-scan .hard-grade-scan-submit>span::after{
    content:"Test it";
    font-size:11px;
    line-height:1;
    font-weight:700;
  }
}


/* Founder hero line-break polish from 390px capture. */
@media(max-width:760px){
  .hard-grade-hero h1{
    width:min(100%,360px);
    max-width:360px;
    font-size:36px;
    line-height:.96;
    letter-spacing:-.045em;
  }
  .hard-grade-sub{
    max-width:350px;
    font-size:12px;
    line-height:1.55;
  }
}


.hard-grade-mobile-title-break{display:none}
@media(max-width:760px){
  .hard-grade-mobile-title-break{display:inline}
}


/* ── PDF editorial compression v5 ──────────────────────────────────────────
   The PDF is a decision artifact, not a paginated website. Screen keeps the
   full interaction; print prioritizes: signal -> action -> evidence -> method. */
.hard-grade-print-action-plan,
.hard-grade-print-nextstep{
  display:none;
}

@media print{
  /* Remove browser conversion sections that duplicate the decision story. */
  html[data-hard-print="true"] .hard-grade-priority,
  html[data-hard-print="true"] .hard-grade-founder-bridge,
  html[data-hard-print="true"] .hard-grade-request{
    display:none!important;
  }

  /* Page 3 - explicit action plan. This replaces two long interpretive spreads. */
  html[data-hard-print="true"] .hard-grade-print-action-plan{
    display:flex!important;
    flex-direction:column;
    justify-content:center;
    box-sizing:border-box;
    width:100%;
    min-height:297mm;
    padding:22mm 18mm 18mm;
    color:#171714;
    background:
      radial-gradient(circle at 94% 6%,rgba(13,127,92,.08),transparent 26%),
      linear-gradient(180deg,#fbfaf7 0%,#f3efe8 100%);
    break-before:page;
    page-break-before:always;
    break-after:page;
    page-break-after:always;
  }
  html[data-hard-print="true"] .hard-grade-print-action-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) 66mm;
    gap:12mm;
    align-items:end;
    padding-bottom:9mm;
    border-bottom:.35mm solid #cfcac1;
  }
  html[data-hard-print="true"] .hard-grade-print-action-head .hard-grade-eyebrow{
    margin:0 0 3mm;
    color:#0b7657;
    font-size:8pt!important;
    letter-spacing:.13em;
  }
  html[data-hard-print="true"] .hard-grade-print-action-head h3{
    margin:0;
    max-width:none;
    color:#151512;
    font:500 34pt/.96 var(--hg-serif)!important;
    letter-spacing:-.045em;
  }
  html[data-hard-print="true"] .hard-grade-print-action-signal{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:4mm 6mm;
  }
  html[data-hard-print="true"] .hard-grade-print-action-signal div{
    padding-top:3mm;
    border-top:.25mm solid #d8d3ca;
  }
  html[data-hard-print="true"] .hard-grade-print-action-signal strong{
    display:block;
    color:#0b7657;
    font:500 20pt/.95 var(--hg-serif);
  }
  html[data-hard-print="true"] .hard-grade-print-action-signal span{
    display:block;
    margin-top:1.5mm;
    color:#69665f;
    font:700 6.8pt/1.2 var(--hg-sans);
    letter-spacing:.08em;
    text-transform:uppercase;
  }
  html[data-hard-print="true"] .hard-grade-print-action-primary{
    margin-top:14mm;
    padding:0 0 11mm;
    border-bottom:.35mm solid #cfcac1;
  }
  html[data-hard-print="true"] .hard-grade-print-action-primary>span,
  html[data-hard-print="true"] .hard-grade-print-action-grid>div>span{
    display:block;
    color:#0b7657;
    font:700 7.5pt/1.2 var(--hg-sans);
    letter-spacing:.12em;
  }
  html[data-hard-print="true"] .hard-grade-print-action-primary h4{
    max-width:150mm;
    margin:4mm 0 0;
    color:#171714;
    font:500 27pt/1.02 var(--hg-serif);
    letter-spacing:-.035em;
  }
  html[data-hard-print="true"] .hard-grade-print-action-primary p{
    max-width:145mm;
    margin:5mm 0 0;
    color:#55524c;
    font:400 10.5pt/1.55 var(--hg-sans);
  }
  html[data-hard-print="true"] .hard-grade-print-action-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 12mm;
    margin-top:10mm;
  }
  html[data-hard-print="true"] .hard-grade-print-action-grid>div{
    min-height:56mm;
    padding:0 0 8mm;
  }
  html[data-hard-print="true"] .hard-grade-print-action-grid>div+div{
    padding-left:10mm;
    border-left:.35mm solid #d8d3ca;
  }
  html[data-hard-print="true"] .hard-grade-print-action-grid strong{
    display:block;
    margin-top:4mm;
    color:#1b1a17;
    font:500 16pt/1.2 var(--hg-serif);
  }
  html[data-hard-print="true"] .hard-grade-print-action-grid small{
    display:block;
    max-width:65mm;
    margin-top:3mm;
    color:#67645d;
    font:400 8.7pt/1.5 var(--hg-sans);
  }
  html[data-hard-print="true"] .hard-grade-print-action-footer{
    margin-top:auto;
    padding-top:7mm;
    border-top:.35mm solid #cfcac1;
  }
  html[data-hard-print="true"] .hard-grade-print-action-footer span{
    display:block;
    color:#69665f;
    font:700 7pt/1.2 var(--hg-sans);
    letter-spacing:.08em;
    text-transform:uppercase;
  }
  html[data-hard-print="true"] .hard-grade-print-action-footer strong{
    display:block;
    margin-top:2mm;
    color:#171714;
    font:500 13.5pt/1.2 var(--hg-serif);
  }
  html[data-hard-print="true"] .hard-grade-print-action-footer small{
    display:block;
    margin-top:1.5mm;
    color:#69665f;
    font:400 8.5pt/1.4 var(--hg-sans);
  }

  /* Four Views is a single scan page, not four mini reports. */
  html[data-hard-print="true"] .hard-grade-views{
    min-height:297mm;
    padding:18mm 18mm 14mm!important;
  }
  html[data-hard-print="true"] .hard-grade-views>h3{
    max-width:125mm;
    margin-bottom:4mm!important;
    font-size:23pt!important;
  }
  html[data-hard-print="true"] .hard-grade-views .hard-grade-section-intro{
    max-width:150mm!important;
    margin-bottom:5mm!important;
    font-size:9.3pt!important;
    line-height:1.45!important;
  }
  html[data-hard-print="true"] .hard-grade-view-row{
    padding:4mm 0!important;
    border-top:.25mm solid #dedad2!important;
  }
  html[data-hard-print="true"] .hard-grade-view-question{
    font-size:11.5pt!important;
    line-height:1.22!important;
  }
  html[data-hard-print="true"] .hard-grade-view-meta,
  html[data-hard-print="true"] .hard-grade-view-copy .hard-grade-view-meta>span:not(.tag){
    font-size:7.5pt!important;
  }

  /* Evidence Digest: no more one-finding-per-page and no decorative green rail.
     The full web evidence remains available; PDF keeps the decision-useful slice. */
  html[data-hard-print="true"] .hard-grade-findings{
    padding:16mm 16mm 13mm!important;
    break-before:page;
    page-break-before:always;
  }
  html[data-hard-print="true"] .hard-grade-findings .hard-grade-section-head{
    display:block!important;
    margin-bottom:5mm!important;
  }
  html[data-hard-print="true"] .hard-grade-findings h3{
    max-width:145mm!important;
    margin-bottom:3mm!important;
    font-size:22pt!important;
  }
  html[data-hard-print="true"] .hard-grade-findings .hard-grade-section-intro{
    max-width:150mm!important;
    margin:0!important;
    font-size:9pt!important;
    line-height:1.45!important;
  }
  html[data-hard-print="true"] .hard-grade-evidence-summary{
    margin:5mm 0 7mm!important;
  }
  html[data-hard-print="true"] [data-hard-findings-list]{
    display:block!important;
    column-count:2;
    column-gap:10mm;
    column-fill:auto;
  }
  html[data-hard-print="true"] .hard-grade-finding{
    display:inline-block!important;
    width:100%!important;
    margin:0 0 5mm!important;
    padding:4mm 0 0!important;
    border:0!important;
    border-top:.3mm solid #d7d3cb!important;
    border-radius:0!important;
    background:transparent!important;
    break-inside:avoid-column!important;
    page-break-inside:avoid!important;
  }
  html[data-hard-print="true"] .hard-grade-finding::before{
    display:none!important;
  }
  html[data-hard-print="true"] .hard-grade-finding-head{
    display:block!important;
  }
  html[data-hard-print="true"] .hard-grade-finding h4{
    max-width:none!important;
    margin:0!important;
    color:#1a1916;
    font-size:11.5pt!important;
    line-height:1.18!important;
  }
  html[data-hard-print="true"] .hard-grade-finding-status{
    display:inline-flex!important;
    width:auto!important;
    margin-top:2mm!important;
    padding:1mm 2mm!important;
    font-size:6.8pt!important;
    line-height:1!important;
  }
  html[data-hard-print="true"] .hard-grade-finding>p{
    max-width:none!important;
    margin:2.5mm 0 0!important;
    color:#5d5a54!important;
    font-size:8.4pt!important;
    line-height:1.42!important;
  }
  html[data-hard-print="true"] .hard-grade-finding details{
    display:block!important;
    margin-top:2.5mm!important;
  }
  html[data-hard-print="true"] .hard-grade-finding details summary{
    display:none!important;
  }
  html[data-hard-print="true"] .hard-grade-finding details p{
    display:none!important;
    max-width:none!important;
    margin:1.5mm 0 0!important;
    color:#55524c!important;
    font-size:7.7pt!important;
    line-height:1.4!important;
  }
  html[data-hard-print="true"] .hard-grade-finding details p:nth-of-type(5),
  html[data-hard-print="true"] .hard-grade-finding details p:nth-of-type(8),
  html[data-hard-print="true"] .hard-grade-finding details p:nth-of-type(9){
    display:block!important;
  }
  html[data-hard-print="true"] .hard-grade-finding details p:nth-of-type(5)::before{
    content:"NEXT  ";
    color:#0b7657;
    font-weight:700;
    letter-spacing:.08em;
  }
  html[data-hard-print="true"] .hard-grade-finding details p:nth-of-type(8)::before{
    content:"LIMIT  ";
    color:#8a5b1a;
    font-weight:700;
    letter-spacing:.08em;
  }
  html[data-hard-print="true"] .hard-grade-finding details p:nth-of-type(9){
    color:#8a8780!important;
    font-size:6.9pt!important;
  }

  /* Unknown is an interpretation note, not another hero spread. */
  html[data-hard-print="true"] .hard-grade-unknowns{
    min-height:0!important;
    margin:0!important;
    padding:13mm 18mm 14mm!important;
    display:grid!important;
    grid-template-columns:24mm 1fr!important;
    gap:8mm!important;
    break-before:auto!important;
    page-break-before:auto!important;
    background:#f7f4ee!important;
    border-top:.35mm solid #d9d4cb!important;
  }
  html[data-hard-print="true"] .hard-grade-unknown-number{
    font-size:38pt!important;
    line-height:.9!important;
  }
  html[data-hard-print="true"] .hard-grade-unknowns h3{
    margin:1mm 0 2mm!important;
    font-size:17pt!important;
  }
  html[data-hard-print="true"] .hard-grade-unknowns>div:last-child>p:last-child,
  html[data-hard-print="true"] .hard-grade-unknown-note{
    font-size:8.8pt!important;
    line-height:1.45!important;
  }
  html[data-hard-print="true"] .hard-grade-evidence-stages{
    margin-top:4mm!important;
  }
  html[data-hard-print="true"] .hard-grade-evidence-stages .tag{
    font-size:7pt!important;
  }

  /* Method is the closing appendix. Sources live once here instead of repeating
     long URLs under every finding. */
  html[data-hard-print="true"] .hard-grade-provenance{
    min-height:297mm;
    padding:18mm 18mm 14mm!important;
    background:#fff!important;
  }
  html[data-hard-print="true"] .hard-grade-provenance>h3{
    max-width:125mm!important;
    font-size:22pt!important;
  }
  html[data-hard-print="true"] .hard-grade-provenance>p,
  html[data-hard-print="true"] .hard-grade-method-note,
  html[data-hard-print="true"] .hard-grade-ui-provenance{
    max-width:150mm!important;
    font-size:9pt!important;
    line-height:1.48!important;
  }
  html[data-hard-print="true"] .hard-grade-surface-disclosure{
    margin-top:7mm!important;
  }
  html[data-hard-print="true"] .hard-grade-surface-row{
    grid-template-columns:8mm 1fr!important;
    padding:2mm 0!important;
  }
  html[data-hard-print="true"] .hard-grade-surface-row code{
    font-size:7.6pt!important;
    line-height:1.35!important;
  }
}


/* PDF v5.1 - executive page behaves like a report, not a score poster. */
@media print{
  html[data-hard-print="true"] .hard-grade-cover{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:86mm 1fr!important;
    height:297mm!important;
    min-height:297mm!important;
    max-height:297mm!important;
  }
  html[data-hard-print="true"] .hard-grade-cover-color{
    min-height:0!important;
    padding:11mm 18mm 10mm!important;
    overflow:hidden!important;
  }
  html[data-hard-print="true"] .hard-grade-cover-grade{
    position:absolute!important;
    right:18mm!important;
    top:16mm!important;
    margin:0!important;
  }
  html[data-hard-print="true"] .hard-grade-letter{
    font-size:78pt!important;
    line-height:.82!important;
  }
  html[data-hard-print="true"] .hard-grade-letter-shadow{
    font-size:90pt!important;
    line-height:.82!important;
  }
  html[data-hard-print="true"] .hard-grade-cover-topline{
    max-width:92mm;
    font-size:7.5pt!important;
  }
  html[data-hard-print="true"] .hard-grade-cover-footer{
    position:absolute!important;
    left:18mm!important;
    right:18mm!important;
    bottom:10mm!important;
    align-items:flex-end!important;
    font-size:8pt!important;
  }
  html[data-hard-print="true"] .hard-grade-company{
    max-width:105mm;
    font-size:9pt!important;
  }
  html[data-hard-print="true"] .hard-grade-cover-detail{
    min-height:0!important;
    padding:16mm 18mm 15mm!important;
    background:#fff!important;
  }
  html[data-hard-print="true"] .hard-grade-score-lockup{
    align-items:end!important;
  }
  html[data-hard-print="true"] .hard-grade-score{
    font-size:38pt!important;
  }
  html[data-hard-print="true"] .hard-grade-score-meter{
    margin-top:6mm!important;
  }
  html[data-hard-print="true"] .hard-grade-cover-detail>h2{
    max-width:135mm!important;
    margin:12mm 0 0!important;
    font-size:25pt!important;
    line-height:1.03!important;
  }
  html[data-hard-print="true"] .hard-grade-posture{
    margin-top:10mm!important;
    padding-top:6mm!important;
    border-top:.3mm solid #ddd8d0!important;
  }
  html[data-hard-print="true"] .hard-grade-meta{
    margin-top:9mm!important;
    padding-top:6mm!important;
    border-top:.3mm solid #ddd8d0!important;
  }
  html[data-hard-print="true"] .hard-grade-meta strong{
    font-size:17pt!important;
  }

  /* Let the interpretation + method close naturally instead of forcing sparse pages. */
  html[data-hard-print="true"] .hard-grade-provenance{
    min-height:0!important;
    break-before:auto!important;
    page-break-before:auto!important;
    padding-top:15mm!important;
  }
}


/* PDF v5.2 - physical cover: product specimen above, report metadata below. */
@media print{
  html[data-hard-print="true"] .hard-grade-sky{
    background:
      linear-gradient(180deg,#123d7b 0%,#1d5da0 35.5%,#f3efe9 35.5%,#f3efe9 100%)!important;
    box-shadow:none!important;
  }
  html[data-hard-print="true"] .hard-grade-sky::before,
  html[data-hard-print="true"] .hard-grade-sky::after,
  html[data-hard-print="true"] .hard-grade-hero::after{
    display:none!important;
  }
  html[data-hard-print="true"] .hard-grade-hero{
    padding:14mm 18mm 16mm!important;
  }
  html[data-hard-print="true"] .hard-grade-specimen-stack{
    width:150mm!important;
    max-width:150mm!important;
    margin:1mm auto 12mm!important;
  }
  html[data-hard-print="true"] .hard-grade-print-cover-meta{
    width:158mm!important;
    margin:0 auto!important;
    color:#171714!important;
  }
  html[data-hard-print="true"] .hard-grade-print-kicker{
    margin-bottom:4mm!important;
    color:#1a5f9d!important;
    font-size:8pt!important;
  }
  html[data-hard-print="true"] .hard-grade-print-cover-meta h2{
    color:#171714!important;
    font-size:31pt!important;
    line-height:.98!important;
  }
  html[data-hard-print="true"] .hard-grade-print-cover-meta h3{
    max-width:145mm!important;
    margin-top:4mm!important;
    color:#292722!important;
    font-size:16pt!important;
    line-height:1.15!important;
  }
  html[data-hard-print="true"] .hard-grade-print-meta{
    gap:4mm 10mm!important;
    margin-top:8mm!important;
    padding-top:5mm!important;
    border-top:.3mm solid #cfc8bd!important;
  }
  html[data-hard-print="true"] .hard-grade-print-meta dt{
    color:#777169!important;
    font-size:6.8pt!important;
  }
  html[data-hard-print="true"] .hard-grade-print-meta dd{
    color:#22211e!important;
    font-size:9pt!important;
    line-height:1.4!important;
  }
  html[data-hard-print="true"] .hard-grade-print-boundary{
    max-width:148mm!important;
    margin-top:6mm!important;
    color:#6f6a62!important;
    font-size:8.5pt!important;
    line-height:1.5!important;
  }
}


.hard-grade-evidence-url{
  display:block;
  overflow-wrap:anywhere;
}
@media print{
  html[data-hard-print="true"] .hard-grade-evidence-url{
    display:none!important;
  }
}


.hard-grade-print-evidence-note{display:none}
@media print{
  html[data-hard-print="true"] .hard-grade-print-evidence-note{
    display:block!important;
    max-width:145mm;
    margin:0 0 7mm;
    padding:3mm 0;
    border-top:.25mm solid #ded9d1;
    border-bottom:.25mm solid #ded9d1;
    color:#68645d;
    font:400 8.4pt/1.45 var(--hg-sans);
  }
  html[data-hard-print="true"] .hard-grade-finding[data-status="pass"]{
    display:none!important;
  }
}


/* PDF v5.3 - use the paper efficiently: Four Views is a scan summary and the
   decision-relevant Evidence Digest can begin on the same sheet. */
@media print{
  html[data-hard-print="true"] .hard-grade-views{
    min-height:0!important;
    padding:15mm 18mm 9mm!important;
    break-after:auto!important;
    page-break-after:auto!important;
  }
  html[data-hard-print="true"] .hard-grade-views .hard-grade-section-kicker{
    margin-bottom:3mm!important;
  }
  html[data-hard-print="true"] .hard-grade-view-row{
    padding:3mm 0!important;
  }
  html[data-hard-print="true"] .hard-grade-view-question{
    margin-top:1.5mm!important;
    font-size:10.5pt!important;
  }
  html[data-hard-print="true"] .hard-grade-view-meta{
    margin-top:2mm!important;
  }
  html[data-hard-print="true"] .hard-grade-findings{
    break-before:auto!important;
    page-break-before:auto!important;
    padding-top:8mm!important;
    border-top:.35mm solid #d7d2ca!important;
  }
}


/* PDF v5.4 - unresolved findings are a readable two-column decision matrix,
   not a long single-column audit log. */
@media print{
  html[data-hard-print="true"] .hard-grade-findings{
    break-before:page!important;
    page-break-before:always!important;
    padding:16mm 18mm 14mm!important;
    border-top:0!important;
  }
  html[data-hard-print="true"] [data-hard-findings-list]{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:7mm 11mm!important;
    column-count:initial!important;
    column-gap:initial!important;
  }
  html[data-hard-print="true"] .hard-grade-finding{
    display:block!important;
    width:auto!important;
    margin:0!important;
    padding:4.5mm 0 0!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }
  html[data-hard-print="true"] .hard-grade-finding h4{
    font-size:13.5pt!important;
    line-height:1.16!important;
  }
  html[data-hard-print="true"] .hard-grade-finding>p{
    font-size:9.2pt!important;
    line-height:1.48!important;
  }
  html[data-hard-print="true"] .hard-grade-finding details p{
    font-size:8.5pt!important;
    line-height:1.45!important;
  }
  html[data-hard-print="true"] .hard-grade-finding details p:nth-of-type(4){
    display:block!important;
  }
  html[data-hard-print="true"] .hard-grade-finding details p:nth-of-type(4)::before{
    content:"RISK  ";
    color:#9b3f32;
    font-weight:700;
    letter-spacing:.08em;
  }
}


/* PDF v5.4 - balance the decision digest across the sheet. Chromium's paged
   multi-column layout left the right half empty; an explicit grid is stable. */
@media print{
  html[data-hard-print="true"] [data-hard-findings-list]{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-count:initial!important;
    column-gap:0!important;
    gap:7mm 10mm!important;
    align-items:start!important;
  }
  html[data-hard-print="true"] .hard-grade-finding{
    display:block!important;
    width:auto!important;
    margin:0!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }
  html[data-hard-print="true"] .hard-grade-finding:last-child:nth-child(odd){
    grid-column:1/-1!important;
    display:grid!important;
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;
    gap:0 10mm!important;
  }
  html[data-hard-print="true"] .hard-grade-finding:last-child:nth-child(odd) .hard-grade-finding-head,
  html[data-hard-print="true"] .hard-grade-finding:last-child:nth-child(odd)>p{
    grid-column:1!important;
  }
  html[data-hard-print="true"] .hard-grade-finding:last-child:nth-child(odd) details{
    grid-column:2!important;
    grid-row:1/span 2!important;
    margin-top:0!important;
    padding-left:8mm!important;
    border-left:.3mm solid #d7d3cb!important;
  }
}


/* PDF v5.5 - keep the third unresolved finding in the two-column matrix.
   Full-width emphasis created a pagination orphan and a nearly empty tail page. */
@media print{
  html[data-hard-print="true"] .hard-grade-finding:last-child:nth-child(odd){
    grid-column:auto!important;
    display:block!important;
  }
  html[data-hard-print="true"] .hard-grade-finding:last-child:nth-child(odd) .hard-grade-finding-head,
  html[data-hard-print="true"] .hard-grade-finding:last-child:nth-child(odd)>p,
  html[data-hard-print="true"] .hard-grade-finding:last-child:nth-child(odd) details{
    grid-column:auto!important;
    grid-row:auto!important;
  }
  html[data-hard-print="true"] .hard-grade-finding:last-child:nth-child(odd) details{
    margin-top:2.5mm!important;
    padding-left:0!important;
    border-left:0!important;
  }
}


/* PDF v5.6 - evidence is three horizontal decision rows. This keeps readable
   line lengths while fitting the complete unresolved digest on one sheet. */
@media print{
  html[data-hard-print="true"] [data-hard-findings-list]{
    display:block!important;
  }
  html[data-hard-print="true"] .hard-grade-finding,
  html[data-hard-print="true"] .hard-grade-finding:last-child:nth-child(odd){
    display:grid!important;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;
    grid-template-rows:auto auto!important;
    gap:0 10mm!important;
    width:auto!important;
    margin:0!important;
    padding:5mm 0!important;
    border-top:.3mm solid #d7d3cb!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }
  html[data-hard-print="true"] .hard-grade-finding:last-child{
    border-bottom:.3mm solid #d7d3cb!important;
  }
  html[data-hard-print="true"] .hard-grade-finding .hard-grade-finding-head,
  html[data-hard-print="true"] .hard-grade-finding:last-child:nth-child(odd) .hard-grade-finding-head{
    grid-column:1!important;
    grid-row:1!important;
  }
  html[data-hard-print="true"] .hard-grade-finding>p,
  html[data-hard-print="true"] .hard-grade-finding:last-child:nth-child(odd)>p{
    grid-column:1!important;
    grid-row:2!important;
    margin-top:2.5mm!important;
  }
  html[data-hard-print="true"] .hard-grade-finding details,
  html[data-hard-print="true"] .hard-grade-finding:last-child:nth-child(odd) details{
    grid-column:2!important;
    grid-row:1/span 2!important;
    margin:0!important;
    padding:0 0 0 8mm!important;
    border-left:.3mm solid #d7d3cb!important;
  }
  html[data-hard-print="true"] .hard-grade-finding h4{
    font-size:12.5pt!important;
    line-height:1.15!important;
  }
  html[data-hard-print="true"] .hard-grade-finding>p{
    font-size:8.6pt!important;
    line-height:1.42!important;
  }
  html[data-hard-print="true"] .hard-grade-finding details p{
    margin:1.2mm 0 0!important;
    font-size:8pt!important;
    line-height:1.4!important;
  }
}
