body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.toast-viewport{display:flex;flex-direction:column;gap:.6rem;pointer-events:none;position:fixed;right:1rem;top:1rem;width:min(360px,calc(100vw - 2rem));z-index:10000}.toast{align-items:flex-start;animation:toast-in .22s ease-out;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 30px #0000001f;color:#111827;display:flex;gap:.75rem;padding:.85rem 1rem;pointer-events:auto}.toast--success{border-left:4px solid #059669}.toast--error{border-left:4px solid #dc2626}.toast--warning{border-left:4px solid #d97706}.toast--info{border-left:4px solid #2563eb}.toast__icon{align-items:center;border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:.75rem;font-weight:700;height:1.25rem;justify-content:center;margin-top:.1rem;width:1.25rem}.toast--success .toast__icon{background:#059669}.toast--error .toast__icon{background:#dc2626}.toast--warning .toast__icon{background:#d97706}.toast--info .toast__icon{background:#2563eb}.toast__body{flex:1 1;min-width:0}.toast__message{font-size:.92rem;line-height:1.4;margin:0;word-break:break-word}.toast__close{background:#0000;border:none;color:#6b7280;cursor:pointer;flex-shrink:0;font-size:1.1rem;line-height:1;padding:0}.toast__close:hover{color:#111827}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.confirm-overlay{align-items:center;animation:toast-in .15s ease-out;background:#11182773;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:10001}.confirm-dialog{background:#fff;border-radius:12px;box-shadow:0 20px 50px #0003;color:#111827;padding:1.35rem 1.4rem 1.2rem;width:min(420px,100%)}.confirm-dialog__title{font-size:1.1rem;font-weight:650;margin:0 0 .5rem}.confirm-dialog__message{color:#374151;font-size:.95rem;line-height:1.45;margin:0 0 1.25rem;white-space:pre-wrap}.confirm-dialog__actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.confirm-dialog__btn{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;padding:.55rem 1rem}.confirm-dialog__btn--cancel{background:#f3f4f6;color:#111827}.confirm-dialog__btn--cancel:hover{background:#e5e7eb}.confirm-dialog__btn--ok{background:#2563eb;color:#fff}.confirm-dialog__btn--ok:hover{filter:brightness(.95)}.confirm-dialog__btn--danger{background:#dc2626;color:#fff}@media (max-width:640px){.toast-viewport{bottom:1rem;left:1rem;right:1rem;top:auto;width:auto}}.dashboard{max-width:100%;overflow-x:hidden}.dashboard,.dashboard *,.dashboard :after,.dashboard :before{box-sizing:border-box}@media (max-width:640px){.dashboard{padding:1rem!important}}.bookings-section-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.bookings-section-header h2{margin:0}.booking-search{border:1px solid #d1d5db;border-radius:6px;flex:1 1 200px;font-size:1rem;max-width:320px;padding:.5rem .75rem}.dashboard--dark .booking-search{background:#181818;border-color:#444;color:#eee}.bookings-panel{-webkit-overflow-scrolling:touch;border:1px solid #e5e7eb;border-radius:8px;max-height:min(70vh,560px);overflow-x:hidden;overflow-y:auto}.dashboard--dark .bookings-panel{border-color:#333}.booking-date-group+.booking-date-group{border-top:1px solid #e5e7eb}.dashboard--dark .booking-date-group+.booking-date-group{border-top-color:#333}.booking-date-header{align-items:center;background:#f3f4f6;border:none;color:inherit;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.5rem;justify-content:space-between;padding:.75rem 1rem;text-align:left;width:100%}.dashboard--dark .booking-date-header{background:#1f1f1f}.booking-date-header:hover{filter:brightness(.97)}.booking-date-count{font-size:.85rem;font-weight:500;opacity:.75}.booking-date-chevron{flex-shrink:0;font-size:.75rem;opacity:.6}.booking-cards{grid-gap:.75rem;background:#fff;display:grid;gap:.75rem;padding:.75rem 1rem 1rem}.dashboard--dark .booking-cards{background:#181818}@media (min-width:768px){.booking-cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}.booking-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;min-width:0;padding:.875rem 1rem}.dashboard--dark .booking-card{background:#222;border-color:#333}.booking-card-main{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between}.booking-card-name{font-size:1rem;font-weight:600;margin:0;word-break:break-word}.booking-card-time{color:#2563eb;font-size:.95rem;font-weight:600;white-space:nowrap}.dashboard--dark .booking-card-time{color:#60a5fa}.booking-card-email{font-size:.875rem;margin:0;opacity:.85;word-break:break-all}.booking-card-meta{font-size:.75rem;margin:0;opacity:.65}.booking-card-cancel{align-self:flex-start;background:#ef4444;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;padding:.35rem .75rem}.booking-card-cancel:disabled{background:#fca5a5;cursor:not-allowed}.bookings-empty{opacity:.8;padding:2rem 1rem;text-align:center}.bookings-expand-all{background:#0000;border:1px solid #d1d5db;border-radius:4px;color:inherit;cursor:pointer;font-size:.8rem;padding:.35rem .65rem}.dashboard--dark .bookings-expand-all{border-color:#555}.slots-table-wrap{-webkit-overflow-scrolling:touch;margin-bottom:2rem;overflow-x:auto}@media (max-width:640px){.slots-table-wrap table{font-size:.875rem}.slots-table-wrap td,.slots-table-wrap th{padding:6px!important}}
/*# sourceMappingURL=main.27f899bb.css.map*/