:root{
  --paper:#ECEEE6; --paper-2:#E1E4D9; --ink:#1B2F7A; --ink-soft:#4A5A9A; --text:#1A1D24;
  --red:#C21F2B; --amber:#A86400; --green:#1D7A4C; --line:#C9CDBF; --card:#F6F7F2;
  --display:"Archivo","Arial Narrow",Arial,sans-serif; --body:"Atkinson Hyperlegible",system-ui,sans-serif;
  --stamp:"Special Elite","Courier New",monospace;
}
@media (prefers-color-scheme: dark){:root{
  --paper:#12151F; --paper-2:#1A1E2B; --ink:#9FB2FF; --ink-soft:#8F9DD0; --text:#E7E9F0;
  --red:#FF5A5F; --amber:#F2A93B; --green:#4CC98A; --line:#2B3142; --card:#171B27;}}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--text);font:400 1.0625rem/1.55 var(--body);
  background-image:repeating-linear-gradient(0deg,transparent 0 31px,color-mix(in srgb,var(--ink) 7%,transparent) 31px 32px);}
main{max-width:46rem;margin:0 auto;padding:2.5rem 1.25rem 3rem}
a{color:var(--ink)}
h1{font-family:var(--display);font-variation-settings:"wdth" 118;font-weight:900;color:var(--ink);
  font-size:clamp(2.9rem,11vw,5.4rem);line-height:.92;letter-spacing:-.02em;margin:0 0 1rem}
h1 .neg{display:inline-block;position:relative}
h1 .neg::after{content:"";position:absolute;left:-4%;right:-4%;top:52%;height:.09em;background:var(--red);transform:rotate(-4deg);border-radius:2px}
h1.page{font-size:clamp(2rem,7vw,3rem)}
h2{font-family:var(--display);font-variation-settings:"wdth" 100;font-weight:800;color:var(--ink);font-size:1.5rem;margin:2.2rem 0 .8rem}
.lede{font-size:1.2rem;max-width:34rem;margin:0 0 2rem}
.sheet{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:1.25rem;box-shadow:0 1px 0 var(--line),0 12px 30px -18px rgba(20,30,80,.35)}
label.big{display:block;font-weight:700;margin-bottom:.5rem}
.kinds{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem;padding:0;border:0}
.kinds legend{font-weight:700;margin-bottom:.5rem;padding:0}
.kinds input{position:absolute;opacity:0}
.kinds label{border:1.5px solid var(--ink);color:var(--ink);padding:.35rem .8rem;border-radius:999px;cursor:pointer;font-size:.95rem}
.kinds input:checked+label{background:var(--ink);color:var(--card)}
.kinds input:focus-visible+label{outline:3px solid var(--amber);outline-offset:2px}
textarea,input[type=email],input[type=text]{width:100%;border:1px solid var(--line);border-radius:3px;background:var(--paper);color:var(--text);font:400 1rem/1.5 var(--body);padding:.8rem}
textarea{min-height:14rem;resize:vertical}
:focus-visible{outline:3px solid var(--amber);outline-offset:2px}
.row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:1rem}
button,.btn{font:700 1.05rem var(--body);cursor:pointer;border-radius:3px;padding:.8rem 1.3rem;border:2px solid var(--ink);text-decoration:none;display:inline-block}
.primary{background:var(--ink);color:var(--card)}
.ghost{background:transparent;color:var(--ink)}
button:disabled{opacity:.55;cursor:wait}
.check{display:flex;gap:.5rem;align-items:flex-start;margin-top:.8rem;font-size:.95rem}
.fine{font-size:.88rem;color:var(--ink-soft);margin:.9rem 0 0}
.err{color:var(--red);font-weight:700}
footer{max-width:46rem;margin:0 auto;padding:0 1.25rem 3rem;font-size:.9rem;color:var(--ink-soft)}
footer nav{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.6rem}
footer .arr{font-weight:700}
.legal h2{font-size:1.2rem}
.legal p,.legal li{max-width:40rem}
.todo{background:#ffe9a8;color:#3a2d00;padding:0 .25rem;border-radius:2px}
[hidden]{display:none!important}
