  :root{
    --navy:#0B3B83; --orange:#EA9900; --blue:#5E92CE;
    --field:#FBF0E8; --ink:#1d2433; --muted:#667085; --line:#d7deea;
  }
  *{box-sizing:border-box}
  body{margin:0;background:#eef2f8;color:var(--ink);font:15px/1.45 "Segoe UI",Calibri,Arial,sans-serif}
  .sheet{max-width:860px;margin:24px auto;background:#fff;padding:28px 36px 20px;border-radius:6px;box-shadow:0 2px 12px rgba(11,59,131,.12)}
  header{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:3px solid var(--orange);padding-bottom:8px}
  header h1{margin:0;color:var(--navy);font-size:26px;letter-spacing:.2px}
  .logo{height:62px;width:auto;display:block}
  .hint{color:var(--muted);font-style:italic;font-size:13px;margin:6px 0 10px}
  .notice{background:#FFF6E0;border-left:4px solid var(--orange);padding:8px 12px;margin:0 0 14px;font-size:13px;color:var(--ink)}
  .grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px}
  label.f{display:block;color:var(--navy);font-weight:700;font-size:14px}
  label.f span.req{color:#c0392b}
  input[type=text],input[type=email],input[type=tel],input[type=date],select,textarea{
    width:100%;margin-top:3px;padding:8px 10px;background:var(--field);border:1px solid #f0dccb;border-radius:3px;font:inherit;color:var(--ink)}
  input:focus,textarea:focus{outline:2px solid var(--blue);background:#fff}
  textarea{min-height:90px;resize:vertical}
  h2{background:var(--navy);color:#fff;font-size:14px;letter-spacing:.6px;margin:26px 0 12px;padding:5px 8px;border-bottom:3px solid var(--orange);text-transform:uppercase}
  .q{color:var(--navy);font-weight:700;font-size:14px;margin:12px 0 4px}
  .checks{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px}
  .checks label,.yn label{display:flex;align-items:center;gap:8px;cursor:pointer}
  .checks input,.yn input{width:17px;height:17px;accent-color:var(--navy);flex:none}
  .checks .other{display:flex;align-items:center;gap:8px}
  .checks .other input[type=text]{margin:0;padding:5px 8px}
  .yn{display:flex;gap:22px}
  .stack{margin-top:12px}
  .actions{margin-top:26px;border-top:3px solid var(--orange);padding-top:14px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
  button{background:var(--navy);color:#fff;border:0;border-radius:4px;padding:11px 28px;font:700 15px inherit;cursor:pointer}
  button:hover{background:#082c63}
  .foot{color:var(--muted);font-size:12px}
  .foot b{color:var(--navy)} .foot i{color:var(--orange);font-weight:700}
  .hp{position:absolute;left:-9999px}
  @media(max-width:640px){.sheet{margin:0;padding:18px 16px;border-radius:0}.grid2,.checks{grid-template-columns:1fr}header h1{font-size:20px}}
  .bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0 4px;font-size:13px;color:var(--muted)}
  .bar a,.bar button.link{color:var(--navy);background:none;border:0;padding:0;font:inherit;text-decoration:underline;cursor:pointer}
  .bar button.link:hover{background:none}
  .status{margin:10px 0;padding:8px 12px;border-left:4px solid var(--blue);background:#eef4fb;font-size:14px}
  .status.err{border-color:#c0392b;background:#fdecea}
  .status.ok{border-color:#2e7d32;background:#e8f5e9}
  .gate{text-align:center;padding:30px 0 20px}
  .gate p{color:var(--muted)}
  .fielderr{color:#c0392b;font-size:12px;font-weight:400;display:block}
  button[disabled]{opacity:.6;cursor:wait}
  [hidden]{display:none!important}


  .tog{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--navy);color:#fff;font:700 15px/1 "Segoe UI",Arial,sans-serif;user-select:none}
  tr.row.open .tog{background:var(--orange)}
  tr.row:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}
  td.togcell{width:34px;padding-right:0}

.envbanner{background:#c0392b;color:#fff;text-align:center;font-weight:700;padding:6px;font-size:14px;letter-spacing:.5px}
