/* TechWreck v1.0 — "incident recorder" design system. Own front end (SPEC 6): graphite + international orange,
   Saira (condensed display) + Red Hat Text (body) + Martian Mono (data). No framework, no third-party files. */
@font-face{font-family:"Saira";src:url(/assets/fonts/saira-var.woff2) format("woff2");font-weight:100 900;font-stretch:50% 125%;font-display:swap}
@font-face{font-family:"Red Hat Text";src:url(/assets/fonts/redhat-text-var.woff2) format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:"Martian Mono";src:url(/assets/fonts/martian-mono-var.woff2) format("woff2");font-weight:100 800;font-stretch:75% 112.5%;font-display:swap}

:root{
  --ink:#14161a;--ink2:#262a31;--ink3:#3a404a;--steel:#5a6370;--mist:#8a93a0;
  --fog:#eef0f3;--paper:#fff;--line:#d5dae1;--line2:#e6e9ee;
  --signal:#ff5410;--signal-text:#b93a06;--signal-soft:#fff1ea;--amber:#ffb000;--amber-soft:#fff6dc;
  --ok:#15784b;--ok-soft:#e7f5ee;--red:#b42318;--red-soft:#fdecea;
  --display:"Saira","Arial Narrow",system-ui,sans-serif;--body:"Red Hat Text",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"Martian Mono",ui-monospace,"Cascadia Mono",Consolas,monospace;
  --r:6px;--r2:12px;--shadow:0 1px 2px rgba(20,22,26,.06),0 8px 24px rgba(20,22,26,.08);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:5rem}
body{margin:0;background:var(--fog);color:var(--ink);font:400 17px/1.6 var(--body);text-rendering:optimizeLegibility}
img,svg{max-width:100%}
a{color:var(--signal-text);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--signal);outline-offset:2px}
h1,h2,h3{font-family:var(--display);font-stretch:78%;line-height:1.05;letter-spacing:-.005em;margin:0 0 .5em}
h1{font-size:clamp(2.3rem,5.2vw,4.1rem);font-weight:800}
h2{font-size:clamp(1.6rem,3vw,2.35rem);font-weight:750}
h3{font-size:1.3rem;font-weight:700}
p{margin:0 0 1em}
.wrap{max-width:1200px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}
.mono{font-family:var(--mono);font-stretch:87.5%;font-size:.86em;letter-spacing:-.01em}
.small{font-size:.88rem;color:var(--steel)}
.muted{color:var(--steel)}
.lede{font-size:clamp(1.05rem,1.6vw,1.22rem);line-height:1.55;color:var(--ink3);max-width:46em}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;background:var(--signal);color:var(--ink);padding:.6rem 1rem;z-index:10}
.skip:focus{left:8px;top:8px}
.row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
.num{font-family:var(--mono);font-stretch:87.5%;font-size:.62em;font-weight:600;color:var(--signal-text);letter-spacing:.04em;vertical-align:.35em;margin-right:.4em}

/* tags + buttons */
.tag{display:inline-block;font:700 .72rem/1 var(--display);font-stretch:100%;letter-spacing:.14em;text-transform:uppercase;padding:.42em .7em .38em;border:1px solid var(--line);border-radius:3px;color:var(--ink3);background:var(--paper);margin:0 .4rem .9rem 0}
.tag--signal{background:var(--signal);border-color:var(--signal);color:var(--ink)}
.tag--ink{background:var(--ink);border-color:var(--ink);color:#fff}
.tag--ok{background:var(--ok-soft);border-color:#b9e2cd;color:var(--ok)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font:700 .98rem/1 var(--display);font-stretch:96%;letter-spacing:.04em;text-transform:uppercase;padding:.85em 1.25em .8em;border-radius:var(--r);border:2px solid transparent;text-decoration:none;cursor:pointer;transition:transform .12s ease,background .12s ease}
.btn:hover{transform:translateY(-1px)}
.btn--signal{background:var(--signal);color:var(--ink);border-color:var(--signal)}
.btn--signal:hover{background:#ff6a2e;color:var(--ink)}
.btn--ink{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn--ink:hover{background:var(--ink2);color:#fff}
.btn--line{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn--line:hover{background:var(--ink);color:#fff}
.btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}
.btn--ghost:hover{border-color:#fff;color:#fff}
.btn--big{font-size:1.06rem;padding:1em 1.4em .95em}
.linkbtn{background:none;border:0;padding:0;font:inherit;color:var(--signal-text);text-decoration:underline;cursor:pointer}

/* severity chips */
.sev{display:inline-flex;align-items:baseline;gap:.45em;font:600 .82rem/1 var(--display);font-stretch:92%;letter-spacing:.06em;text-transform:uppercase;padding:.5em .7em .45em;border-radius:3px;white-space:nowrap}
.sev b{font-family:var(--mono);font-stretch:87.5%;font-weight:700;letter-spacing:0}
.sev--1{background:var(--red);color:#fff}
.sev--2{background:var(--signal);color:var(--ink)}
.sev--3{background:var(--amber);color:var(--ink)}
.sev--4{background:var(--steel);color:#fff}
.sev--lg{font-size:1rem;padding:.6em .85em .55em}

/* status strip + bar */
.strip{background:var(--ink);color:#c9ced6;font:500 .74rem/1 var(--mono);font-stretch:87.5%;letter-spacing:.02em}
.strip__in{display:flex;align-items:center;gap:.7rem;min-height:2.1rem;overflow:hidden;white-space:nowrap}
.strip a{color:#fff;text-decoration:none}
.strip a:hover{text-decoration:underline;color:#fff}
.strip__dot{width:.5rem;height:.5rem;border-radius:50%;background:#3ddc84;box-shadow:0 0 0 3px rgba(61,220,132,.18);flex:none}
.strip__sep{color:var(--mist)}
.bar{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.bar__in{display:flex;align-items:center;gap:1.5rem;min-height:4.25rem}
.brand{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--ink)}
.brand__word{font:600 1.55rem/1 var(--display);font-stretch:74%;letter-spacing:.02em;text-transform:uppercase}
.brand__word b{font-weight:850;color:var(--ink)}
.brand--light .brand__word,.brand--light .brand__word b{color:#fff}
.mark{width:2.1rem;height:2.1rem;flex:none}
.mark__box{fill:var(--signal)}
.mark__band{stroke:var(--ink);stroke-width:2;opacity:.3}
.mark__trace{fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.nav{display:flex;gap:.25rem;margin-left:auto}
.nav a{font:600 .95rem/1 var(--display);font-stretch:92%;letter-spacing:.03em;text-transform:uppercase;color:var(--ink3);text-decoration:none;padding:.7rem .75rem;border-radius:var(--r)}
.nav a:hover{background:var(--fog);color:var(--ink)}
.nav a[aria-current=page]{color:var(--ink);box-shadow:inset 0 -3px 0 var(--signal);border-radius:0}
.bar__cta{padding:.75em 1.05em .7em;font-size:.9rem}
.menu{display:none;margin-left:auto;position:relative}
.menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:.5rem;font:700 .9rem/1 var(--display);letter-spacing:.08em;text-transform:uppercase;padding:.75rem .9rem;border:2px solid var(--ink);border-radius:var(--r)}
.menu summary::-webkit-details-marker{display:none}
.menu__icon{width:1rem;height:.7rem;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);position:relative}
.menu__icon::after{content:"";position:absolute;left:0;right:0;top:calc(50% - 1px);border-top:2px solid var(--ink)}
.menu__panel{position:absolute;right:0;top:calc(100% + .5rem);width:min(86vw,320px);background:var(--paper);border:1px solid var(--line);border-radius:var(--r2);box-shadow:var(--shadow);padding:.6rem;display:grid}
.menu__panel a{padding:.8rem .8rem;text-decoration:none;color:var(--ink);font-weight:600;border-radius:var(--r)}
.menu__panel a:hover{background:var(--fog)}
.menu__cta{background:var(--signal);color:var(--ink)!important;margin-bottom:.3rem}
.menu__price{font-size:.85rem;color:var(--steel);margin:.5rem .8rem .3rem}

/* hero */
.hero{background:radial-gradient(1200px 500px at 85% -10%,rgba(255,84,16,.22),transparent 60%),linear-gradient(var(--ink),#0d0f12);color:#e9ecf0;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(180deg,#000 40%,transparent);pointer-events:none}
.hero__in{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;padding-top:clamp(3rem,7vw,6rem);padding-bottom:clamp(3rem,7vw,6rem)}
.hero h1{color:#fff;font-size:clamp(2.6rem,6vw,4.9rem);font-stretch:72%;text-transform:uppercase;letter-spacing:.005em}
.hero .lede{color:#c3c9d2}
.hero .tag{margin-bottom:1.3rem}
.hero__price{margin-top:1.4rem;font-size:.95rem;color:#aab2bd}
.hero__price b{color:#fff;font-weight:700}
.recorder{margin:0}
.recorder__box{background:var(--signal);color:var(--ink);border-radius:14px;padding:1.4rem 1.4rem 1.2rem;box-shadow:0 30px 60px rgba(0,0,0,.45),inset 0 0 0 2px rgba(0,0,0,.12);position:relative;transform:rotate(-1.2deg)}
.recorder__box::before{content:"";position:absolute;left:0;right:0;top:3.4rem;height:12px;background:repeating-linear-gradient(135deg,var(--ink) 0 10px,var(--signal) 10px 20px);opacity:.9}
.recorder__label{display:flex;justify-content:space-between;font:800 .82rem/1 var(--display);letter-spacing:.16em;text-transform:uppercase;margin-bottom:2.6rem}
.recorder__title{font:800 1.7rem/1.05 var(--display);font-stretch:74%;text-transform:uppercase;margin:0 0 .8rem}
.recorder__sev .sev--2{background:var(--ink);color:#fff}
.recorder__nums{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem .9rem;margin:1rem 0;background:rgba(20,22,26,.1);border-radius:8px;padding:.7rem}
.recorder__nums>div+div{border-left:1px solid rgba(20,22,26,.22);padding-left:.75rem}
.recorder__nums dt{font:700 .66rem/1.2 var(--display);letter-spacing:.12em;text-transform:uppercase}
.recorder__nums dd{margin:.25rem 0 0;font:700 1rem/1.1 var(--mono);font-stretch:87.5%}
.recorder__tl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:.35rem}
.recorder__tl li{background:var(--ink);color:#fff;border-radius:5px;padding:.45rem .4rem;text-align:center}
.recorder__tl time{display:block;font:600 .74rem/1.2 var(--mono);font-stretch:80%}
.recorder__tl span{display:block;font:700 .6rem/1.3 var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--signal)}
.recorder figcaption{margin-top:1.3rem;font-size:.85rem;color:#9aa3ae}
.recorder figcaption a{color:#fff}

/* home sections */
.sechead{max-width:52rem;margin-bottom:2.2rem}
.anatomy{padding:clamp(3.5rem,7vw,6rem) 0;background:var(--paper)}
.parts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid var(--ink)}
.parts li{padding:1.6rem 1.6rem 1.4rem 0;border-bottom:1px solid var(--line)}
.parts li:not(:nth-child(3n+1)){padding-left:1.6rem;border-left:1px solid var(--line)}
.parts .num{display:block;font-size:.9rem;margin-bottom:.9rem;vertical-align:0}
.parts p{color:var(--ink3);margin:0}
.checkband{padding:clamp(3.5rem,7vw,6rem) 0;background:var(--fog)}
.checkband__in{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,4rem);align-items:center}
.checks{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.check{display:flex;gap:.7rem;align-items:flex-start;background:var(--paper);border:1px solid var(--line);border-left:5px solid var(--amber);border-radius:var(--r);padding:.8rem .95rem;margin:0;font-size:.97rem;flex-wrap:wrap}
.check > span:nth-child(2){flex:1 1 16rem}
.check--fix{border-left-color:var(--red)}
.check--clear{border-left-color:var(--ok)}
.check__lvl{font:800 .7rem/1.9 var(--display);letter-spacing:.14em;text-transform:uppercase;min-width:2.2rem;color:var(--ink3)}
.check--fix .check__lvl{color:var(--red)}
.check--clear .check__lvl{color:var(--ok)}
.check__go{font-size:.85rem;white-space:nowrap}
.checks--demo .check{box-shadow:var(--shadow)}
.sevband{padding:clamp(3.5rem,7vw,6rem) 0;background:var(--ink);color:#e5e8ec}
.sevband h2{color:#fff}
.sevband .tag{background:transparent;color:#cfd4db;border-color:#3d434d}
.sevband a{color:#fff}
.sevs{list-style:none;margin:0 0 1.8rem;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.sevs__item{border-top:4px solid var(--steel);padding-top:1rem}
.sevs__item--1{border-color:var(--red)}.sevs__item--2{border-color:var(--signal)}.sevs__item--3{border-color:var(--amber)}
.sevs__item p{margin-top:.9rem;color:#b9c0c9;font-size:.95rem}
.pricing-band{padding:clamp(3.5rem,7vw,6rem) 0;background:var(--paper)}
.plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;max-width:62rem}
.doc__head--center+.plans{margin-inline:auto}
.plan{background:var(--paper);border:1px solid var(--line);border-radius:var(--r2);padding:1.6rem 1.6rem 1.4rem}
.plan--pass{border:2px solid var(--ink);box-shadow:8px 8px 0 var(--signal)}
.plan__tag{font:800 .78rem/1 var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--steel)}
.plan__price{font:800 3rem/1 var(--display);font-stretch:76%;margin:.2rem 0 .3rem}
.plan__price small{font:500 1rem/1 var(--body);color:var(--steel)}
.plan__alt{color:var(--ink3);margin-bottom:1rem}
.plan__preview{background:var(--amber-soft);border:1px solid #f3d999;border-radius:var(--r);padding:.8rem .95rem;font-size:.92rem;margin:1rem 0 0}
.ticks{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.5rem}
.ticks li{padding-left:1.6rem;position:relative}
.ticks li::before{content:"";position:absolute;left:0;top:.45em;width:.85rem;height:.5rem;border-left:3px solid var(--signal);border-bottom:3px solid var(--signal);transform:rotate(-45deg)}
.principles{background:var(--fog);padding:3rem 0;border-top:1px solid var(--line)}
.principles__in{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}
.principles h3{font-size:1.15rem;text-transform:uppercase;letter-spacing:.03em}
.principles p{color:var(--ink3);font-size:.95rem;margin:0}

/* report file */
.file{padding:2rem 0 4rem}
.file > .wrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:2rem;align-items:start}
.file .notice,.file .crumbs{grid-column:1/-1}
.notice{background:var(--amber-soft);border:1px solid #f3d999;border-radius:var(--r);padding:.85rem 1rem;margin:0}
.crumbs{font:600 .85rem/1.2 var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--steel);margin:0 0 .8rem}
.crumbs a{color:var(--ink3)}
.report{background:var(--paper);border:1px solid var(--line);border-radius:var(--r2);box-shadow:var(--shadow);overflow:hidden}
.report__head{padding:1.8rem clamp(1.2rem,3vw,2.4rem) 1.4rem;border-bottom:2px solid var(--ink);background:linear-gradient(90deg,var(--signal) 0 10px,transparent 10px)}
.report__tagline .tag{margin-bottom:.8rem}
.report__head h1{font-size:clamp(2rem,4vw,3rem)}
.report__sev{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin-bottom:1.2rem}
.report__sev p{margin:0;color:var(--ink3);font-size:.95rem}
.clock{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin:0}
.clock div{background:var(--paper);padding:.7rem .85rem}
.clock__k{background:#f7f8fa!important}
.clock dt{font:700 .7rem/1.2 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--steel)}
.clock dd{margin:.3rem 0 0;font:600 .92rem/1.3 var(--mono);font-stretch:87.5%}
.report__sec{padding:1.6rem clamp(1.2rem,3vw,2.4rem);border-bottom:1px solid var(--line2)}
.report__sec h2{font-size:1.5rem;text-transform:uppercase;letter-spacing:.02em}
.report__two{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.h2--plain{padding-top:.1rem}
.prose p{max-width:44em}
.impact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:1.4rem;align-items:start}
.facts{margin:0;display:grid;gap:.1rem}
.facts div{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px dashed var(--line)}
.facts dt{color:var(--steel)}
.facts dd{margin:0;font-weight:600;text-align:right}
.bill{background:var(--fog);border-radius:var(--r);padding:1rem 1.1rem}
.bill__total{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 .6rem;font:700 .8rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase}
.bill__total b{font:800 2rem/1 var(--mono);font-stretch:82%;letter-spacing:-.02em}
.bill__lines{width:100%;border-collapse:collapse;font-size:.9rem}
.bill__lines th{text-align:left;font-weight:400;color:var(--ink3);padding:.35rem 0}
.bill__lines td{text-align:right;font-family:var(--mono);font-stretch:87.5%;font-size:.85rem;white-space:nowrap;padding-left:1rem}
.tl{list-style:none;margin:0;padding:0 0 0 .4rem;position:relative}
.tl::before{content:"";position:absolute;left:.4rem;top:.6rem;bottom:.6rem;border-left:2px solid var(--line)}
.tl__row{display:grid;grid-template-columns:10.5rem 5.6rem minmax(0,1fr);gap:.8rem;align-items:baseline;padding:.55rem 0 .55rem 1.3rem;position:relative}
.tl__row::before{content:"";position:absolute;left:-.32rem;top:1rem;width:.75rem;height:.75rem;border-radius:50%;background:var(--paper);border:2px solid var(--steel)}
.tl__row time{font:600 .82rem/1.3 var(--mono);font-stretch:87.5%;color:var(--ink3)}
.tl__row p{margin:0}
.tl__tag{font:800 .68rem/1.6 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--steel)}
.tl--noticed::before{border-color:var(--signal);background:var(--signal)}.tl--noticed .tl__tag{color:var(--signal-text)}
.tl--fixed::before{border-color:var(--ok);background:var(--ok)}.tl--fixed .tl__tag{color:var(--ok)}
.tl--told::before{border-color:var(--ink)}.tl--told .tl__tag{color:var(--ink)}
.tl--did::before{border-color:var(--amber);background:var(--amber)}
.whys{list-style:none;margin:0 0 1.2rem;padding:0;display:grid;gap:.45rem}
.whys li{display:grid;grid-template-columns:5rem minmax(0,1fr);gap:.8rem;align-items:baseline;padding:.6rem .8rem;background:var(--fog);border-radius:var(--r);position:relative}
.whys li:not(:last-child)::after{content:"";position:absolute;left:2.2rem;bottom:-.55rem;border:6px solid transparent;border-top-color:var(--mist)}
.whys__n{font:800 .74rem/1.6 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--signal-text)}
.whys p{margin:0}
.cause{border:2px solid var(--ink);border-radius:var(--r);padding:1rem 1.1rem;margin-bottom:1.2rem}
.cause__k{font:800 .74rem/1 var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--signal-text);margin-bottom:.5rem}
.cause__v{font-size:1.1rem;font-weight:500;margin:0}
.sublabel{font:800 .74rem/1.2 var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--steel);margin:0 0 .5rem}
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.45rem}
.chips li{border:1px solid var(--line);border-radius:99px;padding:.3rem .8rem;font-size:.88rem;background:var(--paper)}
.acts{width:100%;border-collapse:collapse;font-size:.94rem}
.acts th{text-align:left;font:800 .7rem/1.2 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--steel);border-bottom:2px solid var(--ink);padding:.5rem .6rem .5rem 0}
.acts td{border-bottom:1px solid var(--line2);padding:.65rem .6rem .65rem 0;vertical-align:top}
.acts tr.is-done td{color:var(--steel)}
.acts tr.is-done td:nth-child(3){text-decoration:line-through}
.atype{display:inline-block;font:800 .66rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase;padding:.35em .55em;border-radius:3px;background:var(--fog);color:var(--ink)}
.atype--prevent{background:var(--ink);color:#fff}
.atype--detect{background:var(--amber);color:var(--ink)}
.atype--respond{background:var(--line);color:var(--ink)}
.report__foot{padding:1rem clamp(1.2rem,3vw,2.4rem);font:600 .74rem/1.4 var(--mono);font-stretch:87.5%;color:var(--steel);background:#f7f8fa}
.report__foot p{margin:0}
.side{position:sticky;top:5.5rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--r2);padding:1.2rem}
.side h2{font-size:1.2rem;text-transform:uppercase;letter-spacing:.03em}
.side .check{font-size:.88rem;padding:.6rem .7rem}
.side__tools{display:grid;gap:.6rem;margin-top:1rem}
.paynote{margin:.2rem 0 0}
.printnote{margin:0;line-height:1.4}

/* desk + editor */
.desk-head{background:var(--paper);border-bottom:1px solid var(--line);padding:1.6rem 0 1.1rem}
.desk-head__row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.8rem 2rem}
.desk-head h1{font-size:clamp(1.9rem,4vw,2.8rem);margin:0}
.desk-head__sev{display:flex;gap:.8rem;align-items:center}
.desk-head__count{margin:0;color:var(--steel)}
.desk-head .small{margin:.8rem 0 0}
.editor{padding:1.6rem clamp(16px,4vw,40px) 4rem}
.form{display:grid;gap:1.2rem}
.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r2);padding:1.4rem clamp(1rem,2.5vw,1.8rem)}
.panel h2{font-size:1.45rem;text-transform:uppercase;letter-spacing:.02em}
.panel--check{border-left:6px solid var(--signal)}
.saved{background:var(--ok-soft);border:1px solid #b9e2cd;color:var(--ok);border-radius:var(--r);padding:.6rem .85rem;font-weight:600}
.hint{color:var(--steel);font-size:.93rem;max-width:52em}
.field{display:grid;gap:.35rem;font:700 .78rem/1.3 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);margin-bottom:.9rem}
input,select,textarea{font:400 1rem/1.4 var(--body);color:var(--ink);background:var(--paper);border:1.5px solid #b8bfc9;border-radius:var(--r);padding:.62rem .7rem;width:100%;min-width:0;letter-spacing:0;text-transform:none}
textarea{resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(255,84,16,.35)}
input.mono,textarea.mono{font-family:var(--mono);font-stretch:87.5%;font-size:.88rem}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 1rem}
.field--wide{grid-column:span 1}
.readout{display:flex;flex-wrap:wrap;gap:.5rem 1.6rem;background:var(--fog);border-radius:var(--r);padding:.7rem .9rem;margin:0;font-size:.93rem}
.readout b{font-family:var(--mono);font-stretch:87.5%;font-size:.9rem;margin-left:.3rem}
.readout__why{color:var(--steel)}
.tlform{display:grid;gap:.4rem;margin-bottom:1rem}
.tlform__head,.tlform__row{display:grid;grid-template-columns:11rem 7.5rem minmax(0,1fr);gap:.5rem}
.tlform__head span{font:800 .7rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--steel)}
.paste{border:1px dashed #b8bfc9;border-radius:var(--r);padding:.7rem .9rem;background:#fafbfc}
.paste summary,.danger summary{cursor:pointer;font:700 .9rem/1.2 var(--display);letter-spacing:.06em;text-transform:uppercase}
.paste[open] summary{margin-bottom:.6rem}
.whyform{margin:0 0 .4rem;padding-left:0;list-style:none}
.factors{border:0;padding:0;margin:0 0 .6rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.factors legend{font:800 .78rem/1 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);margin-bottom:.8rem;padding:0}
.checkrow{display:flex;gap:.55rem;align-items:flex-start;font-size:.94rem;margin:.3rem 0}
.checkrow input{width:1.1rem;height:1.1rem;margin-top:.2rem;flex:none;accent-color:var(--signal)}
.actform{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(0,.9fr) minmax(0,1.1fr) minmax(0,1fr) auto;gap:0 .8rem;align-items:end;border-bottom:1px dashed var(--line);padding-bottom:.3rem;margin-bottom:.7rem}
.actform__done{margin-bottom:1.6rem}
.savebar{position:sticky;bottom:0;display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:var(--r2);padding:.8rem 1rem;box-shadow:0 -6px 20px rgba(20,22,26,.08);z-index:3}
.danger{margin-top:2rem;border-top:1px solid var(--line);padding-top:1rem;max-width:30rem}
.danger form{margin-top:.8rem}
.deskgrid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:2rem;padding-top:1.8rem;padding-bottom:1rem;align-items:start}
.h-label{font-size:1.25rem;text-transform:uppercase;letter-spacing:.04em}
.cards{list-style:none;margin:0 0 1.2rem;padding:0;display:grid;gap:.8rem}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r2);padding:1rem 1.1rem}
.card__top{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.6rem}
.card__top .tag{margin:0}
.card h3{margin:0 0 .3rem;font-size:1.35rem}
.card h3 a{color:var(--ink);text-decoration:none}
.card h3 a:hover{text-decoration:underline}
.card .mono{margin:0 0 .4rem}
.card__links{display:flex;gap:1rem;margin:0;font-weight:600}
.newrep{background:var(--paper);border:1px dashed #b8bfc9;border-radius:var(--r2);padding:1rem 1.1rem;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) auto;align-items:end;gap:0 .8rem}
.board{background:var(--ink);color:#e4e7eb;border-radius:var(--r2);padding:1.3rem 1.3rem 1rem}
.board .h-label{color:#fff}
.board .tag{background:transparent;color:#cfd4db;border-color:#444b56;vertical-align:.2em;margin:0 0 0 .4rem}
.board a{color:#fff}
.board .muted,.board .small{color:#a5adb8}
.boardlist{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.6rem}
.boardlist li{background:var(--ink2);border-radius:var(--r);padding:.75rem .85rem;border-left:4px solid var(--mist)}
.boardlist li.is-late{border-left-color:var(--signal)}
.boardlist p{margin:.4rem 0 0}
.boardlist .mono{color:#b9c0c9}
.boardlist li.is-late .mono{color:#ffb08f}
.deskfoot{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;align-items:flex-start;padding-bottom:4rem}
.inline{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:0 .8rem;min-width:min(100%,26rem)}
.startbox{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(2rem,5vw,4rem);padding-top:clamp(2.5rem,6vw,5rem);padding-bottom:clamp(3rem,6vw,5rem);align-items:start}
.startbox__form{background:var(--paper);border:2px solid var(--ink);border-radius:var(--r2);padding:1.5rem;box-shadow:10px 10px 0 var(--signal)}
.btn--big.startbox__go{width:100%}

/* docs */
.doc{padding:clamp(2.5rem,6vw,4.5rem) 0 4.5rem}
.doc__in{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(2rem,5vw,4rem);align-items:start}
.doc__head{grid-column:1/-1;max-width:52rem;margin-bottom:1rem}
.doc__head--center{text-align:center;margin:0 auto 2.5rem}
.doc__head--center .lede{margin:0 auto}
.doc__narrow{max-width:46rem}
.doc__narrow h2{font-size:1.45rem;text-transform:uppercase;letter-spacing:.02em;margin-top:1.8rem}
.doc__narrow ul{padding-left:1.2rem}
.doc__narrow li{margin-bottom:.5rem}
.doc__aside{position:sticky;top:6rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--r2);padding:1.3rem;display:grid;gap:.9rem}
.doc__aside h2{font-size:1.2rem;text-transform:uppercase;margin:0}
.doc__body h2{font-size:1.5rem;text-transform:uppercase;margin-top:2rem}
.steps{list-style:none;counter-reset:s;margin:0;padding:0;display:grid;gap:1.1rem}
.steps li{counter-increment:s;background:var(--paper);border:1px solid var(--line);border-radius:var(--r2);padding:1.3rem 1.4rem 1rem 4.6rem;position:relative}
.steps li::before{content:counter(s,decimal-leading-zero);position:absolute;left:1.2rem;top:1.15rem;font:700 1.25rem/1 var(--mono);font-stretch:80%;color:var(--signal-text)}
.steps h2{font-size:1.3rem;text-transform:uppercase;letter-spacing:.02em;margin-bottom:.4rem}
.steps p{margin:0;color:var(--ink3)}
.swap{width:100%;border-collapse:collapse;font-size:.92rem}
.swap th{text-align:left;font:800 .7rem/1.2 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--steel);border-bottom:2px solid var(--ink);padding:.4rem 0}
.swap td{padding:.5rem .4rem .5rem 0;border-bottom:1px solid var(--line2)}
.swap td:first-child{text-decoration:line-through;color:var(--steel)}
.rules{width:100%;border-collapse:collapse;background:var(--paper);border:1px solid var(--line);border-radius:var(--r2);overflow:hidden}
.rules th{text-align:left;font:800 .72rem/1.2 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--steel);padding:.8rem 1rem;border-bottom:2px solid var(--ink)}
.rules td{padding:1rem;border-bottom:1px solid var(--line2);vertical-align:top}
.rules ul{margin:0;padding-left:1.1rem}
.defs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0}
.defs div{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:.9rem 1rem}
.defs dt{font:800 .8rem/1.2 var(--display);letter-spacing:.1em;text-transform:uppercase}
.defs dd{margin:.35rem 0 0;color:var(--ink3)}
.formula{background:var(--ink);color:#fff;border-radius:var(--r);padding:1rem 1.2rem;font-size:.9rem;line-height:1.7;overflow-wrap:anywhere}
.faq{max-width:52rem;margin:3rem auto 0}
.faq dl{margin:0;display:grid;gap:.8rem}
.faq div{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:1rem 1.2rem}
.faq dt{font-weight:700;margin-bottom:.3rem}
.faq dd{margin:0;color:var(--ink3)}
.msg{padding-top:clamp(3rem,8vw,6rem);padding-bottom:clamp(3rem,8vw,6rem);max-width:46rem}

/* footer */
.foot{background:var(--ink);color:#b9c0c9;padding:3.2rem 0 1.4rem;font-size:.93rem}
.foot__grid{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:2rem;padding-bottom:2rem;border-bottom:1px solid #2f343c}
.foot__about p{margin-top:1rem;max-width:30rem}
.foot h2{font:800 .74rem/1 var(--display);letter-spacing:.16em;text-transform:uppercase;color:#fff;margin:.4rem 0 1rem}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.foot a{color:#e7eaee;text-decoration:none}
.foot a:hover{color:#fff;text-decoration:underline}
.foot__base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.6rem 2rem;padding-top:1.2rem;font:500 .78rem/1.4 var(--mono);font-stretch:87.5%}
.foot__base p{margin:0}
.msg + .foot,.foot{margin-top:0}

/* responsive */
@media (max-width:1020px){
  .nav,.bar__cta{display:none}
  .menu{display:block}
  .file > .wrap{grid-template-columns:minmax(0,1fr)}
  .side{position:static}
  .doc__in{grid-template-columns:minmax(0,1fr)}
  .doc__aside{position:static}
  .sevs{grid-template-columns:repeat(2,1fr)}
  .principles__in{grid-template-columns:repeat(2,1fr)}
  .foot__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .foot__about{grid-column:1/-1}
}
@media (max-width:820px){
  .hero__in,.checkband__in,.startbox,.deskgrid{grid-template-columns:minmax(0,1fr)}
  .parts{grid-template-columns:minmax(0,1fr)}
  .parts li,.parts li:not(:nth-child(3n+1)){padding:1.3rem 0;border-left:0}
  .plans{grid-template-columns:minmax(0,1fr)}
  .grid4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid2,.report__two,.impact{grid-template-columns:minmax(0,1fr)}
  .factors{grid-template-columns:minmax(0,1fr)}
  .actform{grid-template-columns:repeat(2,minmax(0,1fr))}
  .actform__text{grid-column:1/-1}
  .actform__done{margin-bottom:.9rem}
  .newrep{grid-template-columns:minmax(0,1fr)}
  .defs{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:560px){
  body{font-size:16px}
  .strip__in span:nth-child(2),.strip__sep{display:none}
  .strip__in{white-space:normal;padding-top:.45rem;padding-bottom:.45rem;line-height:1.35}
  .bar__in{min-height:3.8rem}
  .brand__word{font-size:1.35rem}
  .menu summary{padding:.6rem .75rem}
  .hero .btn--big{width:100%}
  .recorder__box{transform:none}
  .recorder__tl{grid-template-columns:repeat(3,1fr)}
  .recorder__tl li:nth-child(n+4){display:none}
  .clock{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .tl__row{grid-template-columns:minmax(0,1fr);gap:.15rem}
  .tlform__head{display:none}
  .tlform__row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:#fafbfc;border:1px solid var(--line2);border-radius:var(--r);padding:.5rem}
  .tlform__row label:last-child{grid-column:1/-1}
  .whys li{grid-template-columns:minmax(0,1fr);gap:.2rem}
  .acts thead{display:none}
  .acts,.acts tbody,.acts tr,.acts td{display:block;width:100%}
  .acts tr{border-bottom:1px solid var(--line);padding:.5rem 0}
  .acts td{border:0;padding:.15rem 0;display:grid;grid-template-columns:5rem minmax(0,1fr);gap:.6rem}
  .acts td::before{content:attr(data-k);font:800 .66rem/1.8 var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--steel)}
  .sevs,.principles__in{grid-template-columns:minmax(0,1fr)}
  .grid4,.actform{grid-template-columns:minmax(0,1fr)}
  .foot__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .steps li{padding:3.2rem 1.1rem 1rem}
  .steps li::before{top:1.1rem;left:1.1rem}
  .savebar{gap:.45rem .5rem;padding:.55rem .6rem}
  .savebar .btn{flex:1 1 0;padding:.8em .5em .75em;font-size:.8rem}
  .savebar .small{flex:1 1 100%;font-size:.74rem;line-height:1.3;margin:0}
  .inline{grid-template-columns:minmax(0,1fr)}
}

/* print: the report as a clean document */
@media print{
  @page{margin:16mm 14mm}
  body{background:#fff;font-size:11pt}
  .strip,.bar,.foot,.noprint,.notice,.crumbs,.skip{display:none!important}
  .file{padding:0}
  .file > .wrap{display:block;padding:0;max-width:none}
  .report{border:0;box-shadow:none;border-radius:0}
  .report__head{background:none;border-left:6pt solid #000;padding:0 0 10pt 12pt}
  .report__sec{padding:10pt 0;break-inside:avoid-page}
  .tl__row,.whys li,.acts tr{break-inside:avoid}
  .bill,.whys li,.clock__k,.report__foot{background:#f3f3f3!important}
  a{color:#000;text-decoration:none}
  .sev{border:1pt solid #000}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
