@import url(https://fonts.googleapis.com/css2?family=Karla:wght@300;400;500;700&display=swap);body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;color:#303030;font-family:Karla,sans-serif;font-weight:300;line-height:1.6;overflow-x:hidden}body,html{height:auto!important;min-height:auto!important;overflow:visible}@media (max-width:768px){body.iframe-mobile{padding-bottom:80px}.booking-app.iframe-mobile{min-height:calc(100vh + 80px)}}.booking-app{display:block;height:-webkit-fit-content;height:fit-content;min-height:auto;min-height:100vh;padding:20px;width:100%}.booking-container{margin:0 auto;max-width:800px;min-height:800px;padding:30px}.booking-container[data-step="1"]{min-height:600px}.booking-container[data-step="2"]{min-height:700px}.booking-container[data-step="3"]{min-height:800px}.booking-container[data-step="4"]{min-height:900px}.booking-container[data-step="5"]{min-height:500px}.booking-app.iframe-mode{min-height:800px;padding:10px}.booking-app.iframe-mode .booking-container{max-width:none;min-height:750px}.booking-app.iframe-mode .booking-container[data-step="1"]{min-height:550px}.booking-app.iframe-mode .booking-container[data-step="2"]{min-height:650px}.booking-app.iframe-mode .booking-container[data-step="3"]{min-height:750px}.booking-app.iframe-mode .booking-container[data-step="4"]{min-height:850px}.booking-app.iframe-mode .booking-container[data-step="5"]{min-height:450px}.booking-app.iframe-mode h1{font-size:24px;margin-bottom:20px}.booking-app.iframe-mode h2{font-size:20px;margin-bottom:15px}.booking-container h1{color:#303030;font-size:28px;font-weight:500;margin-bottom:30px;text-align:center}.booking-container h2{color:#303030;font-size:22px;font-weight:500;margin-bottom:20px}.booking-container h3{color:#303030;font-size:18px;font-weight:500;margin-bottom:15px}.step{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.error-message{background-color:#fee;border:1px solid #fcc;border-radius:4px;color:#c33;margin-bottom:20px;padding:12px 15px;position:relative}.close-error{background:none;border:none;color:#c33;cursor:pointer;font-size:18px;height:20px;padding:0;position:absolute;right:10px;top:8px;width:20px}.success-message{padding:30px 20px;text-align:center}.success-message h2{color:#27ae60;margin-bottom:20px}.success-message p{color:#555;margin-bottom:15px}.loading{color:#7f8c8d;font-style:italic;padding:20px;text-align:center}.doctor-select .react-select__control{border:1px solid #d7ded9;border-radius:8px;box-shadow:none;font-family:Karla,sans-serif;font-size:16px;font-weight:300;min-height:45px}.doctor-select .react-select__control:hover{border-color:#d0d0d0}.doctor-select .react-select__control--is-focused{border-color:#303030;box-shadow:0 0 0 .2rem #30303040}.doctor-select .react-select__placeholder{color:#6c757d}.doctor-info{border-bottom:1px solid #e9ecef;margin-bottom:20px;padding:15px 0}.doctor-info p{margin-bottom:5px}.booking-calendar-container{display:flex;gap:20px;margin:20px 0;min-height:400px}.booking-header h2,.booking-header h3{color:#303030;font-size:18px;margin-bottom:20px}.booking-header h3{font-weight:500}.required{color:#dc3545}.calendar-section{background:#fff;border:1px solid #d7ded9;border-radius:8px;flex:1 1;max-width:350px;padding:20px}.calendar-header{margin-bottom:20px}.month-navigation{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.nav-btn{background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;font-size:24px;padding:5px 10px;transition:color .2s ease}.nav-btn:hover{background-color:#f8f9fa;color:#829489}.month-year-selectors{display:flex;gap:10px}.month-select,.year-select{background:#fff;border:1px solid #d7ded9;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 12px}.calendar-grid{border:1px solid #e9ecef;border-radius:8px;overflow:hidden}.calendar-days-header{background-color:#f8f9fa;border-bottom:1px solid #e9ecef;display:grid;grid-template-columns:repeat(7,1fr)}.day-header{color:#6c757d;font-size:12px;font-weight:500;padding:10px 5px;text-align:center}.calendar-dates{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-date{align-items:center;aspect-ratio:1;background:#fff;border:1px solid #e9ecef;border-left:none;border-top:none;cursor:pointer;display:flex;font-size:14px;justify-content:center;position:relative;transition:all .2s ease}.calendar-date:nth-child(7n){border-right:none}.calendar-date.other-month,.calendar-date.unavailable{background-color:#f8f9fa;color:#ccc}.calendar-date.unavailable{cursor:not-allowed}.calendar-date.available{color:#495057;cursor:pointer;font-weight:700}.calendar-date.available:hover{background-color:#8294891a;color:#829489}.calendar-date.selected{background-color:#829489!important;color:#fff!important;font-weight:500}.calendar-date.today{font-weight:600;position:relative}.calendar-date.today:not(.selected){background-color:#8294891a;color:#829489}.time-slots-section{flex:1 1;max-width:400px;padding:0 20px}.selected-date-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:10px}.selected-date-header h3{color:#303030;font-size:18px;margin:0}.nav-arrows{display:flex;gap:5px}.date-nav-btn{align-items:center;background:none;border:1px solid #d7ded9;border-radius:4px;color:#6c757d;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.date-nav-btn:hover:not(:disabled){border-color:#829489;color:#829489}.date-nav-btn:disabled{cursor:not-allowed;opacity:.5}.time-slots-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.time-slot-btn-new{background:#fff;border:1px solid #829489;border-radius:4px;color:#829489;cursor:pointer;font-size:14px;font-weight:500;padding:12px 16px;text-align:center;transition:all .2s ease}.time-slot-btn-new.selected,.time-slot-btn-new:hover{background:#829489;color:#fff}.timezone-info{align-items:center;border-top:1px solid #e9ecef;color:#6c757d;display:flex;font-size:14px;gap:8px;margin-top:20px;padding-top:20px}.timezone-icon{font-size:16px}.no-date-selected{color:#6c757d;font-style:italic;padding:40px 20px;text-align:center}.slots-container{margin-bottom:20px;max-height:400px;overflow-y:auto;padding:15px 0}.date-group{margin-bottom:25px}.date-group:last-child{margin-bottom:0}.date-group h3{border-bottom:1px solid #e9ecef;color:#495057;font-size:16px;margin-bottom:10px;padding-bottom:5px}.time-slots{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.time-slot-btn{background:#fff;border:1px solid #d7ded9;border-radius:8px;cursor:pointer;font-family:Karla,sans-serif;font-size:14px;font-weight:400;padding:10px 8px;position:relative;transition:all .2s ease}.time-slot-btn:hover{background-color:#3030300d;border-color:#303030}.time-slot-btn:active{transform:translateY(1px)}.virtual-badge{color:#6c757d;display:block;font-size:10px;font-style:italic;margin-top:2px}.no-slots{color:#6c757d;padding:30px 20px;text-align:center}.no-slots p{margin-bottom:15px}.appointment-summary{border-bottom:1px solid #e9ecef;margin-bottom:25px;padding:20px 0}.appointment-summary p{margin-bottom:8px}.patient-form{margin-top:10px}.patient-form .form-section:first-child{margin-top:0}.form-group{margin-bottom:20px}.form-group label{color:#303030;display:block;font-size:17px;font-weight:500;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{background-color:#fff;border:1px solid #d7ded9;border-radius:8px;font-family:Karla,sans-serif;font-size:16px;font-weight:300;padding:12px 15px;transition:border-color .2s ease;width:100%}.form-group select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#303030;box-shadow:0 0 0 .2rem #30303040;outline:none}.form-group textarea{min-height:80px;resize:vertical}.form-error{color:#dc3545;font-size:14px;font-weight:400;margin-top:4px}.form-row{display:flex;gap:15px}.form-row .form-group{flex:1 1}.form-group input[type=date]{color-scheme:light;cursor:pointer}.form-group input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.7;-webkit-transition:opacity .2s ease;transition:opacity .2s ease}.form-group input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}.date-selects{display:flex;gap:10px}.date-selects select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><path fill="rgb%28130, 148, 137%29" d="M10.293 3.293L6 7.586 1.707 3.293A1 1 0 00.293 4.707l5 5a1 1 0 001.414 0l5-5a1 1 0 10-1.414-1.414z"/></svg>');background-position:right 12px center;background-repeat:no-repeat;background-size:12px;border:1px solid #d7ded9;border-radius:8px;color:#303030;flex:1 1;font-size:14px;min-width:0;padding:12px 35px 12px 15px}.date-selects select:focus{border-color:#829489;box-shadow:0 0 0 2px #82948933;outline:none}.radio-group{display:flex;gap:20px;margin-top:8px}.radio-option{align-items:center;cursor:pointer;display:flex;gap:8px}.radio-option input[type=radio]{accent-color:#303030;cursor:pointer;height:18px;width:18px}.radio-option label{cursor:pointer;font-size:16px;font-weight:400;margin-bottom:0}.checkbox-group{align-items:flex-start;display:flex;gap:12px;margin-top:8px}.checkbox-group input[type=checkbox]{accent-color:#829489;cursor:pointer;height:18px;margin-top:3px;width:18px}.checkbox-group label{color:#303030;cursor:pointer;flex:1 1;font-size:16px;line-height:1.4;margin-bottom:0}.form-section{margin-bottom:40px;padding-bottom:20px}.form-section:not(:last-child){border-bottom:2px solid #e9ecef}.form-section h3{color:#303030;font-size:24px;font-weight:500;margin-bottom:25px;padding-bottom:0}.form-actions{display:flex;gap:15px;justify-content:space-between;margin-top:30px}.btn{border:none;border-radius:4px;cursor:pointer;display:inline-block;font-family:Karla,sans-serif;font-size:16px;font-weight:500;padding:12px 24px;text-align:center;text-decoration:none;transition:all .2s ease}.submit-center{justify-content:center!important;margin-top:40px}.submit-button-wrapper{display:flex;flex:1 1;justify-content:center}.submit-btn{font-size:18px;font-weight:600;min-width:250px;padding:16px 32px}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background-color:#303030;border-radius:0;color:#fff;font-weight:500;text-transform:uppercase}.btn-primary:hover:not(:disabled){background-color:#303030cc}.btn-secondary{background-color:#d7ded9;border-radius:0;color:#303030;font-weight:500;text-transform:uppercase}.btn-secondary:hover:not(:disabled){background-color:#b7bfbacc}@media (max-width:768px){.booking-app{padding:10px}.booking-container{border-radius:0;margin:0;min-height:100vh;padding:20px}.booking-container h1{font-size:24px;margin-bottom:20px}.booking-calendar-container{flex-direction:column;gap:15px}.calendar-section{max-width:none;padding:15px}.time-slots-section{max-width:none;padding:0}.month-year-selectors{flex-direction:column;gap:8px}.month-select,.year-select{width:100%}.time-slots-grid{gap:8px;grid-template-columns:repeat(2,1fr)}.time-slot-btn-new{font-size:13px;padding:10px 8px}.selected-date-header{flex-direction:column;gap:10px;text-align:center}.time-slots{gap:6px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.time-slot-btn{font-size:13px;padding:8px 6px}.form-actions{flex-direction:column;gap:10px}.submit-center{margin-bottom:30px!important;margin-top:20px!important}.submit-btn{font-size:16px!important;min-width:200px!important;padding:14px 24px!important}.form-row{flex-direction:column;gap:0}.btn{width:100%}}.booking-app.iframe-mode{min-height:auto;padding:15px}.booking-app.iframe-mode .booking-container{border-radius:0;box-shadow:none;padding:20px}@media (max-width:500px){.booking-app{padding:5px}.booking-container{padding:15px 15px 60px}.booking-container h1{font-size:20px;margin-bottom:15px}.form-group{margin-bottom:15px}}
/*# sourceMappingURL=main.7f716218.css.map*/