*{box-sizing:border-box;margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background:#F0F3FA;color:#2C3E5A;line-height:1.6;font-size:14px}
a{color:#185FA5}
.wrap{max-width:920px;margin:0 auto;padding:2rem 1.25rem 5rem}

/* ── HEADER ── */
.hdr{background:#0D1B3E;border-radius:12px;padding:2.5rem 2rem 2rem;margin-bottom:1.5rem}
.hdr-logo{font-size:10px;font-weight:700;color:#F5A623;letter-spacing:2.5px;text-transform:uppercase;margin-bottom:.5rem}
.hdr-title{font-size:26px;font-weight:700;color:#fff;line-height:1.3;margin-bottom:.4rem}
.hdr-sub{font-size:13px;color:#8FA8CC;line-height:1.65;margin-bottom:1.2rem}
.hdr-pills{display:flex;flex-wrap:wrap;gap:7px}
.pill{background:rgba(245,166,35,.15);border:1px solid rgba(245,166,35,.4);color:#F5C65C;font-size:10px;padding:3px 11px;border-radius:20px;font-weight:700}

/* ── WARNING ── */
.warn{background:#FCEBEB;border:1px solid #E24B4A;border-left:5px solid #E24B4A;border-radius:8px;padding:1.1rem 1.25rem;margin-bottom:1.5rem}
.warn-t{font-size:12px;font-weight:700;color:#791F1F;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.35rem}
.warn-b{font-size:12px;color:#A32D2D;line-height:1.75}
.warn-b strong{color:#791F1F}

/* ── TOC ── */
.toc{background:#fff;border:1px solid #DDE4F0;border-radius:10px;padding:1.2rem 1.5rem;margin-bottom:1.5rem}
.toc-t{font-size:9.5px;font-weight:700;color:#8FA8CC;letter-spacing:2px;text-transform:uppercase;margin-bottom:.7rem}
.toc-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:4px}
.toc-a{font-size:11.5px;color:#185FA5;text-decoration:none;padding:2px 0}
.toc-a:hover{text-decoration:underline}
.exp-btn{font-size:14px;color:#185FA5;cursor:pointer;text-decoration:none;margin-bottom:1rem;display:inline-block;background:none;border:none;padding:0}

/* ── SECTIONS ── */
.sec{background:#fff;border:1px solid #DDE4F0;border-radius:10px;margin-bottom:.65rem;overflow:hidden}
.sec-hd{display:flex;align-items:center;gap:10px;padding:.85rem 1.2rem;cursor:pointer;border-bottom:1px solid #DDE4F0;background:#F8FAFD;user-select:none}
.sec-hd:hover{background:#EEF3FB}
.sec-num{width:27px;height:27px;border-radius:50%;background:#0D1B3E;color:#F5A623;font-size:9.5px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.sec-ttl{font-size:12.5px;font-weight:700;color:#0D1B3E;flex:1}
.badge{font-size:8.5px;padding:2px 8px;border-radius:20px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}
.br{background:#FCEBEB;color:#791F1F}
.ba{background:#FAEEDA;color:#633806}
.bt{background:#E1F5EE;color:#085041}
.chv{font-size:11px;color:#8FA8CC;transition:transform .22s}
.chv.open{transform:rotate(180deg)}
.sec-bd{padding:1.4rem;display:none}
.sec-bd.open{display:block}
.cl{font-size:12px;color:#3A4E6A;line-height:1.8;margin-bottom:.8rem}
.cl:last-child{margin-bottom:0}
.cl strong{font-weight:700;color:#1A2B45}
.cll{margin:.4rem 0 .8rem 1.3rem}
.cll li{font-size:11.5px;color:#3A4E6A;line-height:1.75;margin-bottom:.2rem}
.hl-r{background:#FCEBEB;border-left:4px solid #E24B4A;padding:.85rem 1rem;margin:.8rem 0;font-size:12px;color:#501313;line-height:1.8;border-radius:0 5px 5px 0}
.hl-a{background:#FAEEDA;border-left:4px solid #BA7517;padding:.85rem 1rem;margin:.8rem 0;font-size:12px;color:#412402;line-height:1.8;border-radius:0 5px 5px 0}
.hl-b{background:#E6F1FB;border-left:4px solid #378ADD;padding:.85rem 1rem;margin:.8rem 0;font-size:12px;color:#042C53;line-height:1.8;border-radius:0 5px 5px 0}

/* ── STEP CARDS ── */
.step-card{background:#fff;border-radius:12px;margin-top:1.5rem;overflow:hidden;border:1.5px solid #DDE4F0}
.step-card.active{border-color:#0D1B3E}
.step-hdr{display:flex;align-items:center;gap:12px;padding:1rem 1.4rem;background:#0D1B3E}
.step-num{width:32px;height:32px;border-radius:50%;background:#F5A623;color:#0D1B3E;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.step-ttl{font-size:14px;font-weight:700;color:#fff}
.step-sub{font-size:11px;color:#8FA8CC;margin-top:1px}
.step-body{padding:1.5rem}

/* ── CHECKBOX ROWS ── */
.chk-row{display:flex;align-items:flex-start;gap:11px;margin-bottom:.75rem;padding:.75rem;border-radius:7px;border:1px solid #EEF1F8;background:#FAFBFD;transition:background .1s}
.chk-row:hover{background:#F0F5FF}
.chk-row.ticked{background:#F0FBF5;border-color:#9FE1CB}
.chk-row input[type=checkbox]{width:17px;height:17px;margin-top:2px;flex-shrink:0;accent-color:#0D1B3E;cursor:pointer}
.chk-lbl{font-size:11.5px;color:#3A4E6A;line-height:1.7;cursor:pointer}
.chk-lbl strong{color:#1A2B45;font-weight:700}

/* ── FORM FIELDS ── */
.fld-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
.fld-full{grid-column:1/-1}
.fld-grp{display:flex;flex-direction:column;gap:4px}
.fld-lbl{font-size:11px;font-weight:700;color:#0D1B3E;letter-spacing:.3px}
.req{color:#E24B4A}
.fld-inp{padding:.65rem .9rem;border:1.5px solid #DDE4F0;border-radius:7px;font-size:12px;color:#1A2B45;background:#FAFBFD;outline:none;transition:border-color .15s;font-family:inherit;width:100%}
.fld-inp:focus{border-color:#0D1B3E;background:#fff}
.fld-inp.invalid{border-color:#E24B4A;background:#FFF5F5}
.fld-ta{padding:.65rem .9rem;border:1.5px solid #DDE4F0;border-radius:7px;font-size:12px;line-height:18px;color:#1A2B45;background:#FAFBFD;outline:none;resize:vertical;font-family:inherit;min-height:70px;transition:border-color .15s;width:100%}
.fld-ta:focus{border-color:#0D1B3E;background:#fff}
.fld-ta.invalid{border-color:#E24B4A;background:#FFF5F5}
.fld-err{font-size:10px;color:#E24B4A;display:none;margin-top:2px}
.fld-err.show{display:block}

/* ── DATETIME STRIP ── */
.dt-strip{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:.75rem 0}
.dt-card{background:#EEF5FF;border-radius:8px;padding:.8rem 1rem;border:1px solid #C5D9F5}
.dt-lbl{font-size:9.5px;font-weight:700;color:#8FA8CC;text-transform:uppercase;letter-spacing:1px;margin-bottom:.25rem}
.dt-val{font-size:12px;font-weight:700;color:#0D1B3E;font-variant-numeric:tabular-nums}

/* ── SIGNATURE CANVAS ── */
.canvas-wrap{margin-bottom:1rem}
.canvas-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}
.canvas-lbl{font-size:11px;font-weight:700;color:#0D1B3E}
.clear-btn{font-size:10.5px;color:#185FA5;background:none;border:1px solid #DDE4F0;border-radius:5px;padding:3px 10px;cursor:pointer}
.canvas-hint{font-size:10px;color:#8FA8CC;margin-bottom:.5rem}
#sigCanvas{width:100%;height:140px;border:2px dashed #0D1B3E;border-radius:8px;background:#FAFBFD;cursor:crosshair;touch-action:none;display:block}
#sigCanvas.drawn{border:2px solid #1D9E75;background:#fff}
.canvas-err{font-size:10px;color:#E24B4A;display:none;margin-top:4px}
.canvas-err.show{display:block}

/* ── LEGAL NOTE ── */
.legal-note{background:#E6F1FB;border-left:4px solid #378ADD;padding:.9rem 1rem;font-size:11px;color:#042C53;line-height:1.8;margin-bottom:1.25rem;border-radius:0 6px 6px 0}

/* ── BUTTONS ── */
.btn-primary{width:100%;padding:.9rem;background:#0D1B3E;color:#F5A623;border:none;border-radius:8px;font-size:13.5px;line-height:18.5px;font-weight:700;cursor:pointer;transition:opacity .2s,background .15s;letter-spacing:.3px}
.btn-primary:disabled{opacity:.3;cursor:not-allowed}
.btn-primary:not(:disabled):hover{background:#162A5A}
.btn-dec{width:100%;padding:.7rem;background:transparent;color:#8FA8CC;border:1px solid #DDE4F0;border-radius:8px;font-size:12.5px;line-height:17.5px;cursor:pointer;margin-top:.5rem}
.btn-dec:hover{background:#F4F6FA}

/* ── CONFIRMED ── */
.confirmed{background:#E1F5EE;border:2px solid #1D9E75;border-radius:10px;padding:1.5rem;margin-top:1.25rem;display:none}
.conf-title{font-size:15px;font-weight:700;color:#085041;margin-bottom:.6rem}
.conf-grid{display:grid;grid-template-columns:130px 1fr;gap:3px 12px;font-size:12px;margin-bottom:.75rem}
.conf-key{color:#1D9E75;font-weight:700;padding:2px 0}
.conf-val{color:#085041;padding:2px 0;word-break:break-word}
.conf-ts{font-size:11px;color:#085041;font-weight:700;background:#fff;border-radius:6px;padding:.5rem .85rem;border:1px solid #9FE1CB;font-family:monospace;margin-top:.5rem;word-break:break-all}
.conf-preview{margin-top:.75rem;border-radius:8px;overflow:hidden;border:1px solid #9FE1CB}
.conf-preview canvas{width:100%;max-height:80px;display:block;background:#fff}

/* ── FOOTER ── */
.footer{text-align:center;font-size:10.5px;color:#8FA8CC;margin-top:2.5rem;line-height:2;padding-top:1.5rem;border-top:1px solid #DDE4F0}

@media(max-width:600px){
  .toc{}
  .hdr{padding:1.5rem 1.2rem}
  .hdr-title{font-size:20px}
  .fld-grid,.dt-strip{grid-template-columns:1fr}
  .fld-full{grid-column:unset}
  .toc-g{grid-template-columns:1fr 1fr}
  .conf-grid {
    display: block;
  }
  .conf-val {
    margin-bottom: 10px;
  }
}
@media print{
  .sec-bd{display:block!important}
  .step-card,.exp-btn,.chv{display:none}
}

@media(max-width:360px){
  .toc-g {
    display: block;
  }
  .toc a {
    display: block;
    margin-bottom: 5px;
  }
  .sec-hd {
    gap: 5px;
    padding: 0.85rem 1rem;
  }
}
