:root{--dew-primary:#1387b5;--dew-primary-hover:#106b91;--dew-heading:#193d53;--dew-text:#344451;--dew-muted:#697b86;--dew-border:#e1e9ed;--dew-soft-bg:#f7fbfd;--dew-radius:8px}.dew-booking-trigger{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--dew-primary);color:#fff;border:1px solid var(--dew-primary);border-radius:5px;padding:12px 24px;font-family:"Poppins",sans-serif;font-size:14px;font-weight:500;line-height:1.5;letter-spacing:0;text-transform:none;cursor:pointer;text-align:center;text-decoration:none;transition:background .2s ease,border-color .2s ease}.dew-booking-trigger:hover,.dew-booking-trigger:focus{background:var(--dew-primary-hover);border-color:var(--dew-primary-hover);color:#fff}.dew-booking-overlay[hidden]{display:none !important}.dew-booking-overlay{position:fixed;inset:0;z-index:999999;display:flex;justify-content:center;align-items:center;padding:20px;background:rgba(18,35,47,.65);overflow-y:auto;box-sizing:border-box}.dew-booking-open{overflow:hidden}.dew-booking-dialog{position:relative;width:100%;max-width:850px;max-height:92vh;padding:32px;margin:auto;background:#fff;color:var(--dew-text);border-radius:12px;box-shadow:0 18px 65px rgba(0,0,0,.18);overflow-y:auto;box-sizing:border-box;font-family:"Poppins",sans-serif;font-size:14px;line-height:1.6}.dew-booking-dialog *,.dew-booking-dialog *:before,.dew-booking-dialog *:after{box-sizing:border-box}.dew-booking-dialog h2{margin:0 45px 8px 0;padding:0;font-family:"Poppins",sans-serif;font-size:25px;font-weight:600;line-height:1.35;color:var(--dew-heading);letter-spacing:0;text-transform:none}.dew-booking-dialog h3{margin:0 0 14px;padding:0;font-family:"Poppins",sans-serif;font-size:16px;font-weight:600;line-height:1.4;color:var(--dew-heading);letter-spacing:0;text-transform:none}.dew-booking-intro{margin:0 0 8px;color:var(--dew-muted);font-size:13px;font-weight:400;line-height:1.6}.dew-booking-timezone{margin:8px 0 0;font-size:12px;font-weight:500;line-height:1.5;color:var(--dew-muted)}.dew-booking-date-label{margin:0 0 12px;font-size:13px;font-weight:400;line-height:1.6;color:var(--dew-muted)}.dew-booking-dialog .dew-booking-close{position:absolute;top:16px;right:18px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;padding:0;margin:0;border:0;border-radius:50%;background:0 0;color:#536775;font-family:Arial,sans-serif;font-size:27px;font-weight:400;line-height:1;cursor:pointer;box-shadow:none}.dew-booking-dialog .dew-booking-close:hover{background:#edf4f7;color:var(--dew-heading)}.dew-booking-layout{display:grid;grid-template-columns:minmax(0, 1fr)
        minmax(0, 1fr);gap:26px;margin-top:24px}.dew-booking-calendar-col,.dew-booking-slots-col{min-width:0;width:100%}#dew-booking-calendar{width:100%;max-width:100%}#dew-booking-calendar .flatpickr-calendar{width:100%;max-width:100%;background:#fff;border:1px solid var(--dew-border);border-radius:var(--dew-radius);box-shadow:none;font-family:"Poppins",sans-serif;font-size:12px;overflow:hidden}#dew-booking-calendar .flatpickr-innerContainer,#dew-booking-calendar .flatpickr-rContainer,#dew-booking-calendar .flatpickr-days,#dew-booking-calendar .dayContainer{width:100%;min-width:0;max-width:100%}#dew-booking-calendar .flatpickr-months{padding:7px 0;background:var(--dew-soft-bg)}#dew-booking-calendar .flatpickr-month{color:var(--dew-heading)}#dew-booking-calendar .flatpickr-current-month{font-size:14px;font-weight:500}#dew-booking-calendar .flatpickr-current-month input.cur-year{font-size:14px;font-weight:500}#dew-booking-calendar .flatpickr-weekdays{background:var(--dew-soft-bg)}#dew-booking-calendar .flatpickr-weekday{color:var(--dew-muted);font-family:"Poppins",sans-serif;font-size:11px;font-weight:500}#dew-booking-calendar .flatpickr-day{max-width:none;height:38px;display:flex;align-items:center;justify-content:center;font-family:"Poppins",sans-serif;font-size:12px;font-weight:400;color:var(--dew-text);border-radius:6px}#dew-booking-calendar .flatpickr-day:hover:not(.flatpickr-disabled){background:#e8f5fa;border-color:#e8f5fa;color:var(--dew-heading)}#dew-booking-calendar .flatpickr-day.selected,#dew-booking-calendar .flatpickr-day.selected:hover,#dew-booking-calendar .flatpickr-day.selected:focus{background:var(--dew-primary);border-color:var(--dew-primary);color:#fff}#dew-booking-calendar .flatpickr-day.flatpickr-disabled,#dew-booking-calendar .flatpickr-day.flatpickr-disabled:hover{background:0 0;color:#c2cbd0;opacity:.6;cursor:not-allowed}#dew-booking-calendar .flatpickr-prev-month,#dew-booking-calendar .flatpickr-next-month{padding:10px}#dew-booking-calendar .flatpickr-prev-month svg,#dew-booking-calendar .flatpickr-next-month svg{width:13px;height:13px}.dew-booking-times{display:grid;grid-template-columns:repeat(2,minmax(0, 1fr));gap:9px;width:100%;margin-top:12px}.dew-booking-dialog .dew-booking-time{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:42px;height:auto;padding:9px 6px;margin:0;background:#f7fbfd;color:var(--dew-heading);border:1px solid #c8dfe9;border-radius:6px;font-family:"Poppins",sans-serif !important;font-size:12px !important;font-weight:500 !important;line-height:1.45 !important;letter-spacing:0 !important;text-transform:none !important;text-decoration:none;text-align:center;white-space:normal;overflow-wrap:anywhere;word-break:normal;cursor:pointer;box-shadow:none;transition:background .2s ease,border-color .2s ease,color .2s ease}.dew-booking-dialog .dew-booking-time:hover,.dew-booking-dialog .dew-booking-time.is-selected{background:var(--dew-primary);border-color:var(--dew-primary);color:#fff}.dew-booking-dialog .dew-booking-time:focus-visible{outline:2px solid var(--dew-primary);outline-offset:2px}.dew-booking-message{margin:8px 0;min-height:0;color:#b34436;font-size:13px;font-weight:400;line-height:1.6}.dew-booking-message:empty{display:none}.dew-booking-notice{margin:16px 0 0;color:var(--dew-muted);font-size:11px;font-weight:400;line-height:1.6}.dew-booking-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:25px;padding-top:18px;border-top:1px solid var(--dew-border)}.dew-booking-selection{flex:1;min-width:0;color:var(--dew-text);font-size:12px;font-weight:500;line-height:1.6}.dew-booking-dialog .dew-booking-next{display:inline-flex;align-items:center;justify-content:center;min-width:100px;min-height:42px;padding:10px 22px;margin:0;background:var(--dew-primary);color:#fff;border:1px solid var(--dew-primary);border-radius:5px;font-family:"Poppins",sans-serif;font-size:13px;font-weight:500;line-height:1.5;letter-spacing:0;text-transform:none;cursor:pointer;box-shadow:none;transition:background .2s ease}.dew-booking-dialog .dew-booking-next:not(:disabled):hover{background:var(--dew-primary-hover);border-color:var(--dew-primary-hover);color:#fff}.dew-booking-dialog .dew-booking-next:disabled{opacity:.45;cursor:not-allowed}@media (max-width:900px){.dew-booking-dialog{max-width:740px;padding:26px}.dew-booking-layout{gap:20px}.dew-booking-dialog .dew-booking-time{font-size:12px !important;padding:8px 5px}}@media (max-width:680px){.dew-booking-overlay{padding:12px;align-items:flex-start}.dew-booking-dialog{width:100%;max-width:100%;max-height:calc(100dvh - 24px);padding:24px 16px;border-radius:10px}.dew-booking-dialog h2{font-size:21px}.dew-booking-dialog h3{font-size:15px}.dew-booking-layout{grid-template-columns:minmax(0, 1fr);gap:24px;margin-top:20px}.dew-booking-times{grid-template-columns:repeat(2,minmax(0, 1fr));gap:8px}.dew-booking-dialog .dew-booking-time{min-height:40px;padding:8px 5px;font-size:12px !important;line-height:1.4 !important}.dew-booking-footer{flex-wrap:wrap;gap:12px}.dew-booking-selection{flex-basis:100%}.dew-booking-dialog .dew-booking-next{margin-left:auto}}@media (max-width:380px){.dew-booking-dialog{padding:20px 12px}.dew-booking-times{grid-template-columns:1fr}.dew-booking-dialog .dew-booking-time{font-size:12px !important}}.dew-booking-step[hidden],#dew-booking-form[hidden]{display:none!important}.dew-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;margin-top:20px}.dew-form-field{display:flex;flex-direction:column;min-width:0;gap:5px}.dew-form-field label{font-size:12px;font-weight:600;color:var(--dew-heading);line-height:1.5}.dew-form-field input,.dew-form-field select,.dew-form-field textarea{width:100%;min-width:0;padding:10px 12px;background:#fff;color:var(--dew-text);border:1px solid var(--dew-border);border-radius:6px;font:400 13px/1.5 'Poppins',sans-serif;box-shadow:none}.dew-form-field textarea{resize:vertical;min-height:85px}.dew-form-field input:focus,.dew-form-field select:focus,.dew-form-field textarea:focus{outline:2px solid var(--dew-primary);outline-offset:1px}.dew-form-field [aria-invalid=true]{border-color:#b34436}.dew-field-error{font-size:11px;color:#b34436}.dew-form-check{grid-column:1/-1;display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.6;cursor:pointer}.dew-form-check input{margin-top:4px;flex:0 0 auto}.dew-form-actions{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--dew-border);margin-top:25px;padding-top:20px}.dew-booking-dialog .dew-form-actions button{font:500 13px/1.5 'Poppins',sans-serif;text-transform:none;letter-spacing:0;border-radius:6px;padding:10px 22px;min-height:42px;cursor:pointer}.dew-booking-dialog .dew-form-back{color:var(--dew-heading);background:#fff;border:1px solid var(--dew-border)}.dew-booking-dialog .dew-patient-next,.dew-booking-dialog .dew-form-submit{color:#fff;background:var(--dew-primary);border:1px solid var(--dew-primary)}.dew-booking-dialog .dew-form-submit:disabled{opacity:.5;cursor:wait}.dew-booking-complete{padding:25px 0}@media(max-width:600px){.dew-form-grid{grid-template-columns:1fr;gap:13px}}.dew-booking-calendar-context[hidden]{display:none !important}.dew-booking-confirmation{margin:20px 0 0;padding:16px 20px;border:1px solid #dce6e9;border-radius:10px;background:#f8fbfc}.dew-booking-confirmation>div{display:grid;grid-template-columns:minmax(65px, 100px) minmax(0, 1fr);gap:12px;padding:9px 0;border-bottom:1px solid #e6edef}.dew-booking-confirmation>div:last-child{border-bottom:0}.dew-booking-confirmation dt{font-weight:600}.dew-booking-confirmation dd{margin:0;overflow-wrap:anywhere}@media (max-width:480px){.dew-booking-confirmation{padding:12px}.dew-booking-confirmation>div{grid-template-columns:70px minmax(0, 1fr);gap:8px}}.dew-booking-dialog .dew-dob-toggle{align-self:flex-start;margin:4px 0;padding:5px 12px;border:1px solid var(--dew-border);border-radius:6px;background:var(--dew-soft-bg);color:var(--dew-heading);font:500 12px/1.5 "Poppins",sans-serif;cursor:pointer}.dew-booking-dialog .dew-dob-panel{width:100%;max-width:330px;padding:12px;background:#fff;border:1px solid var(--dew-border);border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.09)}.dew-booking-dialog .dew-dob-panel[hidden]{display:none!important}.dew-booking-dialog .dew-dob-controls{display:grid;grid-template-columns:minmax(0,1fr) 105px;gap:8px;margin-bottom:10px}.dew-booking-dialog .dew-dob-controls select{width:100%;padding:7px 5px;font-size:12px}.dew-booking-dialog .dew-dob-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.dew-booking-dialog .dew-dob-weekday{font-size:11px;text-align:center;color:var(--dew-muted)}.dew-booking-dialog .dew-dob-day{width:100%;min-width:0;padding:7px 0;border:1px solid transparent;border-radius:5px;background:#fff;color:var(--dew-text);font:500 12px/1.3 "Poppins",sans-serif;cursor:pointer}.dew-booking-dialog .dew-dob-day:hover:not(:disabled),.dew-booking-dialog .dew-dob-day.is-selected{background:var(--dew-primary);color:#fff}.dew-booking-dialog .dew-dob-day:disabled{opacity:.3;cursor:not-allowed}.dew-booking-dialog .dew-dob-day:focus-visible,.dew-booking-dialog .dew-dob-toggle:focus-visible{outline:2px solid var(--dew-primary);outline-offset:2px}.dew-booking-dialog .dew-booking-notice[hidden]{display:none!important}.dew-booking-dialog .dew-booking-summary{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:7px 16px;margin:18px 0 0;font-size:13px}.dew-booking-dialog .dew-booking-summary dt{font-weight:600}.dew-booking-dialog .dew-booking-summary dd{margin:0;overflow-wrap:anywhere}