  /* One field, one button. 18px+ text so iOS never zooms; 60px tap targets. */
  /* DF colours: white, blue, red. Always light, whatever the phone's setting. */
  :root{--bg:#fff;--fg:#0b2a5b;--muted:#4a5a73;--blue:#0b3d91;--red:#c8102e;--line:#b9c3d3;color-scheme:light}
  *{box-sizing:border-box}
  body{margin:0;background:var(--bg);color:var(--fg);font:20px/1.4 system-ui,-apple-system,sans-serif}
  main{max-width:460px;margin:0 auto;padding:max(28px,env(safe-area-inset-top)) 20px 40px;display:grid;gap:18px}
  h1{color:var(--blue);font-size:30px;line-height:1.15;margin:0}
  p{margin:0}
  input{width:100%;font:22px system-ui,sans-serif;padding:16px;border:2px solid var(--line);border-radius:12px;background:var(--bg);color:var(--fg)}
  input:focus{outline:none;border-color:var(--blue)}
  button{width:100%;min-height:62px;font:700 22px system-ui,sans-serif;color:#fff;background:var(--blue);border:0;border-radius:12px;cursor:pointer}
  button:focus-visible{outline:3px solid var(--fg);outline-offset:3px}
  .small{font-size:15px;color:var(--muted);overflow-wrap:anywhere}
  main>*{min-width:0}
  .skip{background:none;color:var(--muted);font-weight:400;font-size:18px;min-height:48px}
  .err{color:var(--red);font-size:17px;min-height:1.4em}
  .hp{position:absolute;left:-9999px}
  [hidden]{display:none!important}
  .test{background:#e8eef8;color:var(--blue);border-bottom:3px solid var(--red);font:600 15px system-ui,sans-serif;padding:8px 12px;text-align:center}
