:root{font-family:Inter,Segoe UI,sans-serif;color:#172033;background:#f4f7fb;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--primary: #087e8b;--primary-dark: #06636d;--border: #e2e8f0;--muted: #64748b}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.page-shell{min-height:100vh;padding:0 16px 32px}.site-header{display:flex;align-items:center;justify-content:space-between;max-width:760px;margin:0 auto;padding:18px 0}.brand{display:inline-flex;align-items:center;gap:9px;color:#172033;font-weight:700;text-decoration:none}.brand-mark{display:grid;width:35px;height:35px;place-items:center;border-radius:12px;background:#d7f0ef;color:var(--primary-dark);font-family:Inter,Segoe UI,sans-serif;font-size:15px;font-weight:800;letter-spacing:-1px}.secure-label{color:var(--muted);font-size:12px}.secure-label span{color:#2da88d;font-size:9px}.booking-card{max-width:760px;margin:16px auto 0;padding:clamp(20px,5vw,40px);border:1px solid #e8edf4;border-radius:20px;background:#fff;box-shadow:0 16px 50px #18304a0a}.clinic-card{max-width:900px}.professional-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px}.professional-card{display:flex;min-width:0;align-items:center;gap:14px;padding:14px;border:1px solid var(--border);border-radius:14px;color:inherit;text-decoration:none;transition:border-color .15s,background .15s,transform .15s}.professional-card:hover{transform:translateY(-1px);border-color:#9accca;background:#f8fcfc}.professional-photo{display:grid;width:68px;height:68px;flex:0 0 68px;place-items:center;border-radius:50%;background:#e8f6f5;color:var(--primary-dark);object-fit:cover}.professional-initials{font-size:19px;font-weight:700}.professional-info{display:flex;min-width:0;flex-direction:column;gap:5px}.professional-info strong,.professional-info>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.professional-info strong{font-size:14px}.professional-info>span{color:var(--muted);font-size:12px}.professional-info .professional-cta{margin-top:3px;color:var(--primary-dark);font-size:11px;font-weight:700}.page-heading{margin-bottom:27px}.eyebrow{margin:0 0 8px;color:var(--primary);font-size:11px;font-weight:700;letter-spacing:.12em}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Inter,Segoe UI,sans-serif}h1{margin-bottom:7px;font-size:clamp(24px,5vw,32px);line-height:1.2}h2{margin-bottom:5px;font-size:18px}h3{margin-bottom:0;font-size:14px}.muted,.section-heading p{color:var(--muted);font-size:14px}.page-heading .muted{margin:0}.step-indicator{display:flex;align-items:center;gap:12px;margin:0 0 30px;padding-bottom:22px;border-bottom:1px solid #edf1f6}.step{display:inline-flex;align-items:center;gap:8px;color:#94a3b8;font-size:12px;font-weight:600;white-space:nowrap}.step>span{display:grid;width:25px;height:25px;place-items:center;border:1px solid #d5dee9;border-radius:50%;font-size:11px}.step.active{color:var(--primary-dark)}.step.active>span{border-color:var(--primary);background:#eaf7f6;color:var(--primary-dark)}.step.complete>span{border-color:#b7e5d8;background:#e7f7f1;color:#16836d}.step-line{height:1px;flex:1;background:#e6ebf2}.section-heading{display:flex;gap:12px;align-items:flex-start;margin-bottom:22px}.section-heading p{margin:0;font-size:13px}.section-number{display:grid;width:31px;height:31px;flex:0 0 31px;place-items:center;border-radius:10px;background:#e8f6f5;color:var(--primary-dark);font-size:13px;font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:flex;min-width:0;flex-direction:column;gap:7px}.field>span{color:#344256;font-size:12px;font-weight:600}.field small{color:var(--muted);font-size:11px;font-weight:400}.full-width{grid-column:1 / -1}.field input,.field select{width:100%;min-height:47px;padding:0 12px;border:1px solid #dbe3ec;border-radius:10px;outline:none;background:#fff;color:#172033;font-size:14px}.field input:focus,.field select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #087e8b1a}.field input::placeholder{color:#a0adbc}.slots-section{margin-top:26px}.slots-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.slots-heading span{color:var(--muted);font-size:12px}.slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.slot{min-height:45px;border:1px solid #dce5ec;border-radius:10px;background:#fff;color:#344256;font-size:14px;font-weight:600;transition:border-color .15s,background .15s,color .15s}.slot:hover{border-color:#70bdb8;background:#f3fbfa}.slot.selected{border-color:var(--primary);background:#e8f6f5;color:var(--primary-dark)}.empty-state{margin:0;padding:19px 12px;border:1px dashed #dce5ec;border-radius:10px;color:var(--muted);font-size:13px;text-align:center}.actions{display:flex;gap:10px;justify-content:flex-end;margin-top:26px}.primary-button,.secondary-button{min-height:48px;padding:0 20px;border-radius:10px;font-size:14px;font-weight:700}.primary-button{border:1px solid var(--primary);background:var(--primary);color:#fff}.primary-button:hover:not(:disabled){border-color:var(--primary-dark);background:var(--primary-dark)}.secondary-button{border:1px solid var(--border);background:#fff;color:#344256}.text-button{border:0;background:none;color:var(--primary-dark);font-size:12px;font-weight:700}.summary-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px;padding:13px 15px;border:1px solid #dcefeb;border-radius:11px;background:#f2faf8}.summary-strip div{display:flex;flex-direction:column;gap:4px}.summary-strip span{color:var(--muted);font-size:12px}.summary-strip strong{font-size:13px}.address-heading{margin:27px 0 14px}.address-heading p{margin:4px 0 0;color:var(--muted);font-size:12px}.privacy-note{margin:17px 0 0;color:var(--muted);font-size:11px;line-height:1.55}.split-actions{justify-content:space-between}.split-actions .primary-button{flex:1}.error-message{margin:0 0 18px;padding:12px 14px;border:1px solid #f4c7c7;border-radius:10px;background:#fff6f6;color:#a33434;font-size:13px}.site-footer{max-width:760px;margin:20px auto 0;color:#8a97a8;font-size:11px;text-align:center}.status-card,.confirmation-card,.empty-link{padding-top:48px;padding-bottom:48px;text-align:center}.status-card>p:last-child{margin-bottom:0;color:var(--muted);font-size:14px}.status-card .brand-mark{margin:0 auto 20px}.loader{width:24px;height:24px;display:inline-block;border:2px solid #d9e8e8;border-top-color:var(--primary);border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.success-icon{display:grid;width:56px;height:56px;place-items:center;margin:0 auto 19px;border-radius:50%;background:#e4f6ef;color:#19866d;font-size:26px;font-weight:700}.confirmation-card .muted{margin:8px auto 22px;max-width:380px;line-height:1.5}.summary-box{max-width:420px;margin:0 auto;padding:17px;border:1px solid var(--border);border-radius:12px;background:#fafcfe;text-align:left}.summary-box p{margin:0 0 7px;color:#536176;font-size:13px}.summary-box p:last-child{margin-bottom:0}.summary-box strong{color:#172033}.form-note{margin:15px 0 0;color:var(--muted);font-size:12px}@media(max-width:520px){.page-shell{padding:0 12px 24px}.site-header{padding:14px 0}.booking-card{margin-top:8px;padding:22px 18px;border-radius:16px}.secure-label{font-size:10px}.form-grid{grid-template-columns:1fr;gap:14px}.full-width{grid-column:auto}.slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.slot{min-height:46px}.actions{margin-top:22px}.actions>button{width:100%}.split-actions{display:grid;grid-template-columns:1fr 1.6fr}.split-actions>button{padding:0 9px;font-size:12px}.step-indicator{gap:8px}.step{gap:6px;font-size:11px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
