.btn{border-radius:12px;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-weight:700;text-align:center;transition:all .2s;font-family:inherit}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background-color:var(--color-accent, #d4af37);color:var(--color-text-on-primary, #ffffff);box-shadow:0 4px 12px #d4af3766;border:1px solid #f4d03f}.btn-primary:hover:not(:disabled){background-color:#b8941f;transform:translateY(-1px)}.btn-secondary{background-color:var(--color-bg-secondary, #f8f8f8);color:var(--color-text-main, #050505);border:1px solid var(--color-border, #e5e5e5)}.btn-outline{background-color:transparent;color:var(--color-accent, #d4af37);border:2px solid var(--color-accent, #d4af37)}.btn-outline:hover:not(:disabled){background-color:#d4af371a}.btn-ghost{background-color:transparent;color:var(--color-text-main, #050505)}.btn-sm{padding:10px 16px;min-height:40px;font-size:14px}.btn-md{padding:14px 24px;min-height:48px;font-size:16px}.btn-lg{padding:18px 32px;min-height:56px;font-size:18px}.btn-full-width{width:100%}.btn-loading{display:inline-block;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.card{background-color:var(--color-card, #ffffff);border-radius:16px;padding:20px;border:1px solid var(--color-border, #e5e5e5)}.card-elevated{box-shadow:0 8px 16px #00000080;border:1px solid var(--color-border, #e5e5e5);background-color:var(--color-card-elevated, #f4f4f4)}.card[role=button]{cursor:pointer;transition:transform .2s,box-shadow .2s}.card[role=button]:hover{transform:translateY(-2px);box-shadow:0 12px 24px #00000026}.card[role=button]:focus{outline:2px solid var(--color-accent, #d4af37);outline-offset:2px}.input-container{margin-bottom:16px}.input-label{display:block;font-size:12px;font-weight:700;color:var(--color-text-main, #050505);margin-bottom:8px}.input-field{width:100%;font-size:16px;font-weight:400;line-height:24px;background-color:var(--color-bg, #ffffff);border:1px solid var(--color-border, #e5e5e5);border-radius:12px;padding:14px 16px;color:var(--color-text-main, #050505);min-height:48px;font-family:inherit;box-sizing:border-box}.input-field:focus{outline:none;border-color:var(--color-accent, #d4af37);box-shadow:0 0 0 3px #d4af371a}.input-field::placeholder{color:var(--color-text-muted, #6b6b6b)}.input-field-error{border-color:var(--color-error, #c41e3a)}.input-error{display:block;font-size:14px;font-weight:500;color:var(--color-error, #c41e3a);margin-top:4px}.input-helper{display:block;font-size:14px;font-weight:500;color:var(--color-text-muted, #6b6b6b);margin-top:4px}.input-field[type=textarea],textarea.input-field{resize:vertical;min-height:80px}.login-screen{min-height:100vh;height:100vh;overflow-y:auto;-webkit-overflow-scrolling:touch;background-color:var(--color-bg-primary, #f8f9fa);padding:24px 16px 48px}.login-scroll-content{max-width:500px;margin:0 auto}.login-logo-container{width:140px;height:140px;margin:0 auto 24px;border-radius:70px;overflow:hidden;background-color:var(--color-bg, #ffffff);box-shadow:0 8px 16px #0000004d;border:3px solid var(--color-border-light, #f0f0f0)}.login-logo{width:100%;height:100%;object-fit:contain}.login-title{font-size:36px;font-weight:900;color:var(--color-text-main, #050505);text-align:center;margin:0 0 4px;letter-spacing:2px}.login-subtitle{font-size:16px;color:var(--color-text-secondary, #1f1f1f);text-align:center;margin:0 0 32px;letter-spacing:1px;text-transform:uppercase}.login-banner-container{width:100%;margin-bottom:32px;border-radius:16px;overflow:hidden;box-shadow:0 4px 8px #0006}.login-instructions-card{margin-bottom:32px;background-color:var(--color-bg-secondary, #f8f8f8)}.login-instructions-title{font-size:22px;font-weight:700;color:var(--color-text-main, #050505);margin-bottom:12px;text-align:center}.login-instructions-text{font-size:16px;color:var(--color-text-secondary, #1f1f1f);margin-bottom:24px;text-align:center}.login-instructions-section{margin-bottom:24px}.login-instructions-platform{font-size:18px;font-weight:700;color:var(--color-text-main, #050505);margin-bottom:16px}.login-step{display:flex;margin-bottom:12px;align-items:flex-start}.login-step-number{font-size:16px;font-weight:700;color:var(--color-accent, #d4af37);width:28px;height:28px;border-radius:14px;background-color:var(--color-bg-secondary, #f8f8f8);text-align:center;line-height:28px;margin-right:12px;flex-shrink:0}.login-step-text{font-size:16px;color:var(--color-text-main, #050505);flex:1;line-height:22px}.login-install-button-container{margin-top:24px}.login-install-hint{font-size:14px;color:var(--color-text-muted, #6b6b6b);text-align:center;margin-top:8px}.login-ios-note{margin-top:16px;padding:16px;background-color:var(--color-bg-secondary, #f8f8f8);border-radius:12px}.login-ios-note-text{font-size:12px;color:var(--color-text-secondary, #1f1f1f);text-align:center;margin:0}.login-form-card{margin-top:24px}.login-form-title{font-size:28px;font-weight:800;color:var(--color-text-main, #050505);margin-bottom:4px;text-align:center}.login-form-subtitle{font-size:16px;color:var(--color-text-secondary, #1f1f1f);margin-bottom:24px;text-align:center}.login-error-container{background-color:#dc354533;border:1px solid var(--color-error, #c41e3a);border-radius:12px;padding:16px;margin-bottom:16px}.login-error-text{font-size:16px;color:var(--color-error, #c41e3a);text-align:center;margin:0}.login-button-row{display:flex;gap:8px;margin-top:16px}.login-button-row>button{flex:1}.logo-header-container{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-lg, 1.5rem) var(--spacing-md, 1rem);background-color:var(--color-bg, #ffffff);position:relative}.cart-button{position:absolute;top:var(--spacing-sm, 8px);right:calc(var(--spacing-md, 1rem) - .25rem);padding:var(--spacing-sm, 8px) var(--spacing-md, 1rem);border-radius:var(--radius-2xl, 20px);background-color:#f8d37f;border:none;cursor:pointer;display:flex;align-items:center;gap:calc(var(--spacing-sm, 8px) - .125rem);box-shadow:var(--shadow-md);font-weight:var(--font-weight-bold, 700);color:var(--color-text-main, #1a1a1a);font-size:var(--text-md, 1rem)}.cart-button:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}.logo-with-hat{margin-bottom:var(--spacing-md, 1rem)}.logo-circle{width:140px;height:140px;border-radius:70px;overflow:hidden;background-color:var(--color-bg, #ffffff);box-shadow:var(--shadow-lg);border:4px solid var(--color-text-main, #000);display:flex;align-items:center;justify-content:center}.rotating-logo{width:100%;height:100%;object-fit:cover}.restaurant-name{font-size:var(--title-2xl, 2.25rem);font-weight:var(--font-weight-black, 900);color:var(--color-text-main, #050505);margin:0 0 var(--spacing-xs, 4px) 0;letter-spacing:2px;text-align:center}.restaurant-subtitle{font-size:var(--text-md, 1rem);color:var(--color-text-secondary, #1f1f1f);margin:0 0 var(--spacing-lg, 1.5rem) 0;letter-spacing:1px;text-transform:uppercase;text-align:center}.restaurant-name--left,.restaurant-subtitle--left{text-align:left}.logo-header-container--layout-left{align-items:flex-start}.logo-header-container--layout-left .restaurant-name,.logo-header-container--layout-left .restaurant-subtitle{text-align:left}.contact-row{display:flex;gap:var(--spacing-md, 1rem);justify-content:center;align-items:center}.contact-icon-wrapper{background:none;border:none;cursor:pointer;padding:var(--spacing-sm, 8px);display:flex;align-items:center;justify-content:center;transition:transform .2s}.contact-icon-wrapper:hover{transform:scale(1.1)}.contact-icon{width:32px;height:32px;object-fit:contain}.logo-header-container--header-left{align-items:flex-start;text-align:left}.logo-header-container--header-left .restaurant-name,.logo-header-container--header-left .restaurant-subtitle{text-align:left}.logo-header-container--header-left .contact-row{justify-content:flex-start}.logo-header-container--height-compact{padding:var(--spacing-md, 1rem) var(--spacing-sm, .5rem)}.logo-header-container--height-normal{padding:var(--spacing-lg, 1.5rem) var(--spacing-md, 1rem)}.logo-header-container--height-spacious{padding:var(--spacing-xl, 2rem) var(--spacing-lg, 1.5rem)}.logo-header-container--logo-small .logo-circle{width:80px;height:80px;border-radius:40px;border-width:2px}.logo-header-container--logo-normal .logo-circle{width:140px;height:140px;border-radius:70px;border-width:4px}.logo-header-container--logo-large .logo-circle{width:180px;height:180px;border-radius:90px;border-width:5px}.logo-header-container--align-left{align-items:flex-start;text-align:left}.logo-header-container--align-center{align-items:center;text-align:center}.logo-header-container--align-left .restaurant-name{text-align:left}.logo-header-container--align-center .restaurant-name{text-align:center}.ui-template-beauty_editorial .logo-header-container{padding:var(--spacing-xl, 2rem) var(--spacing-lg, 1.5rem)}.ui-template-beauty_editorial .logo-circle{width:80px;height:80px;border-radius:40px;border-width:2px}.ui-template-hair_modern .logo-header-container{align-items:flex-start;text-align:left}.logo-header-container--header-compact{padding:var(--spacing-md, 1rem) var(--spacing-md, 1rem)}.logo-header-container--header-spacious{padding:var(--spacing-xl, 2rem) var(--spacing-lg, 1.5rem)}.logo-header-container--surface{background-color:var(--color-bg-primary, #f8f9fa);border-bottom:1px solid var(--color-border, #e5e7eb)}.logo-header-container--sticky{position:sticky;top:0;z-index:100}.empty-state{text-align:center;padding:var(--spacing-2xl, 3rem) var(--spacing-lg, 1.5rem);color:var(--color-text-secondary, #6b7280)}.empty-state-icon{font-size:3rem;margin-bottom:var(--spacing-md, 1rem);opacity:.5}.empty-state-title{font-size:var(--title-md, 1.5rem);font-weight:var(--font-weight-semibold, 600);color:var(--color-text-main, #111827);margin-bottom:var(--spacing-sm, .5rem)}.empty-state-message{font-size:var(--text-md, 1rem);margin-bottom:var(--spacing-md, 1rem);color:var(--color-text-secondary, #6b7280);line-height:1.5}.empty-state-action{margin-top:var(--spacing-lg, 1.5rem)}.empty-state-button{padding:var(--spacing-md, 1rem) var(--spacing-xl, 2rem);border-radius:var(--radius-md, .5rem);font-size:var(--text-md, 1rem);font-weight:var(--font-weight-semibold, 600);cursor:pointer;transition:all .2s;border:none;min-height:48px}.empty-state-button-primary{background-color:var(--color-accent, #d4af37);color:var(--color-text-on-primary, #ffffff);box-shadow:var(--shadow-md)}.empty-state-button-primary:hover:not(:disabled){background-color:var(--color-accent-dark, #b8941f);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.empty-state-button-outline{background-color:transparent;color:var(--color-accent, #d4af37);border:2px solid var(--color-accent, #d4af37)}.empty-state-button-outline:hover:not(:disabled){background-color:#d4af371a}.empty-state-button:disabled{opacity:.5;cursor:not-allowed}.loading-skeleton-container{display:grid;gap:var(--spacing-md, 1rem);padding:0 var(--spacing-lg, 1.5rem)}.loading-skeleton{background:linear-gradient(90deg,var(--color-bg-secondary, #f8f8f8) 0%,var(--color-bg-tertiary, #f1f3f5) 50%,var(--color-bg-secondary, #f8f8f8) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:var(--radius-lg, .75rem);min-height:120px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.notification-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop, 1040);padding:var(--spacing-lg, 1.5rem)}.notification-modal{background-color:var(--color-card, #ffffff);border-radius:var(--radius-lg, .75rem);padding:var(--spacing-xl, 2rem);max-width:400px;width:100%;box-shadow:var(--shadow-xl)}.notification-modal-title{font-size:var(--title-lg, 1.75rem);font-weight:var(--font-weight-bold, 700);color:var(--color-text-main, #111827);margin-bottom:var(--spacing-md, 1rem);text-align:center}.notification-modal-text{font-size:var(--text-md, 1rem);color:var(--color-text-secondary, #6b7280);margin-bottom:var(--spacing-md, 1rem);line-height:1.5}.notification-modal-list{list-style:none;padding:0;margin:0 0 var(--spacing-lg, 1.5rem) 0}.notification-modal-list li{font-size:var(--text-sm, .875rem);color:var(--color-text-secondary, #6b7280);padding:var(--spacing-xs, .25rem) 0;padding-left:var(--spacing-lg, 1.5rem);position:relative}.notification-modal-list li:before{content:"✓";position:absolute;left:0;color:var(--color-success, #10b981);font-weight:var(--font-weight-bold, 700)}.notification-modal-actions{margin-bottom:var(--spacing-md, 1rem)}.home-screen{min-height:100%;background-color:var(--color-bg-primary, #f8f9fa)}.home-refresh-indicator{text-align:center;padding:var(--spacing-md, 1rem);color:var(--color-text-secondary, #6b7280);font-size:var(--text-sm, .875rem);position:sticky;top:0;background-color:var(--color-bg-primary, #f8f9fa);z-index:10}.home-banner-container{width:100%;margin-bottom:var(--spacing-lg, 1.5rem);margin-left:var(--spacing-md, 1rem);margin-right:var(--spacing-lg, 1.5rem);border-radius:var(--radius-xl, 1rem);overflow:hidden;box-shadow:0 4px 8px #0006}.home-hero-section{padding:var(--spacing-xl, 2rem) var(--spacing-lg, 1.5rem);text-align:center;margin-bottom:var(--spacing-xl, 2rem)}.home-hero-title{font-size:var(--title-xl, 2rem);font-weight:var(--font-weight-extrabold, 800);color:var(--color-text-main);margin-bottom:var(--spacing-sm, .5rem);letter-spacing:-.02em;line-height:1.2;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.home-hero-subtitle{font-size:var(--text-md, 1rem);color:var(--color-text-secondary);text-align:center;line-height:1.5}.home-section{padding:0 var(--spacing-lg, 1.5rem);margin-bottom:var(--spacing-xl, 2rem)}.home-section-title{font-size:var(--title-md, 1.5rem);font-weight:var(--font-weight-bold, 700);color:var(--color-text-main, #050505);margin-bottom:var(--spacing-md, 1rem);max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.home-loading{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md, 1rem);padding:var(--spacing-md, 1rem) 0}.home-loading-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite;border-radius:var(--radius-lg, .75rem);height:120px}.home-services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md, 1rem)}.home-service-card{padding:var(--spacing-lg, 1.5rem);border:1px solid var(--color-border);background-color:var(--color-card);border-radius:var(--radius-lg, .75rem);transition:transform .2s,box-shadow .2s}.home-service-card:hover{transform:translateY(-2px);box-shadow:var(--color-shadow-md)}.home-service-card:active{transform:translateY(0);box-shadow:var(--color-shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05))}.home-hero-section--density-compact{padding:var(--spacing-lg, 1.5rem) var(--spacing-md, 1rem);margin-bottom:var(--spacing-lg, 1.5rem)}.home-hero-section--density-normal{padding:var(--spacing-xl, 2rem) var(--spacing-lg, 1.5rem);margin-bottom:var(--spacing-xl, 2rem)}.home-hero-section--density-spacious{padding:var(--spacing-2xl, 3rem) var(--spacing-xl, 2rem);margin-bottom:var(--spacing-2xl, 3rem)}.home-hero-section--typography-normal .home-hero-title{font-size:var(--title-xl, 2rem)}.home-hero-section--typography-large .home-hero-title{font-size:var(--title-2xl, 2.5rem);margin-bottom:var(--spacing-md, 1rem)}.home-hero-section--typography-xlarge .home-hero-title{font-size:var(--title-3xl, 3rem);margin-bottom:var(--spacing-lg, 1.5rem)}.home-hero-section--layout-centered{text-align:center}.home-hero-section--layout-split{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl, 2rem);align-items:center;text-align:left}.home-hero-section--layout-split .home-hero-title,.home-hero-section--layout-split .home-hero-subtitle{text-align:left}.home-services-grid--layout-dense{grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm, .5rem)}.home-services-grid--layout-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg, 1.5rem)}.home-services-grid--layout-modern{display:flex;flex-direction:column;gap:var(--spacing-md, 1rem)}.home-services-grid--spacing-compact{gap:var(--spacing-sm, .5rem)}.home-services-grid--spacing-normal{gap:var(--spacing-md, 1rem)}.home-services-grid--spacing-spacious{gap:var(--spacing-lg, 1.5rem)}.home-service-price--inline{font-size:var(--text-md, 1rem);font-weight:var(--font-weight-semibold, 600)}.home-service-price--prominent{font-size:var(--text-lg, 1.125rem);font-weight:var(--font-weight-bold, 700);color:var(--color-accent)}.home-service-price--bold{font-size:var(--text-lg, 1.125rem);font-weight:var(--font-weight-extrabold, 800);color:var(--color-text-main)}.ui-template-beauty_editorial .home-hero-section{padding:var(--spacing-2xl, 3rem) var(--spacing-xl, 2rem)}.ui-template-beauty_editorial .home-hero-title{font-size:var(--title-2xl, 2.5rem)}.ui-template-beauty_editorial .home-services-grid{gap:var(--spacing-lg, 1.5rem)}.ui-template-hair_modern .home-hero-section{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl, 2rem);text-align:left}.ui-template-hair_modern .home-hero-title{font-size:var(--title-3xl, 3rem)}.ui-template-hair_modern .home-services-grid{display:flex;flex-direction:column}.home-service-name{font-size:var(--text-md, 1rem);font-weight:var(--font-weight-semibold, 600);color:var(--color-text-main);margin-bottom:var(--spacing-md, 1rem);line-height:1.4;max-width:100%;overflow-wrap:break-word;word-wrap:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.8em}.home-service-info{display:flex;justify-content:space-between;align-items:center}.home-service-price{font-size:var(--text-lg, 1.125rem);font-weight:var(--font-weight-bold, 700);color:var(--color-accent, #d4af37)}.home-service-duration{font-size:var(--text-sm, .875rem);color:var(--color-text-muted, #6b6b6b)}.home-hours-card{margin:0 var(--spacing-lg, 1.5rem) var(--spacing-lg, 1.5rem);border:1px solid var(--color-border, #e5e5e5)}.home-hours-title{font-size:var(--title-md, 1.5rem);font-weight:var(--font-weight-extrabold, 800);color:var(--color-text-main, #050505);margin-bottom:var(--spacing-md, 1rem);letter-spacing:.5px;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.home-hours-row{display:flex;justify-content:space-between;padding:var(--spacing-md, 1rem) 0;border-bottom:1px solid var(--color-divider, #dcdcdc)}.home-hours-day{font-size:var(--text-md, 1rem);color:var(--color-text-main, #050505)}.home-hours-time{font-size:var(--text-md, 1rem);font-weight:var(--font-weight-bold, 700);color:var(--color-text-secondary, #495057)}.home-hours-loading{opacity:.6}.home-hours-loading .home-hours-time{color:var(--color-text-tertiary, #adb5bd)}.home-cta-section{padding:0 var(--spacing-lg, 1.5rem);margin-bottom:var(--spacing-xl, 2rem)}.home-empty-booking{text-align:center;padding:var(--spacing-2xl, 3rem) var(--spacing-lg, 1.5rem);color:var(--color-text-secondary)}.home-empty-booking-icon{font-size:3rem;margin-bottom:var(--spacing-md, 1rem);opacity:.5}.home-empty-booking-text{font-size:1rem;margin-bottom:var(--spacing-sm, .5rem)}.selectable-card{cursor:pointer;transition:all .2s;border:2px solid var(--color-border, #e5e5e5)}.selectable-card:hover:not(.selectable-card-disabled){border-color:var(--color-accent, #d4af37);background-color:var(--color-bg-secondary, #f8f8f8)}.selectable-card-selected{border-color:var(--color-accent, #d4af37);background-color:var(--color-bg-secondary, #f8f8f8)}.selectable-card-disabled{cursor:not-allowed;opacity:.5}.toast{position:fixed;bottom:calc(var(--tabbar-height, 70px) + var(--spacing-md, 1rem));left:50%;transform:translate(-50%);background:var(--color-card);color:var(--color-text-main);padding:var(--spacing-md, 1rem) var(--spacing-lg, 1.5rem);border-radius:var(--radius-lg, .75rem);box-shadow:var(--color-shadow-lg);display:flex;align-items:center;gap:var(--spacing-md, 1rem);z-index:1000;max-width:90%;min-width:200px;animation:toastSlideIn .3s ease-out}@keyframes toastSlideIn{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.toast-success{border-left:4px solid var(--color-success, #10b981)}.toast-error{border-left:4px solid var(--color-error, #ef4444)}.toast-info{border-left:4px solid var(--color-info, #3b82f6)}.toast-warning{border-left:4px solid var(--color-warning, #f59e0b)}.toast-message{flex:1;font-size:.9375rem;font-weight:500}.toast-close{background:transparent;border:none;color:var(--color-text-secondary);font-size:1.5rem;line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm, .375rem);transition:background .2s}.toast-close:hover{background:var(--color-bg-secondary)}.date-picker-container{background-color:var(--color-bg, #ffffff);border-radius:16px;padding:16px}.date-picker-month-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding:0 4px}.date-picker-nav-btn{width:40px;height:40px;border-radius:9999px;background-color:var(--color-bg-secondary, #f8f8f8);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;color:var(--color-text-main, #050505);box-shadow:0 2px 4px #0000004d;transition:all .2s}.date-picker-nav-btn:hover:not(.disabled){transform:scale(1.05);box-shadow:0 4px 8px #0006}.date-picker-nav-btn.disabled{opacity:.3;cursor:not-allowed}.date-picker-month-title{display:flex;flex-direction:column;align-items:center}.date-picker-month-name{font-size:22px;font-weight:700;color:var(--color-text-main, #050505);letter-spacing:1px}.date-picker-year{font-size:16px;color:var(--color-text-secondary, #1f1f1f);margin-top:2px}.date-picker-weekdays{display:flex;margin-bottom:12px}.date-picker-weekday{flex:1;text-align:center;padding:8px 0;font-size:11px;font-weight:700;color:var(--color-text-muted, #6b6b6b);text-transform:uppercase}.date-picker-calendar{width:100%}.date-picker-week{display:flex;width:100%}.date-picker-day{flex:1;aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:12px;margin:1px;border:none;background:none;cursor:pointer;font-size:16px;font-weight:700;color:var(--color-text-main, #050505);transition:all .2s}.date-picker-day:hover:not(.disabled){background-color:var(--color-bg-secondary, #f8f8f8)}.date-picker-day.other-month{opacity:.3}.date-picker-day.selected{background-color:var(--color-accent, #d4af37);color:var(--color-text-on-primary, #ffffff);box-shadow:0 4px 8px #0006}.date-picker-day.today{background-color:var(--color-bg-secondary, #f8f8f8);border:2px solid var(--color-accent, #d4af37);color:var(--color-accent, #d4af37)}.date-picker-day.disabled{opacity:.2;cursor:not-allowed}.booking-screen{height:100vh;overflow-y:auto;-webkit-overflow-scrolling:touch;background-color:var(--color-bg-primary, #f8f9fa)}.booking-scroll-content{padding-bottom:calc(48px + 4rem)}.booking-loading-container{display:flex;flex:1;justify-content:center;align-items:center;min-height:200px}.booking-loading{font-size:48px;text-align:center}.booking-back-button{padding:12px 24px;background:none;border:none;font-size:16px;font-weight:700;color:var(--color-accent, #d4af37);cursor:pointer}.booking-step-container{padding:0 var(--spacing-lg, 1.5rem)}.booking-step-title{font-size:var(--title-lg, 1.75rem);font-weight:var(--font-weight-extrabold, 800);color:var(--color-text-main, #050505);margin-bottom:var(--spacing-lg, 1.5rem)}.booking-step-subtitle{font-size:var(--text-md, 1rem);color:var(--color-text-secondary, #495057);margin-bottom:var(--spacing-lg, 1.5rem)}.booking-service-card,.booking-staff-card{margin-bottom:var(--spacing-md, 1rem);width:100%;text-align:left}.booking-option-title{font-size:var(--text-md, 1rem);font-weight:var(--font-weight-bold, 700);color:var(--color-text-main, #050505);margin-bottom:var(--spacing-xs, .25rem)}.booking-option-info{display:flex;justify-content:space-between;gap:var(--spacing-sm, .5rem)}.booking-option-price{font-size:var(--text-lg, 1.125rem);font-weight:var(--font-weight-bold, 700);color:var(--color-accent, #d4af37)}.booking-option-duration{font-size:var(--text-sm, .875rem);color:var(--color-text-muted, #6b6b6b)}.booking-date-picker-card{margin-bottom:var(--spacing-lg, 1.5rem)}.booking-time-slots-container{max-height:400px;margin-bottom:var(--spacing-md, 1rem);overflow-y:auto}.booking-time-slots-grid{display:flex;flex-wrap:wrap;gap:var(--spacing-md, 1rem)}.booking-time-slot-card{min-width:30%;text-align:center;padding:var(--spacing-lg, 1.5rem)}.booking-time-slot-time{font-size:var(--text-xl, 1.25rem);font-weight:var(--font-weight-bold, 700);color:var(--color-text-main, #050505)}.booking-no-slots-card{padding:var(--spacing-2xl, 3rem);text-align:center;margin-bottom:var(--spacing-md, 1rem)}.booking-no-slots-text{font-size:16px;color:var(--color-text-secondary, #495057);text-align:center;margin-bottom:var(--spacing-md, 1rem)}.booking-no-slots-actions{display:flex;gap:var(--spacing-md, 1rem);justify-content:center;margin-top:var(--spacing-lg, 1.5rem)}.booking-slots-skeleton-container{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md, 1rem);margin-bottom:var(--spacing-lg, 1.5rem)}.booking-slots-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite;border-radius:var(--radius-lg, .75rem);height:60px;min-width:80px}.booking-loyalty-card{margin:16px 0;background-color:var(--color-bg-secondary, #f8f8f8)}.booking-loyalty-title{font-size:18px;font-weight:700;color:var(--color-text-main, #050505);margin-bottom:4px}.booking-loyalty-text{font-size:16px;color:var(--color-text-secondary, #495057);margin-bottom:4px}.booking-loyalty-success{font-size:16px;font-weight:700;color:var(--color-success, #16a34a);margin-top:12px}.booking-loyalty-button{margin-top:12px;padding:8px;border-radius:6px;border:2px solid var(--color-accent, #d4af37);background:none;width:100%;cursor:pointer;font-size:16px;font-weight:700;color:var(--color-accent, #d4af37);transition:all .2s}.booking-loyalty-button.active{background-color:var(--color-accent, #d4af37);color:var(--color-text-on-primary, #ffffff)}.booking-button-row{display:flex;gap:8px;margin-top:24px}.booking-button-row>button{flex:1}.booking-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.booking-treatment-modal{width:90%;max-width:400px;padding:32px;border-radius:16px;box-shadow:0 8px 16px #00000080}.booking-treatment-modal--size-compact{max-width:350px;padding:24px}.booking-treatment-modal--size-normal{max-width:400px;padding:32px}.booking-treatment-modal--size-large{max-width:500px;padding:48px}.booking-treatment-modal--spacing-compact{padding:24px}.booking-treatment-modal--spacing-compact .booking-treatment-modal-title,.booking-treatment-modal--spacing-compact .booking-treatment-modal-text{margin-bottom:12px}.booking-treatment-modal--spacing-normal{padding:32px}.booking-treatment-modal--spacing-spacious{padding:48px}.booking-treatment-modal--spacing-spacious .booking-treatment-modal-title,.booking-treatment-modal--spacing-spacious .booking-treatment-modal-text{margin-bottom:24px}.booking-treatment-modal--dividers .booking-treatment-modal-text,.booking-treatment-modal--dividers .booking-treatment-modal-subtext{border-bottom:1px solid var(--color-border, #e5e7eb);padding-bottom:var(--spacing-md, 1rem);margin-bottom:var(--spacing-md, 1rem)}.booking-treatment-modal--label-normal .booking-treatment-modal-title{font-weight:var(--font-weight-bold, 700)}.booking-treatment-modal--label-bold .booking-treatment-modal-title{font-weight:var(--font-weight-extrabold, 800);font-size:32px}.ui-template-beauty_editorial .booking-treatment-modal{max-width:500px;padding:48px}.ui-template-beauty_editorial .booking-treatment-modal-text{border-bottom:1px solid var(--color-border, #e5e7eb);padding-bottom:var(--spacing-md, 1rem);margin-bottom:var(--spacing-md, 1rem)}.ui-template-hair_modern .booking-treatment-modal-title{font-weight:var(--font-weight-extrabold, 800);font-size:32px}.booking-treatment-modal-title{font-size:28px;font-weight:800;color:var(--color-text-main, #050505);text-align:center;margin-bottom:16px}.booking-treatment-modal-text{font-size:16px;color:var(--color-text-secondary, #495057);text-align:center;margin-bottom:24px;line-height:22px}.booking-treatment-modal-subtext{font-size:16px;font-weight:700;color:var(--color-text-main, #050505);text-align:center;margin-bottom:16px}.booking-phone-button{display:flex;align-items:center;justify-content:center;background-color:var(--color-accent, #d4af37);border-radius:12px;padding:24px;margin:16px 0;border:none;cursor:pointer;box-shadow:0 4px 8px #0006;transition:transform .2s}.booking-phone-button:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000080}.booking-phone-button-icon{font-size:24px;margin-right:12px}.booking-phone-button-text{font-size:22px;font-weight:700;color:var(--color-bg, #ffffff)}.booking-treatment-modal-note{font-size:var(--text-sm, .875rem);color:var(--color-text-muted, #6b6b6b);text-align:center;font-style:italic;margin-top:var(--spacing-sm, .5rem)}.booking-toast{position:fixed;top:var(--spacing-lg, 1.5rem);left:50%;transform:translate(-50%);background:var(--color-error, #ef4444);color:#fff;padding:var(--spacing-sm, .5rem) var(--spacing-lg, 1.5rem);border-radius:var(--radius-md, .5rem);z-index:10000;font-size:var(--text-md, 1rem);font-weight:var(--font-weight-medium, 500);box-shadow:var(--shadow-lg, 0 10px 15px -3px rgba(0, 0, 0, .1))}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;overflow-y:auto;-webkit-overflow-scrolling:touch;pointer-events:auto}.modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-width:100%;max-height:90vh;overflow-y:auto;position:relative;pointer-events:auto;-webkit-overflow-scrolling:touch}.modal-size-sm{width:100%;max-width:400px}.modal-size-md{width:100%;max-width:600px}.modal-size-lg{width:100%;max-width:800px}.modal-size-full{width:100%;max-width:95vw}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e0e0e0;position:sticky;top:0;background:#fff;z-index:1;border-radius:8px 8px 0 0}.modal-title{margin:0;font-size:18px;font-weight:600;color:#333;flex:1}.modal-close-button{background:none;border:none;font-size:24px;line-height:1;color:#666;cursor:pointer;padding:4px 8px;margin-left:16px;border-radius:4px;transition:background-color .2s,color .2s;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.modal-close-button:hover{background-color:#f0f0f0;color:#333}.modal-close-button:active{background-color:#e0e0e0}.modal-body{padding:20px;overflow-y:auto;max-height:calc(90vh - 80px);-webkit-overflow-scrolling:touch}@media (max-width: 768px){.modal-backdrop{padding:10px}.modal-content{max-height:95vh;border-radius:8px 8px 0 0}.modal-size-sm,.modal-size-md,.modal-size-lg,.modal-size-full{width:100%;max-width:100%}.modal-header{padding:12px 16px}.modal-title{font-size:16px}.modal-close-button{font-size:20px;padding:6px 10px}.modal-body{padding:16px;max-height:calc(95vh - 70px)}}@supports (-webkit-touch-callout: none){.modal-backdrop{overscroll-behavior:contain}.modal-content{-webkit-transform:translateZ(0);transform:translateZ(0)}}.confirm-modal-content{display:flex;flex-direction:column;gap:var(--spacing-lg, 1.5rem)}.confirm-modal-message{font-size:var(--text-md, 1rem);color:var(--color-text-primary, #1f2937);line-height:1.5;margin:0}.confirm-modal-actions{display:flex;gap:var(--spacing-md, 1rem);justify-content:flex-end}.confirm-modal-actions>button{flex:1}.booking-manage-container{min-height:100vh;background:var(--color-bg-primary, #f8f9fa);padding:var(--spacing-md, 1rem);padding-bottom:calc(var(--spacing-md, 1rem) + 2rem);display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.booking-manage-loading,.booking-manage-error{background:var(--color-card, #ffffff);padding:var(--spacing-xl, 2rem);border-radius:var(--radius-lg, .75rem);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));text-align:center;max-width:500px;width:100%}.booking-manage-error h2{color:var(--color-error, #dc2626);margin-bottom:var(--spacing-md, 1rem)}.booking-manage-header{text-align:center;color:var(--color-text-main, #111827);margin-bottom:var(--spacing-xl, 2rem)}.booking-manage-header h1{font-size:var(--title-lg, 1.75rem);margin-bottom:var(--spacing-sm, .5rem);font-weight:var(--font-weight-semibold, 600)}.booking-manage-countdown{background:var(--color-warning-light, #fef3c7);padding:var(--spacing-sm, .5rem) var(--spacing-lg, 1.5rem);border-radius:var(--radius-md, .5rem);display:inline-block;font-weight:var(--font-weight-medium, 500);font-size:var(--text-md, 1rem);color:var(--color-text-main, #111827)}.booking-manage-card{max-width:500px;width:100%}.booking-manage-section{margin-bottom:var(--spacing-xl, 2rem)}.booking-manage-section h2{font-size:var(--title-md, 1.5rem);margin-bottom:var(--spacing-md, 1rem);color:var(--color-text-main, #1f2937)}.booking-manage-details{display:flex;flex-direction:column;gap:var(--spacing-sm, .5rem)}.booking-manage-detail-row{display:flex;justify-content:space-between;padding:var(--spacing-sm, .5rem) 0;border-bottom:1px solid var(--color-border, #e5e7eb)}.booking-manage-detail-row:last-child{border-bottom:none}.booking-manage-detail-row .label{font-weight:var(--font-weight-medium, 500);color:var(--color-text-secondary, #6b7280)}.booking-manage-detail-row .value{font-weight:var(--font-weight-semibold, 600);color:var(--color-text-main, #1f2937);text-align:right}.booking-manage-actions{display:flex;flex-direction:column;gap:var(--spacing-sm, .5rem);margin-top:var(--spacing-lg, 1.5rem)}.booking-manage-calendar{margin-top:var(--spacing-lg, 1.5rem);padding-top:var(--spacing-lg, 1.5rem);border-top:1px solid var(--color-border, #e5e7eb)}@media (max-width: 640px){.booking-manage-container{padding:var(--spacing-sm, .5rem)}.booking-manage-header h1{font-size:var(--title-md, 1.5rem)}}.booking-manage-page-container{max-width:600px;margin:0 auto;padding:var(--spacing-lg, 1.5rem);padding-bottom:calc(var(--spacing-lg, 1.5rem) + 2rem);min-height:100vh}.booking-manage-page-loading{padding:var(--spacing-lg, 1.5rem);text-align:center}.booking-manage-page-title{margin:0 0 var(--spacing-lg, 1.5rem) 0;font-size:var(--title-lg, 1.75rem);font-weight:var(--font-weight-semibold, 600);color:var(--color-text-main, #111827)}.booking-manage-page-card{margin-bottom:var(--spacing-lg, 1.5rem)}.booking-manage-page-section-title{margin:0 0 var(--spacing-md, 1rem) 0;font-size:var(--title-md, 1.5rem);font-weight:var(--font-weight-semibold, 600);color:var(--color-text-main, #111827)}.booking-manage-page-updated-badge{margin-bottom:var(--spacing-md, 1rem);padding:var(--spacing-xs, .25rem) var(--spacing-sm, .5rem);background:var(--color-warning-light, #fef3c7);border:1px solid var(--color-warning, #f59e0b);border-radius:var(--radius-md, .5rem);display:flex;align-items:center;gap:var(--spacing-xs, .25rem)}.booking-manage-page-updated-icon{font-size:var(--text-lg, 1.125rem)}.booking-manage-page-updated-text{font-weight:var(--font-weight-medium, 500);color:var(--color-text-main, #111827)}.booking-manage-page-details{margin-bottom:var(--spacing-md, 1rem)}.booking-manage-page-details p{margin:0 0 var(--spacing-xs, .25rem) 0;font-size:var(--text-md, 1rem);color:var(--color-text-primary, #1f2937);line-height:1.5}.booking-manage-page-confirm-banner{margin-bottom:var(--spacing-md, 1rem);padding:var(--spacing-md, 1rem);background:var(--color-warning-light, #fef3c7);border:2px solid var(--color-warning, #f59e0b);border-radius:var(--radius-lg, .75rem)}.booking-manage-page-confirm-title{margin:0 0 var(--spacing-sm, .5rem) 0;font-size:var(--text-lg, 1.125rem);font-weight:var(--font-weight-bold, 700);color:var(--color-text-main, #111827)}.booking-manage-page-confirm-message{margin:0 0 var(--spacing-sm, .5rem) 0;font-size:var(--text-md, 1rem);color:var(--color-text-main, #111827);line-height:1.5}.booking-manage-page-confirm-actions{display:flex;gap:var(--spacing-sm, .5rem);flex-wrap:wrap;margin-top:var(--spacing-sm, .5rem)}.booking-manage-page-warning-banner{margin-bottom:var(--spacing-md, 1rem);padding:var(--spacing-sm, .5rem);background:var(--color-warning-light, #fef3c7);border:1px solid var(--color-warning, #f59e0b);border-radius:var(--radius-md, .5rem)}.booking-manage-page-warning-banner p{margin:0;font-weight:var(--font-weight-medium, 500);font-size:var(--text-md, 1rem);color:var(--color-text-main, #111827);line-height:1.5}.booking-manage-page-actions{display:flex;gap:var(--spacing-sm, .5rem);flex-wrap:wrap;margin-top:var(--spacing-md, 1rem)}.booking-manage-page-back-action{margin-top:var(--spacing-lg, 1.5rem)}.booking-manage-page-error-card{max-width:600px;margin:0 auto}.booking-manage-page-error-title{margin:0 0 var(--spacing-md, 1rem) 0;font-size:var(--title-md, 1.5rem);font-weight:var(--font-weight-bold, 700);color:var(--color-error, #dc3545)}.booking-manage-page-error-message{margin:0 0 var(--spacing-md, 1rem) 0;font-size:var(--text-md, 1rem);color:var(--color-text-primary, #1f2937);line-height:1.5}.booking-manage-page-error-details{padding:var(--spacing-sm, .5rem);background:var(--color-bg-secondary, #f8f8f8);border-radius:var(--radius-md, .5rem);margin-bottom:var(--spacing-md, 1rem);font-size:var(--text-sm, .875rem);color:var(--color-text-secondary, #6b7280);line-height:1.5}.booking-manage-page-error-actions{display:flex;gap:var(--spacing-sm, .5rem);flex-wrap:wrap}.booking-manage-reschedule-content{display:flex;flex-direction:column;gap:var(--spacing-lg, 1.5rem)}.booking-manage-reschedule-section{margin-bottom:var(--spacing-lg, 1.5rem)}.booking-manage-reschedule-label{margin:0 0 var(--spacing-md, 1rem) 0;font-weight:var(--font-weight-medium, 500);font-size:var(--text-md, 1rem);color:var(--color-text-primary, #1f2937)}.booking-manage-reschedule-loading{text-align:center;padding:var(--spacing-lg, 1.5rem)}.booking-manage-reschedule-loading p{margin:0;font-size:var(--text-md, 1rem);color:var(--color-text-secondary, #6b7280)}.booking-manage-reschedule-error{padding:var(--spacing-sm, .5rem);background:var(--color-warning-light, #fef3c7);border:1px solid var(--color-warning, #f59e0b);border-radius:var(--radius-md, .5rem);margin-bottom:var(--spacing-md, 1rem)}.booking-manage-reschedule-error p{margin:0;font-size:var(--text-md, 1rem);color:var(--color-text-main, #111827)}.booking-manage-reschedule-empty{padding:var(--spacing-sm, .5rem);background:var(--color-bg-secondary, #f8f8f8);border-radius:var(--radius-md, .5rem);margin-bottom:var(--spacing-md, 1rem)}.booking-manage-reschedule-empty p{margin:0;font-size:var(--text-md, 1rem);color:var(--color-text-secondary, #6b7280)}.booking-manage-reschedule-slots{display:flex;flex-wrap:wrap;gap:var(--spacing-sm, .5rem);max-height:300px;overflow-y:auto;margin-bottom:var(--spacing-md, 1rem)}.booking-manage-reschedule-slot{min-width:120px;text-align:center;padding:var(--spacing-md, 1rem)}.booking-manage-reschedule-slot-time{font-weight:var(--font-weight-bold, 700);font-size:var(--text-lg, 1.125rem);color:var(--color-text-main, #111827)}.booking-manage-reschedule-actions{display:flex;gap:var(--spacing-sm, .5rem);justify-content:flex-end;flex-wrap:wrap}.booking-manage-reschedule-actions>button{flex:1;min-width:120px}.booking-manage-page-title,.booking-manage-page-section-title,.booking-manage-page-details p,.booking-manage-page-confirm-message,.booking-manage-page-warning-banner p{max-width:100%;overflow-wrap:break-word;word-wrap:break-word}@media (max-width: 768px){.booking-manage-page-container{padding:var(--spacing-md, 1rem)}.booking-manage-page-title{font-size:var(--title-md, 1.5rem)}}.bookings-list-page{padding:var(--spacing-lg, 1.5rem);background-color:var(--color-bg-primary);min-height:100%}.bookings-list-header{margin-bottom:var(--spacing-lg, 1.5rem)}.bookings-list-header h1{font-size:var(--title-lg, 1.75rem);font-weight:var(--font-weight-bold, 700);color:var(--color-text-main);margin:0;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.bookings-list-filters{display:flex;gap:var(--spacing-sm, .5rem);padding:var(--spacing-md, 1rem) 0;border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-md, 1rem)}.bookings-list-loading,.bookings-list-error,.bookings-list-empty{text-align:center;padding:var(--spacing-2xl, 3rem) var(--spacing-lg, 1.5rem);color:var(--color-text-secondary)}.bookings-list-empty-icon{font-size:3rem;margin-bottom:var(--spacing-md, 1rem);opacity:.5}.bookings-list-empty-text{font-size:1rem;margin-bottom:var(--spacing-sm, .5rem);color:var(--color-text-secondary)}.bookings-list-empty-hint{font-size:.875rem;margin-top:var(--spacing-sm, .5rem);margin-bottom:var(--spacing-lg, 1.5rem);color:var(--color-text-muted)}.bookings-list-content{display:flex;flex-direction:column;gap:var(--spacing-md, 1rem);min-height:fit-content}.bookings-list-item{padding:var(--spacing-lg, 1.5rem);cursor:pointer}.bookings-list-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md, 1rem);gap:var(--spacing-sm, .5rem)}.bookings-list-item-header h3{font-size:var(--text-lg, 1.125rem);font-weight:var(--font-weight-semibold, 600);margin:0;color:var(--color-text-main);flex:1;line-height:1.4;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.bookings-list-item-badge{padding:var(--spacing-xs, .25rem) var(--spacing-sm, .5rem);border-radius:var(--radius-md, .5rem);font-size:var(--text-xs, .75rem);font-weight:var(--font-weight-semibold, 600);white-space:nowrap;flex-shrink:0}.bookings-list-item-badge.status-confirmed{background-color:var(--color-booking-confirmed, #10b981);color:#fff}.bookings-list-item-badge.status-pending{background-color:var(--color-booking-pending, #f59e0b);color:#fff}.bookings-list-item-badge.status-canceled{background-color:var(--color-booking-canceled, #ef4444);color:#fff}.bookings-list-item-badge.status-done{background-color:var(--color-booking-done, #6b7280);color:#fff}.bookings-list-item-badge.status-action-required{background-color:var(--color-warning-light, #fef3c7);color:var(--color-warning, #f59e0b);border:1px solid var(--color-warning, #f59e0b)}.bookings-list-item-details{display:flex;flex-direction:column;gap:var(--spacing-sm, .5rem)}.bookings-list-item-details p{margin:0;font-size:var(--text-sm, .875rem);color:var(--color-text-secondary);line-height:1.5;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.bookings-list-item-details strong{color:var(--color-text-main);font-weight:600}.bookings-list-item-actions{margin-top:var(--spacing-md, 1rem);display:flex;gap:var(--spacing-sm, .5rem);flex-wrap:wrap}.messages-screen{display:flex;flex-direction:column;height:100%;background:var(--color-bg-primary, #f9fafb);min-height:0}.messages-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:1rem;position:sticky;top:0;z-index:10}.messages-header h1{margin:0;font-size:var(--title-md, 1.5rem);font-weight:var(--font-weight-semibold, 600);color:var(--color-text-main, #111827);max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.messages-loading{flex:1;display:flex;flex-direction:column;padding:var(--spacing-lg, 1.5rem);gap:var(--spacing-md, 1rem)}.messages-loading-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite;border-radius:var(--radius-md, .5rem);height:100px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.messages-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl, 3rem) var(--spacing-lg, 1.5rem);color:var(--color-text-secondary)}.messages-empty-icon{font-size:3rem;margin-bottom:var(--spacing-md, 1rem);opacity:.5}.messages-empty-text{font-size:1rem;margin-bottom:var(--spacing-sm, .5rem);color:var(--color-text-secondary)}.messages-empty-hint{font-size:.875rem;margin-top:var(--spacing-sm, .5rem);text-align:center;color:var(--color-text-muted)}.messages-list{flex:1;overflow-y:auto;padding:var(--spacing-md, 1rem);display:flex;flex-direction:column;gap:var(--spacing-sm, .5rem)}.messages-item{background:var(--color-card);border-radius:var(--radius-lg, .75rem);padding:var(--spacing-lg, 1.5rem);cursor:pointer;transition:transform .2s,box-shadow .2s;border:1px solid var(--color-border);box-shadow:var(--color-shadow)}.messages-item:hover{transform:translateY(-1px);box-shadow:var(--color-shadow-md)}.messages-item.unread{border-left:4px solid var(--color-info, #3b82f6);background:var(--color-info-light, #dbeafe);border-color:var(--color-info, #3b82f6)}.messages-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.messages-item-header h3{margin:0;font-size:var(--text-md, 1rem);font-weight:var(--font-weight-semibold, 600);color:var(--color-text-main, #111827);max-width:100%;overflow-wrap:break-word;word-wrap:break-word;flex:1}.messages-unread-badge{width:10px;height:10px;background:var(--color-info, #3b82f6);border-radius:50%;flex-shrink:0;margin-left:var(--spacing-sm, .5rem)}.messages-item-preview{margin:0 0 var(--spacing-xs, .25rem) 0;font-size:var(--text-sm, .875rem);color:var(--color-text-secondary, #6b7280);line-height:1.5;max-width:100%;overflow-wrap:break-word;word-wrap:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.messages-item-date{margin:0;font-size:.75rem;color:#9ca3af}.messages-detail{flex:1;display:flex;flex-direction:column;background:var(--color-card);overflow-y:auto}.messages-detail-header{position:sticky;top:0;background:var(--color-card);border-bottom:1px solid var(--color-border);padding:var(--spacing-md, 1rem);z-index:10;display:flex;align-items:center;gap:var(--spacing-sm, .5rem)}.messages-back-button{padding:var(--spacing-sm, .5rem);border:none;background:transparent;color:var(--color-info, #3b82f6);font-size:.875rem;font-weight:500;cursor:pointer;text-align:left;border-radius:var(--radius-sm, .375rem);transition:background .2s}.messages-back-button:hover{background:var(--color-bg-secondary)}.messages-detail-content{padding:1rem}.messages-detail-content h2{margin:0 0 var(--spacing-xs, .25rem) 0;font-size:var(--title-md, 1.5rem);font-weight:var(--font-weight-semibold, 600);color:var(--color-text-main, #111827);max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.messages-detail-date{margin:0 0 var(--spacing-md, 1rem) 0;font-size:var(--text-sm, .875rem);color:var(--color-text-secondary, #6b7280)}.messages-detail-body{margin-top:var(--spacing-md, 1rem);line-height:1.6;color:var(--color-text-primary, #374151);max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.messages-detail-body p{margin:0 0 1rem}.messages-detail-body p:last-child{margin-bottom:0}.profile-screen{min-height:100%;background-color:var(--color-bg-primary, #f8f9fa)}.profile-header{padding:24px;background:var(--color-card, #ffffff);border-bottom:1px solid var(--color-border, #e5e7eb);display:flex;flex-direction:row;justify-content:space-between;align-items:center}.profile-header h1{font-size:var(--title-lg, 1.75rem);font-weight:var(--font-weight-bold, 700);color:var(--color-text-main, #050505);margin:0;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.profile-language-pill{display:flex;flex-direction:row;align-items:center;background:var(--color-bg-secondary, #f3f4f6);padding:6px 12px;border-radius:20px;border:1px solid var(--color-border, #e5e7eb);cursor:pointer;transition:all .2s;font-family:inherit}.profile-language-pill:hover{background:var(--color-bg-tertiary, #e5e7eb);border-color:var(--color-accent, #d4af37)}.profile-language-pill-flag{font-size:16px;margin-right:4px}.profile-language-pill-code{font-size:13px;font-weight:var(--font-weight-semibold, 600);color:var(--color-text-main, #111827)}.profile-language-pill-subtitle{font-size:11px;color:var(--color-text-secondary, #6b7280);font-weight:var(--font-weight-medium, 500)}.profile-content{padding:24px;display:flex;flex-direction:column;gap:16px}.profile-section{padding:20px;margin-bottom:var(--spacing-md, 1rem)}.profile-section:last-child{margin-bottom:0}.profile-section-title{font-size:var(--title-sm, 1.125rem);font-weight:var(--font-weight-semibold, 600);color:var(--color-text-main, #050505);margin:0 0 var(--spacing-md, 1rem) 0;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.profile-field{margin-bottom:20px}.profile-field:last-child{margin-bottom:0}.profile-field label{display:block;font-size:14px;font-weight:500;color:var(--color-text-secondary, #6b7280);margin-bottom:8px}.profile-field span{display:block;font-size:var(--text-md, 1rem);color:var(--color-text-main, #050505);padding:var(--spacing-xs, .25rem) 0;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.profile-loading,.profile-error{padding:48px 24px;text-align:center}.profile-loading p,.profile-error p{font-size:16px;color:var(--color-text-secondary, #6b7280);margin-bottom:16px}.profile-error button{padding:8px 16px;background:#2563eb;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.profile-error button:hover{background:#1d4ed8}.profile-language-modal-content{display:flex;flex-direction:column;gap:8px}.profile-language-modal-option{display:flex;flex-direction:row;align-items:center;padding:14px 16px;border-radius:12px;margin-bottom:8px;background:var(--color-bg-secondary, #f9fafb);border:1px solid var(--color-border, #e5e7eb);cursor:pointer;transition:all .2s;font-family:inherit;width:100%;text-align:left}.profile-language-modal-option:hover{background:var(--color-bg-tertiary, #f3f4f6);border-color:var(--color-accent, #d4af37)}.profile-language-modal-option.active{background:#eff6ff;border-color:#2563eb}.profile-language-modal-option-flag{font-size:24px;margin-right:12px}.profile-language-modal-option-text-container{flex:1;display:flex;flex-direction:column}.profile-language-modal-option-text{font-size:16px;font-weight:var(--font-weight-semibold, 600);color:var(--color-text-main, #111827);margin-bottom:2px}.profile-language-modal-option-text.active{color:#2563eb}.profile-language-modal-option-subtext{font-size:13px;color:var(--color-text-secondary, #6b7280)}.profile-language-modal-check{font-size:20px;color:#2563eb;font-weight:var(--font-weight-bold, 700);margin-left:8px}.profile-push-toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md, 1rem);padding:var(--spacing-md, 1rem);background:var(--color-bg-secondary);border-radius:var(--radius-md, .5rem)}.profile-push-info{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs, .25rem)}.profile-push-status{font-size:.9375rem;font-weight:600;color:var(--color-text-main)}.profile-push-description{font-size:.875rem;color:var(--color-text-secondary)}.profile-switch{position:relative;width:48px;height:28px;background:var(--color-border);border:none;border-radius:14px;cursor:pointer;transition:background .3s;flex-shrink:0;padding:0}.profile-switch.active{background:var(--color-success, #10b981)}.profile-switch:disabled{opacity:.5;cursor:not-allowed}.profile-switch-slider{position:absolute;top:2px;left:2px;width:24px;height:24px;background:#fff;border-radius:50%;transition:transform .3s;box-shadow:var(--color-shadow)}.profile-switch.active .profile-switch-slider{transform:translate(20px)}.profile-fidelity-card{background-color:var(--color-card, #ffffff);border:1px solid var(--color-border, #e5e5e5)}.profile-fidelity-loading{padding:var(--spacing-md, 1rem);text-align:center}.profile-fidelity-loading p{font-size:var(--text-md, 1rem);color:var(--color-text-secondary, #6b7280)}.profile-fidelity-info{margin-top:var(--spacing-lg, 1.5rem);padding-top:var(--spacing-lg, 1.5rem);border-top:1px solid var(--color-border, #e5e7eb)}.profile-fidelity-info-title{font-size:var(--title-sm, 1.125rem);font-weight:var(--font-weight-semibold, 600);color:var(--color-text-main, #050505);margin:0 0 var(--spacing-sm, .5rem) 0}.profile-fidelity-info-text{font-size:var(--text-sm, .875rem);color:var(--color-text-secondary, #495057);line-height:1.6;margin:0 0 var(--spacing-sm, .5rem) 0;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.profile-fidelity-info-text:last-child{margin-bottom:0}.profile-fidelity-info-text strong{color:var(--color-text-main, #050505);font-weight:var(--font-weight-semibold, 600)}.profile-fidelity-stats{display:flex;gap:var(--spacing-md, 1rem);margin-bottom:var(--spacing-md, 1rem)}.profile-fidelity-stat{flex:1;text-align:center;padding:var(--spacing-md, 1rem);background-color:var(--color-bg-secondary, #f8f9fa);border-radius:var(--radius-lg, .75rem)}.profile-fidelity-stat-success{background-color:#22c55e33}.profile-fidelity-stat-value{font-size:var(--title-lg, 1.75rem);font-weight:var(--font-weight-extrabold, 800);color:var(--color-accent, #d4af37);margin-bottom:var(--spacing-xs, .25rem);display:block}.profile-fidelity-stat-label{font-size:var(--text-sm, .875rem);color:var(--color-text-secondary, #495057);text-align:center;display:block;line-height:1.4}.profile-privacy-row{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:var(--spacing-md, 1rem) 0;border-bottom:1px solid var(--color-border-light, #f3f4f6);cursor:pointer;transition:background-color .2s}.profile-privacy-row:last-child{border-bottom:none}.profile-privacy-row:hover{background-color:var(--color-bg-secondary, #f8f8f8);margin:0 calc(-1 * var(--spacing-md, 1rem));padding-left:var(--spacing-md, 1rem);padding-right:var(--spacing-md, 1rem);border-radius:var(--radius-md, .5rem)}.profile-privacy-row-text{font-size:var(--text-md, 1rem);color:var(--color-text-main, #050505);font-weight:var(--font-weight-medium, 500);flex:1}.profile-privacy-row-arrow{font-size:var(--text-lg, 1.125rem);color:var(--color-text-secondary, #6b7280);margin-left:var(--spacing-md, 1rem)}.staff-v3-bottom-nav{position:fixed;bottom:0;left:0;right:0;height:64px;background:var(--v3-background);border-top:1px solid var(--v3-border);display:flex;justify-content:space-around;align-items:center;z-index:var(--v3-z-nav);padding-bottom:env(safe-area-inset-bottom,0);box-shadow:0 -2px 8px #0000000d}.staff-v3-bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:var(--v3-tap-target-min);min-height:var(--v3-tap-target-min);padding:var(--v3-spacing-sm);border:none;background:transparent;color:var(--v3-text-secondary);font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-medium);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color var(--v3-transition-fast);touch-action:manipulation}.staff-v3-bottom-nav-item:active{opacity:.7}.staff-v3-bottom-nav-item.active{color:var(--v3-primary)}.staff-v3-bottom-nav-icon-wrapper{position:relative;display:inline-block}.staff-v3-bottom-nav-icon{font-size:20px;margin-bottom:var(--v3-spacing-xs)}.staff-v3-bottom-nav-badge{position:absolute;top:-6px;right:-8px;background:var(--v3-error, #ff3b30);color:#fff;font-size:10px;font-weight:600;padding:2px 5px;border-radius:10px;min-width:18px;text-align:center;line-height:1.2;box-shadow:0 1px 3px #0003}.staff-v3-bottom-nav-label{font-size:var(--v3-font-size-xs);line-height:1}@supports (padding-bottom: env(safe-area-inset-bottom)){.staff-v3-bottom-nav{padding-bottom:max(env(safe-area-inset-bottom),8px)}}.staff-v3-debug-panel{position:fixed;bottom:80px;right:8px;width:320px;max-height:400px;background:#000000e6;color:#fff;border-radius:8px;font-size:12px;z-index:9999;box-shadow:0 4px 12px #0000004d;overflow:hidden;display:flex;flex-direction:column}.staff-v3-debug-panel-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#ffffff1a;border-bottom:1px solid rgba(255,255,255,.2)}.staff-v3-debug-panel-close{background:none;border:none;color:#fff;font-size:18px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px}.staff-v3-debug-panel-close:hover{background:#fff3}.staff-v3-debug-panel-body{padding:12px;overflow-y:auto;max-height:360px}.staff-v3-debug-section{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}.staff-v3-debug-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.staff-v3-debug-section strong{display:block;margin-bottom:4px;color:#60a5fa}.staff-v3-debug-value{font-family:monospace;font-size:11px;word-break:break-all;color:#cbd5e1}.staff-v3-debug-log{max-height:200px;overflow-y:auto;background:#0000004d;border-radius:4px;padding:8px}.staff-v3-debug-log-empty{color:#94a3b8;font-style:italic;text-align:center;padding:8px}.staff-v3-debug-log-item{display:flex;flex-direction:column;gap:2px;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.05)}.staff-v3-debug-log-item:last-child{border-bottom:none}.staff-v3-debug-log-time{font-size:10px;color:#94a3b8}.staff-v3-debug-log-action{font-weight:500;color:#60a5fa}.staff-v3-debug-log-details{font-size:10px;color:#cbd5e1;font-style:italic}@media (max-width: 480px){.staff-v3-debug-panel{width:calc(100vw - 16px);right:8px;left:8px;bottom:88px}}.staff-v3-layout-debug-overlay{position:fixed;top:var(--safe-top, env(safe-area-inset-top, 0px));right:var(--v3-spacing-md);z-index:9999;pointer-events:none;font-family:SF Mono,Monaco,Courier New,monospace;font-size:11px;line-height:1.4}@media (max-width: 768px){.staff-v3-layout-debug-overlay{bottom:calc(var(--bottom-nav-height, 64px) + var(--safe-bottom, env(safe-area-inset-bottom, 0px)) + var(--v3-spacing-md));top:auto}}@media (min-width: 769px){.staff-v3-layout-debug-overlay{top:var(--v3-spacing-md);bottom:auto}}.staff-v3-layout-debug-content{background:#000000d9;color:#0f0;padding:var(--v3-spacing-sm) var(--v3-spacing-md);border-radius:var(--v3-border-radius-sm);border:1px solid rgba(0,255,0,.3);box-shadow:0 2px 8px #0000004d;min-width:180px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.staff-v3-layout-debug-title{font-weight:var(--v3-font-weight-bold);margin-bottom:var(--v3-spacing-xs);color:#0f0;text-transform:uppercase;font-size:10px;letter-spacing:.5px}.staff-v3-layout-debug-metric{display:flex;justify-content:space-between;gap:var(--v3-spacing-md);margin-bottom:2px}.staff-v3-layout-debug-label{color:#888;flex-shrink:0}.staff-v3-layout-debug-value{color:#0f0;font-weight:var(--v3-font-weight-semibold);text-align:right;flex:1}.staff-v3-toast{position:fixed;left:50%;transform:translate(-50%);z-index:var(--v3-z-modal);display:flex;align-items:center;gap:var(--v3-spacing-md);padding:var(--v3-spacing-md) var(--v3-spacing-lg);border-radius:var(--v3-border-radius-md);box-shadow:0 4px 12px #00000026;max-width:90%;min-width:280px;animation:toast-slide-in .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);bottom:calc(var(--v3-bottom-nav-h, 60px) + var(--v3-spacing-md))}@media (min-width: 1024px){.staff-v3-toast{bottom:auto;top:var(--v3-spacing-md)}}@keyframes toast-slide-in{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media (min-width: 1024px){@keyframes toast-slide-in{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}}.staff-v3-toast-success{background:var(--v3-success);color:#fff}.staff-v3-toast-error{background:var(--v3-error);color:#fff}.staff-v3-toast-info{background:var(--v3-primary);color:#fff}.staff-v3-toast-message{flex:1;font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);line-height:1.4}.staff-v3-toast-close{background:transparent;border:none;color:inherit;font-size:24px;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;min-width:var(--v3-tap-target-min);min-height:var(--v3-tap-target-min);display:flex;align-items:center;justify-content:center;opacity:.8;transition:opacity var(--v3-transition-fast)}.staff-v3-toast-close:active{opacity:1}.staff-v3-desktop-sidebar{width:280px;background:var(--v3-background);border-right:1px solid var(--v3-border);display:flex;flex-direction:column;height:100vh;overflow:hidden}.staff-v3-desktop-sidebar-header{padding:var(--v3-spacing-lg);border-bottom:1px solid var(--v3-border)}.staff-v3-desktop-sidebar-logo{font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-bold);color:var(--v3-text-primary);margin:0}.staff-v3-desktop-sidebar-nav{flex:1;padding:var(--v3-spacing-md);display:flex;flex-direction:column;gap:var(--v3-spacing-xs);overflow-y:auto}.staff-v3-desktop-sidebar-item{display:flex;align-items:center;gap:var(--v3-spacing-md);padding:var(--v3-spacing-md);border:none;background:transparent;border-radius:var(--v3-border-radius-md);cursor:pointer;transition:background var(--v3-transition-fast);text-align:left;position:relative}.staff-v3-desktop-sidebar-item:hover{background:var(--v3-surface)}.staff-v3-desktop-sidebar-item.active{background:var(--v3-primary);color:#fff}.staff-v3-desktop-sidebar-item.active .staff-v3-desktop-sidebar-icon{filter:brightness(0) invert(1)}.staff-v3-desktop-sidebar-icon{font-size:20px;width:24px;text-align:center}.staff-v3-desktop-sidebar-label{flex:1;min-width:0;font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-medium);overflow:visible;white-space:nowrap}.staff-v3-desktop-sidebar-badge{background:var(--v3-error);color:#fff;font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-bold);padding:2px 6px;border-radius:10px;min-width:20px;text-align:center}.staff-v3-desktop-sidebar-item.active .staff-v3-desktop-sidebar-badge{background:#ffffff4d}.staff-v3-desktop-sidebar-footer{padding:var(--v3-spacing-md);border-top:1px solid var(--v3-border)}.staff-v3-desktop-sidebar-status{display:flex;align-items:center;gap:var(--v3-spacing-sm);font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary)}.staff-v3-desktop-sidebar-status-dot{width:8px;height:8px;border-radius:50%;background:var(--v3-error)}.staff-v3-desktop-sidebar-status-dot.enabled{background:var(--v3-success)}.staff-v3-desktop-sidebar-status-text{font-weight:var(--v3-font-weight-medium)}.staff-v3-desktop-shell{display:grid;grid-template-columns:280px 1fr;height:100vh;overflow:hidden}.staff-v3-desktop-center{overflow-y:auto;background:var(--v3-surface)}.staff-v3-mobile-wrapper{height:var(--vvh, 100dvh);min-height:100vh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;background:var(--v3-surface)}@media (max-width: 1023px){.staff-v3-desktop-shell{display:block;height:auto;min-height:100vh}.staff-v3-desktop-center{overflow-y:auto;overflow-x:hidden;min-height:100vh;-webkit-overflow-scrolling:touch}}.staff-v3-drawer-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--v3-backdrop);z-index:var(--v3-z-backdrop);opacity:0;visibility:hidden;transition:opacity var(--v3-transition-base),visibility var(--v3-transition-base);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.staff-v3-drawer-backdrop.open{opacity:1;visibility:visible}.staff-v3-drawer{position:fixed;top:0;right:0;bottom:0;width:80%;max-width:420px;background:var(--v3-background);z-index:var(--v3-z-drawer);box-shadow:-2px 0 16px #00000026;transform:translate(100%);transition:transform var(--v3-transition-base);display:flex;flex-direction:column;overflow:hidden;-webkit-overflow-scrolling:touch}@media (min-width: 1024px){.staff-v3-drawer{width:500px;max-width:500px;box-shadow:-4px 0 24px #0003}}@media (min-width: 1440px){.staff-v3-drawer{width:600px;max-width:600px}}.staff-v3-drawer.open{transform:translate(0)}.staff-v3-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:var(--v3-spacing-md);border-bottom:1px solid var(--v3-border);min-height:var(--v3-tap-target-min);flex-shrink:0}.staff-v3-drawer-title{font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0;flex:1}.staff-v3-drawer-close{width:var(--v3-tap-target-min);height:var(--v3-tap-target-min);display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--v3-text-secondary);font-size:24px;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:var(--v3-border-radius-sm);transition:background-color var(--v3-transition-fast)}.staff-v3-drawer-close:active{background:var(--v3-surface)}.staff-v3-drawer-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--v3-spacing-md);padding-bottom:calc(var(--v3-spacing-md) + var(--footer-h, 72px) + env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch;overscroll-behavior:contain;min-height:0}.staff-v3-drawer-footer{padding:var(--v3-spacing-md);padding-bottom:calc(var(--v3-spacing-md) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--v3-border);flex-shrink:0;position:sticky;bottom:0;background:var(--v3-background);z-index:1;margin-top:auto}@supports (-webkit-touch-callout: none){.staff-v3-drawer{-webkit-transform:translateZ(0);transform:translateZ(0)}.staff-v3-drawer-body{overscroll-behavior-y:contain}}.staff-v3-confirm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.staff-v3-confirm-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-width:500px;width:100%;max-height:90vh;overflow-y:auto}.staff-v3-confirm-modal-header{padding:20px 24px;border-bottom:1px solid var(--v3-border, #e0e0e0)}.staff-v3-confirm-modal-header h2{margin:0;font-size:20px;font-weight:600;color:var(--v3-text-primary, #333)}.staff-v3-confirm-modal-body{padding:24px}.staff-v3-confirm-modal-body p{margin:0;font-size:15px;line-height:1.5;color:var(--v3-text-primary, #333)}.staff-v3-confirm-modal-footer{padding:16px 24px;border-top:1px solid var(--v3-border, #e0e0e0);display:flex;gap:12px;justify-content:flex-end}.staff-v3-confirm-modal-cancel,.staff-v3-confirm-modal-confirm{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s;min-height:44px}.staff-v3-confirm-modal-cancel{background:#f5f5f5;color:var(--v3-text-primary, #333)}.staff-v3-confirm-modal-cancel:hover:not(:disabled){background:#e0e0e0}.staff-v3-confirm-modal-cancel:disabled{opacity:.5;cursor:not-allowed}.staff-v3-confirm-modal-confirm{color:#fff}.staff-v3-confirm-modal-confirm-danger{background:#dc3545}.staff-v3-confirm-modal-confirm-danger:hover:not(:disabled){background:#c82333}.staff-v3-confirm-modal-confirm-warning{background:#ffc107;color:#333}.staff-v3-confirm-modal-confirm-warning:hover:not(:disabled){background:#e0a800}.staff-v3-confirm-modal-confirm-info{background:#007bff}.staff-v3-confirm-modal-confirm-info:hover:not(:disabled){background:#0056b3}.staff-v3-confirm-modal-confirm:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 767px){.staff-v3-confirm-modal{margin:20px;max-width:calc(100% - 40px)}.staff-v3-confirm-modal-header,.staff-v3-confirm-modal-body,.staff-v3-confirm-modal-footer{padding:16px}.staff-v3-confirm-modal-footer{flex-direction:column-reverse}.staff-v3-confirm-modal-cancel,.staff-v3-confirm-modal-confirm{width:100%}}.staff-v3-booking-detail{padding:var(--v3-spacing-md);display:flex;flex-direction:column;gap:var(--v3-spacing-lg)}.staff-v3-booking-detail-section{display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-booking-detail-label{font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0}.staff-v3-booking-detail-value{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary);margin:0}.staff-v3-booking-detail-meta{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);margin:0}.staff-v3-booking-detail-status{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold)}.staff-v3-booking-detail-alert{padding:var(--v3-spacing-md);background:var(--v3-warning);color:#fff;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-sm)}.staff-v3-booking-detail-alert p{margin:0;margin-bottom:var(--v3-spacing-xs)}.staff-v3-booking-detail-alert p:last-child{margin-bottom:0;font-weight:var(--v3-font-weight-semibold)}.staff-v3-booking-detail-actions{margin-top:var(--v3-spacing-md);padding-top:var(--v3-spacing-md);border-top:1px solid var(--v3-border);display:flex;flex-direction:column;gap:var(--v3-spacing-sm)}.staff-v3-booking-detail-button{width:100%;min-height:var(--v3-tap-target-min);padding:var(--v3-spacing-md);background:var(--v3-primary);color:#fff;border:none;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:background var(--v3-transition-fast)}.staff-v3-booking-detail-button:active{background:var(--v3-primary-hover);opacity:.9}.staff-v3-booking-detail-action-button{width:100%;min-height:var(--v3-tap-target-min);padding:var(--v3-spacing-md);border:none;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:all var(--v3-transition-fast)}.staff-v3-booking-detail-action-button-primary{background:var(--v3-success);color:#fff}.staff-v3-booking-detail-action-button-primary:active{background:#059669;opacity:.9}.staff-v3-booking-detail-action-button-secondary{background:var(--v3-primary);color:#fff}.staff-v3-booking-detail-action-button-secondary:active{background:var(--v3-primary-hover);opacity:.9}.staff-v3-booking-detail-action-button-danger{background:var(--v3-error);color:#fff}.staff-v3-booking-detail-action-button-danger:active{background:#dc2626;opacity:.9}.staff-v3-booking-detail-alert-actions{display:flex;gap:var(--v3-spacing-sm);margin-top:var(--v3-spacing-md)}.staff-v3-booking-detail-alert-button{flex:1;min-height:var(--v3-tap-target-min);padding:var(--v3-spacing-sm) var(--v3-spacing-md);border:none;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:opacity var(--v3-transition-fast)}.staff-v3-booking-detail-alert-button-accept{background:#ffffff4d;color:#fff}.staff-v3-booking-detail-alert-button-accept:active{opacity:.8}.staff-v3-booking-detail-alert-button-reject{background:#fff3;color:#fff}.staff-v3-booking-detail-alert-button-reject:active{opacity:.8}.staff-v3-booking-detail-action-button-highlight{animation:pulse-highlight 2s ease-in-out infinite;box-shadow:0 0 0 3px #3b82f680;transform:scale(1.02)}@keyframes pulse-highlight{0%,to{box-shadow:0 0 0 3px #3b82f680}50%{box-shadow:0 0 0 6px #3b82f64d}}.staff-v3-booking-detail-action-spinner{display:inline-block;animation:staff-v3-spin 1s linear infinite;margin-right:4px}@keyframes staff-v3-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.staff-v3-bottom-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--v3-backdrop);z-index:var(--v3-z-backdrop);opacity:0;visibility:hidden;transition:opacity var(--v3-transition-base),visibility var(--v3-transition-base);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.staff-v3-bottom-sheet-backdrop.open{opacity:1;visibility:visible}.staff-v3-bottom-sheet{position:fixed;left:0;right:0;bottom:0;height:calc(var(--vvh, 100dvh) - env(safe-area-inset-top,0px));max-height:calc(var(--vvh, 100dvh) - env(safe-area-inset-top,0px));top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);box-sizing:border-box;background:var(--v3-background);border-radius:var(--v3-border-radius-lg) var(--v3-border-radius-lg) 0 0;z-index:var(--v3-z-bottom-sheet);box-shadow:0 -4px 20px #00000026;transform:translate3d(0,100%,0);transition:transform var(--v3-transition-base);display:flex;flex-direction:column;overflow:hidden;-webkit-overflow-scrolling:touch;will-change:transform}@media (max-width: 768px){.staff-v3-bottom-sheet{border-radius:0}}@media (min-width: 769px){.staff-v3-bottom-sheet{left:50%;right:auto;transform:translate3d(-50%,100%,0);width:min(560px,calc(100vw - 32px));height:80vh;max-height:80vh;top:auto;border-radius:var(--v3-border-radius-lg)}.staff-v3-bottom-sheet.open{transform:translate3d(-50%,0,0)}}.staff-v3-bottom-sheet.open{transform:translateZ(0)}.staff-v3-bottom-sheet-handle{width:40px;height:4px;background:var(--v3-border);border-radius:2px;margin:var(--v3-spacing-sm) auto;flex-shrink:0}.staff-v3-bottom-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:var(--v3-spacing-md);border-bottom:1px solid var(--v3-border);min-height:var(--v3-tap-target-min);flex-shrink:0}.staff-v3-bottom-sheet-title{font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0;flex:1}.staff-v3-bottom-sheet-close{width:var(--v3-tap-target-min);height:var(--v3-tap-target-min);display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--v3-text-secondary);font-size:24px;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:var(--v3-border-radius-sm);transition:background-color var(--v3-transition-fast)}.staff-v3-bottom-sheet-close:active{background:var(--v3-surface)}.staff-v3-bottom-sheet-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:var(--v3-spacing-md);padding-bottom:calc(var(--v3-spacing-md) + var(--footer-h, 72px) + env(safe-area-inset-bottom,0px) + 16px);scroll-padding-bottom:calc(var(--footer-h, 72px) + env(safe-area-inset-bottom,0px))}.staff-v3-bottom-sheet-footer{flex-shrink:0;display:flex;gap:var(--v3-spacing-md);padding:var(--v3-spacing-md);padding-bottom:calc(var(--v3-spacing-md) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--v3-border);background:var(--v3-background)}@supports (-webkit-touch-callout: none){.staff-v3-bottom-sheet{transform:translate3d(0,100%,0)}.staff-v3-bottom-sheet.open{transform:translateZ(0)}}.customer-autocomplete-wrapper{position:relative;width:100%}.customer-autocomplete-input{width:100%;padding:var(--v3-spacing-sm, 12px);border:1px solid var(--v3-border, #ddd);border-radius:var(--v3-border-radius-sm, 6px);font-size:var(--v3-font-size-base, 16px);font-family:inherit;background:var(--v3-background, #fff);color:var(--v3-text-primary, #333);transition:border-color var(--v3-transition-fast, .2s)}.customer-autocomplete-input:focus{outline:none;border-color:var(--v3-primary, #007bff);box-shadow:0 0 0 2px var(--v3-primary-light, rgba(0, 123, 255, .1))}.customer-autocomplete-input:disabled{background:var(--v3-surface, #f5f5f5);cursor:not-allowed;opacity:.6}.customer-autocomplete-loading{position:absolute;right:var(--v3-spacing-sm, 12px);top:50%;transform:translateY(-50%);font-size:18px;pointer-events:none}.customer-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--v3-background, #fff);border:1px solid var(--v3-border, #ddd);border-radius:var(--v3-border-radius-sm, 6px);box-shadow:0 4px 12px #00000026;max-height:300px;overflow-y:auto;z-index:1000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.customer-autocomplete-item{padding:var(--v3-spacing-sm, 12px);cursor:pointer;transition:background-color var(--v3-transition-fast, .2s);border-bottom:1px solid var(--v3-border-light, #f0f0f0)}.customer-autocomplete-item:last-child{border-bottom:none}.customer-autocomplete-item:hover,.customer-autocomplete-item.selected{background:var(--v3-primary-light, rgba(0, 123, 255, .1))}.customer-autocomplete-item-name{font-weight:var(--v3-font-weight-semibold, 600);font-size:var(--v3-font-size-base, 16px);color:var(--v3-text-primary, #333);margin-bottom:4px}.customer-autocomplete-item-phone{font-size:var(--v3-font-size-sm, 14px);color:var(--v3-text-secondary, #666)}.customer-autocomplete-highlight{background:var(--v3-warning-light, rgba(255, 193, 7, .3));font-weight:var(--v3-font-weight-bold, 700);padding:0 2px;border-radius:2px}.customer-autocomplete-empty{padding:var(--v3-spacing-md, 16px);text-align:center;color:var(--v3-text-secondary, #666);font-size:var(--v3-font-size-sm, 14px)}.customer-autocomplete-dropdown::-webkit-scrollbar{width:6px}.customer-autocomplete-dropdown::-webkit-scrollbar-track{background:var(--v3-surface, #f5f5f5);border-radius:3px}.customer-autocomplete-dropdown::-webkit-scrollbar-thumb{background:var(--v3-border, #ddd);border-radius:3px}.customer-autocomplete-dropdown::-webkit-scrollbar-thumb:hover{background:var(--v3-text-secondary, #999)}.staff-v3-new-booking{padding:var(--v3-spacing-md)}.staff-v3-new-booking-error{background:var(--v3-error);color:#fff;padding:var(--v3-spacing-md);border-radius:var(--v3-border-radius-md);margin-bottom:var(--v3-spacing-md);font-size:var(--v3-font-size-sm)}.staff-v3-new-booking-step{margin-bottom:var(--v3-spacing-lg)}.staff-v3-new-booking-step-title{font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0 0 var(--v3-spacing-md) 0}.staff-v3-new-booking-loading,.staff-v3-new-booking-empty{text-align:center;padding:var(--v3-spacing-xl);color:var(--v3-text-secondary);font-size:var(--v3-font-size-sm)}.staff-v3-new-booking-options{display:flex;flex-direction:column;gap:var(--v3-spacing-sm)}.staff-v3-new-booking-option{padding:var(--v3-spacing-md);border:2px solid var(--v3-border);border-radius:var(--v3-border-radius-md);background:var(--v3-background);text-align:left;cursor:pointer;transition:all var(--v3-transition-fast);min-height:var(--v3-tap-target-min);display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-new-booking-option:active{transform:scale(.98)}.staff-v3-new-booking-option.selected{border-color:var(--v3-primary);background:var(--v3-surface)}.staff-v3-new-booking-option-name{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary)}.staff-v3-new-booking-option-details{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary)}.staff-v3-new-booking-date-picker{margin-top:var(--v3-spacing-md)}.staff-v3-new-booking-date-input{width:100%;padding:var(--v3-spacing-md);border:2px solid var(--v3-border);border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);min-height:var(--v3-tap-target-min);background:var(--v3-background);color:var(--v3-text-primary)}.staff-v3-new-booking-time-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--v3-spacing-sm);margin-top:var(--v3-spacing-md)}.staff-v3-new-booking-time-slot{padding:var(--v3-spacing-md);border:2px solid var(--v3-border);border-radius:var(--v3-border-radius-md);background:var(--v3-background);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary);cursor:pointer;transition:all var(--v3-transition-fast);min-height:var(--v3-tap-target-min);display:flex;align-items:center;justify-content:center}.staff-v3-new-booking-time-slot:active{transform:scale(.98)}.staff-v3-new-booking-time-slot.selected{border-color:var(--v3-primary);background:var(--v3-primary);color:#fff}.staff-v3-new-booking-form{display:flex;flex-direction:column;gap:var(--v3-spacing-md);margin-top:var(--v3-spacing-md)}.staff-v3-new-booking-label{display:flex;flex-direction:column;gap:var(--v3-spacing-xs);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary)}.staff-v3-new-booking-label-hint{font-weight:var(--v3-font-weight-normal);color:var(--v3-text-secondary);font-size:var(--v3-font-size-xs)}.staff-v3-new-booking-input,.staff-v3-new-booking-textarea{padding:var(--v3-spacing-md);border:2px solid var(--v3-border);border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);font-family:inherit;background:var(--v3-background);color:var(--v3-text-primary);min-height:var(--v3-tap-target-min);width:100%;box-sizing:border-box}.staff-v3-new-booking-textarea{resize:vertical;min-height:80px}.staff-v3-new-booking-input:focus,.staff-v3-new-booking-textarea:focus{outline:none;border-color:var(--v3-primary)}.staff-v3-new-booking-summary{margin-top:var(--v3-spacing-lg);padding:var(--v3-spacing-md);background:var(--v3-surface);border-radius:var(--v3-border-radius-md);display:flex;flex-direction:column;gap:var(--v3-spacing-sm)}.staff-v3-new-booking-summary-item{font-size:var(--v3-font-size-sm);color:var(--v3-text-primary)}.staff-v3-new-booking-actions{display:flex;gap:var(--v3-spacing-md);width:100%}.staff-v3-new-booking-button{flex:1;padding:var(--v3-spacing-md);border:none;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);cursor:pointer;transition:all var(--v3-transition-fast);min-height:var(--v3-tap-target-min);display:flex;align-items:center;justify-content:center}.staff-v3-new-booking-button:disabled{opacity:.5;cursor:not-allowed}.staff-v3-new-booking-button-back{background:var(--v3-surface);color:var(--v3-text-primary)}.staff-v3-new-booking-button-back:active:not(:disabled){background:var(--v3-border)}.staff-v3-new-booking-button-next,.staff-v3-new-booking-button-save{background:var(--v3-primary);color:#fff}.staff-v3-new-booking-button-next:active:not(:disabled),.staff-v3-new-booking-button-save:active:not(:disabled){background:var(--v3-primary-hover)}.staff-v3-notification-sheet{padding:var(--v3-spacing-md);display:flex;flex-direction:column;gap:var(--v3-spacing-lg)}.staff-v3-notification-sheet-warning{padding:var(--v3-spacing-md);background:var(--v3-warning);color:#fff;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium)}.staff-v3-notification-sheet-form{display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-notification-sheet-label{display:flex;flex-direction:column;gap:var(--v3-spacing-xs);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary)}.staff-v3-notification-sheet-input,.staff-v3-notification-sheet-textarea{padding:var(--v3-spacing-md);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);background:var(--v3-background);color:var(--v3-text-primary);font-family:inherit;min-height:var(--v3-tap-target-min);-webkit-tap-highlight-color:transparent;touch-action:manipulation;resize:vertical}.staff-v3-notification-sheet-textarea{min-height:100px;resize:vertical}.staff-v3-notification-sheet-input:focus,.staff-v3-notification-sheet-textarea:focus{outline:none;border-color:var(--v3-primary);box-shadow:0 0 0 3px #2563eb1a}.staff-v3-notification-sheet-actions{display:flex;gap:var(--v3-spacing-md);margin-top:var(--v3-spacing-md);padding-top:var(--v3-spacing-md);border-top:1px solid var(--v3-border)}.staff-v3-notification-sheet-button{flex:1;min-height:var(--v3-tap-target-min);padding:var(--v3-spacing-md);border:none;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:all var(--v3-transition-fast)}.staff-v3-notification-sheet-button:disabled{opacity:.5;cursor:not-allowed}.staff-v3-notification-sheet-button-cancel{background:var(--v3-surface);color:var(--v3-text-primary)}.staff-v3-notification-sheet-button-cancel:active:not(:disabled){background:var(--v3-border)}.staff-v3-notification-sheet-button-send{background:var(--v3-primary);color:#fff}.staff-v3-notification-sheet-button-send:active:not(:disabled){background:var(--v3-primary-hover);opacity:.9}.staff-v3-new-customer-sheet{padding:var(--v3-spacing-md);display:flex;flex-direction:column;gap:var(--v3-spacing-lg)}.staff-v3-new-customer-form{display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-new-customer-error{padding:var(--v3-spacing-md);background:var(--v3-error);color:#fff;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium)}.staff-v3-new-customer-label{display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-new-customer-label label{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary)}.staff-v3-new-customer-input{padding:var(--v3-spacing-md);border:2px solid var(--v3-border);border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);font-family:inherit;background:var(--v3-background);color:var(--v3-text-primary);min-height:var(--v3-tap-target-min);width:100%;box-sizing:border-box;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.staff-v3-new-customer-input:focus{outline:none;border-color:var(--v3-primary);box-shadow:0 0 0 3px #2563eb1a}.staff-v3-new-customer-input:disabled{opacity:.6;cursor:not-allowed}.staff-v3-new-customer-checkbox{display:flex;align-items:center;gap:var(--v3-spacing-sm);padding:var(--v3-spacing-sm)}.staff-v3-new-customer-checkbox label{display:flex;align-items:center;gap:var(--v3-spacing-sm);font-size:var(--v3-font-size-sm);color:var(--v3-text-primary);cursor:pointer}.staff-v3-new-customer-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--v3-primary)}.staff-v3-new-customer-checkbox input[type=checkbox]:disabled{opacity:.6;cursor:not-allowed}.staff-v3-new-customer-actions{display:flex;gap:var(--v3-spacing-md);margin-top:var(--v3-spacing-md);padding-top:var(--v3-spacing-md);border-top:1px solid var(--v3-border)}.staff-v3-new-customer-button{flex:1;padding:var(--v3-spacing-md);border:none;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);cursor:pointer;transition:all var(--v3-transition-fast);min-height:var(--v3-tap-target-min);display:flex;align-items:center;justify-content:center}.staff-v3-new-customer-button:disabled{opacity:.5;cursor:not-allowed}.staff-v3-new-customer-button-cancel{background:var(--v3-surface);color:var(--v3-text-primary)}.staff-v3-new-customer-button-cancel:active:not(:disabled){background:var(--v3-border)}.staff-v3-new-customer-button-save{background:var(--v3-primary);color:#fff}.staff-v3-new-customer-button-save:active:not(:disabled){background:var(--v3-primary-hover)}.staff-v3-new-customer-success{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--v3-spacing-md);padding:var(--v3-spacing-xl);text-align:center}.staff-v3-new-customer-success-icon{font-size:3rem}.staff-v3-new-customer-success-message{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0}.staff-v3-control-room{padding-bottom:80px;min-height:100vh;background:var(--v3-surface)}.staff-v3-control-room-mobile-queue-card{background:var(--v3-background);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-md);display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:all var(--v3-transition-fast);margin-bottom:var(--v3-spacing-md)}.staff-v3-control-room-mobile-queue-card:active{background:var(--v3-surface);border-color:var(--v3-primary)}.staff-v3-control-room-mobile-queue-card-content{display:flex;align-items:center;gap:var(--v3-spacing-md);flex:1}.staff-v3-control-room-mobile-queue-card-title{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary)}.staff-v3-control-room-mobile-queue-card-count{font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-bold);color:var(--v3-primary);background:var(--v3-primary-light);padding:4px 12px;border-radius:var(--v3-border-radius-sm)}.staff-v3-control-room-mobile-queue-card-arrow{font-size:var(--v3-font-size-xl);color:var(--v3-text-secondary)}.staff-v3-control-room-mobile-header{margin-bottom:var(--v3-spacing-md);padding:0 var(--v3-spacing-md)}.staff-v3-control-room-mobile-title{font-size:var(--v3-font-size-xl);font-weight:var(--v3-font-weight-bold);color:var(--v3-text-primary);margin:0}@media (min-width: 1024px){.staff-v3-control-room.desktop{padding-bottom:0;max-width:1400px;margin:0 auto;padding:var(--v3-spacing-lg)}.staff-v3-control-room-desktop-header{padding:var(--v3-spacing-lg) 0;border-bottom:1px solid var(--v3-border);margin-bottom:var(--v3-spacing-lg)}.staff-v3-control-room-desktop-title{font-size:var(--v3-font-size-2xl);font-weight:var(--v3-font-weight-bold);color:var(--v3-text-primary);margin:0}.staff-v3-control-room-queue{margin-bottom:var(--v3-spacing-xl)}.staff-v3-control-room-queue-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--v3-spacing-md)}.staff-v3-control-room-queue-card{background:var(--v3-background);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-lg);box-shadow:0 2px 4px #0000000d;transition:all var(--v3-transition-fast)}.staff-v3-control-room-queue-card:hover{box-shadow:0 4px 12px #0000001a;border-color:var(--v3-primary)}.staff-v3-control-room-queue-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--v3-spacing-md)}.staff-v3-control-room-queue-card-title{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary)}.staff-v3-control-room-queue-card-count{font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-bold);color:var(--v3-primary);background:var(--v3-primary-light);padding:4px 12px;border-radius:var(--v3-border-radius-sm)}.staff-v3-control-room-queue-card-button{width:100%;padding:var(--v3-spacing-sm) var(--v3-spacing-md);border:1px solid var(--v3-border);background:var(--v3-surface);color:var(--v3-text-primary);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);border-radius:var(--v3-border-radius-sm);cursor:pointer;transition:all var(--v3-transition-fast)}.staff-v3-control-room-queue-card-button:hover{background:var(--v3-primary);color:#fff;border-color:var(--v3-primary)}.staff-v3-control-room-queue-card-clickable{cursor:pointer}.staff-v3-control-room-queue-card-clickable:focus{outline:2px solid var(--v3-primary);outline-offset:2px}.staff-v3-control-room-cta{margin-bottom:var(--v3-spacing-xl)}.staff-v3-control-room-cta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--v3-spacing-md)}.staff-v3-control-room-cta-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--v3-spacing-sm);padding:var(--v3-spacing-lg);border:1px solid var(--v3-border);background:var(--v3-background);border-radius:var(--v3-border-radius-md);cursor:pointer;transition:all var(--v3-transition-fast);min-height:120px}.staff-v3-control-room-cta-button:hover{border-color:var(--v3-primary);background:var(--v3-primary-light);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.staff-v3-control-room-cta-icon{font-size:32px}.staff-v3-control-room-cta-label{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary)}.staff-v3-kpi-grid{grid-template-columns:repeat(3,1fr)}}.staff-v3-header{background:var(--v3-background);border-bottom:1px solid var(--v3-border);padding:var(--v3-spacing-md);position:sticky;top:0;z-index:100}.staff-v3-header-content{display:flex;align-items:center;justify-content:space-between}.staff-v3-header-title{font-size:var(--v3-font-size-xl);font-weight:var(--v3-font-weight-bold);color:var(--v3-text-primary);margin:0}.staff-v3-header-spacer{width:var(--v3-tap-target-min)}.staff-v3-header-actions{display:flex;gap:var(--v3-spacing-sm)}.staff-v3-header-button{width:var(--v3-tap-target-min);height:var(--v3-tap-target-min);display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--v3-text-secondary);font-size:20px;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:var(--v3-border-radius-sm);transition:background-color var(--v3-transition-fast)}.staff-v3-header-button:active{background:var(--v3-surface)}.staff-v3-section{padding:var(--v3-spacing-md)}.staff-v3-section-title{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0 0 var(--v3-spacing-md) 0;min-width:0;overflow:visible;white-space:normal;word-wrap:break-word}.staff-v3-kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--v3-spacing-md);margin-bottom:var(--v3-spacing-lg)}.staff-v3-kpi-card{background:var(--v3-background);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-md);box-shadow:0 2px 4px #0000000d;min-height:80px;display:flex;flex-direction:column;justify-content:center}.staff-v3-kpi-value{font-size:var(--v3-font-size-xl);font-weight:var(--v3-font-weight-bold);color:var(--v3-text-primary);line-height:1.2;margin-bottom:var(--v3-spacing-xs)}.staff-v3-kpi-label{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);line-height:1.2}.staff-v3-booking-list{display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-booking-card{background:var(--v3-background);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-md);box-shadow:0 2px 4px #0000000d;min-height:var(--v3-tap-target-min);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:box-shadow var(--v3-transition-fast)}.staff-v3-booking-card:active{box-shadow:0 4px 8px #0000001a}.staff-v3-booking-time{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin-bottom:var(--v3-spacing-xs)}.staff-v3-booking-customer{font-size:var(--v3-font-size-sm);color:var(--v3-text-primary);margin-bottom:var(--v3-spacing-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.staff-v3-booking-service{font-size:var(--v3-font-size-xs);color:var(--v3-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.staff-v3-staff-list{display:flex;flex-direction:column;gap:var(--v3-spacing-sm)}.staff-v3-staff-status-card{background:var(--v3-background);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-md);box-shadow:0 2px 4px #0000000d;display:flex;align-items:center;gap:var(--v3-spacing-md)}.staff-v3-staff-status-icon{font-size:20px;flex-shrink:0}.staff-v3-staff-status-info{flex:1}.staff-v3-staff-status-name{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary);margin-bottom:var(--v3-spacing-xs)}.staff-v3-staff-status-detail{font-size:var(--v3-font-size-xs);color:var(--v3-text-secondary)}.staff-v3-quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--v3-spacing-md)}.staff-v3-quick-action{background:var(--v3-background);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-md);box-shadow:0 2px 4px #0000000d;min-height:var(--v3-tap-target-min);min-width:var(--v3-tap-target-min);display:flex;flex-direction:column;align-items:center;justify-content:center;border:none;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:box-shadow var(--v3-transition-fast)}.staff-v3-quick-action:active{box-shadow:0 4px 8px #0000001a}.staff-v3-quick-action-icon{font-size:24px;margin-bottom:var(--v3-spacing-xs)}.staff-v3-quick-action-label{font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary)}.staff-v3-alert-badge{background:var(--v3-warning);color:#fff;border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-md);margin-bottom:var(--v3-spacing-md);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:opacity var(--v3-transition-fast)}.staff-v3-alert-badge:active{opacity:.8}.staff-v3-loading-skeleton{display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-see-all-button{margin-top:var(--v3-spacing-md);padding:var(--v3-spacing-sm) var(--v3-spacing-md);border:none;background:transparent;color:var(--v3-primary);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;min-height:var(--v3-tap-target-min);transition:opacity var(--v3-transition-fast)}.staff-v3-see-all-button:active{opacity:.7}.staff-v3-inbox-section{margin-bottom:var(--v3-spacing-lg)}.staff-v3-inbox-blocks{display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-inbox-block{background:var(--v3-background);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);box-shadow:0 1px 3px #00000014;overflow:hidden;transition:box-shadow var(--v3-transition-fast),border-color var(--v3-transition-fast)}.staff-v3-inbox-block:hover{box-shadow:0 2px 6px #0000001f;border-color:var(--v3-primary)}.staff-v3-inbox-block-header{padding:var(--v3-spacing-md) var(--v3-spacing-lg);padding-right:calc(var(--v3-spacing-lg) + 24px);display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:all var(--v3-transition-fast);min-height:var(--v3-tap-target-min);background:var(--v3-background);position:relative}.staff-v3-inbox-block-header:after{content:"→";position:absolute;right:var(--v3-spacing-lg);color:var(--v3-text-secondary);font-size:var(--v3-font-size-lg);opacity:.5;transition:transform var(--v3-transition-fast);pointer-events:none}.staff-v3-inbox-block-header:active{background:var(--v3-surface)}.staff-v3-inbox-block-title{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);display:flex;align-items:center;gap:var(--v3-spacing-xs)}.staff-v3-inbox-block:first-of-type .staff-v3-inbox-block-title:before{content:"📋";font-size:var(--v3-font-size-lg)}.staff-v3-inbox-block:last-of-type .staff-v3-inbox-block-title:before{content:"⏰";font-size:var(--v3-font-size-lg)}.staff-v3-inbox-block-count{font-size:28px;font-weight:var(--v3-font-weight-bold);color:var(--v3-primary);min-width:48px;text-align:right;line-height:1;margin-right:var(--v3-spacing-md)}.staff-v3-inbox-block-preview{border-top:1px solid var(--v3-border);padding:var(--v3-spacing-sm);display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-inbox-preview-item{padding:var(--v3-spacing-sm) var(--v3-spacing-md);border-radius:var(--v3-border-radius-sm);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:all var(--v3-transition-fast);min-height:var(--v3-tap-target-min);display:flex;align-items:center;gap:var(--v3-spacing-md);background:var(--v3-background);margin:2px}.staff-v3-inbox-preview-item:hover{background:var(--v3-surface)}.staff-v3-inbox-preview-item:active{background:var(--v3-border);transform:scale(.98)}.staff-v3-inbox-preview-time{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);min-width:50px}.staff-v3-inbox-preview-name{font-size:var(--v3-font-size-sm);color:var(--v3-text-primary);flex:1}.staff-v3-inbox-preview-staff{font-size:var(--v3-font-size-xs);color:var(--v3-text-secondary)}.staff-v3-inbox-empty{text-align:center;padding:var(--v3-spacing-lg);color:var(--v3-text-secondary);font-size:var(--v3-font-size-sm);background:var(--v3-background);border-radius:var(--v3-border-radius-md)}@media (min-width: 768px){.staff-v3-control-room{max-width:768px;margin:0 auto}}.staff-v3-filter-chip{display:inline-flex;align-items:center;gap:var(--v3-spacing-xs);padding:var(--v3-spacing-sm) var(--v3-spacing-md);border:1px solid var(--v3-border);background:var(--v3-background);color:var(--v3-text-secondary);border-radius:var(--v3-border-radius-lg);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;min-height:var(--v3-tap-target-min);transition:all var(--v3-transition-fast);white-space:nowrap}.staff-v3-filter-chip:active{transform:scale(.98)}.staff-v3-filter-chip.active{background:var(--v3-primary);color:#fff;border-color:var(--v3-primary)}.staff-v3-filter-chip-count{background:#fff3;color:inherit;padding:2px 6px;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold);min-width:20px;text-align:center}.staff-v3-filter-chip.active .staff-v3-filter-chip-count{background:#ffffff4d}.staff-v3-time-change-sheet{padding:var(--v3-spacing-md);display:flex;flex-direction:column;gap:var(--v3-spacing-lg)}.staff-v3-time-change-info{padding:var(--v3-spacing-md);background:var(--v3-surface);border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary)}.staff-v3-time-change-info p{margin:0;margin-bottom:var(--v3-spacing-xs)}.staff-v3-time-change-info p:last-child{margin-bottom:0}.staff-v3-time-change-info strong{color:var(--v3-text-primary);font-weight:var(--v3-font-weight-semibold)}.staff-v3-time-change-form{display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-time-change-label{display:flex;flex-direction:column;gap:var(--v3-spacing-xs);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary)}.staff-v3-time-change-input,.staff-v3-time-change-select{padding:var(--v3-spacing-md);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);background:var(--v3-background);color:var(--v3-text-primary);min-height:var(--v3-tap-target-min);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.staff-v3-time-change-input:focus,.staff-v3-time-change-select:focus{outline:none;border-color:var(--v3-primary);box-shadow:0 0 0 3px #2563eb1a}.staff-v3-time-change-time-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--v3-spacing-md)}.staff-v3-time-change-actions{display:flex;gap:var(--v3-spacing-md);margin-top:var(--v3-spacing-md);padding-top:var(--v3-spacing-md);border-top:1px solid var(--v3-border)}.staff-v3-time-change-button{flex:1;min-height:var(--v3-tap-target-min);padding:var(--v3-spacing-md);border:none;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:all var(--v3-transition-fast)}.staff-v3-time-change-button-cancel{background:var(--v3-surface);color:var(--v3-text-primary)}.staff-v3-time-change-button-cancel:active{background:var(--v3-border)}.staff-v3-time-change-button-confirm{background:var(--v3-primary);color:#fff}.staff-v3-time-change-button-confirm:active{background:var(--v3-primary-hover);opacity:.9}.staff-v3-search-bar{position:relative;display:flex;align-items:center;background:var(--v3-background);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-sm) var(--v3-spacing-md);min-height:var(--v3-tap-target-min)}.staff-v3-search-bar-icon{font-size:18px;color:var(--v3-text-secondary);margin-right:var(--v3-spacing-sm);flex-shrink:0}.staff-v3-search-bar-input{flex:1;border:none;background:transparent;color:var(--v3-text-primary);font-size:var(--v3-font-size-base);outline:none;min-width:0}.staff-v3-search-bar-input::placeholder{color:var(--v3-text-muted)}.staff-v3-search-bar-clear{width:var(--v3-tap-target-min);height:var(--v3-tap-target-min);display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--v3-text-secondary);font-size:24px;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:var(--v3-border-radius-sm);transition:color var(--v3-transition-fast);flex-shrink:0}.staff-v3-search-bar-clear:active{color:var(--v3-text-primary);background:var(--v3-surface)}.staff-v3-desktop-header{height:64px;border-bottom:1px solid var(--v3-border);background:var(--v3-background);position:sticky;top:0;z-index:10}.staff-v3-desktop-header{min-height:64px;height:auto;padding:var(--v3-spacing-md) 0}.staff-v3-desktop-header-content{display:flex;flex-direction:column;gap:var(--v3-spacing-md);padding:0 var(--v3-spacing-lg);max-width:100%}.staff-v3-desktop-header-title{font-size:var(--v3-font-size-lg);font-weight:600;color:var(--v3-text-primary);margin:0;white-space:nowrap}.staff-v3-desktop-header-main{display:flex;flex-direction:column;gap:var(--v3-spacing-sm);flex:1}.staff-v3-desktop-header-row1{display:flex;align-items:center;gap:var(--v3-spacing-md);width:100%}.staff-v3-desktop-header-search{flex:1;max-width:600px}.staff-v3-desktop-header-actions{display:flex;align-items:center;gap:var(--v3-spacing-md);flex-shrink:0}.staff-v3-desktop-header-row2{display:flex;align-items:center;justify-content:flex-start;width:100%}.staff-v3-desktop-header-date{flex-shrink:0}@media (max-width: 1023px){.staff-v3-desktop-header{display:none}}.staff-v3-date-controls{display:flex;align-items:center;gap:var(--v3-spacing-xs);background:var(--v3-surface);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-xs)}.staff-v3-date-controls-button{width:32px;height:32px;border:none;background:transparent;border-radius:var(--v3-border-radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--v3-text-secondary);transition:background var(--v3-transition-fast)}.staff-v3-date-controls-button:hover{background:var(--v3-surface-hover)}.staff-v3-date-controls-pill{padding:6px 12px;border:none;background:transparent;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-sm);font-weight:500;color:var(--v3-text-secondary);cursor:pointer;transition:all var(--v3-transition-fast)}.staff-v3-date-controls-pill.active{background:var(--v3-primary);color:#fff}.staff-v3-date-controls-pill:hover:not(.active){background:var(--v3-surface-hover)}.staff-v3-date-controls-datepicker-wrapper{position:relative}.staff-v3-date-controls-datepicker-button{padding:6px 12px;border:none;background:transparent;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-sm);font-weight:500;color:var(--v3-text-primary);cursor:pointer;white-space:nowrap;transition:background var(--v3-transition-fast)}.staff-v3-date-controls-datepicker-button:hover{background:var(--v3-surface-hover)}.staff-v3-date-controls-datepicker-input{position:absolute;top:100%;left:0;margin-top:4px;padding:8px;border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-sm);background:var(--v3-background);font-size:var(--v3-font-size-sm);z-index:100}.staff-v3-dropdown{position:relative;display:inline-block}.staff-v3-dropdown-button{display:flex;align-items:center;gap:var(--v3-spacing-xs);padding:8px 12px;border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);background:var(--v3-background);font-size:var(--v3-font-size-sm);color:var(--v3-text-primary);cursor:pointer;transition:all var(--v3-transition-fast);white-space:nowrap}.staff-v3-dropdown-button:hover{border-color:var(--v3-primary);background:var(--v3-surface)}.staff-v3-dropdown-label{color:var(--v3-text-secondary);font-weight:500}.staff-v3-dropdown-value{color:var(--v3-text-primary);font-weight:500}.staff-v3-dropdown-arrow{color:var(--v3-text-secondary);font-size:10px;margin-left:auto}.staff-v3-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:200px;background:var(--v3-background);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);box-shadow:0 4px 12px #0000001a;z-index:100;max-height:300px;overflow-y:auto}.staff-v3-dropdown-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;border:none;background:transparent;text-align:left;font-size:var(--v3-font-size-sm);color:var(--v3-text-primary);cursor:pointer;transition:background var(--v3-transition-fast)}.staff-v3-dropdown-item:hover{background:var(--v3-surface)}.staff-v3-dropdown-item.active{background:var(--v3-primary-light);color:var(--v3-primary);font-weight:500}.staff-v3-dropdown-item-count{color:var(--v3-text-secondary);font-size:var(--v3-font-size-xs);margin-left:var(--v3-spacing-xs)}.staff-v3-view-toggle{display:flex;align-items:center;gap:0;background:var(--v3-surface);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);padding:2px}.staff-v3-view-toggle-button{padding:6px 16px;border:none;background:transparent;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-sm);font-weight:500;color:var(--v3-text-secondary);cursor:pointer;transition:all var(--v3-transition-fast);white-space:nowrap}.staff-v3-view-toggle-button:hover{color:var(--v3-text-primary)}.staff-v3-view-toggle-button.active{background:var(--v3-primary);color:#fff}.staff-v3-bookings-week-view{padding:var(--v3-spacing-md)}.staff-v3-bookings-week-day{margin-bottom:var(--v3-spacing-xl)}.staff-v3-bookings-week-day-header{display:flex;align-items:center;justify-content:space-between;padding:var(--v3-spacing-md);background:var(--v3-surface);border-left:4px solid var(--v3-primary);border-radius:var(--v3-border-radius-md);margin-bottom:var(--v3-spacing-md)}.staff-v3-bookings-week-day-title{font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0}.staff-v3-bookings-week-day-count{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);background:var(--v3-primary-light);padding:4px 12px;border-radius:var(--v3-border-radius-sm)}.staff-v3-bookings-week-day-bookings{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--v3-spacing-md);padding:0 var(--v3-spacing-md)}.staff-v3-bookings-week-booking{display:flex;align-items:flex-start;gap:var(--v3-spacing-md);padding:var(--v3-spacing-md);background:var(--v3-background);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);cursor:pointer;transition:all var(--v3-transition-fast);position:relative}.staff-v3-bookings-week-booking:hover{border-color:var(--v3-primary);background:var(--v3-surface);transform:translateY(-2px);box-shadow:0 2px 8px #0000001a}.staff-v3-bookings-week-booking.selected{border-color:var(--v3-primary);background:var(--v3-primary-light)}.staff-v3-bookings-week-booking-time{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-secondary);min-width:60px;flex-shrink:0}.staff-v3-bookings-week-booking-content{flex:1;display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-bookings-week-booking-customer{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary)}.staff-v3-bookings-week-booking-service{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary)}.staff-v3-bookings-week-booking-meta{display:flex;align-items:center;gap:var(--v3-spacing-sm);font-size:var(--v3-font-size-xs)}.staff-v3-bookings-week-booking-staff{color:var(--v3-text-secondary)}.staff-v3-bookings-week-booking-status{padding:2px 6px;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold);text-transform:uppercase}.staff-v3-bookings-week-booking-status.status-booked{background:var(--v3-warning);color:#fff}.staff-v3-bookings-week-booking-status.status-confirmed{background:var(--v3-success);color:#fff}.staff-v3-bookings-week-booking-status.status-done{background:var(--v3-text-secondary);color:#fff}.staff-v3-bookings-week-booking-status.status-canceled{background:var(--v3-error);color:#fff}.staff-v3-bookings-week-booking-badge{position:absolute;top:var(--v3-spacing-xs);right:var(--v3-spacing-xs);font-size:18px}.staff-v3-bookings-week-empty{padding:var(--v3-spacing-xl);text-align:center;color:var(--v3-text-secondary)}.staff-v3-bookings-list-view{overflow-x:auto}.staff-v3-bookings-table{width:100%;border-collapse:collapse;background:var(--v3-background)}.staff-v3-bookings-table thead{background:var(--v3-surface);position:sticky;top:0;z-index:10}.staff-v3-bookings-table th{padding:var(--v3-spacing-md);text-align:left;font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-secondary);border-bottom:2px solid var(--v3-border)}.staff-v3-bookings-table tbody tr{border-bottom:1px solid var(--v3-border);cursor:pointer;transition:background var(--v3-transition-fast)}.staff-v3-bookings-table tbody tr:hover{background:var(--v3-surface)}.staff-v3-bookings-table tbody tr.selected{background:var(--v3-primary-light);border-left:3px solid var(--v3-primary)}.staff-v3-bookings-table td{padding:var(--v3-spacing-md);font-size:var(--v3-font-size-sm);color:var(--v3-text-primary)}.staff-v3-bookings-table-time{font-weight:var(--v3-font-weight-semibold);white-space:nowrap}.staff-v3-bookings-table-customer{font-weight:var(--v3-font-weight-medium)}.staff-v3-bookings-table-service,.staff-v3-bookings-table-staff{color:var(--v3-text-secondary)}.staff-v3-bookings-table-status{white-space:nowrap}.status-badge{padding:4px 8px;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold);text-transform:uppercase}.status-badge.status-booked{background:var(--v3-warning);color:#fff}.status-badge.status-confirmed{background:var(--v3-success);color:#fff}.status-badge.status-done{background:var(--v3-text-secondary);color:#fff}.status-badge.status-canceled{background:var(--v3-error);color:#fff}.change-badge{font-size:var(--v3-font-size-xs);color:var(--v3-warning);font-weight:var(--v3-font-weight-medium)}.staff-v3-bookings-list-empty{display:flex;align-items:center;justify-content:center;padding:var(--v3-spacing-xl);color:var(--v3-text-secondary);min-height:400px}@media (max-width: 1023px){.staff-v3-bookings-list-view{display:none}}.staff-bookings-calendar{display:flex!important;flex-direction:column;width:100%;height:calc(100vh - 200px);min-height:600px;max-height:none;background:var(--v3-background);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-lg);overflow:hidden;box-shadow:0 2px 8px #0000000a;position:relative;z-index:1;visibility:visible!important;opacity:1!important}.staff-bookings-header{height:64px;padding:0 var(--v3-spacing-md);border-bottom:2px solid var(--v3-border);background:var(--v3-surface);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100}.staff-bookings-header-left{display:flex;align-items:center;gap:var(--v3-spacing-sm)}.staff-bookings-header-right{display:flex;gap:var(--v3-spacing-xs)}.staff-bookings-nav-button{width:36px;height:36px;border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);background:var(--v3-surface);color:var(--v3-text-primary);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.staff-bookings-nav-button:hover{background:var(--v3-background);border-color:var(--v3-primary)}.staff-bookings-date-wrapper{position:relative}.staff-bookings-date-button{padding:var(--v3-spacing-sm) var(--v3-spacing-md);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);background:var(--v3-surface);color:var(--v3-text-primary);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);cursor:pointer;transition:all .2s ease}.staff-bookings-date-button:hover{background:var(--v3-background);border-color:var(--v3-primary)}.staff-bookings-date-input{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.staff-bookings-view-toggle{padding:var(--v3-spacing-xs) var(--v3-spacing-md);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);background:var(--v3-surface);color:var(--v3-text-secondary);font-size:var(--v3-font-size-sm);cursor:pointer;transition:all .2s ease}.staff-bookings-view-toggle:hover{background:var(--v3-background)}.staff-bookings-view-toggle.active{background:var(--v3-primary);color:#fff;border-color:var(--v3-primary)}.staff-bookings-grid{display:flex!important;flex:1;overflow:hidden;min-height:400px;visibility:visible!important;width:100%;min-height:0}.staff-bookings-time-column{flex:0 0 90px;display:flex;flex-direction:column;background:var(--v3-surface);border-right:2px solid var(--v3-border);position:sticky;left:0;z-index:10;height:100%}.staff-bookings-time-header{height:48px;border-bottom:2px solid var(--v3-border);background:var(--v3-surface);position:sticky;top:0;z-index:10}.staff-bookings-time-content{position:relative;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0}.staff-bookings-time-slot{position:absolute;font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-secondary);padding-right:var(--v3-spacing-sm);text-align:right;width:100%;pointer-events:none;font-variant-numeric:tabular-nums}.staff-bookings-time-slot.centered{transform:translateY(-50%)}.staff-bookings-time-slot.edge{transform:translateY(0)}.staff-bookings-staff-columns{flex:1;display:flex;overflow-x:auto;overflow-y:hidden;min-width:0;align-items:stretch}.staff-bookings-staff-column-wrapper{flex:0 0 280px;min-width:280px;display:flex;flex-direction:column}.staff-bookings-staff-column{display:flex;flex-direction:column;border-right:1px solid var(--v3-border);background:var(--v3-background);position:relative;height:100%}.staff-bookings-staff-header{height:48px;padding:0 var(--v3-spacing-md);border-bottom:2px solid var(--v3-border);background:var(--v3-surface);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10}.staff-bookings-staff-name{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary)}.staff-bookings-staff-count{font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-secondary);background:var(--v3-surface);padding:2px 8px;border-radius:12px}.staff-bookings-staff-content{position:relative;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0;background:repeating-linear-gradient(to bottom,transparent,transparent 59px,var(--v3-border) 59px,var(--v3-border) 60px)}.staff-bookings-hour-line{position:absolute;left:0;right:0;height:1px;background:var(--v3-border);z-index:0;opacity:.5}.staff-booking-block{position:absolute;min-height:60px;background:#fff;border:2px solid var(--v3-primary);border-left-width:4px;border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-sm) var(--v3-spacing-md);cursor:pointer;transition:all .2s ease;z-index:2;display:flex;flex-direction:column;gap:4px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.staff-booking-block:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px);z-index:5;border-left-width:6px}.staff-booking-block.selected{border-color:var(--v3-primary);box-shadow:0 0 0 3px #007bff33;z-index:6;background:#007bff0d}.staff-booking-block.status-confirmed{border-left-color:#10b981;background:#10b9810d}.staff-booking-block.status-booked{border-left-color:#f59e0b;background:#f59e0b0d}.staff-booking-block.status-done{border-left-color:#6b7280;background:#6b72800d;opacity:.7}.staff-booking-block.status-canceled{border-left-color:#ef4444;background:#ef44440d;opacity:.5}.staff-booking-block-time{font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-bold);color:var(--v3-text-primary);letter-spacing:.3px}.staff-booking-block-customer{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-booking-block-services{font-size:var(--v3-font-size-xs);color:var(--v3-text-secondary);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-booking-block-status{font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold);padding:2px 8px;border-radius:12px;display:inline-block;width:fit-content;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.staff-booking-block-status.status-confirmed{background:#10b9811a;color:#065f46}.staff-booking-block-status.status-booked{background:#f59e0b1a;color:#92400e}.staff-booking-block-status.status-done{background:#6b72801a;color:#374151}.staff-booking-block-status.status-canceled{background:#ef44441a;color:#991b1b}.staff-booking-block-badge{position:absolute;top:4px;right:4px;font-size:16px;line-height:1}.staff-empty-slot{position:absolute;border:1px dashed transparent;border-radius:var(--v3-border-radius-sm);cursor:pointer;transition:all .15s ease;z-index:1;background:transparent}.staff-empty-slot:hover{background:#007bff0d;border-color:var(--v3-primary);border-style:dashed}.staff-empty-slot:hover:after{content:"+";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:20px;font-weight:700;color:var(--v3-primary);opacity:.6}.staff-bookings-skeleton-nav-button{width:36px;height:36px;background:var(--v3-background);border-radius:var(--v3-border-radius-md);animation:skeleton-pulse 1.5s ease-in-out infinite}.staff-bookings-skeleton-date{width:200px;height:36px;background:var(--v3-background);border-radius:var(--v3-border-radius-md);animation:skeleton-pulse 1.5s ease-in-out infinite}.staff-bookings-skeleton-time-slot{position:absolute;width:60px;height:20px;background:var(--v3-background);border-radius:var(--v3-border-radius-sm);animation:skeleton-pulse 1.5s ease-in-out infinite;right:var(--v3-spacing-sm)}.staff-bookings-skeleton-staff-name{width:120px;height:24px;background:var(--v3-background);border-radius:var(--v3-border-radius-sm);animation:skeleton-pulse 1.5s ease-in-out infinite}.staff-bookings-skeleton-booking{position:absolute;width:calc(100% - 16px);height:80px;background:var(--v3-background);border-radius:var(--v3-border-radius-md);animation:skeleton-pulse 1.5s ease-in-out infinite;top:calc(var(--index, 0) * 120px);left:8px}@media (min-width: 1024px){.staff-bookings-calendar,.staff-bookings-grid{display:flex!important;visibility:visible!important}}@media (max-width: 1023px){.staff-bookings-staff-column-wrapper{min-width:240px}.staff-bookings-calendar{display:none!important}}@media (max-width: 767px){.staff-bookings-staff-column-wrapper{min-width:200px}.staff-bookings-time-column{flex:0 0 70px}.staff-booking-block{min-height:50px;padding:var(--v3-spacing-xs) var(--v3-spacing-sm)}.staff-bookings-calendar{display:none!important}}.staff-v3-next-customer-card{background:var(--v3-primary);color:#fff;border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-md);margin:var(--v3-spacing-md);margin-bottom:var(--v3-spacing-sm);cursor:pointer;transition:all var(--v3-transition-fast);position:sticky;top:140px;z-index:10;box-shadow:0 4px 12px #00000026}.staff-v3-next-customer-card:active{transform:scale(.98);box-shadow:0 2px 8px #0003}.staff-v3-next-customer-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--v3-spacing-sm)}.staff-v3-next-customer-card-label{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);opacity:.9}.staff-v3-next-customer-card-time{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-bold)}.staff-v3-next-customer-card-body{display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-next-customer-card-name{font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-bold)}.staff-v3-next-customer-card-service{font-size:var(--v3-font-size-sm);opacity:.9}.staff-v3-next-customer-card-meta{display:flex;align-items:center;gap:var(--v3-spacing-sm);margin-top:var(--v3-spacing-xs);font-size:var(--v3-font-size-xs)}.staff-v3-next-customer-card-staff{opacity:.8}.staff-v3-next-customer-card-status{padding:2px 8px;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold);text-transform:uppercase;background:#fff3}.staff-v3-next-customer-card-badge{margin-top:var(--v3-spacing-xs);padding:var(--v3-spacing-xs) var(--v3-spacing-sm);background:#fff3;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-xs);text-align:center}@media (min-width: 1024px){.staff-v3-next-customer-card{display:none}}@media (max-width: 768px){.staff-v3-mobile-bookings-header{padding:var(--v3-spacing-md);background:var(--v3-background);border-bottom:1px solid var(--v3-border);position:sticky;top:0;z-index:10}.staff-v3-mobile-bookings-title{font-size:var(--v3-font-size-xl);font-weight:var(--v3-font-weight-bold);color:var(--v3-text-primary);margin:0 0 var(--v3-spacing-md) 0}.staff-v3-mobile-bookings-toggle{display:flex;gap:var(--v3-spacing-xs);background:var(--v3-surface);border-radius:var(--v3-border-radius-md);padding:2px;margin-bottom:var(--v3-spacing-sm)}.staff-v3-mobile-bookings-toggle-button{flex:1;padding:var(--v3-spacing-sm) var(--v3-spacing-md);border:none;background:transparent;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-secondary);cursor:pointer;transition:all var(--v3-transition-fast);min-height:44px}.staff-v3-mobile-bookings-toggle-button.active{background:var(--v3-primary);color:#fff;font-weight:var(--v3-font-weight-semibold)}.staff-v3-mobile-bookings-date-header{display:flex;align-items:center;justify-content:space-between;padding:var(--v3-spacing-sm) 0}.staff-v3-mobile-bookings-date-text{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary)}.staff-v3-mobile-bookings-calendar-button{width:44px;height:44px;border:none;background:var(--v3-surface);border-radius:var(--v3-border-radius-md);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--v3-transition-fast)}.staff-v3-mobile-bookings-calendar-button:active{background:var(--v3-primary-light)}.staff-v3-mobile-bookings-calendar-top{margin-top:var(--v3-spacing-md);padding:var(--v3-spacing-md);background:var(--v3-surface);border-radius:var(--v3-border-radius-md);border:1px solid var(--v3-border)}.staff-v3-mobile-bookings-calendar-input{width:100%;padding:var(--v3-spacing-md);font-size:var(--v3-font-size-base);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-sm);background:var(--v3-background);color:var(--v3-text-primary);min-height:44px}.staff-v3-mobile-bookings-calendar-input:focus{outline:none;border-color:var(--v3-primary);box-shadow:0 0 0 3px rgba(var(--v3-primary-rgb, 0, 122, 255),.1)}.staff-v3-mobile-bookings-export{padding:var(--v3-spacing-sm) var(--v3-spacing-md);border-top:1px solid var(--v3-border);margin-top:var(--v3-spacing-xs)}}@media (min-width: 769px){.staff-v3-mobile-bookings-header{display:none}}@media (min-width: 1024px){.staff-v3-bookings-table-container{overflow-x:auto;padding:var(--v3-spacing-md)}.staff-v3-bookings-table{width:100%;border-collapse:collapse;background:var(--v3-background);border-radius:var(--v3-border-radius-md);overflow:hidden}.staff-v3-bookings-table thead{background:var(--v3-surface)}.staff-v3-bookings-table th{padding:var(--v3-spacing-md);text-align:left;font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--v3-border)}.staff-v3-bookings-table td{padding:var(--v3-spacing-md);border-bottom:1px solid var(--v3-border);font-size:var(--v3-font-size-base);color:var(--v3-text-primary)}.staff-v3-bookings-table-row{cursor:pointer;transition:background var(--v3-transition-fast)}.staff-v3-bookings-table-row:hover{background:var(--v3-surface)}.staff-v3-bookings-table-row.selected{background:var(--v3-primary);color:#fff}.staff-v3-bookings-table-row.selected td{color:#fff}.staff-v3-bookings-table-status{display:inline-block;padding:4px 8px;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold);text-transform:uppercase}.staff-v3-bookings-table-status-booked{background:var(--v3-warning);color:#fff}.staff-v3-bookings-table-status-confirmed{background:var(--v3-success);color:#fff}.staff-v3-bookings-table-status-done{background:var(--v3-text-secondary);color:#fff}.staff-v3-bookings-table-status-canceled{background:var(--v3-error);color:#fff}.staff-v3-bookings-table-change-badge{font-size:18px}}@media (min-width: 1024px){.staff-v3-bookings-filters-desktop{padding:var(--v3-spacing-lg) var(--v3-spacing-lg);border-bottom:1px solid var(--v3-border);background:var(--v3-background);display:flex;flex-direction:column;gap:var(--v3-spacing-md);margin-bottom:var(--v3-spacing-md)}.staff-v3-bookings-filters-row{display:flex;align-items:center;gap:var(--v3-spacing-md);flex-wrap:wrap}.staff-v3-bookings-active-filters{display:flex;align-items:center;gap:var(--v3-spacing-sm);flex-wrap:wrap;padding-top:var(--v3-spacing-xs)}.staff-v3-bookings-active-filters-label{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);font-weight:var(--v3-font-weight-medium)}.staff-v3-bookings-active-filter-badge{display:inline-flex;align-items:center;gap:var(--v3-spacing-xs);padding:var(--v3-spacing-xs) var(--v3-spacing-sm);background:var(--v3-primary-light, rgba(0, 123, 255, .1));color:var(--v3-primary);border:1px solid var(--v3-primary);border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium)}.staff-v3-bookings-active-filter-remove{background:transparent;border:none;color:var(--v3-primary);font-size:18px;line-height:1;cursor:pointer;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:var(--v3-border-radius-sm);transition:background var(--v3-transition-fast)}.staff-v3-bookings-active-filter-remove:hover{background:var(--v3-primary);color:#fff}.staff-v3-bookings-view-container{display:flex;flex-direction:column;overflow-y:auto;height:calc(100vh - 200px);padding:var(--v3-spacing-md);min-height:0}.staff-v3-bookings-view-container>.staff-bookings-calendar{margin:calc(-1 * var(--v3-spacing-md));width:calc(100% + 2 * var(--v3-spacing-md));height:100%;flex:1;display:flex!important;visibility:visible!important;opacity:1!important}}.staff-v3-bookings-new-booking-btn{display:flex;align-items:center;gap:var(--v3-spacing-sm);padding:var(--v3-spacing-sm) var(--v3-spacing-md);background:var(--v3-primary);color:#fff;border:none;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);cursor:pointer;transition:all var(--v3-transition-fast);white-space:nowrap}.staff-v3-bookings-new-booking-btn:hover{background:var(--v3-primary-dark, #0056b3);transform:translateY(-1px);box-shadow:0 2px 8px #007bff4d}.staff-v3-bookings-new-booking-btn:active{transform:translateY(0)}.staff-v3-bookings-new-booking-btn-icon{font-size:20px;font-weight:var(--v3-font-weight-bold);line-height:1}.staff-v3-bookings-new-booking-btn-text{font-size:var(--v3-font-size-sm)}.staff-v3-bookings-content{display:flex;flex-direction:column;min-height:0}@media (max-width: 1023px){.staff-v3-bookings-table-container,.staff-v3-bookings-filters-desktop{display:none}.staff-v3-header-calendar{width:44px;height:44px;border:none;background:transparent;border-radius:var(--v3-border-radius-sm);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--v3-transition-fast)}.staff-v3-header-calendar:hover,.staff-v3-header-calendar:active{background:var(--v3-surface)}.staff-v3-bookings-list-mobile{padding:var(--v3-spacing-md)}.staff-v3-bookings-mobile-day-group{margin-bottom:var(--v3-spacing-lg)}.staff-v3-bookings-mobile-day-header{padding:var(--v3-spacing-sm) var(--v3-spacing-md);background:var(--v3-surface);border-left:3px solid var(--v3-primary);border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin-bottom:var(--v3-spacing-sm);position:sticky;top:140px;z-index:4;background:var(--v3-background)}.staff-v3-booking-item-mobile{display:flex;align-items:flex-start;gap:var(--v3-spacing-md);padding:var(--v3-spacing-md);background:var(--v3-background);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);margin-bottom:var(--v3-spacing-sm);cursor:pointer;transition:all var(--v3-transition-fast);position:relative}.staff-v3-booking-item-mobile:active{background:var(--v3-surface);border-color:var(--v3-primary)}.staff-v3-booking-item-mobile-time{font-size:var(--v3-font-size-xl);font-weight:var(--v3-font-weight-bold);color:var(--v3-text-primary);min-width:70px;flex-shrink:0}.staff-v3-booking-item-mobile-content{flex:1;display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-booking-item-mobile-customer{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary)}.staff-v3-booking-item-mobile-service{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary)}.staff-v3-booking-item-mobile-meta{display:flex;align-items:center;gap:var(--v3-spacing-sm);font-size:var(--v3-font-size-xs);margin-top:var(--v3-spacing-xs)}.staff-v3-booking-item-mobile-staff{color:var(--v3-text-secondary)}.staff-v3-booking-item-mobile-status{padding:2px 8px;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold);text-transform:uppercase}.staff-v3-booking-item-mobile-status.status-booked{background:var(--v3-warning);color:#fff}.staff-v3-booking-item-mobile-status.status-confirmed{background:var(--v3-success);color:#fff}.staff-v3-booking-item-mobile-status.status-done{background:var(--v3-text-secondary);color:#fff}.staff-v3-booking-item-mobile-status.status-canceled{background:var(--v3-error);color:#fff}.staff-v3-booking-item-mobile-badge{position:absolute;top:var(--v3-spacing-xs);right:var(--v3-spacing-xs);font-size:18px}.staff-v3-filters-section-mobile{padding:var(--v3-spacing-md);border-bottom:1px solid var(--v3-border);background:var(--v3-background);position:sticky;top:140px;z-index:5}}.staff-v3-customer-card{background:var(--v3-background);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-md);box-shadow:0 2px 4px #0000000d;min-height:var(--v3-tap-target-min);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:box-shadow var(--v3-transition-fast)}.staff-v3-customer-card:active{box-shadow:0 4px 8px #0000001a}.staff-v3-customer-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--v3-spacing-xs)}.staff-v3-customer-card-name{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-v3-customer-card-phone{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);margin:0 0 var(--v3-spacing-sm) 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.staff-v3-customer-card-footer{display:flex;align-items:center;gap:var(--v3-spacing-sm);flex-wrap:wrap}.staff-v3-customer-card-loyalty{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);font-weight:var(--v3-font-weight-medium)}.staff-v3-customer-card-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold)}.staff-v3-customer-card-badge-notifications{background:var(--v3-success);color:#fff}.staff-v3-customer-card-badge-free{background:var(--v3-warning);color:#fff}.staff-v3-customer-card-badges{display:flex;gap:var(--v3-spacing-xs);align-items:center;flex-shrink:0}.staff-v3-customer-card-badge-blacklisted{background:var(--v3-error);color:#fff;padding:var(--v3-spacing-xs) var(--v3-spacing-sm);border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold)}.staff-v3-customer-detail{padding:var(--v3-spacing-md);display:flex;flex-direction:column;gap:var(--v3-spacing-lg)}.staff-v3-customer-detail-section{display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-customer-detail-label{font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0}.staff-v3-customer-detail-value{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary);margin:0}.staff-v3-customer-detail-toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--v3-spacing-md)}.staff-v3-customer-detail-loyalty-display{display:flex;flex-direction:column;gap:var(--v3-spacing-sm)}.staff-v3-customer-detail-badge{display:inline-flex;align-items:center;padding:6px 12px;background:var(--v3-warning);color:#fff;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);width:fit-content}.staff-v3-customer-detail-loyalty-edit{display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-customer-detail-loyalty-input{padding:var(--v3-spacing-md);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);background:var(--v3-background);color:var(--v3-text-primary);min-height:var(--v3-tap-target-min);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.staff-v3-customer-detail-loyalty-input:focus{outline:none;border-color:var(--v3-primary);box-shadow:0 0 0 3px #2563eb1a}.staff-v3-customer-detail-loyalty-actions{display:flex;gap:var(--v3-spacing-sm)}.staff-v3-customer-detail-actions{margin-top:var(--v3-spacing-md);padding-top:var(--v3-spacing-md);border-top:1px solid var(--v3-border);display:flex;flex-direction:column;gap:var(--v3-spacing-sm)}.staff-v3-customer-detail-action-button{width:100%;min-height:var(--v3-tap-target-min);padding:var(--v3-spacing-md);border:none;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:all var(--v3-transition-fast)}.staff-v3-customer-detail-action-button-primary{background:var(--v3-primary);color:#fff}.staff-v3-customer-detail-action-button-primary:active{background:var(--v3-primary-hover);opacity:.9}.staff-v3-customer-detail-action-button-secondary{background:var(--v3-surface);color:var(--v3-text-primary);border:1px solid var(--v3-border)}.staff-v3-customer-detail-action-button-secondary:active{background:var(--v3-border)}@media (min-width: 1024px){.staff-v3-customers-table-container{overflow-x:auto;padding:var(--v3-spacing-md)}.staff-v3-customers-table{width:100%;border-collapse:collapse;background:var(--v3-background);border-radius:var(--v3-border-radius-md);overflow:hidden}.staff-v3-customers-table thead{background:var(--v3-surface)}.staff-v3-customers-table th{padding:var(--v3-spacing-md);text-align:left;font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--v3-border)}.staff-v3-customers-table td{padding:var(--v3-spacing-md);border-bottom:1px solid var(--v3-border);font-size:var(--v3-font-size-base);color:var(--v3-text-primary)}.staff-v3-customers-table-row{cursor:pointer;transition:background var(--v3-transition-fast)}.staff-v3-customers-table-row:hover{background:var(--v3-surface)}.staff-v3-customers-table-row.selected{background:var(--v3-primary);color:#fff}.staff-v3-customers-table-row.selected td{color:#fff}.staff-v3-customers-table-badge{margin-left:var(--v3-spacing-xs);font-size:14px}}@media (max-width: 1023px){.staff-v3-customers-table-container{display:none}}.staff-v3-empty-state-text{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);margin-bottom:var(--v3-spacing-md)}.staff-v3-empty-state-error{padding:var(--v3-spacing-lg)}.staff-v3-retry-button{margin-top:var(--v3-spacing-md);padding:var(--v3-spacing-sm) var(--v3-spacing-md);background:var(--v3-primary);color:#fff;border:none;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);cursor:pointer}.staff-v3-retry-button:hover{background:var(--v3-primary-hover)}.staff-v3-settings-section{background:var(--v3-background);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-lg);margin-bottom:var(--v3-spacing-lg);box-shadow:0 2px 4px #0000000d}.staff-v3-settings-section-title{font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0 0 var(--v3-spacing-sm) 0}.staff-v3-settings-section-description{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);margin:0 0 var(--v3-spacing-md) 0;line-height:1.5}.staff-v3-settings-section-content{display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:var(--v3-spacing-md);padding:var(--v3-spacing-md) 0;min-height:var(--v3-tap-target-min)}.staff-v3-toggle-row-info{flex:1;display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-toggle-row-label{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary);margin:0}.staff-v3-toggle-row-description{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);margin:0;line-height:1.4}.staff-v3-toggle{position:relative;width:52px;height:32px;border:none;background:var(--v3-border);border-radius:16px;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:background var(--v3-transition-base);flex-shrink:0;padding:0}.staff-v3-toggle:active{transform:scale(.95)}.staff-v3-toggle.active{background:var(--v3-primary)}.staff-v3-toggle.disabled{opacity:.5;cursor:not-allowed}.staff-v3-toggle-slider{position:absolute;top:4px;left:4px;width:24px;height:24px;background:#fff;border-radius:50%;transition:transform var(--v3-transition-base);box-shadow:0 2px 4px #0003}.staff-v3-toggle.active .staff-v3-toggle-slider{transform:translate(20px)}.staff-v3-time-input{display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-time-input-label{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary)}.staff-v3-time-input-field{padding:var(--v3-spacing-md);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);background:var(--v3-background);color:var(--v3-text-primary);min-height:var(--v3-tap-target-min);-webkit-tap-highlight-color:transparent;touch-action:manipulation;font-family:inherit}.staff-v3-time-input-field:focus{outline:none;border-color:var(--v3-primary);box-shadow:0 0 0 3px #2563eb1a}.staff-v3-time-input-field.error{border-color:var(--v3-error)}.staff-v3-time-input-error{font-size:var(--v3-font-size-xs);color:var(--v3-error);margin-top:var(--v3-spacing-xs)}.staff-v3-absence-sheet{padding:var(--v3-spacing-md);display:flex;flex-direction:column;gap:var(--v3-spacing-lg)}.staff-v3-absence-sheet-form{display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-absence-sheet-label{display:flex;flex-direction:column;gap:var(--v3-spacing-xs);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary)}.staff-v3-absence-sheet-input,.staff-v3-absence-sheet-select{padding:var(--v3-spacing-md);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);background:var(--v3-background);color:var(--v3-text-primary);min-height:var(--v3-tap-target-min);-webkit-tap-highlight-color:transparent;touch-action:manipulation;font-family:inherit}.staff-v3-absence-sheet-input:focus,.staff-v3-absence-sheet-select:focus{outline:none;border-color:var(--v3-primary);box-shadow:0 0 0 3px #2563eb1a}.staff-v3-absence-sheet-time-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--v3-spacing-md)}.staff-v3-absence-sheet-warning{padding:var(--v3-spacing-sm);background:var(--v3-warning);color:#fff;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-sm);text-align:center}.staff-v3-absence-sheet-actions{display:flex;gap:var(--v3-spacing-md);margin-top:var(--v3-spacing-md);padding-top:var(--v3-spacing-md);border-top:1px solid var(--v3-border)}.staff-v3-absence-sheet-button{flex:1;min-height:var(--v3-tap-target-min);padding:var(--v3-spacing-md);border:none;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:all var(--v3-transition-fast)}.staff-v3-absence-sheet-button:disabled{opacity:.5;cursor:not-allowed}.staff-v3-absence-sheet-button-cancel{background:var(--v3-surface);color:var(--v3-text-primary)}.staff-v3-absence-sheet-button-cancel:active:not(:disabled){background:var(--v3-border)}.staff-v3-absence-sheet-button-confirm{background:var(--v3-primary);color:#fff}.staff-v3-absence-sheet-button-confirm:active:not(:disabled){background:var(--v3-primary-hover);opacity:.9}.staff-v3-settings-page{padding-bottom:80px;min-height:100vh;background:var(--v3-surface)}.staff-v3-settings-content{padding:var(--v3-spacing-md)}.staff-v3-business-hours-grid{display:grid;grid-template-columns:1fr;gap:var(--v3-spacing-lg);margin-bottom:var(--v3-spacing-md)}@media (min-width: 768px){.staff-v3-business-hours-grid{grid-template-columns:1fr 1fr}}.staff-v3-business-hours-group{display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-business-hours-group-title{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0}.staff-v3-settings-save-button,.staff-v3-settings-add-button{width:100%;min-height:var(--v3-tap-target-min);padding:var(--v3-spacing-md);background:var(--v3-primary);color:#fff;border:none;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:background var(--v3-transition-fast);margin-top:var(--v3-spacing-md)}.staff-v3-settings-save-button:active,.staff-v3-settings-add-button:active{background:var(--v3-primary-hover);opacity:.9}.staff-v3-staff-list{display:flex;flex-direction:column;gap:0}.staff-v3-absences-tabs{display:flex;gap:var(--v3-spacing-sm);margin-bottom:var(--v3-spacing-md);border-bottom:1px solid var(--v3-border)}.staff-v3-absences-tab{flex:1;padding:var(--v3-spacing-md);border:none;background:transparent;color:var(--v3-text-secondary);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-medium);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;min-height:var(--v3-tap-target-min);border-bottom:2px solid transparent;transition:all var(--v3-transition-fast)}.staff-v3-absences-tab:active{opacity:.7}.staff-v3-absences-tab.active{color:var(--v3-primary);border-bottom-color:var(--v3-primary)}.staff-v3-absences-list{display:flex;flex-direction:column;gap:var(--v3-spacing-sm);margin-top:var(--v3-spacing-md)}.staff-v3-absence-item{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--v3-spacing-md);padding:var(--v3-spacing-md);background:var(--v3-background);border-radius:var(--v3-border-radius-md);box-shadow:0 2px 4px #0000000d}.staff-v3-absence-item-info{flex:1;display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-absence-item-staff{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0}.staff-v3-absence-item-date{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);margin:0}.staff-v3-absence-item-reason{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);font-style:italic;margin:0}.staff-v3-absence-item-delete{width:var(--v3-tap-target-min);height:var(--v3-tap-target-min);display:flex;align-items:center;justify-content:center;border:none;background:var(--v3-error);color:#fff;font-size:24px;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:var(--v3-border-radius-sm);transition:opacity var(--v3-transition-fast);flex-shrink:0}.staff-v3-absence-item-delete:active{opacity:.8}.staff-v3-app-status-offline{margin-top:var(--v3-spacing-md);padding:var(--v3-spacing-md);background:var(--v3-surface);border-radius:var(--v3-border-radius-md)}.staff-v3-app-status-label{display:flex;flex-direction:column;gap:var(--v3-spacing-xs);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary)}.staff-v3-app-status-textarea{padding:var(--v3-spacing-md);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);background:var(--v3-background);color:var(--v3-text-primary);font-family:inherit;min-height:80px;resize:vertical;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.staff-v3-app-status-textarea:focus{outline:none;border-color:var(--v3-primary);box-shadow:0 0 0 3px #2563eb1a}.staff-v3-app-status-guide{margin-top:var(--v3-spacing-md);padding:var(--v3-spacing-md);background:var(--v3-surface);border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary)}.staff-v3-app-status-guide-title{font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0 0 var(--v3-spacing-sm) 0}.staff-v3-app-status-guide-list{margin:0;padding-left:var(--v3-spacing-lg);line-height:1.6}.staff-v3-app-status-guide-list li{margin-bottom:var(--v3-spacing-xs)}.staff-v3-push-settings{display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-push-status{padding:var(--v3-spacing-md);background:var(--v3-surface);border-radius:var(--v3-border-radius-md)}.staff-v3-push-status-text{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);margin:0}.staff-v3-push-actions{display:flex;flex-direction:column;gap:var(--v3-spacing-sm)}.staff-v3-calendar-settings{display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-calendar-hint{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);margin:0}.staff-v3-calendar-hint-list{margin:0 0 var(--v3-spacing-md) 0;padding-left:var(--v3-spacing-lg);font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);line-height:1.6}.staff-v3-calendar-hint-list li{margin-bottom:var(--v3-spacing-xs)}.staff-v3-calendar-actions{display:flex;flex-direction:column;gap:var(--v3-spacing-sm)}.staff-v3-calendar-actions .staff-v3-settings-save-button{margin-top:0}.staff-v3-extra-opening-form{margin-bottom:var(--v3-spacing-lg);padding:var(--v3-spacing-md);background:var(--v3-background);border-radius:var(--v3-border-radius-md);box-shadow:0 2px 4px #0000000d}.staff-v3-extra-opening-form-title{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0 0 var(--v3-spacing-md) 0}.staff-v3-extra-opening-form-grid{display:grid;grid-template-columns:1fr;gap:var(--v3-spacing-md)}@media (min-width: 768px){.staff-v3-extra-opening-form-grid{grid-template-columns:2fr 1fr 1fr auto;align-items:end}}.staff-v3-extra-opening-form-field{display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-extra-opening-form-field label{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary)}.staff-v3-extra-opening-input{padding:var(--v3-spacing-md);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);background:var(--v3-background);color:var(--v3-text-primary);font-family:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.staff-v3-extra-opening-input:focus{outline:none;border-color:var(--v3-primary);box-shadow:0 0 0 3px #2563eb1a}.staff-v3-extra-opening-input:disabled{opacity:.6;cursor:not-allowed}.staff-v3-extra-opening-add-button{min-height:var(--v3-tap-target-min);padding:var(--v3-spacing-md);background:var(--v3-primary);color:#fff;border:none;border-radius:var(--v3-border-radius-md);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:background var(--v3-transition-fast);white-space:nowrap}.staff-v3-extra-opening-add-button:active:not(:disabled){background:var(--v3-primary-hover);opacity:.9}.staff-v3-extra-opening-add-button:disabled{opacity:.5;cursor:not-allowed}.staff-v3-extra-openings-list{margin-top:var(--v3-spacing-lg)}.staff-v3-extra-openings-list-title{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0 0 var(--v3-spacing-md) 0}.staff-v3-extra-opening-item{display:flex;align-items:center;justify-content:space-between;gap:var(--v3-spacing-md);padding:var(--v3-spacing-md);background:var(--v3-background);border-radius:var(--v3-border-radius-md);box-shadow:0 2px 4px #0000000d;margin-bottom:var(--v3-spacing-sm)}.staff-v3-extra-opening-item-info{flex:1;display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-extra-opening-item-date{display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-extra-opening-item-date strong{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary)}.staff-v3-extra-opening-item-date span{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary)}.staff-v3-extra-opening-item-time{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);font-weight:var(--v3-font-weight-medium)}.staff-v3-extra-opening-item-delete{width:var(--v3-tap-target-min);height:var(--v3-tap-target-min);display:flex;align-items:center;justify-content:center;border:none;background:var(--v3-error);color:#fff;font-size:20px;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:var(--v3-border-radius-sm);transition:opacity var(--v3-transition-fast);flex-shrink:0}.staff-v3-extra-opening-item-delete:active{opacity:.8}@media (min-width: 768px){.staff-v3-settings-page{max-width:768px;margin:0 auto}.staff-v3-calendar-actions{flex-direction:row}.staff-v3-calendar-actions .staff-v3-settings-save-button{flex:1}}.staff-v3-inbox-item{display:flex;gap:var(--v3-spacing-md, 16px);padding:var(--v3-spacing-md, 16px);border-bottom:1px solid var(--v3-border-color, #e0e0e0);background:var(--v3-bg-primary, #ffffff);cursor:pointer;transition:background .2s;position:relative}.staff-v3-inbox-item:hover{background:var(--v3-bg-hover, #f5f5f5)}.staff-v3-inbox-item:active{background:var(--v3-bg-active, #e8e8e8)}.staff-v3-inbox-item.unread{background:var(--v3-bg-unread, #f0f7ff);border-left:3px solid var(--v3-color-primary, #007aff);padding-left:calc(var(--v3-spacing-md, 16px) - 3px)}.staff-v3-inbox-item.unread:hover{background:var(--v3-bg-unread-hover, #e0efff)}.staff-v3-inbox-item-icon{font-size:24px;flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--v3-bg-secondary, #f5f5f5);border-radius:50%}.staff-v3-inbox-item.unread .staff-v3-inbox-item-icon{background:var(--v3-color-primary-light, #cce5ff)}.staff-v3-inbox-item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--v3-spacing-xs, 4px)}.staff-v3-inbox-item-header{display:flex;align-items:center;gap:var(--v3-spacing-sm, 8px);margin-bottom:var(--v3-spacing-xs, 4px)}.staff-v3-inbox-item-title{font-size:var(--v3-font-size-md, 16px);font-weight:600;margin:0;color:var(--v3-text-primary, #000000);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-v3-inbox-item-badge{background:var(--v3-color-primary, #007aff);color:#fff;font-size:var(--v3-font-size-xs, 12px);padding:2px 8px;border-radius:12px;font-weight:500;flex-shrink:0}.staff-v3-inbox-item-body{font-size:var(--v3-font-size-sm, 14px);color:var(--v3-text-secondary, #666666);margin:0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.staff-v3-inbox-item-footer{display:flex;align-items:center;gap:var(--v3-spacing-sm, 8px);margin-top:var(--v3-spacing-xs, 4px)}.staff-v3-inbox-item-time{font-size:var(--v3-font-size-xs, 12px);color:var(--v3-text-tertiary, #999999)}.staff-v3-inbox-item-booking{font-size:var(--v3-font-size-xs, 12px);color:var(--v3-color-primary, #007aff);background:var(--v3-bg-secondary, #f5f5f5);padding:2px 8px;border-radius:4px}.staff-v3-inbox-page{display:flex;flex-direction:column;height:100%;background:var(--v3-bg-primary, #ffffff);overflow:hidden}.staff-v3-inbox-header{padding:var(--v3-spacing-md, 16px);background:var(--v3-bg-primary, #ffffff);border-bottom:1px solid var(--v3-border-color, #e0e0e0);position:sticky;top:0;z-index:10}.staff-v3-inbox-header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--v3-spacing-sm, 8px)}.staff-v3-inbox-header-actions-top{display:flex;align-items:center;gap:var(--v3-spacing-sm)}.staff-v3-inbox-header h1{font-size:var(--v3-font-size-xl, 24px);font-weight:600;margin:0;color:var(--v3-text-primary, #000000)}.staff-v3-inbox-refresh{background:none;border:none;font-size:20px;cursor:pointer;padding:8px;border-radius:8px;transition:background .2s}.staff-v3-inbox-refresh:hover{background:var(--v3-bg-hover, #f5f5f5)}.staff-v3-inbox-refresh:active{transform:scale(.95)}.staff-v3-inbox-header-actions{margin-bottom:var(--v3-spacing-sm, 8px)}.staff-v3-inbox-mark-all-read{background:var(--v3-color-primary, #007aff);color:#fff;border:none;padding:8px 16px;border-radius:8px;font-size:var(--v3-font-size-sm, 14px);cursor:pointer;transition:opacity .2s}.staff-v3-inbox-mark-all-read:hover{opacity:.9}.staff-v3-inbox-mark-all-read:active{transform:scale(.98)}.staff-v3-inbox-filters{display:flex;gap:var(--v3-spacing-xs, 4px);margin-top:var(--v3-spacing-sm, 8px)}.staff-v3-inbox-filter{flex:1;padding:8px 12px;border:1px solid var(--v3-border-color, #e0e0e0);background:var(--v3-bg-secondary, #f5f5f5);border-radius:8px;font-size:var(--v3-font-size-sm, 14px);cursor:pointer;transition:all .2s}.staff-v3-inbox-filter.active{background:var(--v3-color-primary, #007aff);color:#fff;border-color:var(--v3-color-primary, #007aff)}.staff-v3-inbox-filter:hover:not(.active){background:var(--v3-bg-hover, #e8e8e8)}.staff-v3-inbox-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:var(--v3-bottom-nav-h, 60px)}.staff-v3-inbox-list{display:flex;flex-direction:column}.staff-v3-inbox-loading,.staff-v3-inbox-empty{display:flex;align-items:center;justify-content:center;flex:1;padding:var(--v3-spacing-lg, 24px);color:var(--v3-text-secondary, #666666);font-size:var(--v3-font-size-md, 16px)}.staff-v3-empty-state{text-align:center;padding:var(--v3-spacing-xl) var(--v3-spacing-lg);color:var(--v3-text-secondary)}.staff-v3-empty-state-icon{font-size:var(--v3-font-size-xl);margin-bottom:var(--v3-spacing-md)}.staff-v3-empty-state-title{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);margin-bottom:var(--v3-spacing-md);color:var(--v3-text-primary)}.staff-v3-empty-state-text{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);margin-top:var(--v3-spacing-sm)}.staff-v3-inbox-error{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:var(--v3-spacing-lg, 24px);text-align:center}.staff-v3-inbox-error p{color:var(--v3-color-error, #ff3b30);margin-bottom:var(--v3-spacing-md, 16px)}.staff-v3-inbox-retry{background:var(--v3-color-primary, #007aff);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:var(--v3-font-size-md, 16px);cursor:pointer}.staff-v3-inbox-retry:hover{opacity:.9}.staff-v3-inbox-delete-read,.staff-v3-inbox-delete-all{margin-left:var(--v3-spacing-sm);padding:var(--v3-spacing-sm) var(--v3-spacing-md);color:#fff;border:none;border-radius:var(--v3-border-radius-sm);cursor:pointer;font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium)}.staff-v3-inbox-delete-read{background:var(--v3-warning)}.staff-v3-inbox-delete-read:hover{opacity:.9}.staff-v3-inbox-delete-all{background:var(--v3-error)}.staff-v3-inbox-delete-all:hover{opacity:.9}.staff-v3-inbox-keyboard-help{background:none;border:none;font-size:20px;cursor:pointer;padding:var(--v3-spacing-sm);border-radius:var(--v3-border-radius-sm);transition:background .2s;color:var(--v3-text-secondary)}.staff-v3-inbox-keyboard-help:hover{background:var(--v3-bg-hover, #f5f5f5);color:var(--v3-text-primary)}.staff-v3-inbox-keyboard-help-panel{background:var(--v3-background);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-md);margin-top:var(--v3-spacing-sm);box-shadow:0 2px 8px #0000001a}.staff-v3-inbox-keyboard-help-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--v3-spacing-md)}.staff-v3-inbox-keyboard-help-header h3{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);margin:0;color:var(--v3-text-primary)}.staff-v3-inbox-keyboard-help-close{background:none;border:none;font-size:var(--v3-font-size-lg);cursor:pointer;color:var(--v3-text-secondary);padding:0;width:var(--v3-tap-target-min);height:var(--v3-tap-target-min);display:flex;align-items:center;justify-content:center;border-radius:var(--v3-border-radius-sm);transition:background .2s}.staff-v3-inbox-keyboard-help-close:hover{background:var(--v3-bg-hover, #f5f5f5);color:var(--v3-text-primary)}.staff-v3-inbox-keyboard-help-list{display:flex;flex-direction:column;gap:var(--v3-spacing-sm)}.staff-v3-inbox-keyboard-help-item{display:flex;align-items:center;gap:var(--v3-spacing-md);font-size:var(--v3-font-size-sm);color:var(--v3-text-primary)}.staff-v3-inbox-keyboard-help-item kbd{background:var(--v3-surface);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-sm);padding:var(--v3-spacing-xs) var(--v3-spacing-sm);font-family:monospace;font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);min-width:32px;text-align:center;box-shadow:0 1px 2px #0000001a}.staff-v3-login-pin{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--v3-spacing-lg);background:var(--v3-background)}.staff-v3-login-pin-container{width:100%;max-width:400px;display:flex;flex-direction:column;gap:var(--v3-spacing-xl)}.staff-v3-login-pin-header{text-align:center}.staff-v3-login-pin-title{font-size:var(--v3-font-size-2xl);font-weight:var(--v3-font-weight-bold);color:var(--v3-text-primary);margin:0 0 var(--v3-spacing-sm) 0}.staff-v3-login-pin-subtitle{font-size:var(--v3-font-size-base);color:var(--v3-text-secondary);margin:0}.staff-v3-login-pin-form{display:flex;flex-direction:column;gap:var(--v3-spacing-lg)}.staff-v3-login-pin-input-wrapper{display:flex;flex-direction:column;gap:var(--v3-spacing-sm)}.staff-v3-login-pin-input{width:100%;padding:var(--v3-spacing-md);font-size:var(--v3-font-size-xl);text-align:center;letter-spacing:.5em;border:2px solid var(--v3-border);border-radius:var(--v3-border-radius-md);background:var(--v3-surface);color:var(--v3-text-primary);min-height:var(--v3-tap-target-min);-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:border-color var(--v3-transition-fast)}.staff-v3-login-pin-input:focus{outline:none;border-color:var(--v3-primary)}.staff-v3-login-pin-input.error{border-color:var(--v3-error)}.staff-v3-login-pin-input:disabled{opacity:.6;cursor:not-allowed}.staff-v3-login-pin-error{font-size:var(--v3-font-size-sm);color:var(--v3-error);margin:0;text-align:center}.staff-v3-login-pin-button{width:100%;padding:var(--v3-spacing-md);font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:#fff;background:var(--v3-primary);border:none;border-radius:var(--v3-border-radius-md);min-height:var(--v3-tap-target-min);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:background-color var(--v3-transition-fast)}.staff-v3-login-pin-button:hover:not(:disabled){background:var(--v3-primary-dark)}.staff-v3-login-pin-button:active:not(:disabled){background:var(--v3-primary-dark)}.staff-v3-login-pin-button:disabled{opacity:.6;cursor:not-allowed}.staff-v3-system-status{min-height:100vh;background:var(--staff-v3-bg);padding-bottom:80px}.staff-v3-system-status-content{padding:16px;max-width:1200px;margin:0 auto}.staff-v3-system-status-section{margin-bottom:24px}.staff-v3-system-status-section h2{font-size:24px;font-weight:600;margin-bottom:16px;color:var(--staff-v3-text-primary)}.staff-v3-system-status-check{background:var(--staff-v3-card-bg);border-radius:12px;padding:16px;margin-bottom:16px;box-shadow:0 1px 3px #0000001a}.staff-v3-system-status-check h3{font-size:18px;font-weight:600;margin-bottom:12px;color:var(--staff-v3-text-primary)}.staff-v3-system-status-check p{margin:8px 0;color:var(--staff-v3-text-secondary);line-height:1.5}.staff-v3-system-status-details{background:var(--staff-v3-bg);border:1px solid var(--staff-v3-border);border-radius:8px;padding:12px;margin-top:12px;font-size:12px;font-family:Monaco,Menlo,Courier New,monospace;overflow-x:auto;max-height:300px;overflow-y:auto;color:var(--staff-v3-text-secondary);white-space:pre-wrap;word-break:break-all}.staff-v3-system-status-check button{margin-top:8px;margin-right:8px}@media (min-width: 768px){.staff-v3-system-status-content,.staff-v3-system-status-check{padding:24px}}.staff-v3-services-page{padding:var(--v3-spacing-lg);max-width:1200px;margin:0 auto}.staff-v3-services-header{margin-bottom:var(--v3-spacing-lg)}.staff-v3-services-header h1{font-size:var(--v3-font-size-xl);font-weight:var(--v3-font-weight-semibold);margin:0}.staff-v3-services-header-description{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);margin-top:var(--v3-spacing-sm)}.staff-v3-services-loading,.staff-v3-services-error{text-align:center;padding:var(--v3-spacing-xl);color:var(--v3-text-secondary)}.staff-v3-services-error-retry{margin-top:var(--v3-spacing-md);padding:var(--v3-spacing-sm) var(--v3-spacing-md);cursor:pointer;background:var(--v3-primary);color:#fff;border:none;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium)}.staff-v3-services-error-retry:hover{background:var(--v3-primary-hover)}.staff-v3-services-empty{padding:var(--v3-spacing-xl) var(--v3-spacing-lg);text-align:center;color:var(--v3-text-secondary)}.staff-v3-services-empty-title{font-size:var(--v3-font-size-base);margin-bottom:var(--v3-spacing-md)}.staff-v3-services-empty-text{font-size:var(--v3-font-size-sm)}.staff-v3-services-no-permission{text-align:center;padding:var(--v3-spacing-xl)}.staff-v3-services-no-permission h2{color:var(--v3-error);margin-bottom:var(--v3-spacing-md)}.staff-v3-services-list{display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-services-item{display:flex;justify-content:space-between;align-items:center;padding:var(--v3-spacing-md);background:var(--v3-surface);border-radius:var(--v3-border-radius-sm);border:1px solid var(--v3-border)}.staff-v3-services-item-info h3{margin:0 0 var(--v3-spacing-sm) 0;font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-semibold)}.staff-v3-services-item-details{display:flex;gap:var(--v3-spacing-md);color:var(--v3-text-secondary);font-size:var(--v3-font-size-sm)}.staff-v3-services-item-price{font-weight:600;color:var(--v3-text)}.staff-v3-services-item-valid-from{margin-top:var(--v3-spacing-sm);font-size:var(--v3-font-size-xs);color:var(--v3-text-secondary)}.staff-v3-services-item-edit{padding:var(--v3-spacing-sm) var(--v3-spacing-md);background:var(--v3-primary);color:#fff;border:none;border-radius:var(--v3-border-radius-sm);cursor:pointer;font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium)}.staff-v3-services-item-edit:hover:not(:disabled){background:var(--v3-primary-hover)}.staff-v3-services-item-edit:disabled{opacity:.5;cursor:not-allowed}.staff-v3-services-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.staff-v3-services-modal{background:var(--v3-surface);border-radius:var(--v3-border-radius-md);width:90%;max-width:400px;box-shadow:0 4px 24px #0003}.staff-v3-services-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--v3-spacing-lg);border-bottom:1px solid var(--v3-border)}.staff-v3-services-modal-header h2{margin:0;font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-semibold)}.staff-v3-services-modal-close{background:none;border:none;font-size:var(--v3-font-size-xl);cursor:pointer;color:var(--v3-text-secondary);padding:0;width:var(--v3-spacing-xl);height:var(--v3-spacing-xl);display:flex;align-items:center;justify-content:center}.staff-v3-services-modal-close:hover{color:var(--v3-text)}.staff-v3-services-modal-body{padding:var(--v3-spacing-lg)}.staff-v3-services-modal-description{margin-bottom:var(--v3-spacing-md);font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary)}.staff-v3-services-modal-body label{display:block;margin-bottom:var(--v3-spacing-sm);font-weight:var(--v3-font-weight-medium);font-size:var(--v3-font-size-sm)}.staff-v3-services-modal-body input{width:100%;padding:var(--v3-spacing-md);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-base);box-sizing:border-box}.staff-v3-services-modal-body input:focus{outline:none;border-color:var(--v3-primary)}.staff-v3-services-modal-footer{display:flex;gap:var(--v3-spacing-md);padding:var(--v3-spacing-lg);border-top:1px solid var(--v3-border);justify-content:flex-end}.staff-v3-services-modal-cancel,.staff-v3-services-modal-save{padding:var(--v3-spacing-md) var(--v3-spacing-lg);border:none;border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);cursor:pointer}.staff-v3-services-modal-cancel{background:var(--v3-surface);color:var(--v3-text);border:1px solid var(--v3-border)}.staff-v3-services-modal-cancel:hover:not(:disabled){background:var(--v3-surface-hover)}.staff-v3-services-modal-save{background:var(--v3-primary);color:#fff}.staff-v3-services-modal-save:hover:not(:disabled){background:var(--v3-primary-hover)}.staff-v3-services-modal-save:disabled{opacity:.5;cursor:not-allowed}.staff-v3-analytics-page{padding:var(--v3-spacing-lg);max-width:1400px;margin:0 auto}.staff-v3-analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--v3-spacing-lg);flex-wrap:wrap;gap:var(--v3-spacing-md)}.staff-v3-analytics-header h1{font-size:var(--v3-font-size-xl);font-weight:var(--v3-font-weight-semibold);margin:0}.staff-v3-analytics-period-selector{display:flex;gap:var(--v3-spacing-sm);flex-wrap:wrap}.staff-v3-analytics-period-button{padding:var(--v3-spacing-sm) var(--v3-spacing-md);background:var(--v3-surface);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-sm);cursor:pointer;font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);color:var(--v3-text);transition:all .2s}.staff-v3-analytics-period-button:hover{background:var(--v3-surface-hover)}.staff-v3-analytics-period-button.active{background:var(--v3-primary);color:#fff;border-color:var(--v3-primary)}.staff-v3-analytics-loading,.staff-v3-analytics-error,.staff-v3-analytics-empty{text-align:center;padding:var(--v3-spacing-xl);color:var(--v3-text-secondary)}.staff-v3-analytics-error-centered{padding:var(--v3-spacing-xl);text-align:center}.staff-v3-analytics-content{display:flex;flex-direction:column;gap:var(--v3-spacing-xl)}.staff-v3-analytics-section{background:var(--v3-surface);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-lg)}.staff-v3-analytics-section h2{font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-semibold);margin:0 0 var(--v3-spacing-lg) 0}.staff-v3-analytics-card{background:var(--v3-background);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-sm);padding:var(--v3-spacing-lg);margin-bottom:var(--v3-spacing-lg)}.staff-v3-analytics-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--v3-spacing-sm)}.staff-v3-analytics-card-label{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);font-weight:var(--v3-font-weight-medium)}.staff-v3-analytics-card-value{font-size:var(--v3-font-size-xl);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text)}.staff-v3-analytics-card-meta{font-size:var(--v3-font-size-xs);color:var(--v3-text-secondary)}.staff-v3-analytics-table{margin-top:var(--v3-spacing-lg)}.staff-v3-analytics-table h3{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);margin:0 0 var(--v3-spacing-md) 0}.staff-v3-analytics-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 calc(-1 * var(--v3-spacing-lg));padding:0 var(--v3-spacing-lg)}.staff-v3-analytics-table table{width:100%;border-collapse:collapse;min-width:300px}.staff-v3-analytics-table thead{background:var(--v3-background)}.staff-v3-analytics-table th{padding:var(--v3-spacing-md);text-align:left;font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-secondary);border-bottom:2px solid var(--v3-border)}.staff-v3-analytics-table-th-right{text-align:right}.staff-v3-analytics-table td{padding:var(--v3-spacing-md);font-size:var(--v3-font-size-sm);color:var(--v3-text);border-bottom:1px solid var(--v3-border)}.staff-v3-analytics-table-td-right{text-align:right}.staff-v3-analytics-table tbody tr:hover{background:var(--v3-background)}.staff-v3-analytics-table tbody tr:last-child td{border-bottom:none}.staff-v3-loading-skeleton{display:flex;flex-direction:column;gap:var(--v3-spacing-md);padding:var(--v3-spacing-md)}.staff-v3-skeleton-card{background:var(--v3-background);border-radius:var(--v3-border-radius-md);height:80px;animation:skeleton-pulse 1.5s ease-in-out infinite}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.staff-v3-recurring-form-container{max-width:800px;margin:0 auto;padding:20px}.staff-v3-recurring-form{display:flex;flex-direction:column;gap:20px}.staff-v3-recurring-label{display:flex;flex-direction:column;gap:8px;font-weight:500}.staff-v3-recurring-select,.staff-v3-recurring-input{padding:10px;border:1px solid var(--v3-border);border-radius:6px;font-size:14px;font-family:inherit}.staff-v3-recurring-select:disabled,.staff-v3-recurring-input:disabled{background:#f5f5f5;cursor:not-allowed}.staff-v3-recurring-preview{padding:16px;background:#f9f9f9;border:1px solid var(--v3-border);border-radius:6px;margin-top:20px}.staff-v3-recurring-submit{width:100%}@media (max-width: 768px){.staff-v3-recurring-form-container{padding:16px}}:root{--v3-primary: #2563eb;--v3-primary-hover: #1d4ed8;--v3-secondary: #64748b;--v3-success: #10b981;--v3-warning: #f59e0b;--v3-error: #ef4444;--v3-background: #ffffff;--v3-surface: #f8fafc;--v3-border: #e2e8f0;--v3-text-primary: #0f172a;--v3-text-secondary: #64748b;--v3-text-muted: #94a3b8;--v3-backdrop: rgba(0, 0, 0, .5);--v3-spacing-xs: 4px;--v3-spacing-sm: 8px;--v3-spacing-md: 16px;--v3-spacing-lg: 24px;--v3-spacing-xl: 32px;--v3-font-size-xs: 12px;--v3-font-size-sm: 14px;--v3-font-size-base: 16px;--v3-font-size-lg: 18px;--v3-font-size-xl: 24px;--v3-font-weight-normal: 400;--v3-font-weight-medium: 500;--v3-font-weight-semibold: 600;--v3-font-weight-bold: 700;--v3-border-radius-sm: 8px;--v3-border-radius-md: 12px;--v3-border-radius-lg: 16px;--v3-tap-target-min: 44px;--v3-z-backdrop: 1000;--v3-z-drawer: 1100;--v3-z-bottom-sheet: 1110;--v3-z-nav: 1200;--v3-z-modal: 1300;--vvh: 100dvh;--footer-h: 72px;--viewport-h: 100dvh;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--bottom-nav-height: 64px;--v3-bottom-nav-h: 72px;--v3-transition-fast: .15s ease;--v3-transition-base: .25s ease;--v3-transition-slow: .35s ease}#staff-v3-overlay-portal{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:var(--v3-z-backdrop)}#staff-v3-overlay-portal>*{pointer-events:auto}.client-status-page{max-width:800px;margin:0 auto;padding:1rem}.client-status-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.client-status-back{padding:.5rem 1rem;background:#f0f0f0;border:none;border-radius:4px;cursor:pointer}.client-status-content{display:flex;flex-direction:column;gap:1rem}.client-status-card{padding:1rem;border-radius:8px;border:1px solid #ddd}.client-status-success{background:#e8f5e9;border-color:#4caf50}.client-status-warning{background:#fff3e0;border-color:#ff9800}.client-status-error{background:#ffebee;border-color:#f44336}.client-status-card-header{display:flex;justify-content:space-between;align-items:center;font-weight:700;margin-bottom:.5rem}.client-status-details{background:#f5f5f5;padding:.5rem;border-radius:4px;font-size:.85rem;overflow-x:auto;margin:0}.client-status-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1rem}.client-status-button{padding:.75rem 1.5rem;background:#2196f3;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem}.client-status-button:disabled{opacity:.5;cursor:not-allowed}.client-status-button:hover:not(:disabled){background:#1976d2}.founder-dashboard{max-width:1400px;margin:0 auto;padding:2rem;font-family:system-ui,-apple-system,sans-serif;height:100vh;overflow-y:auto}.founder-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #ddd}.founder-header h1{margin:0;font-size:1.5rem}.founder-admin-key{display:flex;align-items:center}.founder-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:1px solid #ddd}.founder-tabs button{padding:.75rem 1.5rem;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:1rem}.founder-tabs button:hover{background:#f5f5f5}.founder-tabs button.active{border-bottom-color:#06c;color:#06c;font-weight:600}.founder-content{min-height:400px}.founder-screen{padding:1rem}.founder-screen h2{margin-top:0;margin-bottom:1.5rem}.founder-screen label{display:block;margin-bottom:.25rem;font-weight:500;font-size:.875rem}.founder-screen input,.founder-screen select{font-size:1rem;border:1px solid #ccc;border-radius:4px}.founder-screen input:focus,.founder-screen select:focus{outline:none;border-color:#06c}.founder-screen button{background:#06c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem}.founder-screen button:hover:not(:disabled){background:#0052a3}.founder-screen button:disabled{background:#ccc;cursor:not-allowed}.founder-error{border:1px solid #c00;border-radius:4px}.founder-success{border:1px solid #0c0;border-radius:4px}table{font-size:.875rem}table th{font-weight:600;background:#f5f5f5}table td select{font-size:.875rem;padding:.25rem}.push-debug-overlay{position:fixed;top:10px;right:10px;z-index:9999;background:#000000e6;color:#fff;border-radius:8px;padding:0;font-family:monospace;font-size:12px;max-width:300px;box-shadow:0 4px 12px #0000004d}.push-debug-content{padding:12px}.push-debug-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:8px}.push-debug-header h3{margin:0;font-size:14px;font-weight:700}.push-debug-close{background:transparent;border:none;color:#fff;font-size:20px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.push-debug-close:hover{background:#ffffff1a;border-radius:4px}.push-debug-body{display:flex;flex-direction:column;gap:8px}.push-debug-item{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.push-debug-label{color:#aaa;margin-right:8px}.push-debug-value{font-weight:700}.push-debug-value.success{color:#4caf50}.push-debug-value.error{color:#f44336}.push-debug-value.warning{color:#ff9800}.push-debug-actions{display:flex;flex-direction:column;gap:6px;margin-top:8px}.push-debug-refresh{padding:6px 12px;background:#2196f3;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px}.push-debug-refresh:hover{background:#1976d2}.client-tabs-layout{display:flex;flex-direction:column;height:100dvh;overflow:hidden;background:var(--color-bg-primary, #f8f9fa)}.client-tabs-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--tabbar-height) + 2rem + env(safe-area-inset-bottom,0px));min-height:0;position:relative}.client-tabs-content>*{animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.client-tabs-bar{display:flex;justify-content:space-around;align-items:center;background:var(--color-card, #ffffff);border-top:1px solid var(--color-border, #e5e7eb);padding:var(--spacing-sm, .5rem) 0;padding-bottom:calc(var(--spacing-sm, .5rem) + env(safe-area-inset-bottom,0px));box-shadow:var(--shadow-md);position:fixed;bottom:0;left:0;right:0;z-index:100;height:var(--tabbar-height);min-height:var(--tabbar-height)}.client-tab-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xs, .25rem);padding:var(--spacing-sm, .5rem) var(--spacing-md, 1rem);border:none;background:transparent;cursor:pointer;color:var(--color-text-secondary, #6b7280);font-size:var(--text-xs, .75rem);position:relative;transition:color .2s;min-width:60px}.client-tab-item:hover{color:var(--color-text-primary, #374151)}.client-tab-item.active{color:var(--color-tab-active, #2563eb)}.client-tab-icon{font-size:var(--text-xl, 1.5rem);line-height:1}.client-tab-label{font-size:var(--text-xs, .75rem);font-weight:var(--font-weight-medium, 500);line-height:1}.client-tab-badge{position:absolute;top:var(--spacing-xs, .25rem);right:var(--spacing-sm, .5rem);background:var(--color-badge, #ef4444);color:var(--color-text-on-primary, #fff);font-size:var(--text-xs, .625rem);font-weight:var(--font-weight-semibold, 600);padding:var(--spacing-xs, .125rem) calc(var(--spacing-sm, .375rem) - .125rem);border-radius:var(--radius-full, 10px);min-width:18px;text-align:center;line-height:1.2}@media (max-width: 640px){.client-tabs-bar{padding:var(--spacing-sm, .5rem) 0}.client-tab-item{padding:var(--spacing-sm, .5rem) calc(var(--spacing-md, .75rem) - .25rem);min-width:50px}.client-tab-icon{font-size:var(--text-lg, 1.25rem)}.client-tab-label{font-size:calc(var(--text-xs, .75rem) - .0625rem)}}@media (min-width: 641px) and (max-width: 1024px){.client-tabs-bar{padding:calc(var(--spacing-md, 1rem) - .25rem) 0}.client-tab-item{padding:calc(var(--spacing-md, 1rem) - .25rem) calc(var(--spacing-md, 1rem) + .25rem);min-width:70px}.client-tab-icon{font-size:var(--text-xl, 1.5rem)}.client-tab-label{font-size:calc(var(--text-xs, .75rem) + .0625rem)}}:root{--color-primary: #d4af37;--color-primary-dark: #b8941f;--color-primary-light: #f4d03f;--color-accent: #d4af37;--color-accent-dark: #b8941f;--color-accent-light: #f4d03f;--color-bg-primary: #f8f9fa;--color-bg: #ffffff;--color-bg-secondary: #f8f8f8;--color-bg-tertiary: #f1f3f5;--color-card: #ffffff;--color-card-elevated: #ffffff;--color-text-main: #111827;--color-text-primary: #1f2937;--color-text-secondary: #6b7280;--color-text-muted: #9ca3af;--color-text-tertiary: #adb5bd;--color-text-on-primary: #ffffff;--color-success: #10b981;--color-success-light: #d1fae5;--color-error: #ef4444;--color-error-light: #fee2e2;--color-warning: #f59e0b;--color-warning-light: #fef3c7;--color-info: #3b82f6;--color-info-light: #dbeafe;--color-booking-confirmed: #10b981;--color-booking-pending: #f59e0b;--color-booking-canceled: #ef4444;--color-booking-done: #6b7280;--color-tab-active: #2563eb;--color-badge: #ef4444;--color-border: #e5e7eb;--color-border-light: #f3f4f6;--color-divider: #e5e7eb;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.25rem;--radius-full: 9999px;--text-xs: .75rem;--text-sm: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-weight-black: 900;--title-sm: 1.125rem;--title-md: 1.5rem;--title-lg: 1.75rem;--title-xl: 2rem;--title-2xl: 2.25rem;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--color-shadow: var(--shadow-sm);--color-shadow-md: var(--shadow-md);--color-shadow-lg: var(--shadow-lg);--tabbar-height: 70px;--z-base: 0;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}.logo-header-container.vertical-barber--header-centered,.logo-header-container:not(.vertical-beauty--header-left):not(.vertical-hair--header-left){align-items:center;text-align:center}.logo-header-container.vertical-beauty--header-left,.logo-header-container.vertical-hair--header-left{align-items:flex-start;text-align:left}.restaurant-name.vertical-beauty--header-left,.restaurant-name.vertical-hair--header-left,.vertical-beauty--header-left .restaurant-name,.vertical-hair--header-left .restaurant-name,.restaurant-subtitle.vertical-beauty--header-left,.restaurant-subtitle.vertical-hair--header-left,.vertical-beauty--header-left .restaurant-subtitle,.vertical-hair--header-left .restaurant-subtitle{text-align:left}.contact-row.vertical-beauty--header-left,.contact-row.vertical-hair--header-left,.vertical-beauty--header-left .contact-row,.vertical-hair--header-left .contact-row{justify-content:flex-start}.logo-header-container.vertical-beauty--header-spacious,.vertical-beauty--header-spacious .logo-header-container{padding:var(--spacing-xl, 2rem) var(--spacing-lg, 1.5rem)}.logo-header-container.vertical-beauty--surface,.logo-header-container.vertical-hair--surface,.vertical-beauty--surface .logo-header-container,.vertical-hair--surface .logo-header-container{background-color:var(--color-bg-primary, #f8f9fa);border-bottom:1px solid var(--color-border, #e5e7eb)}.logo-header-container.vertical-beauty--sticky,.logo-header-container.vertical-hair--sticky,.vertical-beauty--sticky .logo-header-container,.vertical-hair--sticky .logo-header-container{position:sticky;top:0;z-index:100}.logo-circle--small{width:100px;height:100px;border-radius:50px}.logo-circle--large{width:160px;height:160px;border-radius:80px}.vertical-beauty--hero-airy .home-hero-section{padding:var(--spacing-2xl, 3rem) var(--spacing-lg, 1.5rem)}.vertical-beauty--hero-airy .home-hero-title{font-size:var(--title-2xl, 2.25rem);font-weight:var(--font-weight-semibold, 600);margin-bottom:var(--spacing-md, 1rem)}.vertical-beauty--hero-airy .home-hero-subtitle{font-size:var(--text-lg, 1.125rem);line-height:1.6}.vertical-beauty--hero-spacious .home-hero-section{margin-bottom:var(--spacing-2xl, 3rem)}.vertical-beauty--service-card-spacious .home-service-card{padding:var(--spacing-xl, 2rem);border-radius:var(--radius-lg, .75rem)}.vertical-beauty--service-card-spacious .home-service-name{font-weight:var(--font-weight-semibold, 600);margin-bottom:var(--spacing-lg, 1.5rem)}.vertical-beauty--service-card-lg .home-service-card{border-radius:var(--radius-xl, 1rem)}.vertical-beauty .home-service-price{font-weight:var(--font-weight-medium, 500);opacity:.9}.vertical-beauty--button-lg .btn-primary,.vertical-hair--button-lg .btn-primary{min-height:56px;padding:var(--spacing-lg, 1.5rem) var(--spacing-xl, 2rem)}.vertical-beauty--button-lg .btn-primary{border-radius:var(--radius-lg, .75rem)}.vertical-beauty .btn-primary,.vertical-hair .btn-primary{font-weight:var(--font-weight-semibold, 600)}.vertical-hair .btn-primary{text-transform:uppercase;letter-spacing:.5px}.vertical-beauty--modal-spacious .booking-treatment-modal{padding:var(--spacing-2xl, 3rem)}.vertical-beauty--modal-xl .booking-treatment-modal{border-radius:var(--radius-xl, 1rem)}*{margin:0;padding:0;box-sizing:border-box}:root{--color-primary: #d4af37;--color-primary-dark: #b8941f;--color-primary-light: #f4d03f;--color-accent: #d4af37;--color-accent-dark: #b8941f;--color-accent-light: #f4d03f;--color-bg-primary: #f8f9fa;--color-bg: #ffffff;--color-bg-secondary: #f8f8f8;--color-bg-tertiary: #f1f3f5;--color-card: #ffffff;--color-card-elevated: #ffffff;--color-text-main: #111827;--color-text-primary: #1f2937;--color-text-secondary: #6b7280;--color-text-muted: #9ca3af;--color-text-on-primary: #ffffff;--color-success: #10b981;--color-success-light: #d1fae5;--color-error: #ef4444;--color-error-light: #fee2e2;--color-warning: #f59e0b;--color-warning-light: #fef3c7;--color-info: #3b82f6;--color-info-light: #dbeafe;--color-booking-confirmed: #10b981;--color-booking-pending: #f59e0b;--color-booking-canceled: #ef4444;--color-booking-done: #6b7280;--color-border: #e5e7eb;--color-border-light: #f3f4f6;--color-divider: #e5e7eb;--color-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--color-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--color-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--text-xs: .75rem;--text-sm: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--title-sm: 1.125rem;--title-md: 1.5rem;--title-lg: 1.75rem;--title-xl: 2rem;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg-primary);color:var(--color-text-primary);margin:0;padding:0;min-height:100vh;overflow:hidden}#root{min-height:100vh;overflow:hidden}html{height:100%;overflow:hidden}
