*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{width:100%;min-width:320px;min-height:100%;-webkit-text-size-adjust:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f6f8fb;color:#111827;width:100%;overflow-x:hidden;min-height:100dvh;overscroll-behavior-y:contain;-webkit-tap-highlight-color:transparent}#root{min-height:100dvh}button{cursor:pointer;font-family:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}input,select,textarea{font-family:inherit;font-size:16px}a{text-decoration:none;color:inherit}.mobile-nav-scrim,.app-nav-close{display:none}.app-nav-brand-logo,.auth-brand-logo,.public-brand-logo{display:block;width:44px;height:44px;border-radius:12px;object-fit:cover;background:#fff;border:1px solid #e5edf6;box-shadow:0 8px 22px #0f172a14}.auth-brand-logo{width:58px;height:58px;border-radius:16px}.public-brand-logo{width:34px;height:34px;border-radius:10px}.public-booking-logo{display:block;width:52px;height:52px;flex:0 0 52px;border-radius:14px;object-fit:cover;background:#fff;border:1px solid #e5edf6;box-shadow:0 10px 24px #0f172a14}@supports (padding-top: env(safe-area-inset-top)){body{padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}.pwa-banner{position:fixed;top:env(safe-area-inset-top,0);left:0;right:0;z-index:200;padding:8px 12px;font-size:13px;font-weight:600;text-align:center;color:#fff}.pwa-banner-offline{background:#b91c1c}.pwa-toast{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:200;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:#111827;color:#f9fafb;font-size:14px;box-shadow:0 18px 40px #0f172a47}@media(min-width:720px){.pwa-toast{left:auto;right:16px;bottom:16px;max-width:420px}}.pwa-toast>span{flex:1;min-width:0}.pwa-toast-action{background:#2563eb;color:#fff;border:0;border-radius:10px;padding:8px 14px;font-weight:700;min-height:40px}.pwa-toast-close{background:transparent;color:#cbd5e1;border:0;font-size:22px;line-height:1;padding:4px 8px;min-height:36px}.pwa-toast-ready{background:#064e3b}.pwa-toast-update{background:#1e3a8a}.pwa-toast-install{background:#111827}.pwa-toast-ios{background:#0f172a}.pwa-step-card{width:100%;max-width:280px;padding:26px 18px;border-radius:16px;display:grid;place-items:center}.pwa-step-card-share{background:linear-gradient(135deg,#eef4ff,#dbeafe)}.pwa-step-card-add{background:linear-gradient(135deg,#ecfdf5,#d1fae5);padding:18px 14px}.pwa-step-pulse{position:relative;display:grid;place-items:center;width:56px;height:56px;border-radius:14px;background:#fff;box-shadow:0 8px 22px #0f172a14;animation:pwa-pulse-scale 1.7s ease-in-out infinite}.pwa-step-pulse-blue{color:#2563eb}.pwa-step-pulse-green{color:#059669}.pwa-step-pulse:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:14px;pointer-events:none;animation:pwa-pulse-ring 1.7s ease-out infinite}.pwa-step-pulse-blue:before{box-shadow:0 0 #2563eb73}.pwa-step-pulse-green:before{box-shadow:0 0 #05966973}.pwa-step-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:12px;background:#fff;font-size:14px;font-weight:700;color:#0f172a;box-shadow:0 6px 18px #0f172a0f}.pwa-step-row .pwa-step-pulse{width:34px;height:34px;border-radius:10px;background:#ecfdf5;box-shadow:none;animation-delay:.85s}.pwa-step-row .pwa-step-pulse:before{border-radius:10px;animation-delay:.85s}@keyframes pwa-pulse-scale{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes pwa-pulse-ring{0%{box-shadow:0 0 #2563eb73}70%{box-shadow:0 0 0 16px #2563eb00}to{box-shadow:0 0 #2563eb00}}.pwa-step-pulse-green:before{animation-name:pwa-pulse-ring-green}@keyframes pwa-pulse-ring-green{0%{box-shadow:0 0 #05966973}70%{box-shadow:0 0 0 14px #05966900}to{box-shadow:0 0 #05966900}}@media(prefers-reduced-motion:reduce){.pwa-step-pulse,.pwa-step-pulse:before{animation:none}}.app-main-content{width:100%}.page-header{min-width:0}.page-header-main{min-width:0;flex:1}.page-header-title{line-height:1.06;overflow-wrap:anywhere}.page-header-action{display:flex;justify-content:flex-end;flex-shrink:0}.app-panel,.list-row,.service-row{min-width:0}.row-actions{flex-shrink:0}.service-row-name{flex:2;min-width:160px}.service-row-price,.service-row-duration{flex:1}.info-row{gap:12px}.booking-time-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(68px,1fr));gap:6px}.booking-time-trigger{min-height:46px;padding:8px 10px}.booking-time-trigger.is-selected{border-color:#bfdbfe;background:#eff6ff}.public-date-trigger{min-height:46px;padding:8px 10px}.public-date-trigger.is-selected{border-color:#bfdbfe;background:#eff6ff}.time-picker-sheet{min-height:0}.time-picker-grid{max-height:min(430px,calc(100dvh - 180px));overflow-y:auto;padding-right:2px}.date-picker-sheet{min-height:0}.date-picker-weekdays,.date-picker-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.date-picker-weekdays{gap:4px;color:#667085;font-size:10.5px;font-weight:850;text-align:center;text-transform:uppercase}.date-picker-grid{gap:5px}.date-picker-day{min-height:38px;border:1px solid #d8e2ee;border-radius:10px;background:#fff;color:#344054;font-size:13px;font-weight:800;cursor:pointer}.date-picker-day.is-muted{color:#98a2b3;background:#f8fafc}.date-picker-day.is-selected{border-color:#2563eb;background:#2563eb;color:#fff;box-shadow:0 6px 14px #2563eb33}.date-picker-day:disabled{color:#cbd5e1;background:#f8fafc;cursor:not-allowed}.booking-time-slot{min-height:34px;border:1px solid #d8e2ee;border-radius:9px;background:#fff;color:#344054;font-size:13px;font-weight:750;text-align:center;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.booking-time-slot:hover{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.booking-time-slot.is-selected{border-color:#2563eb;background:#2563eb;color:#fff;box-shadow:0 6px 14px #2563eb33}.booking-summary-card{background:#f8fbff}.booking-confirmation{width:100%}.booking-confirmation-hero{position:relative;display:grid;place-items:center}.booking-confirmation-badge{position:absolute;bottom:-10px;padding:4px 10px;border:1px solid #bbf7d0;border-radius:999px;background:#f0fdf4;color:#166534;box-shadow:0 8px 20px #16653414}.booking-summary-highlight{padding:12px;border:1px solid #bfdbfe;border-radius:12px;background:linear-gradient(135deg,#eff6ff,#f8fbff)}.booking-summary-row{padding:8px 0;border-bottom:1px solid #e2e8f0}.booking-summary-row:last-child{border-bottom:0}.staff-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.staff-choice-card{display:flex;min-height:62px;align-items:center;gap:8px;padding:8px;border:1px solid #dfe8f3;border-radius:12px;background:#fff;text-align:left;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease}.staff-choice-card:hover{border-color:#bfdbfe;background:#f8fbff}.staff-choice-card.is-selected{border-color:#2563eb;background:#eff6ff;box-shadow:0 10px 24px #2563eb1f}.work-item-card{height:100%;min-height:278px;border-left:4px solid #e5e7eb!important;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.work-item-card:hover{box-shadow:0 14px 34px #0f172a14!important;transform:translateY(-1px)}.work-item-card-appointment{border-left-color:#8b5cf6!important}.work-item-card-queue{border-left-color:#f59e0b!important}.work-item-stack{height:100%}.work-item-name{min-height:46px}.work-item-meta{min-height:122px}.work-item-meta-line{min-height:22px}.work-item-meta-line.is-empty{visibility:hidden}.work-item-actions{margin-top:auto;min-height:36px;align-items:flex-end}.calendar-filter-row{min-width:0}.modal-actions,.form-actions{width:100%}.setting-toggle-row{min-width:0}.calendar-frame{overflow:hidden;border:1px solid #e2e8f0;border-radius:14px;background:#fff}.rbc-calendar-shell{position:relative;height:78vh;min-height:540px;background:#fff;display:flex;flex-direction:column}.rbc-calendar-shell .rbc-calendar{flex:1;min-height:0;font-size:12px;color:#111827;background:#fff;border-radius:0 0 14px 14px}.rbc-calendar-shell .cal-header{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid #e8edf3;border-radius:14px 14px 0 0;padding:7px 8px 4px}.rbc-calendar-shell .cal-appbar{display:flex;align-items:center;justify-content:space-between;min-height:34px;gap:6px}.rbc-calendar-shell .cal-month-trigger{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center;gap:3px;max-width:132px;border:0;background:transparent;color:#061145;font-size:12px;font-weight:650;line-height:1;text-transform:capitalize}.rbc-calendar-shell .cal-month-trigger.is-block-mode{color:#087788}.rbc-calendar-shell .cal-mode-dot{width:6px;height:6px;border-radius:999px;background:#72d541;flex:0 0 auto}.rbc-calendar-shell .cal-mode-dot-block{background:#11b7c7}.rbc-calendar-shell .cal-action-panel{display:grid;justify-items:center;gap:5px;padding:0 0 6px}.rbc-calendar-shell .cal-mode-tabs{display:flex;justify-content:center;gap:5px;padding:0}.rbc-calendar-shell .cal-mode-tab{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:76px;height:25px;padding:0 10px;border:1px solid #dfe8f3;border-radius:999px;background:#fff;color:#344054;font-size:11px;font-weight:800;line-height:1}.rbc-calendar-shell .cal-mode-tab.is-active{border-color:#bdecae;background:#eefbea;color:#176212}.rbc-calendar-shell .cal-mode-tab-block.is-active{border-color:#b7e5ea;background:#eef8fa;color:#087788}.rbc-calendar-shell .cal-mode-tab:active{transform:scale(.97)}.rbc-calendar-shell .cal-zoom-control{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:25px;padding:2px;border:1px solid #dfe8f3;border-radius:999px;background:#fff;box-shadow:0 1px 2px #1018280a}.rbc-calendar-shell .cal-zoom-btn{display:grid;place-items:center;width:22px;height:20px;border:0;border-radius:999px;background:transparent;color:#1f2a68;padding:0}.rbc-calendar-shell .cal-zoom-btn:active:not(:disabled){background:#f4f7fb;transform:scale(.94)}.rbc-calendar-shell .cal-zoom-btn:disabled{color:#b8c1cf}.rbc-calendar-shell .cal-zoom-label{min-width:38px;text-align:center;color:#344054;font-size:10.5px;font-weight:850;line-height:1}.rbc-calendar-shell .cal-header-actions{display:flex;align-items:center;gap:2px;flex:0 0 auto}.rbc-calendar-shell .cal-icon-btn{position:relative;display:grid;place-items:center;width:28px;height:28px;border-radius:999px;border:0;background:transparent;color:#1f2a68;cursor:pointer}.rbc-calendar-shell .cal-icon-btn-alert:after{content:"";position:absolute;top:5px;right:6px;width:5px;height:5px;border:1px solid #fff;border-radius:999px;background:#ef3d55}.rbc-calendar-shell .cal-icon-btn:active{background:#f4f7fb;transform:scale(.96)}.rbc-calendar-shell .cal-date-picker-wrap{position:relative;display:grid;place-items:center;width:28px;height:28px;border-radius:999px;flex:0 0 28px}.rbc-calendar-shell .cal-date-picker-wrap:active .cal-date-picker-visual{background:#f4f7fb;transform:scale(.96)}.rbc-calendar-shell .cal-month-trigger:active{background:#f4f7fb;transform:translate(-50%) scale(.96)}.rbc-calendar-shell .cal-slot-action{cursor:pointer}.rbc-calendar-shell .cal-slot-action-block:active{background:#11b7c714}.rbc-calendar-shell .cal-slot-action-booking:active{background:#72d54114}.rbc-calendar-shell .cal-hidden-date{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;opacity:0;border:0;padding:0;margin:0;background:transparent;cursor:pointer;pointer-events:auto;-webkit-appearance:none;-moz-appearance:none;appearance:none}.calendar-update-list{max-height:min(520px,68vh);overflow-y:auto}.calendar-update-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;width:100%;min-width:0;padding:12px 0;border:0;border-bottom:1px solid #eef2f7;background:transparent;color:#111827;text-align:left;cursor:pointer}.calendar-update-row:last-child{border-bottom:0}.calendar-update-row:active{transform:scale(.99)}.calendar-update-main{min-width:0;flex:1}.calendar-update-service{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.push-notification-control{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #dbeafe;border-radius:10px;background:#f8fbff}.push-notification-copy{min-width:0}.push-permission-prompt{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid #dbeafe;border-radius:10px;background:#f8fbff}.push-permission-copy{min-width:0}.push-notification-notice{padding:9px 12px;border-radius:10px;background:#f8fafc;border:1px solid #edf2f7}.push-notification-notice-warning{background:#fff7ed;border-color:#fed7aa}.rbc-calendar-shell .cal-day-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:0;padding:2px 3px 4px}.rbc-calendar-shell .cal-day-cell{display:flex;flex-direction:column;align-items:center;gap:4px;padding:3px 0 2px;border:0;background:transparent;cursor:pointer;border-radius:12px}.rbc-calendar-shell .cal-day-letter{font-size:9px;font-weight:700;letter-spacing:.2px;color:#061145;text-transform:uppercase}.rbc-calendar-shell .cal-day-cell.is-weekend .cal-day-letter,.rbc-calendar-shell .cal-day-cell.is-weekend .cal-day-number{color:#cbd5e1}.rbc-calendar-shell .cal-day-number{display:grid;place-items:center;width:36px;height:36px;border-radius:999px;font-size:12px;font-weight:700;color:#061145}.rbc-calendar-shell .cal-day-cell.is-active .cal-day-number{background:#72d541;color:#fff}.rbc-calendar-shell .cal-day-cell:active{background:#f8fafc}.rbc-calendar-shell .cal-day-cell:focus{outline:none}.rbc-calendar-shell .cal-day-cell:focus-visible .cal-day-number{box-shadow:0 0 0 2px #19bdd347}.rbc-calendar-shell .cal-resource-header{display:flex;align-items:center;justify-content:center;min-height:40px;padding:5px 0}.rbc-calendar-shell .cal-fab{position:absolute;right:12px;bottom:12px;width:48px;height:48px;border-radius:999px;border:0;background:#70d43d;color:#fff;display:grid;place-items:center;box-shadow:0 10px 24px #4fbe2b57;cursor:pointer;z-index:5;transition:transform .15s ease}.rbc-calendar-shell .cal-fab:focus,.rbc-calendar-shell .cal-create-option:focus{outline:none}.rbc-calendar-shell .cal-fab:focus-visible{box-shadow:0 0 0 3px #2932d138,0 10px 22px #2932d147}.rbc-calendar-shell .cal-create-option:focus-visible{box-shadow:inset 0 0 0 2px #2932d12e}.rbc-calendar-shell .cal-fab:active{transform:scale(.94)}.rbc-calendar-shell .cal-fab.is-open{background:#050b2f;transform:rotate(90deg)}.rbc-calendar-shell .cal-create-menu{position:absolute;right:12px;bottom:70px;z-index:6;display:flex;align-items:center;gap:4px;padding:4px;border:1px solid rgba(208,213,221,.92);border-radius:999px;background:#fffffff5;box-shadow:0 16px 36px #0f172a2e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.rbc-calendar-shell .cal-create-option{display:flex;align-items:center;gap:6px;min-height:38px;padding:0 13px;border:0;border-radius:999px;background:#eefbea;color:#176212;font-size:12px;font-weight:850;line-height:1;white-space:nowrap}.rbc-calendar-shell .cal-create-option-block{background:#eef8fa;color:#087788}.rbc-calendar-shell .cal-create-option:active{transform:scale(.97)}.rbc-calendar-shell .cal-event-card{display:flex;flex-direction:column;gap:0;font-size:10px;line-height:1.15;color:#1f2933;overflow:hidden}.rbc-calendar-shell .cal-event-time{font-weight:800;color:#1f2933}.rbc-calendar-shell .cal-event-title{font-weight:700;color:#1f2933;font-size:10px}.rbc-calendar-shell .cal-event-service{color:#344054;font-size:8.8px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rbc-calendar-shell .cal-event-duration{color:#6b7280;font-size:9px;font-weight:600;margin-top:1px}.rbc-calendar-shell .cal-time-off-card{display:grid;gap:2px;min-width:0}.rbc-calendar-shell .cal-time-off-title{color:#334155;font-size:11px;font-weight:850;line-height:1.05;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-calendar-shell .cal-time-off-time{color:#64748b;font-size:9px;font-weight:700;line-height:1}.rbc-calendar-shell .rbc-time-view{border:0}.rbc-calendar-shell .rbc-time-header,.rbc-calendar-shell .rbc-time-content,.rbc-calendar-shell .rbc-time-header-content{border-color:#eef2f7}.rbc-calendar-shell .rbc-header{padding:4px 4px 5px;border-bottom:1px solid #e4e9f1;background:#fff;font-weight:750;font-size:12px;color:#475467;text-transform:uppercase;letter-spacing:.3px}.rbc-calendar-shell .rbc-time-gutter{background:#fff;min-width:34px;width:34px}.rbc-calendar-shell .rbc-time-gutter .rbc-timeslot-group{font-size:11px;color:#7e8797}.rbc-calendar-shell .rbc-timeslot-group{min-height:44px;border-bottom:1px solid #e9edf3}.rbc-calendar-shell .rbc-day-slot .rbc-timeslot-group{border-color:#e9edf3}.rbc-calendar-shell .rbc-time-slot .rbc-label{font-size:10px;color:#a6afbd}.rbc-calendar-shell .rbc-time-slot{border-top:1px solid #eef2f7}.rbc-calendar-shell .rbc-time-slot:first-child{border-top:0}.rbc-calendar-shell .rbc-day-slot .rbc-time-slot:hover,.rbc-calendar-shell .rbc-day-slot .rbc-timeslot-group:hover{background:#f8fbff}.rbc-calendar-shell .rbc-current-time-indicator{background:#ed3a46;height:2px}.rbc-calendar-shell .rbc-today{background:#f8fbff}.rbc-calendar-shell .rbc-event{outline:none}.rbc-calendar-shell .rbc-event:focus,.rbc-calendar-shell .rbc-event-content:focus{outline:none}.rbc-calendar-shell .rbc-event-label{display:none}.rbc-calendar-shell .rbc-show-more{color:#2563eb;font-weight:750}@media(max-width:720px){.mobile-nav-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:210;border:0;background:#0f172a2e;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.app-mobile-navbar.mantine-AppShell-navbar{top:0!important;bottom:0!important;width:min(286px,calc(100vw - 54px))!important;min-width:0!important;max-width:calc(100vw - 54px)!important;height:100dvh!important;padding:calc(17px + env(safe-area-inset-top)) 14px calc(14px + env(safe-area-inset-bottom))!important;border-right:1px solid #dfe7f0!important;border-radius:0 18px 18px 0;box-shadow:18px 0 34px #0f172a29;z-index:230!important;overflow:hidden}.app-mobile-navbar .app-nav-head{padding:3px 0 12px!important}.app-mobile-navbar .app-nav-brand{gap:10px!important;padding:0!important}.app-mobile-navbar .app-nav-brand-icon,.app-mobile-navbar .app-nav-brand-logo{width:35px!important;min-width:35px!important;height:35px!important;border-radius:10px!important}.app-mobile-navbar .app-nav-brand-icon svg{width:17px;height:17px}.app-mobile-navbar .app-nav-brand-title{font-size:13px!important;letter-spacing:0}.app-mobile-navbar .app-nav-close{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;color:#061145}.app-mobile-navbar .app-nav-close:active{background:#f4f7fb;transform:scale(.94)}.app-mobile-navbar .app-nav-scroll-section{margin-top:6px!important}.app-mobile-navbar .app-nav-stack{gap:1px!important}.app-mobile-navbar .app-nav-link{gap:9px!important;min-height:34px!important;padding:5px 8px!important;border-radius:9px!important;font-size:11px!important;font-weight:740!important;box-shadow:none!important}.app-mobile-navbar .app-nav-link.is-active{box-shadow:inset 0 0 0 1px #10182809!important}.app-mobile-navbar .app-nav-link-icon{width:22px!important;min-width:22px!important;height:22px!important;border-radius:6px!important}.app-mobile-navbar .app-nav-link-icon svg{width:13px;height:13px}.app-mobile-navbar .mantine-Divider-root{margin:8px 0!important}.app-mobile-navbar .app-nav-footer-actions{gap:2px!important}.app-mobile-navbar .app-nav-footer-button{height:31px!important;min-height:31px!important;padding:0 8px!important;border-radius:9px!important;font-size:11px!important;font-weight:750!important}.app-mobile-navbar .app-nav-footer-button svg{width:13px;height:13px}.app-shell-overview .mantine-AppShell-header{display:none}.app-shell-overview .mantine-AppShell-main,.app-shell-overview .app-shell-main{padding-top:0!important}.app-shell-overview .app-main-content{padding:0!important}.rbc-calendar-shell .rbc-time-view,.rbc-calendar-shell .rbc-time-content,.rbc-calendar-shell .rbc-time-header,.rbc-calendar-shell .rbc-day-slot,.rbc-calendar-shell .rbc-timeslot-group,.rbc-calendar-shell .rbc-time-slot{touch-action:pan-x pan-y pinch-zoom}.rbc-calendar-shell .rbc-time-view{overflow:auto!important;position:relative;isolation:isolate;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-padding-left:var(--cal-time-gutter-width, 42px);scrollbar-width:none}.rbc-calendar-shell .rbc-time-view::-webkit-scrollbar,.rbc-calendar-shell .rbc-time-content::-webkit-scrollbar{display:none}.rbc-calendar-shell .rbc-time-header{position:sticky;top:0;z-index:30;background:#fff;flex:0 0 auto;min-width:var(--cal-scroll-width, 100%);overflow:hidden;box-shadow:0 1px #e4e9f1,0 3px #fffffff5}.rbc-calendar-shell .rbc-time-content{min-width:var(--cal-scroll-width, 100%);position:relative;z-index:1}.rbc-calendar-shell .rbc-time-content>.rbc-time-gutter{position:sticky;left:0;z-index:12;background:#fff;box-shadow:1px 0 #eef2f7}.rbc-calendar-shell .rbc-time-header:before{content:"";position:sticky;left:0;z-index:32;flex:0 0 var(--cal-time-gutter-width, 42px);min-width:var(--cal-time-gutter-width, 42px);width:var(--cal-time-gutter-width, 42px);margin-inline-end:-1px;background:#fff;box-shadow:1px 0 #eef2f7}.rbc-calendar-shell .rbc-time-header:after,.rbc-calendar-shell .rbc-time-content:after{content:"";flex:0 0 var(--cal-edge-buffer, 12px);min-width:var(--cal-edge-buffer, 12px)}.rbc-calendar-shell .rbc-time-header>.rbc-label,.rbc-calendar-shell .rbc-time-header-gutter{display:none!important}.rbc-calendar-shell .rbc-day-slot{flex:0 0 var(--cal-resource-width, 88px)!important;min-width:var(--cal-resource-width, 88px)!important;box-sizing:border-box;border-left:0!important;border-right:1px solid #e9edf3!important}.rbc-calendar-shell .rbc-time-header-content{flex:0 0 var(--cal-resource-width, 88px)!important;min-width:var(--cal-resource-width, 88px)!important;max-width:var(--cal-resource-width, 88px)!important;box-sizing:border-box;position:relative;z-index:31;background:#fff;margin-left:0!important;margin-inline-start:0!important;border-left:0!important;border-right:1px solid #e1e7ef!important}.rbc-calendar-shell .rbc-time-header-content .rbc-header,.rbc-calendar-shell .rbc-time-header-content .rbc-row>*{flex:0 0 var(--cal-resource-width, 88px)!important;min-width:var(--cal-resource-width, 88px)!important;background:#fff;border-left:0!important;border-right:0!important}.rbc-calendar-shell .rbc-time-header .rbc-allday-cell{display:none!important}.overview-calendar-fullbleed{margin-left:0!important;margin-right:0!important;width:100%!important;max-width:100%!important;padding:0!important;border-radius:0!important;border:0!important;box-shadow:none!important;overflow:hidden}.rbc-calendar-shell.rbc-mobile{height:100dvh;min-height:0;border-radius:0}.rbc-calendar-shell .cal-header{padding:7px 16px 2px;border-radius:0}.rbc-calendar-shell .cal-appbar{min-height:29px}.rbc-calendar-shell .cal-month-trigger{font-size:11px;max-width:118px}.rbc-calendar-shell .cal-icon-btn{width:28px;height:28px}.rbc-calendar-shell .cal-day-strip{padding:0 2px 3px;gap:0}.rbc-calendar-shell .cal-day-cell{gap:3px;padding:2px 0}.rbc-calendar-shell .cal-day-letter{font-size:9px;letter-spacing:.3px}.rbc-calendar-shell .cal-day-number{width:25px;height:25px;font-size:11px}.rbc-calendar-shell .rbc-time-gutter{flex:0 0 var(--cal-time-gutter-width, 42px)!important;min-width:var(--cal-time-gutter-width, 42px)!important;width:var(--cal-time-gutter-width, 42px)!important;font-size:10.5px}.rbc-calendar-shell .rbc-time-gutter .rbc-timeslot-group{position:relative;display:block}.rbc-calendar-shell .rbc-time-gutter .rbc-time-slot{position:relative;display:flex;align-items:flex-start;justify-content:flex-end;width:100%;min-height:calc(var(--cal-slot-height, 38px) / 2);padding:0}.rbc-calendar-shell .rbc-time-gutter .rbc-label{display:flex;align-items:flex-start;justify-content:center;width:24px;min-width:24px;margin:0 4px 0 0;padding:0;text-align:center;line-height:1;font-variant-numeric:tabular-nums}.rbc-calendar-shell .rbc-time-gutter .rbc-timeslot-group:nth-child(odd) .rbc-label{color:#526174;font-size:var(--cal-time-hour-font, 11.5px);font-weight:760}.rbc-calendar-shell .rbc-time-gutter .rbc-timeslot-group:nth-child(2n) .rbc-label{color:#a6b0bf;font-size:var(--cal-time-half-font, 8.5px);font-weight:650}.rbc-calendar-shell .rbc-day-slot{min-width:var(--cal-resource-width, 88px)}.rbc-calendar-shell .rbc-time-content>*+*>*{border-left:0!important}.rbc-calendar-shell .cal-resource-header{height:44px;min-height:44px;padding:0;overflow:hidden}.rbc-calendar-shell .cal-resource-header .mantine-Avatar-root{width:36px;height:36px;min-width:36px;font-size:12px}.rbc-calendar-shell .rbc-time-content{overflow:visible!important;-webkit-overflow-scrolling:touch;scrollbar-width:none}.rbc-calendar-shell .rbc-time-header-gutter:before{content:"";display:block;width:100%;height:100%}.rbc-calendar-shell .rbc-time-header>.rbc-row{overflow-x:hidden}.rbc-calendar-shell .rbc-time-header-content{flex:0 0 var(--cal-resource-width, 88px)!important;min-width:var(--cal-resource-width, 88px)!important}.rbc-calendar-shell .rbc-resource-cell-header{padding:0;background:#fff}.rbc-calendar-shell .rbc-current-time-indicator{z-index:3;pointer-events:none}.rbc-calendar-shell .rbc-day-slot .rbc-events-container{margin-right:0!important}.rbc-calendar-shell .rbc-event{width:100%!important;padding:2px 4px 2px 5px!important;min-height:var(--cal-event-min-height, 32px)}.rbc-calendar-shell .cal-event-card{gap:1px;min-width:0}.rbc-calendar-shell .cal-event-time,.rbc-calendar-shell .cal-event-title{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-calendar-shell .cal-event-time,.rbc-calendar-shell .cal-event-title{font-size:var(--cal-event-main-font, 11px);line-height:1.08}.rbc-calendar-shell .cal-event-service{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--cal-event-sub-font, 9.5px);line-height:1.08}.rbc-calendar-shell .cal-event-duration{display:none}.rbc-calendar-shell .cal-time-off-card{gap:1px}.rbc-calendar-shell .cal-time-off-title{font-size:10.5px}.rbc-calendar-shell .cal-time-off-time{font-size:8.5px}.rbc-calendar-shell .cal-resource-header{height:44px;min-height:44px;padding:0}.rbc-calendar-shell .rbc-timeslot-group{min-height:var(--cal-slot-height, 38px);border-bottom:1px solid #edf1f6}.rbc-calendar-shell .rbc-timeslot-group:nth-child(2n){border-bottom-color:#dfe6ef}.rbc-calendar-shell .rbc-time-slot{border-top:0}.rbc-calendar-shell .rbc-timeslot-group .rbc-time-slot+.rbc-time-slot{border-top:1px solid #f7f9fc}.rbc-calendar-shell .rbc-event{width:100%!important;padding:2px 4px!important;min-height:var(--cal-event-min-height, 28px)}.rbc-calendar-shell .cal-event-time{font-size:var(--cal-event-main-font, 10px)}.rbc-calendar-shell .cal-event-title{font-size:var(--cal-event-main-font, 10.5px)}.rbc-calendar-shell .cal-event-service{font-size:var(--cal-event-sub-font, 9.5px)}.rbc-calendar-shell .cal-event-duration{font-size:9px;margin-top:1px}.rbc-calendar-shell .cal-fab{width:48px;height:48px;right:16px;bottom:calc(14px + env(safe-area-inset-bottom))}.rbc-calendar-shell .cal-create-menu{right:16px;bottom:calc(68px + env(safe-area-inset-bottom))}}.overview-calendar .fc{color:#111827;font-size:13px;--fc-border-color: #e2e8f0;--fc-today-bg-color: #f8fbff;--fc-now-indicator-color: #dc2626}.overview-calendar .fc .fc-toolbar{align-items:center;gap:12px;margin-bottom:0;padding:14px 16px;border-bottom:1px solid #e2e8f0;background:#fbfdff}.overview-calendar .fc .fc-toolbar-chunk{display:flex;align-items:center;gap:8px;min-width:0}.overview-calendar .fc .fc-toolbar-chunk:nth-child(2):empty{display:none}.overview-calendar .fc .fc-toolbar-title{color:#111827;font-size:18px;font-weight:500;margin-left:8px;white-space:nowrap}.overview-calendar .fc .fc-col-header-cell{background:#fff;border-bottom:1px solid #e2e8f0}.overview-calendar .fc .fc-col-header-cell-cushion{padding:12px 4px;color:#475467;font-size:12px;font-weight:600}.overview-calendar .fc .fc-timegrid-axis-cushion,.overview-calendar .fc .fc-timegrid-slot-label-cushion{color:#667085;font-size:10px}.overview-calendar .fc .fc-scrollgrid{border:0}.overview-calendar .fc .fc-scrollgrid-section>td{border-left:0;border-right:0}.overview-calendar .fc .fc-button{background:#fff;border:1px solid #d0d5dd;color:#344054;border-radius:18px;font-size:13px;font-weight:500;padding:7px 12px;text-transform:none;box-shadow:none}.overview-calendar .fc .fc-button:hover{background:#f8fafd;border-color:#98a2b3;color:#111827}.overview-calendar .fc .fc-prev-button,.overview-calendar .fc .fc-next-button{width:36px;height:36px;padding:0;border:0;border-radius:50%;background:transparent}.overview-calendar .fc .fc-prev-button:hover,.overview-calendar .fc .fc-next-button:hover{background:#f2f4f7}.overview-calendar .fc .fc-button-group{border:1px solid #d0d5dd;border-radius:19px;overflow:hidden}.overview-calendar .fc .fc-button-group .fc-button{border:0;border-radius:0;border-left:1px solid #d0d5dd}.overview-calendar .fc .fc-button-group .fc-button:first-child{border-left:0}.overview-calendar .fc .fc-button-primary:not(:disabled).fc-button-active,.overview-calendar .fc .fc-button-primary:not(:disabled):active{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.overview-calendar .fc .fc-button:focus{box-shadow:0 0 0 2px #bfdbfe}.overview-calendar .fc .fc-event{border-radius:6px;border:1px solid rgba(37,99,235,.28);padding:0;cursor:pointer;box-shadow:none;overflow:hidden}.overview-calendar .fc .fc-event:hover{filter:brightness(.98)}.overview-calendar .fc .fc-event-resizer{opacity:0;transition:opacity .12s ease}.overview-calendar .fc .fc-event:hover .fc-event-resizer{opacity:1}.overview-calendar .fc .fc-event-resizer-end{right:8px;bottom:2px;left:8px;height:5px;border-radius:999px;background:#0f172a3d}.overview-calendar .fc .fc-timegrid-event{margin:1px 3px}.overview-calendar .fc .fc-timegrid-event .fc-event-main{padding:0;color:#111827;height:100%}.overview-calendar .fc .fc-timegrid-slot{height:36px}.overview-calendar .fc .fc-timegrid-slot-lane{border-bottom-style:solid;border-bottom-color:#eef2f7;cursor:pointer;transition:background .12s ease}.overview-calendar .fc .fc-timegrid-slot-lane:hover,.overview-calendar .fc .fc-timegrid-col.fc-day-today{background:#f8fbff}.overview-calendar .fc .fc-non-business{background:repeating-linear-gradient(-45deg,#94a3b821,#94a3b821 8px,#f1f5f980 8px,#f1f5f980 16px)}.overview-calendar .fc .calendar-timeoff-event{border-color:#ef4444!important;background:#fee2e2f2!important;cursor:default;box-shadow:inset 3px 0 #ef4444}.overview-calendar .fc .calendar-timeoff-event:hover{filter:none}.calendar-timeoff-label .calendar-event-title{color:#991b1b;font-weight:750}.overview-calendar .fc .fc-daygrid-event{margin:1px 4px;padding:0;border-radius:6px;min-height:20px}.overview-calendar .fc .fc-daygrid-dot-event{background:#eff6ff}.overview-calendar .fc .fc-daygrid-event .fc-event-main{color:#111827}.overview-calendar .fc .fc-daygrid-event .calendar-event{min-height:20px;padding:3px 6px}.overview-calendar .fc .fc-daygrid-event .calendar-event-title{font-size:11px;line-height:1.1}.overview-calendar .fc .fc-daygrid-event .calendar-event-meta{display:none}.calendar-event{display:flex;align-items:center;justify-content:center;height:100%;min-height:24px;padding:3px 7px;line-height:1.15;overflow:hidden;background:transparent}.calendar-event-title{display:block;font-size:12px;font-weight:600;color:#111827;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-modal-content{overflow:hidden}.app-modal-body{flex:1;min-height:0}.service-picker-modal .app-modal-header,.client-picker-modal .app-modal-header,.time-picker-modal .app-modal-header,.date-picker-modal .app-modal-header{min-height:40px;padding:6px 16px!important}.service-picker-modal .app-modal-header button,.client-picker-modal .app-modal-header button,.time-picker-modal .app-modal-header button,.date-picker-modal .app-modal-header button{width:28px;min-width:28px;height:28px;min-height:28px;border-radius:8px}.service-picker-modal .app-modal-header button svg,.client-picker-modal .app-modal-header button svg,.time-picker-modal .app-modal-header button svg,.date-picker-modal .app-modal-header button svg{width:17px;height:17px}.service-picker-modal .app-modal-body,.client-picker-modal .app-modal-body,.time-picker-modal .app-modal-body,.date-picker-modal .app-modal-body{padding-top:8px!important}.appointment-edit-modal .app-modal-header,.block-time-modal .app-modal-header{min-height:44px;padding:8px 16px!important}.appointment-edit-modal .app-modal-header button,.block-time-modal .app-modal-header button{width:32px;min-width:32px;height:32px;min-height:32px;border-radius:9px}.appointment-edit-modal .app-modal-header button svg,.block-time-modal .app-modal-header button svg{width:18px;height:18px}.appointment-edit-modal .app-modal-body,.block-time-modal .app-modal-body{padding-top:8px!important}.appointment-modal-form,.block-modal-form{gap:8px!important}.appointment-modal-form>div>.mantine-Text-root:first-child{margin-bottom:3px!important;font-size:12px!important;line-height:1.15}.appointment-modal-form .mantine-InputWrapper-label,.block-modal-form .mantine-InputWrapper-label{margin-bottom:2px;font-size:11.5px;font-weight:750;line-height:1.15}.appointment-modal-form .mantine-Input-input,.block-modal-form .mantine-Input-input{min-height:34px;height:34px;padding-top:0;padding-bottom:0;font-size:16px}.appointment-modal-form textarea.mantine-Input-input{min-height:48px;padding-top:6px;padding-bottom:6px}.block-modal-form .mantine-InputWrapper-description{margin-top:2px;font-size:10.5px;line-height:1.15}.appointment-modal-form .mantine-Checkbox-label{font-size:13px}.appointment-modal-form .mantine-Checkbox-description{font-size:11.5px;line-height:1.25}.modal-action-stack{display:grid;gap:7px;width:100%;margin-top:2px}.modal-action-stack .mantine-Button-root{width:100%;min-height:38px;height:38px;border-radius:9px;font-size:14px;font-weight:800}.avatar-crop-modal .app-modal-header{min-height:42px;padding:7px 16px!important}.avatar-crop-modal .app-modal-body{padding-top:10px!important}.avatar-crop-sheet{align-items:stretch}.avatar-crop-frame{position:relative;width:240px;height:240px;margin:2px auto 0;overflow:hidden;border-radius:50%;background:#eef4fb;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.avatar-crop-frame:active{cursor:grabbing}.avatar-crop-frame img{position:absolute;max-width:none;object-fit:fill;transform:translate(-50%,-50%);transform-origin:center;pointer-events:none;-webkit-user-select:none;user-select:none}.avatar-crop-ring{position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid #228be6;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffffd9,inset 0 0 24px #0f172a1f;pointer-events:none}.avatar-crop-zoom{display:grid;gap:8px;padding:0 4px}.avatar-crop-actions{margin-top:4px}.schedule-modal .app-modal-header{min-height:42px;padding:7px 16px!important}.schedule-modal .app-modal-header button{width:30px;min-width:30px;height:30px;min-height:30px;border-radius:9px}.schedule-modal .app-modal-header button svg{width:17px;height:17px}.schedule-modal .app-modal-body{padding-top:8px!important}.schedule-modal-form{gap:9px!important}.schedule-modal-form .mantine-Text-root{line-height:1.2}.schedule-modal-form .mantine-InputWrapper-label{margin-bottom:2px;font-size:11.5px;font-weight:750;line-height:1.15}.schedule-modal-form .mantine-Input-input{min-height:34px;height:34px;padding-top:0;padding-bottom:0;font-size:15px}.schedule-modal-form .mantine-Switch-label{font-size:13px;font-weight:700}.schedule-tabs{margin-bottom:2px;padding:2px;border:1px solid #e5edf6;border-radius:10px;background:#f5f8fc}.schedule-tabs .mantine-SegmentedControl-root,.schedule-tabs{min-height:34px}.schedule-tabs .mantine-SegmentedControl-label{min-height:30px;padding:5px 8px;font-size:13px;font-weight:750;border-radius:8px}.schedule-tabs .mantine-SegmentedControl-indicator{border-radius:8px;background:#fff;box-shadow:0 1px 4px #0f172a1f}.schedule-hours-row{padding:5px 0;border-bottom:1px solid #edf2f7}.time-off-header{align-items:flex-end!important;gap:8px}.time-off-header .mantine-Text-root:first-child{font-size:14px;line-height:1.15}.time-off-header .mantine-Text-root:last-child{max-width:210px;font-size:11.5px;line-height:1.2}.time-off-header .mantine-Button-root{min-height:32px;height:32px;padding-right:10px;padding-left:9px;border-radius:9px;font-size:12px;font-weight:800}.time-off-range-row{display:grid;gap:6px;padding:7px;border:1px solid #e6edf5;border-radius:9px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.time-off-range-row .mantine-ActionIcon-root{width:34px;min-width:34px;height:34px;border-radius:9px}.time-off-range-row .mantine-SimpleGrid-root{row-gap:6px!important}.schedule-actions{position:sticky;bottom:0;z-index:2;padding-top:8px;border-top:1px solid #edf2f7;background:#fff}.appointment-actions{display:grid;gap:7px;margin-top:2px}.appointment-actions .mantine-Button-root{width:100%;min-height:38px;height:38px;border-radius:9px}.appointment-actions .appointment-action-delete{color:#c62836;background:#fff1f2}.appointment-actions .appointment-action-delete:hover{background:#ffe4e6}.appointment-service-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:36px;padding:6px 9px;border:1px solid #d6e1ee;border-radius:10px;background:#f8fbff;color:#0f172a;text-align:left;cursor:pointer}.appointment-service-trigger:disabled{color:#94a3b8;background:#f8fafc;cursor:not-allowed}.appointment-service-trigger-main{display:grid;min-width:0;gap:2px}.appointment-service-trigger-title{font-size:12px;font-weight:760}.appointment-service-trigger-meta{max-width:100%;overflow:hidden;color:#64748b;font-size:11px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.appointment-service-trigger-side{display:inline-flex;align-items:center;flex-shrink:0;gap:5px;margin-left:10px;color:#2563eb;font-size:11.5px;font-weight:800}.public-service-trigger{min-height:46px;padding:8px 10px}.public-service-picker-modal .service-picker-list{display:grid;gap:6px}.public-service-category-row .service-picker-row-side{color:#2563eb}.public-service-picker-back{align-self:flex-start;min-height:28px;padding-right:8px;padding-left:6px;color:#475467}.appointment-service-picker-modal .service-picker-list{display:grid;gap:6px}.appointment-service-category-row .service-picker-row-side{color:#2563eb}.appointment-service-picker-back{align-self:flex-start;min-height:28px;padding-right:8px;padding-left:6px;color:#475467}.invoice-create-modal .app-modal-header{min-height:42px;padding:7px 16px!important}.invoice-create-modal .app-modal-body{padding-top:8px!important}.invoice-create-sheet .mantine-Input-input{min-height:36px;height:36px;font-size:16px}.invoice-appointment-results{display:grid;gap:6px;max-height:min(430px,calc(100dvh - 255px));overflow-y:auto;padding-right:2px}.invoice-appointment-row{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:58px;gap:10px;padding:8px 10px;border:1px solid #dce6f2;border-radius:10px;background:#fff;color:#172033;text-align:left;cursor:pointer}.invoice-appointment-row.is-selected{border-color:#1b7fe8;background:#edf6ff;box-shadow:inset 2px 0 #1b7fe8}.invoice-appointment-main{display:grid;min-width:0;gap:2px}.invoice-appointment-main strong{overflow:hidden;font-size:13px;font-weight:800;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.invoice-appointment-main small{overflow:hidden;color:#64748b;font-size:11px;font-weight:650;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.invoice-appointment-side{display:grid;flex-shrink:0;gap:2px;text-align:right}.invoice-appointment-side strong{color:#0f172a;font-size:13px;font-weight:850}.invoice-appointment-side small{max-width:96px;overflow:hidden;color:#64748b;font-size:10.5px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.client-picker-sheet{min-height:0}.client-picker-sheet .mantine-InputWrapper-label{margin-bottom:3px;font-size:12px;font-weight:750}.client-picker-sheet .mantine-Input-input{min-height:36px;height:36px;font-size:16px}.client-picker-actions,.client-picker-list{display:grid;gap:6px}.client-picker-list{max-height:min(430px,calc(100dvh - 250px));overflow-y:auto;padding-right:2px}.client-picker-action,.client-picker-row{display:flex;align-items:center;width:100%;min-height:42px;padding:7px 10px;border:1px solid #dce6f2;border-radius:9px;background:#fff;color:#172033;text-align:left;cursor:pointer}.client-picker-action{background:#f8fbff}.client-picker-context{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:24px;color:#64748b;font-size:11px;font-weight:750}.client-picker-context button{border:0;background:transparent;color:#1f7ae0;font:inherit;font-weight:800;cursor:pointer}.client-picker-action strong,.client-picker-row-name{display:block;overflow:hidden;font-size:13px;font-weight:760;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.client-picker-action small,.client-picker-row-meta{display:block;overflow:hidden;margin-top:2px;color:#64748b;font-size:11px;font-weight:650;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.client-picker-row-main{min-width:0}.client-picker-empty{padding:6px 2px}.client-picker-footer{margin-top:4px;padding-top:6px;border-top:1px solid #e6edf5}.service-picker-sheet{min-height:0}.service-picker-list{max-height:min(600px,calc(100dvh - 178px));min-height:0;overflow-y:auto;padding-right:2px;padding-bottom:2px}.service-picker-category{margin:5px 0 1px;color:#64748b;font-size:11px;font-weight:850;letter-spacing:0;text-transform:uppercase}.service-picker-row{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:42px;padding:7px 10px;border:1px solid #dce6f2;border-radius:9px;background:#fff;color:#172033;text-align:left;cursor:pointer}.service-picker-row.is-selected{border-color:#1b7fe8;background:#edf6ff;box-shadow:inset 2px 0 #1b7fe8}.service-picker-row-main{display:grid;min-width:0;gap:2px}.service-picker-row-name{overflow:hidden;font-size:13px;font-weight:760;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.service-picker-row-meta{color:#64748b;font-size:11px;font-weight:650}.service-picker-row-side{display:inline-flex;align-items:center;flex-shrink:0;gap:7px;margin-left:10px;color:#0f172a;font-size:12px;font-weight:800}.service-picker-check{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;color:#fff;background:#1b7fe8}.service-picker-row:not(.is-selected) .service-picker-check{background:transparent}.service-picker-footer{margin-top:4px;padding-top:6px;padding-bottom:2px;border-top:1px solid #e6edf5;background:#fff}.service-picker-footer .mantine-Button-root{min-height:34px;padding-right:16px;padding-left:16px}.mobile-list-only{display:none}.mobile-record-card{display:block;width:100%;min-width:0;padding:14px;border:1px solid #dfe8f3;border-radius:14px;background:#fff;color:#111827;text-align:left;box-shadow:0 10px 26px #0f172a0d;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.mobile-record-card:where(button):active{transform:scale(.99)}.mobile-record-card-appointment{border-left:4px solid #8b5cf6}.mobile-record-card-queue{border-left:4px solid #f59e0b}.mobile-record-title{min-width:0;flex:1}.mobile-record-dot{width:10px;height:10px;border-radius:999px;flex:0 0 10px}.mobile-record-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin-top:12px}@media(max-width:720px){body{background:#f8fafc}.auth-shell,.public-shell{align-items:flex-start!important;justify-content:flex-start!important;min-height:100dvh!important;padding:0!important}.auth-card{padding:20px!important;border-radius:18px!important}.app-main-content{padding-right:12px!important;padding-left:12px!important;padding-bottom:calc(20px + env(safe-area-inset-bottom))!important}.page-header{align-items:stretch!important;flex-direction:column;gap:14px!important;padding-bottom:14px!important}.page-header-main{align-items:flex-start!important;gap:11px!important}.page-header-title{font-size:24px!important}.page-header-action,.page-header-action>*,.page-header-action button{width:100%}.page-header-action .mantine-Group-root{align-items:stretch!important;flex-direction:column!important;width:100%}.page-header-action .mantine-Group-root>*{width:100%}.app-panel{border-radius:14px!important;box-shadow:0 10px 28px #0f172a0d!important}.desktop-table-only{display:none}.mobile-list-only{display:block}.work-item-card{min-height:0}.work-item-name{min-height:40px}.work-item-meta{min-height:112px}.work-item-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px!important}.work-item-actions .mantine-Button-root{width:100%;padding-right:10px;padding-left:10px}.calendar-filter-row{align-items:stretch!important;flex-direction:column}.calendar-filter-row>*{width:100%}.setting-toggle-row{align-items:flex-start!important;flex-direction:column}.setting-toggle-row>button{align-self:flex-start}.form-actions,.modal-actions{align-items:stretch!important;flex-direction:column}.form-actions .mantine-Button-root,.modal-actions .mantine-Button-root,.modal-actions .mantine-Group-root,.modal-actions .mantine-Group-root>*{width:100%}.settings-save-actions{margin-bottom:0;scroll-margin-bottom:calc(24px + env(safe-area-inset-bottom))}.settings-save-actions .mantine-Button-root{min-height:48px}.app-modal-content{width:calc(100vw - 16px)!important;max-height:calc(100dvh - 28px)!important;margin:8px!important;border-radius:18px!important}.app-modal-header{min-height:56px;padding:14px 16px!important}.app-modal-body{padding:14px 16px calc(22px + env(safe-area-inset-bottom))!important}.appointment-edit-modal .app-modal-header,.block-time-modal .app-modal-header,.schedule-modal .app-modal-header{min-height:42px;padding:7px 16px!important}.appointment-edit-modal .app-modal-body,.block-time-modal .app-modal-body,.schedule-modal .app-modal-body{padding:8px 16px calc(12px + env(safe-area-inset-bottom))!important}.appointment-service-trigger{min-height:36px;border-radius:10px}.appointment-service-trigger-meta{font-size:11px}.appointment-modal-form,.block-modal-form,.schedule-modal-form{gap:7px!important}.time-off-range-row{padding:7px;border-radius:9px}.appointment-modal-form .modal-actions{gap:7px!important}.appointment-modal-form .modal-actions .mantine-Button-root{min-height:38px;height:38px}.client-picker-list{max-height:calc(100dvh - 236px)}.service-picker-row{min-height:40px;border-radius:9px}.service-picker-list{max-height:calc(100dvh - 172px)}.service-picker-footer{margin-right:-16px;margin-left:-16px;padding:6px 16px calc(2px + env(safe-area-inset-bottom))}.app-modal-body form>.mantine-Stack-root>.mantine-Button-root:last-child{position:sticky;bottom:0;z-index:3;min-height:48px;box-shadow:0 12px 28px #2563eb38}.public-booking-card{min-height:100dvh;padding:14px 12px calc(18px + env(safe-area-inset-bottom))!important;border:0!important;border-radius:0!important;box-shadow:none!important}.public-booking-form{gap:12px!important}.public-booking-section{gap:8px!important}.public-booking-card .mantine-Tabs-list{position:sticky;top:0;z-index:5;margin:-14px -12px 0;padding:8px 12px 0;background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.public-booking-card .mantine-Tabs-panel{padding-top:12px!important}.public-booking-card .mantine-Tabs-tab{min-height:34px;padding-right:8px;padding-left:8px;font-size:13px}.public-booking-submit{position:sticky;bottom:calc(10px + env(safe-area-inset-bottom));z-index:6;min-height:48px;box-shadow:0 12px 28px #2563eb3d}.public-booking-logo{width:44px;height:44px;flex-basis:44px;border-radius:12px}.public-booking-card .mantine-Input-input{min-height:42px;height:42px}.public-booking-card textarea.mantine-Input-input{height:auto;min-height:74px}.public-consent-card{padding:10px!important}.staff-choice-grid{display:flex;gap:8px;margin-right:-12px;overflow-x:auto;padding:0 12px 2px 0;scroll-snap-type:x proximity}.staff-choice-card{min-width:158px;min-height:56px;scroll-snap-align:start}.booking-time-grid{grid-template-columns:repeat(auto-fill,minmax(62px,1fr));gap:5px}.booking-time-slot{min-height:32px;border-radius:8px;font-size:12.5px}.booking-summary-row{align-items:flex-start!important;flex-direction:column;gap:2px!important}.booking-summary-row p:last-child{max-width:100%;text-align:left!important;overflow-wrap:anywhere}.list-row{align-items:flex-start!important;gap:10px!important;padding:12px!important}.list-row .row-actions{align-self:center}.service-row{align-items:flex-start!important;display:grid!important;grid-template-columns:1fr auto;gap:4px 10px!important}.service-row-name{min-width:0;grid-column:1 / 2}.service-row-price{grid-column:2 / 3;grid-row:1;text-align:right}.service-row-duration{grid-column:1 / 2}.service-row .row-actions{grid-column:2 / 3;justify-self:end}.avatar-upload-row{align-items:flex-start!important;flex-direction:column}.avatar-upload-row>*{width:100%}.info-row{align-items:flex-start!important;flex-direction:column;gap:3px}.info-row p,.info-row div{text-align:left!important}.mantine-Table-scrollContainer{margin-right:-16px;margin-left:-16px;padding-right:16px;padding-left:16px}.mantine-Table-table{font-size:13px}.mantine-Button-root,.mantine-ActionIcon-root,.mantine-UnstyledButton-root{min-height:42px}.mantine-Input-input{min-height:46px;font-size:16px!important}.mantine-Input-input input,.mantine-PasswordInput-innerInput,.mantine-Textarea-input{font-size:16px!important}.calendar-frame{margin-right:-16px;margin-left:-16px;border-right:0;border-left:0;border-radius:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.overview-calendar .fc{min-width:0;width:100%;font-size:12px}.overview-calendar .fc .fc-view-harness{min-width:0}.overview-calendar .fc .fc-timeGridWeek-view,.overview-calendar .fc .fc-dayGridMonth-view{min-width:620px}.overview-calendar .fc .fc-toolbar{align-items:flex-start;flex-direction:column;gap:10px;padding:12px 14px}.overview-calendar .fc .fc-toolbar-chunk{flex-wrap:wrap;width:100%}.overview-calendar .fc .fc-toolbar-chunk:first-child{justify-content:flex-start}.overview-calendar .fc .fc-toolbar-chunk:last-child{justify-content:stretch}.overview-calendar .fc .fc-toolbar-chunk:first-child .fc-button-group{flex:0 0 auto;width:auto}.overview-calendar .fc .fc-toolbar-chunk:last-child .fc-button-group{width:100%}.overview-calendar .fc .fc-toolbar-chunk:last-child .fc-button-group .fc-button{flex:1}.overview-calendar .fc .fc-toolbar-title{flex:1;font-size:16px;margin-left:0;white-space:normal}.overview-calendar .fc .fc-timegrid-slot{height:40px}.overview-calendar .fc .fc-col-header-cell-cushion{padding:10px 3px;font-size:11px}}@media(max-width:420px){.page-header-title{font-size:22px!important}.public-booking-card{padding:12px 10px calc(16px + env(safe-area-inset-bottom))!important}.booking-time-grid{grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:5px}.booking-time-slot{min-height:32px;font-size:12.5px}.work-item-actions,.mobile-record-meta{grid-template-columns:1fr}}@media print{@page{margin:14mm}html,body,#root{background:#fff!important;color:#000!important}body{overflow:visible!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.no-print,.page-header-action{display:none!important}.app-main-content{max-width:none!important;margin:0!important;padding:0!important}.mantine-AppShell-root,.mantine-AppShell-main,.app-shell-main{min-height:auto!important;background:#fff!important}.mantine-AppShell-main,.app-shell-main{padding:0!important}.page-header{margin-bottom:14px!important;padding-bottom:14px!important;border-bottom:1px solid #d0d5dd!important}.page-header-title{color:#000!important;font-size:24px!important}.invoice-print-area{max-width:720px!important;margin:0 auto!important;gap:14px!important}.invoice-print-panel{width:100%!important;max-width:none!important;padding:0!important;border:0!important;box-shadow:none!important;background:#fff!important}.invoice-print-panel .mantine-Divider-root{border-color:#d0d5dd!important}}
