:root{--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#f5f5f4;color:#1c1917;line-height:1.5}
a{color:#b45309}.wrap{max-width:1080px;margin:0 auto;padding:0 var(--s5)}
.stripe{height:10px;background:repeating-linear-gradient(-45deg,#facc15 0 18px,#1c1917 18px 36px)}
header{background:#1c1917;color:#fff}header .wrap{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;flex-wrap:wrap;gap:10px}
.logo{font-weight:900;letter-spacing:.5px;color:#facc15;text-decoration:none;font-size:20px}.logo span{color:#fff}
header nav a{color:#e7e5e4;text-decoration:none;margin-left:18px;font-weight:600}header header nav a:hover{color:#facc15}
.hero{background:#1c1917;color:#fff;padding:var(--s8) 0}.hero h1{font-size:clamp(32px,6vw,56px);line-height:1.05;margin:0 0 var(--s4)}.hero h1 em{color:#facc15;font-style:normal}
.hero p{font-size:19px;color:#d6d3d1;max-width:640px}
.btn{display:inline-block;background:#facc15;color:#1c1917;font-weight:800;padding:var(--s3) var(--s5);border-radius:6px;text-decoration:none;border:0;cursor:pointer;font-size:16px}
.btn.dark{background:#1c1917;color:#facc15}.btn.ghost{background:transparent;color:#facc15;border:2px solid #facc15}
section{padding:var(--s7) 0}h2{font-size:30px;margin:0 0 var(--s4)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--s4);margin-top:calc(-1*var(--s7))}
.stat{background:#fff;border-left:6px solid #facc15;padding:var(--s5);border-radius:6px;box-shadow:0 2px 10px #0001}.stat b{font-size:40px;display:block}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--s5)}.card{background:#fff;border-radius:8px;padding:var(--s5);box-shadow:0 2px 10px #0001}
.step{font-weight:900;color:#b45309}
form .row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--s3)}
input,select{width:100%;padding:var(--s3);border:2px solid #d6d3d1;border-radius:6px;font-size:16px;background:#fff}input:focus,select:focus{outline:none;border-color:#facc15}
label.chk{display:flex;gap:10px;align-items:flex-start;margin:12px 0;font-size:14px}label.chk input{width:auto;margin-top:4px}
table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden}th,td{padding:var(--s3);text-align:left;border-bottom:1px solid #e7e5e4}th{background:#1c1917;color:#facc15;font-size:13px;text-transform:uppercase}
.g{display:inline-block;width:34px;height:34px;line-height:34px;text-align:center;border-radius:50%;font-weight:900}
.gA{background:#22c55e}.gB{background:#84cc16}.gC{background:#facc15}.gD{background:#f97316}.gF{background:#ef4444;color:#fff}
.badge{font-size:11px;background:#ffedd5;color:#9a3412;padding:2px 7px;border-radius:10px;font-weight:700;margin-left:6px;white-space:nowrap}
.dark{background:#292524;color:#fff}.dark p{color:#d6d3d1}
.timer{font-size:64px;font-weight:900;font-variant-numeric:tabular-nums;color:#1c1917}
.code{font-family:ui-monospace,monospace;background:#1c1917;color:#facc15;padding:4px 10px;border-radius:4px;font-size:18px}
.msg{padding:10px;border-radius:6px;margin-top:10px}.err{background:#fee2e2}.ok{background:#dcfce7}
footer{background:#1c1917;color:#a8a29e;padding:var(--s6) 0;font-size:14px}.filters{display:flex;gap:var(--s3);flex-wrap:wrap;margin-bottom:16px}.filters select{max-width:240px}
.tablewrap{overflow-x:auto}@media(max-width:600px){nav a{margin-left:12px}.hide-sm{display:none}}
/* UX/a11y additions: 44px targets, visible focus, labels, stepper */
.btn,nav a,input,select{min-height:44px}nav a{display:inline-flex;align-items:center}
:focus-visible{outline:3px solid #2563eb;outline-offset:2px}
label.f{display:block;font-weight:700;font-size:15px;margin-bottom:4px}.hint{font-size:14px;color:#57534e}
.field .e{color:#b91c1c;font-size:14px;min-height:20px}input[aria-invalid=true]{border-color:#b91c1c}
.steps{display:flex;gap:8px;list-style:none;padding:0;margin:0 0 20px;counter-reset:s}.steps li{flex:1;padding:10px;border-radius:6px;background:#e7e5e4;font-weight:700;font-size:14px}
.steps li.on{background:#facc15}.steps li.done{background:#1c1917;color:#facc15}
.proof{display:flex;gap:22px;flex-wrap:wrap;margin-top:22px;color:#d6d3d1;font-size:15px}.proof b{color:#facc15;font-size:22px;display:block}
.empty{background:#fff;padding:var(--s6);text-align:center;border-radius:8px}
.stack{margin-top:var(--s4)}details summary{cursor:pointer;min-height:44px}details h3{font-size:18px}
