/* ===========================================================================
   NICVD-2026 — Form styling (Registration & Abstract share this)
   Matches the approved design system: white card, red accents, Anton button.
   =========================================================================== */
.nicvd-form-wrap{font-family:var(--nicvd-body);color:var(--nicvd-ink)}
.nicvd-form-wrap *{box-sizing:border-box}

.nicvd-alert{border-radius:9px;padding:14px 18px;font-size:15px;margin:0 0 22px;font-weight:500}
.nicvd-alert--ok{background:#eafaf0;border:1px solid #1f9d55;color:#1c7d43}
.nicvd-alert--err{background:#fdecef;border:1px solid var(--nicvd-red);color:var(--nicvd-red-deep)}

/* display:none (not off-canvas positioning) so browser/password-manager
   autofill can't populate this and silently trip the bot trap on a real user. */
.nicvd-hp{display:none}

.nicvd-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 28px}
.nicvd-field{display:flex;flex-direction:column}
.nicvd-field--full{grid-column:1 / -1}

/* NOTE: the .nicvd-field--collapsible / --hidden / --no-transition rules that
   used to sit here drove the Bkash-vs-Cash show/hide animation. Cash is no
   longer a payment option, so those fields are always visible and the classes
   are never applied — the rules are removed rather than left as dead CSS. */

.nicvd-field label,
.nicvd-field .nicvd-label{
  font-size:13px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;
  color:var(--nicvd-navy);margin-bottom:9px;
}
.nicvd-field .req{color:var(--nicvd-red);margin-left:3px}
.nicvd-field .opt{color:#9aa0a6;font-weight:500;text-transform:none;letter-spacing:0}

.nicvd-field input[type=text],
.nicvd-field input[type=email],
.nicvd-field input[type=tel],
.nicvd-field select,
.nicvd-field textarea{
  width:100%;font-family:var(--nicvd-body);font-size:16px;color:var(--nicvd-navy);
  background:#fff;border:1px solid var(--nicvd-field-bd);border-radius:var(--nicvd-radius-sm);
  padding:13px 15px;transition:border-color .18s,box-shadow .18s;
}
.nicvd-field textarea{resize:vertical;min-height:118px}
.nicvd-field input::placeholder,.nicvd-field textarea::placeholder{color:#adb2ba}
.nicvd-field input:focus,.nicvd-field select:focus,.nicvd-field textarea:focus{
  outline:none;border-color:var(--nicvd-red);box-shadow:0 0 0 3px rgba(221,24,59,.14);
}
.nicvd-field select{
  appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:42px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23DD183B' stroke-width='3' stroke-linecap='round'><path d='M6 9l6 6 6-6'/></svg>");
  background-repeat:no-repeat;background-position:right 15px center;
}

.nicvd-radios{display:flex;gap:26px;flex-wrap:wrap;padding-top:2px}
.nicvd-radio{display:inline-flex;align-items:center;gap:8px;font-weight:500;text-transform:none;letter-spacing:0;color:var(--nicvd-ink);font-size:15px}
.nicvd-radio input{accent-color:var(--nicvd-red);width:17px;height:17px}

.nicvd-upload{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;cursor:pointer;
  border:1.5px dashed #d7bcb3;border-radius:9px;background:#FFF7F4;padding:15px 18px;
  transition:border-color .18s,background .18s;
}
.nicvd-upload:hover{border-color:var(--nicvd-red);background:#FFF0EB}
.nicvd-upload input[type=file]{position:absolute;left:-9999px}
.nicvd-upload-btn{
  font-family:var(--nicvd-disp);font-weight:400;letter-spacing:.6px;text-transform:uppercase;
  background:linear-gradient(180deg,#E4213F 0%,var(--nicvd-red) 45%,var(--nicvd-red-deep) 100%);
  color:#fff;font-size:14px;padding:11px 20px;border-radius:7px;white-space:nowrap;
  box-shadow:0 6px 14px rgba(221,24,59,.28);
}
.nicvd-upload-hint{font-size:14px;color:var(--nicvd-muted)}
.nicvd-upload-name{font-size:14px;color:var(--nicvd-red);font-weight:600}

.nicvd-section{margin-top:6px}
.nicvd-section-title{
  display:block;font-family:var(--nicvd-disp);text-transform:uppercase;letter-spacing:.6px;
  color:var(--nicvd-navy);font-size:18px;padding-bottom:8px;
  border-bottom:2px solid rgba(221,24,59,.25);
}

.nicvd-actions{grid-column:1 / -1;text-align:center;margin-top:8px}
.nicvd-btn{
  font-family:var(--nicvd-disp);font-weight:400;font-size:19px;letter-spacing:1.2px;text-transform:uppercase;
  color:#fff;border:none;border-radius:var(--nicvd-radius-pill);padding:15px 60px;cursor:pointer;
  background:linear-gradient(180deg,#E4213F 0%,var(--nicvd-red) 42%,var(--nicvd-red-deep) 100%);
  box-shadow:var(--nicvd-shadow-btn);transition:transform .15s,box-shadow .2s,filter .2s;
}
.nicvd-btn:hover{filter:brightness(1.05);transform:translateY(-2px);box-shadow:0 14px 28px rgba(221,24,59,.46)}

@media (max-width:768px){
  .nicvd-grid{grid-template-columns:1fr;gap:18px}
  .nicvd-btn{width:100%;padding:15px}
}

/* ==========================================================================
   THANK-YOU PAGE  ([nicvd_thankyou])
   Deliberately NOT the accent-bar + gradient-pill + green-tick treatment used
   on the marketing sections. This page is read by clinicians immediately after
   submitting a form, so it's styled as a formal acknowledgement notice:
   left-aligned, hairline rules instead of coloured bars, navy text, and the
   brand red reserved for the single primary action. No decorative iconography.
   ========================================================================== */
.nicvd-ty{
  max-width:720px;margin:0 auto;text-align:left;
  background:#fff;border:1px solid #dfe3e8;border-radius:3px;
  padding:38px 42px 34px;
  box-shadow:0 1px 2px rgba(16,24,40,.04);
}

/* Document-style header line: label on the left, date on the right, closed
   off with a hairline rule — reads like a letterhead rather than a banner. */
.nicvd-ty-meta{
  display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  padding-bottom:13px;border-bottom:1px solid #e6e9ed;
}
.nicvd-ty-eyebrow{
  font-family:var(--nicvd-body);font-weight:600;font-size:11.5px;
  letter-spacing:.16em;text-transform:uppercase;color:#5c6672;
}
.nicvd-ty-ref{
  font-family:var(--nicvd-body);font-size:11.5px;letter-spacing:.06em;
  text-transform:uppercase;color:#98a1ab;white-space:nowrap;
}

.nicvd-ty-head{
  font-family:var(--nicvd-disp);font-weight:700;color:var(--nicvd-navy);
  font-size:27px;line-height:1.3;margin:22px 0 0;letter-spacing:.2px;
}
.nicvd-ty-body{ color:#414a54;font-size:16px;line-height:1.75;margin:12px 0 0;max-width:60ch; }

/* Next steps: separated by a rule, not a tinted panel with a red edge. */
.nicvd-ty-next{ margin-top:26px;padding-top:22px;border-top:1px solid #e6e9ed; }
.nicvd-ty-next-h{
  font-family:var(--nicvd-body);font-weight:700;text-transform:uppercase;
  letter-spacing:.12em;font-size:12px;color:var(--nicvd-navy);
}
.nicvd-ty-next p{ margin:8px 0 0;font-size:15.5px;line-height:1.7;color:#414a54;max-width:60ch; }

.nicvd-ty-actions{ display:flex;flex-wrap:wrap;gap:10px;margin-top:20px; }
.nicvd-ty-actions .nicvd-btn,
.nicvd-ty-actions .nicvd-btn-ghost{
  font-family:var(--nicvd-body);font-weight:600;font-size:13.5px;letter-spacing:.06em;
  text-transform:uppercase;padding:12px 22px;border-radius:3px;
  cursor:pointer;text-decoration:none;display:inline-block;
  transition:background .18s,color .18s,border-color .18s;box-shadow:none;
}
/* Flat solid red — no gradient, no glow. */
.nicvd-ty-actions .nicvd-btn{
  color:#fff;border:1px solid var(--nicvd-red);background:var(--nicvd-red);
}
.nicvd-ty-actions .nicvd-btn:hover{ background:var(--nicvd-red-deep);border-color:var(--nicvd-red-deep);transform:none; }
.nicvd-ty-actions .nicvd-btn-ghost{
  color:var(--nicvd-navy);background:#fff;border:1px solid #c9ced6;
}
.nicvd-ty-actions .nicvd-btn-ghost:hover{ border-color:var(--nicvd-navy);background:#f7f8fa; }

.nicvd-ty-foot{
  margin:24px 0 0;padding-top:18px;border-top:1px solid #eef0f3;
  font-size:13.5px;line-height:1.8;color:#7b8794;
}
.nicvd-ty-foot a{ color:var(--nicvd-red);text-decoration:underline; }

@media (max-width:600px){
  .nicvd-ty{ padding:26px 20px 24px; }
  .nicvd-ty-meta{ flex-direction:column;gap:4px; }
  .nicvd-ty-head{ font-size:22px; }
  .nicvd-ty-body{ font-size:15.5px; }
  .nicvd-ty-actions .nicvd-btn,
  .nicvd-ty-actions .nicvd-btn-ghost{ flex:1 1 100%;text-align:center; }
}

/* ==========================================================================
   Post-form cross-link (registration → abstract submission)
   Deliberately unboxed: a hairline rule, a small caps label, one line of copy
   and a text link. A tinted panel with an icon competed with the submit button
   directly above it; a rule and whitespace carry the separation instead.
   ========================================================================== */
.nicvd-formnote{
  margin:34px 0 0;padding:26px 2px 0;
  border-top:1px solid #E7EBEF;
  text-align:center;
}
.nicvd-formnote__eyebrow{
  font-family:var(--nicvd-body);font-weight:700;text-transform:uppercase;
  letter-spacing:.14em;font-size:11.5px;color:var(--nicvd-navy);
  margin:0;
}
.nicvd-formnote__text{
  font-family:var(--nicvd-body);font-size:15px;line-height:1.7;color:#5B6570;
  margin:10px auto 0;max-width:52ch;
}
.nicvd-formnote__text strong{color:var(--nicvd-navy);font-weight:600;white-space:nowrap}
a.nicvd-formnote__cta{
  display:inline-flex;align-items:center;gap:9px;margin-top:14px;
  font-family:var(--nicvd-body);font-weight:600;font-size:14.5px;
  color:var(--nicvd-red);text-decoration:none;
  border-bottom:1px solid rgba(221,24,59,.32);padding-bottom:2px;
  transition:color .18s,border-color .18s;
}
.nicvd-formnote__arrow{transition:transform .22s cubic-bezier(.22,.61,.36,1)}
a.nicvd-formnote__cta:hover,
a.nicvd-formnote__cta:focus{color:var(--nicvd-red-deep);border-bottom-color:var(--nicvd-red-deep)}
a.nicvd-formnote__cta:hover .nicvd-formnote__arrow{transform:translateX(4px)}
a.nicvd-formnote__cta:focus-visible{outline:2px solid var(--nicvd-red);outline-offset:3px;border-radius:2px}

@media (max-width:600px){
  .nicvd-formnote{margin-top:28px;padding-top:22px}
  .nicvd-formnote__text{font-size:14.5px}
  a.nicvd-formnote__cta{font-size:14px}
}
@media (prefers-reduced-motion:reduce){
  .nicvd-formnote__arrow{transition:none}
  a.nicvd-formnote__cta:hover .nicvd-formnote__arrow{transform:none}
}
