.onboarding-shell{width:min(1080px,100%);margin:0 auto 2rem}.onboarding-eyebrow{margin:0;color:#2563eb;font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.onboarding-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr);gap:1.25rem;padding:clamp(1.4rem,3vw,2.4rem);overflow:hidden;border:1px solid rgba(147,197,253,.24);border-radius:24px;color:#fff;background:radial-gradient(circle at 88% 12%,rgba(56,189,248,.25),transparent 32%),linear-gradient(132deg,#0b1f3a 0%,#123f6d 55%,#176b91 100%);box-shadow:0 22px 50px rgba(15,23,42,.14)}.onboarding-hero .onboarding-eyebrow{color:#93c5fd}.onboarding-hero h2{max-width:700px;margin:.45rem 0 .7rem;font-size:clamp(1.55rem,4vw,2.35rem);line-height:1.1;letter-spacing:-.035em}.onboarding-hero__copy>p:not(.onboarding-eyebrow){max-width:690px;margin:0;color:#dbeafe;font-size:.84rem;line-height:1.65}.onboarding-hero__actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.25rem}.onboarding-hero__actions .btn{min-height:46px}.onboarding-hero__actions .btn-outline{border-color:rgba(255,255,255,.38);color:#fff;background:rgba(255,255,255,.08)}.onboarding-progress-card{display:grid;place-items:center;align-content:center;gap:.75rem;padding:1.1rem;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.08);backdrop-filter:blur(10px);text-align:center}.onboarding-progress-card__ring{display:grid;width:118px;height:118px;place-items:center;border-radius:50%;background:conic-gradient(#67e8f9 var(--progress),rgba(255,255,255,.14) 0);position:relative}.onboarding-progress-card__ring:before{position:absolute;inset:9px;border-radius:50%;background:#123b62;content:""}.onboarding-progress-card__ring span{position:relative;display:grid;color:#dbeafe;font-size:.66rem}.onboarding-progress-card__ring strong{display:block;color:#fff;font-size:1.65rem;line-height:1}.onboarding-progress-card p{margin:0}.onboarding-progress-card p strong,.onboarding-progress-card p span{display:block}.onboarding-progress-card p strong{font-size:.75rem}.onboarding-progress-card p span{margin-top:.25rem;color:#bfdbfe;font-size:.64rem}.onboarding-stage-list{display:grid;gap:.8rem;margin-top:1.1rem}.onboarding-stage{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.1rem;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 8px 24px rgba(15,23,42,.045)}.onboarding-stage__number{display:grid;width:50px;height:50px;place-items:center;border-radius:15px;color:#1d4ed8;background:#eff6ff;font-size:.83rem;font-weight:900}.onboarding-stage--complete .onboarding-stage__number{color:#047857;background:#d1fae5}.onboarding-stage--optional .onboarding-stage__number{color:#475569;background:#f1f5f9}.onboarding-stage__heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.onboarding-stage__heading>p{margin:0;color:var(--text-muted);font-size:.61rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.onboarding-stage h3{margin:.2rem 0 .28rem;font-size:.95rem}.onboarding-stage__body>p:not(.onboarding-stage__note){margin:0;color:var(--text-secondary);font-size:.73rem;line-height:1.55}.onboarding-stage__note{margin:.55rem 0 0;padding:.55rem .65rem;border-left:3px solid #93c5fd;color:#334155;background:#f8fafc;font-size:.66rem;line-height:1.5}.onboarding-status{display:inline-flex;align-items:center;gap:.3rem;min-height:28px;padding:.28rem .52rem;border-radius:999px;font-size:.59rem;font-weight:800}.onboarding-status[data-state="complete"]{color:#047857;background:#d1fae5}.onboarding-status[data-state="attention"]{color:#9a3412;background:#ffedd5}.onboarding-status[data-state="optional"]{color:#475569;background:#e2e8f0}.onboarding-stage__actions .btn{min-height:44px;white-space:nowrap}.onboarding-stage__actions .btn i{margin-left:.35rem}.onboarding-calendar{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:1.2rem;margin-top:1.1rem;padding:1.2rem;border:1px solid var(--border);border-radius:18px;background:linear-gradient(135deg,var(--surface),var(--surface-alt))}.onboarding-calendar h3{margin:.2rem 0}.onboarding-calendar p{margin:.2rem 0;color:var(--text-secondary);font-size:.72rem;line-height:1.55}.onboarding-calendar ul{display:grid;gap:.4rem;margin:0;padding:0;list-style:none}.onboarding-calendar li{display:flex;justify-content:space-between;gap:.8rem;padding:.55rem .65rem;border-radius:10px;background:var(--surface);font-size:.65rem}.onboarding-calendar time{font-weight:800}.onboarding-calendar__empty{align-self:center}.onboarding-notice{display:flex;align-items:flex-start;gap:.7rem;margin-bottom:.8rem;padding:.85rem 1rem;border-radius:13px}.onboarding-notice--success{border:1px solid #a7f3d0;color:#065f46;background:#ecfdf5}.onboarding-notice strong,.onboarding-notice span{display:block}.onboarding-notice span{margin-top:.16rem;font-size:.7rem}.onboarding-return{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;width:min(1080px,100%);margin:0 auto 1rem;padding:.72rem .85rem;border:1px solid #bfdbfe;border-radius:14px;background:#f8fbff}.onboarding-return>a{display:inline-flex;min-height:44px;align-items:center;gap:.4rem;color:#1d4ed8;font-size:.7rem;font-weight:800}.onboarding-return>span{min-width:0;text-align:center}.onboarding-return>span strong,.onboarding-return>span small{display:block}.onboarding-return>span strong{font-size:.7rem}.onboarding-return>span small{margin-top:.14rem;color:var(--text-secondary);font-size:.62rem}.onboarding-return .onboarding-return__exit{justify-self:end;color:#475569}.onboarding-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.onboarding-choice{display:grid;gap:.65rem;padding:1rem;border:1px solid var(--border);border-radius:15px;background:var(--surface)}.onboarding-choice__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem}.onboarding-choice h3,.onboarding-choice p{margin:0}.onboarding-choice p{color:var(--text-secondary);font-size:.7rem;line-height:1.55}.onboarding-choice .btn{min-height:44px;justify-self:start}.onboarding-path-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin-bottom:1rem}.onboarding-path-summary span{display:grid;gap:.18rem;padding:.7rem;border:1px solid var(--border);border-radius:11px;background:var(--surface-alt);color:var(--text-secondary);font-size:.64rem}.onboarding-path-summary strong{color:var(--text-primary);font-size:.69rem}.onboarding-case-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:1rem 1.15rem;border:1px solid #bfdbfe;border-radius:16px;background:linear-gradient(135deg,#eff6ff,#f8fafc)}.onboarding-case-intro h2,.onboarding-case-intro p{margin:0}.onboarding-case-intro h2{font-size:1.05rem}.onboarding-case-intro p{margin-top:.3rem;color:#475569;font-size:.72rem;line-height:1.55}.onboarding-case-intro .btn{min-height:44px;white-space:nowrap}.onboarding-form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}.onboarding-form-actions .btn{min-height:44px}.onboarding-error-summary{margin-bottom:1rem;padding:.85rem 1rem;border:1px solid #fecaca;border-radius:12px;color:#991b1b;background:#fef2f2}.onboarding-error-summary a{color:inherit;text-decoration:underline}.onboarding-loading{display:flex;min-height:96px;align-items:center;justify-content:center;gap:.55rem;border:1px dashed var(--border);border-radius:13px;color:var(--text-secondary);font-size:.72rem}
@media(max-width:820px){.onboarding-hero,.onboarding-calendar{grid-template-columns:1fr}.onboarding-progress-card{grid-template-columns:auto 1fr;justify-items:start;text-align:left}.onboarding-progress-card__ring{width:96px;height:96px}.onboarding-stage{grid-template-columns:46px minmax(0,1fr)}.onboarding-stage__number{width:44px;height:44px}.onboarding-stage__actions{grid-column:1/-1}.onboarding-stage__actions .btn{width:100%;justify-content:center}.onboarding-choice-grid,.onboarding-path-summary{grid-template-columns:1fr 1fr}.onboarding-return{grid-template-columns:1fr auto}.onboarding-return>span{grid-column:1/-1;grid-row:2;text-align:left}.onboarding-case-intro{align-items:stretch;flex-direction:column}}
@media(max-width:520px){.onboarding-shell{margin-bottom:1rem}.onboarding-hero{padding:1.2rem;border-radius:18px}.onboarding-hero__actions{display:grid}.onboarding-hero__actions .btn{width:100%;justify-content:center}.onboarding-progress-card{grid-template-columns:1fr;justify-items:center;text-align:center}.onboarding-stage{grid-template-columns:40px minmax(0,1fr);padding:.9rem}.onboarding-stage__number{width:40px;height:40px;border-radius:12px}.onboarding-stage__heading{align-items:flex-start;flex-direction:column;gap:.35rem}.onboarding-choice-grid,.onboarding-path-summary{grid-template-columns:1fr}.onboarding-return{grid-template-columns:1fr auto;padding:.55rem}.onboarding-return>a{font-size:.64rem}.onboarding-calendar li{align-items:flex-start;flex-direction:column;gap:.18rem}}
@media(prefers-reduced-motion:reduce){.onboarding-shell *{scroll-behavior:auto!important;transition:none!important}}
.onboarding-case-intro:has(ol){display:block}.onboarding-case-intro ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin:1rem 0 0;padding:0;list-style:none}.onboarding-case-intro li{min-height:70px;padding:.7rem;border:1px solid #dbeafe;border-radius:11px;background:#fff}.onboarding-case-intro li strong,.onboarding-case-intro li span{display:block}.onboarding-case-intro li strong{color:#1e3a8a;font-size:.69rem}.onboarding-case-intro li span{margin-top:.22rem;color:#64748b;font-size:.64rem}@media(max-width:820px){.onboarding-case-intro ol{grid-template-columns:1fr 1fr}}@media(max-width:520px){.onboarding-case-intro ol{grid-template-columns:1fr}}

.clinic-details-portal,
.legal-centre-portal,
.planning-calendar-shell{width:min(1080px,100%);margin:0 auto 2rem}
.clinic-details-heading,
.legal-centre-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:1.3rem 1.4rem;border:1px solid #dbeafe;border-radius:18px;background:linear-gradient(135deg,#eff6ff,#fff)}
.clinic-details-heading h2,
.legal-centre-heading h2{margin:.25rem 0 .35rem;font-size:clamp(1.25rem,3vw,1.7rem);letter-spacing:-.025em}
.clinic-details-heading p:not(.onboarding-eyebrow),
.legal-centre-heading p:not(.onboarding-eyebrow){max-width:720px;margin:0;color:var(--text-secondary);font-size:.74rem;line-height:1.55}
.accepted-details-note{display:flex;align-items:flex-start;gap:.65rem;margin-bottom:1rem;padding:.8rem .9rem;border:1px solid #a7f3d0;border-radius:12px;color:#065f46;background:#ecfdf5;font-size:.71rem;line-height:1.5}
.legal-centre-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.legal-centre-grid + .setup-card{margin-top:1rem}
.legal-centre-document{overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 10px 28px rgba(15,23,42,.055)}
.legal-centre-document__head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:.8rem;padding:1rem 1.05rem;border-bottom:1px solid var(--border);background:linear-gradient(135deg,#f8fafc,#fff)}
.legal-centre-document__number{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;color:#1d4ed8;background:#dbeafe;font-size:.7rem;font-weight:900}
.legal-centre-document__head h3{margin:.15rem 0 .25rem;font-size:.92rem}
.legal-centre-document__head p{margin:0;color:var(--text-secondary);font-size:.66rem;line-height:1.45}
.legal-centre-document__state{padding:.28rem .52rem;border-radius:999px;color:#047857;background:#d1fae5;font-size:.58rem;font-weight:850}
.legal-centre-document__meta{display:flex;flex-wrap:wrap;gap:.45rem;padding:.7rem 1.05rem;color:var(--text-secondary);font-size:.62rem}
.legal-centre-document__meta span{padding:.25rem .45rem;border-radius:999px;background:var(--surface-alt)}
.legal-centre-document__preview{width:100%;height:360px;border:0;border-block:1px solid var(--border);background:#f8fafc}
.legal-centre-document__actions{display:flex;flex-wrap:wrap;gap:.55rem;padding:.9rem 1.05rem}
.legal-centre-document__actions .btn{min-height:44px}
.legal-centre-acceptance-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;margin-top:1rem;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:16px;background:var(--surface)}
.legal-centre-acceptance-summary h3,.legal-centre-acceptance-summary p{margin:0}
.legal-centre-acceptance-summary p:last-child{margin-top:.25rem;color:var(--text-secondary)}
.legal-centre-acceptance-summary__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.65rem}
.legal-centre-fallback{margin:0;padding:.6rem 1.05rem;color:var(--text-secondary);font-size:.64rem;line-height:1.45}
.scanner-decision{margin-top:1rem;padding:1.1rem;border:1px solid var(--border);border-radius:18px;background:var(--surface)}
.scanner-decision__head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.scanner-decision__head h3{margin:.2rem 0 .3rem}
.scanner-decision__head p{max-width:700px;margin:0;color:var(--text-secondary);font-size:.7rem;line-height:1.5}
.scanner-status-list{display:grid;gap:.55rem;margin:1rem 0 0;padding:0;list-style:none}
.scanner-status-list li{display:grid;grid-template-columns:minmax(140px,.45fr) minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.75rem .85rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-alt)}
.scanner-status-list strong{font-size:.72rem}.scanner-status-list p{margin:0;color:var(--text-secondary);font-size:.65rem;line-height:1.45}
.planning-calendar-hero{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding:1.35rem 1.45rem;border-radius:20px;color:#fff;background:linear-gradient(125deg,#0b1f3a,#125e7a)}
.planning-calendar-hero h2{margin:.25rem 0 .35rem;font-size:clamp(1.3rem,3vw,1.8rem)}.planning-calendar-hero p:not(.onboarding-eyebrow){max-width:720px;margin:0;color:#dbeafe;font-size:.73rem;line-height:1.55}.planning-calendar-hero .onboarding-eyebrow{color:#93c5fd}.planning-calendar-hero .btn{min-height:44px;white-space:nowrap}
.planning-calendar-grid{display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);gap:1rem;margin-top:1rem}
.planning-calendar-card{display:flex;align-items:flex-start;gap:.9rem;padding:1.1rem;border:1px solid var(--border);border-radius:16px;background:var(--surface)}
.planning-calendar-card h3{margin:.2rem 0 .7rem}.planning-calendar-card dl{display:grid;gap:.55rem;margin:0}.planning-calendar-card dl div{display:grid;gap:.12rem}.planning-calendar-card dt{color:var(--text-secondary);font-size:.61rem;text-transform:uppercase;letter-spacing:.05em}.planning-calendar-card dd{margin:0;font-size:.72rem;font-weight:750}
.planning-calendar-icon{display:grid;width:44px;height:44px;flex:0 0 auto;place-items:center;border-radius:13px;color:#1d4ed8;background:#dbeafe}
.planning-calendar-card--wide{display:block}.planning-calendar-list{display:grid;gap:.45rem;margin:.8rem 0 0;padding:0;list-style:none}.planning-calendar-list li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem .75rem;border-radius:10px;background:var(--surface-alt);font-size:.68rem}.planning-calendar-list time{font-weight:850}.planning-calendar-empty{display:flex;align-items:center;gap:.7rem;margin-top:.8rem;padding:.8rem;border-radius:11px;background:var(--surface-alt)}.planning-calendar-empty strong,.planning-calendar-empty span{display:block}.planning-calendar-empty span{margin-top:.15rem;color:var(--text-secondary);font-size:.65rem}
.planning-calendar-note{display:flex;align-items:flex-start;gap:.65rem;margin-top:1rem;padding:.85rem 1rem;border:1px solid #bfdbfe;border-radius:12px;color:#1e3a8a;background:#eff6ff}.planning-calendar-note p{margin:0;font-size:.68rem;line-height:1.5}
@media(max-width:820px){.legal-centre-grid,.planning-calendar-grid{grid-template-columns:1fr}.scanner-status-list li{grid-template-columns:1fr auto}.scanner-status-list p{grid-column:1/-1}.clinic-details-heading,.legal-centre-heading,.planning-calendar-hero{align-items:stretch;flex-direction:column}.planning-calendar-hero .btn{align-self:flex-start}}
@media(max-width:520px){.clinic-details-portal,.legal-centre-portal,.planning-calendar-shell{margin-bottom:1rem}.legal-centre-document__head{grid-template-columns:auto 1fr}.legal-centre-document__state{grid-column:2}.legal-centre-document__preview{height:300px}.legal-centre-document__actions{display:grid}.legal-centre-document__actions .btn{width:100%;justify-content:center}.legal-centre-acceptance-summary{grid-template-columns:auto minmax(0,1fr);align-items:start}.legal-centre-acceptance-summary__actions{grid-column:1/-1;display:grid}.scanner-decision__head{align-items:flex-start;flex-direction:column}.scanner-status-list li{grid-template-columns:1fr}.planning-calendar-list li{align-items:flex-start;flex-direction:column;gap:.2rem}.planning-calendar-hero .btn{width:100%;justify-content:center}}
.onboarding-status[data-state="draft"]{color:#1d4ed8;background:#dbeafe}
.onboarding-stage--draft .onboarding-stage__number{color:#1d4ed8;background:#dbeafe}
.onboarding-stage__markers{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.38rem}.onboarding-requirement{display:inline-flex;min-height:28px;align-items:center;padding:.28rem .52rem;border:1px solid #fecaca;border-radius:999px;color:#991b1b;background:#fff1f2;font-size:.59rem;font-weight:850}.onboarding-calendar-hint{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;margin-top:.85rem;padding:.8rem 1rem;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff}.onboarding-calendar-hint>i{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;color:#1d4ed8;background:#dbeafe}.onboarding-calendar-hint p,.onboarding-calendar-hint strong,.onboarding-calendar-hint span{display:block;margin:0}.onboarding-calendar-hint strong{font-size:.72rem}.onboarding-calendar-hint span{margin-top:.18rem;color:#475569;font-size:.65rem;line-height:1.45}.onboarding-calendar-hint a{min-height:44px;display:inline-flex;align-items:center;color:#1d4ed8;font-size:.68rem;font-weight:850;white-space:nowrap}
@media(max-width:760px){.onboarding-calendar-hint{grid-template-columns:auto minmax(0,1fr)}.onboarding-calendar-hint a{grid-column:1/-1;justify-content:center}}

/* Shared return navigation: align to whichever page container owns it. */
.onboarding-return{grid-template-columns:minmax(0,1fr) minmax(220px,1.35fr) minmax(0,1fr);box-sizing:border-box;width:100%;margin-inline:0}
.onboarding-return>a:first-child{justify-self:start}
.onboarding-return>span{align-self:center}
.onboarding-return>span small{line-height:1.4}
@media(max-width:820px){.onboarding-return{grid-template-columns:minmax(0,1fr) auto}.onboarding-return>span{justify-self:stretch;padding-top:.55rem;border-top:1px solid #dbeafe}}
@media(max-width:520px){.onboarding-return{gap:.55rem}.onboarding-return>span small{font-size:.6rem}}
