h1,h2,h3,h4,h5,h6{font-family:var(--font-sans)}.dropdown-menu::-webkit-scrollbar{width:4px}.dropdown-menu::-webkit-scrollbar-track{background:transparent}.dropdown-menu::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:4px}.dropdown-menu::-webkit-scrollbar-thumb:hover{background:#b0b0b0}.dropdown-menu{scrollbar-width:thin;scrollbar-color:#D0D0D0 transparent}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.calendar-dropdown{position:absolute;left:0;z-index:50;background:#fff;border-radius:16px;box-shadow:0 4px 24px #0000001a;padding:20px 18px;min-width:300px}.calendar-dropdown.cal-open-bottom,.duration-dropdown.cal-open-bottom{top:calc(100% + 8px);animation:calFadeInDown .15s ease-out;transform-origin:top center}.calendar-dropdown.cal-open-top,.duration-dropdown.cal-open-top{bottom:calc(100% + 8px);animation:calFadeInUp .15s ease-out;transform-origin:bottom center}@keyframes calFadeInDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes calFadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.cal-title{font-weight:600;font-size:15px;color:#1a1a1a}.cal-nav-btn{width:32px;height:32px;border-radius:50%;border:1px solid #E0E0E0;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:18px;color:#555}.cal-nav-btn:hover{border-color:silver;background:#f9f9f9}.cal-nav-btn.cal-next{background:#fff3d4;border-color:#ead0a0;color:#a87139}.cal-nav-btn.cal-next:hover{background:#fabd4d;border-color:#e9ac3c;color:#423131}.cal-days-header{display:grid;grid-template-columns:repeat(7,1fr);gap:0;margin-bottom:8px}.cal-day-name{text-align:center;font-size:12px;font-weight:500;color:#888;padding:4px 0}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-cell{text-align:center;padding:10px 2px;font-size:14px;color:#333;border-radius:8px}.cal-cell.cal-empty{pointer-events:none}.cal-cell.cal-date{cursor:pointer;transition:all .15s}.cal-cell.cal-date:hover{background:#fff3d4;color:#423131;font-weight:500}.cal-cell.cal-date.selected{background:#fabd4d;color:#423131;font-weight:600}.cal-cell.cal-date.cal-disabled{color:#d0d0d0;cursor:default;pointer-events:none}.cal-cell.cal-date.cal-off-day{color:#dc2626;background-color:#fee2e2;cursor:not-allowed;pointer-events:none;font-weight:500;border:1px solid #FECACA}.cal-cell.cal-date.cal-off-day:hover{background-color:#fee2e2;color:#dc2626}.time-picker-dropdown{position:absolute;left:0;z-index:50;background:#fff;border-radius:16px;box-shadow:0 4px 24px #0000001a;padding:24px 20px;min-width:320px}.time-picker-dropdown.cal-open-bottom{top:calc(100% + 8px);animation:calFadeInDown .15s ease-out;transform-origin:top center}.time-picker-dropdown.cal-open-top{bottom:calc(100% + 8px);animation:calFadeInUp .15s ease-out;transform-origin:bottom center}.time-picker-header{text-align:center;margin-bottom:20px}.time-picker-title{font-size:15px;font-weight:600;color:#333}.time-slots-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.time-slot{padding:10px 4px;text-align:center;font-size:13px;color:#555;border-radius:6px;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.time-slot:hover{background-color:#f3f4f6;color:#111}.time-slot.selected{background-color:#48bb78;color:#fff;font-weight:500;box-shadow:0 2px 4px #48bb7833}.time-slot.booked{background-color:#fee2e2!important;color:#991b1b!important;border:1px solid #dc2626;cursor:not-allowed!important;pointer-events:none!important;opacity:.6;font-weight:500}.time-slot.booked:hover{background-color:#fee2e2!important;color:#991b1b!important}.time-picker-footer{display:flex;justify-content:flex-end;align-items:center;gap:16px;padding-top:16px;border-top:1px solid #eee}.time-btn-clear{background:none;border:none;color:#666;font-size:14px;cursor:pointer;padding:6px 12px}.time-btn-clear:hover{color:#333}.time-btn-set{background-color:#48bb78;color:#fff;border:none;border-radius:20px;padding:8px 24px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.time-btn-set:hover{background-color:#38a169}
