/*
 * Clinician Onboarding — NeuroClinicians design. Standalone, scoped under #cob-wrap.
 * Headings: Fraunces · Body: Poppins · Brand teal #007c91 (same tokens as
 * nca-assessment.css). Markup/handlers come from nca-clinician-onboarding.js
 * and are unchanged — this file is presentation only.
 */
#cob-wrap{
  --ink:#222222; --ink-2:#4a4a4a; --ink-3:#7d7d7d; --ink-4:#6f6f6f;
  --brand:#007c91; --brand-dk:#005f6e; --brand-soft:#96c9d1; --brand-tint:#f1fafb; --brand-ring:rgba(0,124,145,.14);
  --green:#1f7a52; --green-bg:#e5f3ec; --green-line:#cfe8db;
  --err:#d93025; --err-bg:#fdeeee; --req:#e5484d;
  --pink-bg:#fdf1f1;
  --line:#ebebea; --field-bg:#fbfbf9; --field-line:#e9e8e4; --tile-bg:#f7f7f6;
  --r-card:24px; --r-box:12px; --r-field:999px; --r-upload:22px;
  font-family:'Poppins',system-ui,sans-serif; color:var(--ink); font-size:15px; line-height:1.5;
}
#cob-wrap *{box-sizing:border-box}
#cob-wrap .cob-shell{max-width:1180px; margin:0 auto; padding:24px 16px 60px}
#cob-wrap .cob-h1, #cob-wrap .cob-sectionhdr, #cob-wrap .cob-modal-hd h3,
#cob-wrap .cob-donewrap h1, #cob-wrap .cob-donecard h3{font-family:'Fraunces',serif; font-optical-sizing:auto; color:var(--ink)}

/* ---- layout: sidebar card + content card ---- */
#cob-wrap .cob-layout{background:none; border:none}
#cob-wrap .cob-layout-row{display:grid; grid-template-columns:240px minmax(0,1fr); gap:26px; align-items:start}
@media (max-width:860px){ #cob-wrap .cob-layout-row{grid-template-columns:1fr; gap:16px} }

/* ---- sidebar ---- */
#cob-wrap .cob-sidebar{padding:18px 12px 20px; background:#fff; border:1px solid var(--line); border-radius:var(--r-card)}
#cob-wrap .cob-sidebar-label{font-size:10px; font-weight:500; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-3); margin:0 14px 6px}
#cob-wrap .cob-navitem{display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:38px; padding:8px 14px; margin:1px 0; width:100%; background:none; border:none; border-radius:999px; text-align:left; font-family:inherit; cursor:default; box-shadow:none; transition:background .15s}
#cob-wrap .cob-navitem.clickable{cursor:pointer}
#cob-wrap .cob-navitem.clickable:hover{background:var(--brand-tint)}
#cob-wrap .cob-navlabel{font-size:13.5px; color:#6b6b6b; font-weight:400}
#cob-wrap .cob-navtick{display:inline-flex; color:var(--brand); flex-shrink:0}
#cob-wrap .cob-navtick svg{width:18px; height:18px; stroke-width:2}
#cob-wrap .cob-navitem.iscomplete .cob-navlabel{color:var(--brand)}
#cob-wrap .cob-navitem.iscurrent, #cob-wrap .cob-navitem.iscurrent.clickable:hover{background:var(--brand)}
#cob-wrap .cob-navitem.iscurrent .cob-navlabel, #cob-wrap .cob-navitem.iscurrent .cob-navtick{color:#fff}
@media (max-width:860px){
  #cob-wrap .cob-sidebar{display:flex; flex-wrap:nowrap; overflow-x:auto; gap:4px; padding:10px; border-radius:18px; -webkit-overflow-scrolling:touch; scrollbar-width:none}
  #cob-wrap .cob-sidebar::-webkit-scrollbar{display:none}
  #cob-wrap .cob-sidebar-label{display:none}
  #cob-wrap .cob-navitem{width:auto; flex:0 0 auto; min-height:34px; padding:6px 14px}
  #cob-wrap .cob-navtick svg{width:15px; height:15px}
}

/* ---- content card ---- */
#cob-wrap .cob-content{padding:clamp(22px,3.4vw,34px) clamp(18px,3.4vw,32px) clamp(22px,3vw,30px); display:flex; flex-direction:column; min-height:420px; background:#fff; border:1px solid var(--line); border-radius:var(--r-card); min-width:0}
#cob-wrap .cob-h1{font-size:clamp(22px,2.8vw,27px); font-weight:600; letter-spacing:-.005em; line-height:1.25; margin:0 0 8px}
#cob-wrap .cob-sub{font-size:13px; color:var(--ink-3); margin:0 0 22px; line-height:1.6}
#cob-wrap .cob-body{flex:1}
#cob-wrap .cob-footer{display:flex; justify-content:flex-start; align-items:center; flex-wrap:wrap; margin-top:30px; gap:12px}
#cob-wrap .cob-footer.split{justify-content:space-between}
#cob-wrap .cob-mt{margin-top:18px}

/* ---- grids + fields ---- */
#cob-wrap .cob-grid2{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:18px 20px}
#cob-wrap .cob-grid2 > *, #cob-wrap .cob-grid3 > *, #cob-wrap .cob-field{min-width:0}
@media (max-width:600px){ #cob-wrap .cob-grid2{grid-template-columns:minmax(0,1fr)} }
#cob-wrap .cob-grid3{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px 20px}
@media (max-width:680px){ #cob-wrap .cob-grid3{grid-template-columns:1fr} }
#cob-wrap .cob-field{margin-bottom:18px}
#cob-wrap .cob-grid2 .cob-field, #cob-wrap .cob-grid3 .cob-field{margin-bottom:0}
#cob-wrap .cob-label{display:block; font-size:12.5px; font-weight:400; color:var(--ink); margin:0 0 8px; line-height:1.4}
#cob-wrap .cob-label .req{color:var(--req); margin-left:6px}
#cob-wrap .cob-hint{font-size:10.5px; color:var(--ink-3); margin:6px 0 0 10px}

#cob-wrap input[type=text], #cob-wrap input[type=email], #cob-wrap input[type=tel],
#cob-wrap input[type=date], #cob-wrap select, #cob-wrap textarea{
  width:100%; font-family:inherit; font-size:13.5px; color:var(--ink); min-height:46px; height:auto;
  padding:11px 18px; border:1px solid var(--field-line); border-radius:var(--r-field);
  background:var(--field-bg); box-shadow:none; transition:border-color .15s, box-shadow .15s;
  appearance:none; -webkit-appearance:none; -moz-appearance:none; margin:0; line-height:1.4;
}
#cob-wrap select:disabled{color:var(--ink); opacity:1; cursor:default}
#cob-wrap textarea{resize:vertical; min-height:80px; border-radius:var(--r-upload)}
#cob-wrap input::placeholder, #cob-wrap textarea::placeholder{color:var(--ink-4); opacity:1}
#cob-wrap input:focus, #cob-wrap select:focus, #cob-wrap textarea:focus{outline:none; border-color:var(--brand); box-shadow:0 0 0 4px var(--brand-ring)}

/* ---- validation ---- */
#cob-wrap .cob-field.has-error input, #cob-wrap .cob-field.has-error select,
#cob-wrap .cob-field.has-error .cob-dob-wrap input, #cob-wrap .cob-qblock.has-error input{border-color:var(--err) !important}
#cob-wrap .cob-field.has-error input:focus, #cob-wrap .cob-field.has-error select:focus{box-shadow:0 0 0 4px rgba(217,48,37,.12)}
#cob-wrap .cob-yn.has-error{border-color:var(--err) !important}
#cob-wrap .cob-field-error{color:var(--err); font-size:12px; margin:6px 0 0 16px; line-height:1.4}
#cob-wrap .cob-qblock.has-error .cob-field-error{margin-left:16px}
#cob-wrap .cob-submit-error{color:var(--err); font-size:13px; line-height:1.45; margin:12px 0 0; text-align:right; white-space:pre-line}

/* ---- CQC sync link under Provider ID ---- */
#cob-wrap .cob-cqc-sync{display:inline-block; font-size:12.5px; font-weight:600; color:var(--brand); text-decoration:none; margin:7px 0 0 16px; cursor:pointer}
#cob-wrap .cob-cqc-sync:hover{text-decoration:underline; color:var(--brand-dk)}
#cob-wrap .cob-cqc-sync.disabled{cursor:default}
#cob-wrap .cob-cqc-msg{font-size:12px; margin:4px 0 0 16px}
#cob-wrap .cob-cqc-msg.success{color:var(--green)}
#cob-wrap .cob-cqc-msg.error{color:var(--err)}

/* ---- mobile number: country chip + number ---- */
#cob-wrap .cob-phone{display:grid; grid-template-columns:84px minmax(0,1fr); gap:4px}
#cob-wrap .cob-phone-cc select{padding-left:18px; padding-right:30px}
#cob-wrap .cob-phone-cc svg{right:12px}
#cob-wrap .cob-field.has-error .cob-phone-cc select{border-color:var(--field-line) !important}

/* ---- section header (Address details / Remote written reports) ---- */
#cob-wrap .cob-sectionhdr{font-size:19px; font-weight:600; line-height:1.3; margin:22px 0 14px}
#cob-wrap .cob-sectionhdr-line{display:block; border-top:1px solid var(--line); padding-top:22px; margin:24px 0 16px}

/* ---- info strip (Identity: GMC notice) ---- */
#cob-wrap .cob-alert{margin-top:22px; padding:13px 20px; background:var(--brand-tint); border-left:3px solid var(--brand); border-radius:0 8px 8px 0; font-size:13px; color:var(--ink-2); line-height:1.5}

/* ---- file upload ---- */
#cob-wrap .cob-upload{display:flex; align-items:center; justify-content:center; gap:10px; width:100%; max-width:100%; height:84px; min-width:0; overflow:hidden; padding:0 22px; border:1px solid var(--field-line); border-radius:var(--r-upload); background:var(--field-bg); font-family:inherit; cursor:pointer; text-align:center; margin:0; transition:border-color .15s, background .15s}
#cob-wrap .cob-upload:hover{border-color:var(--brand-soft)}
#cob-wrap .cob-upload.has-file{border-color:var(--brand); background:var(--brand-tint)}
#cob-wrap .cob-upload.is-uploading{border-color:var(--brand-soft); background:var(--brand-tint); opacity:.75; cursor:wait}
#cob-wrap .cob-upload.has-error{border-color:var(--err); background:var(--err-bg)}
#cob-wrap .cob-upload-icon{display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; color:var(--ink)}
#cob-wrap .cob-upload-icon svg{width:14px; height:14px}
#cob-wrap .cob-upload.has-file .cob-upload-icon{color:var(--brand)}
#cob-wrap .cob-upload-text{flex:0 1 auto; min-width:0; max-width:100%; text-align:left; line-height:1.35}
#cob-wrap .cob-upload-text b, #cob-wrap .cob-upload-text span{display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
#cob-wrap .cob-upload-text b{font-size:13.5px; font-weight:600; color:var(--brand)}
#cob-wrap .cob-upload-text span{font-size:11px; color:var(--ink-3); margin-top:2px}
#cob-wrap .cob-upload.has-error .cob-upload-text b, #cob-wrap .cob-upload.has-error .cob-upload-text span{color:var(--err)}
#cob-wrap .cob-upload input[type=file]{display:none}
#cob-wrap .cob-upload-hint{font-size:10.5px; color:var(--ink-3); margin:7px 0 0 10px; line-height:1.4}
#cob-wrap .cob-uploadbox{margin-top:18px}

/* ---- dashboard / review status tiles ---- */
#cob-wrap .cob-dashgrid{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; margin-bottom:22px}
#cob-wrap .cob-dashgrid > .cob-dashtile:last-child:nth-child(odd){grid-column:1 / -1}
@media (max-width:600px){ #cob-wrap .cob-dashgrid{grid-template-columns:1fr} }
#cob-wrap .cob-dashtile{display:flex; justify-content:space-between; align-items:center; gap:10px; min-height:48px; padding:10px 14px 10px 16px; border-radius:var(--r-box); background:var(--tile-bg); font-size:14px; font-weight:500; color:var(--ink)}
#cob-wrap .cob-dashtile.is-complete, #cob-wrap .cob-dashtile.active{background:var(--green-bg)}
#cob-wrap .cob-status{display:inline-flex; align-items:center; font-size:10px; font-weight:600; line-height:1; padding:6px 10px; border-radius:999px; border:1px solid transparent; white-space:nowrap}
#cob-wrap .cob-status.is-pending{background:#f3f3f2; color:#7d7d7d; border-color:#e2e1dd}
#cob-wrap .cob-status.is-progress{background:#fff; color:var(--green); border-color:var(--green-line)}
#cob-wrap .cob-status.is-complete{background:transparent; color:var(--green)}

/* ---- note boxes ---- */
#cob-wrap .cob-notebox{border:1px solid var(--line); border-radius:var(--r-box); padding:14px 20px; margin-bottom:10px; background:#fff}
#cob-wrap .cob-notebox b{font-size:12.5px; font-weight:600; display:block; margin-bottom:3px; color:var(--ink)}
#cob-wrap .cob-notebox p{font-size:12px; color:var(--ink-3); margin:0; line-height:1.6}
#cob-wrap .cob-notebox-plain{margin-top:22px}
#cob-wrap .cob-notebox-plain p{font-size:12.5px; line-height:1.75}
#cob-wrap .cob-declaration .cob-checkrow{padding-top:8px}
#cob-wrap .cob-sub-tight{margin:-4px 0 18px}

/* ---- pills / tags ---- */
#cob-wrap .cob-pill{display:inline-flex; align-items:center; font-size:12px; font-weight:600; padding:6px 14px; border-radius:999px; white-space:nowrap}
#cob-wrap .cob-pill.gray{background:#f3f3f2; color:var(--ink-3); border:1px solid var(--line)}
#cob-wrap .cob-pill.green{background:var(--green-bg); color:var(--green)}
#cob-wrap .cob-pill.brand{background:var(--brand-tint); color:var(--brand); border:1px solid #cfe9ec}
#cob-wrap .cob-tag{display:inline-flex; align-items:center; font-size:10.5px; font-weight:600; line-height:1; padding:6px 11px; border-radius:999px; border:1px solid transparent; white-space:nowrap; flex-shrink:0}
#cob-wrap .cob-tag.is-version{background:#f3f3f2; color:#6b6b6b; border-color:#e2e1dd}
#cob-wrap .cob-tag.is-required{background:var(--err-bg); color:#c62828; border-color:#f6d5d5}
#cob-wrap .cob-tag.is-agreed{background:var(--green-bg); color:var(--green); border-color:var(--green-line)}

/* ---- Yes / No radios ---- */
#cob-wrap .cob-yn{display:inline-flex; gap:18px; align-items:center; min-height:40px; padding:6px 18px 6px 14px; border:1px solid var(--field-line); border-radius:var(--r-field); background:var(--field-bg)}
#cob-wrap .cob-yn label{display:flex; align-items:center; gap:8px; font-size:13px; color:var(--ink); cursor:pointer; margin:0}
#cob-wrap .cob-yn input[type=radio]{appearance:none; -webkit-appearance:none; width:18px; height:18px; border-radius:50%; border:1px solid #cfcdc8; background:#fff; cursor:pointer; margin:0; flex-shrink:0; transition:border-color .15s, box-shadow .15s}
#cob-wrap .cob-yn input[type=radio]:checked{border-color:var(--brand); box-shadow:inset 0 0 0 4px #fff; background:var(--brand)}
#cob-wrap .cob-yn input[type=radio]:focus-visible{outline:2px solid var(--brand-ring); outline-offset:2px}
#cob-wrap .cob-qblock{margin-bottom:18px}
#cob-wrap .cob-qblock > .cob-label{margin-bottom:8px}

/* ---- checkboxes (Privileges, agreement popups, declaration) ---- */
#cob-wrap .cob-confirmbox{background:var(--pink-bg); border-radius:var(--r-box); padding:14px 18px 16px; margin-bottom:22px}
#cob-wrap .cob-checkrow{display:flex; align-items:center; gap:12px; padding:5px 0; cursor:pointer; margin:0}
#cob-wrap .cob-checkrow input[type=checkbox]{appearance:none; -webkit-appearance:none; width:18px; height:18px; margin:0; border:1px solid #e4dede; border-radius:4px; background:#fff no-repeat center/12px 12px; cursor:pointer; flex-shrink:0; transition:background-color .15s, border-color .15s}
#cob-wrap .cob-checkrow input[type=checkbox]:checked{background-color:var(--brand); border-color:var(--brand); background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E")}
#cob-wrap .cob-checkrow input[type=checkbox]:disabled{cursor:default; opacity:.7}
#cob-wrap .cob-checkrow input[type=checkbox]:focus-visible{outline:2px solid var(--brand-ring); outline-offset:2px}
#cob-wrap .cob-checkrow span{font-size:13px; color:var(--ink)}
#cob-wrap .cob-confirmnote{font-size:10.5px; color:var(--ink-3); margin:6px 0 0}

/* ---- Agreements rows ---- */
#cob-wrap .cob-docrow{display:flex; justify-content:space-between; align-items:center; gap:12px; border:1px solid var(--line); border-radius:var(--r-box); padding:14px 18px; margin-bottom:10px; background:#fff}
#cob-wrap .cob-docrow b{font-size:13.5px; font-weight:600; display:block; color:var(--ink)}
#cob-wrap .cob-docrow a{font-size:12px; color:var(--brand); text-decoration:none; display:inline-block; margin-top:4px}
#cob-wrap .cob-docrow a:hover{text-decoration:underline; color:var(--brand-dk)}

/* ---- buttons ---- */
#cob-wrap .cob-btn{display:inline-flex; align-items:center; justify-content:center; min-height:52px; font-family:inherit; font-weight:600; font-size:15px; line-height:1; letter-spacing:0; text-transform:none; border-radius:999px; padding:14px 28px; cursor:pointer; border:1px solid transparent; box-shadow:none; transition:background .15s, border-color .15s, color .15s, transform .08s; white-space:nowrap; margin:0}
#cob-wrap .cob-btn:active{transform:translateY(1px)}
#cob-wrap .cob-btn.primary{background:var(--brand); color:#fff}
#cob-wrap .cob-btn.primary:hover, #cob-wrap .cob-btn.primary:focus{background:var(--brand-dk); color:#fff}
#cob-wrap .cob-btn.primary:disabled, #cob-wrap .cob-btn.primary:disabled:hover{background:var(--brand-soft); color:#fff; cursor:not-allowed; transform:none}
#cob-wrap .cob-btn.ghost{background:#fff; color:var(--ink); border-color:var(--line); min-width:128px}
#cob-wrap .cob-btn.ghost:hover, #cob-wrap .cob-btn.ghost:focus{background:#fff; color:var(--ink); border-color:#cfcdc7}
#cob-wrap .cob-btn.ghost:disabled{opacity:.6; cursor:not-allowed}
@media (max-width:480px){
  #cob-wrap .cob-btn{min-height:48px; padding:12px 22px; font-size:14px}
  #cob-wrap .cob-btn.ghost{min-width:96px}
  #cob-wrap .cob-footer .cob-btn.primary{flex:1}
  #cob-wrap .cob-footer:not(.split){flex-direction:column-reverse; align-items:stretch}
  #cob-wrap .cob-footer:not(.split) .cob-btn{width:100%}
}

/* ---- select chevron ---- */
#cob-wrap .cob-select-wrap{position:relative}
#cob-wrap .cob-select-wrap select{appearance:none; -webkit-appearance:none; -moz-appearance:none; width:100%; padding-right:40px; background-image:none}
#cob-wrap .cob-select-wrap svg{position:absolute; right:16px; top:50%; transform:translateY(-50%); width:14px; height:14px; color:var(--ink-3); pointer-events:none}

/* ---- date picker ---- */
#cob-wrap .cob-dob-wrap{position:relative}
#cob-wrap .cob-dob-wrap input{width:100%; padding-right:44px; cursor:pointer}
#cob-wrap .cob-dob-wrap svg{position:absolute; right:16px; top:50%; transform:translateY(-50%); width:16px; height:16px; color:var(--ink-2); cursor:pointer}
#cob-wrap .cob-cal-pop{position:absolute; top:calc(100% + 8px); left:0; z-index:30; background:#fff; border:1px solid var(--line); border-radius:18px; box-shadow:0 16px 40px rgba(0,66,77,.16); padding:16px; width:290px; max-width:calc(100vw - 48px); cursor:default}
#cob-wrap .cob-cal-hd{display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; font-weight:600; font-size:14px}
#cob-wrap .cob-cal-hd button{background:none; border:none; box-shadow:none; font-size:16px; cursor:pointer; color:var(--ink-2); width:28px; height:28px; min-height:0; border-radius:50%; display:flex; align-items:center; justify-content:center; padding:0; line-height:1}
#cob-wrap .cob-cal-hd button:hover{background:var(--brand-tint); color:var(--brand)}
#cob-wrap .cob-cal-year{width:100%; margin-bottom:10px; min-height:38px; padding:7px 14px; border-radius:10px; border:1px solid var(--line); font-size:13px; font-family:inherit}
#cob-wrap .cob-cal-dow{display:grid; grid-template-columns:repeat(7,1fr); text-align:center; font-size:11px; color:var(--ink-3); margin-bottom:4px}
#cob-wrap .cob-cal-grid{display:grid; grid-template-columns:repeat(7,1fr); gap:2px}
#cob-wrap .cob-cal-grid span{display:flex; align-items:center; justify-content:center; height:32px; font-size:13px; border-radius:50%; cursor:pointer; color:var(--ink)}
#cob-wrap .cob-cal-grid span:empty{cursor:default}
#cob-wrap .cob-cal-grid span:not(:empty):hover{background:var(--brand-tint)}
#cob-wrap .cob-cal-grid span.sel, #cob-wrap .cob-cal-grid span.sel:hover{background:var(--brand); color:#fff}
#cob-wrap .cob-cal-grid span.disabled{color:#c4c4c4; cursor:not-allowed; pointer-events:auto}
#cob-wrap .cob-cal-grid span.disabled:hover{background:transparent}

/* ---- Application submitted ---- */
#cob-wrap .cob-donewrap{max-width:640px; margin:48px auto; text-align:center}
#cob-wrap .cob-donewrap h1{font-size:clamp(26px,3.6vw,32px); font-weight:600; line-height:1.2; margin:0 0 10px}
#cob-wrap .cob-donewrap > p{font-size:14px; color:var(--ink-3); margin:0 0 28px; line-height:1.6}
#cob-wrap .cob-donecard{background:#fff; border:1px solid var(--line); border-radius:var(--r-card); padding:clamp(22px,4vw,32px); text-align:left}
#cob-wrap .cob-donecard .cob-pill{margin-bottom:16px}
#cob-wrap .cob-donecard h3{font-size:20px; font-weight:600; margin:0 0 12px}
#cob-wrap .cob-donecard p{font-size:13.5px; color:var(--ink-2); line-height:1.65; margin:0 0 10px}
#cob-wrap .cob-donecard .cob-btn{margin-top:14px}

/* ---- agreement popup ---- */
#cob-wrap .cob-modal-overlay{position:fixed; inset:0; background:rgba(20,34,38,.5); z-index:100000; display:flex; align-items:center; justify-content:center; padding:20px}
#cob-wrap .cob-modal{background:#fff; border-radius:var(--r-card); width:100%; max-width:640px; max-height:88vh; display:flex; flex-direction:column; overflow:hidden; box-shadow:0 24px 64px rgba(0,40,46,.28)}
#cob-wrap .cob-modal-hd{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:24px 26px 12px; flex-shrink:0}
#cob-wrap .cob-modal-hd h3{font-size:20px; font-weight:600; margin:0; line-height:1.3}
#cob-wrap .cob-modal-close{background:#fff; border:1px solid var(--line); box-shadow:none; width:32px; height:32px; min-height:0; border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; color:var(--ink); font-size:18px; line-height:1; padding:0; flex-shrink:0}
#cob-wrap .cob-modal-close:hover{background:var(--brand-tint); color:var(--brand)}
#cob-wrap .cob-modal-body{padding:4px 26px 16px; overflow-y:auto; flex:1 1 auto; font-size:13px; line-height:1.7; color:var(--ink-2)}
#cob-wrap .cob-modal-body h4{font-size:15px; font-weight:600; color:var(--ink); margin:0 0 12px; line-height:1.3}
#cob-wrap .cob-modal-body h5{font-size:13px; font-weight:600; color:var(--ink); margin:14px 0 4px}
#cob-wrap .cob-modal-body p{margin:0 0 10px}
#cob-wrap .cob-modal-body ul, #cob-wrap .cob-modal-body ol{margin:0 0 10px; padding-left:22px}
#cob-wrap .cob-modal-body li{margin-bottom:5px}
#cob-wrap .cob-modal-body strong{color:var(--ink)}
#cob-wrap .cob-modal-ft{flex-shrink:0; display:flex; align-items:center; justify-content:space-between; gap:16px; border-top:1px solid var(--line); padding:16px 26px 20px; background:#fff}
#cob-wrap .cob-modal-ft .cob-checkrow span{font-size:13px}
#cob-wrap .cob-modal-ft .cob-btn{min-width:140px}
@media (max-width:560px){
  #cob-wrap .cob-modal-ft{flex-direction:column; align-items:stretch}
  #cob-wrap .cob-modal-ft .cob-btn{width:100%}
}
@media (max-width:600px){
  #cob-wrap .cob-modal{max-height:94vh; border-radius:18px}
  #cob-wrap .cob-modal-hd{padding:20px 18px 10px}
  #cob-wrap .cob-modal-body{padding:4px 18px 14px}
  #cob-wrap .cob-modal-ft{padding:14px 18px 18px}
}

/* ---- 3-tab layout (Professional Details / Compliance Documents / Agreements):
   section headings inside a tab + Compliance document cards — neuro tokens ---- */
#cob-wrap .cob-body .cob-sectionhdr-line.cob-tabsec-first{border-top:none; padding-top:0; margin-top:20px}
#cob-wrap .cob-body .cob-sectionhdr-line + .cob-sub-tight{margin-top:-8px}
#cob-wrap .cob-confirmbox.has-error{box-shadow:inset 0 0 0 1px var(--err)}
#cob-wrap .cob-privileges-error{margin:-14px 0 0 6px}
#cob-wrap .cob-doccard{margin:0 0 14px; padding:18px 20px 16px; border:1px solid var(--line); border-radius:var(--r-box); background:#fff}
#cob-wrap .cob-doccard-hd{display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px}
#cob-wrap .cob-doccard-hd b{font-size:14px; font-weight:600; color:var(--ink)}
@media (max-width:560px){ #cob-wrap .cob-doccard{padding:16px 14px 14px} }