:root{--ink: #16181d;--muted: #5b6070;--line: #d8dce5;--accent: #2f5bd7;--danger: #b3261e;--surface: #ffffff;--page: #f6f7fa;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:17px;line-height:1.5}.runtime-shell{margin:0 auto;max-width:40rem;padding:1.5rem 1.25rem 4rem}.question-stem{font-size:1.25rem;font-weight:600;line-height:1.35;margin:.75rem 0 0}section[data-page-code],section[data-endpoint]{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:1.5rem 1.25rem}.progress-track{background:var(--line);border-radius:999px;height:8px;overflow:hidden}.progress-fill{background:var(--accent);height:100%;transition:width .2s ease-out}button[data-action=next]{background:var(--accent);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1.75rem;min-height:44px;padding:0 1.5rem;width:100%}button[data-action=next]:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:2px}label{align-items:center;border:1px solid var(--line);border-radius:8px;cursor:pointer;display:flex;gap:.75rem;margin-top:.5rem;min-height:44px;padding:.5rem .75rem}label:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}input[type=radio],input[type=checkbox]{height:20px;margin:0;width:20px}input[type=text],input[type=number],input[type=date],input[type=range],textarea{border:1px solid var(--line);border-radius:8px;font:inherit;min-height:44px;padding:.5rem .75rem}textarea{width:100%}[data-validation-error],.transport-error{border-left:4px solid var(--danger);color:var(--danger);font-weight:600;margin-top:.75rem;padding-left:.75rem}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--line);padding:.5rem .25rem;text-align:left}@media (prefers-reduced-motion: reduce){.progress-fill{transition:none}}
