h1,h2,h3,h4,h5,h6,button{font-family:SamsungSharpSans}:root{font-family:SamsungOne,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#000;background-color:#fff;font-size:1rem;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;min-width:320px;min-height:100vh}h1{font-size:2.4em;line-height:1.1}h2{font-size:1.4em}button{border-radius:100px;border:1px solid transparent;color:#111827;padding:.6em 1.2em;font-size:1em;font-weight:600;font-family:inherit;background-color:#fff;cursor:pointer;transition:border-color .25s}button:hover:not(.day-cell--disabled,.day-cell--unclickable){border-color:#2189ff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#f2f2f2}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{max-width:1280px;margin:0 auto}.app-root{width:100%;max-width:600px;display:flex;flex-direction:column;align-items:flex-start;gap:16px;background-color:#fff;padding:16px}@media(max-width:768px){.app-root{padding:0;max-width:100vw}}.app-header{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.app-header__label{font-size:13px;font-weight:500;color:#111827}.app-header__select{padding:4px 8px;border-radius:8px;border:1px solid #e5e7eb;font-size:13px;background:#f2f2f2;cursor:pointer}.app-header__banner{width:100%}.app-header__banner img{width:100%;object-fit:cover}.app-slider{width:100%;overflow:hidden;min-height:0;transition:height .3s ease-out}.app-slider__track{display:flex;width:100%;transition:transform .55s ease-in;align-items:flex-start}.app-slider__slide{flex:0 0 100%;width:100%;min-width:0;height:auto;align-self:flex-start}.app-footer{width:100%;padding-top:16px;margin-top:16px;border-top:1px solid #d1d5db}.app-footer p{margin:0;font-size:11px;line-height:1.2;color:#6b7280;text-align:center}.app-footer p:last-child{margin-bottom:0}.booking-policy{display:flex;flex-direction:column;gap:16px;width:calc(100% - 20px);min-height:200px;padding:0 10px 20px}.booking-policy__content{flex:1;line-height:1.5}.booking-policy__content a{color:#2563eb}.booking-policy__actions{margin-top:auto}.booking-policy__next{width:100%;padding:12px 16px;border:none;background-color:#2189ff;color:#fff;cursor:pointer;transition:opacity .2s}.booking-policy__next:hover{opacity:.9}.booking-container{max-width:480px;width:calc(100% - 20px);min-width:340px;margin:0 auto;font-family:SamsungOne,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#111827;padding:0 10px 20px}.section-title{font-size:16px;font-weight:600;margin-bottom:12px}.calendar{border-radius:16px;border:1px solid #e5e7eb;padding:16px}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.month-label{font-weight:600;text-transform:capitalize}.nav-button{border-radius:999px;border:1px solid #d1d5db;background-color:#f2f2f2;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer}.nav-button:hover{background-color:#f3f4f6}.weekday-row,.week-row{display:grid;grid-template-columns:repeat(7,1fr)}.weekday-cell{text-align:center;font-size:11px;text-transform:uppercase;color:#6b7280;margin-bottom:4px}.calendar-grid{display:flex;flex-direction:column;gap:4px}.day-cell{border-radius:999px;border:1px solid transparent;background-color:transparent;width:44px;height:44px;margin:0 auto;display:flex;align-items:center;justify-content:center;cursor:default;font-size:13px;outline:none}.day-cell--clickable{border-color:#d1d5db;color:#111827;cursor:pointer}.day-cell--clickable:hover{background-color:#f3f4f6}.day-cell--clicked{color:#000;border-color:#2189ff;cursor:pointer}.day-cell--disabled{color:#d1d5db}.day-cell--unclickable{color:#000}.day-cell--empty{background:none;border:none}.day-cell--today{background-color:#2189ff;color:#fff}.day-number{font-weight:500}.time-section{margin-top:24px}.time-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.time-slot{border-radius:12px;border:1px solid #e5e7eb;padding:10px 0;font-size:1rem;font-weight:600;text-align:center;cursor:pointer}.time-slot:hover{border-color:#2189ff}.time-slot--selected{background-color:#fff}.time-slot--disabled,.time-slot--booked{cursor:not-allowed;pointer-events:none;background-color:#f2f2f2;color:#9ca3af}.time-placeholder{font-size:13px;color:#6b7280}.selected-slots{margin-top:24px}.selected-slots__title{font-size:16px;font-weight:600;margin-bottom:12px}.selected-slots__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.selected-slots__item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:12px;border:1px solid #e5e7eb;background-color:#f2f2f2;font-size:13px}.selected-slots__label{flex:1;text-transform:capitalize}.selected-slots__delete{padding:4px 8px;border-radius:8px;border:1px solid #e5e7eb;background:#f2f2f2;font-size:11px;color:#6b7280;cursor:pointer}.selected-slots__delete:hover{background:#f3f4f6;color:#111827}.day-cell--disabled-by-limit{cursor:not-allowed;opacity:.6;pointer-events:none}.booking-calendar__actions{margin-top:24px;width:100%}.booking-calendar__next{width:100%;padding:12px 16px;border:none;background-color:#2189ff;color:#fff;cursor:pointer;transition:opacity .2s}.booking-calendar__next:hover:not(:disabled){opacity:.9}.booking-calendar__next:disabled{opacity:.2;cursor:not-allowed;background-color:#000}.booking-form{width:calc(100% - 20px);padding:0 10px 20px}.booking-form__inner{display:flex;flex-direction:column;gap:12px}.booking-form__field{display:flex;flex-direction:column;gap:4px;padding-bottom:10px}.booking-form__label{font-size:1rem;font-weight:600;color:#111827}.booking-form__required{color:#dc2626}.booking-form__input{width:100%;box-sizing:border-box;padding:8px 12px;border-radius:8px;border:1px solid #e5e7eb;font-size:1rem;font-family:inherit;background-color:#fff}.booking-form__input--error{border-color:#dc2626}.booking-form__error{font-size:11px;color:#dc2626}.booking-form__submit-error{font-size:13px;color:#dc2626;margin:0}.booking-form__recaptcha-notice{font-size:11px;color:#6b7280;margin:0 0 8px;line-height:1.4}.booking-form__group{margin:0;padding:12px;border:1px solid #e5e7eb;border-radius:8px}.booking-form__group-legend{padding:0 8px 0 0;font-size:13px;font-weight:600;color:#111827}.booking-form__radio-row{display:flex;gap:16px;flex-wrap:wrap}.booking-form__radio-label{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#111827;cursor:pointer}.booking-form__radio-label--other{flex-wrap:nowrap;white-space:nowrap;gap:8px}.booking-form__radio-label--other .booking-form__input--inline{width:140px;min-width:140px;margin-left:0;flex-shrink:0}.booking-form__business-unit-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}.booking-form__input--inline{min-width:140px;margin-left:4px}.booking-form__checkbox-label--other{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px}.booking-form__product-slide{max-height:0;overflow:hidden;transition:max-height .35s ease-out}.booking-form__product-slide--open{max-height:3200px;transition:max-height .4s ease-in}.booking-form__product-desc{margin:12px 0;font-size:13px;line-height:1.5;color:#6b7280}.booking-form__field--checkboxes{margin-top:8px}.booking-form__checkboxes{display:flex;flex-direction:column;gap:4px;margin-top:4px}.booking-form__checkbox-label{display:inline-flex;align-items:flex-start;gap:8px;font-size:1rem;color:#111827;cursor:pointer}.booking-form__actions{margin-top:12px}.booking-form__next{width:100%;padding:12px 16px;border:none;background-color:#2189ff;color:#fff;cursor:pointer;transition:opacity .2s}.booking-form__next:hover:not(:disabled){opacity:.9}.booking-form__next:disabled{opacity:.2;cursor:not-allowed;background-color:#000}.booking-completed{padding:24px 10px;text-align:center}.booking-completed__title{font-size:1.5rem;font-weight:600;color:#111827;margin:0 0 12px}.booking-completed__message{line-height:1.6;margin:0}.booking-completed__payload{margin-top:24px;text-align:left}.booking-completed__payload-title{font-size:13px;font-weight:500;color:#111827;margin:0 0 8px}.booking-completed__payload-json{margin:0;padding:12px;font-size:11px;line-height:1.4;color:#111827;background:#f2f2f2;border:1px solid #e5e7eb;border-radius:8px;overflow-x:auto;white-space:pre-wrap;word-break:break-word}
