.consultation-booking-dialog{--brand-accent:#133334;--brand-screen:#fef9ef;--brand-cell:#f7eee0;--consultation-muted:#526766;--consultation-line:rgba(19,51,52,0.16);width:min(94vw,820px);max-width:820px;max-height:min(92dvh,calc(var(--consultation-viewport-height, 100dvh) - 24px));top:var(--consultation-viewport-center,50%);padding:0;overflow-y:auto;overscroll-behavior:contain;scroll-padding-block:16px;transition-property:none;background:var(--brand-screen);color:var(--brand-accent);border:1px solid var(--consultation-line);border-radius:24px;font-family:var(--brand-font);font-weight:400;outline:none;box-shadow:0 24px 100px #13333426}.consultation-booking-dialog :is(button,input,select,strong,h3){font-weight:400}.consultation-booking-dialog button{cursor:pointer}.consultation-booking-dialog button:disabled{cursor:not-allowed}.consultation-booking-dialog button:focus-visible{outline:2px solid #1e4c4e;outline-offset:3px}.consultation-booking-dialog>button{width:44px;height:44px;display:grid;place-items:center;top:18px;right:18px;color:#133334}.consultation-dialog-body{padding:28px 32px 24px}.consultation-topbar{min-height:30px;margin-bottom:26px;padding-right:36px}.consultation-progress{display:flex;gap:22px;padding:0;list-style:none}.consultation-progress li{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--consultation-muted)}.consultation-progress li>span:first-child{display:grid;place-items:center;width:23px;height:23px;border:1px solid var(--consultation-line);border-radius:50%;font-size:11px}.consultation-progress li[aria-current],.consultation-progress li[data-complete=true]{color:#133334}.consultation-progress li[aria-current]>span:first-child,.consultation-progress li[data-complete=true]>span:first-child{background:#133334;color:#fef9ef;border-color:#133334}.consultation-title{font-size:clamp(26px,3vw,32px);font-weight:350;line-height:1.12;letter-spacing:-.8px;outline:none;padding-right:12px}.consultation-description{font-size:14px;line-height:1.5;color:var(--consultation-muted);margin-top:2px}.consultation-back{display:flex;align-items:center;gap:7px;min-height:44px;font-size:13px;margin:-16px 0 8px}.consultation-booking-label{font-size:14px;margin:24px 0 12px}.consultation-scheduler .assessment-booking-doctors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.consultation-scheduler .assessment-booking-doctors>button{display:flex;align-items:center;text-align:left;min-width:0;gap:12px;padding:16px 12px;background:transparent;border:1px solid #13333433;border-radius:16px;color:#133334;transition:background .18s,border-color .18s}.consultation-scheduler .assessment-booking-doctors>button:hover{background:#f7eee0;border-color:#1e4c4e}.consultation-scheduler .assessment-booking-doctors>button.is-selected{background:#f7eee0;border-color:rgba(19,51,52,.3);box-shadow:none}.consultation-scheduler .assessment-booking-doctor-photo{position:relative;width:58px;height:66px;flex:none;overflow:hidden;border-radius:12px;background:#fef9ef}.consultation-scheduler .assessment-booking-doctor-photo img,.consultation-ticket-photo img{object-fit:cover;object-position:50% 18%}.consultation-scheduler .assessment-booking-doctor-copy{min-width:0;flex:1}.consultation-scheduler .assessment-booking-doctor-copy>span{display:block;font-size:15px;line-height:1.3}.consultation-scheduler .assessment-booking-doctor-copy>small{display:block;margin-top:5px;color:var(--consultation-muted);font-size:11px;line-height:1.4}.consultation-scheduler .assessment-booking-doctor-copy>em{display:flex;align-items:center;gap:5px;margin-top:8px;font-size:11px;line-height:1.4;font-style:normal;color:#1e4c4e}.consultation-scheduler .assessment-booking-doctor-check{width:20px;height:20px;border-radius:50%;border:1px solid #13333455;display:grid;place-items:center;flex:none}.consultation-scheduler .is-selected .assessment-booking-doctor-check{background:#133334;border-color:#133334;color:#fef9ef}.consultation-schedule-layout{min-width:0}.consultation-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:36px}.consultation-section-heading h3{font-size:16px;line-height:1.4}.consultation-section-heading>span{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--consultation-muted)}.consultation-date-cards{display:flex;gap:7px;overflow-x:auto;padding:3px 3px 10px;scrollbar-width:thin}.consultation-date-cards button{display:flex;min-width:62px;height:82px;flex:0 0 62px;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(19,51,52,.12);border-radius:14px;background:#f7eee0;color:#133334}.consultation-date-cards button:hover{border-color:#133334}.consultation-date-cards button[aria-pressed=true]{border-color:#133334;background:#133334;color:#fef9ef}.consultation-date-cards span{font-size:10px;line-height:1;text-transform:uppercase}.consultation-date-cards strong{font-size:17px;line-height:1;margin-top:7px}.consultation-date-cards small{font-size:10px;line-height:1;margin-top:6px}.consultation-times{min-width:0;margin-top:18px}.consultation-time-date{color:var(--consultation-muted);font-size:12px;margin:10px 0 16px}.consultation-periods{display:flex;gap:4px;padding:4px;background:#f7eee0;border-radius:999px}.consultation-periods:empty{display:none}.consultation-periods button{flex:1;min-height:34px;font-size:11px;border-radius:999px}.consultation-periods button[aria-pressed=true]{color:#fef9ef;background:#133334}.consultation-slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px;max-height:224px;overflow-y:auto;padding:3px}.consultation-slot-grid button{min-height:44px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #13333440;border-radius:12px;font-size:13px}.consultation-slot-grid button:hover{background:#f7eee0;border-color:#133334}.consultation-slot-grid button[aria-pressed=true]{background:#133334;color:#fef9ef;border-color:#133334}.consultation-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:160px;font-size:13px;color:#526766}.consultation-empty,.consultation-hint{margin-top:20px;font-size:13px;line-height:1.6;color:#526766}.consultation-booking-dialog[data-step=details]{width:min(94vw,560px)}.consultation-details-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px;margin-top:20px}.consultation-birth-date{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.25fr) minmax(0,1fr);gap:8px}.consultation-booking-dialog .consultation-field{display:block;width:100%;min-width:0;height:48px;margin-top:8px;padding:0 12px;border:1px solid var(--consultation-line);border-radius:12px;background:#f7eee0;color:#133334;font-family:var(--brand-font);font-size:16px;font-weight:400;line-height:1.5;scroll-margin-block:16px;outline:none;box-shadow:none}.consultation-booking-dialog .consultation-field:focus-visible{outline:2px solid #1e4c4e;outline-offset:-2px}.consultation-form-actions{grid-column:1/-1;padding-top:4px}.consultation-auth-dialog{transition-property:none;top:var(--consultation-viewport-center,50%);max-height:calc(var(--consultation-viewport-height, 100dvh) - 24px);overflow-y:auto;overscroll-behavior:contain;scroll-padding-block:16px}.consultation-auth-dialog :is(input,select){font-size:16px;font-weight:400}.consultation-ticket{border:1px solid #13333426;border-radius:20px;background:#f7eee0;overflow:hidden;text-align:left}.consultation-ticket-doctor{display:flex;align-items:center;gap:16px;padding:22px 24px}.consultation-ticket-photo{width:68px;height:76px;position:relative;display:grid;place-items:center;background:#fef9ef;border-radius:14px;overflow:hidden;flex:none}.consultation-ticket-identity{flex:1;min-width:0}.consultation-ticket-identity h3{font-size:18px;line-height:1.3}.consultation-ticket-identity p{font-size:12px;line-height:1.45;margin-top:5px;color:#526766}.consultation-ticket-identity>span{display:flex;gap:5px;align-items:center;font-size:11px;margin-top:8px;color:#1e4c4e}.consultation-section-heading>button,.consultation-ticket-edit{font-size:12px;text-decoration:underline;text-underline-offset:4px;min-height:44px}.consultation-ticket-appointment{position:relative;display:flex;align-items:center;gap:20px;margin:0 24px;border-top:1px dashed #13333442;padding:24px 0}.consultation-ticket-appointment:after,.consultation-ticket-appointment:before{content:"";position:absolute;top:-10px;width:18px;height:18px;background:#fef9ef;border:1px solid #13333426;border-radius:50%}.consultation-ticket-appointment:before{left:-34px}.consultation-ticket-appointment:after{right:-34px}.consultation-date-stamp{width:68px;border:1px solid #13333426;border-radius:12px;overflow:hidden;text-align:center;flex:none;background:#fef9ef}.consultation-date-stamp>span{display:block;background:#133334;color:#fef9ef;padding:5px;font-size:11px;text-transform:uppercase;letter-spacing:1px}.consultation-date-stamp strong{display:block;font-size:30px;line-height:1;padding:10px 0 12px;font-weight:350}.consultation-ticket-when>span{display:flex;align-items:center;gap:6px;font-size:13px;color:#526766}.consultation-ticket-when p{font-size:28px;font-weight:350;line-height:1.2;margin-top:7px;letter-spacing:-.5px}.consultation-ticket-when p>span{display:block;font-size:11px;font-weight:400;letter-spacing:0;color:#526766;margin-top:5px}.consultation-ticket-bottom{display:flex;justify-content:space-between;gap:12px;padding:16px 24px;border-top:1px solid #1333341a;font-size:12px}.consultation-ticket-bottom>span{display:flex;align-items:center;gap:7px}.consultation-ticket-bottom strong{font-size:15px}.consultation-patient{padding:0 2px}.consultation-patient dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 24px;margin-top:12px}.consultation-patient dt{font-size:11px;color:#526766;margin-bottom:4px}.consultation-patient dd{font-size:14px;overflow-wrap:anywhere}.consultation-patient dl>div:nth-child(2),.consultation-patient-name{grid-column:span 2}.consultation-retry{display:block;text-decoration:underline;min-height:44px}@media (width < 640px){.consultation-booking-dialog,.consultation-booking-dialog[data-step=details]{width:100%;max-width:none;max-height:min(95dvh,calc(var(--consultation-viewport-height, 100dvh) - 12px));top:auto;bottom:var(--consultation-viewport-bottom,0);border-radius:24px 24px 0 0}.consultation-dialog-body{padding:22px 20px max(20px,env(safe-area-inset-bottom))}.consultation-progress{gap:14px}.consultation-progress li{gap:5px;font-size:10px}.consultation-progress li>span:first-child{width:20px;height:20px}.consultation-topbar{margin-bottom:20px}.consultation-booking-dialog>button{top:12px;right:8px}.consultation-scheduler .assessment-booking-doctors{grid-template-columns:1fr;gap:8px}.consultation-scheduler .assessment-booking-doctors>button{padding:12px}.consultation-scheduler .assessment-booking-doctor-photo{width:52px;height:58px}.consultation-scheduler .assessment-booking-doctor-copy>em{margin-top:5px}.consultation-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.consultation-slot-grid button{font-size:12px;gap:4px}.consultation-slot-grid button>svg:first-child{display:none}.consultation-ticket-doctor{padding:18px 16px;gap:12px;flex-wrap:wrap}.consultation-ticket-photo{width:56px;height:66px}.consultation-ticket-identity h3{font-size:16px}.consultation-ticket-identity p{font-size:11px}.consultation-ticket-edit{width:100%;min-height:28px;text-align:right;margin-top:-4px}.consultation-ticket-appointment{margin:0 16px;gap:14px;padding:20px 0}.consultation-ticket-appointment:before{left:-26px}.consultation-ticket-appointment:after{right:-26px}.consultation-ticket-when>span{font-size:11px}.consultation-ticket-when>span svg{display:none}.consultation-ticket-when p{font-size:25px}.consultation-date-stamp{width:56px}.consultation-ticket-bottom{padding:14px 16px;font-size:10px;gap:8px}.consultation-ticket-bottom strong{font-size:14px}.consultation-patient dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.consultation-patient dl>div:nth-child(2),.consultation-patient-name{grid-column:auto}}@media (prefers-reduced-motion:reduce){.consultation-booking-dialog,.consultation-booking-dialog *{transition:none!important;animation:none!important}}