*{box-sizing:border-box}body{margin:0;background:#eef1f4;font-family:Arial,sans-serif;color:#222}.wrap{max-width:980px;margin:26px auto;background:#fff;box-shadow:0 3px 18px #0002}header{display:flex;gap:18px;align-items:center;padding:26px 32px;background:#162c4d;color:#fff}.badge{border:2px solid #fff;padding:13px 10px;font-weight:800;letter-spacing:1px}h1{margin:0 0 6px;font-size:25px}header p{margin:0;color:#dbe4ef}.notice{margin:24px 32px 0;padding:15px;border-left:5px solid #a5232d;background:#fff5e7;line-height:1.5}form{padding:12px 32px 32px}section{padding:20px 0;border-top:1px solid #d9dee5}section:first-child{border-top:0}h2{color:#162c4d}h3{color:#243b5a;margin:20px 0 7px;font-size:16px}.agreement p{line-height:1.55}.caps{font-weight:800}.grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;font-weight:700;font-size:14px}input,select{width:100%;padding:11px;margin-top:6px;border:1px solid #b8c0ca;border-radius:6px;font:inherit}.checks.vertical{display:grid;gap:10px;margin-bottom:16px}.checks label{font-weight:500;line-height:1.4}.checks input{width:auto;margin-right:8px}.signatureBox{background:#f7f9fb;padding:20px;border-radius:8px}.actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}button{border:0;border-radius:7px;padding:13px 18px;background:#162c4d;color:#fff;font-weight:800;cursor:pointer}.secondary{background:#66717c}.status{min-height:22px}.success{margin:28px 32px;padding:24px;border:1px solid #bcd5c5;background:#edf7f0;border-radius:8px}.hidden{display:none!important}footer{padding:18px 32px;background:#f4f5f7;color:#5b626a;font-size:12px;line-height:1.5}@media(max-width:680px){.wrap{margin:0}.grid{grid-template-columns:1fr}header{padding:20px}.notice,form,.success{margin-left:0;margin-right:0}form{padding:12px 20px}.actions button{width:100%}}@media print{body{background:#fff}.wrap{box-shadow:none;margin:0}.notice,.actions,footer{display:none}.agreement p{font-size:10pt}.hidden{display:none!important}}
.helper{font-size:13px;line-height:1.5;color:#555;margin:8px 0 14px}.uploadBox{margin-top:14px;padding:16px;border:1px solid #ccd4dd;border-radius:8px;background:#f8fafc}.privacyNote{font-size:13px;line-height:1.5;margin:10px 0 0;padding:10px 12px;background:#fff5e7;border-left:4px solid #a5232d}.creditAck{margin-top:14px;font-weight:500;line-height:1.45}.creditAck input{width:auto;margin-right:8px}.uploadProgress{font-size:13px;color:#555}

.portalReturn{display:inline-block;margin:10px 0;padding:12px 16px;border-radius:8px;background:#174a7e;color:white;text-decoration:none;font-weight:700}
@media print{
  body{background:white!important;color:black!important}
  .wrap{max-width:none!important;margin:0!important;padding:0!important}
  #waiverForm.hidden{display:block!important}
  #success{display:none!important}
  .actions,button,.portalReturn,.notice,footer{display:none!important}
  section{break-inside:auto!important;box-shadow:none!important;border:0!important;padding:8px 0!important;margin:0!important}
  input,select{border:0!important;border-bottom:1px solid #777!important;background:white!important;color:black!important}
  .agreement p{font-size:10pt!important;line-height:1.3!important}
  h1{font-size:16pt!important} h2{font-size:13pt!important} h3{font-size:11pt!important}
  @page{size:letter;margin:.5in}
}

/* v10 Stage 6 — daily in-person waiver access gate */
.accessGate{border:2px solid #162c4d;background:#f5f8fc;border-radius:12px;padding:18px;margin:18px 0}
.accessGate h2{margin-top:0}.accessCodeRow{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}
.accessCodeRow input{font-size:22px;letter-spacing:.22em;font-weight:800;text-align:center}
.accessCodeRow button{min-height:46px}.accessGate.unlocked{border-color:#2f6f45;background:#f2fbf5}
@media(max-width:650px){.accessCodeRow{grid-template-columns:1fr}.accessCodeRow button{width:100%}}
