/* Full sample reports (/samples/<door>/): a readable document on screen and a clean printout or PDF.
   Colours and fonts come from brand-tokens.css. */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;background:var(--paper-2)}
body{margin:0;background:var(--paper-2);color:var(--ink);font:400 17px/1.6 var(--body);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration-color:var(--honey);text-underline-offset:.2em}
h1,h2,h3{font-family:var(--display);font-variation-settings:"SOFT" 70,"WONK" 1;font-weight:550;line-height:1.18;letter-spacing:-.008em;margin:0}
p,ul,ol,dl,table{margin:0}
:focus-visible{outline:3px solid var(--honey-deep);outline-offset:3px;border-radius:4px}
.bar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px max(16px,4vw);background:var(--ink);color:#FBF4DD;border-bottom:3px solid var(--yellow)}
.bar img{height:24px;width:auto}
.bar nav{display:flex;flex-wrap:wrap;gap:8px}
.bar a{display:inline-flex;align-items:center;min-height:40px;padding:6px 14px;border:1.5px solid #4A463C;border-radius:999px;color:#FBF4DD;text-decoration:none;font-size:14px}
.bar a.go{background:var(--yellow);border-color:var(--yellow);color:var(--ink)}
.doc{max-width:48em;margin:28px auto 40px;padding:clamp(22px,5vw,56px);background:#FFFBEE;border:1.5px solid var(--ink);border-radius:8px 14px 10px 16px/14px 8px 16px 10px;box-shadow:6px 7px 0 rgba(74,53,36,.18);display:grid;gap:1.6em}
.cover{display:grid;gap:.6em;padding-bottom:1.2em;border-bottom:2px solid var(--ink)}
.kicker{display:inline-block;justify-self:start;padding:4px 10px;border:1.5px dashed var(--honey-deep);border-radius:6px;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--honey-deep)}
.cover h1{font-size:clamp(28px,4.4vw,42px)}
.meta{font-size:14.5px;color:#5F5546}
.scope{font-style:italic;font-family:var(--display);font-size:18px}
section{display:grid;gap:.75em}
section h2{font-size:clamp(22px,3vw,28px);padding-top:.2em;border-top:1px dotted rgba(22,22,22,.35)}
section h3{font-size:19px}
ul,ol{padding-left:1.3em;display:grid;gap:.3em}
.verdict{list-style:none;padding:0;gap:.4em}
.verdict li{padding:.55em .8em;background:var(--wax);border-left:4px solid var(--honey);border-radius:0 8px 8px 0}
.map{list-style:none;padding:0;counter-reset:m;gap:.5em}
.map li{position:relative;padding:.55em .8em .55em 2.6em;border:1.5px solid var(--ink);border-radius:6px 10px 7px 11px;background:#FFFBEE}
.map li::before{counter-increment:m;content:counter(m);position:absolute;left:.75em;top:.55em;font:550 15px/1.6 var(--display);color:#5F5546}
.pin{display:inline-grid;place-items:center;width:1.6em;height:1.6em;margin-left:.4em;border-radius:50% 50% 50% 8%;background:var(--yellow);border:1.5px solid var(--ink);font:550 13px/1 var(--display);vertical-align:.1em}
.finding{display:grid;gap:.45em;padding:1em 1.1em;border:1.5px solid var(--ink);border-radius:8px 12px 9px 13px;background:#FFFDF5;break-inside:avoid}
.finding h3{font-size:19px}
.sev{justify-self:start;padding:2px 9px;border-radius:4px;background:var(--ink);color:var(--yellow);font-size:13px;letter-spacing:.08em;text-transform:uppercase}
dl{display:grid;grid-template-columns:auto 1fr;gap:.35em .9em}
dt{font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--honey-deep);padding-top:.2em}
dd{margin:0}
table{border-collapse:collapse;width:100%;font-size:15.5px}
th,td{text-align:left;vertical-align:top;padding:.45em .6em;border-bottom:1px solid rgba(22,22,22,.25)}
th{font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;color:#5F5546}
pre,code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:14.5px}
pre{white-space:pre-wrap;padding:.8em 1em;background:var(--paper);border:1px solid rgba(22,22,22,.25);border-radius:8px}
.end{display:grid;gap:.6em;padding-top:1.2em;border-top:2px solid var(--ink)}
.end .go{justify-self:start;display:inline-flex;align-items:center;min-height:46px;padding:10px 20px;background:var(--ink);color:var(--yellow);border-radius:8px 14px 10px 16px/14px 8px 16px 10px;text-decoration:none;box-shadow:4px 4px 0 var(--honey-deep)}
.end p{font-size:15px;color:#5F5546}
@media (max-width:560px){table{display:block;overflow-x:auto;max-width:100%}.doc>*{min-width:0}dl{grid-template-columns:1fr}dt{padding-top:.5em}.doc{margin:0;border-radius:0;border-left:0;border-right:0}}
@media print{
  @page{size:A4;margin:16mm 16mm 18mm}
  html,body{background:#fff}
  .bar,.end .go{display:none}
  .doc{max-width:none;margin:0;padding:0;border:0;box-shadow:none;background:#fff;gap:1.2em}
  body{font-size:11pt}
  section h2{break-after:avoid}
  .finding,.verdict li,.map li,tr{break-inside:avoid}
  a{text-decoration:none}
}
.bar :focus-visible{outline-color:var(--yellow)}
