.btn{border-radius:var(--radius-md, 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:var(--font-family, inherit)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background-color:var(--color-primary, var(--color-accent, #d4af37));color:var(--color-primary-contrast, var(--color-text-on-primary, #ffffff));box-shadow:var(--shadow-md, 0 4px 12px rgba(0,0,0,.15));border:1px solid var(--color-accent-light, var(--color-primary, #d4af37))}.btn-primary:hover:not(:disabled){background-color:var(--color-accent-dark, var(--color-primary, #b8941f));transform:translateY(-1px)}.btn-secondary{background-color:var(--color-bg, var(--color-bg-secondary, #f8f8f8));color:var(--color-text, var(--color-text-main, #050505));border:1px solid var(--color-border, #e5e5e5)}.btn-outline{background-color:transparent;color:var(--color-primary, var(--color-accent, #d4af37));border:2px solid var(--color-primary, var(--color-accent, #d4af37))}.btn-outline:hover:not(:disabled){background-color:var(--color-accent-light, rgba(212, 175, 55, .1))}.btn-ghost{background-color:transparent;color:var(--color-text, 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}.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:var(--color-text-main, #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:var(--color-text-main, #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)}}.privacy-consent-modal-content{display:flex;flex-direction:column;gap:1.5rem}.privacy-consent-modal-body{max-height:50vh;overflow-y:auto}.privacy-notice-text{font-size:.9rem;line-height:1.6;color:var(--color-text-main, #333)}.privacy-consent-modal-actions{display:flex;flex-direction:column;gap:1rem}.privacy-consent-error{padding:.75rem;background:#fee;border:1px solid #fcc;border-radius:4px;color:#c00;font-size:.9rem}.privacy-consent-checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;-webkit-user-select:none;user-select:none}.privacy-consent-checkbox-label input[type=checkbox]{margin-top:.25rem;flex-shrink:0;width:1.25rem;height:1.25rem;cursor:pointer}.privacy-consent-checkbox-label span{flex:1;font-weight:500}.privacy-consent-toggle-label{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;background:#f8f9fa;border-radius:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.privacy-consent-toggle-text{display:flex;flex-direction:column;gap:.25rem;flex:1}.privacy-consent-toggle-text strong{font-size:1rem;color:var(--color-text-main, #333)}.privacy-consent-toggle-text small{font-size:.85rem;color:#666}.privacy-consent-toggle-label input[type=checkbox]{width:2.5rem;height:1.5rem;cursor:pointer;flex-shrink:0}.login-screen{min-height:100vh;height:100vh;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;background-color:var(--color-bg-primary, #f8f9fa);padding:24px 16px 48px;box-sizing:border-box}.login-scroll-content{max-width:500px;margin:0 auto;width:100%;box-sizing:border-box}.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;max-width:100%;overflow-wrap:break-word}.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}.login-otp-helper{font-size:.9rem;color:var(--color-text-muted, #6b6b6b);margin:.5rem 0 0;line-height:1.4}.login-otp-actions{margin-top:.75rem;text-align:center}.login-change-email-link{background:none;border:none;color:var(--color-accent, #0066cc);text-decoration:underline;cursor:pointer;padding:0;font-size:.9rem}.login-change-email-link:hover:not(:disabled){text-decoration:none}.login-change-email-link:disabled{opacity:.6;cursor:not-allowed}.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%;width:100%;max-width:100%;overflow-x:hidden;background-color:var(--color-bg-primary, #fafafa)}.home-refresh-indicator{text-align:center;padding:12px 16px;color:var(--color-text-muted, #8b8b8b);font-size:13px;font-weight:500;position:sticky;top:0;background-color:var(--color-bg-primary, #fafafa);z-index:10}.home-scroll-content{width:100%;max-width:100%;overflow-x:hidden;padding-bottom:24px}.home-banner-container{width:calc(100% - 32px);margin:0 16px 24px;border-radius:16px;overflow:hidden;box-shadow:0 8px 24px #0000001f}.home-hero-section{padding:32px 20px;text-align:center;margin-bottom:24px}.home-hero-title{font-size:28px;font-weight:700;color:var(--color-text-main, #1a1a1a);margin-bottom:8px;letter-spacing:-.03em;line-height:1.15}.home-hero-subtitle{font-size:15px;color:var(--color-text-secondary, #6b6b6b);text-align:center;line-height:1.5;font-weight:400}.home-section{padding:0 20px;margin-bottom:32px}.home-section-title{font-size:18px;font-weight:600;color:var(--color-text-muted, #8b8b8b);margin-bottom:16px;text-transform:uppercase;letter-spacing:.08em}.home-loading{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:8px 0}.home-loading-skeleton{background:linear-gradient(90deg,#f5f5f5 25%,#ebebeb,#f5f5f5 75%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite;border-radius:12px;height:100px}.home-services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.home-service-card{padding:16px;border:none;background-color:var(--color-card, #ffffff);border-radius:14px;transition:transform .15s ease,box-shadow .15s ease;box-shadow:0 2px 8px #0000000a;min-height:90px;display:flex;flex-direction:column;justify-content:space-between}.home-service-card:active{transform:scale(.98);box-shadow:0 1px 4px #0000000f}.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:14px;font-weight:600;color:var(--color-text-main, #1a1a1a);margin-bottom:8px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.home-service-info{display:flex;justify-content:space-between;align-items:baseline;margin-top:auto}.home-service-price{font-size:16px;font-weight:700;color:var(--color-accent, #b8860b);letter-spacing:-.01em}.home-service-duration{font-size:12px;color:var(--color-text-muted, #999);font-weight:500}.home-hours-card{margin:0 20px 24px;padding:20px;border:none;background:var(--color-card, #ffffff);border-radius:14px;box-shadow:0 2px 8px #0000000a}.home-hours-title{font-size:14px;font-weight:600;color:var(--color-text-muted, #8b8b8b);margin-bottom:16px;text-transform:uppercase;letter-spacing:.06em}.home-hours-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--color-border, #e5e7eb)}.home-hours-row:last-child{border-bottom:none;padding-bottom:0}.home-hours-day{font-size:14px;color:var(--color-text-secondary, #6b6b6b);font-weight:500}.home-hours-time{font-size:14px;font-weight:600;color:var(--color-text-main, #1a1a1a)}.home-hours-loading{opacity:.5}.home-hours-loading .home-hours-time{color:var(--color-text-muted, #aaa)}.home-cta-section{padding:0 20px;margin-bottom:24px}.home-cta-section .btn-primary{background:linear-gradient(135deg,var(--color-primary, #1a1a1a) 0%,color-mix(in srgb,var(--color-primary, #1a1a1a) 85%,black) 100%);color:var(--color-text-on-primary, #ffffff);border:none;padding:18px 24px;font-size:16px;font-weight:600;letter-spacing:.02em;border-radius:14px;box-shadow:0 4px 16px #00000026;min-height:56px;transition:transform .15s ease,box-shadow .15s ease}.home-cta-section .btn-primary:active{transform:scale(.98);box-shadow:0 2px 8px #0000001f}.home-push-repair-banner{display:block;width:100%;padding:10px 16px;margin-bottom:0;background:color-mix(in srgb,var(--color-primary, #1a1a1a) 6%,transparent);border:1px solid color-mix(in srgb,var(--color-primary, #1a1a1a) 10%,transparent);border-radius:10px;font-size:14px;font-weight:500;color:var(--color-text-main, #1a1a1a);text-align:center;cursor:pointer;transition:background .2s,border-color .2s}.home-push-repair-banner:hover{background:color-mix(in srgb,var(--color-primary, #1a1a1a) 8%,transparent);border-color:color-mix(in srgb,var(--color-primary, #1a1a1a) 15%,transparent)}.home-push-repair-banner:active{background:color-mix(in srgb,var(--color-primary, #1a1a1a) 10%,transparent)}.home-empty-booking{text-align:center;padding:48px 24px;color:var(--color-text-secondary, #8b8b8b)}.home-empty-booking-icon{font-size:48px;margin-bottom:16px;opacity:.4}.home-empty-booking-text{font-size:15px;margin-bottom:8px;line-height:1.5}.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}.staff-avatar{border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:600;overflow:hidden}.staff-avatar-img{object-fit:cover}.staff-avatar-initials{-webkit-user-select:none;user-select:none}.booking-screen{min-height:100dvh;background:#fafafa;display:flex;flex-direction:column;overflow-x:hidden}.booking-scroll-content{flex:1;display:flex;flex-direction:column;padding-bottom:calc(100px + env(safe-area-inset-bottom,0px));overflow-y:auto;-webkit-overflow-scrolling:touch}.booking-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;padding-top:calc(12px + env(safe-area-inset-top,0px));background:#fafafa;position:sticky;top:0;z-index:100;min-height:48px}.booking-header-back{font-size:24px;font-weight:400;background:none;border:none;padding:12px;margin:-12px;color:var(--color-text-main, #1a1a1a);cursor:pointer;min-width:48px;min-height:48px;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}.booking-header-back:active{opacity:.6}.booking-header-title{font-size:17px;font-weight:600;color:var(--color-text-main, #1a1a1a);letter-spacing:-.01em}.booking-header-progress{font-size:13px;font-weight:500;color:#8b8b8b;min-width:48px;text-align:right}.booking-loading-container{flex:1;padding:20px}.booking-loading-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.booking-loading-skeleton{background:linear-gradient(90deg,#f5f5f5 25%,#ebebeb,#f5f5f5 75%);background-size:200% 100%;animation:bookingSkeletonPulse 1.5s ease-in-out infinite;border-radius:14px;height:100px}@keyframes bookingSkeletonPulse{0%{background-position:200% 0}to{background-position:-200% 0}}.booking-step-container{flex:1;display:flex;flex-direction:column;padding:0 20px}.booking-section-title,.booking-step-title{font-size:14px;font-weight:600;color:#8b8b8b;text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px;margin-top:8px}.booking-step-subtitle{font-size:14px;color:#6b6b6b;margin-bottom:16px;font-weight:500}.booking-services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.booking-service-card{background:#fff;border:none;border-radius:14px;padding:16px;box-shadow:0 2px 8px #0000000a;min-height:90px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;position:relative;transition:transform .15s ease,box-shadow .15s ease;-webkit-tap-highlight-color:transparent}.booking-service-card:active{transform:scale(.98)}.booking-service-card.selected{box-shadow:0 2px 12px #0000001a}.booking-service-card.disabled{opacity:.5;pointer-events:none}.booking-service-card-check{position:absolute;top:12px;right:12px;font-size:16px;color:var(--color-text-main, #1a1a1a);font-weight:600}.booking-service-name{font-size:14px;font-weight:600;color:var(--color-text-main, #1a1a1a);line-height:1.35;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;padding-right:24px}.booking-service-price{font-size:16px;font-weight:700;color:var(--color-accent, var(--color-primary, #b8860b));letter-spacing:-.01em}.booking-option-title{font-size:14px;font-weight:600;color:var(--color-text-main, #1a1a1a);line-height:1.35;margin-bottom:8px}.booking-option-info{display:flex;justify-content:space-between;align-items:baseline}.booking-option-price{font-size:16px;font-weight:700;color:var(--color-accent, var(--color-primary, #b8860b))}.booking-option-duration,.booking-selected-services{display:none}.booking-staff-grid{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.booking-staff-card{background:#fff;border:none;border-radius:14px;padding:24px 20px;box-shadow:0 2px 8px #0000000a;display:flex;align-items:center;gap:16px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;-webkit-tap-highlight-color:transparent;min-height:80px}.booking-staff-card:active{transform:scale(.98)}.booking-staff-card.selected{box-shadow:0 2px 12px #0000001a}.booking-staff-avatar{width:48px;height:48px;border-radius:50%;background:var(--color-primary, #1a1a1a);color:var(--color-text-on-primary, #ffffff);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:600;flex-shrink:0}.booking-staff-name{font-size:16px;font-weight:600;color:var(--color-text-main, #1a1a1a)}.booking-date-container{flex:1;margin-bottom:20px}.booking-date-picker-card{background:#fff;border-radius:14px;padding:16px;box-shadow:0 2px 8px #0000000a}.booking-slots-group{margin-bottom:24px}.booking-slots-group-title{font-size:13px;font-weight:600;color:#8b8b8b;margin-bottom:12px;text-transform:capitalize}.booking-slots-row{display:flex;flex-wrap:wrap;gap:10px}.booking-slot-pill{background:#fff;border:none;border-radius:10px;padding:14px 18px;font-size:15px;font-weight:600;color:var(--color-text-main, #1a1a1a);box-shadow:0 2px 8px #0000000a;min-width:70px;min-height:48px;text-align:center;cursor:pointer;transition:transform .15s ease,background .15s ease;-webkit-tap-highlight-color:transparent}.booking-slot-pill:active{transform:scale(.96)}.booking-slot-pill.selected{background:var(--color-primary, #1a1a1a);color:var(--color-text-on-primary, #ffffff)}.booking-slot-pill.has-promo{border:1px solid #86efac;background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.booking-slot-pill.has-promo.selected{background:var(--color-primary, #1a1a1a);border-color:var(--color-primary, #1a1a1a)}.booking-slot-pill{display:inline-flex;flex-direction:column;align-items:center;gap:2px}.booking-slot-promo-badge{font-size:11px;font-weight:700;color:#166534;line-height:1}.booking-slot-pill.selected .booking-slot-promo-badge{color:#ffffffe6}.booking-promo-day-banner{display:flex;align-items:center;gap:8px;padding:10px 14px;margin-bottom:12px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #86efac;border-radius:10px;font-size:13px;font-weight:600;color:#166534}.booking-promo-day-banner-icon{font-size:16px}.booking-time-slots-container{margin-bottom:20px}.booking-time-slots-grid{display:flex;flex-wrap:wrap;gap:10px}.booking-time-slot-card{background:#fff;border:none;border-radius:10px;padding:14px 18px;box-shadow:0 2px 8px #0000000a;min-width:70px;min-height:48px;text-align:center;cursor:pointer;transition:transform .15s ease;-webkit-tap-highlight-color:transparent}.booking-time-slot-card:active{transform:scale(.96)}.booking-time-slot-card[class*=selected]{background:var(--color-primary, #1a1a1a)}.booking-time-slot-card[class*=selected] .booking-time-slot-time{color:var(--color-text-on-primary, #ffffff)}.booking-time-slot-time{font-size:15px;font-weight:600;color:var(--color-text-main, #1a1a1a)}.booking-time-slot-badge{display:none}.booking-slots-skeleton-container{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.booking-slots-skeleton{background:linear-gradient(90deg,#f5f5f5 25%,#ebebeb,#f5f5f5 75%);background-size:200% 100%;animation:bookingSkeletonPulse 1.5s ease-in-out infinite;border-radius:10px;height:48px;width:70px}.booking-no-slots-card{background:#fff;border-radius:14px;padding:32px 20px;box-shadow:0 2px 8px #0000000a;text-align:center;margin-bottom:20px}.booking-no-slots-text{font-size:14px;color:#6b6b6b;line-height:1.5;margin-bottom:16px}.booking-no-slots-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.booking-summary-card{background:#fff;border-radius:14px;padding:20px;box-shadow:0 2px 8px #0000000a;margin-bottom:20px}.booking-summary-header{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.booking-summary-service-name{font-size:18px;font-weight:600;color:var(--color-text-main, #1a1a1a)}.booking-summary-staff-name{font-size:14px;color:#6b6b6b}.booking-summary-datetime{font-size:14px;color:#6b6b6b;margin-top:8px}.booking-summary-divider{height:1px;background:#0000000f;margin:16px 0}.booking-summary-total-row{display:flex;justify-content:space-between;align-items:center}.booking-summary-total-label{font-size:14px;color:#6b6b6b}.booking-summary-total-value{font-size:18px;font-weight:700;color:var(--color-text-main, #1a1a1a)}.booking-summary-title{font-size:14px;font-weight:600;color:#8b8b8b;text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px}.booking-summary-services{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.booking-summary-service{display:flex;justify-content:space-between;font-size:14px;color:var(--color-text-main, #1a1a1a)}.booking-summary-total{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid rgba(0,0,0,.06);font-size:14px}.booking-summary-total strong{font-size:16px;font-weight:700;color:var(--color-text-main, #1a1a1a)}.booking-summary-total span{display:none}.booking-loyalty-card{background:#fff;border-radius:14px;padding:16px 20px;box-shadow:0 2px 8px #0000000a;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.booking-loyalty-content{display:flex;align-items:center;gap:12px;flex:1}.booking-loyalty-icon{font-size:20px}.booking-loyalty-text{font-size:14px;font-weight:500;color:var(--color-text-main, #1a1a1a);margin:0}.booking-loyalty-toggle{width:48px;height:28px;border-radius:14px;border:none;background:#e5e5e5;position:relative;cursor:pointer;transition:background .2s ease;-webkit-tap-highlight-color:transparent}.booking-loyalty-toggle.active{background:var(--color-primary, #1a1a1a)}.booking-loyalty-toggle:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .2s ease;box-shadow:0 1px 3px #0003}.booking-loyalty-toggle.active:after{transform:translate(20px)}.booking-loyalty-title,.booking-loyalty-success,.booking-loyalty-button{display:none}.booking-form-section{margin-bottom:20px}.booking-form-card{background:#fff;border-radius:14px;padding:20px;box-shadow:0 2px 8px #0000000a}.booking-notes-toggle{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border:none;background:none;width:100%;cursor:pointer;font-size:14px;color:#8b8b8b;-webkit-tap-highlight-color:transparent}.booking-notes-toggle-icon{font-size:12px;transition:transform .2s ease}.booking-notes-toggle.expanded .booking-notes-toggle-icon{transform:rotate(180deg)}.booking-sticky-footer{position:fixed;bottom:0;left:0;right:0;padding:16px 20px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));background:linear-gradient(to top,#fafafa 80%,#fafafa00);z-index:50}.booking-cta{background:linear-gradient(135deg,var(--color-primary, #1a1a1a) 0%,color-mix(in srgb,var(--color-primary, #1a1a1a) 85%,black) 100%);border:none;padding:18px 24px;font-size:16px;font-weight:600;letter-spacing:.02em;border-radius:14px;color:var(--color-text-on-primary, #ffffff);width:100%;min-height:56px;box-shadow:0 4px 16px #00000026;cursor:pointer;transition:transform .15s ease,opacity .15s ease;-webkit-tap-highlight-color:transparent}.booking-cta:active{transform:scale(.98)}.booking-cta:disabled{opacity:.5;cursor:not-allowed}.booking-cta.loading{opacity:.7}.booking-inline-error{background:#fef2f2;border-radius:12px;padding:16px;margin-bottom:16px;text-align:center}.booking-inline-error-icon{font-size:16px;margin-right:8px}.booking-inline-error-text{font-size:14px;color:#dc2626;font-weight:500}.booking-inline-error-hint{font-size:13px;color:#6b6b6b;margin-top:4px}.booking-success{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;padding-bottom:calc(40px + env(safe-area-inset-bottom,0px));text-align:center;background:#fafafa}.booking-success-check{width:80px;height:80px;border-radius:50%;background:var(--color-primary, #1a1a1a);color:var(--color-text-on-primary, #ffffff);display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:400;margin-bottom:24px;animation:bookingSuccessPop .4s ease-out}@keyframes bookingSuccessPop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.booking-success-title{font-size:24px;font-weight:700;color:var(--color-text-main, #1a1a1a);margin-bottom:24px;letter-spacing:-.02em}.booking-success-details{margin-bottom:40px}.booking-success-service{font-size:18px;font-weight:600;color:var(--color-text-main, #1a1a1a);margin-bottom:4px}.booking-success-staff{font-size:15px;color:#6b6b6b;margin-bottom:12px}.booking-success-datetime{font-size:15px;color:#6b6b6b}.booking-success-cta{background:linear-gradient(135deg,var(--color-primary, #1a1a1a) 0%,color-mix(in srgb,var(--color-primary, #1a1a1a) 85%,black) 100%);border:none;padding:18px 48px;font-size:16px;font-weight:600;letter-spacing:.02em;border-radius:14px;color:var(--color-text-on-primary, #ffffff);min-height:56px;box-shadow:0 4px 16px #00000026;cursor:pointer;transition:transform .15s ease;-webkit-tap-highlight-color:transparent;margin-bottom:20px}.booking-success-cta:active{transform:scale(.98)}.booking-success-secondary{font-size:14px;color:#8b8b8b;cursor:default}.booking-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.booking-treatment-modal{width:100%;max-width:360px;padding:32px 24px;border-radius:20px;background:#fff;box-shadow:0 20px 40px #0003}.booking-treatment-modal-title{font-size:22px;font-weight:700;color:var(--color-text-main, #1a1a1a);text-align:center;margin-bottom:16px}.booking-treatment-modal-text{font-size:14px;color:#6b6b6b;text-align:center;margin-bottom:20px;line-height:1.5}.booking-treatment-modal-subtext{font-size:14px;font-weight:600;color:var(--color-text-main, #1a1a1a);text-align:center;margin-bottom:16px}.booking-treatment-modal-note{font-size:13px;color:#8b8b8b;text-align:center;font-style:italic;margin-top:12px;margin-bottom:16px}.booking-promo-badge{display:flex;align-items:center;gap:8px;padding:10px 14px;margin-bottom:12px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #86efac;border-radius:10px}.booking-promo-badge-icon{font-size:18px;flex-shrink:0}.booking-promo-badge-text{font-size:14px;font-weight:600;color:#166534;line-height:1.3}.booking-promo-loading{font-size:13px;color:#8b8b8b;padding:6px 0 10px;text-align:center}.booking-price-original{text-decoration:line-through;color:#a1a1a1;font-weight:400;font-size:15px}.booking-price-discounted{color:#16a34a;font-weight:700}.booking-success-savings{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:32px;padding:14px 24px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #86efac;border-radius:12px}.booking-success-savings-badge{font-size:16px;font-weight:700;color:#166534}.booking-success-savings-promo{font-size:13px;color:#15803d;font-weight:500}.booking-button-row,.booking-toast{display:none}.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)}}.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)}.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}.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:20px;background-color:#fafafa;min-height:100%}.bookings-list-header{margin-bottom:20px}.bookings-list-header h1{font-size:24px;font-weight:700;color:var(--color-text-main, #1a1a1a);margin:0;letter-spacing:-.02em}.bookings-list-filters{display:flex;gap:8px;padding:12px 0;border-bottom:none;margin-bottom:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.bookings-list-filters::-webkit-scrollbar{display:none}.bookings-list-loading,.bookings-list-error,.bookings-list-empty{text-align:center;padding:48px 24px;color:#8b8b8b}.bookings-list-empty-icon{font-size:48px;margin-bottom:16px;opacity:.4}.bookings-list-empty-text{font-size:15px;margin-bottom:8px;color:#6b6b6b}.bookings-list-empty-hint{font-size:13px;margin-top:8px;margin-bottom:24px;color:#999}.bookings-list-content{display:flex;flex-direction:column;gap:12px;min-height:fit-content}.bookings-list-item{padding:16px;cursor:pointer;background:#fff;border-radius:14px;border:none;box-shadow:0 2px 8px #0000000a;transition:transform .15s ease,box-shadow .15s ease}.bookings-list-item:active{transform:scale(.98)}.bookings-list-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;gap:12px}.bookings-list-item-header h3{font-size:15px;font-weight:600;margin:0;color:var(--color-text-main, #1a1a1a);flex:1;line-height:1.4}.bookings-list-item-badge{padding:4px 10px;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap;flex-shrink:0;text-transform:uppercase;letter-spacing:.03em}.bookings-list-item-badge.status-confirmed{background-color:var(--color-primary, #1a1a1a);color:var(--color-text-on-primary, white)}.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:#fafafa}.profile-header{padding:20px;background:#fff;border-bottom:none;display:flex;flex-direction:row;justify-content:space-between;align-items:center}.profile-header h1{font-size:24px;font-weight:700;color:var(--color-text-main, #1a1a1a);margin:0;letter-spacing:-.02em}.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:16px 20px 24px;display:flex;flex-direction:column;gap:12px}.profile-section{padding:20px;margin-bottom:0;background:#fff;border-radius:14px;border:none;box-shadow:0 2px 8px #0000000a}.profile-section:last-child{margin-bottom:0}.profile-section-title{font-size:13px;font-weight:600;color:#8b8b8b;margin:0 0 16px;text-transform:uppercase;letter-spacing:.06em}.profile-field{margin-bottom:16px}.profile-field:last-child{margin-bottom:0}.profile-field label{display:block;font-size:12px;font-weight:600;color:#999;margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}.profile-field span{display:block;font-size:16px;font-weight:500;color:var(--color-text-main, #1a1a1a);padding:4px 0}.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-repair{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.profile-push-repair .profile-push-status{font-size:14px;font-weight:600;color:var(--color-text-main, #1a1a1a)}.profile-hub-badge{display:inline-flex;align-items:center;padding:8px 14px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #7dd3fc;border-radius:10px;font-size:14px;font-weight:600;color:#0369a1}.profile-push-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;background:#f5f5f5;border-radius:12px}.profile-push-info{flex:1;display:flex;flex-direction:column;gap:2px}.profile-push-status{font-size:14px;font-weight:600;color:var(--color-text-main, #1a1a1a)}.profile-push-description{font-size:13px;color:#8b8b8b}.profile-switch{position:relative;width:52px;height:32px;background:#ddd;border:none;border-radius:16px;cursor:pointer;transition:background .2s ease;flex-shrink:0;padding:0}.profile-switch.active{background:var(--color-primary, #1a1a1a)}.profile-switch:disabled{opacity:.4;cursor:not-allowed}.profile-switch-slider{position:absolute;top:3px;left:3px;width:26px;height:26px;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 2px 4px #00000026}.profile-switch.active .profile-switch-slider{transform:translate(20px)}.profile-fidelity-card{background:linear-gradient(145deg,var(--color-primary, #1a1a1a) 0%,color-mix(in srgb,var(--color-primary, #1a1a1a) 85%,black) 100%);border:none;border-radius:16px;overflow:hidden;position:relative}.profile-fidelity-card:before{content:"";position:absolute;top:0;right:0;width:120px;height:120px;background:radial-gradient(circle at center,rgba(184,134,11,.15) 0%,transparent 70%);pointer-events:none}.profile-fidelity-card .profile-section-title{color:#fff9;font-size:11px;letter-spacing:.1em}.profile-fidelity-loading{padding:24px;text-align:center}.profile-fidelity-loading p{font-size:14px;color:#ffffff80}.profile-fidelity-placeholder{font-size:14px;color:#fff9;margin:0;padding:16px 0}.profile-fidelity-stats{display:flex;gap:12px;margin-bottom:0}.profile-fidelity-stat{flex:1;text-align:center;padding:20px 12px;background:#ffffff0f;border-radius:12px;border:1px solid rgba(255,255,255,.08)}.profile-fidelity-stat-success{background:linear-gradient(145deg,#b8860b33,#b8860b1a);border-color:#b8860b4d}.profile-fidelity-stat-value{font-size:32px;font-weight:700;color:#fff;margin-bottom:6px;display:block;letter-spacing:-.02em;text-shadow:0 1px 2px rgba(0,0,0,.2)}.profile-fidelity-stat-success .profile-fidelity-stat-value{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.25)}.profile-fidelity-stat-label{font-size:11px;color:#fff9;text-align:center;display:block;line-height:1.4;font-weight:500;text-transform:uppercase;letter-spacing:.04em}.profile-fidelity-info{margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.profile-fidelity-info-title{font-size:12px;font-weight:600;color:#ffffff80;margin:0 0 8px;text-transform:uppercase;letter-spacing:.06em}.profile-fidelity-info-text{font-size:13px;color:#ffffffb3;line-height:1.6;margin:0 0 6px}.profile-fidelity-info-text:last-child{margin-bottom:0}.profile-fidelity-info-text strong{color:#fff;font-weight:600;text-shadow:0 1px 1px rgba(0,0,0,.2)}.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:60px;background:#fffffff2;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border-top:1px solid var(--v4-border-subtle);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 -1px 3px #0000000d}.staff-v3-bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:var(--v4-space-2);border:none;background:transparent;color:var(--v3-text-secondary);font-size:var(--v4-font-size-xs);font-weight:var(--v3-font-weight-medium);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:all var(--v4-transition-base);touch-action:manipulation;border-radius:var(--v4-border-radius-md)}.staff-v3-bottom-nav-item:active{background:var(--v4-surface-hover);transform:scale(.95)}.staff-v3-bottom-nav-item.active{color:var(--v3-primary);font-weight:var(--v3-font-weight-semibold)}.staff-v3-bottom-nav-icon-wrapper{position:relative;display:inline-block}.staff-v3-bottom-nav-icon{display:flex;align-items:center;justify-content:center;margin-bottom:2px;color:inherit}.staff-v3-bottom-nav-icon svg{width:22px;height:22px}.staff-v3-bottom-nav-badge{position:absolute;top:-6px;right:-8px;background:var(--v3-error, #ff3b30);color:#fff;font-size:var(--v4-font-size-2xs);font-weight:var(--v3-font-weight-bold);padding:2px 5px;border-radius:var(--v4-border-radius-full);min-width:18px;text-align:center;line-height:1.2;box-shadow:var(--v4-shadow-sm);border:2px solid rgba(255,255,255,.95)}.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}.v4-page-header{margin-bottom:var(--v4-space-6);padding-bottom:var(--v4-space-4);border-bottom:1px solid var(--v4-border-subtle);padding-top:env(safe-area-inset-top,0px)}@media (max-width: 1023px){.v4-page-header{padding-top:max(env(safe-area-inset-top,0px),var(--v4-space-4))}}.v4-page-header-content{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--v4-space-4)}.v4-page-header-text{flex:1;min-width:0}.v4-page-header-title{font-size:var(--v4-font-size-2xl);font-weight:var(--v3-font-weight-bold);color:var(--v3-text-primary);margin:0 0 var(--v4-space-1) 0;line-height:var(--v4-line-height-tight);letter-spacing:var(--v4-letter-spacing-tight)}.v4-page-header-subtitle{font-size:var(--v4-font-size-sm);color:var(--v3-text-secondary);margin:0;line-height:var(--v4-line-height-normal)}.v4-page-header-actions{display:flex;align-items:center;gap:var(--v4-space-2);flex-shrink:0}.v4-section-card{background:var(--v4-surface-elevated);border:1px solid var(--v4-border-subtle);border-radius:var(--v4-border-radius-md);padding:var(--v4-space-5);margin-bottom:var(--v4-space-4);box-shadow:var(--v4-shadow-sm);transition:all var(--v4-transition-base)}.v4-section-card:hover{box-shadow:var(--v4-shadow-md);border-color:var(--v4-border-default)}.v4-section-card-clickable{cursor:pointer}.v4-section-card-clickable:active{transform:translateY(1px);box-shadow:var(--v4-shadow-xs)}.v4-section-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--v4-space-4);gap:var(--v4-space-4)}.v4-section-card-title{font-size:var(--v4-font-size-lg);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0;line-height:var(--v4-line-height-tight)}.v4-section-card-right{flex-shrink:0}.v4-section-card-header-clickable{cursor:pointer;transition:background-color .2s}.v4-section-card-header-clickable:hover{background-color:var(--v3-bg-secondary, #f9fafb)}.v4-section-card-title-row{flex:1;display:flex;justify-content:space-between;align-items:center;gap:12px}.v4-section-card-right-slot{display:flex;align-items:center;gap:8px}.v4-section-card-toggle{background:none;border:none;padding:8px;cursor:pointer;color:var(--v3-text-secondary, #6b7280);transition:all .2s;border-radius:4px;display:flex;align-items:center;justify-content:center}.v4-section-card-toggle:hover{color:var(--v3-text-primary, #111827);background:var(--v3-bg-secondary, #f3f4f6)}.v4-toggle-icon{display:inline-block;transition:transform .3s ease;font-size:12px;line-height:1}.v4-toggle-icon.v4-toggle-expanded{transform:rotate(180deg)}.v4-section-card-body{color:var(--v3-text-primary);animation:v4-slideDown .3s ease;overflow:hidden}@keyframes v4-slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:10000px}}.v4-data-list{display:flex;flex-direction:column;gap:var(--v4-space-1);background:var(--v4-surface-elevated);border:1px solid var(--v4-border-subtle);border-radius:var(--v4-border-radius-md);overflow:hidden}.v4-data-row{display:flex;align-items:center;padding:var(--v4-space-4);gap:var(--v4-space-4);border-bottom:1px solid var(--v4-border-subtle);transition:background var(--v4-transition-fast)}.v4-data-row:last-child{border-bottom:none}.v4-data-row-clickable{cursor:pointer}.v4-data-row-clickable:hover{background:var(--v4-surface-hover)}.v4-data-row-clickable:active{background:var(--v4-surface-active)}.v4-pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--v4-border-radius-full);font-size:var(--v4-font-size-xs);font-weight:var(--v3-font-weight-medium);line-height:1;white-space:nowrap}.v4-pill-sm{padding:1px 6px;font-size:var(--v4-font-size-2xs)}.v4-pill-md{padding:2px 8px;font-size:var(--v4-font-size-xs)}.v4-pill-success{background:var(--v4-status-success-bg);color:var(--v4-status-success-text);border:1px solid var(--v4-status-success-border)}.v4-pill-warning{background:var(--v4-status-warning-bg);color:var(--v4-status-warning-text);border:1px solid var(--v4-status-warning-border)}.v4-pill-error{background:var(--v4-status-error-bg);color:var(--v4-status-error-text);border:1px solid var(--v4-status-error-border)}.v4-pill-info{background:var(--v4-status-info-bg);color:var(--v4-status-info-text);border:1px solid var(--v4-status-info-border)}.v4-pill-neutral{background:var(--v4-status-neutral-bg);color:var(--v4-status-neutral-text);border:1px solid var(--v4-status-neutral-border)}.v4-badge{position:relative;display:inline-flex;align-items:center}.v4-badge-count{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;background:var(--v3-error);color:#fff;border-radius:var(--v4-border-radius-full);font-size:var(--v4-font-size-2xs);font-weight:var(--v3-font-weight-bold);display:flex;align-items:center;justify-content:center;line-height:1;border:2px solid var(--v4-surface-elevated)}.v4-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--v4-space-2);border:1px solid transparent;border-radius:var(--v4-border-radius-md);font-weight:var(--v3-font-weight-medium);cursor:pointer;transition:all var(--v4-transition-base);white-space:nowrap;-webkit-user-select:none;user-select:none}.v4-button:focus-visible{outline:none;box-shadow:var(--v4-focus-ring)}.v4-button:disabled{opacity:.5;cursor:not-allowed}.v4-button-sm{height:var(--v4-button-height-sm);padding:var(--v4-button-padding-y-sm) var(--v4-button-padding-x-sm);font-size:var(--v4-font-size-sm)}.v4-button-md{height:var(--v4-button-height-md);padding:var(--v4-button-padding-y-md) var(--v4-button-padding-x-md);font-size:var(--v4-font-size-base)}.v4-button-lg{height:var(--v4-button-height-lg);padding:var(--v4-button-padding-y-lg) var(--v4-button-padding-x-lg);font-size:var(--v4-font-size-lg)}@media (max-width: 1023px){.v4-button-sm,.v4-button-md{min-height:44px;height:auto;padding-top:12px;padding-bottom:12px}}.v4-button-primary{background:var(--v3-primary);color:#fff;border-color:var(--v3-primary)}.v4-button-primary:hover:not(:disabled){background:var(--v3-primary-hover);border-color:var(--v3-primary-hover);transform:translateY(-1px);box-shadow:var(--v4-shadow-md)}.v4-button-primary:active:not(:disabled){transform:translateY(0);box-shadow:var(--v4-shadow-sm)}.v4-button-secondary{background:var(--v4-surface-elevated);color:var(--v3-text-primary);border-color:var(--v4-border-default)}.v4-button-secondary:hover:not(:disabled){background:var(--v4-surface-hover);border-color:var(--v4-border-strong)}.v4-button-ghost{background:transparent;color:var(--v3-text-primary);border-color:transparent}.v4-button-ghost:hover:not(:disabled){background:var(--v4-surface-hover)}.v4-button-danger{background:var(--v3-error);color:#fff;border-color:var(--v3-error)}.v4-button-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626;transform:translateY(-1px);box-shadow:var(--v4-shadow-md)}.v4-button-spinner{width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:v4-spin .6s linear infinite}@keyframes v4-spin{to{transform:rotate(360deg)}}.v4-icon-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--v4-border-radius-md);background:transparent;cursor:pointer;transition:all var(--v4-transition-fast);color:var(--v3-text-secondary)}.v4-icon-button:focus-visible{outline:none;box-shadow:var(--v4-focus-ring)}.v4-icon-button:disabled{opacity:.5;cursor:not-allowed}.v4-icon-button-sm{width:32px;height:32px}.v4-icon-button-md{width:40px;height:40px}.v4-icon-button-lg{width:48px;height:48px}@media (max-width: 1023px){.v4-icon-button-sm,.v4-icon-button-md{min-width:44px;min-height:44px;width:44px;height:44px}}.v4-icon-button-icon{font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center}.v4-icon-button-default:hover:not(:disabled){background:var(--v4-surface-hover);color:var(--v3-text-primary)}.v4-icon-button-ghost:hover:not(:disabled){background:var(--v4-surface-hover)}.v4-icon-button-primary{background:var(--v3-primary);color:#fff}.v4-icon-button-primary:hover:not(:disabled){background:var(--v3-primary-hover)}.v4-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--v4-space-12) var(--v4-space-6);text-align:center}.v4-empty-state-icon{font-size:48px;margin-bottom:var(--v4-space-4);opacity:.5}.v4-empty-state-title{font-size:var(--v4-font-size-lg);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0 0 var(--v4-space-2) 0}.v4-empty-state-description{font-size:var(--v4-font-size-sm);color:var(--v3-text-secondary);margin:0 0 var(--v4-space-6) 0;max-width:400px}.v4-empty-state-action{margin-top:var(--v4-space-4)}.v4-top-bar{background:var(--v4-surface-elevated);border-bottom:1px solid var(--v4-border-subtle);padding:var(--v4-space-4) var(--v4-space-5);position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;padding-top:max(env(safe-area-inset-top,0px),var(--v4-space-4))}.v4-top-bar-content{display:flex;align-items:center;justify-content:space-between;gap:var(--v4-space-4);max-width:var(--v4-container-max);margin:0 auto}.v4-top-bar-left{flex:1;min-width:0}.v4-top-bar-title{font-size:var(--v4-font-size-xl);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0;line-height:var(--v4-line-height-tight)}.v4-top-bar-breadcrumb{display:flex;align-items:center;gap:var(--v4-space-2);font-size:var(--v4-font-size-sm)}.v4-top-bar-separator{color:var(--v3-text-muted);margin:0 var(--v4-space-1)}.v4-top-bar-breadcrumb-item{color:var(--v3-text-secondary);text-decoration:none;transition:color var(--v4-transition-fast)}.v4-top-bar-breadcrumb-item:hover{color:var(--v3-primary)}.v4-top-bar-breadcrumb-item-current{color:var(--v3-text-primary);font-weight:var(--v3-font-weight-medium)}.v4-top-bar-right{display:flex;align-items:center;gap:var(--v4-space-3);flex-shrink:0}.v4-top-bar-actions{display:flex;align-items:center;gap:var(--v4-space-2)}@media (max-width: 767px){.v4-page-header-content{flex-direction:column;align-items:stretch}.v4-page-header-actions{width:100%;justify-content:flex-end}.v4-section-card{padding:var(--v4-space-4)}.v4-top-bar{padding:var(--v4-space-3) var(--v4-space-4)}.v4-top-bar-breadcrumb{font-size:var(--v4-font-size-xs)}}.v4-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}.v4-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.v4-modal-header{padding:20px 24px;border-bottom:1px solid var(--v3-border, #e0e0e0);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.v4-modal-title{margin:0;font-size:20px;font-weight:600;color:var(--v3-text-primary, #333)}.v4-modal-close{background:none;border:none;font-size:24px;color:var(--v3-text-secondary, #666);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.v4-modal-close:hover{background:#f5f5f5}.v4-modal-body{padding:24px;flex:1;overflow-y:auto}.v4-modal-footer{padding:16px 24px;border-top:1px solid var(--v3-border, #e0e0e0);display:flex;gap:12px;justify-content:flex-end;flex-shrink:0}@media (min-width: 768px){.v4-modal{width:520px}}@media (max-width: 767px){.v4-modal{width:100%;max-width:100%;border-radius:0;max-height:100vh}.v4-modal-overlay{padding:0}}.staff-v3-desktop-sidebar{width:260px;background:#fff;border-right:1px solid var(--v4-border-subtle, #e2e8f0);display:flex;flex-direction:column;height:100vh;overflow:hidden}.staff-v3-desktop-sidebar-header{padding:var(--v4-space-5) var(--v4-space-4);border-bottom:1px solid var(--v4-border-subtle, #e2e8f0);flex-shrink:0}.staff-v3-desktop-sidebar-brand{display:flex;align-items:center;gap:var(--v4-space-3)}.staff-v3-desktop-sidebar-brand-avatar{width:36px;height:36px;border-radius:var(--v4-border-radius-md);background:var(--v3-primary, #2563eb);color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:var(--v3-font-weight-bold);flex-shrink:0}.staff-v3-desktop-sidebar-brand-text{display:flex;flex-direction:column;gap:2px;min-width:0}.staff-v3-desktop-sidebar-logo{font-size:var(--v4-font-size-sm);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-v3-desktop-sidebar-plan{font-size:var(--v4-font-size-xs);color:var(--v3-text-muted);line-height:1}.staff-v3-desktop-sidebar-nav{flex:1;padding:var(--v4-space-3) var(--v4-space-2);display:flex;flex-direction:column;gap:2px;overflow-y:auto;overflow-x:hidden}.staff-v3-desktop-sidebar-section-label{font-size:10px;font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-muted);text-transform:uppercase;letter-spacing:.07em;padding:var(--v4-space-3) var(--v4-space-3) var(--v4-space-1);margin-top:var(--v4-space-2);-webkit-user-select:none;user-select:none}.staff-v3-desktop-sidebar-item{display:flex;align-items:center;gap:var(--v4-space-3);padding:9px var(--v4-space-3);border:none;background:transparent;border-radius:var(--v4-border-radius-md);cursor:pointer;transition:background var(--v4-transition-fast),color var(--v4-transition-fast);text-align:left;width:100%;font-size:var(--v4-font-size-base, 15px);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-secondary);min-height:40px}.staff-v3-desktop-sidebar-item:hover{background:var(--v4-surface-hover, #f1f5f9);color:var(--v3-text-primary)}.staff-v3-desktop-sidebar-item.active{background:#2563eb14;color:var(--v3-primary, #2563eb);font-weight:var(--v3-font-weight-semibold)}.staff-v3-desktop-sidebar-item.active:hover{background:#2563eb1f}.staff-v3-desktop-sidebar-item.staff-v3-nav-locked{opacity:.55}.staff-v3-desktop-sidebar-item.staff-v3-nav-locked .staff-v3-desktop-sidebar-label:after{content:" — Signature";font-size:.75em;color:var(--v3-text-muted)}.staff-v3-desktop-sidebar-icon{font-size:17px;width:20px;text-align:center;flex-shrink:0;line-height:1}.staff-v3-desktop-sidebar-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-v3-desktop-sidebar-badge{background:var(--v3-error, #ef4444);color:#fff;font-size:10px;font-weight:var(--v3-font-weight-bold);padding:1px 5px;border-radius:var(--v4-border-radius-full);min-width:17px;text-align:center;line-height:1.5;flex-shrink:0}.staff-v3-desktop-sidebar-footer{padding:var(--v4-space-3) var(--v4-space-2);border-top:1px solid var(--v4-border-subtle, #e2e8f0);display:flex;flex-direction:column;gap:2px;flex-shrink:0}.staff-v3-desktop-sidebar-status{display:flex;align-items:center;gap:var(--v4-space-2);font-size:var(--v4-font-size-xs);color:var(--v3-text-muted);padding:5px var(--v4-space-3)}.staff-v3-desktop-sidebar-status-dot{width:7px;height:7px;border-radius:50%;background:var(--v3-error);flex-shrink:0}.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-sidebar-settings-link{display:flex;align-items:center;gap:var(--v4-space-2);padding:7px var(--v4-space-3);border:none;background:transparent;border-radius:var(--v4-border-radius-md);font-size:var(--v4-font-size-xs);color:var(--v3-text-muted);cursor:pointer;transition:background var(--v4-transition-fast),color var(--v4-transition-fast);text-align:left;width:100%}.staff-v3-desktop-sidebar-settings-link:hover{background:var(--v4-surface-hover);color:var(--v3-text-primary)}.staff-v3-desktop-shell{display:grid;grid-template-columns:260px 1fr;height:100vh;overflow:hidden}.staff-v3-desktop-center{overflow-y:auto;overflow-x:hidden;background:var(--color-bg, var(--v3-surface, #f8fafc));min-width:0;padding:var(--space-4, 24px);display:flex;flex-direction:column;align-items:center}.staff-v3-desktop-center>*{width:100%;max-width:var(--v4-container-max, 1600px);margin:0 auto}.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}}:root{--v4-surface-elevated: #ffffff;--v4-surface-subtle: #fafbfc;--v4-surface-hover: #f1f5f9;--v4-surface-active: #e2e8f0;--v4-border-subtle: #e2e8f0;--v4-border-default: #cbd5e1;--v4-border-strong: #94a3b8;--v4-border-radius-xs: 6px;--v4-border-radius-sm: 8px;--v4-border-radius-md: 12px;--v4-border-radius-lg: 16px;--v4-border-radius-xl: 20px;--v4-border-radius-full: 9999px;--v4-shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .03);--v4-shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .05), 0 1px 2px -1px rgba(0, 0, 0, .05);--v4-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -2px rgba(0, 0, 0, .05);--v4-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .05), 0 4px 6px -4px rgba(0, 0, 0, .05);--v4-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .05), 0 8px 10px -6px rgba(0, 0, 0, .05);--v4-font-size-2xs: 11px;--v4-font-size-xs: 12px;--v4-font-size-sm: 13px;--v4-font-size-base: 15px;--v4-font-size-md: 16px;--v4-font-size-lg: 18px;--v4-font-size-xl: 20px;--v4-font-size-2xl: 24px;--v4-font-size-3xl: 30px;--v4-line-height-tight: 1.25;--v4-line-height-normal: 1.5;--v4-line-height-relaxed: 1.75;--v4-letter-spacing-tight: -.025em;--v4-letter-spacing-normal: 0;--v4-letter-spacing-wide: .025em;--v4-space-0: 0;--v4-space-1: 4px;--v4-space-2: 8px;--v4-space-3: 12px;--v4-space-4: 16px;--v4-space-5: 20px;--v4-space-6: 24px;--v4-space-8: 32px;--v4-space-10: 40px;--v4-space-12: 48px;--v4-space-16: 64px;--v4-focus-ring: 0 0 0 3px rgba(37, 99, 235, .1);--v4-focus-ring-offset: 2px;--v4-button-height-sm: 32px;--v4-button-height-md: 40px;--v4-button-height-lg: 48px;--v4-button-padding-x-sm: 12px;--v4-button-padding-x-md: 16px;--v4-button-padding-x-lg: 24px;--v4-button-padding-y-sm: 6px;--v4-button-padding-y-md: 10px;--v4-button-padding-y-lg: 12px;--v4-status-success-bg: rgba(16, 185, 129, .08);--v4-status-success-text: #059669;--v4-status-success-border: rgba(16, 185, 129, .2);--v4-status-warning-bg: rgba(245, 158, 11, .08);--v4-status-warning-text: #d97706;--v4-status-warning-border: rgba(245, 158, 11, .2);--v4-status-error-bg: rgba(239, 68, 68, .08);--v4-status-error-text: #dc2626;--v4-status-error-border: rgba(239, 68, 68, .2);--v4-status-info-bg: rgba(37, 99, 235, .08);--v4-status-info-text: #2563eb;--v4-status-info-border: rgba(37, 99, 235, .2);--v4-status-neutral-bg: rgba(148, 163, 184, .08);--v4-status-neutral-text: #64748b;--v4-status-neutral-border: rgba(148, 163, 184, .2);--v4-container-sm: 640px;--v4-container-md: 768px;--v4-container-lg: 1024px;--v4-container-xl: 1280px;--v4-container-2xl: 1536px;--v4-container-max: 1600px;--v4-transition-fast: .12s cubic-bezier(.4, 0, .2, 1);--v4-transition-base: .2s cubic-bezier(.4, 0, .2, 1);--v4-transition-slow: .3s cubic-bezier(.4, 0, .2, 1)}.staff-v3-empty-state{text-align:center;padding:var(--v4-space-12) var(--v4-space-6);color:var(--v3-text-secondary)}.staff-v3-empty-state-icon{font-size:40px;margin-bottom:var(--v4-space-4);opacity:.5}.staff-v3-empty-state-title{font-size:var(--v4-font-size-lg);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0 0 var(--v4-space-2) 0}.staff-v3-empty-state-text{font-size:var(--v4-font-size-sm);color:var(--v3-text-secondary);margin:0}.staff-v3-loading-skeleton{display:flex;flex-direction:column;gap:var(--v4-space-4)}.staff-v3-skeleton-card{background:var(--v4-surface-hover);border-radius:var(--v4-border-radius-md);height:80px;animation:v4-skeleton-loading 1.5s ease-in-out infinite}.v4-container{max-width:var(--v4-container-max);margin:0 auto;padding:0 var(--v4-space-5)}@media (max-width: 767px){.v4-container{padding:0 var(--v4-space-4)}}.v4-sticky-header{position:sticky;top:0;z-index:10;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--v4-border-subtle)}.v4-safe-area-padding{padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);padding-left:var(--safe-left);padding-right:var(--safe-right)}.v4-scroll-vertical-only{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.v4-no-horizontal-scroll{overflow-x:hidden;width:100%;max-width:100%}.v4-skeleton{background:linear-gradient(90deg,var(--v4-surface-hover) 0%,var(--v4-surface-active) 50%,var(--v4-surface-hover) 100%);background-size:200% 100%;animation:v4-skeleton-loading 1.5s ease-in-out infinite;border-radius:var(--v4-border-radius-md)}@keyframes v4-skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.v4-text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v4-text-multiline-truncate{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.v4-mt-auto{margin-top:auto}.v4-mb-auto{margin-bottom:auto}.v4-gap-0{gap:var(--v4-space-0)}.v4-gap-1{gap:var(--v4-space-1)}.v4-gap-2{gap:var(--v4-space-2)}.v4-gap-3{gap:var(--v4-space-3)}.v4-gap-4{gap:var(--v4-space-4)}.v4-gap-5{gap:var(--v4-space-5)}.v4-gap-6{gap:var(--v4-space-6)}.v4-flex{display:flex}.v4-flex-col{flex-direction:column}.v4-flex-row{flex-direction:row}.v4-items-center{align-items:center}.v4-justify-between{justify-content:space-between}.v4-justify-center{justify-content:center}.v4-flex-1{flex:1}.v4-grid{display:grid}.v4-grid-cols-2{grid-template-columns:repeat(2,1fr)}.v4-grid-cols-3{grid-template-columns:repeat(3,1fr)}.v4-grid-cols-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 767px){.v4-grid-cols-2,.v4-grid-cols-3,.v4-grid-cols-4{grid-template-columns:1fr}}.staff-v3-hero-operativo{background:var(--v3-background);border-radius:var(--v3-border-radius-lg);padding:var(--v3-spacing-lg);margin-bottom:var(--v3-spacing-lg);display:flex;flex-direction:column;gap:var(--v3-spacing-md)}.staff-v3-hero-time{display:flex;align-items:center;justify-content:center;padding:var(--v3-spacing-md) 0}.staff-v3-hero-time-value{font-size:48px;font-weight:var(--v3-font-weight-bold);color:var(--v3-text-primary);letter-spacing:-.5px;line-height:1}.staff-v3-hero-next-booking{background:var(--v3-surface);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-md);cursor:pointer;transition:all .2s ease}.staff-v3-hero-next-booking:hover{border-color:var(--v3-primary);box-shadow:0 2px 6px #00000014}.staff-v3-hero-next-booking.urgent{border-color:var(--v3-warning, #f59e0b);background:#f59e0b0d}.staff-v3-hero-next-booking-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--v3-spacing-sm)}.staff-v3-hero-next-booking-label{font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-secondary);text-transform:uppercase;letter-spacing:.5px}.staff-v3-hero-next-booking-time{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-secondary);padding:2px 8px;background:var(--v3-surface);border-radius:var(--v3-border-radius-sm)}.staff-v3-hero-next-booking-time.urgent{color:var(--v3-warning, #f59e0b);background:#f59e0b1a}.staff-v3-hero-next-booking-content{display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.staff-v3-hero-next-booking-customer{font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);line-height:1.3}.staff-v3-hero-next-booking-details{display:flex;align-items:center;gap:var(--v3-spacing-sm);font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary)}.staff-v3-hero-next-booking-staff{font-weight:var(--v3-font-weight-medium)}.staff-v3-hero-next-booking-service{color:var(--v3-text-secondary)}.staff-v3-hero-next-booking-status-badge{display:inline-block;margin-top:var(--v3-spacing-xs);padding:2px 8px;font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold);color:var(--v3-warning, #f59e0b);background:#f59e0b1a;border-radius:var(--v3-border-radius-sm);width:fit-content}.staff-v3-hero-no-booking{padding:var(--v3-spacing-md);text-align:center}.staff-v3-hero-no-booking-label{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary)}.staff-v3-hero-shop-status{display:flex;align-items:center;gap:var(--v3-spacing-sm);padding:var(--v3-spacing-sm) var(--v3-spacing-md);background:var(--v3-surface);border-radius:var(--v3-border-radius-sm);width:fit-content;margin:0 auto}.staff-v3-hero-shop-status-dot{width:8px;height:8px;border-radius:50%;background:var(--v3-text-secondary)}.staff-v3-hero-shop-status.status-success .staff-v3-hero-shop-status-dot{background:var(--v3-success, #10b981)}.staff-v3-hero-shop-status.status-warning .staff-v3-hero-shop-status-dot{background:var(--v3-warning, #f59e0b)}.staff-v3-hero-shop-status.status-neutral .staff-v3-hero-shop-status-dot{background:var(--v3-text-secondary)}.staff-v3-hero-shop-status-label{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary)}@media (max-width: 767px){.staff-v3-hero-time-value{font-size:40px}.staff-v3-hero-operativo{padding:var(--v3-spacing-md)}}@media (min-width: 1024px){.staff-v3-hero-operativo{border:1px solid var(--v4-border-subtle);box-shadow:var(--v4-shadow-sm);margin-bottom:0}.staff-v3-hero-time{padding:var(--v3-spacing-sm) 0}.staff-v3-hero-time-value{font-size:40px}.staff-v3-hero-shop-status{margin:0}}.staff-v3-quick-actions-compact{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:var(--v3-spacing-sm);margin-bottom:var(--v3-spacing-lg)}.staff-v3-quick-action-compact{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--v3-spacing-xs);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 .2s ease;min-height:80px}.staff-v3-quick-action-compact:hover{border-color:var(--v3-primary);background:var(--v3-surface);transform:translateY(-1px);box-shadow:0 2px 6px #00000014}.staff-v3-quick-action-compact:active{transform:translateY(0)}.staff-v3-quick-action-compact-icon{font-size:24px;line-height:1}.staff-v3-quick-action-compact-label{font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary);text-align:center;line-height:1.3}@media (max-width: 767px){.staff-v3-quick-actions-compact{grid-template-columns:repeat(2,1fr);gap:var(--v3-spacing-sm)}.staff-v3-quick-action-compact{min-height:80px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}}@media (min-width: 768px) and (max-width: 1023px){.staff-v3-quick-actions-compact{grid-template-columns:repeat(4,1fr)}}.staff-v3-staff-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--v3-spacing-md);margin-bottom:var(--v3-spacing-lg)}.staff-v3-staff-status-card-horizontal{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;gap:var(--v3-spacing-md);position:relative;transition:all .2s ease}.staff-v3-staff-status-card-horizontal:hover{border-color:var(--v3-primary);box-shadow:0 2px 6px #00000014}.staff-v3-staff-status-card-avatar{width:48px;height:48px;border-radius:50%;background:var(--v3-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--v3-font-size-lg);font-weight:var(--v3-font-weight-bold);flex-shrink:0}.staff-v3-staff-status-card-horizontal.status-busy .staff-v3-staff-status-card-avatar{background:var(--v3-primary, #2563eb)}.staff-v3-staff-status-card-horizontal.status-available .staff-v3-staff-status-card-avatar{background:var(--v3-success, #10b981)}.staff-v3-staff-status-card-horizontal.status-pause .staff-v3-staff-status-card-avatar{background:var(--v3-warning, #f59e0b)}.staff-v3-staff-status-card-horizontal.status-absent .staff-v3-staff-status-card-avatar{background:var(--v3-text-secondary);opacity:.5}.staff-v3-staff-status-card-content{flex:1;min-width:0}.staff-v3-staff-status-card-name{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);line-height:1.3}.staff-v3-staff-status-card-detail{font-size:var(--v3-font-size-sm);color:var(--v3-text-secondary);display:flex;align-items:center;gap:var(--v3-spacing-xs);flex-wrap:wrap}.staff-v3-staff-status-card-label{color:var(--v3-text-secondary)}.staff-v3-staff-status-card-value{font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary)}.staff-v3-staff-status-card-time{color:var(--v3-text-secondary);font-size:var(--v3-font-size-xs)}.staff-v3-staff-status-card-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--v3-text-secondary)}.staff-v3-staff-status-card-indicator.status-available{background:var(--v3-success, #10b981)}.staff-v3-staff-status-card-indicator.status-busy{background:var(--v3-primary, #2563eb)}.staff-v3-staff-status-card-indicator.status-pause{background:var(--v3-warning, #f59e0b)}.staff-v3-staff-status-card-indicator.status-absent{background:var(--v3-text-secondary);opacity:.3}@media (max-width: 767px){.staff-v3-staff-status-grid{grid-template-columns:1fr;gap:var(--v3-spacing-sm)}}@media (min-width: 768px) and (max-width: 1023px){.staff-v3-staff-status-grid{grid-template-columns:repeat(2,1fr)}}.staff-v3-today-snapshot{background:var(--v3-background);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-md);margin-bottom:var(--v3-spacing-lg)}.staff-v3-today-snapshot-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--v3-spacing-md)}.staff-v3-today-snapshot-title{font-size:var(--v3-font-size-base);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);margin:0}.staff-v3-today-snapshot-see-all{background:none;border:none;color:var(--v3-primary);font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);cursor:pointer;padding:0;transition:opacity .2s ease}.staff-v3-today-snapshot-see-all:hover{opacity:.7}.staff-v3-today-snapshot-list{display:flex;flex-direction:column;gap:var(--v3-spacing-sm)}.staff-v3-today-snapshot-item{display:flex;align-items:center;gap:var(--v3-spacing-md);padding:var(--v3-spacing-sm);border-radius:var(--v3-border-radius-sm);transition:background .2s ease}.staff-v3-today-snapshot-item:hover{background:var(--v3-surface)}.staff-v3-today-snapshot-time{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-primary);min-width:60px;flex-shrink:0}.staff-v3-today-snapshot-info{flex:1;min-width:0}.staff-v3-today-snapshot-customer{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-primary);margin-bottom:2px;line-height:1.3}.staff-v3-today-snapshot-details{font-size:var(--v3-font-size-xs);color:var(--v3-text-secondary);line-height:1.3}.staff-v3-today-snapshot-badge{padding:2px 8px;font-size:var(--v3-font-size-xs);font-weight:var(--v3-font-weight-semibold);color:var(--v3-warning, #f59e0b);background:#f59e0b1a;border-radius:var(--v3-border-radius-sm);flex-shrink:0}.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;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}@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-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-preview{margin-top:var(--v3-spacing-sm);padding:var(--v3-spacing-sm);background:var(--v3-surface);border-radius:var(--v3-border-radius-sm);font-size:var(--v3-font-size-sm)}.staff-v3-absence-sheet-preview-text{color:var(--v3-text-secondary);font-weight:var(--v3-font-weight-medium)}.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-control-room{padding-bottom:calc(var(--v3-bottom-nav-h, 60px) + env(safe-area-inset-bottom,0px) + 16px);min-height:100vh;background:var(--v3-surface)}.staff-v3-control-room-primary-actions{display:grid;grid-template-columns:1fr;gap:12px;margin:12px 0 16px}@media (min-width: 480px){.staff-v3-control-room-primary-actions{grid-template-columns:1fr 1fr}}.staff-v3-control-room-primary-action{width:100%;justify-content:center;font-size:16px}.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(--v4-space-6, 24px)}.staff-v3-control-room-desktop-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--v4-space-6);margin-bottom:var(--v4-space-6);border-bottom:1px solid var(--v4-border-subtle)}.staff-v3-control-room-desktop-title{font-size:var(--v4-font-size-2xl);font-weight:var(--v3-font-weight-bold);color:var(--v3-text-primary);margin:0;letter-spacing:var(--v4-letter-spacing-tight)}.staff-v3-section.desktop-two-col{display:grid;grid-template-columns:1fr 360px;gap:var(--v4-space-6);align-items:start}.staff-v3-col-left,.staff-v3-col-right{display:flex;flex-direction:column;gap:var(--v4-space-5);min-width: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);display:flex;flex-direction:column;gap:var(--v3-spacing-lg)}@media (min-width: 1024px){.staff-v3-section{padding:var(--v3-spacing-lg) 0;gap:var(--v3-spacing-xl)}}.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)}@media (max-width: 767px){.staff-v3-kpi-grid{grid-template-columns:1fr;gap:var(--v3-spacing-sm)}}.staff-v3-kpi-card{background:var(--v3-background);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-md);box-shadow:var(--v3-shadow-light);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:var(--v3-shadow-light);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)}@media (max-width: 767px){.staff-v3-quick-actions{display:flex;flex-direction:row;gap:var(--v3-spacing-sm);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:var(--v3-spacing-xs)}.staff-v3-quick-actions::-webkit-scrollbar{height:4px}.staff-v3-quick-actions::-webkit-scrollbar-track{background:transparent}.staff-v3-quick-actions::-webkit-scrollbar-thumb{background:var(--v3-text-secondary);border-radius:2px}}.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)}@media (max-width: 767px){.staff-v3-quick-action{min-width:100px;width:100px;flex-shrink:0}}.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) and (max-width: 1023px){.staff-v3-control-room{max-width:720px;margin:0 auto;padding-left:var(--v3-spacing-lg);padding-right:var(--v3-spacing-lg)}}.staff-v3-filter-chip{display:inline-flex;align-items:center;gap:var(--v3-spacing-xs);padding:10px 16px;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:44px;height:44px;font-size:14px;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}.luxury-calendar-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000005;z-index:999;animation:overlayFadeIn .2s ease}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.luxury-calendar-popup{position:fixed;background:var(--v3-cream, #fdfbf7);border:1px solid rgba(212,175,55,.2);border-radius:16px;box-shadow:0 12px 48px #0000001a,0 0 0 1px #d4af3714;z-index:1000;min-width:320px;padding:20px;animation:calendarFadeIn .2s cubic-bezier(.4,0,.2,1)}@keyframes calendarFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.luxury-calendar-popup-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(212,175,55,.15)}.luxury-calendar-popup-nav-button{width:36px;height:36px;border:1px solid rgba(212,175,55,.2);background:var(--v3-cream, #fdfbf7);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:300;color:var(--v3-charcoal, #2c2c2c);transition:all .2s cubic-bezier(.4,0,.2,1);line-height:1}.luxury-calendar-popup-nav-button:hover{background:var(--v3-gold-light, rgba(212, 175, 55, .1));border-color:var(--v3-gold, #d4af37);transform:translateY(-1px);box-shadow:0 2px 8px #d4af371f}.luxury-calendar-popup-nav-button:active{transform:translateY(0)}.luxury-calendar-popup-month-year{display:flex;flex-direction:column;align-items:center;gap:2px}.luxury-calendar-popup-month{font-size:16px;font-weight:600;color:var(--v3-charcoal, #2c2c2c);letter-spacing:.3px}.luxury-calendar-popup-year{font-size:13px;font-weight:400;color:var(--v3-charcoal, #2c2c2c);letter-spacing:.2px;opacity:.7}.luxury-calendar-popup-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:12px}.luxury-calendar-popup-weekday{text-align:center;font-size:11px;font-weight:600;color:var(--v3-charcoal, #2c2c2c);text-transform:uppercase;letter-spacing:.5px;padding:8px 0;opacity:.75}.luxury-calendar-popup-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:16px}.luxury-calendar-popup-day{aspect-ratio:1;min-width:36px;min-height:36px;border:1px solid transparent;background:transparent;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;color:var(--v3-charcoal, #2c2c2c);transition:all .15s cubic-bezier(.4,0,.2,1);position:relative}.luxury-calendar-popup-day:hover{background:var(--v3-gold-light, rgba(212, 175, 55, .1));border-color:#d4af3733}.luxury-calendar-popup-day-empty{cursor:default;pointer-events:none}.luxury-calendar-popup-day-empty:hover{background:transparent;border-color:transparent}.luxury-calendar-popup-day-today{background:var(--v3-gold-light, rgba(212, 175, 55, .12));border-color:#d4af374d;font-weight:600}.luxury-calendar-popup-day-today:before{content:"";position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--v3-gold, #d4af37);border-radius:50%}.luxury-calendar-popup-day-selected{background:var(--v3-charcoal, #2c2c2c);color:var(--v3-cream, #fdfbf7);border-color:var(--v3-charcoal, #2c2c2c);font-weight:600;box-shadow:0 2px 8px #2c2c2c33}.luxury-calendar-popup-day-selected:hover{background:#3d3d3d;border-color:#3d3d3d}.luxury-calendar-popup-day-selected:before{display:none}.luxury-calendar-popup-footer{padding-top:16px;border-top:1px solid rgba(212,175,55,.15);display:flex;justify-content:center}.luxury-calendar-popup-today-button{padding:8px 20px;border:1px solid rgba(212,175,55,.2);background:var(--v3-cream, #fdfbf7);border-radius:8px;font-size:13px;font-weight:500;color:var(--v3-charcoal, #2c2c2c);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);letter-spacing:.2px}.luxury-calendar-popup-today-button:hover{background:var(--v3-gold-light, rgba(212, 175, 55, .1));border-color:var(--v3-gold, #d4af37);transform:translateY(-1px);box-shadow:0 2px 8px #d4af371f}.luxury-calendar-popup-today-button:active{transform:translateY(0)}.staff-v3-date-controls{display:flex;align-items:center;gap:4px;background:transparent;border:none;border-radius:0;padding:0}.staff-v3-date-controls-button{width:40px;height:40px;border:1px solid rgba(212,175,55,.2);background:var(--v3-cream, #fdfbf7);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:300;color:var(--v3-charcoal, #2c2c2c);transition:all .2s cubic-bezier(.4,0,.2,1);line-height:1}.staff-v3-date-controls-button:hover{background:var(--v3-gold-light, rgba(212, 175, 55, .1));border-color:var(--v3-gold, #d4af37);transform:translateY(-1px);box-shadow:0 2px 8px #d4af3726}.staff-v3-date-controls-button:active{transform:translateY(0);box-shadow:0 1px 4px #d4af371a}.staff-v3-date-controls-pill{padding:8px 16px;border:1px solid rgba(212,175,55,.2);background:var(--v3-cream, #fdfbf7);border-radius:8px;font-size:13px;font-weight:500;letter-spacing:.3px;color:var(--v3-charcoal, #2c2c2c);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap}.staff-v3-date-controls-pill.active{background:var(--v3-charcoal, #2c2c2c);color:var(--v3-cream, #fdfbf7);border-color:var(--v3-charcoal, #2c2c2c)}.staff-v3-date-controls-pill:hover:not(.active){background:var(--v3-gold-light, rgba(212, 175, 55, .1));border-color:var(--v3-gold, #d4af37);color:var(--v3-charcoal, #2c2c2c)}.staff-v3-date-controls-datepicker-wrapper{position:relative}.staff-v3-date-controls-datepicker-button{padding:10px 20px;border:1px solid rgba(212,175,55,.2);background:var(--v3-cream, #fdfbf7);border-radius:8px;font-size:15px;font-weight:500;letter-spacing:.2px;color:var(--v3-charcoal, #2c2c2c);cursor:pointer;white-space:nowrap;transition:all .2s cubic-bezier(.4,0,.2,1);min-width:180px;text-align:center;position:relative}.staff-v3-date-controls-datepicker-button:hover{background:var(--v3-gold-light, rgba(212, 175, 55, .1));border-color:var(--v3-gold, #d4af37);box-shadow:0 2px 8px #d4af371f}.staff-v3-date-controls-datepicker-button.active{background:var(--v3-gold-light, rgba(212, 175, 55, .12));border-color:var(--v3-gold, #d4af37);box-shadow:0 4px 12px #d4af3726}.staff-v3-search-bar{position:relative;display:flex;align-items:center;background:var(--v3-cream, #fdfbf7);border:1px solid rgba(212,175,55,.2);border-radius:8px;padding:10px 18px;min-height:40px;transition:all .2s cubic-bezier(.4,0,.2,1)}.staff-v3-search-bar:hover{border-color:#d4af3759;box-shadow:0 2px 8px #d4af371a}.staff-v3-search-bar:focus-within{border-color:var(--v3-gold, #d4af37);box-shadow:0 4px 12px #d4af3726;background:var(--v3-cream, #fdfbf7)}.staff-v3-search-bar-icon{width:16px;height:16px;color:var(--v3-gold, #d4af37);margin-right:12px;flex-shrink:0;opacity:.8;transition:all .2s ease;stroke:currentColor}.staff-v3-search-bar:focus-within .staff-v3-search-bar-icon{opacity:1;color:var(--v3-charcoal, #2c2c2c)}.staff-v3-search-bar-input{flex:1;border:none;background:transparent;color:var(--v3-charcoal, #2c2c2c);font-size:14px;font-weight:400;outline:none;min-width:0;letter-spacing:.1px}.staff-v3-search-bar-input::placeholder{color:#2c2c2c80;font-weight:400}.staff-v3-search-bar-clear{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--v3-charcoal, #2c2c2c);line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:6px;transition:all .15s cubic-bezier(.4,0,.2,1);flex-shrink:0;opacity:.6;padding:0}.staff-v3-search-bar-clear svg{width:16px;height:16px;stroke:currentColor}.staff-v3-search-bar-clear:hover{color:var(--v3-charcoal, #2c2c2c);background:var(--v3-gold-light, rgba(212, 175, 55, .15));opacity:1}.staff-v3-search-bar-clear:active{background:#d4af3733;transform:scale(.95)}.staff-v3-dropdown{position:relative;display:inline-block}.staff-v3-dropdown-button{display:flex;align-items:center;gap:10px;padding:10px 18px;border:1px solid rgba(212,175,55,.2);border-radius:8px;background:var(--v3-cream, #fdfbf7);font-size:14px;color:var(--v3-charcoal, #2c2c2c);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;min-height:40px}.staff-v3-dropdown-button:hover{border-color:var(--v3-gold, #d4af37);background:var(--v3-gold-light, rgba(212, 175, 55, .1));box-shadow:0 2px 8px #d4af371f;transform:translateY(-1px)}.staff-v3-dropdown-button:active{transform:translateY(0)}.staff-v3-dropdown-label{color:var(--v3-charcoal, #2c2c2c);font-weight:500;font-size:13px;letter-spacing:.2px;opacity:.8}.staff-v3-dropdown-value{color:var(--v3-charcoal, #2c2c2c);font-weight:500;font-size:14px}.staff-v3-dropdown-arrow{color:var(--v3-gold, #d4af37);font-size:10px;margin-left:auto;transition:transform .2s cubic-bezier(.4,0,.2,1);line-height:1}.staff-v3-dropdown-button:hover .staff-v3-dropdown-arrow{color:var(--v3-charcoal, #2c2c2c)}.staff-v3-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:220px;background:var(--v3-cream, #fdfbf7);border:1px solid rgba(212,175,55,.2);border-radius:12px;box-shadow:0 8px 24px #0000001a,0 0 0 1px #d4af3714;z-index:100;max-height:320px;overflow-y:auto;padding:4px}.staff-v3-dropdown-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 16px;border:none;background:transparent;text-align:left;font-size:14px;font-weight:400;color:var(--v3-charcoal, #2c2c2c);cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1);border-radius:8px;margin:2px 0}.staff-v3-dropdown-item:hover{background:var(--v3-gold-light, rgba(212, 175, 55, .1))}.staff-v3-dropdown-item.active{background:var(--v3-charcoal, #2c2c2c);color:var(--v3-cream, #fdfbf7);font-weight:500}.staff-v3-dropdown-item.active:hover{background:#3d3d3d}.staff-v3-dropdown-item-count{color:var(--v3-charcoal, #2c2c2c);font-size:12px;margin-left:12px;font-weight:500;opacity:.7}.staff-v3-dropdown-item.active .staff-v3-dropdown-item-count{color:#fdfbf7d9}.staff-bookings-calendar{display:flex!important;flex-direction:column;width:100%;height:calc(100vh - 120px);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;margin-top:var(--v3-spacing-md)}.bookings-desktop-column-left .staff-bookings-calendar{height:100%!important;min-height:0;margin-top:0;border-radius:0;border:none}.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}@media (min-width: 900px){.staff-bookings-grid{--slot-h: 120px}}@media (min-width: 900px){.staff-bookings-grid{overflow:visible;position:relative}.staff-bookings-grid-scroller{position:absolute;top:0;left:0;right:0;bottom:0;overflow-x:auto;overflow-y:auto;display:flex;align-items:flex-start;height:100%;min-height:100%}}.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}@media (min-width: 900px){.staff-bookings-time-column{position:sticky;left:0;z-index:25;background:var(--v3-surface);flex-shrink:0;height:100%;display:flex;flex-direction:column}.staff-bookings-time-header{position:sticky;top:0;z-index:35;background:var(--v3-surface);flex-shrink:0}.staff-bookings-time-content{overflow:hidden;max-height:none;flex:0 0 auto;position:relative;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}@media (min-width: 900px){.staff-bookings-staff-columns{overflow:visible;min-width:0;flex-shrink:0;display:flex;align-items:stretch;height:100%}.staff-bookings-staff-column{flex-shrink:0;height:100%;display:flex;flex-direction:column}}.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}@media (min-width: 900px){.staff-bookings-staff-header{position:sticky;top:0;z-index:30;background:var(--v3-surface)}}.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)}@media (min-width: 900px){.staff-bookings-staff-content{background:repeating-linear-gradient(to bottom,transparent,transparent calc(var(--slot-h, 120px) - 1px),var(--v3-border) calc(var(--slot-h, 120px) - 1px),var(--v3-border) var(--slot-h, 120px))}}@media (min-width: 900px){.staff-bookings-staff-header{flex-shrink:0}.staff-bookings-staff-content{overflow:hidden;max-height:none;flex:0 0 auto;position:relative;min-height:0}}.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.booking-highlight{animation:booking-highlight-pulse 1s ease-in-out;z-index:20}@keyframes booking-highlight-pulse{0%{box-shadow:0 0 #007bffb3;transform:scale(1)}50%{box-shadow:0 0 0 8px #007bff4d;transform:scale(1.02)}to{box-shadow:0 0 #007bff00;transform:scale(1)}}.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.calendar-block{border-left-color:#6b7280;border-style:dashed;border-width:2px;background:#f9fafb;opacity:.9}.staff-booking-block.calendar-block:hover{border-style:dashed;background:#f3f4f6;border-left-width:4px}.staff-booking-block.calendar-block.selected{border-style:dashed;border-color:#6b7280;box-shadow:0 0 0 3px #6b728033;background:#f3f4f6}.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-discount-inline{color:#166534;font-weight:600}.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-booking-block-badge-promo{top:auto;right:auto;bottom:4px;left:4px;font-size:9px;padding:2px 5px;background:#dcfce7;color:#166534;border-radius:4px;font-weight:600}.staff-booking-block-draggable{cursor:grab}.staff-booking-block-draggable:active{cursor:grabbing}.staff-booking-block-draggable.dragging{opacity:.5;z-index:1000}.staff-booking-slot-droppable{position:relative}.staff-booking-slot-droppable.drop-over{background:#d4af371a;border:2px dashed var(--color-accent, #d4af37)}.staff-booking-slot-drop-indicator{position:absolute;top:0;left:0;right:0;height:2px;background:var(--color-accent, #d4af37);z-index:10}.staff-booking-block-drag-preview{background:var(--color-card, #ffffff);border:2px solid var(--color-accent, #d4af37);border-radius:8px;padding:12px;box-shadow:0 4px 12px #00000026;min-width:200px}.staff-booking-block-drag-preview-content{font-weight:600;color:var(--color-text-primary, #1a1a1a);line-height:1}.staff-empty-slot{position:relative;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}.staff-empty-slot.free-slot-highlight{background:#10b98126;border:2px solid rgba(16,185,129,.5);box-shadow:0 0 0 2px #10b98133;z-index:5}.staff-empty-slot.free-slot-highlight:hover{background:#10b98140;border-color:#10b981b3;box-shadow:0 0 0 3px #10b9814d}.staff-empty-slot.free-slot-highlight:before{content:"✓ Disponibile";position:absolute;top:4px;left:4px;font-size:10px;font-weight:600;color:#10b981;background:#ffffffe6;padding:2px 6px;border-radius:4px;z-index:1;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}}.bookings-mobile-header{background:var(--color-card, #ffffff);border-bottom:1px solid var(--color-border, #e5e5e5);position:sticky;top:0;z-index:100;padding:12px 16px;padding-top:max(env(safe-area-inset-top,0px),12px)}.bookings-mobile-header-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.bookings-mobile-header-nav-button{background:transparent;border:1px solid var(--color-border, #e5e5e5);border-radius:8px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--color-text-primary, #1a1a1a);cursor:pointer;transition:all .2s ease}.bookings-mobile-header-nav-button:hover{border-color:var(--color-accent, #d4af37);background:var(--color-accent-light, rgba(212, 175, 55, .1))}.bookings-mobile-header-nav-button:active{transform:scale(.95)}.bookings-mobile-header-date-strip{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:8px;margin-bottom:12px;scrollbar-width:none;-ms-overflow-style:none}.bookings-mobile-header-date-strip::-webkit-scrollbar{display:none}.bookings-mobile-header-date-item{flex-shrink:0;width:56px;padding:8px 4px;background:var(--color-card, #ffffff);border:1px solid var(--color-border, #e5e5e5);border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:4px;scroll-snap-align:start;min-height:44px}.bookings-mobile-header-date-item:hover{border-color:var(--color-accent, #d4af37)}.bookings-mobile-header-date-item.selected{background:var(--color-accent, #d4af37);border-color:var(--color-accent, #d4af37);color:#fff}.bookings-mobile-header-date-item.today:not(.selected){border-color:var(--color-accent, #d4af37);border-width:2px}.bookings-mobile-header-date-weekday{font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;opacity:.7}.bookings-mobile-header-date-item.selected .bookings-mobile-header-date-weekday{opacity:1}.bookings-mobile-header-date-day{font-size:16px;font-weight:600}.today-timeline-view{display:flex;flex-direction:column;height:100%;position:relative;background:var(--v3-bg-primary, #ffffff)}.today-timeline-header{position:sticky;top:0;z-index:10;background:var(--v3-bg-primary, #ffffff);border-bottom:1px solid var(--v3-border-color, #e5e7eb);padding:12px 16px;box-shadow:0 2px 4px #0000000d}.today-timeline-header-date{font-size:18px;font-weight:600;color:var(--v3-text-primary, #111827)}.today-timeline-slots{flex:1;overflow-y:auto;padding:8px 0;padding-bottom:calc(var(--v3-bottom-nav-h, 60px) + env(safe-area-inset-bottom,0px) + 96px)}.today-timeline-slot{margin-bottom:4px}.today-timeline-slot-time{font-size:14px;font-weight:600;color:var(--v3-text-secondary, #6b7280);padding:4px 16px;margin-bottom:4px}.today-timeline-empty-slot{display:flex;align-items:center;padding:8px 16px;gap:12px}.today-timeline-empty-slot-time{font-size:14px;color:var(--v3-text-tertiary, #9ca3af);min-width:50px}.today-timeline-empty-slot-line{flex:1;height:1px;background:var(--v3-border-color, #e5e7eb);opacity:.5}.today-timeline-empty-slot.free-slot-highlight{background:#10b9811a;border:2px solid rgba(16,185,129,.4);border-radius:8px;margin:4px 16px;padding:12px;position:relative}.today-timeline-empty-slot.free-slot-highlight:hover{background:#10b98126;border-color:#10b98199}.today-timeline-empty-slot.free-slot-highlight .today-timeline-empty-slot-time{color:#10b981;font-weight:600;font-size:14px}.today-timeline-booking{position:relative;margin:0 16px 8px;background:var(--v3-bg-secondary, #f9fafb);border:1px solid var(--v3-border-color, #e5e7eb);border-radius:12px;padding:10px 12px;cursor:pointer;touch-action:pan-y;-webkit-user-select:none;user-select:none;min-height:56px}.today-timeline-booking.swiping-left{border-left:3px solid #dc3545}.today-timeline-booking.swiping-right{border-right:3px solid #28a745}.today-timeline-booking-swipe-action{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;width:100px;pointer-events:none}.today-timeline-booking-swipe-action.swipe-left{right:-100px;background:#dc3545;color:#fff}.today-timeline-booking-swipe-action.swipe-right{left:-100px;background:#28a745;color:#fff}.today-timeline-booking-content{position:relative;z-index:1}.today-timeline-booking-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.today-timeline-booking-leading{display:flex;align-items:center;gap:8px;min-width:0}.today-timeline-booking-status-dot{width:10px;height:10px;border-radius:9999px;flex-shrink:0}.today-timeline-booking-status-dot.status-booked{background:#f59e0b}.today-timeline-booking-status-dot.status-confirmed{background:#10b981}.today-timeline-booking-status-dot.status-done{background:#64748b}.today-timeline-booking-status-dot.status-canceled{background:#ef4444}.today-timeline-booking-time{font-size:14px;font-weight:600;color:var(--v3-text-primary, #111827);margin-bottom:0;white-space:nowrap}.today-timeline-booking-customer{font-size:16px;font-weight:600;color:var(--v3-text-primary, #111827);margin-bottom:0;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-timeline-booking-main{display:flex;flex-direction:column;gap:4px;min-width:0}.today-timeline-booking-secondary{display:flex;align-items:center;gap:6px;min-width:0;font-size:14px;color:var(--v3-text-secondary, #6b7280)}.today-timeline-booking-service{font-size:14px;color:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.today-timeline-booking-staff{color:inherit;white-space:nowrap}.today-timeline-booking-status-chip{padding:4px 8px;border-radius:9999px;font-weight:700;font-size:14px;line-height:1;flex-shrink:0}.today-timeline-booking-status-chip.status-booked{background:#fff3cd;color:#856404}.today-timeline-booking-status-chip.status-confirmed{background:#d4edda;color:#155724}.today-timeline-booking-status-chip.status-done{background:#e2e3e5;color:#383d41}.today-timeline-booking-status-chip.status-canceled{background:#fee2e2;color:#991b1b}.today-timeline-booking-badge{position:absolute;top:8px;right:8px;font-size:16px}.today-timeline-booking-badge-promo{top:auto;right:auto;bottom:8px;left:12px;font-size:10px;padding:2px 6px;background:#dcfce7;color:#166534;border-radius:4px;font-weight:600}.today-timeline-create-button{position:fixed;bottom:calc(var(--v3-bottom-nav-h, 60px) + env(safe-area-inset-bottom,0px) + 16px);right:16px;width:56px;height:56px;border-radius:50%;background:var(--v3-primary, #007bff);color:#fff;border:none;box-shadow:0 4px 12px #007bff66;cursor:pointer;z-index:100;display:flex;align-items:center;justify-content:center;transition:transform .2s,box-shadow .2s}.today-timeline-create-button:active{transform:scale(.95)}.today-timeline-create-button-icon{font-size:28px;font-weight:300;line-height:1}.bookings-activity-tab{display:flex;flex-direction:column;height:100%;background:var(--v3-bg-primary, #ffffff)}.bookings-activity-tab-empty{display:flex;align-items:center;justify-content:center;height:100%;padding:2rem}.bookings-activity-tab-list{flex:1;overflow-y:auto;padding:8px 0}.bookings-activity-tab-day-group{margin-bottom:24px}.bookings-activity-tab-day-header{font-size:14px;font-weight:600;color:var(--v3-text-secondary, #6b7280);padding:8px 16px;background:var(--v3-bg-secondary, #f9fafb);border-bottom:1px solid var(--v3-border-color, #e5e7eb)}.bookings-activity-tab-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-bottom:1px solid var(--v3-border-color, #e5e7eb);cursor:pointer;transition:background .2s}.bookings-activity-tab-item:hover{background:var(--v3-bg-secondary, #f9fafb)}.bookings-activity-tab-item-icon{font-size:20px;flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--v3-bg-secondary, #f9fafb)}.bookings-activity-tab-item.activity-canceled .bookings-activity-tab-item-icon{background:#fee2e2}.bookings-activity-tab-item.activity-confirmed .bookings-activity-tab-item-icon{background:#d1fae5}.bookings-activity-tab-item.activity-completed .bookings-activity-tab-item-icon{background:#f3f4f6}.bookings-activity-tab-item.activity-time_change .bookings-activity-tab-item-icon{background:#fef3c7}.bookings-activity-tab-item-content{flex:1;min-width:0}.bookings-activity-tab-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.bookings-activity-tab-item-label{font-size:14px;font-weight:600;color:var(--v3-text-primary, #111827)}.bookings-activity-tab-item-time{font-size:12px;color:var(--v3-text-secondary, #6b7280)}.bookings-activity-tab-item-description{font-size:14px;color:var(--v3-text-secondary, #6b7280);margin-bottom:6px}.bookings-activity-tab-item-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--v3-text-tertiary, #9ca3af);flex-wrap:wrap}.activity-status{padding:2px 6px;border-radius:4px;font-weight:600;font-size:11px}.activity-status.status-booked{background:#fff3cd;color:#856404}.activity-status.status-confirmed{background:#d4edda;color:#155724}.activity-status.status-done{background:#e2e3e5;color:#383d41}.booking-list-card{background:var(--color-card, #ffffff);border:1px solid var(--color-border, #e5e5e5);border-radius:12px;padding:16px;cursor:pointer;transition:all .2s ease;display:flex;gap:16px;min-height:80px}.booking-list-card:hover{border-color:var(--color-accent, #d4af37);box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.booking-list-card:active{transform:translateY(0)}.booking-list-card.selected{border-color:var(--color-accent, #d4af37);border-width:2px;background:var(--color-accent-light, rgba(212, 175, 55, .05))}.booking-list-card-time{display:flex;flex-direction:column;gap:4px;flex-shrink:0;min-width:80px}.booking-list-card-time-start{font-size:16px;font-weight:600;color:var(--color-text-primary, #1a1a1a)}.booking-list-card-time-end{font-size:14px;color:var(--color-text-secondary, #666)}.booking-list-card-duration{font-size:11px;color:var(--color-text-secondary, #666);margin-top:2px}.booking-list-card-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.booking-list-card-customer{margin:0;font-size:16px;font-weight:600;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-list-card-services{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.booking-list-card-service-chip{font-size:12px;padding:4px 10px;background:var(--color-accent-light, rgba(212, 175, 55, .1));color:var(--color-accent, #d4af37);border-radius:12px;font-weight:500}.booking-list-card-service-more{font-size:11px;color:var(--color-text-secondary, #666);font-weight:500}.booking-list-card-footer{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.booking-list-card-notes{font-size:14px;opacity:.6}.booking-list-card-discount-badge{font-size:11px;padding:3px 8px;background:#dcfce7;color:#166534;border-radius:12px;font-weight:600}@media (max-width: 768px){.booking-list-card{padding:14px;min-height:70px}.booking-list-card-time{min-width:70px}}.block-list-card{background:var(--color-card, #ffffff);border:2px dashed var(--color-border, #e5e5e5);border-radius:12px;padding:16px;cursor:pointer;transition:all .2s ease;display:flex;gap:16px;min-height:80px;opacity:.8}.block-list-card:hover{border-color:var(--color-accent, #d4af37);opacity:1;transform:translateY(-2px)}.block-list-card:active{transform:translateY(0)}.block-list-card-time{display:flex;flex-direction:column;gap:4px;flex-shrink:0;min-width:80px}.block-list-card-time-start{font-size:16px;font-weight:600;color:var(--color-text-primary, #1a1a1a)}.block-list-card-time-end{font-size:14px;color:var(--color-text-secondary, #666)}.block-list-card-duration{font-size:11px;color:var(--color-text-secondary, #666);margin-top:2px}.block-list-card-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.block-list-card-label{display:inline-flex;align-items:center}.block-list-card-label-text{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary, #666);padding:2px 8px;background:var(--color-border, #e5e5e5);border-radius:4px}.block-list-card-title{margin:0;font-size:16px;font-weight:600;color:var(--color-text-primary, #1a1a1a)}.block-list-card-note{margin:0;font-size:13px;color:var(--color-text-secondary, #666);font-style:italic}.block-list-card-footer{display:flex;align-items:center;gap:8px}@media (max-width: 768px){.block-list-card{padding:14px;min-height:70px}.block-list-card-time{min-width:70px}}.agenda-day-list{display:flex;flex-direction:column;gap:24px;padding:16px}.agenda-day-list-slot{display:flex;flex-direction:column;gap:12px}.agenda-day-list-slot-header{display:flex;align-items:center;gap:8px;padding:0 4px}.agenda-day-list-slot-time{font-size:14px;font-weight:600;color:var(--color-text-primary, #1a1a1a);min-width:50px}.agenda-day-list-slot-count{font-size:12px;color:var(--color-text-secondary, #666);background:var(--color-border, #e5e5e5);padding:2px 8px;border-radius:12px}.agenda-day-list-slot-events{display:flex;flex-direction:column;gap:8px;padding-left:54px}.agenda-day-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.agenda-day-list-empty-icon{font-size:48px;margin-bottom:16px}.agenda-day-list-empty-title{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--color-text-primary, #1a1a1a)}.agenda-day-list-empty-text{margin:0;font-size:14px;color:var(--color-text-secondary, #666)}@media (max-width: 768px){.agenda-day-list{padding:12px;gap:20px;padding-bottom:calc(var(--v3-bottom-nav-h, 72px) + env(safe-area-inset-bottom,0px) + 80px)}.agenda-day-list-slot-events{padding-left:50px}}.mobile-bottom-actions{position:fixed;bottom:calc(var(--safe-bottom, 0px) + 80px);right:16px;z-index:1000}.mobile-bottom-actions-fab{width:56px;height:56px;border-radius:50%;background:var(--color-accent, #d4af37);color:#fff;border:none;box-shadow:0 4px 12px #00000026;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;min-height:44px;min-width:44px}.mobile-bottom-actions-fab:hover{transform:scale(1.1);box-shadow:0 6px 16px #0003}.mobile-bottom-actions-fab:active{transform:scale(.95)}.mobile-bottom-actions-fab-icon{font-size:28px;font-weight:300;line-height:1}@media (min-width: 1024px){.mobile-bottom-actions{display:none}}.mobile-bookings-view{display:flex;flex-direction:column;min-height:100vh;background:var(--color-bg-primary, #f9fafb)}.mobile-bookings-filters{display:flex;flex-direction:column;gap:12px;padding:12px 16px;background:var(--color-card, #ffffff);border-bottom:1px solid var(--color-border, #e5e5e5);position:sticky;top:0;z-index:90}.mobile-bookings-filter-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mobile-bookings-filter-label{font-size:12px;font-weight:500;color:var(--color-text-secondary, #666);text-transform:uppercase;letter-spacing:.5px;min-width:50px}.mobile-bookings-filter-pills{display:flex;gap:6px;flex-wrap:wrap;flex:1}.mobile-bookings-filter-pill-button{background:transparent;border:none;padding:0;cursor:pointer;transition:all .2s ease}.mobile-bookings-filter-pill-button:hover{transform:translateY(-1px)}.mobile-bookings-filter-pill-button:active{transform:scale(.95)}.mobile-bookings-loading{display:flex;flex-direction:column;gap:12px;padding:16px}.mobile-bookings-loading-skeleton{height:100px;background:var(--color-card, #ffffff);border:1px solid var(--color-border, #e5e5e5);border-radius:12px;animation:pulse 1.5s ease-in-out infinite}@media (min-width: 1024px){.mobile-bookings-view{display:none}}.convert-block-sheet-content{padding:16px}.convert-block-sheet-error{background:#fee;color:#c33;padding:12px;border-radius:8px;margin-bottom:16px;font-size:14px}.convert-block-sheet-section{margin-bottom:24px}.convert-block-sheet-label{display:block;font-weight:600;margin-bottom:8px;color:var(--v3-text-primary);font-size:14px}.convert-block-sheet-input,.convert-block-sheet-textarea{width:100%;padding:10px 12px;border:1px solid var(--v3-border);border-radius:8px;font-size:14px;font-family:inherit;background:var(--v3-background);color:var(--v3-text-primary);box-sizing:border-box}.convert-block-sheet-input:focus,.convert-block-sheet-textarea:focus{outline:none;border-color:var(--v3-primary);box-shadow:0 0 0 2px var(--v3-primary-light)}.convert-block-sheet-input:disabled,.convert-block-sheet-textarea:disabled{opacity:.6;cursor:not-allowed}.convert-block-sheet-textarea{resize:vertical;min-height:80px}.convert-block-sheet-customer-list{margin-top:8px;border:1px solid var(--v3-border);border-radius:8px;max-height:200px;overflow-y:auto}.convert-block-sheet-customer-item{width:100%;padding:12px;border:none;border-bottom:1px solid var(--v3-border);background:var(--v3-background);text-align:left;cursor:pointer;transition:background .2s}.convert-block-sheet-customer-item:last-child{border-bottom:none}.convert-block-sheet-customer-item:hover{background:var(--v3-surface)}.convert-block-sheet-customer-name{font-weight:600;color:var(--v3-text-primary);margin-bottom:4px}.convert-block-sheet-customer-phone{font-size:12px;color:var(--v3-text-secondary)}.convert-block-sheet-services{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.convert-block-sheet-service{position:relative;padding:12px;border:2px solid var(--v3-border);border-radius:8px;background:var(--v3-background);cursor:pointer;transition:all .2s;text-align:left}.convert-block-sheet-service:hover{border-color:var(--v3-primary);background:var(--v3-surface)}.convert-block-sheet-service.selected{border-color:var(--v3-primary);background:var(--v3-primary-light)}.convert-block-sheet-service-name{font-weight:600;color:var(--v3-text-primary);margin-bottom:4px}.convert-block-sheet-service-duration{font-size:12px;color:var(--v3-text-secondary)}.convert-block-sheet-service-check{position:absolute;top:8px;right:8px;width:20px;height:20px;background:var(--v3-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.convert-block-sheet-loading{padding:20px;text-align:center;color:var(--v3-text-secondary)}.convert-block-sheet-footer{display:flex;gap:12px;padding:16px;border-top:1px solid var(--v3-border);background:var(--v3-background)}.convert-block-sheet-button{flex:1;padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.convert-block-sheet-button:disabled{opacity:.6;cursor:not-allowed}.convert-block-sheet-button-primary{background:var(--v3-primary);color:#fff}.convert-block-sheet-button-primary:hover:not(:disabled){background:var(--v3-primary-dark)}.convert-block-sheet-button-secondary{background:var(--v3-surface);color:var(--v3-text-primary);border:1px solid var(--v3-border)}.convert-block-sheet-button-secondary:hover:not(:disabled){background:var(--v3-border)}@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:#2563eb0f;border-left:3px solid var(--v3-primary)}.staff-v3-bookings-table-row.selected td{color:var(--v3-text-primary)}.staff-v3-bookings-table-status{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--v4-border-radius-full);font-size:var(--v4-font-size-xs);font-weight:var(--v3-font-weight-semibold)}.staff-v3-bookings-table-status-booked{background:var(--v4-status-warning-bg);color:var(--v4-status-warning-text);border:1px solid var(--v4-status-warning-border)}.staff-v3-bookings-table-status-confirmed{background:var(--v4-status-success-bg);color:var(--v4-status-success-text);border:1px solid var(--v4-status-success-border)}.staff-v3-bookings-table-status-done{background:var(--v4-status-neutral-bg);color:var(--v4-status-neutral-text);border:1px solid var(--v4-status-neutral-border)}.staff-v3-bookings-table-status-canceled{background:var(--v4-status-error-bg);color:var(--v4-status-error-text);border:1px solid var(--v4-status-error-border)}.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;flex:1;min-height:0;padding:var(--v3-spacing-md)}.staff-v3-bookings-view-container:has(.staff-bookings-calendar){padding-top:var(--v3-spacing-sm)}.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 (min-width: 1024px){.staff-v3-bookings-page{max-width:1600px;margin:0 auto;padding:0 var(--v4-space-6, 24px);display:flex;flex-direction:column;flex:1;min-height:0}.staff-v3-bookings-content{flex:1;overflow:hidden}}@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);padding-bottom:calc(var(--v3-bottom-nav-h, 60px) + env(safe-area-inset-bottom,0px) + 16px)}.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:relative}.staff-v3-filters-row{display:flex;align-items:center;gap:var(--v3-spacing-sm);margin-bottom:var(--v3-spacing-sm)}.staff-v3-filters-row:last-child{margin-bottom:0}.staff-v3-filters-label{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-semibold);color:var(--v3-text-secondary);min-width:50px;flex-shrink:0}.staff-v3-filters-pills{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1}}.bookings-desktop-header-luxury{background:var(--color-card, #ffffff);border-bottom:1px solid var(--color-border, #e5e5e5);padding:24px 32px;display:flex;flex-direction:column;gap:20px}.bookings-desktop-header-luxury-content{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.bookings-desktop-header-luxury-title-section{display:flex;flex-direction:column;gap:8px}.bookings-desktop-header-luxury-title{margin:0;font-size:28px;font-weight:600;color:var(--color-text-primary, #1a1a1a);letter-spacing:-.5px}.bookings-desktop-header-luxury-date{margin:0;font-size:16px;font-weight:400;color:var(--color-text-secondary, #666);text-transform:capitalize}.bookings-desktop-header-luxury-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.bookings-desktop-header-luxury-new-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--color-accent, #d4af37);color:var(--color-text-on-primary, #ffffff);border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-height:44px}.bookings-desktop-header-luxury-new-btn:hover{background:var(--color-accent-dark, #b8941f);transform:translateY(-1px);box-shadow:0 4px 12px #d4af374d}.bookings-desktop-header-luxury-new-btn:active{transform:translateY(0)}.bookings-desktop-header-luxury-new-btn-icon{font-size:20px;font-weight:300;line-height:1}.bookings-desktop-header-luxury-new-btn-text{font-weight:500}.bookings-desktop-header-luxury-block-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:transparent;color:var(--color-text-primary, #1a1a1a);border:1px solid var(--color-border, #e5e5e5);border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-height:44px}.bookings-desktop-header-luxury-block-btn:hover{border-color:var(--color-accent, #d4af37);background:var(--color-accent-light, rgba(212, 175, 55, .1));transform:translateY(-1px)}.bookings-desktop-header-luxury-block-btn:active{transform:translateY(0)}.bookings-desktop-header-luxury-block-btn-icon{font-size:16px}.bookings-desktop-header-luxury-block-btn-text{font-weight:500}.bookings-desktop-header-luxury-date-nav{display:flex;align-items:center;gap:12px}.bookings-desktop-header-luxury-nav-button{background:transparent;border:1px solid var(--color-border, #e5e5e5);border-radius:6px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--color-text-primary, #1a1a1a);cursor:pointer;transition:all .2s ease}.bookings-desktop-header-luxury-nav-button:hover{border-color:var(--color-accent, #d4af37);background:var(--color-accent-light, rgba(212, 175, 55, .1))}.bookings-desktop-header-luxury-today{background:transparent;border:1px solid var(--color-border, #e5e5e5);border-radius:6px;padding:6px 12px;font-size:13px;font-weight:500;color:var(--color-text-primary, #1a1a1a);cursor:pointer;transition:all .2s ease}.bookings-desktop-header-luxury-today:hover{border-color:var(--color-accent, #d4af37);background:var(--color-accent-light, rgba(212, 175, 55, .1))}.bookings-desktop-header-luxury-date-controls-inline{display:flex;align-items:center}.bookings-desktop-header-luxury-search{max-width:400px}.bookings-desktop-header-luxury-date-controls{display:flex;align-items:center}.bookings-desktop-filters-luxury{padding:20px 32px;background:var(--color-card, #ffffff);border-bottom:1px solid var(--color-border, #e5e5e5);display:flex;flex-direction:column;gap:16px}.bookings-desktop-filters-luxury-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.bookings-desktop-filters-luxury-label{font-size:12px;font-weight:500;color:var(--color-text-secondary, #666);text-transform:uppercase;letter-spacing:.5px;min-width:60px}@media (max-width: 1023px){.bookings-desktop-header-luxury,.bookings-desktop-filters-luxury{display:none}}.bookings-desktop-header-operativo{background:var(--color-card, #ffffff);border-bottom:1px solid var(--color-border, #e5e5e5);padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.bookings-desktop-header-operativo-left{display:flex;align-items:center;gap:20px}.bookings-desktop-header-operativo-date-section{display:flex;align-items:center;gap:16px}.bookings-desktop-header-operativo-date{margin:0;font-size:32px;font-weight:600;color:var(--color-text-primary, #1a1a1a);letter-spacing:-.5px}.bookings-desktop-header-operativo-today{background:transparent;border:1px solid var(--color-border, #e5e5e5);border-radius:6px;padding:6px 12px;font-size:13px;font-weight:500;color:var(--color-text-primary, #1a1a1a);cursor:pointer;transition:all .2s ease}.bookings-desktop-header-operativo-today:hover{border-color:var(--color-accent, #d4af37);background:var(--color-accent-light, rgba(212, 175, 55, .1))}.bookings-desktop-header-operativo-status{font-size:14px;color:var(--color-text-secondary, #666);font-weight:400}.bookings-desktop-header-operativo-right{display:flex;align-items:center}.bookings-desktop-header-operativo-cta{display:flex;align-items:center;gap:8px;padding:12px 24px;background:var(--color-accent, #d4af37);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;min-height:44px}.bookings-desktop-header-operativo-cta:hover{background:#b8941f;transform:translateY(-1px);box-shadow:0 4px 12px #d4af374d}.bookings-desktop-header-operativo-cta:active{transform:translateY(0)}.bookings-desktop-header-operativo-cta span:first-child{font-size:20px;font-weight:300;line-height:1}.bookings-desktop-control-bar{background:var(--v3-cream, #fdfbf7);border-bottom:1px solid rgba(212,175,55,.15);padding:20px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.bookings-desktop-control-bar-left{display:flex;align-items:center;gap:12px;flex:1}.bookings-desktop-control-bar-right{display:flex;align-items:center;min-width:320px;max-width:400px}.bookings-desktop-active-filters{background:var(--v3-cream, #fdfbf7);border-bottom:1px solid rgba(212,175,55,.12);padding:12px 32px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bookings-desktop-active-filter-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--v3-gold-light, rgba(212, 175, 55, .1));border:1px solid var(--v3-gold, #d4af37);border-radius:16px;font-size:13px;font-weight:500;color:var(--v3-charcoal, #2c2c2c)}.bookings-desktop-active-filter-remove{background:transparent;border:none;color:var(--v3-charcoal, #2c2c2c);cursor:pointer;font-size:16px;line-height:1;padding:0;margin-left:4px;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease}.bookings-desktop-active-filter-remove:hover{background:#d4af3726}.bookings-desktop-active-filters-reset{margin-left:auto;padding:6px 12px;background:transparent;border:1px solid rgba(212,175,55,.3);border-radius:6px;font-size:13px;font-weight:500;color:var(--v3-charcoal, #2c2c2c);cursor:pointer;transition:all .2s ease}.bookings-desktop-active-filters-reset:hover{border-color:var(--v3-gold, #d4af37);background:var(--v3-gold-light, rgba(212, 175, 55, .08));color:var(--v3-charcoal, #2c2c2c)}.bookings-desktop-layout-two-columns{display:flex;flex:1;height:100%;min-height:0;gap:var(--v3-spacing-md, 16px);overflow:hidden}.bookings-desktop-column-left{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0;height:100%}.bookings-desktop-column-right{width:400px;flex-shrink:0;border-left:1px solid var(--color-border, #e5e5e5);background:var(--color-card, #ffffff);display:flex;flex-direction:column;overflow:hidden;min-height:0;height:100%}.bookings-desktop-side-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}@media (min-width: 1024px){.staff-v3-bookings-page{min-height:100vh;display:flex;flex-direction:column;height:100vh}.staff-v3-bookings-content{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.bookings-desktop-column-left .staff-bookings-calendar{flex:1;min-height:0;height:100%!important;margin-top:0}}.bookings-desktop-side-panel-tabs{display:flex;border-bottom:1px solid var(--color-border, #e5e5e5);background:var(--color-surface, #f9f9f9)}.bookings-desktop-side-panel-tab{flex:1;padding:12px 16px;background:transparent;border:none;border-bottom:2px solid transparent;font-size:14px;font-weight:500;color:var(--color-text-secondary, #666);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;position:relative}.bookings-desktop-side-panel-tab:hover{color:var(--color-text-primary, #1a1a1a);background:#00000005}.bookings-desktop-side-panel-tab.active{color:var(--color-accent, #d4af37);border-bottom-color:var(--color-accent, #d4af37);background:var(--color-card, #ffffff)}.bookings-desktop-side-panel-tab-badge{background:var(--color-accent, #d4af37);color:#fff;border-radius:10px;padding:2px 6px;font-size:11px;font-weight:600;min-width:18px;text-align:center}.bookings-desktop-side-panel-content{flex:1;overflow-y:auto;padding:0}.bookings-desktop-side-panel-empty{padding:40px 20px;text-align:center;color:var(--color-text-secondary, #666);font-size:14px}@media (max-width: 1023px){.bookings-desktop-header-operativo,.bookings-desktop-control-bar,.bookings-desktop-active-filters,.bookings-desktop-layout-two-columns{display:none}}.staff-v3-customer-card-v4{background:var(--v3-background, #ffffff);border:1px solid var(--v3-border, #e5e5e5);border-radius:12px;padding:16px;margin-bottom:12px;cursor:pointer;transition:all .2s ease}.staff-v3-customer-card-v4:hover{background:var(--v3-surface, #f9f9f9);border-color:var(--v3-primary-light, rgba(0, 123, 255, .3));box-shadow:0 2px 8px #0000000d}.staff-v3-customer-card-v4:active{transform:scale(.98)}.staff-v3-customer-card-v4-content{display:flex;flex-direction:column;gap:12px}.staff-v3-customer-card-v4-main{display:flex;flex-direction:column;gap:8px}.staff-v3-customer-card-v4-name-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.staff-v3-customer-card-v4-name{margin:0;font-size:18px;font-weight:600;color:var(--v3-text-primary, #1a1a1a);line-height:1.3;flex:1;min-width:0}.staff-v3-customer-card-v4-badges{display:flex;gap:6px;flex-shrink:0;flex-wrap:wrap}.staff-v3-customer-card-v4-phone{margin:0;font-size:14px;color:var(--v3-text-secondary, #666);font-weight:400}.customer-list-card{padding:16px 20px;border-bottom:1px solid var(--v3-border, #e5e5e5);transition:background-color .2s ease;cursor:pointer}.customer-list-card:hover{background:var(--v3-surface, #f8fafc)}.customer-list-card-selected{background:var(--v3-primary-light, rgba(37, 99, 235, .08));border-left:3px solid var(--v3-primary, #2563eb)}.customer-list-card-content{display:flex;align-items:center;justify-content:space-between;gap:16px}.customer-list-card-main{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.customer-list-card-name-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.customer-list-card-name{margin:0;font-size:16px;font-weight:600;color:var(--v3-text-primary, #1a1a1a);line-height:1.3;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-list-card-badges{display:flex;gap:6px;flex-shrink:0}.customer-list-card-phone{margin:0;font-size:14px;color:var(--v3-text-secondary, #666)}.customer-list-card-meta{flex-shrink:0;text-align:right;display:flex;flex-direction:column;gap:8px;align-items:flex-end}.customer-list-card-actions{display:flex;gap:8px}.customer-list-card-last-visit-block{display:flex;flex-direction:column;gap:2px;align-items:flex-end}.customer-list-card-last-visit-label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:var(--v3-text-secondary, #666)}.customer-list-card-last-visit{font-size:13px;color:var(--v3-text-primary, #1a1a1a);white-space:nowrap;display:flex;align-items:center}.customer-list-card-last-visit-empty{font-size:13px;color:var(--v3-text-tertiary, #999);display:flex;align-items:center;gap:5px}.customer-list-card-recency-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0;vertical-align:middle;margin-right:3px}.customer-list-card-recency-dot--green{background:#16a34a}.customer-list-card-recency-dot--orange{background:#ea580c}.customer-list-card-recency-dot--red{background:#dc2626}.customer-list-card-recency-dot--gray{background:#cbd5e1}@media (max-width: 1023px){.customer-list-card{padding:14px 16px}.customer-list-card-name{font-size:15px}.customer-list-card-phone{font-size:13px}.customer-list-card-last-visit{font-size:12px}.customer-list-card-last-visit-block{align-items:flex-start}.customer-list-card-content{flex-direction:column;align-items:flex-start;gap:12px}.customer-list-card-meta{text-align:left;width:100%}}.customer-identity-editor{display:flex;flex-direction:column;gap:20px}.customer-identity-editor-error{padding:12px 16px;background:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:14px}.customer-identity-editor-field{display:flex;flex-direction:column;gap:8px}.customer-identity-editor-label{font-size:14px;font-weight:500;color:var(--v3-text-primary, #333)}.customer-identity-editor-input{width:100%;padding:12px 16px;border:1px solid var(--v3-border, #e0e0e0);border-radius:6px;font-size:15px;transition:border-color .2s}.customer-identity-editor-input:focus{outline:none;border-color:var(--v3-primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.customer-identity-editor-input.error{border-color:#dc3545}.customer-identity-editor-input.error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.customer-identity-editor-input:disabled{background:#f5f5f5;cursor:not-allowed}.customer-identity-editor-field-error{font-size:12px;color:#dc3545;margin-top:-4px}.customer-identity-editor-hint{padding:12px 16px;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;font-size:13px;color:#856404;line-height:1.5}.customer-identity-editor-hint p{margin:0 0 4px}.customer-identity-editor-hint p:last-child{margin-bottom:0}.customer-desktop-card-v4{display:flex;flex-direction:column;flex:1;overflow-y:auto;padding:20px;gap:20px;background:var(--v3-background, #ffffff)}.customer-desktop-card-v4 .v4-section-card-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--v3-text-secondary, #555)}.customer-hero-section{padding:0}.customer-hero-section.v4-section-card{padding:0;margin-bottom:0}.customer-hero-section .v4-section-card-body{padding:0}.customer-hero-content{display:flex;flex-direction:column;gap:12px;padding:16px 20px 20px;background:var(--v3-surface, #f8fafc);border-radius:var(--v4-border-radius-md, 10px);border:1px solid var(--v3-border, #e2e8f0)}.customer-hero-name-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.customer-hero-name{margin:0;font-size:26px;font-weight:600;color:var(--v3-text-primary, #1a1a1a);line-height:1.25;letter-spacing:-.02em}.customer-hero-badges{display:flex;gap:8px;flex-wrap:wrap}.customer-kpi-section{padding:16px}.customer-kpi-row{display:flex;flex-wrap:wrap;gap:12px}.customer-kpi-chip{flex:1;min-width:120px;padding:12px 16px;background:var(--v3-surface, #f8fafc);border:1px solid var(--v3-border, #e2e8f0);border-radius:8px;display:flex;flex-direction:column;gap:4px}.customer-kpi-label{font-size:12px;color:var(--v3-text-secondary, #666);font-weight:500}.customer-kpi-value{font-size:18px;font-weight:600;color:var(--v3-text-primary, #1a1a1a)}.customer-identity-section{padding:0}.customer-identity-content{display:flex;flex-direction:column;gap:16px}.customer-identity-field{display:flex;flex-direction:column;gap:6px}.customer-identity-label{font-size:12px;font-weight:500;color:var(--v3-text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.customer-identity-value{font-size:16px;font-weight:500;color:var(--v3-text-primary, #1a1a1a)}.customer-identity-value.placeholder{color:var(--v3-text-tertiary, #999);font-style:italic}.customer-identity-hint{padding:12px 16px;background:var(--v4-status-warning-bg, rgba(234, 179, 8, .08));border:1px solid var(--v4-status-warning-border, rgba(234, 179, 8, .3));border-radius:6px;font-size:13px;color:var(--v4-status-warning-text, #854d0e);line-height:1.5;margin-top:8px}.customer-loyalty-section{padding:0}.customer-loyalty-content{display:flex;flex-direction:column;gap:12px}.customer-loyalty-display{display:flex;flex-direction:column;gap:8px}.customer-loyalty-value{font-size:16px;font-weight:500;color:var(--v3-text-primary, #1a1a1a)}.customer-loyalty-edit{display:flex;flex-direction:column;gap:12px}.customer-loyalty-input{width:100%;max-width:120px;padding:8px 12px;font-size:16px;border:1px solid var(--v3-border, #e0e0e0);border-radius:6px}.customer-loyalty-actions{display:flex;gap:8px}.customer-hero-contact{display:flex;flex-direction:column;gap:8px}.customer-hero-phone{font-size:16px;color:var(--v3-text-primary, #1a1a1a);font-weight:500}.customer-hero-email{font-size:14px;color:var(--v3-text-secondary, #666)}.customer-hero-actions{display:flex;gap:12px;margin-top:8px}.customer-snapshot-section{padding:0}.customer-snapshot-loading{padding:20px;text-align:center;color:var(--v3-text-secondary, #666);font-size:14px}.customer-snapshot-cards{display:flex;flex-direction:column;gap:14px}.customer-snapshot-card{padding:18px;background:var(--v3-surface, #fafafa);border-radius:10px;border:1px solid var(--v3-border, #e8e8e8);box-shadow:0 1px 2px #00000008;display:flex;flex-direction:column;gap:12px;transition:border-color .2s,box-shadow .2s}.customer-snapshot-card:hover{border-color:var(--v4-border-default, #e0e0e0);box-shadow:0 2px 6px #0000000d}.customer-snapshot-card-next{border-left:4px solid var(--v3-primary, #2563eb)}.customer-snapshot-card-last{border-left:4px solid var(--v4-status-success-text, #15803d)}.customer-snapshot-card-staff{border-left:4px solid var(--v3-text-secondary, #64748b)}.customer-snapshot-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.customer-snapshot-card-label{font-size:14px;font-weight:600;color:var(--v3-text-primary, #1a1a1a)}.customer-snapshot-card-content{display:flex;flex-direction:column;gap:8px}.customer-snapshot-card-date{font-size:16px;font-weight:500;color:var(--v3-text-primary, #1a1a1a)}.customer-snapshot-card-services{font-size:14px;color:var(--v3-text-secondary, #666);display:flex;flex-wrap:wrap;gap:4px}.customer-snapshot-card-staff-text{font-size:13px;color:var(--v3-text-secondary, #666)}.customer-snapshot-card-price{font-size:16px;font-weight:600;color:var(--v4-status-success-text, #15803d)}.customer-snapshot-staff-list{display:flex;flex-wrap:wrap;gap:8px}.customer-snapshot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.customer-snapshot-item{display:flex;flex-direction:column;gap:8px}.customer-snapshot-label{font-size:12px;font-weight:500;color:var(--v3-text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.customer-snapshot-value{font-size:20px;font-weight:600;color:var(--v3-text-primary, #1a1a1a)}.customer-preferences-section{padding:0}.customer-preferences-content{display:flex;flex-direction:column;gap:16px}.customer-preferences-item{display:flex;flex-direction:column;gap:8px}.customer-preferences-label{font-size:12px;font-weight:500;color:var(--v3-text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.customer-preferences-value{font-size:14px;color:var(--v3-text-primary, #1a1a1a);display:flex;flex-wrap:wrap;gap:8px}.customer-preference-pill{margin:0}.customer-preferences-empty{font-size:14px;color:var(--v3-text-secondary, #999);font-style:italic}.customer-future-section{padding:0}.customer-future-list{display:flex;flex-direction:column;gap:12px}.customer-future-item{padding:16px;border:1px solid var(--v3-border, #e2e8f0);border-radius:8px;background:var(--v3-background, #ffffff);transition:all .2s ease}.customer-future-item:hover{border-color:var(--v3-primary, #2563eb);background:var(--v3-surface, #f8fafc)}.customer-future-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.customer-future-item-date{font-size:16px;font-weight:600;color:var(--v3-text-primary, #1a1a1a)}.customer-future-item-details{font-size:14px;color:var(--v3-text-secondary, #666);display:flex;gap:8px;flex-wrap:wrap}.customer-history-section{padding:0}.customer-history-loading,.customer-history-empty{padding:20px;text-align:center;color:var(--v3-text-secondary, #666);font-size:14px}.customer-history-list{display:flex;flex-direction:column;gap:12px}.customer-history-item{padding:16px;background:var(--v3-surface, #f9f9f9);border-radius:8px;border:1px solid var(--v3-border, #e5e5e5);display:flex;flex-direction:column;gap:8px}.customer-history-item-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.customer-history-item-date{font-size:13px;font-weight:500;color:var(--v3-text-primary, #1a1a1a)}.customer-history-item-details{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--v3-text-secondary, #666)}@media (max-width: 1200px){.customer-snapshot-grid{grid-template-columns:1fr}}.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)}.staff-v3-customer-detail-mobile{padding-bottom:80px}.staff-v3-customer-detail-actions-mobile-sticky{position:fixed;bottom:0;left:0;right:0;padding:var(--v3-spacing-md, 16px);background:var(--v3-background, #ffffff);border-top:1px solid var(--v3-border, #e5e7eb);box-shadow:0 -2px 8px #0000001a;z-index:100;padding-bottom:calc(var(--v3-spacing-md, 16px) + env(safe-area-inset-bottom,0px))}@media (max-width: 1023px){.staff-v3-customer-detail-section{border-top:none;padding-top:12px;padding-bottom:12px}.staff-v3-customer-detail-label{font-size:13px;margin-bottom:8px}.staff-v3-customer-detail-value{font-size:15px}.staff-v3-customer-detail-badge:before{content:none}}@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 (min-width: 1024px){.staff-v3-customers-page{max-width:1600px;margin:0 auto;padding:0 var(--v4-space-6, 24px);display:flex;flex-direction:column;flex:1;min-height:0}.staff-v3-customers-content{display:flex;flex-direction:column;flex:1;min-height:0;gap:0}}.customers-desktop-layout-two-columns{display:flex;flex:1;min-height:0;gap:0;overflow:hidden}.customers-desktop-column-left{flex:1;overflow:hidden;display:flex;flex-direction:column;border-right:1px solid var(--v3-border, #e2e8f0);min-width:0}.customers-desktop-left-header{flex-shrink:0;padding:16px 20px 12px;border-bottom:1px solid var(--v3-border, #e2e8f0);background:var(--v3-background, #ffffff);display:flex;flex-direction:column;gap:10px}.customers-desktop-filters-row{display:flex;gap:6px;flex-wrap:wrap}.customers-desktop-list-count{font-size:11px;font-weight:500;color:var(--v3-text-secondary, #888);text-transform:uppercase;letter-spacing:.5px}.customers-desktop-list-container{flex:1;overflow-y:auto}.customers-desktop-right-cta-bar{flex-shrink:0;padding:12px 20px;border-bottom:1px solid var(--v3-border, #e2e8f0);background:var(--v3-background, #ffffff);display:flex;align-items:center;gap:10px}.customers-desktop-list{width:100%;background:var(--v3-background, #ffffff)}.customers-desktop-column-right{width:clamp(380px,38%,520px);flex-shrink:0;background:var(--v3-background, #ffffff);display:flex;flex-direction:column;overflow:hidden;min-height:0}.customers-desktop-empty-state{padding:60px 40px;text-align:center;color:var(--v3-text-secondary, #666);font-size:15px;display:flex;align-items:center;justify-content:center;height:100%}.customers-desktop-card{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:24px;gap:24px}.customers-desktop-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--v3-border, #e2e8f0)}.customers-desktop-card-title{margin:0;font-size:24px;font-weight:600;color:var(--v3-text-primary, #1a1a1a)}.customers-desktop-card-actions{display:flex;gap:8px;margin-bottom:8px}.customers-desktop-card-section{display:flex;flex-direction:column;gap:12px}.customers-desktop-card-section-title{margin:0;font-size:16px;font-weight:600;color:var(--v3-text-primary, #1a1a1a);padding-bottom:8px;border-bottom:1px solid var(--v3-border, #e2e8f0)}.customers-desktop-card-profile{display:flex;flex-direction:column;gap:12px}.customers-desktop-card-profile-item{display:flex;flex-direction:column;gap:4px}.customers-desktop-card-profile-label{font-size:12px;font-weight:500;color:var(--v3-text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.customers-desktop-card-profile-value{font-size:14px;color:var(--v3-text-primary, #1a1a1a)}.customers-desktop-card-kpi{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.customers-desktop-card-kpi-item{display:flex;flex-direction:column;gap:4px;padding:12px;background:var(--v3-surface, #f8fafc);border-radius:8px}.customers-desktop-card-kpi-label{font-size:11px;font-weight:500;color:var(--v3-text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.customers-desktop-card-kpi-value{font-size:20px;font-weight:600;color:var(--v3-text-primary, #1a1a1a)}.customers-desktop-card-preferences{display:flex;flex-direction:column;gap:16px}.customers-desktop-card-preferences-item{display:flex;flex-direction:column;gap:8px}.customers-desktop-card-preferences-label{font-size:12px;font-weight:500;color:var(--v3-text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.customers-desktop-card-preferences-value{font-size:14px;color:var(--v3-text-primary, #1a1a1a)}.customers-desktop-card-bookings{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.customers-desktop-card-booking-item{padding:12px;background:var(--v3-surface, #f8fafc);border-radius:8px;border:1px solid var(--v3-border, #e2e8f0);display:flex;flex-direction:column;gap:8px}.customers-desktop-card-booking-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.customers-desktop-card-booking-date{font-size:13px;font-weight:500;color:var(--v3-text-primary, #1a1a1a)}.customers-desktop-card-booking-details{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--v3-text-secondary, #666)}@media (max-width: 1023px){.staff-v3-customers-table-container,.customers-desktop-layout-two-columns{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-customers-content{display:flex;flex-direction:column;gap:0}.staff-v3-customers-search,.staff-v3-filters-section{padding:var(--v3-spacing-md, 16px);background:var(--v3-background, #ffffff);border-bottom:1px solid var(--v3-border, #e5e7eb)}.staff-v3-filters-row{display:flex;gap:var(--v3-spacing-sm, 8px);flex-wrap:wrap}.staff-v3-filters-pills{display:flex;gap:8px;flex-wrap:wrap}.staff-v3-customers-list{padding:var(--v3-spacing-md, 16px);display:flex;flex-direction:column;gap:var(--v3-spacing-sm, 8px);flex:1;overflow-y:auto;padding-bottom:calc(var(--v3-bottom-nav-h, 60px) + env(safe-area-inset-bottom,0px) + 16px)}@media (max-width: 1023px){.staff-v3-customers-content{min-height:calc(100vh - 200px)}.staff-v3-customers-search{position:sticky;top:0;z-index:6}.staff-v3-filters-section{position:sticky;top:76px;z-index:5}}.staff-avatar-upload{display:flex;flex-direction:column;align-items:flex-start;gap:var(--v4-space-3, 12px)}.staff-avatar-upload-preview{flex-shrink:0}.staff-avatar-upload-avatar{width:64px;height:64px}.staff-avatar-upload-actions{display:flex;flex-wrap:wrap;gap:var(--v4-space-2, 8px)}.staff-avatar-upload-input{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.staff-avatar-upload-btn{padding:8px 14px;border-radius:var(--v4-radius-md, 8px);font-size:14px;font-weight:500;cursor:pointer;border:1px solid var(--color-border, #e2e8f0);background:var(--v4-surface-default, #fff);color:var(--color-text-main, #1a1a1a)}.staff-avatar-upload-btn:disabled{opacity:.6;cursor:not-allowed}.staff-avatar-upload-btn-primary{background:var(--color-primary, #0066cc);color:var(--color-text-on-primary, #fff);border-color:var(--color-primary, #0066cc)}.staff-avatar-upload-btn-secondary{background:transparent;color:var(--color-text-secondary, #6c757d)}.staff-avatar-upload-status{font-size:13px;color:var(--color-text-secondary, #6c757d);margin:0}.staff-avatar-upload-error{font-size:13px;color:var(--color-error, #dc3545);margin:0}.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-settings-page{padding-bottom:calc(var(--v3-bottom-nav-h, 72px) + env(safe-area-inset-bottom,0px) + 16px);min-height:100vh;background:var(--v3-surface)}@media (min-width: 1024px){.staff-v3-settings-page{padding-bottom:var(--v3-spacing-lg)}}.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}.staff-v3-settings-avatar-block{padding:var(--v4-space-3, 12px) 0;border-bottom:1px solid var(--color-border-light, #f3f4f6)}.staff-v3-settings-avatar-block:last-child{border-bottom:none}.staff-v3-settings-avatar-name{font-size:14px;font-weight:600;margin:0 0 8px;color:var(--color-text-main, #1a1a1a)}@media (min-width: 768px){.staff-v3-settings-page{max-width:960px;margin:0 auto}.staff-v3-calendar-actions{flex-direction:row}.staff-v3-calendar-actions .staff-v3-settings-save-button{flex:1}}@media (min-width: 1024px){.staff-v3-settings-save-button,.staff-v3-settings-add-button{width:auto;min-width:180px;align-self:flex-start}.staff-v3-absence-item-delete{background:transparent;color:var(--v3-error);border:1px solid var(--v3-error)}.staff-v3-absence-item-delete:hover{background:var(--v4-status-error-bg)}}.staff-v4-card{background:var(--color-card, #ffffff);border:1px solid var(--color-border, #e5e5e5);border-radius:12px;padding:16px;cursor:pointer;transition:all .2s ease;min-height:120px;display:flex;flex-direction:column;gap:12px}.staff-v4-card:hover{border-color:var(--v3-primary, #2563eb);box-shadow:var(--v4-shadow-md);transform:translateY(-2px)}.staff-v4-card:active{transform:translateY(0)}.staff-v4-card:focus{outline:2px solid var(--v3-primary, #2563eb);outline-offset:2px}.staff-v4-card-header{display:flex;align-items:center;gap:12px}.staff-v4-card-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--color-accent, #d4af37),var(--color-accent-dark, #b8941f));color:var(--color-text-on-primary, #ffffff);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;flex-shrink:0}.staff-v4-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.staff-v4-card-name{margin:0;font-size:16px;font-weight:600;color:var(--color-text-main, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-v4-card-section{display:flex;flex-direction:column;gap:4px}.staff-v4-card-label{margin:0;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary, #666)}.staff-v4-card-detail{margin:0;font-size:14px;color:var(--color-text-main, #1a1a1a);line-height:1.4}.staff-v4-card-detail-muted{color:var(--color-text-secondary, #666);font-style:italic}.staff-v4-card-badge{margin-top:auto;padding-top:8px;border-top:1px solid var(--color-border, #e5e5e5)}@media (max-width: 768px){.staff-v4-card{min-height:100px;padding:14px}.staff-v4-card-avatar{width:40px;height:40px;font-size:13px}.staff-v4-card-name{font-size:15px}}.staff-v4-intervals-list{display:flex;flex-direction:column;gap:12px}.staff-v4-interval-item{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px;background:var(--color-card, #ffffff);border:1px solid var(--color-border, #e5e5e5);border-radius:8px;transition:all .2s ease}.staff-v4-interval-item:hover{border-color:var(--color-accent, #d4af37);box-shadow:0 2px 8px #0000000d}.staff-v4-interval-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.staff-v4-interval-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.staff-v4-interval-staff{margin:0;font-size:16px;font-weight:600;color:var(--color-text-primary, #1a1a1a)}.staff-v4-interval-type{font-size:12px;font-weight:500;color:var(--color-text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.staff-v4-interval-range{margin:0;font-size:14px;color:var(--color-text-primary, #1a1a1a);font-weight:500}.staff-v4-interval-reason{margin:0;font-size:13px;color:var(--color-text-secondary, #666);font-style:italic}.staff-v4-interval-actions{display:flex;gap:8px;flex-shrink:0}.staff-v4-view-toggle{background:transparent;border:1px solid var(--color-border, #e5e5e5);border-radius:6px;padding:6px 10px;cursor:pointer;font-size:16px;transition:all .2s ease;min-height:32px;display:flex;align-items:center;justify-content:center}.staff-v4-view-toggle:hover{border-color:var(--color-accent, #d4af37);background:var(--color-accent-light, rgba(212, 175, 55, .1))}.staff-v4-daily-list{display:flex;flex-direction:column;gap:8px}.staff-v4-daily-item{padding:12px;background:var(--color-card, #ffffff);border:1px solid var(--color-border, #e5e5e5);border-radius:6px}.staff-v4-daily-content{display:flex;flex-direction:column;gap:4px}.staff-v4-daily-staff{margin:0;font-size:14px;font-weight:600;color:var(--color-text-primary, #1a1a1a)}.staff-v4-daily-date{margin:0;font-size:13px;color:var(--color-text-secondary, #666)}.staff-v4-daily-reason{margin:0;font-size:12px;color:var(--color-text-secondary, #666);font-style:italic}@media (max-width: 768px){.staff-v4-interval-item{padding:12px;gap:12px}.staff-v4-interval-actions{flex-direction:column}}.staff-v4-drawer-content{display:flex;flex-direction:column;gap:24px;padding:0}.staff-v4-drawer-profile{display:flex;flex-direction:column;align-items:center;gap:16px}.staff-v4-drawer-profile-info{width:100%;display:flex;flex-direction:column;gap:12px}.staff-v4-drawer-name-row{width:100%}.staff-v4-drawer-name-display{display:flex;align-items:center;justify-content:center;gap:8px}.staff-v4-drawer-name{margin:0;font-size:18px;font-weight:600;color:var(--color-text-main, #1a1a1a)}.staff-v4-drawer-name-edit-btn{background:none;border:none;cursor:pointer;padding:4px;font-size:14px;line-height:1;opacity:.5;transition:opacity .15s}.staff-v4-drawer-name-edit-btn:hover{opacity:1}.staff-v4-drawer-name-edit{display:flex;align-items:center;gap:8px}.staff-v4-drawer-name-input{flex:1;min-width:0;padding:8px 12px;font-size:16px;font-weight:500;color:var(--color-text-main, #1a1a1a);background:var(--color-card, #ffffff);border:1.5px solid var(--color-accent, #d4af37);border-radius:6px;outline:none}.staff-v4-drawer-name-input:focus{box-shadow:0 0 0 2px #d4af3733}.staff-v4-drawer-name-input:disabled{opacity:.6}.staff-v4-drawer-profile-meta{display:flex;align-items:center;justify-content:center;gap:12px}.staff-v4-drawer-header{display:flex;align-items:center;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--color-border, #e5e5e5)}.staff-v4-drawer-header-info{flex:1;display:flex;flex-direction:column;gap:8px}.staff-v4-drawer-date{margin:0;font-size:13px;color:var(--color-text-secondary, #666);text-transform:capitalize}.staff-v4-drawer-absences{display:flex;flex-direction:column;gap:12px}.staff-v4-drawer-absence-item{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:12px;background:var(--color-card, #ffffff);border:1px solid var(--color-border, #e5e5e5);border-radius:8px}.staff-v4-drawer-absence-content{flex:1;min-width:0}.staff-v4-drawer-absence-range{margin:0 0 4px;font-size:14px;font-weight:500;color:var(--color-text-main, #1a1a1a)}.staff-v4-drawer-absence-reason{margin:0;font-size:13px;color:var(--color-text-secondary, #666);font-style:italic}.staff-v4-drawer-absence-actions{display:flex;gap:8px;flex-shrink:0}.staff-v4-drawer-bookings{display:flex;flex-direction:column;gap:12px}.staff-v4-drawer-booking-item{display:flex;align-items:center;gap:12px;padding:10px;background:var(--color-card, #ffffff);border:1px solid var(--color-border, #e5e5e5);border-radius:6px}.staff-v4-drawer-booking-time{font-weight:600;font-size:14px;color:var(--color-text-main, #1a1a1a);min-width:50px}.staff-v4-drawer-booking-detail{font-size:14px;color:var(--color-text-secondary, #666);flex:1}.staff-v4-drawer-empty{margin:0;font-size:14px;color:var(--color-text-secondary, #666);font-style:italic;text-align:center;padding:20px}.staff-v4-drawer-actions{display:flex;flex-direction:column;gap:12px}@media (max-width: 768px){.staff-v4-drawer-header{padding-bottom:16px}.staff-v4-drawer-name{font-size:16px}.staff-v4-drawer-name-input{font-size:15px;padding:6px 10px}.staff-v4-drawer-absence-actions{flex-direction:column}}.staff-v4-page{padding-bottom:var(--v3-spacing-lg);padding-bottom:calc(var(--v3-spacing-lg) + var(--safe-bottom, 0px))}.staff-v4-kpi-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.staff-v4-cards-grid,.staff-v4-cards-skeleton{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.staff-v4-card-skeleton{height:120px;background:var(--color-card, #ffffff);border:1px solid var(--color-border, #e5e5e5);border-radius:12px;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.staff-v4-empty{text-align:center;padding:40px 20px;color:var(--color-text-secondary, #666);font-size:14px}@media (max-width: 767px){.staff-v4-page{padding-left:var(--v3-spacing-md);padding-right:var(--v3-spacing-md)}.staff-v4-cards-grid{grid-template-columns:1fr;gap:12px}.staff-v4-kpi-pills{gap:6px}}@media (min-width: 1024px){.staff-v4-page{max-width:1400px;margin:0 auto;padding-left:var(--v3-spacing-lg);padding-right:var(--v3-spacing-lg)}}.staff-v4-desktop-subheader{display:flex;align-items:center;justify-content:space-between;padding:var(--v3-spacing-md) 0;margin-bottom:var(--v3-spacing-sm)}.staff-v4-desktop-subtitle{font-size:var(--v3-font-size-base);color:var(--v3-text-secondary);text-transform:capitalize}.staff-v4-page *{max-width:100%;box-sizing:border-box}.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;min-height:44px}.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;padding-bottom:calc(var(--v3-bottom-nav-h, 60px) + env(safe-area-inset-bottom,0px))}.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;padding-top:max(env(safe-area-inset-top,0px),var(--v3-spacing-md, 16px))}.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, var(--v3-primary, #2563eb));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:12px 16px;min-height:44px;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;display:flex;align-items:center;justify-content:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.staff-v3-inbox-filter.active{background:var(--v3-color-primary, var(--v3-primary, #2563eb));color:#fff;border-color:var(--v3-color-primary, var(--v3-primary, #2563eb))}.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:calc(var(--v3-bottom-nav-h, 60px) + env(safe-area-inset-bottom,0px) + 16px)}.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, var(--v3-primary, #2563eb));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}@media (min-width: 1024px){.inbox-desktop-layout{display:flex;flex:1;min-height:0;gap:0;overflow:hidden}.inbox-desktop-column-left{flex:1;overflow:hidden;display:flex;flex-direction:column;border-right:1px solid var(--v3-border, #e5e5e5)}.inbox-desktop-column-right{width:clamp(380px,38%,520px);flex-shrink:0;background:var(--v3-background, #ffffff);display:flex;flex-direction:column;overflow:hidden}.inbox-preview-empty{display:flex;align-items:center;justify-content:center;height:100%;padding:40px 20px;text-align:center;color:var(--v3-text-secondary, #666);font-size:14px}.inbox-preview-panel{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:24px;gap:24px}.inbox-preview-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--v3-border, #e5e5e5)}.inbox-preview-title{margin:0;font-size:18px;font-weight:600;color:var(--v3-text-primary, #1a1a1a);flex:1}.inbox-preview-body{display:flex;flex-direction:column;gap:12px}.inbox-preview-text{margin:0;font-size:14px;color:var(--v3-text-primary, #1a1a1a);line-height:1.5}.inbox-preview-time{font-size:12px;color:var(--v3-text-secondary, #666)}.inbox-preview-booking{margin-top:8px}.inbox-preview-loading{padding:20px;text-align:center;color:var(--v3-text-secondary, #666);font-size:14px}.inbox-preview-error{padding:16px;background:var(--v3-surface, #f9f9f9);border:1px solid var(--v3-border, #e5e5e5);border-radius:8px;border-left:4px solid var(--v3-error, #dc3545)}.inbox-preview-booking-details{display:flex;flex-direction:column;gap:20px}.inbox-preview-section{display:flex;flex-direction:column;gap:8px}.inbox-preview-section-title{margin:0;font-size:14px;font-weight:600;color:var(--v3-text-primary, #1a1a1a);text-transform:uppercase;letter-spacing:.5px;padding-bottom:8px;border-bottom:1px solid var(--v3-border, #e5e5e5)}.inbox-preview-section-content{display:flex;flex-direction:column;gap:8px}.inbox-preview-detail-item{display:flex;justify-content:space-between;align-items:center;gap:12px}.inbox-preview-detail-label{font-size:12px;font-weight:500;color:var(--v3-text-secondary, #666)}.inbox-preview-detail-value{font-size:14px;color:var(--v3-text-primary, #1a1a1a);text-align:right}.inbox-preview-actions{margin-top:16px;padding-top:16px;border-top:1px solid var(--v3-border, #e5e5e5)}}@media (max-width: 1023px){.inbox-desktop-layout{display:none}}.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}.trend-badge{display:inline-flex;flex-direction:column;align-items:flex-start;gap:1px;margin-top:6px;padding:4px 8px;border-radius:6px;font-size:12px;line-height:1.3}.trend-main{display:flex;align-items:center;gap:3px;font-weight:700;font-size:13px}.trend-arrow{font-size:9px}.trend-percent{font-weight:700}.trend-label{font-size:10px;font-weight:400;opacity:.75}.capacity-heatmap{width:100%;overflow-x:auto}.heatmap-grid{display:grid;gap:2px;min-width:400px}.heatmap-cell{display:flex;align-items:center;justify-content:center;min-height:40px;font-size:11px;font-weight:500;border-radius:4px}.header-cell{background-color:#f9fafb;color:#6b7280;font-weight:600;position:sticky;top:0;z-index:10}.weekday-cell{background-color:#f9fafb;color:#374151;font-weight:600;position:sticky;left:0;z-index:10}.data-cell{cursor:pointer;transition:transform .2s,box-shadow .2s;position:relative}.data-cell:hover{transform:scale(1.1);box-shadow:0 4px 8px #00000026;z-index:20}.cell-value{color:#1f2937;font-weight:600}.heatmap-legend{margin-top:24px;padding:16px;background:var(--v3-bg-secondary, #f9fafb);border-radius:8px;border:1px solid var(--v3-border, #e5e7eb)}.legend-title{font-size:13px;font-weight:600;color:var(--v3-text-secondary, #6b7280);margin-bottom:12px}.legend-gradient{display:flex;flex-direction:column;gap:8px}.gradient-bar{height:24px;border-radius:4px;background:linear-gradient(to right,#f5f3ef,#e8e0d4,#d4b87a,#b8965a,#2d6a4f)}.gradient-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--v3-text-secondary, #6b7280);font-weight:600}.legend-note{margin-top:12px;font-size:11px;color:var(--v3-text-secondary, #6b7280);font-style:italic}@media (max-width: 640px){.heatmap-legend{padding:12px}.gradient-labels{font-size:10px}}@media (max-width: 768px){.heatmap-grid{grid-template-columns:50px repeat(auto-fit,minmax(40px,1fr));min-width:500px}.heatmap-cell{min-height:35px;font-size:10px}}.revenue-forecast{background:linear-gradient(135deg,var(--ea-charcoal, #1c1c1e) 0%,var(--ea-charcoal-soft, #2c2c2e) 100%);border-radius:var(--ea-radius-lg, 12px);padding:28px;color:var(--ea-ivory, #faf9f7)}.forecast-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;flex-wrap:wrap;gap:16px}.forecast-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.forecast-title h3{margin:0;font-size:18px;font-weight:600}.confidence-badge{padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.5px}.forecast-total{text-align:right}.total-label{display:block;font-size:12px;opacity:.8;margin-bottom:4px}.total-value{display:block;font-size:32px;font-weight:700;line-height:1}.total-sublabel{display:block;font-size:13px;opacity:.7;margin-top:4px}.forecast-chart{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;height:200px;margin-bottom:16px;padding:16px;background:#ffffff1a;border-radius:8px}.forecast-bar{flex:1;display:flex;flex-direction:column;align-items:center;position:relative}.forecast-bar.weekend{opacity:.85}.forecast-bar.today .bar-wrapper{box-shadow:0 0 0 3px #ffffff80}.bar-wrapper{width:100%;height:140px;display:flex;align-items:flex-end;border-radius:6px 6px 0 0;overflow:hidden;transition:transform .2s}.bar-wrapper:hover{transform:translateY(-4px)}.bar-fill{width:100%;background:linear-gradient(to top,#ffffffe6,#fff9);border-radius:6px 6px 0 0;position:relative;min-height:8px;transition:height .3s ease}.bar-confirmed{width:100%;background:linear-gradient(to top,var(--ea-emerald, #2d6a4f),var(--ea-emerald-light, #52b788));position:absolute;bottom:0;border-radius:6px 6px 0 0}.bar-value{margin-top:8px;font-size:13px;font-weight:700;color:#fff}.bar-label{display:flex;flex-direction:column;align-items:center;margin-top:4px;font-size:11px}.bar-weekday{font-weight:600;text-transform:uppercase;opacity:.9}.bar-date{opacity:.7;font-size:10px}.today-badge{position:absolute;top:-24px;background:var(--ea-gold, #b8965a);color:var(--ea-charcoal, #1c1c1e);padding:2px 8px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase}.forecast-legend{display:flex;justify-content:center;gap:24px;margin-bottom:16px}.legend-item{display:flex;align-items:center;gap:8px;font-size:12px}.legend-swatch{width:16px;height:16px;border-radius:3px}.legend-swatch.predicted{background:linear-gradient(to top,#ffffffe6,#fff9)}.legend-swatch.confirmed{background:linear-gradient(to top,var(--ea-emerald, #2d6a4f),var(--ea-emerald-light, #52b788))}.forecast-methodology{display:flex;align-items:flex-start;gap:8px;padding:12px;background:#0003;border-radius:6px;font-size:11px;line-height:1.4;opacity:.9}.methodology-icon{flex-shrink:0}.methodology-text{flex:1}@media (max-width: 640px){.revenue-forecast{padding:16px}.forecast-header{flex-direction:column;align-items:flex-start}.forecast-total{text-align:left}.total-value{font-size:24px}.forecast-chart{height:150px;gap:4px;padding:12px}.bar-wrapper{height:100px}.bar-value{font-size:11px}.bar-label{font-size:10px}}:root{--ea-charcoal: #1c1c1e;--ea-charcoal-soft: #2c2c2e;--ea-ivory: #faf9f7;--ea-ivory-warm: #f5f3ef;--ea-gold: #b8965a;--ea-gold-light: #d4b87a;--ea-gold-muted: rgba(184, 150, 90, .12);--ea-emerald: #2d6a4f;--ea-emerald-light: #52b788;--ea-emerald-muted: rgba(45, 106, 79, .1);--ea-red: #c1121f;--ea-red-muted: rgba(193, 18, 31, .08);--ea-surface: #ffffff;--ea-border: #e8e5e0;--ea-border-subtle: #f0ede8;--ea-text: #1c1c1e;--ea-text-secondary: #78756f;--ea-text-muted: #a8a49e;--ea-font-serif: "Georgia", "Times New Roman", serif;--ea-font-sans: "Inter", system-ui, -apple-system, sans-serif;--ea-radius: 8px;--ea-radius-lg: 12px;--ea-shadow-sm: 0 1px 3px rgba(28, 28, 30, .06);--ea-shadow-md: 0 4px 12px rgba(28, 28, 30, .08);--ea-transition: .2s ease}.analytics-pro-badge{font-size:10px!important;padding:2px 6px!important}.staff-v3-analytics-page{padding:var(--v3-spacing-lg);max-width:1400px;margin:0 auto;font-family:var(--ea-font-sans);color:var(--ea-text);background:var(--ea-ivory)}.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}}.analytics-block{margin-bottom:32px}.analytics-block:last-child{margin-bottom:16px}.analytics-block-title{font-size:16px;font-weight:600;letter-spacing:.01em;color:var(--ea-text-secondary);margin-bottom:8px;padding-bottom:10px;border-bottom:1px solid var(--ea-border);display:flex;align-items:center;gap:8px;font-family:var(--ea-font-sans)}.analytics-block-title:before{content:"";width:3px;height:12px;background:var(--ea-gold);border-radius:2px}.analytics-block-subtitle{margin:0 0 14px 11px;font-size:13px;line-height:1.5;color:var(--ea-text-secondary)}.analytics-executive{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:start;margin-bottom:32px}.analytics-executive-intro{margin-bottom:12px}.analytics-executive-eyebrow{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ea-gold);font-weight:700}.analytics-executive-subtitle{margin:4px 0 0;font-size:13px;color:var(--ea-text-secondary)}.analytics-executive-daterange{margin:8px 0 0;font-size:12px;color:var(--ea-text-muted);font-variant-numeric:tabular-nums}.analytics-executive-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.analytics-executive-kpi{background:var(--ea-surface);border:1px solid var(--ea-border);border-radius:var(--ea-radius-lg);padding:20px;min-height:100px;transition:box-shadow var(--ea-transition)}.analytics-executive-kpi:hover{box-shadow:var(--ea-shadow-md)}.analytics-executive-kpi-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ea-text-secondary);margin-bottom:8px;font-family:var(--ea-font-sans)}.analytics-executive-kpi-value{font-size:24px;font-weight:700;color:var(--ea-charcoal);font-variant-numeric:tabular-nums;font-family:var(--ea-font-sans)}.analytics-executive-trend{font-size:13px;color:var(--ea-text-secondary);margin-top:8px}.analytics-executive-cta-wrap{min-width:200px}.analytics-executive-cta{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;background:linear-gradient(135deg,var(--ea-gold) 0%,var(--ea-gold-light) 100%);color:var(--ea-charcoal);border:none;border-radius:var(--ea-radius);font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 12px var(--ea-gold-muted);text-decoration:none}.analytics-executive-cta:hover{transform:translateY(-1px);box-shadow:0 6px 16px var(--ea-gold-muted)}.analytics-drivers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.analytics-driver-card{background:var(--ea-surface);border:1px solid var(--ea-border);border-radius:var(--ea-radius);padding:16px;transition:box-shadow var(--ea-transition)}.analytics-driver-card:hover{box-shadow:var(--ea-shadow-sm)}.analytics-driver-card-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ea-text-secondary);margin-bottom:12px}.analytics-driver-list{display:flex;flex-direction:column;gap:8px}.analytics-driver-item{display:flex;justify-content:space-between;align-items:center;font-size:13px}.analytics-driver-item-name{font-weight:500;color:var(--ea-text)}.analytics-driver-item-value{font-weight:600;color:var(--ea-charcoal);font-variant-numeric:tabular-nums}.analytics-driver-item.clickable{cursor:pointer}.analytics-driver-item.clickable:hover{background:var(--ea-ivory-warm);margin:-4px -8px;padding:4px 8px;border-radius:4px}.analytics-driver-item.selected{background:var(--ea-gold-muted);border-left:3px solid var(--ea-gold);margin:-4px -8px;padding:4px 8px;border-radius:4px}.analytics-azioni-list{display:flex;flex-direction:column;gap:12px}.analytics-azione-card{background:var(--ea-surface);border:1px solid var(--ea-border);border-left:3px solid var(--ea-gold-light);border-radius:var(--ea-radius);padding:16px;transition:box-shadow var(--ea-transition)}.analytics-azione-card:hover{box-shadow:var(--ea-shadow-sm)}.analytics-driver-item.clickable:focus-visible,.analytics-executive-cta:focus-visible,.analytics-azione-card button:focus-visible{outline:2px solid var(--ea-gold);outline-offset:2px}.analytics-azione-title{font-size:15px;font-weight:600;color:var(--ea-charcoal);margin-bottom:6px}.analytics-azione-reason{font-size:13px;color:var(--ea-text-secondary);margin-bottom:8px;line-height:1.4}.analytics-azione-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.analytics-azione-impact{font-size:12px;color:var(--ea-text-muted);font-weight:500}.analytics-azione-badges{display:flex;gap:6px;align-items:center}.analytics-actions-meta{margin:2px 2px 0;font-size:12px;color:var(--ea-text-secondary)}.analytics-badge-success{background:var(--ea-emerald-muted);color:var(--ea-emerald)}.analytics-badge-info{background:#3b82f61a;color:#3b82f6}.analytics-badge-warning{background:var(--ea-gold-muted);color:var(--ea-gold)}.analytics-badge-neutral{background:var(--ea-border-subtle);color:var(--ea-text-secondary)}.analytics-deep-dive-sections{display:flex;flex-direction:column;gap:8px}@media (min-width: 1024px){.analytics-desktop-layout{padding:var(--v3-spacing-lg);max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:var(--v3-spacing-xl)}.analytics-executive{grid-template-columns:1fr 220px}@media (max-width: 900px){.analytics-executive{grid-template-columns:1fr}.analytics-executive-cta-wrap{min-width:auto}}@media (max-width: 700px){.analytics-executive-kpis,.analytics-drivers-grid{grid-template-columns:1fr}}.analytics-kpi-header{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--v3-spacing-md);margin-bottom:var(--v3-spacing-lg)}@media (max-width: 1200px){.analytics-kpi-header{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.analytics-kpi-header{grid-template-columns:repeat(2,1fr);gap:var(--v3-spacing-sm)}.analytics-kpi-card{padding:16px;min-height:88px}.analytics-kpi-value{font-size:22px}}.analytics-kpi-card{background:var(--ea-surface);border:1px solid var(--ea-border);border-radius:var(--ea-radius-lg);padding:24px;display:flex;flex-direction:column;gap:6px;min-height:100px;transition:box-shadow var(--ea-transition)}.analytics-kpi-card:hover{box-shadow:var(--ea-shadow-md)}.analytics-kpi-card.kpi-primary{border:2px solid var(--ea-gold);box-shadow:0 4px 16px var(--ea-gold-muted);background:linear-gradient(135deg,var(--ea-surface) 0%,var(--ea-ivory-warm) 100%)}.kpi-icon{font-size:28px;line-height:1;margin-bottom:2px}.analytics-kpi-label{font-size:11px;font-weight:600;color:var(--ea-text-secondary);text-transform:uppercase;letter-spacing:.08em;font-family:var(--ea-font-sans)}.analytics-kpi-value{font-size:28px;font-weight:700;color:var(--ea-charcoal);font-variant-numeric:tabular-nums;font-family:var(--ea-font-sans)}.analytics-kpi-placeholder{font-size:var(--v3-font-size-xs);color:var(--v3-text-secondary);font-style:italic}.analytics-staff-performance{overflow-x:auto}.analytics-table{width:100%;border-collapse:collapse;margin-top:var(--v3-spacing-md)}.analytics-table thead{background:var(--ea-surface, var(--v3-surface))}.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);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--v3-border)}.analytics-table th:last-child,.analytics-table td:last-child{text-align:right}.analytics-table td{padding:var(--v3-spacing-md);font-size:var(--v3-font-size-base);color:var(--v3-text-primary);border-bottom:1px solid var(--v3-border)}.analytics-table tbody tr:hover{background:var(--v3-surface)}.analytics-table tbody tr:nth-child(2n):not(.analytics-row-selected){background:#fcfbf9}.analytics-table tbody tr.analytics-row-selected{background:var(--ea-gold-muted);border-left:3px solid var(--ea-gold)}.analytics-table tbody tr.analytics-row-selected:hover{background:var(--ea-gold-muted)}.analytics-table tbody tr:last-child td{border-bottom:none}.analytics-top-services{overflow-x:auto}.analytics-customers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--v3-spacing-md);margin-top:var(--v3-spacing-md)}.analytics-customers-card{background:var(--v3-surface);border:1px solid var(--v3-border);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-lg);display:flex;flex-direction:column;gap:var(--v3-spacing-xs)}.analytics-customers-label{font-size:var(--v3-font-size-sm);font-weight:var(--v3-font-weight-medium);color:var(--v3-text-secondary);text-transform:uppercase;letter-spacing:.5px}.analytics-customers-value{font-size:var(--v3-font-size-xl);font-weight:var(--v3-font-weight-bold);color:var(--v3-text-primary)}.analytics-customers-placeholder{font-size:var(--v3-font-size-xs);color:var(--v3-text-secondary);font-style:italic}.analytics-trend-chart{margin-top:var(--v3-spacing-md);min-height:300px}.analytics-trend-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;background:var(--v3-surface);border:2px dashed var(--v3-border);border-radius:var(--v3-border-radius-md);padding:var(--v3-spacing-xl);text-align:center;color:var(--v3-text-secondary)}.analytics-placeholder{padding:var(--v3-spacing-xl);text-align:center;color:var(--v3-text-secondary);font-style:italic}}@media (max-width: 1023px){.analytics-desktop-layout{display:none}}.export-pdf-btn{display:inline-flex;align-items:center;gap:6px}.export-pdf-btn .export-pdf-btn-spinner{display:inline-block;width:12px;height:12px;border:2px solid var(--v3-border, #e5e7eb);border-top-color:var(--v3-primary, #3b82f6);border-radius:50%;animation:export-pdf-spin .8s linear infinite}@keyframes export-pdf-spin{to{transform:rotate(360deg)}}@media (max-width: 640px){.export-pdf-btn{font-size:12px;padding:6px 10px}}.analytics-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.capacity-stats{display:flex;gap:16px;font-size:14px;color:var(--v3-text-secondary, #6b7280)}.capacity-stats strong{color:var(--v3-text-primary, #111827);font-weight:600}.slots-summary{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.slots-column h4{font-size:14px;font-weight:600;margin-bottom:12px;color:var(--v3-text-primary, #111827)}.slot-item{display:flex;justify-content:space-between;padding:8px 12px;background:var(--color-bg-secondary, var(--ea-ivory-warm));border-radius:var(--radius-sm, 6px);margin-bottom:6px;font-size:13px}.slot-item.dead{background:var(--color-error-light, var(--ea-red-muted));color:var(--color-error, var(--ea-red))}.slot-item span{font-weight:600;color:var(--v3-text-secondary, #6b7280)}@media (max-width: 768px){.slots-summary{grid-template-columns:1fr}}.realtime-indicator{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:16px;font-size:12px;font-weight:600;transition:all .3s}.realtime-indicator.connected{background:var(--color-success-light, var(--ea-emerald-muted));color:var(--color-success, var(--ea-emerald))}.realtime-indicator.disconnected{background:var(--color-error-light, var(--ea-red-muted));color:var(--color-error, var(--ea-red))}.realtime-dot{width:8px;height:8px;border-radius:50%;background:currentColor}.realtime-indicator.connected .realtime-dot{animation:realtime-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes realtime-pulse{0%,to{opacity:1}50%{opacity:.5}}.realtime-warning{padding:12px;background:var(--color-warning-light, var(--ea-gold-muted));border:1px solid var(--color-warning, var(--ea-gold));border-radius:var(--radius-md, 8px);color:var(--ea-charcoal, #1c1c1e);font-size:13px;margin-bottom:16px}.kpi-live-badge{display:inline-flex;align-items:center;gap:4px;margin-top:4px;padding:2px 8px;background:var(--color-success-light, var(--ea-emerald-muted));color:var(--color-success, var(--ea-emerald));border-radius:10px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--color-success, var(--ea-emerald));animation:realtime-pulse 2s cubic-bezier(.4,0,.6,1) infinite}.analytics-kpi-header.kpi-pulse{animation:kpiPulse .6s cubic-bezier(.4,0,.6,1)}@keyframes kpiPulse{0%,to{transform:scale(1);box-shadow:0 1px 3px #0000001a}50%{transform:scale(1.02);box-shadow:0 10px 15px -3px #10b98140}}.analytics-kpi-value.pending{color:var(--v3-text-secondary, #6b7280)}.analytics-plan-lock{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:linear-gradient(135deg,var(--ea-ivory) 0%,var(--ea-ivory-warm) 50%,var(--ea-border-subtle) 100%)}.plan-lock-content{max-width:600px;background:var(--ea-surface);border-radius:var(--ea-radius-lg);padding:48px;text-align:center;box-shadow:var(--ea-shadow-md),0 20px 60px #1c1c1e14;border:1px solid var(--ea-border)}.plan-lock-icon{font-size:80px;margin-bottom:24px;animation:lock-pulse 2s ease-in-out infinite}@keyframes lock-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.plan-lock-content h2{font-size:28px;font-weight:700;color:var(--ea-charcoal);margin-bottom:12px}.plan-lock-content p{font-size:16px;color:var(--ea-text-secondary);margin-bottom:32px}.plan-lock-features{text-align:left;margin-bottom:32px;padding:24px;background:var(--ea-ivory-warm);border-radius:var(--ea-radius-lg);border:1px solid var(--ea-border-subtle)}.plan-lock-features h3{font-size:18px;font-weight:600;color:var(--ea-charcoal);margin-bottom:16px}.plan-lock-features ul{list-style:none;padding:0;margin:0}.plan-lock-features li{font-size:15px;color:var(--ea-text-secondary);margin-bottom:12px;padding-left:0}.plan-lock-actions{display:flex;gap:12px;justify-content:center}.plan-lock-upgrade-btn{padding:14px 32px;background:linear-gradient(135deg,var(--ea-gold) 0%,var(--ea-gold-light) 100%);color:var(--ea-charcoal);border:none;border-radius:var(--ea-radius);font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 12px var(--ea-gold-muted)}.plan-lock-upgrade-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px var(--ea-gold-muted);background:linear-gradient(135deg,var(--ea-gold-light) 0%,var(--ea-gold) 100%)}.plan-lock-contact-btn{padding:14px 32px;background:var(--ea-surface);color:var(--ea-charcoal);border:2px solid var(--ea-border);border-radius:var(--ea-radius);font-size:16px;font-weight:600;cursor:pointer;transition:all var(--ea-transition)}.plan-lock-contact-btn:hover{border-color:var(--ea-gold);color:var(--ea-gold)}@media (max-width: 640px){.plan-lock-content{padding:32px 24px}.plan-lock-content h2{font-size:24px}.plan-lock-actions{flex-direction:column}.plan-lock-upgrade-btn,.plan-lock-contact-btn{width:100%}}.analytics-section-group{margin-bottom:64px}.analytics-section-group:last-child{margin-bottom:32px}.section-group-title{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ea-text-secondary);margin-bottom:24px;padding-bottom:14px;border-bottom:1px solid var(--ea-border);display:flex;align-items:center;gap:10px;font-family:var(--ea-font-sans)}.section-group-title:before{content:"";width:3px;height:14px;background:var(--ea-gold);border-radius:1.5px}@media (max-width: 640px){.analytics-section-group{margin-bottom:40px}.section-group-title{font-size:11px;padding-bottom:10px}}.clients-section-tabs{display:flex;gap:0;margin-bottom:24px;border-bottom:1px solid var(--ea-border);padding-bottom:0}.clients-tab{background:none;border:none;padding:12px 24px;font-size:13px;font-weight:600;color:var(--ea-text-secondary);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color var(--ea-transition);position:relative;letter-spacing:.02em}.clients-tab:hover{color:var(--ea-charcoal);background:#faf7f2}.clients-tab.active{color:var(--ea-charcoal);border-bottom-color:var(--ea-gold);background:linear-gradient(180deg,rgba(184,150,90,.18) 0%,transparent 100%)}.clients-tab-content{padding-top:8px}@media (max-width: 640px){.clients-section-tabs{flex-direction:column;gap:0;border-bottom:none}.clients-tab{border-bottom:1px solid var(--v3-border);margin-bottom:0}.clients-tab.active{background:var(--ea-ivory-warm);border-left:3px solid var(--ea-gold)}}.analytics-filter-bar{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;margin-top:16px;margin-bottom:24px;background:var(--ea-ivory-warm);border-left:3px solid var(--ea-gold);border-radius:var(--ea-radius);box-shadow:var(--ea-shadow-sm)}.filter-bar-content{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--ea-text)}.filter-icon{font-size:16px;line-height:1;color:var(--ea-gold)}.filter-text{font-weight:500}.filter-text strong{font-weight:700;color:var(--ea-charcoal)}.filter-remove-btn{padding:8px 16px;background:var(--ea-surface);border:1px solid var(--ea-border);border-radius:var(--ea-radius);color:var(--ea-text-secondary);font-size:12px;font-weight:600;cursor:pointer;transition:all var(--ea-transition);white-space:nowrap}.filter-remove-btn:hover{background:var(--ea-charcoal);color:var(--ea-ivory);border-color:var(--ea-charcoal)}@media (max-width: 768px){.analytics-filter-bar{flex-direction:column;gap:12px;align-items:flex-start}.filter-remove-btn{width:100%}}@media (max-width: 640px){.kpi-icon{font-size:28px}}.analytics-health-summary{display:flex;align-items:center;gap:18px;padding:20px 28px;border-radius:var(--ea-radius-lg);margin-bottom:32px;border-left:3px solid;background:var(--ea-surface);box-shadow:var(--ea-shadow-sm)}.analytics-health-summary.great{border-left-color:var(--ea-emerald);background:linear-gradient(135deg,var(--ea-surface) 0%,rgba(45,106,79,.04) 100%)}.analytics-health-summary.good{border-left-color:var(--ea-gold);background:linear-gradient(135deg,var(--ea-surface) 0%,var(--ea-gold-muted) 100%)}.analytics-health-summary.warning{border-left-color:var(--ea-red);background:linear-gradient(135deg,var(--ea-surface) 0%,var(--ea-red-muted) 100%)}.health-icon{font-size:24px;line-height:1;flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-weight:700;font-family:var(--ea-font-sans)}.analytics-health-summary.great .health-icon{background:var(--ea-emerald-muted);color:var(--ea-emerald)}.analytics-health-summary.good .health-icon{background:var(--ea-gold-muted);color:var(--ea-gold)}.analytics-health-summary.warning .health-icon{background:var(--ea-red-muted);color:var(--ea-red)}.health-content{flex:1;min-width:0}.health-title{font-size:15px;font-weight:600;color:var(--ea-charcoal);margin-bottom:4px;font-family:var(--ea-font-serif)}.health-details{font-size:13px;color:var(--ea-text-secondary);display:flex;flex-wrap:wrap;gap:6px}.health-up{color:var(--ea-emerald);font-weight:600}.health-down{color:var(--ea-red);font-weight:600}.health-neutral{color:var(--ea-text-secondary)}.analytics-health-summary-below-kpis{margin-top:20px;margin-bottom:4px}.coach-premium{--coach-bg: linear-gradient(180deg, rgba(250, 249, 247, .5) 0%, rgba(245, 243, 239, .3) 100%);--coach-card-bg: #ffffff;--coach-card-border: rgba(232, 229, 224, .8);--coach-shadow: 0 2px 8px rgba(28, 28, 30, .04);--coach-shadow-hover: 0 8px 24px rgba(28, 28, 30, .08);--coach-radius: 12px;--coach-radius-lg: 16px;--coach-accent: #0d9488;--coach-accent-muted: rgba(13, 148, 136, .08);--coach-positive: #059669;--coach-negative: #dc2626;padding:32px 0}.coach-premium-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--ea-border-subtle)}.coach-premium-title{font-size:24px;font-weight:700;letter-spacing:-.02em;color:var(--ea-charcoal);margin:0 0 4px;font-family:var(--ea-font-sans)}.coach-premium-subtitle{font-size:14px;color:var(--ea-text-secondary);margin:0;font-weight:400}.coach-premium-badges{display:flex;gap:8px;align-items:center}.coach-premium-loading{padding:64px 24px;text-align:center;color:var(--ea-text-secondary);font-size:14px}.coach-finance-hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:32px;position:relative}.coach-finance-card{background:var(--coach-card-bg);border:1px solid var(--coach-card-border);border-radius:var(--coach-radius-lg);padding:24px;box-shadow:var(--coach-shadow);transition:box-shadow .2s,transform .2s}.coach-finance-card:hover{box-shadow:var(--coach-shadow-hover)}.coach-finance-profit{border-left:4px solid var(--coach-accent);background:linear-gradient(135deg,var(--coach-card-bg) 0%,var(--coach-accent-muted) 100%)}.coach-finance-gap{border-left:4px solid var(--ea-gold)}.coach-finance-breakeven{border-left:4px solid var(--ea-text-secondary)}.coach-finance-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--ea-text-secondary);margin-bottom:8px}.coach-finance-value{font-size:28px;font-weight:700;letter-spacing:-.02em;color:var(--ea-charcoal)}.coach-finance-value.positive{color:var(--coach-positive)}.coach-finance-value.negative{color:var(--coach-negative)}.coach-finance-meta{font-size:12px;color:var(--ea-text-muted);margin-top:6px}.coach-finance-edit{position:absolute;top:0;right:0;background:none;border:none;font-size:12px;color:var(--ea-text-secondary);cursor:pointer;padding:8px 0}.coach-finance-edit:hover{color:var(--coach-accent)}.coach-finance-setup{background:linear-gradient(135deg,var(--coach-accent-muted) 0%,rgba(255,255,255,.5) 100%);border:1px dashed var(--coach-accent);border-radius:var(--coach-radius);padding:24px 32px;margin-bottom:32px;text-align:center}.coach-finance-setup p{margin:0 0 16px;font-size:14px;color:var(--ea-text-secondary)}.coach-finance-setup-btn{padding:10px 24px;background:var(--coach-accent);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s}.coach-finance-setup-btn:hover{opacity:.9}.coach-finance-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c1c1e66;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.coach-finance-modal-content{background:#fff;border-radius:var(--coach-radius-lg);padding:32px;max-width:420px;width:100%;box-shadow:0 24px 48px #0000001f}.coach-finance-modal-content h3{margin:0 0 8px;font-size:20px;font-weight:600;color:var(--ea-charcoal)}.coach-finance-modal-desc{font-size:13px;color:var(--ea-text-secondary);margin-bottom:24px;line-height:1.5}.coach-finance-form{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.coach-finance-form label{font-size:12px;font-weight:600;color:var(--ea-text-secondary)}.coach-finance-form input{padding:12px 16px;border:1px solid var(--ea-border);border-radius:8px;font-size:16px}.coach-finance-form input:focus{outline:none;border-color:var(--coach-accent)}.coach-finance-modal-actions{display:flex;gap:12px;justify-content:flex-end}.coach-finance-cancel{padding:10px 20px;background:transparent;border:1px solid var(--ea-border);border-radius:8px;font-size:14px;font-weight:500;color:var(--ea-text-secondary);cursor:pointer}.coach-finance-cancel:hover{background:var(--ea-ivory-warm)}.coach-finance-save{padding:10px 24px;background:var(--coach-accent);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}.coach-finance-save:hover:not(:disabled){opacity:.9}.coach-finance-save:disabled{opacity:.6;cursor:not-allowed}.coach-roi-empty{color:var(--ea-text-secondary);font-style:italic;margin:0}.coach-roi-dashboard{padding:4px 0}.coach-roi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--v3-spacing-md);margin-bottom:var(--v3-spacing-md)}.coach-roi-card{padding:12px;background:var(--ea-ivory-warm);border-radius:var(--ea-radius);border:1px solid var(--ea-border-subtle)}.coach-roi-label{font-size:12px;color:var(--ea-text-secondary);margin-bottom:4px}.coach-roi-value{font-size:18px;font-weight:600;color:var(--ea-charcoal)}.coach-roi-top-intent{margin-top:12px}.coach-roi-top-intent .coach-roi-label{margin-bottom:8px}.coach-roi-top-intent ul{list-style:none;margin:0;padding:0}.coach-roi-top-intent li{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--ea-border-subtle)}.coach-roi-intent{font-weight:500}.coach-roi-intent-value{color:var(--ea-emerald)}.coach-roi-meta{font-size:12px;color:var(--ea-text-muted);margin:8px 0 0}.coach-premium .v4-section-card,.coach-premium-card.v4-section-card{border-radius:var(--coach-radius);box-shadow:var(--coach-shadow);border-color:var(--coach-card-border)}.coach-premium .v4-section-card:hover{box-shadow:var(--coach-shadow-hover)}.coach-auto-toggle{margin-bottom:20px;padding:16px;background:var(--v3-surface);border-radius:var(--ea-radius);border:1px solid var(--v3-border)}.coach-summary-body{font-size:15px;line-height:1.7;color:var(--v3-text-primary)}.coach-summary-body p{margin:0 0 8px}.coach-summary-body p:last-child{margin:0}.coach-summary-meta{font-size:12px;color:var(--v3-text-secondary);font-style:italic}.coach-heatmap-section{margin-bottom:24px}.coach-heatmap-title{font-size:16px;font-weight:600;margin-bottom:4px}.coach-heatmap-desc{font-size:12px;color:var(--v3-text-secondary);margin:0 0 12px}.coach-heatmap-table-wrap{overflow-x:auto}.coach-heatmap-table{width:100%;border-collapse:collapse;font-size:12px}.coach-heatmap-th{padding:8px;text-align:left;border-bottom:1px solid var(--v3-border)}.coach-heatmap-th-hour{text-align:center;min-width:50px}.coach-heatmap-td-weekday{padding:8px;font-weight:500;border-right:1px solid var(--v3-border)}.coach-heatmap-td-cell{padding:8px;text-align:center;border:1px solid var(--v3-border-subtle)}.coach-heatmap-cell-value{font-weight:600}.coach-heatmap-cell-sub{font-size:10px;color:var(--v3-text-secondary)}.coach-heatmap-legend{font-size:11px;color:var(--v3-text-secondary);margin-top:8px;display:flex;gap:12px;align-items:center}.coach-heatmap-legend-swatches{display:flex;gap:4px}.coach-heatmap-legend-swatch{width:12px;height:12px;border-radius:2px}.coach-slots-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.coach-slot-card{padding:12px;border:1px solid var(--v3-border);border-radius:6px}.coach-slot-card.dead{background:var(--color-warning-light, #fff3e0)}.coach-slot-card.top{background:var(--color-success-light, #e8f5e9)}.coach-slot-title{font-weight:600;margin-bottom:4px}.coach-slot-desc{font-size:12px;color:var(--v3-text-secondary)}.coach-slot-list{display:flex;flex-direction:column;gap:8px}.coach-slots-subtitle{font-size:16px;font-weight:600;margin-bottom:12px}.coach-seasonality-section{margin-bottom:24px}.coach-seasonality-title{font-size:16px;font-weight:600;margin-bottom:12px}.coach-seasonality-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.coach-seasonality-subtitle{font-size:14px;font-weight:500;margin-bottom:8px}.coach-seasonality-list{display:flex;flex-direction:column;gap:4px}.coach-seasonality-month{padding:8px;border-radius:4px}.coach-seasonality-month.top{background:var(--color-success-light, #e8f5e9)}.coach-seasonality-month.dead{background:var(--color-warning-light, #fff3e0)}.coach-seasonality-empty{font-size:12px;color:var(--v3-text-secondary)}.coach-forecast-section{margin-bottom:24px}.coach-forecast-title{font-size:16px;font-weight:600;margin-bottom:4px}.coach-forecast-desc{font-size:12px;color:var(--v3-text-secondary);margin:0 0 12px}.coach-forecast-chart{display:flex;align-items:flex-end;gap:4px;height:120px;padding:0 4px}.coach-forecast-bar-wrap{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px}.coach-forecast-bar-container{width:100%;position:relative;height:100px}.coach-forecast-bar{position:absolute;bottom:0;left:10%;right:10%;border-radius:3px 3px 0 0;background:var(--ea-emerald);opacity:.8}.coach-forecast-bar-low{left:20%;right:20%;border-radius:2px 2px 0 0}.coach-forecast-day-label{font-size:9px;color:var(--v3-text-secondary)}.coach-forecast-summary{margin-top:12px;padding:12px;background:var(--v4-surface-subtle, #fafbfc);border-radius:var(--ea-radius);font-size:14px}.coach-trends-section{margin-bottom:24px}.coach-trends-title{font-size:16px;font-weight:600;margin-bottom:8px}.coach-trends-days{display:flex;gap:8px;flex-wrap:wrap}.coach-trend-day{padding:8px 12px;border-radius:var(--ea-radius);font-size:12px;text-align:center;flex:1 1 80px}.coach-trend-day.strong{background:var(--color-success-light, #e8f5e9);border:1px solid var(--color-success-light, #c8e6c9)}.coach-trend-day.weak{background:var(--color-error-light, #ffebee);border:1px solid var(--color-error-light, #ffcdd2)}.coach-trend-day.neutral{background:#f5f5f5;border:1px solid #e0e0e0}.coach-trend-day-name{font-weight:600}.coach-trend-day-meta{color:var(--v3-text-secondary)}.coach-churn-section{margin-bottom:24px}.coach-churn-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}.coach-churn-header h3{font-size:16px;font-weight:600;margin:0}.coach-churn-stats{display:flex;gap:12px;margin-bottom:12px;flex-wrap:wrap}.coach-churn-stat{padding:12px;border-radius:var(--ea-radius);flex:1 1 120px;text-align:center}.coach-churn-stat.at-risk{background:var(--color-warning-light, #fff3e0)}.coach-churn-stat.critical{background:var(--color-error-light, #ffebee)}.coach-churn-stat.critical .coach-churn-stat-value{color:var(--color-error, #c62828)}.coach-churn-stat.total{background:var(--color-success-light, #e8f5e9)}.coach-churn-stat-value{font-size:24px;font-weight:700}.coach-churn-stat-label{font-size:12px}.coach-churn-table-wrap{max-height:200px;overflow-y:auto;border:1px solid var(--v3-border);border-radius:var(--ea-radius)}.coach-churn-table{width:100%;border-collapse:collapse;font-size:13px}.coach-churn-table tr{border-bottom:1px solid var(--v3-border)}.coach-churn-th{padding:8px;text-align:left;border-bottom:1px solid var(--v3-border)}.coach-churn-th-right{text-align:right}.coach-churn-th-center{text-align:center}.coach-churn-thead-sticky{position:sticky;top:0;background:var(--ea-surface)}.coach-churn-td{padding:8px}.coach-churn-td-right{text-align:right}.coach-churn-td-center{text-align:center}.coach-churn-urgency-badge{padding:2px 8px;border-radius:10px;font-size:12px;font-weight:600}.coach-churn-urgency-badge.critical{background:var(--color-error-light, #ffebee);color:var(--color-error, #c62828)}.coach-churn-urgency-badge.high{background:var(--color-warning-light, #fff3e0);color:#e65100}.coach-churn-urgency-badge.neutral{background:#f5f5f5;color:#333}.coach-badge-manual{font-size:9px;padding:1px 5px;border-radius:4px;background:var(--color-warning-light, #fff3e0);color:#e65100;font-weight:600}.coach-anomalies-section{margin-bottom:24px}.coach-anomalies-title{font-size:16px;font-weight:600;margin-bottom:8px}.coach-anomalies-list{display:flex;flex-direction:column;gap:8px}.coach-anomaly-item{padding:10px 12px;border-radius:var(--ea-radius);font-size:13px;display:flex;flex-direction:column;gap:4px}.coach-anomaly-item.critical{background:var(--color-error-light, #ffebee);border:1px solid #ffcdd2}.coach-anomaly-item.warning{background:#fff8e1;border:1px solid #fff176}.coach-anomaly-item-row{display:flex;justify-content:space-between;align-items:center}.coach-anomaly-item-meta{font-size:11px;color:var(--v3-text-secondary)}.coach-insights-section{margin-bottom:24px}.coach-insights-title{font-size:16px;font-weight:600;margin-bottom:12px}.coach-insights-list{display:flex;flex-direction:column;gap:12px}.coach-insight-card{padding:16px;border:1px solid var(--v3-border);border-radius:var(--ea-radius);background:var(--v3-bg, #ffffff)}.coach-insight-title{font-weight:600;margin-bottom:8px;font-size:15px}.coach-insight-reason{font-size:13px;color:var(--v3-text-secondary);margin-bottom:8px}.coach-insight-evidence-wrap{margin-bottom:8px}.coach-insight-evidence-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--v3-text-tertiary, #888);margin-bottom:4px}.coach-insight-evidence-item{font-size:12px;color:var(--v3-text-secondary)}.coach-insight-impact{font-size:12px;color:var(--v3-text-secondary);margin-bottom:8px}.coach-insight-actions{display:flex;gap:8px;margin-top:8px}.analytics-coach-content .coach-section-block{margin-bottom:24px}.ai-proof-card.v4-section-card .ai-proof-body{display:flex;flex-direction:column;gap:var(--v4-space-4)}.ai-proof-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--v4-space-3);padding-bottom:var(--v4-space-3);border-bottom:1px solid var(--v4-border-subtle)}.ai-proof-row:last-child{padding-bottom:0;border-bottom:none}.ai-proof-left{flex:1;min-width:0}.ai-proof-left.ai-proof-full{flex:1 1 100%}.ai-proof-label{display:block;font-size:12px;font-weight:600;color:var(--v3-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.ai-proof-value{font-size:15px;font-weight:600;color:var(--v3-text-primary)}.ai-proof-subtext{font-size:13px;color:var(--v3-text-secondary);margin:4px 0 0;line-height:1.35}.ai-proof-chip-wrap{flex-shrink:0;max-width:240px;text-align:right}.ai-proof-reason-chip.v4-pill{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.ai-proof-guardrails-line{font-size:13px;color:var(--v3-text-primary);margin:4px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-proof-guardrails-note{font-size:12px;color:var(--v3-text-muted);margin:6px 0 0}.clv-dashboard{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden}.clv-header{padding:28px;background:linear-gradient(135deg,var(--ea-charcoal, #1c1c1e) 0%,var(--ea-charcoal-soft, #2c2c2e) 100%);color:var(--ea-ivory, #faf9f7)}.clv-header h3{margin:0 0 16px;font-size:18px;font-weight:600}.clv-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.clv-metric-card{background:#ffffff26;border-radius:8px;padding:12px;display:flex;flex-direction:column}.metric-label{font-size:11px;opacity:.9;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:24px;font-weight:700;line-height:1;margin-bottom:2px}.metric-value.highlight{color:#fef3c7;font-size:28px}.metric-sublabel{font-size:11px;opacity:.8}.clv-tabs{display:flex;border-bottom:1px solid #e5e7eb;background:#f9fafb}.clv-tab{flex:1;padding:12px 16px;background:none;border:none;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent}.clv-tab:hover{color:#374151;background:#f3f4f6}.clv-tab.active{color:var(--ea-gold, #b8965a);border-bottom-color:var(--ea-gold, #b8965a);background:var(--ea-surface, white)}.clv-content{padding:24px;min-height:300px}.top-customers-list{display:flex;flex-direction:column;gap:12px}.customer-card{display:flex;align-items:center;gap:16px;padding:16px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb;transition:all .2s}.customer-card:hover{border-color:var(--ea-gold, #b8965a);box-shadow:0 4px 12px var(--ea-gold-muted, rgba(184, 150, 90, .12))}.customer-rank{font-size:18px;font-weight:700;color:var(--ea-gold, #b8965a);min-width:40px;text-align:center}.customer-info{flex:1}.customer-name{font-size:15px;font-weight:600;color:#1f2937;margin-bottom:4px}.customer-meta{font-size:12px;color:#6b7280}.customer-stats{display:flex;gap:24px;text-align:right}.customer-clv .clv-label,.customer-avg .avg-label{display:block;font-size:10px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.customer-clv .clv-value{display:block;font-size:18px;font-weight:700;color:var(--ea-gold, #b8965a);font-variant-numeric:tabular-nums}.customer-avg .avg-value{display:block;font-size:14px;font-weight:600;color:#374151}.cohorts-explanation{display:flex;gap:12px;padding:12px;background:#eff6ff;border-radius:6px;margin-bottom:16px}.cohorts-explanation .info-icon{font-size:20px;flex-shrink:0}.cohorts-explanation p{margin:0;font-size:13px;color:#1e40af;line-height:1.5}.cohorts-table-wrapper{overflow-x:auto}.cohorts-table{width:100%;border-collapse:collapse;font-size:13px}.cohorts-table th{padding:10px 8px;text-align:left;font-weight:600;color:#6b7280;background:#f9fafb;border-bottom:2px solid #e5e7eb;white-space:nowrap}.cohorts-table td{padding:10px 8px;border-bottom:1px solid #e5e7eb}.cohort-month{font-weight:600;color:#374151}.cohort-size{color:#6b7280}.retention-cell{text-align:center}.retention-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-weight:600;color:#fff;font-size:11px}.retention-empty{color:#d1d5db}.empty-state{text-align:center;padding:48px 24px;color:#6b7280}.empty-state span{font-size:48px;display:block;margin-bottom:12px}.empty-state p{margin:0;font-size:14px}@media (max-width: 768px){.clv-metrics-grid{grid-template-columns:repeat(2,1fr)}.customer-card{flex-direction:column;align-items:flex-start}.customer-stats{width:100%;justify-content:space-between}.cohorts-table{font-size:11px}.cohorts-table th,.cohorts-table td{padding:8px 4px}}.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}}.broadcast-page{padding:1rem;max-width:640px;margin:0 auto}.broadcast-preselected-banner{padding:.75rem 1rem;margin-bottom:1rem;background:var(--v3-bg-secondary, #f0f9ff);border:1px solid var(--v3-border, #bae6fd);border-radius:8px;font-size:.9rem;color:var(--v3-text-primary, #0c4a6e)}.broadcast-form label{display:block;margin-bottom:1rem}.broadcast-form input[type=text],.broadcast-form textarea{width:100%;padding:.5rem;margin-top:.25rem;border:1px solid var(--color-border, #ddd);border-radius:6px;font-size:1rem}.broadcast-form textarea{resize:vertical;min-height:80px}.broadcast-options{margin-top:1rem}.broadcast-option{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.broadcast-option-disabled{opacity:.6}.broadcast-target-badge{padding:.5rem .75rem;background:var(--v3-bg-secondary, #f0f9ff);border:1px solid var(--v3-border, #bae6fd);border-radius:6px;font-size:.9rem;color:var(--v3-text-primary, #0c4a6e)}.broadcast-export-note{font-size:.9rem;color:var(--color-text-secondary, #555);margin-bottom:1rem}.broadcast-export-actions{display:flex;gap:.75rem;margin-bottom:.75rem}.broadcast-export-textarea{width:100%;min-height:120px;padding:.5rem;font-family:inherit;font-size:.9rem;border:1px solid var(--color-border, #ddd);border-radius:6px;resize:vertical;background:var(--color-bg-secondary, #f9f9f9)}.broadcast-email-count{font-size:.9rem;color:var(--color-text-secondary, #555);margin-top:.5rem;margin-bottom:.5rem}.broadcast-preview{padding:.5rem 0}.broadcast-preview-card{background:var(--color-bg-secondary, #f5f5f5);border-radius:8px;padding:1rem;border-left:4px solid var(--color-primary, #333)}.broadcast-preview-title{font-weight:600;margin-bottom:.25rem}.broadcast-preview-body{color:var(--color-text-secondary, #555);font-size:.95rem}.broadcast-preview-url{margin-top:.5rem;font-size:.85rem;color:var(--color-muted, #888)}.broadcast-actions{display:flex;gap:1rem;flex-wrap:wrap}.broadcast-dry-run-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.broadcast-dry-run-label{display:flex;align-items:center;gap:.5rem;font-size:.95rem}.broadcast-dry-run-input{width:4rem;padding:.35rem .5rem;border:1px solid var(--color-border, #ddd);border-radius:6px;font-size:1rem}.broadcast-dry-run-result{margin-top:1rem;padding:.75rem;background:var(--color-bg-secondary, #f5f5f5);border-radius:6px;font-size:.9rem}.broadcast-dry-run-sample{color:var(--color-text-secondary, #555)}.broadcast-status{margin-bottom:1rem}.broadcast-progress-bar{height:8px;background:var(--color-bg-secondary, #eee);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.broadcast-progress-fill{height:100%;background:var(--color-primary, #333);transition:width .3s ease}.broadcast-totals{font-size:.9rem;color:var(--color-text-secondary, #555)}.broadcast-status-badge{display:inline-block;margin-top:.5rem;padding:.2rem .5rem;border-radius:4px;font-size:.8rem;text-transform:uppercase;background:var(--color-bg-secondary, #eee)}.broadcast-errors{margin-top:1rem;font-size:.9rem}.broadcast-errors ul{margin:.5rem 0 0;padding-left:1.25rem;max-height:200px;overflow-y:auto}.broadcast-errors li{margin-bottom:.25rem;word-break:break-word}.broadcast-no-recipients-hint{margin-top:.5rem;font-size:.9rem;color:var(--color-text-secondary, #555)}.broadcast-recipients-loading,.broadcast-recipients-error,.broadcast-recipients-empty{margin-top:1rem;font-size:.9rem;color:var(--color-text-secondary, #555)}.broadcast-recipients-table-wrap{margin-top:1rem}.broadcast-recipients-table{width:100%;border-collapse:collapse;font-size:.9rem}.broadcast-recipients-table th,.broadcast-recipients-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid var(--color-border, #eee)}.broadcast-recipients-table th{font-weight:600;color:var(--color-text-secondary, #555)}.broadcast-storico-table-wrap{margin-top:.5rem;overflow-x:auto}.broadcast-storico-table{width:100%;border-collapse:collapse;font-size:.9rem}.broadcast-storico-table th,.broadcast-storico-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid var(--color-border, #eee)}.broadcast-storico-table th{font-weight:600;color:var(--color-text-secondary, #555)}.broadcast-status-done{background:#dcfce7;color:#166534}.broadcast-status-failed{background:#fee2e2;color:#991b1b}.broadcast-status-sending,.broadcast-status-queued{background:#fef3c7;color:#92400e}: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;--v3-shadow-none: none;--v3-shadow-light: 0 1px 3px rgba(0, 0, 0, .04);--v3-shadow-medium: 0 2px 8px rgba(0, 0, 0, .06);--v3-shadow-elevated: 0 4px 16px rgba(0, 0, 0, .08);--v3-gold: #d4af37;--v3-gold-light: rgba(212, 175, 55, .1);--v3-charcoal: #2c2c2c;--v3-cream: #fdfbf7}#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}.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:#fafafa}.client-tabs-content{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-bottom:calc(80px + env(safe-area-inset-bottom,0px));min-height:0;position:relative}.client-tabs-content>*{animation:tabFadeIn .15s ease-out}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.client-tabs-bar{display:flex;justify-content:space-around;align-items:center;background:#fff;border-top:none;padding:8px 0 4px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));box-shadow:0 -4px 20px #0000000f;position:fixed;bottom:0;left:0;right:0;z-index:100;min-height:64px}.client-tab-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 16px;border:none;background:transparent;cursor:pointer;color:#b0b0b0;font-size:10px;position:relative;transition:color .15s ease,transform .1s ease;min-width:64px;min-height:48px;-webkit-tap-highlight-color:transparent}.client-tab-item:active{transform:scale(.95)}.client-tab-item.active{color:var(--color-primary, #1a1a1a)}.client-tab-icon{font-size:22px;line-height:1}.client-tab-label{font-size:10px;font-weight:600;line-height:1;letter-spacing:.02em}.client-tab-badge{position:absolute;top:4px;right:8px;background:var(--color-primary, #1a1a1a);color:var(--color-text-on-primary, #ffffff);font-size:9px;font-weight:700;padding:2px 5px;border-radius:10px;min-width:16px;text-align:center;line-height:1.2}@media (max-width: 640px){.client-tabs-bar{padding:8px 0 4px}.client-tab-item{padding:8px 12px;min-width:56px}.client-tab-icon{font-size:20px}.client-tab-label{font-size:9px}}@media (min-width: 641px) and (max-width: 1024px){.client-tabs-bar{padding:10px 0 6px}.client-tab-item{padding:10px 20px;min-width:72px}.client-tab-icon{font-size:24px}.client-tab-label{font-size:11px}}.install-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--v4-space-4);background:var(--v4-surface-default, #ffffff)}.install-gate-container{max-width:600px;width:100%;background:var(--v4-surface-elevated, #ffffff);border-radius:var(--v4-border-radius-lg, 12px);padding:var(--v4-space-6, 24px);box-shadow:var(--v4-shadow-md, 0 4px 6px rgba(0, 0, 0, .1))}.install-gate-header{text-align:center;margin-bottom:var(--v4-space-6, 24px)}.install-gate-icon{font-size:64px;margin-bottom:var(--v4-space-4, 16px)}.install-gate-title{font-size:var(--v4-font-size-xl, 24px);font-weight:var(--v3-font-weight-semibold, 600);color:var(--v4-text-primary, #000000);margin:0 0 var(--v4-space-2, 8px) 0}.install-gate-subtitle{font-size:var(--v4-font-size-base, 16px);color:var(--v4-text-secondary, #666666);margin:0;line-height:1.5}.install-gate-steps{display:flex;flex-direction:column;gap:var(--v4-space-4, 16px);margin-bottom:var(--v4-space-6, 24px)}.install-gate-step{display:flex;gap:var(--v4-space-4, 16px);align-items:flex-start;padding:var(--v4-space-4, 16px);background:var(--v4-surface-default, #f5f5f5);border-radius:var(--v4-border-radius-md, 8px);border:1px solid var(--v4-border-default, #e0e0e0)}.install-gate-step-number{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--v4-surface-primary, #007AFF);color:var(--v4-text-on-primary, #ffffff);border-radius:50%;font-weight:var(--v3-font-weight-semibold, 600);font-size:var(--v4-font-size-sm, 14px)}.install-gate-step-content{flex:1}.install-gate-step-icon{font-size:24px;margin-bottom:var(--v4-space-1, 4px)}.install-gate-step-title{font-size:var(--v4-font-size-base, 16px);font-weight:var(--v3-font-weight-semibold, 600);color:var(--v4-text-primary, #000000);margin:0 0 var(--v4-space-1, 4px) 0}.install-gate-step-description{font-size:var(--v4-font-size-sm, 14px);color:var(--v4-text-secondary, #666666);margin:0;line-height:1.5}.install-gate-actions{display:flex;flex-direction:column;gap:var(--v4-space-3, 12px);margin-bottom:var(--v4-space-4, 16px)}.install-gate-button{width:100%;padding:var(--v4-space-3, 12px) var(--v4-space-4, 16px);border:none;border-radius:var(--v4-border-radius-md, 8px);font-size:var(--v4-font-size-base, 16px);font-weight:var(--v3-font-weight-semibold, 600);cursor:pointer;transition:all var(--v4-transition-fast, .2s)}.install-gate-button-primary{background:var(--v4-surface-primary, #007AFF);color:var(--v4-text-on-primary, #ffffff)}.install-gate-button-primary:hover:not(:disabled){background:var(--v4-surface-primary-hover, #0056b3);transform:translateY(-1px);box-shadow:var(--v4-shadow-sm, 0 2px 4px rgba(0, 0, 0, .1))}.install-gate-button-primary:disabled{opacity:.6;cursor:not-allowed}.install-gate-link{text-align:center;color:var(--v4-text-secondary, #666666);text-decoration:none;font-size:var(--v4-font-size-sm, 14px);padding:var(--v4-space-2, 8px);transition:color var(--v4-transition-fast, .2s)}.install-gate-link:hover{color:var(--v4-text-primary, #000000);text-decoration:underline}.install-gate-footer{text-align:center;padding-top:var(--v4-space-4, 16px);border-top:1px solid var(--v4-border-default, #e0e0e0)}.install-gate-footer-text{font-size:var(--v4-font-size-sm, 14px);color:var(--v4-text-secondary, #666666);margin:0;line-height:1.5}@media (max-width: 640px){.install-gate{padding:var(--v4-space-3, 12px)}.install-gate-container{padding:var(--v4-space-4, 16px)}.install-gate-title{font-size:var(--v4-font-size-lg, 20px)}}: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}button[data-variant=primary],.btn-primary,.cta-primary{background-color:var(--color-primary)!important;color:var(--color-text-on-primary, #ffffff)!important;border-color:var(--color-primary)!important}[data-active=true],[aria-selected=true]{color:var(--color-primary);border-color:var(--color-primary)}a:not([class]){color:var(--color-primary)}*:focus-visible{outline-color:var(--color-primary)}[data-tab-active=true]{color:var(--color-primary)!important}.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}
