@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500&display=swap";:root{--bg-primary: #FDFCFA;--bg-card: #FFFFFF;--bg-surface: #FFFFFF;--bg-overlay: rgba(253, 252, 250, .94);--bg-modal-scrim: rgba(58, 53, 48, .4);--bg-glass: rgba(255, 255, 255, .78);--bg-secondary: #FAF7F3;--bg-tertiary: #F5F0EB;--border-color: #E9E0D7;--text-main: #3A3530;--text-muted: #7F7467;--text-inverse: #FFFFFF;--accent-primary: #FFB3C6;--accent-primary-dark: #E8829A;--text-on-accent: #3A3530;--accent-secondary: #F7D6C8;--accent-gold: #D4AF37;--accent-gold-light: #F3E5AB;--rose-gold-border: linear-gradient(135deg, var(--accent-primary) 0%, var(--accent-gold-light) 100%);--pastel-hair: #FFCCD5;--pastel-makeup: #DEC0F1;--pastel-nails: #E8E0FE;--pastel-rental: #CCD5AE;--pastel-spa: #C9E4DE;--pastel-other: #D4E4F7;--staff-color-blush: #F4899A;--staff-color-coral: #F4845F;--staff-color-amber: #F0A500;--staff-color-sage: #6BAE75;--staff-color-ocean: #5BA4C8;--staff-color-violet: #9B7FE8;--staff-color-berry: #D4849A;--staff-color-slate: #7A8CA0;--staff-color-petal: #FFCCD5;--staff-color-vanilla: #FAEDCD;--staff-color-mint: #C8E6C9;--staff-color-sky: #BBDEFB;--staff-color-lilac: #E1D5F7;--staff-color-peach: #FFD8B1;--staff-color-lemon: #FFF9C4;--staff-color-linen: #F5F0E8;--chart-total: #1E6B52;--chart-hair: #E8829A;--chart-makeup: #9B8EC4;--chart-nails: #7C6FCD;--chart-rental: #8C9B5E;--chart-spa: #2A9D8F;--chart-other: #4A6FA5;--status-unpaid: #E76F51;--status-partial: #F4A261;--status-paid: #2A9D8F;--status-verified: #1E6B52;--status-verified-bg: #C9E4DE;--booking-scheduled: #FFB3C6;--booking-progress: #F4A261;--booking-completed: #2A9D8F;--booking-noshow: #BCAE9F;--status-closed-bg: rgba(232, 224, 254, .3);--status-closed-border: rgba(232, 224, 254, .8);--status-closed-text: #7A66C5;--status-closed-dot: #7A66C5;--status-closed-hover-bg: rgba(232, 224, 254, .45);--status-full-bg: rgba(255, 179, 198, .15);--status-full-border: rgba(255, 179, 198, .4);--status-full-text: #C85C7B;--status-full-dot: #C85C7B;--status-full-hover-bg: rgba(255, 179, 198, .22)}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--control-touch-target: 44px;--dialog-width-wide: 42rem;--dialog-height-max: 46rem;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 24px;--radius-full: 9999px;--font-serif: "Outfit", "Inter", system-ui, sans-serif;--font-serif-cormorant: "Outfit", "Inter", system-ui, sans-serif;--font-sans: "Outfit", "Inter", system-ui, sans-serif;--font-display: "Playfair Display", "Cormorant Garamond", serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--notebook-line: repeating-linear-gradient( var(--bg-primary), var(--bg-primary) 29px, var(--border-color) 30px );--shadow-card: 0 2px 12px rgba(90, 80, 70, .08);--shadow-modal: 0 20px 60px rgba(90, 80, 70, .18);--shadow-notebook: 0 10px 30px rgba(90, 80, 70, .08);--shadow-pill-3d: inset 0 1px 0 rgba(255, 255, 255, .6), inset 0 -1.5px 0 rgba(0, 0, 0, .04), 0 1px 2px rgba(90, 80, 70, .08);--shadow-pill-3d-hover: inset 0 1px 0 rgba(255, 255, 255, .8), inset 0 -1.5px 0 rgba(0, 0, 0, .06), 0 3px 8px rgba(90, 80, 70, .12);--shadow-pill-3d-active: inset 0 1px 0 rgba(255, 255, 255, .8), inset 0 -1.5px 0 rgba(0, 0, 0, .08), 0 4px 12px rgba(90, 80, 70, .15);--shadow-pill-3d-pressed: inset 0 1.5px 3px rgba(0, 0, 0, .08), inset 0 0 0 rgba(0, 0, 0, 0);--shadow-dot-3d: inset 0 1px 1px rgba(255, 255, 255, .4), 0 1px 1px rgba(0, 0, 0, .15);--shadow-dot-3d-active: inset 0 1px 1px rgba(255, 255, 255, .5), 0 0 8px var(--pill-color);--transition-fast: all .15s ease-in-out;--transition-normal: all .25s ease-in-out;--transition-slow: all .4s ease-in-out;--ease-standard: cubic-bezier(.42, 0, .58, 1);--motion-routine: .22s;--motion-story-duration: 3s;--motion-story-pause: .5s;--ease-out-fluid: var(--ease-standard);--ease-in-fluid: var(--ease-standard);--modal-in-duration: .28s;--modal-out-duration: .22s}[data-theme=dark]{--bg-primary: #1A1816;--bg-card: #262320;--bg-surface: #262320;--bg-overlay: rgba(26, 24, 22, .95);--bg-modal-scrim: rgba(0, 0, 0, .58);--bg-glass: rgba(38, 35, 32, .72);--bg-secondary: #2D2A26;--bg-tertiary: #35302C;--border-color: #38332E;--text-main: #F4EFEA;--text-muted: #BCAE9F;--text-inverse: #1A1816;--accent-primary: #FF85A1;--accent-primary-dark: #E8527A;--text-on-accent: #1A1816;--accent-secondary: #E9C46A;--accent-gold: #FFD700;--accent-gold-light: #FFE4B5;--rose-gold-border: linear-gradient(135deg, var(--accent-primary) 0%, var(--accent-gold-light) 100%);--pastel-hair: #6E3D47;--pastel-makeup: #5E3D5C;--pastel-nails: #4E4663;--pastel-rental: #4E5C3D;--pastel-spa: #2A4A3F;--pastel-other: #3D4E5C;--chart-total: #4EF0BB;--chart-hair: #FF85A1;--chart-makeup: #DEC0F1;--chart-nails: #B8AAEE;--chart-rental: #CCD5AE;--chart-spa: #3BBFB0;--chart-other: #A3B4C6;--status-unpaid: #FF8066;--status-partial: #FFB347;--status-paid: #3BBFB0;--status-verified: #4EF0BB;--status-verified-bg: #2A4A3F;--status-closed-bg: rgba(184, 170, 238, .15);--status-closed-border: rgba(184, 170, 238, .3);--status-closed-text: #B8AAEE;--status-closed-dot: #B8AAEE;--status-closed-hover-bg: rgba(184, 170, 238, .25);--status-full-bg: rgba(255, 133, 161, .15);--status-full-border: rgba(255, 133, 161, .3);--status-full-text: #FF85A1;--status-full-dot: #FF85A1;--status-full-hover-bg: rgba(255, 133, 161, .25);--shadow-card: 0 2px 12px rgba(0, 0, 0, .3);--shadow-modal: 0 20px 60px rgba(0, 0, 0, .5);--shadow-pill-3d: inset 0 1px 0 rgba(255, 255, 255, .08), inset 0 -1.5px 0 rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .3);--shadow-pill-3d-hover: inset 0 1px 0 rgba(255, 255, 255, .12), inset 0 -1.5px 0 rgba(0, 0, 0, .4), 0 3px 8px rgba(0, 0, 0, .45);--shadow-pill-3d-active: inset 0 1px 0 rgba(255, 255, 255, .15), inset 0 -1.5px 0 rgba(0, 0, 0, .5), 0 4px 12px rgba(0, 0, 0, .55);--shadow-pill-3d-pressed: inset 0 1.5px 3px rgba(0, 0, 0, .4), inset 0 0 0 rgba(0, 0, 0, 0);--shadow-dot-3d: inset 0 1px 1px rgba(255, 255, 255, .25), 0 1px 1px rgba(0, 0, 0, .4);--shadow-dot-3d-active: inset 0 1px 1px rgba(255, 255, 255, .35), 0 0 8px var(--pill-color)}[data-lob=barbershop]{--accent-primary: #4A6FA5;--accent-primary-dark: #2E4D7B;--text-on-accent: #FFFFFF;--accent-secondary: #98B4D4;--bg-primary: #FBFCFD;--bg-card: #FFFFFF;--bg-surface: #FFFFFF;--bg-overlay: rgba(251, 252, 253, .94);--bg-glass: rgba(255, 255, 255, .78);--border-color: #D5DCE6;--rose-gold-border: linear-gradient(135deg, #4A6FA5 0%, #98B4D4 100%)}[data-lob=spa]{--accent-primary: #2A9D8F;--accent-primary-dark: #1F7A6E;--text-on-accent: #FFFFFF;--accent-secondary: #8ECFC9;--bg-primary: #FBFDFC;--bg-card: #FFFFFF;--bg-surface: #FFFFFF;--bg-overlay: rgba(251, 253, 252, .94);--bg-glass: rgba(255, 255, 255, .78);--border-color: #C8DEDD;--rose-gold-border: linear-gradient(135deg, #2A9D8F 0%, #8ECFC9 100%)}[data-lob=nail_studio]{--accent-primary: #9B8EC4;--accent-primary-dark: #7C6FCD;--text-on-accent: #FFFFFF;--accent-secondary: #C8B8F5;--bg-primary: #FCFBFE;--bg-card: #FFFFFF;--bg-surface: #FFFFFF;--bg-overlay: rgba(252, 251, 254, .94);--bg-glass: rgba(255, 255, 255, .78);--border-color: #DDD6F3;--rose-gold-border: linear-gradient(135deg, #9B8EC4 0%, #C8B8F5 100%)}[data-lob=custom]{--accent-primary: #8A9BAE;--accent-primary-dark: #6B7F94;--text-on-accent: #FFFFFF;--accent-secondary: #B5C4D0;--bg-primary: #FCFDFE;--bg-card: #FFFFFF;--bg-surface: #FFFFFF;--bg-overlay: rgba(252, 253, 254, .94);--bg-glass: rgba(255, 255, 255, .78);--border-color: #D1D8DE;--rose-gold-border: linear-gradient(135deg, #8A9BAE 0%, #B5C4D0 100%)}[data-theme=dark][data-lob=barbershop]{--accent-primary: #6B9FD4;--accent-primary-dark: #4A6FA5;--text-on-accent: #1E2229;--accent-secondary: #3D5A80;--bg-primary: #1E2229;--bg-card: #282E37;--bg-surface: #282E37;--bg-overlay: rgba(30, 34, 41, .95);--bg-glass: rgba(40, 46, 55, .72);--border-color: #39424F}[data-theme=dark][data-lob=spa]{--accent-primary: #3BBFB0;--accent-primary-dark: #2A9D8F;--text-on-accent: #1A2421;--accent-secondary: #1F7A6E;--bg-primary: #1A2421;--bg-card: #24302C;--bg-surface: #24302C;--bg-overlay: rgba(26, 36, 33, .95);--bg-glass: rgba(36, 48, 44, .72);--border-color: #34443F}[data-theme=dark][data-lob=nail_studio]{--accent-primary: #B8AAEE;--accent-primary-dark: #9B8EC4;--text-on-accent: #1D1B24;--accent-secondary: #4E4663;--bg-primary: #1D1B24;--bg-card: #272430;--bg-surface: #272430;--bg-overlay: rgba(29, 27, 36, .95);--bg-glass: rgba(39, 36, 48, .72);--border-color: #3A3647}[data-theme=dark][data-lob=custom]{--accent-primary: #A3B4C6;--accent-primary-dark: #8A9BAE;--text-on-accent: #1E2022;--accent-secondary: #526070;--bg-primary: #1E2022;--bg-card: #282A2E;--bg-surface: #282A2E;--bg-overlay: rgba(30, 32, 34, .95);--bg-glass: rgba(40, 42, 46, .72);--border-color: #393C42}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background-color:var(--bg-primary);color:var(--text-main);font-family:var(--font-sans);font-size:16px;min-height:100vh;transition:background-color var(--transition-normal),color var(--transition-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}input,textarea,[contenteditable=true],.selectable{-webkit-user-select:text;user-select:text}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes pagePeel{0%{transform:translate(0) skewY(0);opacity:1}50%{transform:translate(-30px) skewY(-1deg);opacity:.5}to{transform:translate(-100%) skewY(0);opacity:0}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}60%{transform:translate(6px)}}@keyframes pulse{0%,to{box-shadow:0 0 #ffb3c680}50%{box-shadow:0 0 0 10px #ffb3c600}}.conflict-shake{animation:shake .35s ease-in-out;border:2px solid var(--status-unpaid)!important}.pulse-glow{animation:pulse 2s infinite}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}input,textarea,select{font-size:16px!important}[class*=-overlay],[class*=__overlay],[class*=-backdrop]{touch-action:none;overscroll-behavior:none}.pwa-logo-pulse{animation:logo-update-pulse 2.2s infinite ease-in-out;cursor:pointer!important}@keyframes logo-update-pulse{0%{transform:scale(1);filter:drop-shadow(0 0 0 rgba(255,179,198,0))}50%{transform:scale(1.05) rotate(1.5deg);filter:drop-shadow(0 0 14px rgba(255,179,198,.9))}to{transform:scale(1);filter:drop-shadow(0 0 0 rgba(255,179,198,0))}}.settings-subpage-header{display:flex;align-items:center;gap:16px;margin-bottom:var(--space-6)}.settings-subpage-header h1{font-family:var(--font-serif);font-size:var(--text-2xl);margin:0;color:var(--text-main);font-weight:700}.back-btn{background:var(--bg-surface);border:1.5px solid var(--border-color);width:40px;height:40px;padding:0;border-radius:50%;color:var(--text-main);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-fast);flex-shrink:0;box-shadow:var(--shadow-card)}.back-btn:hover{background:var(--border-color);transform:scale(1.05)}.back-btn:active{transform:scale(.95)}[data-theme=dark] img[src*=logo-full]{content:url(/assets/logo-full-dark-CK7R6KYl.svg)}.setting-field--highlight{animation:setting-field-glow 2.2s ease-in-out forwards}@keyframes setting-field-glow{0%{box-shadow:0 0 #e8829a00;border-color:var(--border-color)}30%{box-shadow:0 0 0 6px #e8829a73;border-color:var(--accent-primary-dark)}70%{box-shadow:0 0 0 6px #e8829a4d;border-color:var(--accent-primary-dark)}to{box-shadow:0 0 #e8829a00;border-color:var(--border-color)}}@media(prefers-reduced-motion:reduce){:where(.confirm-dialog-overlay,.confirm-dialog,.booking-modal-overlay,.booking-modal,.cancellation-overlay,.cancellation-modal,.conflict-modal-overlay,.conflict-modal,.conflict-resolution-overlay,.conflict-resolution-modal,.day-status-modal-overlay,.day-status-modal,.edit-tx-modal-overlay,.edit-tx-modal,.group-delete-overlay,.group-delete-modal,.reschedule-overlay,.reschedule-modal,.detail-sheet-overlay,.detail-sheet,.worker-profile-modal-overlay,.worker-profile-modal-sheet,.pwa-prompt__overlay,.pwa-prompt__sheet,.service-form-overlay,.service-form-sheet,.rental-form-overlay,.rental-form-sheet,.delete-client-modal-overlay,.delete-client-modal,.client-form-overlay,.client-form-sheet,.export-modal-overlay,.export-modal,.upgrade-modal-backdrop,.upgrade-modal,.quick-booking-overlay,.quick-booking-sheet,.agenda-quick-sheet-overlay,.agenda-quick-sheet,.toast,.toast-container,.receipt-overflow-actions,.client-search__dropdown,.client-search__quick-add,.custom-dropdown__menu,.settings-search-bar__dropdown,.worker-header-bar__mobile-dropdown,.datepicker-popover,.datepicker-modal-overlay,.datepicker-modal,.lead-contact-portal-backdrop,.lead-contact-portal-card,.invitation-delivery,.invitation-delivery__sheet,.phone-input-overlay-backdrop,.phone-mobile-sheet-backdrop,.phone-mobile-sheet,.phone-input-dropdown,.offline-pro-gate,.offline-pro-gate__card,.paywall-overlay,.suspension-overlay,.access-denied-modal,.recovery-request-modal__overlay,.recovery-request-modal,.payment-entry-backdrop,.payment-entry-dialog,.reject-payment-backdrop,.reject-payment-dialog,.archive-tenant-modal__backdrop,.archive-tenant-modal,.superadmin-backup-impact__overlay,.superadmin-backup-impact,.superadmin-recovery-request__overlay,.superadmin-recovery-request,.superadmin-restore-workflow__overlay,.superadmin-restore-workflow,.superadmin-support-access-dialog__overlay,.superadmin-support-access-dialog,.superadmin-reauthenticate-modal__overlay,.superadmin-reauthenticate-modal){animation:none!important;transition:none!important}}:where(.confirm-dialog-overlay,.confirm-dialog,.booking-modal-overlay,.booking-modal,.cancellation-overlay,.cancellation-modal,.conflict-modal-overlay,.conflict-modal,.conflict-resolution-overlay,.conflict-resolution-modal,.day-status-modal-overlay,.day-status-modal,.edit-tx-modal-overlay,.edit-tx-modal,.group-delete-overlay,.group-delete-modal,.reschedule-overlay,.reschedule-modal,.detail-sheet-overlay,.detail-sheet,.worker-profile-modal-overlay,.worker-profile-modal-sheet,.pwa-prompt__overlay,.pwa-prompt__sheet,.service-form-overlay,.service-form-sheet,.rental-form-overlay,.rental-form-sheet,.delete-client-modal-overlay,.delete-client-modal,.client-form-overlay,.client-form-sheet,.export-modal-overlay,.export-modal,.upgrade-modal-backdrop,.upgrade-modal,.quick-booking-overlay,.quick-booking-sheet,.agenda-quick-sheet-overlay,.agenda-quick-sheet,.toast,.toast-container,.receipt-overflow-actions,.client-search__dropdown,.client-search__quick-add,.custom-dropdown__menu,.settings-search-bar__dropdown,.worker-header-bar__mobile-dropdown,.datepicker-popover,.datepicker-modal-overlay,.datepicker-modal,.lead-contact-portal-backdrop,.lead-contact-portal-card,.invitation-delivery,.invitation-delivery__sheet,.phone-input-overlay-backdrop,.phone-mobile-sheet-backdrop,.phone-mobile-sheet,.phone-input-dropdown,.offline-pro-gate,.offline-pro-gate__card,.paywall-overlay,.suspension-overlay,.access-denied-modal,.recovery-request-modal__overlay,.recovery-request-modal,.payment-entry-backdrop,.payment-entry-dialog,.reject-payment-backdrop,.reject-payment-dialog,.archive-tenant-modal__backdrop,.archive-tenant-modal,.superadmin-backup-impact__overlay,.superadmin-backup-impact,.superadmin-recovery-request__overlay,.superadmin-recovery-request,.superadmin-restore-workflow__overlay,.superadmin-restore-workflow,.superadmin-support-access-dialog__overlay,.superadmin-support-access-dialog,.superadmin-reauthenticate-modal__overlay,.superadmin-reauthenticate-modal){animation-timing-function:var(--ease-standard)!important;transition-timing-function:var(--ease-standard)!important}:root{--ease-out-fluid: var(--ease-standard);--ease-in-fluid: var(--ease-standard)}:where(.confirm-dialog-overlay,.confirm-dialog,.booking-modal-overlay,.booking-modal,.cancellation-overlay,.cancellation-modal,.conflict-modal-overlay,.conflict-modal,.conflict-resolution-overlay,.conflict-resolution-modal,.day-status-modal-overlay,.day-status-modal,.edit-tx-modal-overlay,.edit-tx-modal,.group-delete-overlay,.group-delete-modal,.reschedule-overlay,.reschedule-modal,.detail-sheet-overlay,.detail-sheet,.quick-booking-overlay,.quick-booking-sheet,.service-form-overlay,.service-form-sheet,.rental-form-overlay,.rental-form-sheet,.delete-client-modal-overlay,.delete-client-modal,.client-form-overlay,.client-form-sheet,.export-modal-overlay,.export-modal,.upgrade-modal-backdrop,.upgrade-modal,.agenda-quick-sheet-overlay,.agenda-quick-sheet,.toast,.toast-container,.receipt-overflow-actions,.client-search__dropdown,.client-search__quick-add,.custom-dropdown__menu,.settings-search-bar__dropdown,.worker-header-bar__mobile-dropdown,.datepicker-popover,.datepicker-modal-overlay,.datepicker-modal,.lead-contact-portal-backdrop,.lead-contact-portal-card,.invitation-delivery,.invitation-delivery__sheet,.phone-input-overlay-backdrop,.phone-mobile-sheet-backdrop,.phone-mobile-sheet,.phone-input-dropdown,.pwa-prompt__overlay,.pwa-prompt__sheet,.offline-pro-gate,.offline-pro-gate__card,.paywall-overlay,.suspension-overlay,.access-denied-modal,.recovery-request-modal__overlay,.recovery-request-modal,.audit-journal-overlay,.audit-journal-modal,.backup-modal-overlay,.backup-modal,.lob-change-overlay,.lob-change-sheet,.salon-form-overlay,.salon-form-sheet,.services-settings-overlay,.services-settings-sheet,.worker-commissions-overlay,.worker-commissions-sheet,.worker-password-modal-overlay,.worker-password-modal-sheet,.worker-form-overlay,.worker-form,.worker-profile-modal-overlay,.worker-profile-modal-sheet,.push-permission-overlay,.push-permission-modal,.pay-modal-overlay,.pay-modal,.payment-entry-backdrop,.payment-entry-dialog,.reject-payment-backdrop,.reject-payment-dialog,.archive-tenant-modal__backdrop,.archive-tenant-modal,.superadmin-drawer-backdrop,.superadmin-drawer,.superadmin-backup-impact__overlay,.superadmin-backup-impact,.superadmin-recovery-request__overlay,.superadmin-recovery-request,.superadmin-restore-workflow__overlay,.superadmin-restore-workflow,.superadmin-support-access-dialog__overlay,.superadmin-support-access-dialog,.superadmin-reauthenticate-modal__overlay,.superadmin-reauthenticate-modal,.superadmin-tenant-drawer,.superadmin-tenant-support-access__overlay,.superadmin-tenant-support-access__dialog){animation-timing-function:var(--ease-standard)!important;transition-timing-function:var(--ease-standard)!important}@keyframes notification-dot-pulse{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.3);opacity:1}}.notification-card{position:relative;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg, 12px);padding:14px 16px;margin-bottom:10px;cursor:pointer;transition:box-shadow var(--transition-fast, .15s ease),border-color var(--transition-fast, .15s ease);-webkit-user-select:none;user-select:none;touch-action:manipulation;overflow:hidden;will-change:transform}.notification-card:active{transform:scale(.96)}@media(hover:hover){.notification-card:hover{box-shadow:0 6px 20px #00000014;border-color:var(--accent-primary-dark, #e8829a)}}.notification-card--unread.notification-card--critical{border-left:1px solid var(--status-unpaid);background:color-mix(in srgb,var(--status-unpaid) 8%,var(--bg-card))}.notification-card--unread.notification-card--warning{border-left:1px solid var(--status-partial);background:color-mix(in srgb,var(--status-partial) 8%,var(--bg-card))}.notification-card--unread.notification-card--info{border-left:1px solid var(--accent-primary-dark);background:color-mix(in srgb,var(--accent-primary) 8%,var(--bg-card))}.notification-card--read{opacity:.78}.notification-card__header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.notification-card__avatar-wrapper{position:relative;flex-shrink:0}.notification-card__avatar,.notification-card__avatar-fallback{width:32px;height:32px;border-radius:var(--radius-full, 9999px);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;background:var(--accent-primary-dark, #e8829a);object-fit:cover}.notification-card__badge-overlay{position:absolute;bottom:-2px;right:-2px;width:14px;height:14px;border-radius:var(--radius-full, 9999px);background:var(--bg-surface);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center}.notification-card__title-area{flex:1;display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.notification-card__title{font-size:var(--text-xs, 13px);font-weight:700;color:var(--text-main);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}.notification-card__dot{width:7px;height:7px;border-radius:var(--radius-full, 9999px);flex-shrink:0;animation:notification-dot-pulse 2s infinite ease-in-out}.notification-card__dot--critical{background:#ef4444}.notification-card__dot--warning{background:#f59e0b}.notification-card__dot--info{background:#3b82f6}.notification-card__timestamp{font-size:11px;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.notification-card__message{font-size:var(--text-xs, 12px);color:var(--text-muted);margin:0 0 10px;line-height:1.45}.notification-card__meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.notification-card__amount-chip{font-size:11px;font-weight:700;color:var(--text-main);background:#d4af3726;padding:3px 8px;border-radius:var(--radius-full, 9999px);border:1px solid rgba(212,175,55,.3)}[data-theme=dark] .notification-card__amount-chip{color:var(--accent-gold, #FFD700)}.notification-card__action-btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;gap:5px;padding:4px 12px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-full, 9999px);font-size:var(--text-xs, 12px);font-weight:600;color:var(--text-main);cursor:pointer;transition:background var(--transition-fast, .15s ease),border-color var(--transition-fast, .15s ease)}.notification-card__action-btn:hover{background:#e8829a1f;border-color:var(--accent-primary, #e8829a);color:var(--accent-primary-dark, #e8829a)}.notification-card__action-btn--wa{color:#22c55e}.notification-card__action-btn--wa:hover{background:#22c55e1f;border-color:#22c55e}.notification-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:9999;display:flex;justify-content:flex-end}[data-theme=dark] .notification-drawer-overlay{background:#000000a6}.notification-drawer{width:100%;max-width:440px;height:100%;background:var(--bg-card);display:flex;flex-direction:column;box-shadow:-8px 0 32px #00000040;border-left:1px solid var(--border-color);-webkit-user-select:none;user-select:none;will-change:transform}.notification-drawer__header{padding:var(--space-4, 16px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-color);background:var(--bg-surface)}.notification-drawer__title-row{display:flex;align-items:center;gap:var(--space-2, 8px)}.notification-drawer__title{font-size:var(--text-base, 16px);font-weight:700;color:var(--text-main);margin:0}.notification-drawer__red-pill{font-size:var(--text-xs, 12px);background:#ef444424;color:#ef4444;padding:2px 8px;border-radius:var(--radius-full, 9999px);font-weight:700;display:inline-flex;align-items:center;gap:4px}.notification-drawer__header-actions{display:flex;align-items:center;gap:6px}.notification-drawer__icon-btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;border-radius:var(--radius-full, 9999px);transition:color var(--transition-fast, .15s ease),border-color var(--transition-fast, .15s ease)}.notification-drawer__icon-btn:active{transform:scale(.96)}.notification-drawer__icon-btn:hover{color:var(--text-main);border-color:var(--accent-primary-dark, #e8829a)}.notification-drawer__content{flex:1;overflow-y:auto;padding:16px;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.notification-drawer__content::-webkit-scrollbar{width:4px}.notification-drawer__content::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.notification-drawer__date-group{margin-bottom:16px}.notification-drawer__date-header{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:8px 0 10px 4px;display:flex;align-items:center;gap:8px}.notification-drawer__date-header:after{content:"";flex:1;height:1px;background:var(--border-color)}.notification-drawer__empty{text-align:center;padding:64px 16px;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;justify-content:center}.notification-drawer__empty-icon{width:64px;height:64px;border-radius:var(--radius-full, 9999px);background:#e8829a1a;color:var(--accent-primary, #e8829a);display:flex;align-items:center;justify-content:center;margin-bottom:16px;border:1px solid rgba(232,130,154,.2)}.notification-drawer__empty-title{font-size:var(--text-base, 16px);font-weight:700;color:var(--text-main);margin:0 0 4px}.notification-drawer__empty-text{font-size:var(--text-xs, 12px);color:var(--text-muted);margin:0}.notification-drawer__footer{padding:12px 16px;border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;background:var(--bg-surface)}.notification-drawer__footer-btn{min-height:44px;background:transparent;border:none;color:var(--text-muted);font-size:var(--text-xs, 12px);font-weight:600;cursor:pointer;padding:0 10px;border-radius:var(--radius-md, 8px);display:inline-flex;align-items:center;gap:6px;transition:color var(--transition-fast, .15s ease),background var(--transition-fast, .15s ease)}.notification-drawer__footer-btn:active{transform:scale(.96)}.notification-drawer__footer-btn:hover:not(:disabled){color:var(--accent-primary-dark, #e8829a);background:#e8829a14}.notification-drawer__footer-btn:disabled{opacity:.4;cursor:not-allowed}.notification-drawer__load-more{width:100%;min-height:44px;background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-main);font-size:var(--text-xs, 12px);font-weight:600;border-radius:var(--radius-md, 8px);cursor:pointer;margin-top:8px;transition:background var(--transition-fast, .15s ease)}.notification-drawer__load-more:active{transform:scale(.96)}.notification-drawer__filter-bar{padding:var(--space-3, 12px) var(--space-4, 16px);border-bottom:1px solid var(--border-color);display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;background:var(--bg-surface);position:relative}.notification-drawer__filter-bar::-webkit-scrollbar{display:none}.notification-drawer__filter-chip{min-height:38px;padding:6px 14px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-muted);font-size:var(--text-xs, 12px);font-weight:600;border-radius:var(--radius-full, 9999px);cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;position:relative;transition:color var(--transition-fast, .15s ease),border-color var(--transition-fast, .15s ease);-webkit-user-select:none;user-select:none;touch-action:manipulation}.notification-drawer__filter-chip:active{transform:scale(.96)}.notification-drawer__filter-chip:hover{color:var(--text-main);border-color:var(--border-focus, var(--accent-primary-dark))}.notification-drawer__filter-chip--active{color:var(--text-main);border-color:var(--accent-primary, #e8829a);font-weight:700}.notification-drawer__chip-content{position:relative;z-index:2;display:flex;align-items:center;gap:6px}.notification-drawer__chip-badge{font-size:10px;font-weight:800;padding:1px 6px;border-radius:var(--radius-full, 9999px);background:var(--bg-surface);color:var(--text-muted);line-height:1.2}.notification-drawer__filter-chip--active .notification-drawer__chip-badge{background:var(--accent-primary, #e8829a);color:#fff}.notification-drawer__active-pill{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-full, 9999px);background:#e8829a26;z-index:1;pointer-events:none}[data-theme=dark] .notification-drawer__active-pill{background:#e8829a38}.notification-toast-container{position:fixed;bottom:var(--space-6, 24px);right:var(--space-6, 24px);z-index:10000;display:flex;flex-direction:column;gap:var(--space-2, 8px);pointer-events:none}.notification-toast{pointer-events:auto;min-width:320px;max-width:400px;min-height:44px;background:var(--bg-card);border:1px solid var(--status-unpaid);border-radius:var(--radius-lg, 12px);padding:var(--space-3, 12px) var(--space-4, 16px);box-shadow:0 10px 25px -5px #00000026;display:flex;align-items:center;gap:var(--space-3, 12px);cursor:pointer;transition:transform var(--transition-fast, .15s ease)}.notification-toast:active{transform:scale(.96)}.notification-toast__icon-wrapper{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-full, 9999px);background:color-mix(in srgb,var(--status-unpaid) 12%,transparent);color:var(--status-unpaid);flex-shrink:0}.notification-toast__content{flex:1;min-width:0}.notification-toast__title{font-size:var(--text-xs, 12px);font-weight:700;color:var(--text-main);margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-toast__message{font-size:var(--text-xs, 12px);color:var(--text-muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-toast__close{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-muted);cursor:pointer;margin-right:-8px}.trial-badge{display:inline-flex;align-items:center;gap:8px;background:var(--bg-surface);border:1px solid var(--border-color);padding:6px 14px;border-radius:var(--radius-full);box-shadow:var(--shadow-card);font-family:var(--font-sans);font-size:12px;font-weight:500;color:var(--text-main);transition:var(--transition-fast)}.trial-badge--warning{border-color:var(--status-unpaid);background:#e76f5114;color:var(--status-unpaid)}.trial-badge--pro{border-color:var(--accent-gold);background:linear-gradient(135deg,#d4af371a,#f3e5ab33);color:var(--accent-gold);font-weight:600}.trial-badge--starter{border-color:var(--accent-primary);background:#ffb3c61a;color:var(--accent-primary-dark);font-weight:600}.trial-badge__icon{font-size:14px;line-height:1}.trial-badge__pulse{width:8px;height:8px;border-radius:50%;background:var(--accent-primary-dark);position:relative}.trial-badge--warning .trial-badge__pulse{background:var(--status-unpaid)}.trial-badge__pulse:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;background:inherit;animation:pulse-ring 1.5s cubic-bezier(.215,.61,.355,1) infinite}.trial-badge__text{white-space:nowrap}@keyframes pulse-ring{0%{transform:scale(1);opacity:.8}to{transform:scale(3.5);opacity:0}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-sans);font-weight:600;border:none;cursor:pointer;border-radius:var(--radius-md);transition:var(--transition-fast);text-decoration:none;white-space:nowrap;position:relative;overflow:hidden;min-height:44px}.btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.btn--sm{font-size:var(--text-sm);padding:var(--space-2) var(--space-4);min-height:36px}.btn--md{font-size:var(--text-base);padding:var(--space-3) var(--space-6)}.btn--lg{font-size:var(--text-lg);padding:var(--space-4) var(--space-8);min-height:52px}.btn--full{width:100%}.btn--primary{background:var(--accent-primary);color:var(--text-main)}.btn--primary:hover:not(:disabled){background:var(--accent-primary-dark);transform:translateY(-1px);box-shadow:0 4px 16px #ffb3c666}.btn--primary:active:not(:disabled){transform:translateY(0)}.btn--secondary{background:var(--accent-secondary);color:var(--text-main)}.btn--secondary:hover:not(:disabled){background:var(--border-color);transform:translateY(-1px)}.btn--ghost{background:transparent;color:var(--text-main);border:1.5px solid var(--border-color)}.btn--ghost:hover:not(:disabled){background:var(--bg-primary);border-color:var(--accent-primary);color:var(--accent-primary-dark);transform:translateY(-1px)}.btn--danger{background:var(--status-unpaid);color:#fff}.btn--danger:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 16px #e76f5159}.btn:disabled,.btn--loading{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn__spinner{width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:var(--radius-full);animation:btn-spin .7s linear infinite;flex-shrink:0}@keyframes btn-spin{to{transform:rotate(360deg)}}.confirm-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#3a353066;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:99999;display:flex;align-items:center;justify-content:center;padding:max(20px,env(safe-area-inset-top)) 16px max(20px,env(safe-area-inset-bottom));transition:opacity .22s ease-in-out;animation:confirm-overlay-fade-in .22s ease-in-out both}.confirm-dialog-overlay--closing{opacity:0!important;pointer-events:none}.confirm-dialog{width:min(100%,420px);max-width:420px;background:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-modal);border:1px solid var(--border-color);padding:24px;max-height:min(720px,calc(100dvh - 40px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));overflow-y:auto;box-sizing:border-box;display:flex;flex-direction:column;gap:20px;animation:confirm-enter .24s cubic-bezier(.4,0,.2,1) both;transition:transform .22s cubic-bezier(.4,0,.2,1),opacity .22s ease-in-out}.confirm-dialog--closing{transform:translateY(8px) scale(.98)!important;opacity:0!important}.confirm-dialog__header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}.confirm-dialog__icon-wrapper{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--radius-full)}.confirm-dialog__icon{display:block}.confirm-dialog__icon--primary{color:var(--accent-primary-dark);background:#ffb3c626;padding:10px;border-radius:var(--radius-full)}.confirm-dialog__icon--warning{color:var(--status-partial);background:#f4a26126;padding:10px;border-radius:var(--radius-full)}.confirm-dialog__icon--danger{color:var(--status-unpaid);background:#e76f5126;padding:10px;border-radius:var(--radius-full)}.confirm-dialog__title{font-family:var(--font-serif);font-size:1.25rem;font-weight:700;color:var(--text-main);margin:0}.confirm-dialog__body{text-align:center}.confirm-dialog__message{font-family:var(--font-sans);font-size:.95rem;line-height:1.5;color:var(--text-muted);margin:0}.confirm-dialog__reason{display:grid;gap:var(--space-2);margin-top:var(--space-4);color:var(--text-main);font:600 var(--text-sm)/1.35 var(--font-sans);text-align:left}.confirm-dialog__reason textarea{min-height:6rem;padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-main);font:inherit;resize:vertical}.confirm-dialog__reason textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--accent-primary-dark) 45%,transparent);outline-offset:2px}.confirm-dialog__reason small{color:var(--text-muted);font:400 var(--text-xs)/1.35 var(--font-sans)}.confirm-dialog__error{margin:var(--space-3) 0 0;color:var(--status-unpaid);font:500 var(--text-sm)/1.35 var(--font-sans);text-align:left}.confirm-dialog__footer{display:flex;gap:12px;width:100%}.confirm-dialog__btn{flex:1}@keyframes confirm-overlay-fade-in{0%{opacity:0}to{opacity:1}}@keyframes confirm-enter{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:420px){.confirm-dialog{padding:22px 18px;gap:18px}.confirm-dialog__footer{flex-direction:column-reverse}.confirm-dialog__btn{width:100%;min-height:48px}}@media(prefers-reduced-motion:reduce){.confirm-dialog-overlay,.confirm-dialog{animation:none;transition:none}}.sidebar-user-profile{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-2);background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:background-color .2s ease,border-color .2s ease}.sidebar-user-profile:hover{border-color:var(--border-color);box-shadow:var(--shadow-pill-3d)}.sidebar-user-profile__info{display:flex;flex-direction:column;min-width:0;flex-grow:1}.sidebar-user-profile__salon-name{font:600 var(--text-sm) var(--font-sans);color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-profile__user-name{font:400 var(--text-xs) var(--font-sans);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.sidebar-user-profile__logout-btn{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .15s ease;flex-shrink:0;min-width:44px;min-height:44px}.sidebar-user-profile__logout-btn:hover{color:var(--status-unpaid);background-color:var(--status-full-bg);border-color:var(--status-full-border)}.sidebar-user-profile__logout-btn:active{transform:scale(.96)}.sidebar-user-profile__logo{width:32px;height:32px;border-radius:var(--radius-md);object-fit:cover;border:1px solid var(--border-color);flex-shrink:0}.sidebar-user-profile__logo-placeholder{width:32px;height:32px;border-radius:var(--radius-md);background-color:var(--accent-secondary);color:var(--text-main);display:flex;align-items:center;justify-content:center;font:700 var(--text-base) var(--font-sans);flex-shrink:0}@keyframes sidebarFadeIn{0%{opacity:0}to{opacity:1}}.sidebar{display:none;width:260px;background-color:var(--bg-card);border-right:1px solid var(--border-color);padding:var(--space-5) var(--space-4);flex-direction:column;height:100vh;position:sticky;top:0;box-shadow:var(--shadow-card);animation:sidebarFadeIn .25s ease-out forwards}@media(min-width:768px){.sidebar{display:flex}}.sidebar__brand{margin-bottom:var(--space-4);padding:0 var(--space-2)}.sidebar__logo-container{display:flex;align-items:center;cursor:pointer;transition:opacity .2s ease}.sidebar__logo-container:hover{opacity:.85}.sidebar__logo{height:38px;width:auto;max-width:100%;display:block}.sidebar__logo--custom{width:40px;height:40px;border-radius:var(--radius-md);object-fit:cover;border:1px solid var(--border-color)}.sidebar__new-booking-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;min-height:44px;margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--accent-primary-dark);border-radius:var(--radius-md);background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-primary-dark) 100%);color:var(--text-on-accent);font:600 var(--text-sm)/1 var(--font-sans);cursor:pointer;box-shadow:var(--shadow-pill-3d);transition:all .2s ease}.sidebar__new-booking-btn:hover{filter:brightness(1.03);transform:translateY(-1px);box-shadow:var(--shadow-pill-3d-hover)}.sidebar__new-booking-btn:active{transform:scale(.97);box-shadow:var(--shadow-pill-3d-pressed)}.sidebar__nav{display:flex;flex-direction:column;gap:var(--space-2);flex-grow:1}.sidebar__link{display:flex;align-items:center;gap:var(--space-3);color:var(--text-muted);text-decoration:none;font:500 var(--text-sm) var(--font-sans);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);transition:background-color .2s ease,color .2s ease,border-color .2s ease;border:1px solid transparent;min-width:44px;min-height:44px}.sidebar__link:hover{color:var(--text-main);background-color:var(--bg-secondary)}.sidebar__link.active{color:var(--text-main);background-color:var(--bg-primary);border-color:var(--border-color);font-weight:600;box-shadow:var(--shadow-pill-3d)}.sidebar__icon{display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:color .2s ease}.sidebar__bell-wrapper{display:inline-flex;align-items:center;justify-content:center}.sidebar__link:hover .sidebar__icon,.sidebar__link.active .sidebar__icon{color:var(--accent-primary-dark)}.sidebar__link--notif{margin-top:auto;background:none;border:1px solid transparent;text-align:left;width:100%;cursor:pointer;position:relative}.sidebar__link--notif:hover{background-color:var(--bg-secondary)}.sidebar__notif-badge{position:absolute;top:-4px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:var(--radius-full);background:var(--accent-primary-dark);color:var(--text-inverse);font:700 10px/18px var(--font-sans);display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-pill-3d)}.sidebar__notif-badge--red{background:var(--status-unpaid)}@media(prefers-reduced-motion:reduce){.sidebar{animation:none}.sidebar__new-booking-btn,.sidebar__link,.sidebar__icon{transition:none}}.sidebar__footer{border-top:1px solid var(--border-color);padding-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.sidebar__settings-row{display:flex;align-items:center;gap:var(--space-2);width:100%}.sidebar__footer-settings-link,.sidebar__footer-spacer{flex-grow:1}.sidebar__subscription-strip{display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-2) var(--space-2) var(--space-2)}.sidebar__subscription-strip .trial-badge{flex-grow:1;margin:0}.sidebar__theme-toggle{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;flex-shrink:0;min-width:44px;min-height:44px}.sidebar__theme-toggle:hover{color:var(--text-main);background-color:var(--bg-secondary);border-color:var(--border-color);box-shadow:var(--shadow-pill-3d)}.sidebar__theme-toggle:active{transform:scale(.96)}.toast-container{position:fixed;top:var(--space-4);right:var(--space-4);z-index:9999;display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none;max-width:360px;width:calc(100vw - var(--space-8))}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);box-shadow:var(--shadow-modal);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;pointer-events:all;animation:toast-in .3s ease-out forwards;border-left:4px solid transparent}.toast--closing{animation:toast-out .25s ease-in forwards}@keyframes toast-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}.toast--success{background:var(--bg-card);color:var(--text-main);border-left-color:var(--status-paid)}.toast--error{background:var(--bg-card);color:var(--text-main);border-left-color:var(--status-unpaid)}.toast--warning{background:var(--bg-card);color:var(--text-main);border-left-color:var(--status-partial)}.toast--info{background:var(--bg-card);color:var(--text-main);border-left-color:var(--accent-primary)}.toast__icon{font-size:var(--text-base);flex-shrink:0}.toast__message{flex:1;line-height:1.4;white-space:pre-line}.toast__close{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:var(--text-lg);line-height:1;padding:0;flex-shrink:0;transition:var(--transition-fast)}.toast__close:hover{color:var(--text-main)}@media(min-width:768px){.toast-container{top:var(--space-6);right:var(--space-6)}}.bottom-nav{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom,0px));left:16px;right:16px;height:72px;background:linear-gradient(135deg,#ffffff4d,#ffffff26);backdrop-filter:blur(7px) saturate(1.85);-webkit-backdrop-filter:blur(7px) saturate(1.65);border:1px solid rgba(255,255,255,.45);border-top-color:#fffffff2;border-bottom-color:#eadfd0d9;border-radius:9999px;display:flex;justify-content:space-around;align-items:center;z-index:1000;overflow:visible;box-shadow:inset 0 2px #fffffff2,inset 0 -2.5px 5px #5a50461f,0 0 0 1px #5a50460a,0 3px 6px #5a50460a,0 12px 28px #5a504624,0 28px 55px #5a50462e,0 48px 90px #5a50461f;transition:var(--transition-normal)}[data-theme=dark] .bottom-nav{background:linear-gradient(135deg,#ffffff0f,#0000004d);backdrop-filter:blur(7px) saturate(1.9);-webkit-backdrop-filter:blur(7px) saturate(1.9);border:1px solid rgba(255,255,255,.09);border-top-color:#ffffff38;border-bottom-color:#0000008c;box-shadow:inset 0 2px #ffffff38,inset 0 -2.5px 5px #00000073,0 3px 6px #0003,0 12px 28px #00000059,0 28px 55px #00000080,0 48px 90px #0006}@media(min-width:768px){.bottom-nav{display:none}}.bottom-nav__link--disabled{opacity:.35!important;cursor:not-allowed;background:none;border:none}.bottom-nav__lock-badge{position:absolute;bottom:-4px;right:-4px;background-color:var(--bg-card);color:var(--text-muted);border:1px solid var(--border-color);border-radius:50%;width:14px;height:14px;display:flex;align-items:center;justify-content:center}.bottom-nav__link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text-muted);text-decoration:none!important;font-family:var(--font-sans);font-size:10px;font-weight:500;flex:1;height:100%;min-width:44px;border-radius:var(--radius-md);transition:color var(--transition-fast);position:relative;padding:0 4px;opacity:.55;z-index:1}.bottom-nav__link:hover{opacity:.8;color:var(--accent-primary-dark);text-decoration:none!important}.bottom-nav__icon{display:flex;align-items:center;justify-content:center;position:relative;z-index:1}.bottom-nav__icon svg{width:22px;height:22px;stroke:currentColor;fill:none;transition:transform var(--transition-fast),stroke var(--transition-fast)}.bottom-nav__label{line-height:1;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:64px}.bottom-nav__link.active{color:var(--accent-primary-dark);font-weight:700;opacity:1;position:relative;text-decoration:none!important}.bottom-nav__sliding-pill{position:absolute;top:6px;bottom:6px;left:6px;right:6px;border-radius:16px;background:linear-gradient(to bottom,#ffdce4cc,#ffb3c6a6);box-shadow:inset 0 1.5px .5px #fffffff2,inset 0 -1.5px 1.5px #e8829a4d,0 3px 8px #ffb3c673;z-index:0;pointer-events:none}[data-theme=dark] .bottom-nav__sliding-pill{background:linear-gradient(to bottom,#ffb3c647,#e8829a2e);box-shadow:inset 0 1.5px .5px #ffffff2e,0 4px 10px #ffb3c633}.bottom-nav__link.active .bottom-nav__icon,.bottom-nav__link.active .bottom-nav__label{position:relative;z-index:1}.bottom-nav__link.active .bottom-nav__icon svg{transform:translateY(-1px) scale(1.1);filter:drop-shadow(0 2px 4px rgba(232,130,154,.4));animation:nav-icon-settle .24s var(--ease-standard) both}@keyframes nav-icon-settle{0%{transform:translateY(0) scale(1)}55%{transform:translateY(-2px) scale(1.06)}to{transform:translateY(-1px) scale(1.1)}}.bottom-nav__icon-wrapper{position:relative}.bottom-nav__badge{position:absolute;top:-6px;right:-6px;background-color:var(--status-unpaid);color:#fff;font-size:.75rem;font-weight:750;min-width:16px;height:16px;border-radius:9999px;display:inline-flex;align-items:center;justify-content:center;line-height:1;padding:0 4px;box-shadow:0 2px 4px #00000026}.bottom-nav__trial-strip{position:fixed;bottom:calc(96px + env(safe-area-inset-bottom,0px));left:0;right:0;display:flex;justify-content:center;z-index:999;pointer-events:none}.bottom-nav__trial-strip>*{pointer-events:auto}@media(min-width:768px){.bottom-nav__trial-strip{display:none}}.bottom-nav__fab-slot{flex:1;display:flex;align-items:center;justify-content:center;position:relative;height:100%}.bottom-nav__fab{position:absolute;top:-28px;left:50%;transform:translate(-50%);width:58px;height:58px;border-radius:var(--radius-full);border:2.5px solid rgba(255,255,255,.45);background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-primary-dark) 100%);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-fast);box-shadow:inset 0 1px #ffffff80,0 10px 28px #ffb3c68c,0 5px 12px #5a504640,0 2px 4px #5a504626}.bottom-nav__fab:hover{transform:translate(-50%) translateY(-2px) scale(1.06);box-shadow:inset 0 1px #ffffff80,0 14px 36px #ffb3c6a6,0 6px 16px #5a504647,0 2px 4px #5a504626}.bottom-nav__fab:active{transform:translate(-50%) translateY(0) scale(.96);box-shadow:inset 0 2px 4px #5a504633,0 4px 12px #ffb3c666,0 2px 6px #5a504633}.bottom-nav__fab:after{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:var(--radius-full);background:radial-gradient(circle,rgba(255,179,198,.28) 0%,transparent 70%);animation:fab-pulse 2.8s infinite ease-in-out;pointer-events:none}@keyframes fab-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.9;transform:scale(1.18)}}.pwa-prompt-ios{width:100%;text-align:left;display:flex;flex-direction:column;gap:12px;padding:16px;background:#00000005;border-radius:var(--radius-md);border:1px solid var(--border-color)}.pwa-prompt-ios__step{display:flex;align-items:center;gap:12px}.pwa-prompt-ios__step-num{font-family:var(--font-serif);font-size:14px;font-weight:700;background:var(--accent-gold-light);color:var(--accent-gold);width:24px;height:24px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;flex-shrink:0}.pwa-prompt-ios__step-text{font-family:var(--font-sans);font-size:13px;color:var(--text-main);margin:0;display:flex;align-items:center;flex-wrap:wrap;gap:6px}.pwa-prompt-ios__inline-icon{display:inline-flex;align-items:center;color:var(--accent-gold);background:var(--bg-primary);padding:2px;border-radius:4px;border:1px solid var(--border-color)}.pwa-prompt{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:flex;align-items:flex-end;justify-content:center}.pwa-prompt--closing{pointer-events:none}.pwa-prompt__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:pwa-fade-in .25s ease-out forwards}.pwa-prompt--closing .pwa-prompt__overlay{animation:pwa-fade-out .25s ease-out forwards}.pwa-prompt__sheet{position:relative;width:100%;max-width:440px;background:var(--bg-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-modal);padding:var(--space-6) var(--space-5) var(--space-6);animation:pwa-slide-up .3s cubic-bezier(.16,1,.3,1) forwards}.pwa-prompt--closing .pwa-prompt__sheet{animation:pwa-slide-down .25s cubic-bezier(.16,1,.3,1) forwards}.pwa-prompt__gold-border{position:absolute;top:0;inset-inline:0;height:4px;background:linear-gradient(90deg,var(--accent-gold) 0%,var(--accent-primary) 50%,var(--accent-gold) 100%);border-radius:var(--radius-xl) var(--radius-xl) 0 0}.pwa-prompt__close{position:absolute;top:14px;right:14px;width:44px;height:44px;display:grid;place-items:center;background:transparent;border:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-full);transition:var(--transition-fast)}.pwa-prompt__close:hover{background:var(--bg-secondary);color:var(--text-main)}.pwa-prompt__content{display:flex;flex-direction:column;align-items:center;text-align:center}.pwa-prompt__logo{height:32px;margin-bottom:var(--space-3)}.pwa-prompt__title{font:700 var(--text-xl) var(--font-serif);color:var(--text-main);margin:0 0 var(--space-1);letter-spacing:-.01em}.pwa-prompt__desc{font:400 var(--text-sm) var(--font-sans);color:var(--text-muted);margin:0 0 var(--space-4);line-height:1.45}.pwa-prompt-android-steps{width:100%;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color);margin-bottom:var(--space-2)}.pwa-prompt__actions{display:flex;flex-direction:column;width:100%;gap:var(--space-2);margin-top:var(--space-4)}.pwa-prompt__btn-install{min-height:44px;font:700 var(--text-sm) var(--font-sans);background:var(--accent-primary);color:var(--text-on-accent);border:none;padding:0 var(--space-4);border-radius:var(--radius-full);cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-card)}.pwa-prompt__btn-install:hover{background:var(--accent-primary-dark);transform:translateY(-1px)}.pwa-prompt__btn-install:active{transform:scale(.97)}.pwa-prompt__btn-later{min-height:44px;font:600 var(--text-sm) var(--font-sans);background:transparent;color:var(--text-muted);border:1px solid var(--border-color);padding:0 var(--space-4);border-radius:var(--radius-full);cursor:pointer;transition:var(--transition-fast)}.pwa-prompt__btn-later:hover{background:var(--bg-secondary);color:var(--text-main)}.pwa-prompt__btn-later:active{transform:scale(.97)}@keyframes pwa-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes pwa-slide-down{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes pwa-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pwa-fade-out{0%{opacity:1}to{opacity:0}}@media(min-width:480px){.pwa-prompt{align-items:center}.pwa-prompt__sheet{border-radius:var(--radius-xl)}.pwa-prompt__gold-border{border-radius:var(--radius-xl) var(--radius-xl) 0 0}}@media(prefers-reduced-motion:reduce){.pwa-prompt__overlay,.pwa-prompt__sheet,.pwa-prompt__btn-install,.pwa-prompt__btn-later{animation:none!important;transition:none!important;transform:none!important}}.push-permission-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a182675;background:color-mix(in srgb,var(--bg-primary) 58%,transparent);backdrop-filter:blur(8px) saturate(.9);-webkit-backdrop-filter:blur(8px) saturate(.9);z-index:9999;display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:pushPermissionFadeIn .24s ease-out}.push-permission-overlay--closing{pointer-events:none;animation:pushPermissionFadeOut .18s cubic-bezier(.4,0,1,1) forwards}.push-permission-modal{position:relative;background:var(--bg-surface);border:none;border-radius:30px;width:100%;max-width:448px;max-height:100%;overflow-y:auto;padding:36px var(--space-8) var(--space-6);box-shadow:var(--shadow-modal);text-align:center;animation:pushPermissionScale .32s cubic-bezier(.16,1,.3,1)}.push-permission-modal--closing{animation:pushPermissionScaleOut .18s cubic-bezier(.4,0,1,1) forwards}.push-permission-modal__close-btn{position:absolute;top:var(--space-3);right:var(--space-3);background:transparent;border:none;color:var(--text-muted);cursor:pointer;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:var(--transition-fast)}.push-permission-modal__close-btn:hover{color:var(--text-main);background:var(--bg-primary)}.push-permission-modal__close-btn:focus-visible,.push-permission-modal__btn:focus-visible{outline:3px solid var(--accent-secondary);outline-offset:3px}.push-permission-modal__icon-row{display:flex;justify-content:center;margin-bottom:var(--space-6)}.push-permission-modal__icon-wrapper{width:76px;height:76px;border-radius:var(--radius-full);background:var(--bg-primary);background:color-mix(in srgb,var(--accent-primary) 14%,var(--bg-surface));border:2px solid var(--bg-surface);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px var(--accent-secondary),0 8px 20px color-mix(in srgb,var(--accent-primary) 22%,transparent)}.push-permission-modal__bell-icon{color:var(--accent-primary);animation:bellPulse 2.8s .7s infinite ease-in-out}.push-permission-modal__icon--denied{color:var(--status-unpaid);animation:none}.push-permission-modal__title{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:700;color:var(--text-main);margin:0 auto var(--space-3);max-width:18ch;line-height:1.18;letter-spacing:-.025em;text-wrap:balance}.push-permission-modal__desc{font-size:var(--text-base);color:var(--text-muted);margin:0 auto var(--space-5);max-width:32ch;line-height:1.5;text-wrap:balance}.push-permission-modal__quick-guide{display:flex;align-items:center;justify-content:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:600;color:var(--accent-primary);background:var(--bg-primary);background:color-mix(in srgb,var(--accent-primary) 8%,var(--bg-surface));padding:10px var(--space-3);border-radius:var(--radius-full);border:1px solid color-mix(in srgb,var(--accent-primary) 23%,var(--border-color));margin:0 auto var(--space-8);width:fit-content;max-width:100%;line-height:1.35}.push-permission-modal__content:not(.push-permission-modal__content--with-guide){margin-bottom:var(--space-8)}.push-permission-modal__quick-guide{color:var(--status-partial);background:var(--bg-primary);border-color:color-mix(in srgb,var(--status-partial) 30%,var(--border-color))}.push-permission-modal__actions{display:flex;flex-direction:column;gap:var(--space-3)}.push-permission-modal__btn{width:100%;min-height:58px;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:700;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);transition:var(--transition-fast)}.push-permission-modal__btn:hover:not(:disabled){transform:translateY(-2px)}.push-permission-modal__btn:active:not(:disabled){transform:translateY(0) scale(.985)}.push-permission-modal__btn:disabled{cursor:wait;opacity:.72}.push-permission-modal__btn--primary{background:var(--accent-primary);color:var(--text-on-accent);box-shadow:0 8px 18px color-mix(in srgb,var(--accent-primary) 28%,transparent)}.push-permission-modal__btn--primary:hover:not(:disabled){background:var(--accent-primary-dark);box-shadow:0 10px 22px color-mix(in srgb,var(--accent-primary) 34%,transparent)}.push-permission-modal__btn--ghost{background:transparent;border:1.5px solid var(--text-main);color:var(--text-main)}.push-permission-modal__btn--ghost:hover{background:var(--bg-primary)}@keyframes pushPermissionFadeIn{0%{opacity:0}to{opacity:1}}@keyframes pushPermissionFadeOut{0%{opacity:1}to{opacity:0}}@keyframes pushPermissionScale{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pushPermissionScaleOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(5px) scale(.985)}}@keyframes bellPulse{0%,to{transform:rotate(0)}15%{transform:rotate(12deg)}30%{transform:rotate(-10deg)}45%{transform:rotate(6deg)}}@media(max-width:480px){.push-permission-overlay{padding:var(--space-3)}.push-permission-modal{border-radius:var(--radius-xl);padding:32px var(--space-5) var(--space-5)}.push-permission-modal__icon-row{margin-bottom:var(--space-5)}.push-permission-modal__icon-wrapper{width:68px;height:68px}.push-permission-modal__title{font-size:var(--text-xl)}.push-permission-modal__desc{font-size:var(--text-sm)}.push-permission-modal__quick-guide{margin-bottom:var(--space-6)}}@media(prefers-reduced-motion:reduce){.push-permission-overlay,.push-permission-overlay--closing,.push-permission-modal,.push-permission-modal--closing,.push-permission-modal__bell-icon,.push-permission-modal__btn{animation:none;transition:none}}.orientation-warning{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;background:#f7f3eaf5;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);align-items:center;justify-content:center;padding:var(--space-4)}@media screen and (orientation:landscape)and (max-height:550px)and (max-width:980px){.orientation-warning{display:flex}}.orientation-warning__card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-6);max-width:420px;width:100%;text-align:center;box-shadow:var(--shadow-modal);position:relative;overflow:hidden;animation:warningCardFadeUp .4s ease-out}.orientation-warning__gold-border{position:absolute;top:0;left:0;right:0;height:4px;background:var(--rose-gold-border)}.orientation-warning__content{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);margin-top:var(--space-2)}.orientation-warning__animation-container{width:90px;height:90px;display:flex;align-items:center;justify-content:center}.orientation-warning__svg{width:100%;height:100%}.orientation-warning__device{transform-origin:50px 50px;animation:rotateDevice 2.6s cubic-bezier(.65,0,.35,1) infinite}.orientation-warning__rotation-path{opacity:.6}.orientation-warning__arrow-tip{opacity:.85}.orientation-warning__title{font-family:var(--font-serif);color:var(--text-main);font-size:1.25rem;font-weight:600;margin:0}.orientation-warning__desc{font-family:var(--font-sans);color:var(--text-muted);font-size:.88rem;line-height:1.45;margin:0}@keyframes rotateDevice{0%{transform:rotate(-90deg)}30%,75%{transform:rotate(0)}95%,to{transform:rotate(-90deg)}}@keyframes warningCardFadeUp{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.reb__overlay{display:flex;align-items:center;justify-content:center;height:100%;min-height:60vh;padding:2rem;background:var(--bg-primary)}.reb__card{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 2rem;border-radius:var(--radius-lg);background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-card);max-width:320px;width:100%;text-align:center}.reb__icon{font-size:2.5rem;line-height:1}.reb__title{font-family:var(--font-serif);font-size:1.15rem;color:var(--text-main);margin:0}.reb__desc{font-family:var(--font-sans);font-size:.875rem;color:var(--text-muted);margin:0;line-height:1.5}.reb__btn{margin-top:.5rem;padding:.65rem 1.75rem;border-radius:var(--radius-md);background:var(--accent-primary);color:var(--text-main);font-family:var(--font-sans);font-size:.9rem;font-weight:600;border:none;cursor:pointer;transition:var(--transition-fast);min-height:44px}.reb__btn:hover:not(:disabled){background:var(--accent-primary-dark);color:#fff;transform:translateY(-1px)}.reb__btn--loading{opacity:.7;cursor:not-allowed}.spinner{display:inline-block;border-radius:var(--radius-full);border-style:solid;border-color:var(--border-color);border-top-color:var(--accent-primary);animation:spin .7s linear infinite;flex-shrink:0}.spinner--sm{width:16px;height:16px;border-width:2px}.spinner--md{width:28px;height:28px;border-width:3px}.spinner--lg{width:44px;height:44px;border-width:4px}@keyframes spin{to{transform:rotate(360deg)}}.paywall-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#3a353073;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;justify-content:center;align-items:center;z-index:99999;padding:20px;box-sizing:border-box;animation:fadeIn .4s ease-out forwards}.paywall-overlay__card{background:var(--bg-card);border:1.5px solid var(--border-color);box-shadow:var(--shadow-modal);border-radius:var(--radius-lg);max-width:440px;width:100%;padding:32px;box-sizing:border-box;text-align:center;animation:slideUp .4s cubic-bezier(.16,1,.3,1) forwards}.paywall-overlay__badge{display:inline-block;background:var(--accent-primary);color:var(--text-main);font-family:var(--font-sans);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;padding:4px 12px;border-radius:var(--radius-full);margin-bottom:20px;border:1px solid var(--accent-primary-dark)}.paywall-overlay__title{font-family:var(--font-serif);font-size:24px;color:var(--text-main);margin:0 0 12px;line-height:1.25}.paywall-overlay__description{font-family:var(--font-sans);font-size:14px;color:var(--text-muted);margin:0 0 28px;line-height:1.5}.paywall-overlay__features{text-align:left;margin-bottom:32px;display:flex;flex-direction:column;gap:18px}.paywall-overlay__feature-item{display:flex;gap:14px;align-items:flex-start}.paywall-overlay__feature-icon{font-size:20px;flex-shrink:0;line-height:1;margin-top:2px}.paywall-overlay__feature-text strong{display:block;font-family:var(--font-sans);font-size:14px;color:var(--text-main);margin-bottom:2px}.paywall-overlay__feature-text p{margin:0;font-family:var(--font-sans);font-size:12px;color:var(--text-muted);line-height:1.4}.paywall-overlay__btn{width:100%;padding:14px;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);color:var(--text-main);border:none;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:15px;font-weight:600;cursor:pointer;box-shadow:0 4px 14px #ffb3c659;transition:var(--transition-normal)}.paywall-overlay__btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ffb3c680;filter:brightness(.98)}.paywall-overlay__btn:active{transform:translateY(0);box-shadow:0 2px 8px #ffb3c64d}@keyframes slideUp{0%{transform:translateY(40px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.suspension-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#3a35308c;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;justify-content:center;align-items:center;z-index:99999;padding:20px;box-sizing:border-box;animation:fadeIn .4s ease-out forwards}.suspension-overlay__card{background:var(--bg-card);border:1.5px solid var(--border-color);box-shadow:var(--shadow-modal);border-radius:var(--radius-lg);max-width:420px;width:100%;padding:40px 32px;box-sizing:border-box;text-align:center;animation:slideUp .4s cubic-bezier(.16,1,.3,1) forwards}.suspension-overlay__icon{font-size:48px;margin-bottom:20px}.suspension-overlay__title{font-family:var(--font-serif);font-size:26px;color:var(--text-main);margin:0 0 16px;line-height:1.2}.suspension-overlay__description{font-family:var(--font-sans);font-size:15px;color:var(--text-muted);margin:0 0 32px;line-height:1.6}.suspension-overlay__support{background:var(--bg-surface);border:1px solid var(--border-color);padding:16px;border-radius:var(--radius-md)}.suspension-overlay__support p{margin:0 0 8px;font-family:var(--font-sans);font-size:13px;color:var(--text-muted)}.suspension-overlay__link{font-family:var(--font-sans);font-size:14px;font-weight:600;color:var(--accent-primary-dark);text-decoration:none;transition:var(--transition-fast)}.suspension-overlay__link:hover{text-decoration:underline;opacity:.8}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(24px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.phone-hygiene-banner{display:flex;align-items:center;justify-content:space-between;background-color:color-mix(in srgb,var(--status-partial) 8%,var(--bg-card));border-bottom:1px solid color-mix(in srgb,var(--status-partial) 15%,var(--border-color));padding:var(--space-3) var(--space-6);width:100%;position:sticky;top:0;z-index:1010;font-family:var(--font-sans);gap:var(--space-4);box-shadow:var(--shadow-card)}.phone-hygiene-banner__content{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3);flex:1}.phone-hygiene-banner__icon{color:var(--status-partial);flex-shrink:0}.phone-hygiene-banner__text{font-size:var(--text-sm);color:var(--text-muted);line-height:1.45}.phone-hygiene-banner__text strong{font-weight:700;color:var(--text-main)}.phone-hygiene-banner__action,.phone-hygiene-banner__close{background:none;border:none;color:var(--status-partial);cursor:pointer;font-family:inherit;transition:var(--transition-fast);min-height:44px;display:inline-flex;align-items:center}.phone-hygiene-banner__action{font-weight:700;font-size:var(--text-sm);text-decoration:underline;white-space:nowrap;margin-left:var(--space-1)}.phone-hygiene-banner__action:hover{color:color-mix(in srgb,var(--status-partial) 80%,var(--text-main))}.phone-hygiene-banner__close{justify-content:center;border-radius:var(--radius-full);min-width:44px;padding:var(--space-1)}.phone-hygiene-banner__close:hover{background-color:color-mix(in srgb,var(--status-partial) 8%,transparent)}@media(max-width:768px){.phone-hygiene-banner{padding:var(--space-2) var(--space-4);align-items:flex-start}.phone-hygiene-banner__content{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.phone-hygiene-banner__icon{margin-top:var(--space-1)}.phone-hygiene-banner__text{font-size:var(--text-xs)}.phone-hygiene-banner__action{margin-top:var(--space-1);font-size:var(--text-xs);margin-left:0}.phone-hygiene-banner__close{margin-top:calc(-1 * var(--space-1))}}.offline-pro-gate{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-overlay);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);display:flex;justify-content:center;align-items:center;z-index:99999;padding:var(--space-5);box-sizing:border-box}.offline-pro-gate__card{background:var(--bg-card);border:1.5px solid var(--border-color);box-shadow:var(--shadow-modal);border-radius:var(--radius-xl);max-width:420px;width:100%;padding:var(--space-8) var(--space-7);box-sizing:border-box;text-align:center;animation:offlineGateSlideUp .38s cubic-bezier(.16,1,.3,1) forwards}.offline-pro-gate__icon{width:56px;height:56px;background:var(--bg-surface);border:1.5px solid var(--border-color);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:26px;margin:0 auto var(--space-4)}.offline-pro-gate__badge{display:inline-block;background:var(--accent-primary);color:var(--text-inverse);font-family:var(--font-sans);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);margin-bottom:var(--space-4)}.offline-pro-gate__title{font-family:var(--font-serif);font-size:var(--text-xl);color:var(--text-main);margin:0 0 var(--space-3) 0;line-height:1.25}.offline-pro-gate__desc{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-muted);margin:0 0 var(--space-6) 0;line-height:1.55}.offline-pro-gate__features{text-align:left;display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-7)}.offline-pro-gate__feature{display:flex;gap:var(--space-3);align-items:flex-start}.offline-pro-gate__feature-icon{font-size:18px;flex-shrink:0;margin-top:1px}.offline-pro-gate__feature-body strong{display:block;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;color:var(--text-main);margin-bottom:2px}.offline-pro-gate__feature-body p{margin:0;font-family:var(--font-sans);font-size:var(--text-xs);color:var(--text-muted);line-height:1.4}.offline-pro-gate__cta{display:block;width:100%;padding:var(--space-4);background:var(--accent-primary);color:var(--text-inverse);border:none;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:700;cursor:pointer;min-height:44px;transition:var(--transition-fast);box-shadow:0 4px 14px #ffb3c659;margin-bottom:var(--space-3)}.offline-pro-gate__cta:hover{background:var(--accent-primary-dark);transform:translateY(-1px)}.offline-pro-gate__cta:active{transform:scale(.98)}@keyframes offlineGateSlideUp{0%{transform:translateY(28px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.app-shell-root{display:flex;flex-direction:column;min-height:100vh;width:100%}.app-shell{display:flex;flex-direction:column;flex-grow:1;width:100%}@media(min-width:768px){.app-shell{flex-direction:row}}.app-shell__content{flex-grow:1;padding:var(--space-4) var(--space-4) calc(108px + env(safe-area-inset-bottom,0px)) var(--space-4);display:flex;flex-direction:column;background-color:var(--bg-primary);min-height:100vh}@media(min-width:768px){.app-shell__content{padding:var(--space-8)}}.app-shell__page-fallback{display:flex;align-items:center;justify-content:center;flex:1;min-height:40vh}.app-shell__page-wrapper{flex-grow:1;display:flex;flex-direction:column;width:100%;min-height:0}.network-status-banner{position:fixed;top:0;left:0;right:0;z-index:1200;background-color:var(--status-unpaid);color:#fff;text-align:center;font-family:var(--font-sans);font-size:.9rem;font-weight:500;padding:8px 16px;box-shadow:0 4px 16px #e76f5133;display:flex;justify-content:center;align-items:center;gap:8px}.network-status-banner__icon{font-size:1.1rem}.app-shell__content--calendar{height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;overflow:hidden;padding:0!important}@media(min-width:768px){.app-shell__content--calendar{padding:0!important}}.app-shell__content--calendar .app-shell__page-wrapper{height:100%}.trial-warning-banner{position:fixed;top:0;left:0;right:0;z-index:1199;background-color:#f4a261;color:#3a3530;text-align:center;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;padding:var(--space-2) var(--space-4);box-shadow:0 4px 16px #f4a26133;display:flex;justify-content:center;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border-color)}.trial-banner-cta{background-color:#3a3530;color:#f7f3ea;padding:4px 10px;border-radius:var(--radius-sm);text-decoration:none;font-size:var(--text-xs);font-weight:700;transition:var(--transition-fast);display:inline-block;line-height:1.2}.trial-banner-cta:hover{background-color:#f7f3ea;color:#3a3530;box-shadow:0 0 0 1px #3a3530}.app-shell--trial-banner{padding-top:36px}.off-hours-lockout{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:var(--bg-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:99999;padding:var(--space-6);text-align:center;font-family:var(--font-sans);animation:lockoutFadeIn .3s var(--ease-standard) forwards}@keyframes lockoutFadeIn{0%{opacity:0}to{opacity:1}}.off-hours-lockout__content{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:400px;width:100%}.off-hours-lockout__logo,.off-hours-lockout__logo-fallback{width:64px;height:64px;border-radius:var(--radius-full);margin-bottom:var(--space-4);animation:lockoutStaggeredFade .3s var(--ease-standard) 50ms both}.off-hours-lockout__logo{object-fit:cover}.off-hours-lockout__logo-fallback{display:flex;align-items:center;justify-content:center;background-color:var(--bg-secondary);color:var(--text-main);font-size:var(--text-2xl);font-weight:var(--font-bold);border:1px solid var(--border-main)}.off-hours-lockout__emoji-container{font-size:54px;margin-bottom:var(--space-6);display:inline-block;animation:lockoutStaggeredFade .3s var(--ease-standard) .1s both}.off-hours-lockout__title{font-size:var(--text-2xl);font-family:var(--font-serif);color:var(--text-main);margin-bottom:var(--space-3);animation:lockoutStaggeredFade .3s var(--ease-standard) .15s both}.off-hours-lockout__description{font-size:var(--text-sm);color:var(--text-muted);max-width:320px;line-height:1.6;margin-bottom:var(--space-8);animation:lockoutStaggeredFade .3s var(--ease-standard) .2s both}.off-hours-lockout__actions{display:flex;flex-direction:column;gap:var(--space-3);width:100%;max-width:280px;animation:lockoutStaggeredFade .3s var(--ease-standard) .25s both}@keyframes lockoutStaggeredFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.off-hours-lockout__btn{min-height:48px;padding:0 var(--space-6);border-radius:var(--radius-lg);font-family:var(--font-sans);font-weight:var(--font-medium);font-size:var(--text-sm);display:flex;align-items:center;justify-content:center;gap:var(--space-2);cursor:pointer;width:100%;box-sizing:border-box;transition:all .2s var(--ease-standard)}.off-hours-lockout__btn--secondary{background-color:transparent;border:1px solid var(--border-main);color:var(--text-main)}.off-hours-lockout__btn--secondary:hover:not(:disabled){background-color:var(--bg-secondary);border-color:var(--border-hover)}.off-hours-lockout__btn--primary{background-color:var(--bg-secondary);border:1px solid var(--border-main);color:var(--text-main)}.off-hours-lockout__btn--primary:hover:not(:disabled){background-color:var(--border-main);border-color:var(--border-hover)}.off-hours-lockout__btn:active:not(:disabled){transform:scale(.97)}.off-hours-lockout__btn:disabled{opacity:.6;cursor:not-allowed}.off-hours-lockout__btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--bg-primary),0 0 0 4px var(--border-hover)}.btn-icon{flex-shrink:0}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.impersonation-banner{position:relative;z-index:10000;display:flex;width:100%;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--accent-primary);background:var(--accent-secondary);color:var(--text-main);font:600 var(--text-sm)/1.35 var(--font-sans);animation:impersonation-banner-in var(--modal-in-duration) ease-in-out both}.impersonation-banner--leaving{animation-name:impersonation-banner-out}.impersonation-banner__content{display:flex;align-items:center;gap:var(--space-2)}.impersonation-banner__content svg{flex:0 0 auto;color:var(--accent-primary-dark)}.impersonation-banner__exit-btn{display:inline-flex;min-width:2.75rem;min-height:2.75rem;align-items:center;justify-content:center;gap:var(--space-2);border:1px solid var(--accent-primary);border-radius:var(--radius-md);background:var(--bg-card);color:var(--accent-primary-dark);font:700 var(--text-sm)/1 var(--font-sans);cursor:pointer;transition:var(--transition-normal)}.impersonation-banner__exit-btn:hover{background:var(--accent-primary);color:var(--text-on-accent)}.impersonation-banner__exit-btn:active{transform:scale(.96)}.impersonation-banner__exit-btn:disabled{cursor:wait;opacity:.7}@keyframes impersonation-banner-in{0%{opacity:0;transform:translateY(calc(var(--space-3) * -1))}to{opacity:1;transform:translateY(0)}}@keyframes impersonation-banner-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(calc(var(--space-3) * -1))}}@media(max-width:30rem){.impersonation-banner{align-items:flex-start}.impersonation-banner__exit-btn span{display:none}}.route-handoff{width:100%;min-height:100vh;display:flex;flex-direction:column}.full-page-spinner{display:flex;justify-content:center;align-items:center;height:100vh;background:var(--bg-primary)}.pwa-update-prompt{position:fixed;z-index:1200;right:max(var(--space-5),env(safe-area-inset-right));bottom:max(var(--space-5),env(safe-area-inset-bottom));display:flex;align-items:flex-start;gap:var(--space-3);width:min(calc(100% - var(--space-10)),520px);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-modal);color:var(--text-main);animation:pwa-update-prompt-enter var(--modal-in-duration) var(--ease-standard) both}.pwa-update-prompt__icon{display:grid;flex:0 0 40px;width:40px;height:40px;place-items:center;border-radius:50%;background:var(--bg-tertiary);color:var(--accent-primary-dark)}.pwa-update-prompt__icon--updating svg{animation:pwa-update-prompt-spin .9s linear infinite}.pwa-update-prompt__content{display:grid;min-width:0;flex:1;gap:var(--space-3)}.pwa-update-prompt__copy{display:grid;min-width:0;gap:var(--space-1)}.pwa-update-prompt__copy strong{font:650 var(--text-base) var(--font-sans);line-height:1.3}.pwa-update-prompt__copy span{color:var(--text-muted);font:400 var(--text-sm) var(--font-sans);line-height:1.45;overflow-wrap:anywhere}.pwa-update-prompt__error{color:var(--status-unpaid)!important;font-weight:600!important}.pwa-update-prompt__actions{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-2)}.pwa-update-prompt button{min-height:44px;padding:0 var(--space-3);border:0;border-radius:var(--radius-full);cursor:pointer;font:600 var(--text-sm) var(--font-sans)}.pwa-update-prompt button:disabled{cursor:wait;opacity:.65}.pwa-update-prompt__later{background:transparent;color:var(--text-muted)}.pwa-update-prompt__later:hover{color:var(--text-main)}.pwa-update-prompt__apply{background:var(--accent-primary);color:var(--text-on-accent);box-shadow:var(--shadow-card)}.pwa-update-prompt__apply:hover{background:var(--accent-primary-dark)}.pwa-update-prompt button:focus-visible{outline:2px solid var(--accent-primary-dark);outline-offset:3px}.pwa-update-prompt--closing{animation:pwa-update-prompt-exit var(--modal-out-duration) var(--ease-standard) both;pointer-events:none}@keyframes pwa-update-prompt-enter{0%{opacity:0;transform:translateY(var(--space-3))}to{opacity:1;transform:translateY(0)}}@keyframes pwa-update-prompt-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(var(--space-3))}}@keyframes pwa-update-prompt-spin{to{transform:rotate(1turn)}}@media(max-width:576px){.pwa-update-prompt{right:var(--space-3);bottom:calc(76px + env(safe-area-inset-bottom));left:var(--space-3);width:auto;align-items:flex-start;padding:var(--space-4)}.pwa-update-prompt__actions{width:100%;justify-content:stretch}.pwa-update-prompt button{flex:1}}@media(prefers-reduced-motion:reduce){.pwa-update-prompt,.pwa-update-prompt--closing,.pwa-update-prompt__icon--updating svg{animation:none}}.access-denied-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:100000;padding:var(--space-4)}.access-denied-modal{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:20px;box-shadow:var(--shadow-xl);width:100%;max-width:440px;display:flex;flex-direction:column;overflow:hidden}.access-denied-modal__header{display:flex;justify-content:flex-end;padding:var(--space-3) var(--space-3) 0 0}.access-denied-modal__close{background:none;border:none;cursor:pointer;color:var(--text-secondary);padding:var(--space-2);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);min-width:44px;min-height:44px}.access-denied-modal__close:hover{background:var(--bg-secondary);color:var(--text-primary)}.access-denied-modal__body{padding:0 var(--space-5) var(--space-4) var(--space-5);display:flex;flex-direction:column;align-items:center;text-align:center}.access-denied-modal__icon-wrap{display:flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%;background:var(--accent-light, rgba(212, 132, 154, .1));color:var(--error-color, #ef4444);margin-bottom:var(--space-4)}.access-denied-modal__title{font-size:20px;font-weight:600;color:var(--text-primary);margin:0 0 var(--space-2) 0}.access-denied-modal__desc{font-size:14px;color:var(--text-secondary);line-height:1.5;margin:0 0 var(--space-4) 0}.access-denied-modal__banner{border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);width:100%;text-align:left}.access-denied-modal__banner-text{font-size:12px;line-height:1.5;margin:0}.access-denied-modal__banner--worker,.access-denied-modal__banner--secretary{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary)}.access-denied-modal__banner--manager{background:linear-gradient(135deg,#ffb3c626,#f3e5ab26);border:1.5px solid var(--accent-primary);position:relative}.access-denied-modal__banner--manager .access-denied-modal__banner-text{color:var(--text-primary);font-weight:500}.access-denied-modal__footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-color);display:flex;justify-content:center}.access-denied-modal__btn-primary{width:100%;background:var(--accent-primary);color:var(--bg-primary);border:none;padding:12px var(--space-4);border-radius:8px;font-weight:600;cursor:pointer;transition:background var(--transition-normal);min-height:44px}.access-denied-modal__btn-primary:hover{background:var(--accent-dark, #bd7084)}.profile-verification-error{min-height:100dvh;display:grid;place-items:center;padding:max(24px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom));background:var(--bg-primary);color:var(--text-main);font-family:var(--font-sans)}.profile-verification-error__card{width:min(100%,430px);padding:clamp(28px,7vw,42px);border:1px solid var(--border-color);border-radius:var(--radius-xl);background:var(--bg-surface);box-shadow:var(--shadow-card);text-align:center}.profile-verification-error__icon{width:48px;height:48px;margin-inline:auto;display:grid;place-items:center;border-radius:var(--radius-full);color:var(--accent-primary-dark);background:color-mix(in srgb,var(--accent-primary) 24%,var(--bg-surface))}.profile-verification-error h1{margin:18px 0 8px;font:700 clamp(1.35rem,5vw,1.65rem) / 1.2 var(--font-sans)}.profile-verification-error p{margin:0;color:var(--text-muted);font-size:var(--text-base);line-height:1.55}.profile-verification-error button{min-height:48px;margin-top:24px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:var(--radius-md);background:var(--accent-primary);color:var(--text-on-accent);font:700 var(--text-base) var(--font-sans);cursor:pointer;transition:opacity .18s ease-in-out,transform .18s ease-in-out}.profile-verification-error button:hover:not(:disabled){transform:translateY(-1px)}.profile-verification-error button:focus-visible{outline:3px solid var(--accent-primary-dark);outline-offset:3px}.profile-verification-error button:disabled{cursor:wait;opacity:.65}.profile-verification-error__spin{animation:profile-verification-spin .8s linear infinite}@keyframes profile-verification-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.profile-verification-error button{transition:none}.profile-verification-error__spin{animation:none}}
