:root{--red:#FF2D46;--red-2:#7A1526;--red-wash:rgba(255,45,70,.12);--amber:#FFB020;--amber-wash:rgba(255,176,32,.12);--good:#4ED07A;--bone:#F4F1F1;--ground:#0A0808;--void:#100D0D;--surface:#161212;--raised:#1C1717;--hover:#221D1D;--line:#2E2626;--line-soft:#201B1B;--edge:#6A6060;--ink:#F4F1F1;--ink-2:#B4A9A9;--ink-3:#9A8E8E;--ink-4:#8A7F7F;--display:"Archivo Variable","Archivo",system-ui,sans-serif;--body:"Archivo Variable","Archivo",system-ui,sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:72px;--s9:112px;--r:9px;--wide:1120px;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.001ms!important;transition-duration:.001ms!important}}body{background:var(--ground);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:hidden}button,input,select,textarea{font:inherit;color:inherit}button{background:none;border:0;cursor:pointer}a{color:inherit;text-decoration:none}img,svg{max-width:100%}h1,h2,h3,h4{font-family:var(--display);font-weight:700;font-stretch:118%;line-height:1.08;letter-spacing:-.025em;text-wrap:balance}h1{font-size:clamp(34px,4.4vw,56px);letter-spacing:-.028em}h2{font-size:clamp(26px,3.4vw,38px);letter-spacing:-.02em}h3{font-size:clamp(19px,2vw,23px)}p{color:var(--ink-2)}strong{color:var(--ink);font-weight:600}.mono{font-family:var(--mono)}.wrap{max-width:var(--wide);margin:0 auto;padding:0 var(--s5)}.lede{font-size:clamp(17px,2vw,20px);color:var(--ink-2);max-width:62ch}.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--ground);padding:var(--s3) var(--s4);z-index:100;font-weight:650}.skip:focus{left:var(--s4);top:var(--s4)}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.top{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:rgba(10,8,8,.86);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft)}.top .wrap{display:flex;align-items:center;gap:var(--s5);height:62px}.brand{font-family:var(--display);font-weight:800;font-stretch:118%;font-size:19px}.brand b{color:var(--red);font-weight:700}.topnav{display:flex;gap:var(--s5);margin-left:auto}.topnav,.topnav a{align-items:center}.topnav a{color:var(--ink-2);font-size:14.5px;display:inline-flex;min-height:44px}.topnav a:hover{color:var(--ink)}@media (max-width:720px){.topnav .hide-sm{display:none}}.foot{border-top:1px solid var(--line-soft);margin-top:var(--s9);padding:var(--s7) 0 var(--s8)}.foot .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-gap:var(--s6);gap:var(--s6)}.foot .fcol-head{font-family:var(--body);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);margin-bottom:var(--s3);font-weight:600}.foot a{display:block;color:var(--ink-3);font-size:14px;padding:11px 0;min-height:44px}.foot a:hover{color:var(--ink)}@media (max-width:720px){.foot .cols{grid-template-columns:1fr}}.sec{padding:var(--s9) 0}.sec-tight{padding:var(--s8) 0}.rule{height:1px;background:var(--line-soft)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);background:var(--ink);color:var(--ground);font-weight:650;padding:13px 22px;border-radius:var(--r);font-size:15px;min-height:46px;transition:transform .12s ease,background .12s ease}.btn:hover{background:#fff;transform:translateY(-1px)}.foot a.btn,.topnav a.btn,a.btn{color:var(--ground)}.btn-ghost,.foot a.btn-ghost,.topnav a.btn-ghost,a.btn.btn-ghost{color:var(--ink)}.btn-ghost{background:transparent;border:1px solid var(--edge)}.btn-ghost:hover{background:var(--hover);border-color:var(--ink-4)}.btn[disabled]{opacity:.5;pointer-events:none}.pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:5px;border:1px solid var(--line);color:var(--ink-3);white-space:nowrap}.pill.crit{color:var(--red);border-color:rgba(255,45,70,.4);background:var(--red-wash)}.pill.warn{color:var(--amber);border-color:rgba(255,176,32,.4);background:var(--amber-wash)}.pill.good{color:var(--good);border-color:rgba(78,208,122,.35)}.card{background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--r);padding:var(--s5)}.grid2{grid-template-columns:1fr 1fr;grid-gap:var(--s5)}.grid2,.grid3{display:grid;gap:var(--s5)}.grid3{grid-template-columns:repeat(3,1fr);grid-gap:var(--s5)}@media (max-width:860px){.grid2,.grid3{grid-template-columns:1fr}}.receipt{border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(180deg,var(--surface),var(--void));padding:var(--s5);font-family:var(--mono);font-size:13px}.receipt .row{display:flex;justify-content:space-between;gap:var(--s4);padding:7px 0;border-bottom:1px dashed var(--line-soft);color:var(--ink-2)}.receipt .row:last-child{border-bottom:0}.receipt .row b{color:var(--ink);font-weight:600}.receipt .row.total b{color:var(--red);font-size:17px}.tl{border-left:1px solid var(--line);padding-left:var(--s5)}.tl li{list-style:none;position:relative;padding:0 0 var(--s5) 0}.tl li:before{content:"";position:absolute;left:calc(-1 * var(--s5) - 4px);top:8px;width:7px;height:7px;border-radius:50%;background:var(--line);outline:3px solid var(--ground)}.tl li.hit:before{background:var(--red)}.tl li.fix:before{background:var(--good)}.tl .when{font-family:var(--mono);font-size:12px;color:var(--ink-4)}.tl .what{color:var(--ink);font-weight:500}.tl .why{color:var(--ink-3);font-size:14px}.q{border-top:1px solid var(--line-soft);padding:var(--s5) 0}.q h3{font-family:var(--body);font-size:17px;font-weight:600;margin-bottom:var(--s2)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--s4)}.field label{font-size:13px;color:var(--ink-2);font-weight:500}.field input,.field select,.field textarea{background:var(--surface);border:1px solid var(--edge);border-radius:7px;padding:11px 13px;font-size:15px;width:100%}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink);outline:none}.err{color:var(--red)}.err,.ok{font-size:14px}.ok{color:var(--good)}.chips{display:flex;flex-wrap:wrap;gap:var(--s2)}.chip{border:1px solid var(--edge);border-radius:999px;padding:8px 14px;font-size:14px;color:var(--ink-2);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;min-height:40px;display:inline-flex;align-items:center}.chip[aria-pressed=true]{border-color:var(--ink);color:var(--ink);background:var(--hover)}.demo{background:var(--void);border:1px solid var(--line);border-radius:12px;overflow:hidden}.demo-bar{display:flex;align-items:center;gap:var(--s3);padding:10px var(--s4);border-bottom:1px solid var(--line-soft);background:var(--surface);font-family:var(--mono);font-size:12px;color:var(--ink-3)}.demo-body{padding:var(--s5)}.demo-tabs{display:flex;gap:var(--s1);margin-bottom:var(--s5);flex-wrap:wrap}.demo-tabs button{padding:7px 13px;border-radius:7px;font-size:14px;color:var(--ink-3);border:1px solid transparent}.demo-tabs button[aria-selected=true]{background:var(--raised);color:var(--ink);border-color:var(--line)}.item{display:block;background:var(--surface);border:1px solid var(--line-soft);border-left:3px solid var(--line);border-radius:var(--r);padding:var(--s4);margin-bottom:var(--s3)}.item[data-state=miss]{border-left-color:var(--red)}.item[data-state=warn]{border-left-color:var(--amber)}.item[data-state=ok]{border-left-color:var(--good)}.itempills{display:flex;gap:var(--s2);flex-wrap:wrap;margin-bottom:var(--s2)}.itemname{font-family:var(--display);font-weight:650;font-stretch:108%;font-size:17px;color:var(--ink)}.itemsub{font-size:14px;color:var(--ink-3);margin-top:4px}.sect{display:flex;align-items:baseline;gap:var(--s3);margin:var(--s6) 0 var(--s3)}.sect h3{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);font-weight:500}.sect .line{flex:1 1;height:1px;background:var(--line-soft)}