:root{--color-bg:#fafaf7;--color-surface:#fff;--color-fg:#14213d;--color-muted:#4a5568;--color-accent:#0b6e4f;--color-focus:#0b6e4f;--color-border:#d6d3cc;--font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--text-sm:.9375rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.25rem;--text-xl:1.375rem;--text-2xl:clamp(2rem, 5vw, 3rem);--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2.5rem;--space-5:4rem;--radius:6px;--measure:62ch}@media (prefers-color-scheme:dark){:root{--color-bg:#0f172a;--color-surface:#16213b;--color-fg:#f1f5f9;--color-muted:#cbd5e1;--color-accent:#5eead4;--color-focus:#5eead4;--color-border:#334155}}*,:before,:after{box-sizing:border-box}html{color-scheme:light dark;font-family:var(--font-sans);-webkit-text-size-adjust:100%;font-size:100%;line-height:1.55}body{background:var(--color-bg);color:var(--color-fg);flex-direction:column;min-height:100dvh;margin:0;display:flex}a{color:var(--color-accent);text-underline-offset:.15em;text-decoration:underline}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.skip-link{left:var(--space-2);background:var(--color-surface);color:var(--color-fg);padding:var(--space-1) var(--space-2);border:2px solid var(--color-accent);border-radius:var(--radius);z-index:10;position:absolute;top:-100px}.skip-link:focus{top:var(--space-2)}.wrap{width:100%;max-width:var(--measure);padding-inline:var(--space-2);margin-inline:auto}header.site{padding-block:var(--space-3);border-bottom:1px solid var(--color-border)}header.site .wrap{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}nav.primary{align-items:center;gap:var(--space-3);font-size:var(--text-sm);flex-wrap:wrap;display:flex}nav.primary a{color:var(--color-fg);text-decoration:none}nav.primary a:hover{text-decoration:underline}nav.primary a.cta{color:var(--color-bg);background:var(--color-accent);border-radius:var(--radius);padding:.5em 1em;font-weight:600}nav.primary a.cta:hover{filter:brightness(1.08);text-decoration:none}nav.legal{gap:var(--space-2);font-size:var(--text-sm);flex-wrap:wrap;margin-block-start:var(--space-1);display:flex}header.site .brand{font-weight:700;font-size:var(--text-md);letter-spacing:.01em;align-items:center;gap:.4em;text-decoration:none;display:inline-flex}.brand .brand-mark{width:1.4em;height:1.4em;display:block}.brand .brand-cruz{color:var(--color-fg)}.brand .brand-link{color:var(--color-accent)}main{padding-block:var(--space-4);flex:1}h1{font-size:var(--text-2xl);margin:0 0 var(--space-2);line-height:1.1}h2{font-size:var(--text-xl);margin:var(--space-4) 0 var(--space-1)}p{margin:0 0 var(--space-2);max-width:var(--measure)}.lede{font-size:var(--text-lg);color:var(--color-muted)}.notice{border:1px solid var(--color-border);border-left:4px solid var(--color-accent);background:var(--color-surface);padding:var(--space-2);border-radius:var(--radius);margin-block:var(--space-3)}footer.site{border-top:1px solid var(--color-border);padding-block:var(--space-3);color:var(--color-muted);font-size:var(--text-sm)}footer.site code{font-family:var(--font-mono);font-size:.875em}.badge{letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius);border:1px solid;padding:.2em .6em;font-size:.75rem;font-weight:700;display:inline-block}.badge-simulated{color:var(--color-accent)}.badge-roadmap{color:var(--color-muted)}form.stack{gap:var(--space-3);max-width:var(--measure);flex-direction:column;display:flex}.field{flex-direction:column;gap:.35rem;display:flex}.field label{font-weight:600;font-size:var(--text-base)}.field .hint{font-size:var(--text-sm);color:var(--color-muted)}.field input,.field select,.field textarea{font:inherit;color:var(--color-fg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:.65em .75em}.field textarea{resize:vertical;min-height:6rem}.field .error{font-size:var(--text-sm);font-weight:600}.field .error:before{content:"Error: "}fieldset{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-2);margin:0}fieldset legend{padding-inline:.3em;font-weight:600}.radio-row{align-items:center;gap:.5em;padding-block:.2em;display:flex}.radio-row input{width:1.1em;height:1.1em}button.btn,input[type=submit]{font:inherit;color:var(--color-bg);background:var(--color-accent);border-radius:var(--radius);cursor:pointer;border:none;align-self:flex-start;padding:.75em 1.5em;font-weight:700}button.btn:hover,input[type=submit]:hover{filter:brightness(1.08)}.card-grid{gap:var(--space-3);margin-block:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.card{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);flex-direction:column;display:flex;overflow:hidden}.card img{border-bottom:1px solid var(--color-border);width:100%;height:auto;display:block}.card .card-body{padding:var(--space-2);flex-direction:column;gap:.4em;display:flex}.card .card-body h3{font-size:var(--text-base);margin:0}.card .card-body p{font-size:var(--text-sm);color:var(--color-muted);margin:0}table.field-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}table.field-table caption{text-align:left;font-weight:700;font-size:var(--text-base);margin-block-end:var(--space-1)}table.field-table th,table.field-table td{text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top;padding:.5em .75em}table.field-table th{text-transform:uppercase;letter-spacing:.03em;color:var(--color-muted);font-size:.8125rem}.table-scroll{overflow-x:auto}pre.code{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-2);font-family:var(--font-mono);font-size:.8125rem;line-height:1.5;overflow-x:auto}.checklist{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.checklist li{border-bottom:1px solid var(--color-border);padding-block:.5em}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
