@import url(https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,500;8..60,600&display=swap);@import url(https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=IBM+Plex+Mono:wght@400;500&display=swap);.site-legal-links{font-size:.8125rem;margin-top:1.5rem;padding:0 12px 1.5rem;text-align:center}.site-legal-links a{color:#3d5a80;font-weight:500;text-decoration:none}.site-legal-links a:hover{text-decoration:underline}.site-legal-links__sep{color:#b0b8c8;margin:0 .5rem}.site-legal-links--dark{margin-top:1rem;padding-bottom:0}.site-legal-links--dark a{color:#b8c5d9}.site-legal-links--dark .site-legal-links__sep{color:#6b7280}.site-legal-links--pageFooter{margin-top:0;padding:14px 16px calc(16px + env(safe-area-inset-bottom, 0px))}.not-found-page{align-items:center;background:#f8f9fa;box-sizing:border-box;display:flex;justify-content:center;min-height:100dvh;padding:24px 16px}.not-found-card{background:#fff;border-radius:16px;box-shadow:0 2px 16px #00000014;max-width:420px;padding:40px 24px;text-align:center;width:100%}.not-found-card--business{max-width:440px}.not-found-icon{font-size:56px;line-height:1;margin-bottom:20px}.not-found-title{color:#1a1a1a;font-size:1.5rem;font-weight:700;margin:0 0 12px}.not-found-body{color:#555;font-size:.95rem;line-height:1.6;margin:0 0 32px}.not-found-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.not-found-btn{border-radius:8px;display:inline-block;font-size:.95rem;font-weight:600;padding:12px 28px;text-decoration:none;transition:opacity .15s}.not-found-btn:hover{opacity:.85}.not-found-btn--primary{background:#2196f3;color:#fff}@media (min-width:768px){.not-found-page{padding:48px 24px}.not-found-card{max-width:480px;padding:56px 40px}.not-found-card--business{max-width:520px}.not-found-title{font-size:1.75rem}.not-found-body{font-size:1.05rem}}@media (max-width:480px){.not-found-card{padding:36px 20px}.not-found-title{font-size:1.3rem}}.root-page{background-color:#fff;display:flex;flex-direction:column;font-family:Arial,sans-serif;min-height:100vh}.root-page__main{box-sizing:border-box;flex:1 1 auto;margin:0 auto;max-width:1100px;padding:20px 16px 32px;text-align:center;width:100%}.root-page__brand{flex-direction:row;gap:12px;margin-bottom:12px}.root-page__brand,.root-page__logo{align-items:center;display:flex;justify-content:center}.root-page__logo{background-color:#007bff;border-radius:50%;color:#fff;flex-shrink:0;font-size:20px;font-weight:700;height:44px;width:44px}.root-page__title{color:#222;font-size:1.45rem;line-height:1.2;margin:0}.root-page__intro{color:#666;font-size:.95rem;line-height:1.45;margin:0 0 20px}.root-page__search{margin:0 auto 16px;max-width:100%;text-align:left}.root-page__search-label{color:#6b7280;display:block;font-size:.75rem;font-weight:600;letter-spacing:.04em;margin-bottom:6px;text-transform:uppercase}.root-page__search-field{position:relative}.root-page__search-field:before{border:2px solid #9aa3af;border-radius:50%;box-sizing:border-box;content:"";height:14px;left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:14px}.root-page__search-field:after{background:#9aa3af;content:"";height:2px;left:24px;pointer-events:none;position:absolute;top:calc(50% + 5px);transform:rotate(45deg);width:7px}.root-page__search-input{background:#f3f4f6;border:1px solid #0000;border-radius:10px;box-sizing:border-box;color:#1f2937;font-size:.95rem;outline:none;padding:10px 12px 10px 36px;transition:background .15s,border-color .15s,box-shadow .15s;width:100%}.root-page__search-input::placeholder{color:#9ca3af}.root-page__search-input:hover{background:#eef0f3}.root-page__search-input:focus{background:#fff;border-color:#007bff;box-shadow:0 0 0 3px #007bff2e}.root-page__grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr;margin:0 auto}.root-page__card{background-color:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 3px #0000000f;padding:12px 14px;text-align:center;transition:transform .15s,box-shadow .15s}.root-page__card-name{color:#222;font-size:1rem;font-weight:600;line-height:1.25;margin:0 0 8px}.root-page__card-btn{background-color:#007bff;border-radius:6px;color:#fff;display:inline-block;font-size:.85rem;font-weight:500;line-height:1.2;padding:7px 14px;text-decoration:none;transition:background-color .15s}.root-page__card-btn:hover{background-color:#0056b3}.root-page__error{background-color:#ffebee;border:1px solid #ffcdd2;border-radius:8px;color:#c62828;font-size:.9rem;margin-bottom:16px;padding:12px}.root-page__error button{background-color:#c62828;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;margin-left:8px;padding:4px 8px}.root-page__empty,.root-page__loading{color:#666;font-size:1rem;padding:24px 0}.root-page__footer{background-color:#f8f9fa;border-top:1px solid #e8ecf2;flex-shrink:0;width:100%}@media (min-width:768px){.root-page__main{padding:40px 24px 48px}.root-page__brand{flex-direction:column;gap:16px;margin-bottom:16px}.root-page__logo{font-size:28px;height:72px;width:72px}.root-page__title{font-size:2rem}.root-page__intro{font-size:1.05rem;margin-bottom:28px}.root-page__search{margin-bottom:28px;max-width:440px}.root-page__search-label{font-size:.8rem}.root-page__search-input{font-size:1rem;padding:12px 14px 12px 40px}.root-page__grid{gap:20px;grid-template-columns:repeat(2,minmax(0,1fr));max-width:920px}.root-page__card{border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:28px 24px}.root-page__card:hover{box-shadow:0 4px 15px #00000026;transform:translateY(-2px)}.root-page__card-name{font-size:1.25rem;margin-bottom:18px}.root-page__card-btn{border-radius:8px;font-size:1rem;padding:12px 24px}}.tenant-home{background-color:#f8f9fa;display:flex;flex-direction:column;font-family:Arial,sans-serif;min-height:100vh;min-height:100dvh}.tenant-home__body{flex:1 1 auto}.tenant-home__header{align-items:center;background:#fff;display:flex;justify-content:space-between;padding:12px 16px}.tenant-home__header--classic{box-shadow:0 2px 4px #0000001a}.tenant-home__header--preview{border-bottom:1px solid #e8ecf2;box-shadow:0 1px 0 #00000005;padding:14px 18px}.tenant-home__brand{align-items:center;display:flex;gap:12px;min-width:0}.tenant-home__logo,.tenant-home__logo--preview{border-radius:8px;flex-shrink:0;height:44px;overflow:hidden;width:44px}.tenant-home__logo--preview{border-radius:50%;box-shadow:0 0 0 2px #fff,0 0 0 3px #e5e7eb;height:48px;width:48px}.tenant-home__logo img,.tenant-home__logo--preview img{display:block;height:100%;object-fit:cover;width:100%}.tenant-home__logo-fallback{align-items:center;background:linear-gradient(145deg,#3b82f6,#1d4ed8);border-radius:50%;box-shadow:0 0 0 2px #fff,0 0 0 3px #bfdbfe;color:#fff;display:flex;flex-shrink:0;font-size:1.15rem;font-weight:700;height:48px;justify-content:center;width:48px}.tenant-home__brand-text{min-width:0;text-align:left}.tenant-home__name{color:#111827;font-size:1.15rem;font-weight:700;letter-spacing:-.01em;line-height:1.25}.tenant-home__name--classic{color:#333;font-size:1.3rem;margin-bottom:2px}.tenant-home__tagline{color:#6b7280;font-size:.8rem;margin-top:2px}.tenant-home__staff-login{border-radius:4px;color:#999;flex-shrink:0;font-size:.85rem;padding:5px 10px;text-decoration:none;transition:color .15s}.tenant-home__staff-login:hover{color:#666}.tenant-home__staff-login--pill{background:#fff;border:1px solid #d1d5db;border-radius:999px;color:#374151;font-size:.8rem;font-weight:600;padding:8px 14px;transition:background .15s,border-color .15s,color .15s}.tenant-home__staff-login--pill:hover{background:#f9fafb;border-color:#9ca3af;color:#111827}.tenant-home__about{background:#fff;padding:32px 16px 40px}.tenant-home__about-inner{box-sizing:border-box;margin:0 auto;max-width:100%;padding:0 4px;text-align:center;width:100%}.tenant-home__about-photo{border-radius:8px;height:100px;margin:0 auto 24px;overflow:hidden;width:150px}.tenant-home__about-photo img{display:block;height:100%;object-fit:cover;width:100%}.tenant-home__about-description{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:24px;padding:20px}.tenant-home__about-description h3{color:#333;font-size:1.2rem;margin:0 0 12px}.tenant-home__about-description p{color:#666;font-size:1rem;line-height:1.5;margin:0}.tenant-home__info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr}.tenant-home__info-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:15px;text-align:center}.tenant-home__info-card h4{color:#333;font-size:1rem;font-weight:700;margin:8px 0}.tenant-home__info-card>p{color:#666;font-size:.9rem;margin:0}.tenant-home__hours-list{color:#666;display:flex;flex-direction:column;font-size:.85rem;gap:4px;text-align:left}.tenant-home__hours-row{border:1px solid #0000;border-radius:4px;color:#666;display:flex;justify-content:space-between;padding:4px 8px}.tenant-home__hours-row--today{background:#e3f2fd;border-color:#bbdefb;color:#1976d2;font-weight:600}.tenant-home__hours-row--closed:not(.tenant-home__hours-row--today){color:#999}.tenant-home__footer{background:#333;color:#fff;flex-shrink:0;margin-top:auto;padding:30px 20px;text-align:center}.tenant-home__footer-inner{margin:0 auto;max-width:800px}.tenant-home__footer-name{font-size:1rem;font-weight:500;margin:0 0 8px}.tenant-home__footer-meta{color:#ccc;font-size:.85rem;margin:0}@media (min-width:768px){.tenant-home__header{padding:16px 28px}.tenant-home__header--preview{padding:18px 32px}.tenant-home__logo--preview,.tenant-home__logo-fallback{height:56px;width:56px}.tenant-home__name{font-size:1.35rem}.tenant-home__staff-login--pill{font-size:.85rem;padding:9px 16px}.tenant-home__about{padding:40px 20px 48px}.tenant-home__about-inner{max-width:none;padding:0;width:100%}.tenant-home__info-grid{align-items:stretch;display:flex;gap:24px;justify-content:space-between}.tenant-home__info-card{display:flex;flex:1 1;flex-direction:column;justify-content:center;min-width:0;padding:20px 22px}}.legal-doc{background:#f8f9fa;color:#111827;display:flex;flex-direction:column;font-family:Arial,sans-serif;min-height:100vh;min-height:100dvh}.legal-doc__inner{box-sizing:border-box;flex:1 1 auto;margin:0 auto;max-width:42rem;padding:1.25rem 1rem 2.5rem;width:100%}.legal-doc__nav{margin-bottom:1.5rem}.legal-doc__nav a{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:999px;color:#374151;display:inline-flex;font-size:.8rem;font-weight:600;gap:6px;padding:8px 14px;text-decoration:none;transition:background .15s,border-color .15s,color .15s}.legal-doc__nav a:hover{background:#f9fafb;border-color:#9ca3af;color:#111827;text-decoration:none}.legal-doc__title{color:#111827;font-size:1.5rem;font-weight:700;letter-spacing:-.02em;line-height:1.25;margin:0 0 .5rem}.legal-doc__meta{color:#6b7280;font-size:.8rem;margin:0 0 1.25rem}.legal-doc__card{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:1.5rem 1.25rem 1.75rem}@media (min-width:640px){.legal-doc__inner{padding:2rem 1.5rem 3.5rem}.legal-doc__card{padding:2rem 2.25rem 2.5rem}.legal-doc__title{font-size:1.85rem}}.legal-doc__card h2{color:#111827;font-size:1.05rem;font-weight:700;margin:1.75rem 0 .5rem}.legal-doc__card h2:first-child{margin-top:0}.legal-doc__card li,.legal-doc__card p{color:#374151;font-size:.9375rem;line-height:1.65;margin:0 0 .875rem}.legal-doc__card ul{margin:0 0 1rem;padding-left:1.25rem}.legal-doc__card li{margin-bottom:.5rem}.legal-doc__card a{color:#1d4ed8;word-break:break-word}.legal-doc__card a:hover{text-decoration:underline}.legal-doc__attribution{background:#f8fafc;border:1px solid #e8ecf2;border-left:3px solid #3b82f6;border-radius:0 8px 8px 0;color:#374151!important;font-size:.9rem;line-height:1.55;margin:0 0 1.25rem!important;padding:.875rem 1rem}.legal-doc__footer-links{border-top:1px solid #e8ecf2;color:#6b7280;font-size:.85rem;margin-top:auto;padding:1.25rem 0 .25rem;text-align:center}.legal-doc__footer-links a{color:#4b5563;font-weight:500;text-decoration:none}.legal-doc__footer-links a:hover{color:#111827;text-decoration:underline}.legal-doc__footer-links span{color:#b0b8c8;margin:0 .5rem}.appointment-header{background:#fff;border-bottom:1px solid #e8ecf2;box-shadow:0 1px 0 #00000005;padding:14px 18px;position:sticky;top:0;z-index:40}.appointment-header__inner{align-items:center;display:flex;gap:12px;justify-content:space-between;margin:0 auto;max-width:1100px}.appointment-header__brand{align-items:center;display:flex;gap:12px;min-width:0}.appointment-header__logo{border-radius:50%;box-shadow:0 0 0 2px #fff,0 0 0 3px #e5e7eb;flex-shrink:0;height:44px;overflow:hidden;width:44px}.appointment-header__logo img{display:block;height:100%;object-fit:cover;width:100%}.appointment-header__logo-fallback{align-items:center;background:linear-gradient(145deg,#3b82f6,#1d4ed8);border-radius:50%;box-shadow:0 0 0 2px #fff,0 0 0 3px #bfdbfe;color:#fff;display:flex;flex-shrink:0;font-size:1.1rem;font-weight:700;height:44px;justify-content:center;width:44px}.appointment-header__text{min-width:0;text-align:left}.appointment-header__business{color:#111827;font-size:1.05rem;font-weight:700;letter-spacing:-.01em;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-header__title{color:#6b7280;font-size:.8rem;font-weight:500;line-height:1.3;margin:2px 0 0}.appointment-header__home{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:999px;color:#374151;display:inline-flex;flex-shrink:0;font-size:.8rem;font-weight:600;gap:6px;padding:8px 14px;text-decoration:none;transition:background .15s,border-color .15s,color .15s}.appointment-header__home:hover{background:#f9fafb;border-color:#9ca3af;color:#111827}.appointment-header__home-chevron{font-size:.85rem;line-height:1;opacity:.75}@media (min-width:768px){.appointment-header{padding:16px 28px}.appointment-header__logo,.appointment-header__logo-fallback{height:48px;width:48px}.appointment-header__logo-fallback{font-size:1.15rem}.appointment-header__business{font-size:1.2rem}.appointment-header__title{font-size:.9rem}.appointment-header__home{font-size:.85rem;padding:9px 16px}}@media (min-width:1100px){.appointment-header{padding:18px 40px}}.loading-spinner-container{align-items:center;color:#666;display:flex;font-size:1.1rem;height:100vh;justify-content:center}.loading-message{padding:20px}.active-filters{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:16px;padding:16px 20px}.active-filters-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.active-filters-title{color:#222;font-size:1.05rem;font-weight:700;margin:0}.clear-filters-btn{background:none;border:1px solid #dc3545;border-radius:4px;color:#dc3545;cursor:pointer;font-size:.8rem;padding:4px 8px;transition:all .2s}.clear-filters-btn:hover{background-color:#dc3545;color:#fff}.filters-list{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.filter-tag{background-color:#007bff;border-radius:12px;color:#fff;font-size:.8rem;font-weight:500;padding:4px 8px}.no-filters{color:#999;font-size:.9rem;font-style:italic}@media (min-width:768px){.active-filters-title{font-size:1.35rem}}.staff-selector{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:12px;padding:12px 16px}.staff-selector-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.staff-selector-title{color:#222;font-size:1.05rem;font-weight:700;margin:0}.any-available-button{background-color:#fff;border:2px solid #e9ecef;border-radius:6px;color:#333;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:500;height:auto;min-height:28px;padding:4px 16px;transition:all .2s;white-space:nowrap}.any-available-button:hover{background-color:#f8f9fa;border-color:#007bff}.any-available-button.selected{background-color:#e6f0ff;border-color:#007bff;box-shadow:0 0 8px #007bff33;color:#007bff}.staff-selector--booking .staff-scroll-container{-webkit-overflow-scrolling:touch;--staff-card-height:128px;overflow-x:auto;overflow-y:hidden;padding-bottom:8px;padding-top:6px;scrollbar-width:thin}.staff-selector--booking .staff-list{grid-gap:0;grid-row-gap:8px;grid-column-gap:10px;align-items:start;column-gap:10px;display:grid;flex-direction:row;gap:0;grid-auto-columns:clamp(90px,calc(33.33333% - 6.66667px),110px);grid-auto-flow:column;grid-template-rows:repeat(2,auto);justify-items:stretch;list-style:none;margin:0;padding:0;row-gap:8px;width:100%}.staff-selector--booking .staff-card{align-items:center!important;background-color:#fff!important;border:2px solid #e9ecef!important;border-radius:6px!important;box-sizing:border-box!important;cursor:pointer;display:grid!important;flex-shrink:0!important;grid-template-rows:1fr 1fr 1fr;height:var(--staff-card-height)!important;min-width:0!important;overflow:hidden!important;padding:6px!important;text-align:center!important;transition:all .2s;width:100%!important}.staff-selector--booking .staff-card:hover{background-color:#f8f9fa;border-color:#007bff}.staff-selector--booking .staff-card.selected{background-color:#e6f0ff!important;border:2px solid #007bff!important;box-shadow:0 0 8px #007bff33!important;transition:background .2s,border .2s!important}.staff-selector--booking .staff-avatar{align-items:center!important;background-color:#dee2e6!important;border-radius:50%!important;color:#6c757d!important;display:flex!important;flex-shrink:0!important;font-size:.85rem!important;grid-row:1;height:36px!important;justify-content:center!important;justify-self:center!important;width:36px!important}.staff-selector--booking .staff-avatar-img{border-radius:50%;height:100%;object-fit:cover;width:100%}.staff-selector--booking .staff-name{color:#333!important;font-size:.82rem!important;font-weight:600!important;grid-row:2;margin:0!important}.staff-selector--booking .staff-name,.staff-selector--booking .staff-role{-webkit-line-clamp:2;-webkit-box-orient:vertical;align-self:center!important;display:-webkit-box!important;line-height:1.15!important;overflow:hidden!important;overflow-wrap:anywhere!important;padding:0!important;white-space:normal!important;word-break:break-word!important}.staff-selector--booking .staff-role{background-color:initial!important;color:#666!important;font-size:.7rem!important;grid-row:3;margin-top:0!important}.staff-selector--booking .no-staff-message{color:#666;font-size:.8rem;font-style:italic;grid-column:1/-1;min-width:200px;padding:16px;text-align:center}.staff-selector--booking .scroll-hint{color:#999;font-size:.7rem;margin-top:4px;text-align:center}.staff-selector--booking .staff-unavailable-note{-webkit-line-clamp:2;-webkit-box-orient:vertical;align-self:center!important;background-color:initial!important;color:#6b7280!important;display:-webkit-box!important;font-size:.65rem!important;font-weight:600!important;grid-row:3;line-height:1.2!important;margin:0!important;overflow:hidden!important;overflow-wrap:anywhere!important;padding:0 2px!important;white-space:normal!important;word-break:break-word!important}.staff-selector--booking .staff-card--unavailable{background-color:#f3f4f6!important;border-color:#d1d5db!important;border-style:dashed!important;box-shadow:none!important;cursor:not-allowed!important;filter:none;opacity:1;pointer-events:none}.staff-selector--booking .staff-card--unavailable:hover{background-color:#f3f4f6!important;border-color:#d1d5db!important}.staff-selector--booking .staff-card--unavailable .staff-avatar{background-color:#e5e7eb!important;opacity:.75!important}.staff-selector--booking .staff-card--unavailable .staff-name{color:#4b5563!important;font-weight:600!important}.staff-selector--booking .staff-card--unavailable .staff-role,.staff-selector--booking .staff-card--unavailable .staff-unavailable-note{color:#6b7280!important}.selection-collapsed{align-items:center;background:#f0f7ff;border:1px solid #cfe2ff;border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:12px 14px}.selection-collapsed__info{align-items:flex-start;display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}.selection-collapsed__label{color:#6b7280;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.selection-collapsed__value{color:#111827;font-size:.95rem;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selection-collapsed__change{background:#fff;border:1px solid #007bff;border-radius:999px;color:#007bff;cursor:pointer;flex-shrink:0;font-size:.8rem;font-weight:600;padding:7px 14px;transition:background .15s,color .15s}.selection-collapsed__change:hover{background:#007bff;color:#fff}.staff-selector--collapsed{padding-bottom:14px}@media (min-width:768px){.staff-selector{padding:18px 22px}.staff-selector--booking .staff-scroll-container{--staff-card-height:148px}.staff-selector--booking .staff-list{column-gap:12px;grid-auto-columns:clamp(118px,calc(20% - 8px),148px);row-gap:12px}.staff-selector--booking .staff-card{padding:8px 6px!important}.staff-selector--booking .staff-avatar{font-size:1rem!important;height:48px!important;width:48px!important}.staff-selector--booking .staff-name{font-size:.9rem!important}.staff-selector--booking .staff-role{font-size:.75rem!important}.staff-selector-title{font-size:1.35rem}.any-available-button{font-size:.95rem;min-height:36px;padding:8px 18px}.selection-collapsed{padding:16px 18px}.selection-collapsed__value{font-size:1.1rem}.selection-collapsed__change{font-size:.9rem;padding:9px 18px}.staff-selector--booking .staff-unavailable-note{font-size:.72rem!important}}.service-selector{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:12px;padding:12px 16px}.service-selector-title{color:#222;font-size:1.05rem;font-weight:700;margin:0 0 10px}.service-selector-title--inline{flex:1 1;margin:0;min-width:0;text-align:left}.category-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.category-card{align-items:center;background-color:#fff;border:2px solid #e9ecef;border-radius:6px;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;height:auto;justify-content:center;min-height:52px;padding:8px 12px;text-align:center;transition:background-color .2s,border-color .2s}.category-card:hover{background-color:#f8f9fa;border-color:#f57c00}.category-name{color:#333;font-size:.75rem;font-weight:500;line-height:1.25;overflow-wrap:anywhere;word-break:break-word}.service-header{align-items:center;display:flex;flex-wrap:nowrap;gap:12px;margin-bottom:10px}.back-button{background:#fff;border:1px solid #d1d5db;border-radius:999px;box-shadow:none;color:#374151;flex-shrink:0;font-size:.8rem;font-weight:600;gap:4px;padding:7px 12px;transition:background .15s,border-color .15s}.back-button,.back-button:active,.back-button:focus,.back-button:hover{text-decoration:none!important}.back-button:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#111827}.service-grid{grid-gap:8px;align-items:stretch;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{align-items:center;background-color:#fff;border:2px solid #e9ecef;border-radius:6px;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;height:auto;justify-content:center;min-height:52px;overflow:hidden;padding:8px 14px;text-align:center;transition:background-color .2s,border-color .2s}.service-card.selected,.service-card:hover{background-color:#f8fff8;border-color:#28a745}.service-name{color:#333;font-size:.8rem!important;font-weight:500!important;line-height:1.25!important;margin:0!important;overflow-wrap:anywhere;text-align:center;word-break:break-word}.service-card .service-description,.service-card .service-duration{display:none}.category-card.category-card--unavailable,.service-card.service-card--unavailable{background-color:#f3f4f6;border:2px dashed #d1d5db;cursor:not-allowed;gap:2px;padding:8px 10px;pointer-events:none}.category-card.category-card--unavailable:hover,.service-card.service-card--unavailable:hover{background-color:#f3f4f6;border:2px dashed #d1d5db}.category-card.category-card--unavailable .category-name,.service-card.service-card--unavailable .service-name{color:#4b5563}.service-unavailable-note{color:#6b7280;font-size:.62rem;font-weight:600;line-height:1.2;overflow-wrap:anywhere;word-break:break-word}.no-items-message{color:#666;font-size:.8rem;font-style:italic;grid-column:1/-1;padding:16px;text-align:center}.service-selector .selection-collapsed{align-items:center;background:#f0f7ff;border:1px solid #cfe2ff;border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:12px 14px}.service-selector .selection-collapsed__info{align-items:flex-start;display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}.service-selector .selection-collapsed__label{color:#6b7280;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.service-selector .selection-collapsed__value{color:#111827;font-size:.95rem;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.service-selector .selection-collapsed__change{background:#fff;border:1px solid #007bff;border-radius:999px;color:#007bff;cursor:pointer;flex-shrink:0;font-size:.8rem;font-weight:600;padding:7px 14px;transition:background .15s,color .15s}.service-selector .selection-collapsed__change:hover{background:#007bff;color:#fff}@media (min-width:768px){.service-selector{padding:18px 22px}.service-selector-title{font-size:1.35rem}.category-grid{gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.category-card,.service-card{min-height:60px;padding:10px 16px}.category-card.category-card--unavailable,.service-card.service-card--unavailable{background-color:#f3f4f6;border:2px dashed #d1d5db;padding:10px 12px}.service-unavailable-note{font-size:.7rem}.category-name{font-size:.95rem}.service-grid{gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.service-name{font-size:.95rem!important}.back-button{font-size:.9rem;padding:9px 16px}.service-selector .selection-collapsed{padding:16px 18px}.service-selector .selection-collapsed__value{font-size:1.1rem}}.date-time-picker{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;box-sizing:border-box;margin-bottom:20px;padding:16px 20px}.date-time-picker--compact{align-self:flex-start;flex:0 0 auto;margin-bottom:0;max-width:100%;min-width:0;overflow:hidden;padding:12px 0;width:100%}.date-time-picker--compact .date-time-picker-title{font-size:.9rem;margin-bottom:12px}.date-time-picker--compact .calendar-navigation{margin-bottom:12px;margin-left:14px;margin-right:14px;min-width:0}.date-time-picker--compact .nav-button,.date-time-picker--compact .nav-spacer{font-size:.9rem;height:32px;max-width:32px;min-width:32px;padding:0;width:32px}.date-time-picker--compact .current-month{font-size:.9rem;min-width:8rem}.date-time-picker--compact .calendar-grid,.date-time-picker--compact .day-headers{box-sizing:border-box;gap:2px;grid-template-columns:repeat(7,minmax(0,1fr));max-width:100%;min-width:0;width:100%}.date-time-picker--compact .day-header{font-size:.65rem;min-width:0;overflow:hidden;padding:4px 2px;text-overflow:ellipsis}.date-time-picker--compact .calendar-day{align-items:center;aspect-ratio:1;box-sizing:border-box;display:flex;justify-content:center;min-width:0;overflow:hidden;padding:4px 2px;position:relative;z-index:0}.date-time-picker--compact .day-number{font-size:.875rem}.date-time-picker--compact .calendar-grid{grid-auto-rows:minmax(0,auto);height:auto;margin-bottom:12px;min-height:0}.date-time-picker--compact .time-slots-section{margin-top:12px}.date-time-picker--compact .time-slots-grid{gap:6px;grid-template-rows:auto auto}.date-time-picker--compact .time-slot{font-size:.8rem;min-width:78px;padding:7px 12px}.date-time-picker-title{color:#222;font-size:1.05rem;font-weight:700;margin:0 0 16px}.collapsed-calendar{align-items:center;background:#f0f7ff;border:1px solid #cfe2ff;border-radius:8px;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px;padding:12px 14px}.collapsed-calendar .selection-collapsed__info{align-items:flex-start;display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}.collapsed-calendar .selection-collapsed__label{color:#6b7280;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.collapsed-calendar .selection-collapsed__value{color:#111827;font-size:.95rem;font-weight:600}.collapsed-calendar .selection-collapsed__change{background:#fff;border:1px solid #007bff;border-radius:999px;color:#007bff;cursor:pointer;flex-shrink:0;font-size:.8rem;font-weight:600;padding:7px 14px;transition:background .15s,color .15s}.collapsed-calendar .selection-collapsed__change:hover{background:#007bff;color:#fff}.selected-date-text{color:#111827;font-size:.95rem;font-weight:600}.calendar-navigation{gap:8px;margin-bottom:16px}.calendar-navigation,.nav-button{align-items:center;display:flex;justify-content:center}.nav-button{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:50%;color:#374151;cursor:pointer;font-size:1rem;height:36px;line-height:1;min-width:36px;padding:0;transition:background .15s,border-color .15s,color .15s;width:36px}.nav-button:hover{background-color:#e8f1ff;border-color:#007bff;color:#007bff}.nav-spacer{height:36px;min-width:36px;width:36px}.current-month{color:#111827;font-size:1rem;font-weight:650;letter-spacing:-.01em;min-width:9.5rem;text-align:center}.calendar-month-wrap{min-width:0}.calendar-month-wrap--compact{max-width:100%;min-width:0;width:100%}.day-headers{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:8px}.day-header{color:#666;font-size:.7rem;font-weight:600;padding:6px;text-align:center}.calendar-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:16px}.calendar-day{align-items:center;aspect-ratio:1;background-color:#fff;border:2px solid #e9ecef;border-radius:4px;box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;min-width:0;overflow:hidden;padding:6px;position:relative;text-align:center;transition:border-color .15s,background-color .15s;z-index:0}.calendar-day:hover:not(.past){z-index:1}.calendar-day.selected,.calendar-day:hover:not(.past){background-color:#f8f9fa;border-color:#007bff}.calendar-day.past{background-color:#f8f9fa;cursor:not-allowed;opacity:.5;pointer-events:none}.calendar-day.other-month{opacity:.3}.day-number{font-size:.8rem;font-weight:500;line-height:1}.day-number.today{color:#007bff;font-weight:700}.day-number.current-month{color:#333}.day-number.other-month{color:#999}.time-slots-section{margin-top:16px}.time-slots-title{color:#333;font-size:.9rem;margin:0 0 8px}.time-slots-container{margin-bottom:12px;position:relative}.time-slots-grid{grid-gap:6px;display:grid;gap:6px;grid-auto-flow:column;grid-template-rows:repeat(2,1fr);overflow-x:auto;overflow-y:hidden;padding-bottom:8px;scrollbar-color:#dee2e6 #0000;scrollbar-width:thin}.time-slot{background-color:#fff;border:2px solid #e9ecef;border-radius:999px;cursor:pointer;font-size:.8rem;font-weight:500;min-width:82px;padding:8px 14px;transition:all .2s;white-space:nowrap}.time-slot.selected,.time-slot:hover{background-color:#f8fff8;border-color:#28a745}.scroll-indicator{background:linear-gradient(90deg,#0000,#f8f9fae6);border-radius:0 4px 4px 0;color:#666;font-size:.7rem;padding:4px 8px 4px 16px;pointer-events:none;position:absolute;right:0;top:50%;transform:translateY(-50%)}.loading-message{align-items:center;background-color:#f8f9fa;border-radius:4px;color:#666;display:flex;font-size:.8rem;gap:8px;justify-content:center;margin-bottom:12px;padding:12px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:2px solid #dee2e6;border-radius:50%;border-top-color:#007bff;height:16px;width:16px}.no-slots-message{background-color:#f8f9fa;border-radius:4px;color:#666;font-size:.8rem;font-style:italic;margin-bottom:12px;padding:12px;text-align:center}@media (min-width:768px){.date-time-picker{padding:22px 24px}.date-time-picker-title{font-size:1.35rem}.date-time-picker:not(.date-time-picker--compact) .calendar-month-wrap,.date-time-picker:not(.date-time-picker--compact) .calendar-navigation{margin-left:auto;margin-right:auto;max-width:520px}.date-time-picker:not(.date-time-picker--compact) .day-number{font-size:1.05rem}.date-time-picker:not(.date-time-picker--compact) .day-header{font-size:.85rem}.date-time-picker:not(.date-time-picker--compact) .nav-button,.date-time-picker:not(.date-time-picker--compact) .nav-spacer{font-size:1.15rem;height:42px;min-width:42px;width:42px}.date-time-picker:not(.date-time-picker--compact) .current-month{font-size:1.15rem;min-width:11rem}.time-slots-title{font-size:1.05rem}.time-slot{font-size:.95rem;min-width:92px;padding:10px 14px}}.booking-button{background-color:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:12px;transition:background-color .2s;width:100%}.booking-button:hover{background-color:#218838}.booking-popup-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;min-height:100vh;position:fixed;right:0;top:0;z-index:1000}.booking-popup{background-color:#fff;border-radius:8px;box-shadow:0 4px 8px #0003;margin:20px;max-width:380px;padding:24px;position:relative;width:85%}.booking-popup-title{color:#333;font-size:1.1rem;margin:0 0 16px;text-align:center}.appointment-summary{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin-bottom:20px;padding:12px}.summary-header{color:#333;font-size:.9rem;margin-bottom:8px}.summary-content{color:#666;font-size:.85rem;line-height:1.4}.summary-main{color:#333;font-size:.9rem;margin-bottom:8px}.summary-datetime,.summary-details{color:#666;font-size:.85rem}.summary-details{margin-top:4px}.customer-info-title{color:#333;font-size:1rem;margin:0 0 16px}.form-group{margin-bottom:16px}.form-label{color:#333;font-size:.9rem}.form-label-optional{color:#666;font-size:.8rem}.form-input{border:2px solid #007bff;border-radius:4px;box-sizing:border-box;color:#333;font-size:.9rem;outline:none;padding:10px 12px;transition:border-color .2s;width:calc(100% - 24px)}.form-input:focus{border-color:#0056b3}.form-error{color:#dc3545;font-size:.8rem;margin-top:4px;min-height:20px}.form-divider{background-color:#e9ecef;height:1px;margin:16px 0;width:100%}.contact-instruction{color:#666;font-size:.8rem;margin:0 0 16px;text-align:center}.booking-confirm-btn{align-items:center;background-color:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:8px;justify-content:center;padding:12px;transition:background-color .2s;width:100%}.booking-confirm-btn:hover:not(.loading){background-color:#0056b3}.booking-confirm-btn.loading{background-color:#6c757d;cursor:not-allowed}.booking-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff40;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.popup-close-btn{background:none;border:none;color:#666;cursor:pointer;font-size:1.2rem;position:absolute;right:16px;top:16px}.popup-close-btn:hover{color:#333}.sms-consent-label{align-items:flex-start;color:#555;cursor:pointer;display:flex;font-size:.72rem;gap:8px;line-height:1.35;margin-top:10px}.sms-consent-label input[type=checkbox]{flex-shrink:0;margin-top:2px}.success-modal-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;min-height:100vh;position:fixed;right:0;top:0;z-index:1001}.success-modal{background-color:#fff;border-radius:12px;box-shadow:0 8px 16px #0003;margin:20px;max-width:400px;padding:32px;position:relative;text-align:center;width:85%}.success-icon{align-items:center;background-color:#28a745;border-radius:50%;display:flex;height:60px;justify-content:center;margin:0 auto 20px;width:60px}.success-checkmark{color:#fff;font-size:24px;font-weight:700}.success-title{color:#28a745;font-size:1.3rem;font-weight:600;margin:0 0 16px}.booking-details{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:24px;padding:20px;text-align:left}.booking-info{color:#333;font-size:.9rem;line-height:1.6}.booking-service{margin-bottom:8px}.booking-datetime{margin-bottom:8px}.booking-datetime,.booking-duration{color:#666;font-size:.85rem}.confirmation-info{background-color:#e8f5e8;border:1px solid #c3e6c3;border-radius:8px;margin-bottom:24px;padding:16px}.confirmation-header{color:#333;font-size:.9rem;font-weight:600;margin-bottom:8px}.confirmation-details{color:#666;font-size:.85rem}.notification-results{align-items:center;display:flex;flex-direction:column;margin-top:8px}.notification-result{align-items:center;display:flex;margin-bottom:4px;min-height:1.5em}.notification-result.success{color:#28a745}.notification-result.failed{color:#dc3545}.notification-icon{font-size:1.5em;margin-right:8px}.notification-contact,.notification-icon{align-items:center;display:inline-flex;line-height:1}.notification-contact{font-size:.85rem}.notification-checkmark{align-items:center;display:inline-flex;font-size:1.6em;line-height:1;margin-left:8px}.notification-fallback{margin-top:2px}.notification-fallback:first-child{margin-top:0}.success-close-btn{background-color:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:12px;transition:background-color .2s;width:100%}.success-close-btn:hover{background-color:#218838}.modal-close-x{color:#666;font-size:1.2rem;right:16px;top:16px}.error-modal-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;min-height:100vh;position:fixed;right:0;top:0;z-index:1001}.error-modal{background-color:#fff;border-radius:12px;box-shadow:0 8px 16px #0003;margin:20px;max-width:360px;padding:28px 24px 24px;position:relative;text-align:center;width:85%}.error-icon{align-items:center;background-color:#dc3545;border-radius:50%;display:flex;height:48px;justify-content:center;margin:0 auto 16px;width:48px}.error-x{color:#fff;font-size:1.25rem;font-weight:700;line-height:1}.error-title{color:#1a1a1a;font-size:1.15rem;font-weight:600;margin:0 0 8px}.error-text{color:#444;font-size:.95rem;line-height:1.45;margin:0 0 8px}.error-suggestion{color:#666;font-size:.875rem;line-height:1.45;margin:0 0 20px}.error-retry-btn{background-color:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:12px;width:100%}.error-retry-btn:hover{background-color:#c82333}.modal-close-x{background:none;border:none;color:#888;cursor:pointer;font-size:1.25rem;line-height:1;padding:4px;position:absolute;right:12px;top:12px}.modal-close-x:hover{color:#333}.appointment-page{background-color:#f8f9fa;display:flex;flex-direction:column;font-family:Arial,sans-serif;min-height:100vh;min-height:100dvh}.appointment-page__body{box-sizing:border-box;flex:1 1 auto;padding:16px;width:100%}.appointment-page__footer{background:#f8f9fa;border-top:1px solid #e8ecf2;flex-shrink:0;margin-top:auto;width:100%}.booking-datetime-wrap{margin-bottom:20px}.booking-datetime-wrap .date-time-picker{margin-bottom:12px}.booking-continue-btn{align-items:center;background:linear-gradient(180deg,#34c759,#28a745);border:none;border-radius:12px;box-shadow:inset 0 1px 0 #ffffff40,0 4px 14px #28a74559,0 1px 2px #0000000f;color:#fff;cursor:pointer;display:flex;font-size:1.05rem;font-weight:600;justify-content:center;letter-spacing:.01em;line-height:1.2;margin-top:4px;padding:15px 20px;transition:background .18s ease,box-shadow .18s ease,transform .15s ease,opacity .15s ease;width:100%}.booking-continue-btn:hover:not(:disabled){background:linear-gradient(180deg,#3dd468,#23963f);box-shadow:inset 0 1px 0 #ffffff4d,0 6px 18px #28a7456b,0 2px 4px #00000014;transform:translateY(-1px)}.booking-continue-btn:active:not(:disabled){box-shadow:inset 0 1px 0 #ffffff26,0 2px 8px #28a7454d;transform:translateY(0)}.booking-continue-btn:focus-visible{box-shadow:0 0 0 3px #fff,0 0 0 5px #28a7458c,0 4px 14px #28a74559;outline:none}.booking-continue-btn:disabled{box-shadow:0 2px 6px #28a74533;cursor:wait;opacity:.72;transform:none}.booking-slot-alert{background-color:#fff3cd;border-radius:6px;color:#664d03;font-size:.85rem;line-height:1.4;margin-top:10px;padding:10px 12px}@media (min-width:768px){.appointment-page__body{max-width:none;padding:28px 40px 40px;width:100%}.booking-continue-btn{border-radius:14px;font-size:1.12rem;padding:16px 24px}}@media (min-width:1100px){.appointment-page__body{padding:32px 56px 48px}}.reschedule-page{background-color:#f8f9fa;display:flex;flex-direction:column;font-family:Arial,sans-serif;min-height:100vh;min-height:100dvh;min-width:0;overflow-x:hidden}.reschedule-content{box-sizing:border-box;display:flex;flex:1 1 auto;flex-direction:column;margin:0 auto;max-width:720px;min-height:0;min-width:0;padding:16px 10px 32px;width:100%}.reschedule-page__footer{background:#f8f9fa;border-top:1px solid #e8ecf2;flex-shrink:0;margin-top:auto;width:100%}.reschedule-main{align-items:center;flex:1 1;min-height:0}.reschedule-card,.reschedule-main{display:flex;flex-direction:column;justify-content:center;min-width:0}.reschedule-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;box-sizing:border-box;max-height:none;padding:24px 18px 28px;width:100%}.reschedule-loading-state{align-items:center;color:#6b7280;display:flex;font-size:.95rem;justify-content:center;min-height:160px;text-align:center}.reschedule-title{color:#111827;font-size:1.45rem;font-weight:700;letter-spacing:-.01em;margin:0}.reschedule-title--success{color:#166534}.reschedule-lede{color:#4b5563;font-size:.95rem;line-height:1.45;margin:0;max-width:28rem}.reschedule-error-detail{background:#fef2f2;border-radius:8px;box-sizing:border-box;color:#991b1b;font-size:.85rem;line-height:1.4;margin:0;max-width:28rem;padding:10px 12px;width:100%}.reschedule-current-chip{background:#f8fafc;border:1px solid #e8ecf2;border-radius:10px;color:#111827;font-size:.95rem;margin:0;padding:12px 14px}.reschedule-error-state,.reschedule-success-state{align-items:center;display:flex;flex-direction:column;gap:14px;justify-content:center;padding:12px 0;text-align:center}.reschedule-success-icon{align-items:center;background:#dcfce7;border-radius:50%;color:#166534;display:flex;font-size:1.4rem;font-weight:700;height:48px;justify-content:center;width:48px}.reschedule-form-state{gap:16px;text-align:center}.reschedule-form-state,.reschedule-form-summary{align-items:stretch;display:flex;flex-direction:column}.reschedule-form-summary{gap:10px}.reschedule-eyebrow{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.06em;margin:0;text-transform:uppercase}.reschedule-details{background:#f8fafc;border:1px solid #e8ecf2;border-radius:10px;margin:0;padding:12px 14px;text-align:left}.reschedule-details__row{grid-gap:10px 12px;align-items:start;display:grid;gap:10px 12px;grid-template-columns:4.5rem 1fr;padding:7px 0}.reschedule-details__row+.reschedule-details__row{border-top:1px solid #eef2f7}.reschedule-details__row dt{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.02em;margin:0;padding-top:.15em;text-transform:uppercase}.reschedule-details__row dd{color:#111827;font-size:.95rem;font-weight:600;line-height:1.35;margin:0}.reschedule-timezone-hint{color:#6b7280;font-size:.8rem;margin:0}.reschedule-picker-section{min-width:0;width:100%}.reschedule-picker-section .date-time-picker{border:1px solid #e8ecf2;box-shadow:none;margin-bottom:0}.reschedule-picker-section .date-time-picker--compact{padding:12px 14px 16px}.reschedule-picker-section .date-time-picker-title{display:none}.reschedule-picker-section .time-slots-grid{padding-bottom:0;padding-left:2px;padding-right:2px}.reschedule-submit-error{background:#fef2f2;border-radius:8px;color:#991b1b;font-size:.85rem;line-height:1.4;margin:0;padding:10px 12px;text-align:left}.reschedule-form-actions{margin:0 auto}.reschedule-action-group,.reschedule-form-actions{align-items:stretch;display:flex;flex-direction:column;gap:10px;max-width:280px;width:100%}.reschedule-btn{align-items:center;border:none;border-radius:12px;box-sizing:border-box;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;justify-content:center;letter-spacing:.01em;line-height:1.2;padding:13px 20px;text-decoration:none;transition:background .18s ease,box-shadow .18s ease,transform .15s ease,opacity .15s ease;width:100%}.reschedule-btn--primary{background:linear-gradient(180deg,#34c759,#28a745);box-shadow:inset 0 1px 0 #ffffff40,0 4px 14px #28a74552,0 1px 2px #0000000f;color:#fff}.reschedule-btn--primary:hover:not(:disabled){background:linear-gradient(180deg,#3dd468,#23963f);box-shadow:inset 0 1px 0 #ffffff4d,0 6px 18px #28a74566;color:#fff;transform:translateY(-1px)}.reschedule-btn--primary:disabled{background:#9ca3af;box-shadow:none;cursor:default;opacity:.55;transform:none}.reschedule-cancel-instead{font-size:.9rem;margin:0;text-align:center}.reschedule-cancel-instead-link{-webkit-appearance:none;appearance:none;background:none;border:none;border-bottom:1px solid #0000;color:#6b7280;cursor:pointer;font:inherit;padding:0;text-decoration:none;transition:color .16s ease,border-color .16s ease}.reschedule-cancel-instead-link:hover{border-bottom-color:#b91c1c;color:#b91c1c}.reschedule-cancel-modal-error{background:#fef2f2;border-radius:8px;color:#991b1b;font-size:.85rem;line-height:1.4;margin:0 0 4px;padding:8px 10px}@media (min-width:768px){.reschedule-content{max-width:640px;padding:32px 40px 48px}.reschedule-card{padding:32px 36px 36px}.reschedule-details__row{grid-template-columns:5.5rem 1fr}}.confirm-modal-backdrop{background:#0f172a73;box-sizing:border-box;display:grid;inset:0;overflow:hidden;overscroll-behavior:contain;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));place-items:center;position:fixed;z-index:2500}.confirm-modal{align-self:center;background:#fff;border-radius:14px;box-shadow:0 16px 40px #0f172a2e;justify-self:center;margin:0;max-width:360px;padding:22px 24px 20px;text-align:center;width:min(360px,100%)}.confirm-modal-title{color:#2c3e50;font-size:1.25rem;font-weight:650;letter-spacing:-.02em;line-height:1.3;margin:0 0 10px;text-align:center}.confirm-modal-message{color:#64748b;font-size:.9375rem;line-height:1.5;margin:0 0 18px;text-align:center}.confirm-modal-actions{display:flex;gap:10px;justify-content:stretch}.confirm-modal-button{-webkit-appearance:none;appearance:none;border:1px solid #0000;border-radius:8px;cursor:pointer;flex:1 1;font-size:.9375rem;font-weight:600;min-width:0;padding:11px 16px;transition:background .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease}.confirm-modal-button.cancel{background:#f1f5f9;border-color:#e2e8f0;color:#334155}.confirm-modal-button.cancel:hover:not(:disabled){background:#e2e8f0}.confirm-modal-button.confirm{background:#111827;border-color:#111827;color:#fff}.confirm-modal-button.confirm:hover:not(:disabled){background:#1f2937;border-color:#1f2937}.confirm-modal-button.confirm--danger{background:#dc2626;border-color:#dc2626;color:#fff}.confirm-modal-button.confirm--danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.confirm-modal-button:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.confirm-modal-button:disabled{cursor:not-allowed;opacity:.55}.confirm-modal-backdrop--platform{background:#0b0c0f9e}.confirm-modal--platform{border-radius:14px;box-shadow:0 22px 60px #10111447;font-family:DM Sans,system-ui,sans-serif;max-width:440px;padding:22px 24px 20px;width:min(440px,100%)}.confirm-modal--platform .confirm-modal-title{color:#101114;letter-spacing:-.02em}.confirm-modal--platform .confirm-modal-message{color:#52606d}.confirm-modal--platform .confirm-modal-button{border-radius:9px}.confirm-modal--platform .confirm-modal-button.cancel{background:#eceae6;border-color:#e2e0db;color:#101114}.confirm-modal--platform .confirm-modal-button.cancel:hover:not(:disabled){background:#e2e0db}.confirm-modal--platform .confirm-modal-button.confirm{background:#b45309;border-color:#b45309}.confirm-modal--platform .confirm-modal-button.confirm:hover:not(:disabled){background:#9a4508;border-color:#9a4508}.confirm-modal--platform .confirm-modal-button.confirm--danger{background:#b42318;border-color:#b42318}.confirm-modal--platform .confirm-modal-button.confirm--danger:hover:not(:disabled){background:#912018;border-color:#912018}.confirm-modal-backdrop--booking{background:#0f172a66}.confirm-modal--booking{border-radius:12px;box-shadow:0 2px 4px #0000001a,0 12px 32px #0f172a24;display:flex;flex-direction:column;font-family:Arial,sans-serif;max-width:380px;min-height:220px;padding:28px 24px 30px;width:min(380px,100%)}.confirm-modal--booking .confirm-modal-title{color:#111827;font-size:1.25rem;font-weight:700;letter-spacing:-.01em;margin:0 0 10px;text-align:center}.confirm-modal--booking .confirm-modal-message{color:#4b5563;flex:1 1 auto;font-size:.95rem;line-height:1.5;margin:0 0 8px;text-align:center}.confirm-modal--booking .confirm-modal-actions{align-items:stretch;flex-direction:column;gap:10px;margin-top:20px}.confirm-modal--booking .confirm-modal-button{border-radius:12px;flex:none;font-size:1rem;font-weight:600;letter-spacing:.01em;min-width:0;padding:13px 20px;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .15s ease;width:100%}.confirm-modal--booking .confirm-modal-button.cancel{background:#fff;border:1.5px solid #e5e7eb;box-shadow:none;color:#374151}.confirm-modal--booking .confirm-modal-button.cancel:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.confirm-modal--booking .confirm-modal-button.confirm{background:#111827;border-color:#111827}.confirm-modal--booking .confirm-modal-button.confirm--danger{background:#fff;border:1.5px solid #fecaca;box-shadow:none;color:#b91c1c}.confirm-modal--booking .confirm-modal-button.confirm--danger:hover:not(:disabled){background:#fef2f2;border-color:#f8a5a5;box-shadow:0 2px 8px #b91c1c1a;color:#991b1b}@media (max-width:768px){.confirm-modal-backdrop{padding:max(16px,env(safe-area-inset-top,0px)) max(44px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(44px,env(safe-area-inset-left,0px))}.confirm-modal:not(.confirm-modal--booking){max-width:100%;padding:18px 16px 16px;width:min(300px,100%)}.confirm-modal:not(.confirm-modal--booking) .confirm-modal-actions{flex-direction:column-reverse}.confirm-modal:not(.confirm-modal--booking) .confirm-modal-title{font-size:1.15rem}}@media (min-width:769px){.confirm-modal:not(.confirm-modal--booking):not(.confirm-modal--platform){border-radius:16px;max-width:360px;padding:26px 28px 24px;width:min(360px,100%)}.confirm-modal:not(.confirm-modal--booking):not(.confirm-modal--platform) .confirm-modal-title{font-size:1.4rem}.confirm-modal:not(.confirm-modal--booking):not(.confirm-modal--platform) .confirm-modal-message{font-size:1.0625rem}.confirm-modal:not(.confirm-modal--booking):not(.confirm-modal--platform) .confirm-modal-button{border-radius:10px;font-size:1.0625rem;padding:13px 18px}}.manage-page{background-color:#f8f9fa;display:flex;flex-direction:column;font-family:Arial,sans-serif;min-height:100vh;min-height:100dvh;min-width:0;overflow-x:hidden}.manage-content{box-sizing:border-box;display:flex;flex:1 1 auto;flex-direction:column;margin:0 auto;max-width:720px;min-height:0;min-width:0;padding:20px 16px 32px;width:100%}.manage-page__footer{background:#f8f9fa;border-top:1px solid #e8ecf2;flex-shrink:0;margin-top:auto;width:100%}.manage-main{align-items:center;flex:1 1;min-height:0}.manage-card,.manage-main{display:flex;flex-direction:column;justify-content:center}.manage-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;box-sizing:border-box;min-width:0;padding:28px 22px 30px;width:100%}.manage-loading-state{align-items:center;color:#6b7280;display:flex;font-size:.95rem;justify-content:center;min-height:160px;text-align:center}.manage-error-state,.manage-form-state{align-items:center;display:flex;flex-direction:column;gap:22px;text-align:center}.manage-form-summary{align-items:stretch;display:flex;flex-direction:column;gap:12px;width:100%}.manage-eyebrow{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.06em;margin:0;text-align:center;text-transform:uppercase}.manage-title{color:#111827;font-size:1.45rem;font-weight:700;letter-spacing:-.01em;margin:0}.manage-title--success{color:#166534}.manage-success-icon{align-items:center;background:#dcfce7;border-radius:50%;color:#166534;display:flex;font-size:1.4rem;font-weight:700;height:48px;justify-content:center;width:48px}.manage-cancel-modal-error{background:#fef2f2;border-radius:8px;color:#991b1b;font-size:.85rem;line-height:1.4;margin:0 0 4px;padding:8px 10px}.manage-lede{color:#4b5563;font-size:.95rem;line-height:1.45;margin:0;max-width:28rem}.manage-error-detail{background:#fef2f2;border-radius:8px;box-sizing:border-box;color:#991b1b;font-size:.85rem;line-height:1.4;margin:0;max-width:28rem;padding:10px 12px;width:100%}.manage-details{background:#f8fafc;border:1px solid #e8ecf2;border-radius:10px;margin:0;padding:14px 16px;text-align:left}.manage-details__row{grid-gap:10px 12px;align-items:start;display:grid;gap:10px 12px;grid-template-columns:4.5rem 1fr;padding:8px 0}.manage-details__row+.manage-details__row{border-top:1px solid #eef2f7}.manage-details__row dt{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.02em;margin:0;padding-top:.15em;text-transform:uppercase}.manage-details__row dd{color:#111827;font-size:1rem;font-weight:600;line-height:1.35;margin:0}.manage-when-primary{display:block}.manage-when-time{color:#374151;display:block;font-size:.95rem;font-weight:500;margin-top:2px}.manage-timezone-hint{color:#6b7280;font-size:.8rem;margin:0;text-align:center}.manage-action-group{align-items:stretch;gap:10px;max-width:280px}.manage-action-group,.manage-unavailable{display:flex;flex-direction:column;width:100%}.manage-unavailable{align-items:center;gap:16px}.manage-btn{align-items:center;border:none;border-radius:12px;box-sizing:border-box;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;justify-content:center;letter-spacing:.01em;line-height:1.2;padding:13px 20px;text-decoration:none;transition:background .18s ease,box-shadow .18s ease,transform .15s ease,color .15s ease,border-color .15s ease;width:100%}.manage-btn--primary{background:linear-gradient(180deg,#34c759,#28a745);box-shadow:inset 0 1px 0 #ffffff40,0 4px 14px #28a74552,0 1px 2px #0000000f;color:#fff}.manage-btn--primary:hover{background:linear-gradient(180deg,#3dd468,#23963f);box-shadow:inset 0 1px 0 #ffffff4d,0 6px 18px #28a74566;color:#fff;transform:translateY(-1px)}.manage-btn--primary:active{transform:translateY(0)}.manage-btn--destructive{background:#fff;border:1.5px solid #fecaca;box-shadow:none;color:#b91c1c}.manage-btn--destructive:hover{background:#fef2f2;border-color:#f87171;box-shadow:0 2px 8px #b91c1c1f;color:#991b1b}@media (min-width:768px){.manage-content{max-width:640px;padding:32px 40px 48px}.manage-card{padding:36px 36px 40px}.manage-title{font-size:1.6rem}.manage-details__row{grid-template-columns:5.5rem 1fr}}.schedules-container{margin:0 auto;max-width:800px;padding:0 20px;text-align:center}.schedules-title{font-size:24px;font-weight:700;margin-bottom:16px;margin-top:20px;text-align:center}.schedules-description{color:#555;font-size:16px;margin-bottom:20px;text-align:center}.tab-container{-webkit-overflow-scrolling:touch;-ms-overflow-style:none;border-bottom:1px solid #eee;margin-bottom:24px;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin;width:100%}.tab-button-container{display:flex;flex-wrap:nowrap;padding:0 0 8px;white-space:nowrap}.tabs{display:flex;justify-content:center}.tab-button{border:none;border-radius:20px;cursor:pointer;font-size:14px;margin-right:10px;min-width:fit-content;padding:8px 14px;transition:all .2s ease;white-space:nowrap}.tab-button:last-child{margin-right:20px}.tab-button.active{background-color:#007bff;box-shadow:0 2px 4px #0000001a;color:#fff;font-weight:700}.tab-button.inactive{background-color:#e6f2ff;box-shadow:none;color:#06c;font-weight:400}.staff-panel{background-color:#f9f9f9;border-radius:5px;margin-bottom:20px;padding:16px;text-align:left}.schedules-tab{padding-bottom:35px}.schedules-tab-header{margin-bottom:8px;text-align:center}.schedules-tab-header h2{margin-bottom:8px}.schedules-tab-intro{color:#555;font-size:.95rem;line-height:1.4;margin:0 auto 20px;max-width:36rem;text-align:center}.schedules-tab-body{min-width:0}.schedules-tab--desktop,.schedules-tab-body{display:flex;flex-direction:column}.schedules-tab--desktop .schedules-tab-header{flex-shrink:0;text-align:left}.schedules-tab--desktop .schedules-tab-header h2{font-size:1.75rem}.schedules-tab--desktop .schedules-tab-intro{font-size:1.05rem;margin-left:0;text-align:left}.schedules-tab--desktop .staff-name{font-size:1.4rem}.schedules-tab--desktop .staff-role{font-size:1rem;padding:3px 10px}.schedules-tab--desktop .schedules-staff-nav__item{font-size:1rem}.schedules-tab--desktop .schedules-tab-body{align-items:flex-start;flex-direction:row;gap:24px}.schedules-tab--desktop .schedules-staff-main{flex:1 1 auto}.schedules-tab--desktop .schedules-staff-main,.staff-details{box-sizing:border-box;max-width:100%;min-width:0}.schedules-staff-nav--sidebar{align-self:flex-start;background:#fafbfc;border:1px solid #e5e7eb;border-radius:12px;box-sizing:border-box;flex:0 0 220px;height:fit-content;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);max-width:220px;overflow-x:hidden;overflow-y:auto;padding:10px 8px;position:sticky;top:16px;width:220px}.schedules-staff-nav__list{display:flex;flex-direction:column;gap:4px}.schedules-staff-nav__item{-webkit-appearance:none;appearance:none;background:#0000;border:none;border-radius:8px;color:#374151;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 12px;text-align:left;transition:background .12s ease,color .12s ease;width:100%}.schedules-staff-nav__item:hover{background:#f3f4f6;color:#111827}.schedules-staff-nav__item.is-active{background:#eef2ff;color:#4338ca;font-weight:600}.schedules-tab--desktop .staff-header{justify-content:flex-start;text-align:left}.schedules-tab-skeleton{display:flex;flex-direction:column;gap:16px;padding:8px 0 24px}.schedules-tab--desktop .schedules-tab-skeleton{align-items:stretch;flex-direction:row;min-height:calc(100dvh - 140px)}.schedules-tab--desktop .schedules-tab-skeleton__rail{animation:schedules-skeleton-shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#eef0f3 25%,#f7f8fa 50%,#eef0f3 75%);background-size:200% 100%;border-radius:12px;flex:0 0 220px}.schedules-tab--desktop .schedules-tab-skeleton__main{display:flex;flex:1 1;flex-direction:column;gap:12px;padding-left:24px}@keyframes schedules-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.schedules-tab-skeleton__line{animation:schedules-skeleton-shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#eef0f3 25%,#f7f8fa 50%,#eef0f3 75%);background-size:200% 100%;border-radius:6px;height:14px}.schedules-tab-skeleton__line--title{height:22px;width:42%}.schedules-tab-skeleton__line--sub{height:12px;width:68%}.schedules-tab-skeleton__card{animation:schedules-skeleton-shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#eef0f3 25%,#f7f8fa 50%,#eef0f3 75%);background-size:200% 100%;border-radius:12px;height:180px}.schedules-sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.staff-header{align-items:center;display:flex;flex-wrap:wrap;justify-content:center}.schedules-tab .staff-name{font-size:20px;font-weight:700;margin:0 8px 0 0}.schedules-tab .staff-role{background-color:#f0f0f0;border-radius:12px;color:#555;display:inline-block;font-size:16px;padding:2px 8px}.staff-detail-container{margin-bottom:24px}.section-title{margin-bottom:16px}.services-section{margin-bottom:24px}.services-heading{font-size:18px;margin-bottom:12px}.service-item{background-color:#fff;border-radius:4px;box-shadow:0 1px 3px #0000001a;margin-bottom:10px;padding:12px 16px}.service-details{display:flex;flex-direction:column}.service-name{font-size:16px;margin:0 0 4px}.service-info{display:flex;flex-wrap:wrap;gap:16px}.service-info-text{color:#555;font-size:14px;margin:0}.service-info-label{font-weight:700}.remove-button{background-color:#ff4d4f;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:6px 12px}.add-service-form{background:#0000;border-radius:0;box-shadow:none;margin:0;padding:0}.add-service-form,.add-service-form__fields{box-sizing:border-box;max-width:100%;min-width:0;width:100%}.add-service-form__fields{align-items:stretch;display:flex;flex-direction:column;gap:10px}.add-service-form__fields .compact-form-group,.add-service-form__fields .service-select{box-sizing:border-box;flex:none;margin:0;max-width:100%;min-width:0;width:100%}.add-service-form__price-duration{box-sizing:border-box;display:flex;gap:10px;max-width:100%;min-width:0;width:100%}.add-service-form__price-duration .duration-input,.add-service-form__price-duration .price-input{box-sizing:border-box;flex:1 1;margin:0;max-width:100%;min-width:0}.add-service-form .compact-form-input,.add-service-form .compact-form-select{box-sizing:border-box;max-width:100%;min-width:0;width:100%}.add-service-form__submit{box-sizing:border-box;margin-top:4px;max-width:100%;min-height:44px;width:100%}.add-service-title{border-bottom:1px solid #eee;font-size:20px;font-weight:700;margin-bottom:20px;padding-bottom:8px}.error-message{background-color:#fff2f0;border:1px solid #ffccc7;border-radius:4px;color:#ff4d4f}.error-message,.success-message{margin-bottom:16px;padding:8px 12px}.success-message{background-color:#f6ffed;border:1px solid #b7eb8f;border-radius:4px;color:#52c41a}.form-group{margin-bottom:20px}.form-label{display:block;margin-bottom:8px}.form-input,.form-select{background-color:#fafafa;border:1px solid #d9d9d9;border-radius:4px;box-sizing:border-box;height:40px;padding:8px 12px;width:100%}.form-row{display:flex;gap:16px;margin-bottom:20px}.form-column{flex:1 1}.submit-button{background-color:#1890ff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:15px;font-weight:500;padding:10px 16px;transition:background-color .2s ease;width:100%}.submit-button:disabled{cursor:not-allowed;opacity:.7}.compact-form-container{background-color:#f9f9f9;border-radius:8px;margin-top:20px;padding:16px}.form-header{display:flex;flex-direction:column;margin-bottom:12px}.compact-form-title{font-size:16px;font-weight:600;margin:0 0 8px}.message-banner{border-radius:4px;font-size:14px;margin-bottom:8px;padding:6px 10px}.message-banner.error{background-color:#fff2f0;border:1px solid #ffccc7;color:#ff4d4f}.message-banner.success{background-color:#f6ffed;border:1px solid #b7eb8f;color:#52c41a}.horizontal-form{box-sizing:border-box;max-width:100%;min-width:0;width:100%}.form-fields-container{align-items:flex-end;display:flex;flex-wrap:wrap;gap:10px}.compact-form-group{margin:0;position:relative}.price-duration-container{display:flex;flex:1 1;gap:10px}.duration-input,.price-input{flex:1 1}.service-select{flex:2 1;position:relative}.compact-form-group:not(.service-select):not(.price-input):not(.duration-input){flex:1 1}.compact-form-input,.compact-form-select{border:1px solid #d9d9d9;border-radius:4px;box-sizing:border-box;font-size:14px;height:36px;padding:8px 10px;width:100%}.compact-submit-button{background-color:#1890ff;border:none;border-radius:4px;box-sizing:border-box;color:#fff;cursor:pointer;font-size:14px;font-weight:500;height:36px;min-width:80px;padding:8px 16px;white-space:nowrap}.compact-submit-button:disabled{cursor:not-allowed;opacity:.7}.dropdown-menu{background-color:#fff;border:1px solid #d9d9d9;border-radius:4px;box-shadow:0 2px 8px #00000026;margin-top:2px;max-height:200px;overflow-y:auto;position:fixed;width:calc(100% - 32px);z-index:1000}.dropdown-item{cursor:pointer;font-size:14px;padding:8px 12px;transition:background-color .2s}.dropdown-item:hover{background-color:#e6f7ff}.service-items-container{display:flex;flex-direction:column;gap:8px;margin-bottom:8px;width:100%}.compact-service-item{align-items:center;background-color:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a;box-sizing:border-box;display:flex;justify-content:space-between;margin:0;padding:10px 16px;width:100%}.compact-service-item--clickable{cursor:pointer;outline:none}.compact-service-item--clickable:hover{background-color:#f7fbff;box-shadow:0 2px 6px #0000001f}.compact-service-item--clickable:focus-visible{box-shadow:0 0 0 2px #1890ff}.staff-service-edit-modal-overlay{align-items:center;background:#00000073;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1100}.staff-service-edit-modal{background:#fff;border-radius:10px;box-shadow:0 8px 32px #0000002e;max-width:400px;min-width:280px;padding:20px 22px 18px;width:100%}.staff-service-edit-modal-title{color:#222;font-size:1.1rem;font-weight:600;margin:0 0 4px}.staff-service-edit-service-name{color:#555;font-size:.95rem;font-weight:500;margin:0 0 16px}.staff-service-edit-label{color:#444;display:flex;flex:1 1;flex-direction:column;font-size:.875rem;font-weight:500;gap:6px;margin-bottom:0;min-width:0}.staff-service-edit-price-duration{box-sizing:border-box;display:flex;gap:12px;margin-bottom:14px;max-width:100%;min-width:0;width:100%}.staff-service-edit-input{border:1px solid #d9d9d9;border-radius:6px;box-sizing:border-box;font-size:1rem;max-width:100%;min-width:0;padding:8px 10px;width:100%}.staff-service-edit-input:focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff26;outline:none}.staff-service-edit-error{color:#cf1322;font-size:.875rem;margin:0 0 12px}.staff-service-edit-actions{display:flex;gap:10px;justify-content:center;margin-top:18px}.staff-service-edit-btn{border:1px solid #0000;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px}.staff-service-edit-btn:disabled{cursor:not-allowed;opacity:.6}.staff-service-edit-btn--secondary{background:#f5f5f5;border-color:#d9d9d9;color:#444}.staff-service-edit-btn--primary{background:#1890ff;color:#fff}.staff-service-edit-btn--primary:hover:not(:disabled){background:#40a9ff}.service-info-container{display:flex;flex:1 1;flex-direction:column;justify-content:center}.service-main-info{display:flex;justify-content:center;margin-bottom:4px;width:100%}.compact-service-name{font-size:16px;font-weight:600;margin:0;text-align:center}.service-price-duration{align-items:center;display:flex;justify-content:space-around;margin-top:4px;width:100%}.service-duration,.service-price{color:#666;font-size:14px;line-height:1.4}.compact-remove-button{align-items:center;background-color:#ff4d4f;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:12px;height:28px;justify-content:center;margin-left:12px;min-width:28px;padding:0;width:28px}.compact-remove-button:hover{background-color:#ff7875}.service-categories-container{display:flex;flex-direction:column;gap:16px;margin-bottom:20px;width:100%}.service-category-section{background-color:#f9f9f9;border-radius:8px;box-sizing:border-box;padding:12px;width:100%}.service-category-header{margin-bottom:10px;padding-bottom:8px;position:relative}.service-category-name{color:#777;font-size:14px;font-weight:600;letter-spacing:.5px;text-align:left;text-transform:uppercase}.service-category-header:after{background-color:#e0e0e0;bottom:0;content:"";height:1px;left:0;position:absolute;right:0}.category-option{color:#333;font-weight:600}.sub-service-option{padding-left:10px}.loading-text{background-color:#f9f9f9;border-radius:6px;color:#666;font-style:italic;margin:10px 0;padding:16px;text-align:center}@media screen and (max-width:600px){.form-fields-container{flex-direction:column;gap:8px}.compact-form-group,.service-select{width:100%}.price-duration-container{display:flex;width:100%}.compact-submit-button{margin-top:8px;width:100%}}@media screen and (max-width:768px){.form-fields-container{flex-direction:column;gap:8px}.compact-form-group{width:100%}.price-duration-container{display:flex;width:100%}}@media screen and (max-width:600px){.form-row{flex-direction:column}.form-column{margin-bottom:16px}}.section-header{align-items:center;display:flex;justify-content:center;margin-bottom:16px;position:relative}.section-title{font-size:18px;margin-bottom:0;text-align:center}.toggle-form-button{background-color:#1890ff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;margin-left:12px;padding:6px 12px;transition:background-color .2s ease}.toggle-form-button:hover{background-color:#40a9ff}.add-service-form-container{margin-bottom:0;margin-top:0;max-height:0;opacity:0;overflow:hidden;transition:max-height .3s ease-out,opacity .3s ease,margin .3s ease}.add-service-form-container.visible{margin-bottom:20px;margin-top:0;max-height:500px;opacity:1}.add-service-form-container.hidden{margin:0;max-height:0;opacity:0}.collapsible-form-container{background-color:#f9f9f9;border-radius:8px;box-shadow:0 1px 3px #0000001a;box-sizing:border-box;margin-bottom:20px;max-width:100%;min-width:0;overflow:hidden;width:100%}.form-header-collapsible{align-items:center;background-color:#f0f0f0;border-bottom:1px solid #e0e0e0;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:background-color .2s ease}.form-header-collapsible:hover{background-color:#e8e8e8}.form-header-collapsible .compact-form-title{font-size:16px;font-weight:600;margin:0}.collapse-toggle-btn{background-color:#e0e0e0;color:#555;font-size:18px;height:24px;width:24px}.collapse-toggle-btn:hover{background-color:#d0d0d0}.form-content{box-sizing:border-box;max-width:100%;min-width:0;overflow:hidden;padding:16px;transition:max-height .3s ease-out,padding .3s ease;width:100%}.form-content.expanded{max-height:420px}.form-content.collapsed{max-height:0;padding-bottom:0;padding-top:0}.services-tab.schedules-tab{max-width:none;padding-bottom:40px}.services-tab .schedules-tab-header h2{color:#2c3e50;letter-spacing:-.02em}.services-tab-view-only-hint{background:#f1f5f9;border-radius:999px;color:#64748b;display:inline-block;font-size:.9rem;line-height:1.45;margin:4px auto 0;max-width:36rem;padding:8px 14px;text-align:center}.services-tab.schedules-tab--desktop .services-tab-view-only-hint{margin-left:0;text-align:left}.service-catalog-view-toggle{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;box-sizing:border-box;display:grid;grid-template-columns:1fr 1fr;margin:0 auto 20px;max-width:420px;padding:4px;position:relative;width:100%}.service-catalog-view-toggle__indicator{background:#fff;border-radius:999px;bottom:4px;box-shadow:0 1px 4px #0f172a14;left:4px;pointer-events:none;position:absolute;top:4px;transition:transform .32s cubic-bezier(.4,0,.2,1);width:calc(50% - 4px);z-index:0}.service-catalog-view-toggle__indicator.is-offerings{transform:translateX(100%)}.service-catalog-view-toggle__btn{-webkit-appearance:none;appearance:none;background:#0000;border:none;border-radius:999px;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:600;padding:10px 16px;position:relative;transition:color .25s ease;z-index:1}.service-catalog-view-toggle__btn:hover:not(.is-active){color:#334155}.service-catalog-view-toggle__btn.is-active{background:#0000;box-shadow:none;color:#4338ca}.service-catalog-view-toggle__btn:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.service-catalog-view-stage{animation:service-catalog-view-enter .34s cubic-bezier(.4,0,.2,1)}@keyframes service-catalog-view-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.service-catalog-view-toggle__indicator{transition:none}.service-catalog-view-stage{animation:none}}.service-catalog-card,.services-tab .staff-offerings-panel{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;margin-bottom:28px;max-width:100%;min-width:0;overflow:hidden;text-align:left;transition:box-shadow .3s ease;width:100%}.service-catalog-card:hover,.services-tab .staff-offerings-panel:hover{box-shadow:0 4px 14px #0000001a}.service-catalog-card__header{align-items:center;background-color:#f7f9fc;border-bottom:1px solid #eaecf0;box-sizing:border-box;display:flex;gap:12px;justify-content:space-between;min-height:56px;padding:14px 20px}.service-catalog-card__header .compact-form-title{align-items:center;color:#2c3e50;display:flex;font-size:17px;font-weight:600;gap:8px;letter-spacing:.3px;margin:0}.service-catalog-card__header .compact-form-title:before{background-color:#4a6280;border-radius:2px;content:"";display:inline-block;flex-shrink:0;height:16px;width:4px}.service-catalog-card__body{background:#fff;padding:16px 20px 20px;position:relative}.service-catalog-card__body--reordering{min-height:120px}.service-catalog-add-btn{-webkit-appearance:none;appearance:none;background:linear-gradient(135deg,#4338ca,#4f46e5);border:none;border-radius:8px;box-shadow:0 2px 6px #4338ca40;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:8px 14px;transition:transform .15s ease,box-shadow .15s ease;white-space:nowrap}.service-catalog-add-btn:hover{box-shadow:0 4px 10px #4338ca52;transform:translateY(-1px)}.service-catalog-add-btn:active{transform:translateY(0)}.service-catalog-add-btn--cancel{background:#fff;border:1px solid #cbd5e1;box-shadow:none;color:#64748b}.service-catalog-add-btn--cancel:hover{background:#f8fafc;border-color:#94a3b8;box-shadow:none;color:#475569;transform:none}.services-tab-empty{background:linear-gradient(180deg,#f8fafd,#f1f5f9);border:1px dashed #cbd5e1;border-radius:10px;margin:4px 0 8px;padding:28px 20px;text-align:center}.services-tab-empty p{color:#334155;font-size:.95rem;font-weight:600;margin:0}.services-tab-empty-hint{color:#64748b!important;font-size:.875rem!important;font-weight:400!important;line-height:1.45;margin-top:8px!important}.services-tab .error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#b91c1c;font-size:.9rem;margin:0 0 16px;padding:12px 16px;text-align:left}.services-tab-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:160px;padding:40px 16px}.services-tab .spinner{border-color:#4338ca #6366f1 #e5e7eb #e5e7eb;border-style:solid;border-width:3px;height:44px;width:44px}.services-tab-loading-text{color:#64748b;font-size:.9rem;margin:14px 0 0}.services-reorder-overlay{align-items:center;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);background:#ffffffb8;border-radius:0 0 12px 12px;display:flex;inset:0;justify-content:center;padding:16px;pointer-events:all;position:absolute;z-index:5}.services-reorder-overlay-inner{align-items:center;display:flex;flex-direction:column;gap:12px;pointer-events:none}.services-reorder-spinner-wrap{align-items:center;background:#fff;border-radius:50%;box-shadow:0 4px 16px #0000001a,0 0 0 1px #4338ca1f;display:flex;height:56px;justify-content:center;width:56px}.services-reorder-spinner{animation:services-reorder-spin .75s linear infinite;border-color:#4338ca #6366f1 #e5e7eb #e5e7eb;border-radius:50%;border-style:solid;border-width:3px;height:32px;width:32px}@keyframes services-reorder-spin{to{transform:rotate(1turn)}}.services-reorder-overlay-text{color:#4338ca;font-size:.875rem;font-weight:600}.services-tab .staff-offerings-panel{border-top:none;margin-top:8px;padding:0}.services-tab .staff-offerings-panel__header{background-color:#f7f9fc;border-bottom:1px solid #eaecf0;display:flex;flex-direction:column;gap:4px;padding:14px 20px}.services-tab .staff-offerings-panel__title{align-items:center;color:#2c3e50;display:flex;font-size:17px;font-weight:600;gap:8px;letter-spacing:.3px;margin:0;text-align:left}.services-tab .staff-offerings-panel__title:before{background-color:#4a6280;border-radius:2px;content:"";display:inline-block;height:16px;width:4px}.services-tab .staff-offerings-panel__intro{color:#64748b;font-size:.875rem;line-height:1.45;margin:0;max-width:none;text-align:left}.services-tab .staff-offerings-panel__body{box-sizing:border-box;margin-top:0;max-width:100%;min-width:0;padding:16px 20px 20px}.services-tab .staff-offerings-panel .service-list-container{background:#f8fafd;border-radius:10px;box-shadow:0 1px 3px #00000008;box-sizing:border-box;max-width:100%;min-width:0;padding:14px;width:100%}.services-tab .collapsible-form-container{background-color:#fff;border:1px solid #eaecf0;border-radius:10px;box-shadow:0 1px 3px #0000000f;box-sizing:border-box;margin-bottom:16px;max-width:100%;min-width:0;overflow:hidden;width:100%}.services-tab .collapsible-form-container:has(.form-content.expanded){overflow:visible}.services-tab .collapsible-form-container .form-content.expanded{overflow:visible}.services-tab .form-header-collapsible{background-color:#f7f9fc;border-bottom:1px solid #eaecf0;padding:12px 16px}.services-tab .form-header-collapsible:hover{background-color:#eef2f7}.services-tab .compact-submit-button{background:linear-gradient(135deg,#4338ca,#4f46e5);border-radius:8px;font-weight:600}.services-tab .no-staff-message{background:#f8fafd;border-radius:10px;color:#64748b;font-size:.9rem;margin:0 20px 20px;padding:20px;text-align:center}.services-tab.schedules-tab--desktop .staff-offerings-panel__body.schedules-tab-body{align-items:flex-start;flex-direction:row;gap:24px}.services-tab.schedules-tab--desktop .staff-offerings-panel__body .schedules-staff-main{flex:1 1 auto;min-width:0}.services-tab .staff-offerings-panel .section-title{align-items:center;color:#2c3e50;display:flex;font-size:15px;font-weight:600;gap:8px;margin:0 0 14px;text-align:left}.services-tab .staff-offerings-panel .section-title:before{background-color:#4a6280;border-radius:2px;content:"";display:inline-block;height:14px;width:4px}.services-tab .staff-offerings-panel .staff-header{justify-content:flex-start;margin-bottom:14px;text-align:left}.services-tab .staff-offering-categories{display:flex;flex-direction:column;gap:14px;width:100%}.services-tab .staff-offering-category__label{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.06em;margin:0 0 10px;text-align:left;text-transform:uppercase}.services-tab .staff-offering-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.services-tab .staff-offering-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;cursor:pointer;display:flex;gap:10px;justify-content:space-between;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.services-tab .staff-offering-item:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 1px 3px #0000000a}.services-tab .staff-offering-item:focus-visible{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f;outline:none}.services-tab .staff-offering-item__content{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0;text-align:left}.services-tab .staff-offering-item__name{color:#1e293b;font-size:.9375rem;font-weight:600;line-height:1.3}.services-tab .staff-offering-item__meta{color:#64748b;font-size:.8125rem;font-weight:500;line-height:1.3}.services-tab .staff-offering-item .service-remove-icon-btn{flex-shrink:0}.services-tab .staff-offering-status{border-radius:8px;font-size:.9rem;margin:8px 0 0;padding:14px 16px;text-align:center}.services-tab .staff-offering-status--loading{background:#f8fafd;border:1px dashed #e2e8f0;color:#64748b;font-style:italic}.services-tab .staff-offering-status--empty{background:#f8fafd;border:1px dashed #cbd5e1;color:#64748b}@media (max-width:576px){.service-catalog-card__header{align-items:stretch;flex-direction:column}.service-catalog-add-btn{min-height:44px;width:100%}.service-catalog-card__body,.services-tab .staff-offerings-panel__body{padding:14px 14px 18px}}.services-tab.schedules-tab--desktop .schedules-tab-intro{animation:service-catalog-view-enter .34s cubic-bezier(.4,0,.2,1);font-size:1.125rem}.services-tab.schedules-tab--desktop .service-catalog-view-toggle__btn{font-size:.96875rem;padding:11px 18px}.services-tab.schedules-tab--desktop .service-catalog-card__header .compact-form-title,.services-tab.schedules-tab--desktop .staff-offerings-panel__title{font-size:1.1875rem}.services-tab.schedules-tab--desktop .service-catalog-card__header .compact-form-title:before,.services-tab.schedules-tab--desktop .staff-offerings-panel__title:before{height:18px}.services-tab.schedules-tab--desktop .staff-offerings-panel__intro{font-size:.96875rem}.services-tab.schedules-tab--desktop .service-catalog-add-btn{font-size:.9375rem;padding:9px 16px}.services-tab.schedules-tab--desktop .services-tab-empty p{font-size:1.025rem}.services-tab.schedules-tab--desktop .services-tab-empty-hint{font-size:.9375rem!important}.services-tab.schedules-tab--desktop .no-staff-message,.services-tab.schedules-tab--desktop .services-tab .error-message,.services-tab.schedules-tab--desktop .services-tab-loading-text{font-size:.96875rem}.services-tab.schedules-tab--desktop .staff-offerings-panel .section-title{font-size:1rem}.services-tab.schedules-tab--desktop .staff-offerings-panel .section-title:before{height:16px}.services-tab.schedules-tab--desktop .service-category-name,.services-tab.schedules-tab--desktop .service-category-name-input--header{font-size:1.15rem}.services-tab.schedules-tab--desktop .service-category-form .services-title,.services-tab.schedules-tab--desktop .service-category-form__label,.services-tab.schedules-tab--desktop .services-in-category-label{font-size:.8125rem!important}.services-tab.schedules-tab--desktop .service-item{font-size:.975rem}.services-tab.schedules-tab--desktop .reorder-button{font-size:13px;padding:5px 9px}.services-tab.schedules-tab--desktop .service-category-header .save-button--header{font-size:.875rem}.services-tab.schedules-tab--desktop .service-category-edit-icon-btn{font-size:18px!important;height:40px!important;min-width:40px!important;width:40px!important}.services-tab.schedules-tab--desktop .service-category-edit-icon-btn .anticon{font-size:18px}.services-tab.schedules-tab--desktop .staff-name{font-size:1.45rem}.services-tab.schedules-tab--desktop .staff-role{font-size:1.0625rem}.services-tab.schedules-tab--desktop .staff-offering-item__name{font-size:1rem}.services-tab.schedules-tab--desktop .staff-offering-item__meta{font-size:.875rem}.services-tab.schedules-tab--desktop .staff-offering-category__label{font-size:.8125rem}@media (prefers-reduced-motion:reduce){.services-tab.schedules-tab--desktop .schedules-tab-intro{animation:none}}.service-category-form{background:#f8fafd;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 3px #0000000a;margin-bottom:16px;padding:16px;text-align:left}.service-category-form__label{color:#64748b;display:block;font-size:.8rem;font-weight:600;letter-spacing:.04em;margin-bottom:8px;text-transform:uppercase}.service-category-form .form-input{border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;color:#1e293b;font-size:1rem;font-weight:500;margin-bottom:0;padding:11px 14px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.service-category-form .form-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126;outline:none}.category-divider{background-color:#e2e8f0;height:1px;margin:16px 0 12px;width:100%}.service-category-form__services{margin-bottom:16px}.service-category-form .services-container{margin-bottom:4px;margin-top:0}.service-category-form .services-title{color:#64748b!important;font-size:.75rem!important;font-weight:600!important;letter-spacing:.06em;margin:0 0 10px!important;opacity:1!important;text-align:left!important;text-transform:uppercase}.service-category-form .services-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:10px 0 12px;padding:0}.service-category-form .service-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-bottom:none;border-radius:8px;display:flex;justify-content:space-between;padding:8px 12px}.service-category-form .remove-button{background:#0000;border:none;border-radius:6px;color:#dc2626;cursor:pointer;font-size:14px;height:28px;transition:background .15s ease;width:28px}.service-category-form .remove-button:hover{background:#fef2f2}.service-category-form .service-item .service-remove-icon-btn{flex-shrink:0}.service-category-form .toggle-service-button{display:none}.service-category-form .submit-button{-webkit-appearance:none;appearance:none;background:linear-gradient(135deg,#4338ca,#4f46e5);border:none;border-radius:8px;box-shadow:0 2px 8px #4338ca47;color:#fff;cursor:pointer;font-size:.9375rem;font-weight:600;padding:12px 20px;transition:transform .15s ease,box-shadow .15s ease;width:100%}.service-category-form .submit-button:hover:not(:disabled){box-shadow:0 4px 12px #4338ca59;transform:translateY(-1px)}.service-category-form .submit-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.55;transform:none}.service-category-form .service-input{border:1px solid #cbd5e1;border-radius:8px;padding:10px 12px}.service-category-form .add-service-button{background:#4338ca;border-radius:8px;font-weight:600}.service-input-row{align-items:center;display:flex;gap:8px;margin-bottom:4px;margin-top:12px}.service-input-row__field{border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;color:#1e293b;flex:1 1;font-size:.9375rem;min-width:0;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease}.service-input-row__field:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126;outline:none}.service-input-row__add{-webkit-appearance:none;appearance:none;background:linear-gradient(135deg,#059669,#10b981);border:none;border-radius:8px;box-shadow:0 2px 6px #10b98138;box-sizing:border-box;color:#fff;cursor:pointer;flex:0 0 auto;font-size:.875rem;font-weight:600;min-height:42px;padding:10px 16px;white-space:nowrap;width:auto}.service-input-row__add:disabled{box-shadow:none;cursor:not-allowed;opacity:.55}.service-category-list{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.service-category-item{background:linear-gradient(180deg,#f8fafd,#f1f5f9);border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 3px #0000000a;box-sizing:border-box;display:flex;flex-direction:column;min-width:0;padding:14px 16px;transition:box-shadow .2s ease,border-color .2s ease}.service-category-item:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #00000012}.service-category-item.editing{background:#fff;border-color:#c7d2fe;box-shadow:0 0 0 3px #6366f11f}.service-category-header{grid-gap:8px;align-items:center;box-sizing:border-box;display:grid;gap:8px;grid-template-columns:minmax(0,2fr) minmax(0,1fr);min-width:0;width:100%}.service-category-title-container{align-items:center;display:flex;gap:10px;min-width:0}.reorder-arrows{display:flex;flex-direction:column;flex-shrink:0;gap:2px}.reorder-button{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;font-size:12px;line-height:1;padding:4px 8px;transition:all .15s ease}.reorder-button:hover{background:#eef2ff;border-color:#c7d2fe;color:#4338ca}.service-category-name{color:#1e293b;font-size:1.05rem;font-weight:700;letter-spacing:-.01em;margin:0;word-break:break-word}.service-category-title-edit{flex:1 1}.service-category-edit-name-block{margin-bottom:4px;width:100%}.service-category-edit-label{color:#64748b;display:block;font-size:.8rem;font-weight:600;letter-spacing:.04em;margin-bottom:8px;text-transform:uppercase}.service-category-name-input--edit{border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;display:block;font-size:1rem;max-width:100%;min-height:44px;padding:10px 14px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.service-category-name-input--edit:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126;outline:none}.service-category-header .button-container{align-items:center;display:flex;justify-content:flex-end;max-width:100%;min-width:0;overflow:hidden}.service-category-header .save-button--header{align-items:center;box-shadow:0 2px 6px #10b98138;box-sizing:border-box;display:inline-flex;font-size:.8125rem;justify-content:center;max-width:100%;min-width:0;overflow:hidden;padding:7px 10px;text-overflow:ellipsis;white-space:nowrap;width:100%}.service-category-name-input--header{border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;color:#1e293b;font-size:1.05rem;font-weight:700;min-width:0;padding:8px 12px;width:100%}.service-category-name-input--header:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126;outline:none}.edit-button{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #c7d2fe;border-radius:8px;color:#4338ca;font-size:.8125rem;font-weight:600;min-width:64px;padding:7px 14px;transition:all .15s ease}.service-category-edit-icon-btn{color:#4338ca!important}.service-category-edit-icon-btn:hover{background:#eef2ff!important}.edit-button:hover{background:#eef2ff;border-color:#a5b4fc}.delete-button{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.8125rem;font-weight:600;min-width:64px;padding:7px 14px;transition:all .15s ease}.delete-button:hover{background:#fef2f2;border-color:#fca5a5}.service-divider{border:none;border-top:1px solid #e2e8f0;margin:14px 0 12px;width:100%}.services-container{margin-top:0}.services-in-category-label{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.06em;margin:0 0 10px;text-align:left;text-transform:uppercase}.services-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:10px 0 0;padding:0}.service-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#334155;display:flex;font-size:.9rem;gap:10px;justify-content:space-between;padding:8px 12px}.service-item .service-remove-icon-btn{flex-shrink:0}.service-item.empty{background:#0000;border-style:dashed;color:#94a3b8;font-style:italic;justify-content:center}.remove-service-button{-webkit-appearance:none;appearance:none;background:#0000;border:none;border-radius:6px;color:#dc2626;cursor:pointer;font-size:.8125rem;font-weight:600;padding:4px 8px;transition:background .15s ease}.remove-service-button:hover{background:#fef2f2}.service-category-name-input{border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;font-size:1rem;font-weight:600;padding:10px 14px;width:100%}.save-button{-webkit-appearance:none;appearance:none;background:linear-gradient(135deg,#059669,#10b981);border:none;border-radius:8px;box-shadow:0 2px 6px #10b98140;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:10px 16px}.save-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.55}.cancel-button{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:600;padding:10px 16px}.cancel-button:disabled{cursor:not-allowed;opacity:.55}.add-service-button-small{-webkit-appearance:none;appearance:none;background:#fff;border:1px dashed #a5b4fc;border-radius:8px;box-sizing:border-box;color:#4338ca;cursor:pointer;display:block;font-size:.875rem;font-weight:600;margin-top:12px;padding:10px 16px;text-align:center;transition:all .15s ease;width:100%}.add-service-button-small:hover{background:#eef2ff;border-color:#818cf8}.category-edit-footer{grid-gap:10px;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:16px;width:100%}.category-edit-footer__btn{-webkit-appearance:none;appearance:none;border-radius:8px;box-sizing:border-box;cursor:pointer;font-size:.8125rem;font-weight:600;line-height:1.2;margin:0;min-height:44px;min-width:0;padding:10px 12px;text-align:center;transition:background .15s ease,border-color .15s ease;width:100%}.category-edit-footer__btn--cancel{background:#fff;border:1px solid #cbd5e1;color:#64748b}.category-edit-footer__btn--cancel:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.category-edit-footer__btn--delete{background:#fff;border:1px solid #fecaca;color:#dc2626}.category-edit-footer__btn--delete:hover:not(:disabled){background:#fef2f2;border-color:#fca5a5}.category-edit-footer__btn:disabled{cursor:not-allowed;opacity:.55}.add-service-input{margin-top:12px}.hide-button{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#64748b;cursor:pointer;font-size:.8125rem;font-weight:600;margin-top:8px;padding:8px 14px}@media (max-width:576px){.service-category-header .save-button--header{font-size:.75rem;padding:7px 8px}}.add-service-select{box-sizing:border-box;max-width:100%;min-width:0;position:relative;width:100%}.add-service-select__trigger{align-items:center;-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;color:#1e293b;cursor:pointer;display:flex;font-size:.9375rem;font-weight:500;gap:8px;justify-content:space-between;min-height:42px;padding:10px 12px;text-align:left;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.add-service-select__trigger:hover:not(:disabled){border-color:#94a3b8}.add-service-select__trigger.is-open{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.add-service-select__trigger.is-placeholder{color:#94a3b8;font-weight:400}.add-service-select__trigger.is-disabled{background:#f8fafc;cursor:not-allowed;opacity:.55}.add-service-select__value{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-service-select__chevron{color:#64748b;flex-shrink:0;font-size:.75rem;line-height:1}.add-service-select__menu{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0f172a1f;box-sizing:border-box;left:0;list-style:none;margin:0;max-height:min(240px,40vh);overflow-y:auto;padding:6px;position:absolute;right:0;top:calc(100% + 6px);z-index:30}.add-service-select__option{align-items:center;-webkit-appearance:none;appearance:none;background:#0000;border:none;border-radius:8px;box-sizing:border-box;color:#334155;cursor:pointer;display:flex;font-size:.9375rem;font-weight:500;gap:10px;justify-content:space-between;padding:10px 12px;text-align:left;width:100%}.add-service-select__option-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-service-select__option-hint{color:#94a3b8;flex-shrink:0;font-size:.6875rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.add-service-select__option:hover:not(:disabled){background:#f1f5f9}.add-service-select__option.is-selected{background:#eef2ff;color:#4338ca;font-weight:600}.add-service-select__option.is-disabled,.add-service-select__option:disabled{background:#f8fafc;color:#94a3b8;cursor:not-allowed;opacity:1}.add-service-select__option.is-disabled .add-service-select__option-hint,.add-service-select__option:disabled .add-service-select__option-hint{color:#cbd5e1}.add-service-select__empty{color:#64748b;font-size:.875rem;font-style:italic;padding:10px 12px}.staff-offerings-panel__body{margin-top:0}.staff-tab{box-sizing:border-box;max-width:100%;min-width:0;width:100%}.staff-tab.schedules-tab{padding-bottom:0}.staff-tab .schedules-tab-header h2{color:#2c3e50;letter-spacing:-.02em}.staff-tab-error{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;display:flex;flex-wrap:wrap;font-size:.9rem;gap:12px;justify-content:space-between;margin:0 0 16px;padding:12px 14px}.staff-tab-error__retry{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #fca5a5;border-radius:6px;color:#b91c1c;cursor:pointer;font-size:.8125rem;font-weight:600;padding:6px 12px}.staff-tab-error__retry:hover{background:#fff1f2}.staff-tab-add-toggle{margin-bottom:16px}.container{margin:0 auto;max-width:800px;padding:20px}.header{font-size:24px;font-weight:700;margin-bottom:20px}.button{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:10px 20px;text-align:center}.button:hover{background-color:#0056b3}.input{border:1px solid #ccc;border-radius:5px;margin-bottom:10px;padding:10px;width:100%}.list{list-style-type:none;padding:0}.list-item{align-items:center;border:1px solid #ccc;border-radius:5px;display:flex;height:80px;justify-content:space-between;margin-bottom:10px;overflow:hidden;padding:10px}.list-item .button-container{align-items:flex-end;display:flex;flex-direction:column;gap:5px;margin-left:auto}.edit-button{background-color:#007bff;border:none;border-radius:3px;color:#fff;cursor:pointer;padding:5px 10px;width:60px}.edit-button:hover{background-color:#0056b3}.delete-button{align-items:center;background-color:#dc3545;border:none;border-radius:3px;color:#fff;cursor:pointer;display:flex;height:30px;justify-content:center;padding:0!important;width:60px}.delete-button:hover{background-color:#a71d2a}.delete-button,.edit-button{margin-left:auto}.staff-container{margin:0 auto;max-width:800px;padding:0 20px;text-align:center}.staff-header{font-size:24px;font-weight:700;margin-bottom:16px;margin-top:20px;text-align:center}.staff-toggle-button{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;display:inline-block;margin-bottom:24px;padding:10px 20px}.staff-list-container{box-sizing:border-box;max-width:100%;min-width:0;overflow-x:hidden;width:100%}.staff-list{flex-direction:column;gap:8px;list-style-type:none;margin:0;text-align:left}.staff-list,.staff-list-item{box-sizing:border-box;display:flex;max-width:100%;min-width:0;padding:0;width:100%}.staff-list-item{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:8px;flex-shrink:0;justify-content:space-between;margin-bottom:0}.staff-list-item--clickable{border-color:#e5e7eb;padding:0}.staff-card-button{all:unset;align-items:center;border-radius:8px;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:row;max-width:100%;min-height:58px;min-width:0;padding:8px 72px 8px 10px;position:relative;text-align:left;width:100%}.staff-card-button:hover{background-color:#f9fafb}.staff-card-button:focus{outline:2px solid #2563eb;outline-offset:2px}.staff-card-badge-wrap{display:flex;justify-content:flex-end;margin:0;pointer-events:none;position:absolute;right:10px;top:8px;width:auto;z-index:1}.staff-card-badge{border-radius:999px;display:inline-block;font-size:.6875rem;font-weight:700;letter-spacing:.03em;line-height:1.15;padding:3px 8px;text-transform:uppercase}.staff-card-badge--muted{background:#f3f4f6;color:#6b7280}.staff-card-badge--role{background:#dbeafe;color:#1e40af}.staff-card-badge--loading{animation:staff-card-badge-shimmer 1.1s ease-in-out infinite;background:linear-gradient(90deg,#f3f4f6,#e5e7eb 50%,#f3f4f6);background-size:200% 100%;color:#0000;min-height:1.15em;min-width:52px;padding:3px 8px}@keyframes staff-card-badge-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.staff-list-container .staff-list-item:not(.editing){align-items:stretch;flex-direction:row}.staff-list-item.editing{background-color:#f8f9fa;border:1px solid #007bff;flex-direction:column;padding:16px}.staff-info{align-items:center;display:flex;flex:1 1;gap:11px;min-width:0}.staff-edit-form,.staff-edit-row{display:flex;flex-direction:column;gap:16px;width:100%}.staff-edit-field,.staff-image-url-field{width:100%}.staff-url-input-container{display:flex;flex-direction:column;gap:8px;width:100%}.staff-image-preview{margin:0 auto;max-width:150px;text-align:center}.staff-image-preview-img{border-radius:5px;max-height:150px;max-width:150px;object-fit:cover}.staff-image-error-message{color:#dc3545;display:none;font-size:12px;margin-top:8px;text-align:left}.staff-image-preview.image-error .staff-image-error-message{display:block}.staff-text-content{align-self:center;flex:1 1;min-width:0;overflow-wrap:break-word;word-break:break-word}.staff-list-container .staff-list-item .staff-text-content h3.staff-name{color:#111827!important;font-size:1.125rem!important;font-weight:700!important;letter-spacing:-.02em!important;line-height:1.12!important;margin:0}.staff-list-container .staff-list-item .staff-text-content h3.staff-name,.staff-list-container .staff-list-item .staff-text-content p.staff-role{background:none!important;border-radius:0!important;display:block!important;overflow-wrap:anywhere!important;padding:0!important;word-break:break-word!important}.staff-list-container .staff-list-item .staff-text-content p.staff-role{color:#64748b!important;font-size:.875rem!important;font-weight:500!important;line-height:1.2!important;margin:2px 0 0!important}.staff-photo-slot{align-items:center;background:#f3f4f6;border-radius:8px;display:flex;flex-shrink:0;height:58px;justify-content:center;overflow:hidden;width:58px}.staff-photo-placeholder{display:none}.staff-avatar-initials{align-items:center;background:linear-gradient(145deg,#818cf8,#4f46e5);border-radius:8px;color:#fff;display:flex;font-size:1.2rem;font-weight:700;height:100%;justify-content:center;letter-spacing:.02em;-webkit-user-select:none;user-select:none;width:100%}.staff-list-empty{background:#f8fafd;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;margin-top:8px;padding:20px 16px;text-align:center}.staff-list-empty p{margin:0}.staff-list-empty__hint{font-size:.875rem;margin-top:6px!important}.staff-list-item--skeleton{pointer-events:none}.staff-card-skeleton{animation:staff-card-shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%);background-size:200% 100%;border-radius:8px;height:58px;width:100%}@keyframes staff-card-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.staff-card-skeleton{animation:none;background:#f1f5f9}}.staff-image{display:block;height:100%;object-fit:cover;width:100%}.staff-actions-row{align-items:stretch;flex-direction:column;gap:10px}.staff-save-button{background-color:#28a745;border:none;border-radius:4px;cursor:pointer;font-weight:400;padding:10px 0;width:100%}.staff-save-button:disabled{opacity:.6}.staff-cancel-button{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:400;padding:10px 0;width:100%}.staff-cancel-button:disabled{opacity:.6}.staff-input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:10px;width:100%}.staff-image-help-button{background-color:initial;border:none;color:#007bff;cursor:pointer;font-size:14px;padding:4px 0;text-align:left;width:fit-content}.staff-image-help-button:hover{text-decoration:underline}.staff-edit-field label{color:#555;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.staff-edit-buttons-container{display:flex;gap:10px;margin-top:10px;width:100%}.staff-edit-buttons-container button{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-weight:500;padding:10px;transition:background-color .2s ease}.staff-save-button{background-color:#4caf50;color:#fff}.staff-save-button:hover:not(:disabled){background-color:#45a049}.staff-save-button:disabled{background-color:#ccc;cursor:not-allowed}.staff-cancel-button{background-color:#f0f0f0;border:1px solid #ddd!important;color:#333}.staff-cancel-button:hover:not(:disabled){background-color:#e0e0e0}.staff-cancel-button:disabled{color:#999;cursor:not-allowed}@media (min-width:768px){.staff-tab.schedules-tab--desktop .staff-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.staff-tab.schedules-tab--desktop .staff-card-button{min-height:96px;padding:16px 88px 16px 16px}.staff-tab.schedules-tab--desktop .staff-card-badge-wrap{margin-bottom:0;right:14px;top:14px}.staff-tab.schedules-tab--desktop .staff-card-badge{font-size:.6875rem;padding:4px 10px}.staff-tab.schedules-tab--desktop .staff-info{gap:15px}.staff-tab.schedules-tab--desktop .staff-photo-slot{border-radius:10px;height:96px;width:96px}.staff-tab.schedules-tab--desktop .staff-avatar-initials{border-radius:10px;font-size:1.75rem}.staff-tab.schedules-tab--desktop .staff-list-container .staff-list-item .staff-text-content h3.staff-name{font-size:clamp(1.35rem,2.5vw,1.75rem)!important;font-weight:800!important;letter-spacing:-.03em!important;line-height:1.15!important;margin:0 0 10px!important}.staff-tab.schedules-tab--desktop .staff-list-container .staff-list-item .staff-text-content p.staff-role{color:#4b5563!important;font-size:clamp(1rem,1.8vw,1.25rem)!important;font-weight:600!important;line-height:1.35!important}.staff-tab.schedules-tab--desktop .staff-card-skeleton{border-radius:10px;height:96px}.staff-list-item.editing{flex-direction:row;flex-wrap:wrap;justify-content:space-between}.staff-edit-row:first-child{flex-direction:row}.staff-actions-row{flex-direction:row;gap:15px;justify-content:center}.staff-cancel-button,.staff-save-button{min-width:100px;padding:10px 20px;width:auto}}@media (max-width:767px){.staff-list-container .staff-list-item:not(.editing){align-items:stretch;flex-direction:row;padding:0}.staff-list-container .staff-list-item:not(.editing) .staff-info{margin-bottom:0;width:100%}.staff-list-container .staff-list-item.editing{align-items:flex-start;flex-direction:column;padding:12px}}.staff-photo-upload{display:flex;flex-direction:column;gap:8px}.staff-photo-upload__label{color:#374151;font-size:.875rem;font-weight:600}.staff-photo-upload__row{align-items:center;display:flex;gap:14px}.staff-photo-upload__preview{align-items:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:10px;display:flex;flex-shrink:0;height:72px;justify-content:center;overflow:hidden;position:relative;width:72px}.staff-photo-upload__preview--stacked{border-radius:14px;height:104px;width:104px}.staff-photo-upload__preview--empty{background:#f8fafc;border:1.5px dashed #cbd5e1}.staff-photo-upload__img{display:block;height:100%;object-fit:cover;width:100%}.staff-photo-upload__img--contain{background:#fff;box-sizing:border-box;object-fit:contain;padding:6px}.staff-photo-upload__placeholder{color:#9ca3af;font-size:.75rem;padding:4px;text-align:center}.staff-photo-upload__empty{align-items:center;display:flex;flex-direction:column;gap:10px;justify-content:center;padding:8px;text-align:center}.staff-photo-upload__empty-icon{align-items:center;background:#e2e8f0;border-radius:999px;color:#475569;display:flex;font-size:1.25rem;font-weight:500;height:28px;justify-content:center;line-height:1;width:28px}.staff-photo-upload__empty-label{color:#64748b;font-size:.8125rem;font-weight:600;line-height:1.2;margin-top:2px}.staff-photo-upload__busy{align-items:center;background:#ffffffd1;color:#475569;display:flex;font-size:.75rem;font-weight:600;inset:0;justify-content:center;position:absolute}.staff-photo-upload__stack{align-items:center;display:flex;flex-direction:column;gap:10px;padding:4px 0 2px}.staff-photo-upload__preview-wrap{display:inline-flex;line-height:0;position:relative}.staff-photo-upload__file-overlay{background:#0000;border:none;cursor:pointer;font-size:16px;height:100%;inset:0;margin:0;opacity:0;padding:0;position:absolute;width:100%;z-index:2}.staff-photo-upload__file-overlay:disabled{cursor:not-allowed;pointer-events:none}.staff-photo-upload__preview-wrap:hover:not(:has(.staff-photo-upload__file-overlay:disabled)) .staff-photo-upload__preview--empty{background:#f1f5f9;border-color:#94a3b8}.staff-photo-upload__preview-wrap:hover:not(:has(.staff-photo-upload__file-overlay:disabled)) .staff-photo-upload__preview:not(.staff-photo-upload__preview--empty){box-shadow:0 0 0 3px #6366f124}.staff-photo-upload__stack-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.staff-photo-upload__stack-btn{align-items:center;-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#374151;cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:600;justify-content:center;line-height:1.2;margin:0;padding:7px 12px;text-decoration:none}.staff-photo-upload__stack-btn:hover:not(:disabled){background:#f8fafc;border-color:#9ca3af;color:#111827}.staff-photo-upload__stack-btn--disabled,.staff-photo-upload__stack-btn:disabled{cursor:not-allowed;opacity:.55;pointer-events:none}.staff-photo-upload__action-sep{color:#cbd5e1;font-size:.875rem;line-height:1}.staff-photo-upload__link-btn{-webkit-appearance:none;appearance:none;background:none;border:none;color:#4338ca;cursor:pointer;font-size:.8125rem;font-weight:600;padding:0;text-decoration:underline;text-underline-offset:2px}.staff-photo-upload__link-btn--disabled{cursor:not-allowed;opacity:.65;pointer-events:none}.staff-photo-upload__link-btn:hover:not(:disabled){color:#3730a3}.staff-photo-upload__link-btn--danger{color:#b91c1c}.staff-photo-upload__link-btn--danger:hover:not(:disabled){color:#991b1b}.staff-photo-upload__link-btn:disabled{cursor:not-allowed;opacity:.65}.staff-photo-upload__actions{align-items:flex-start;display:flex;flex-direction:column;gap:6px;min-width:0}.staff-photo-upload__pick-btn,.staff-photo-upload__remove-btn{-webkit-appearance:none;appearance:none;border:1px solid #0000;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:600;padding:8px 12px}.staff-photo-upload__pick-btn{align-items:center;background:#111827;border-color:#111827;color:#fff;display:inline-flex;justify-content:center}.staff-photo-upload__pick-btn--disabled{cursor:not-allowed;opacity:.65;pointer-events:none}.staff-photo-upload__pick-btn:hover:not(:disabled){background:#1f2937}.staff-photo-upload__pick-btn:disabled{cursor:not-allowed;opacity:.65}.staff-photo-upload__remove-btn{background:#fff;border-color:#d1d5db;color:#6b7280}.staff-photo-upload__remove-btn:hover:not(:disabled){background:#f9fafb;color:#374151}.staff-photo-upload--stacked .staff-photo-upload__hint{margin-left:auto;margin-right:auto;max-width:280px;text-align:center}.staff-photo-upload__hint{color:#6b7280;font-size:.78rem;line-height:1.4;margin:0}.staff-photo-upload__error{color:#b91c1c;font-size:.8125rem;margin:0}.staff-photo-upload--stacked .staff-photo-upload__error{text-align:center}.staff-role-select{display:flex;flex-direction:column;gap:6px;position:relative;width:100%}.staff-role-select__label-row{align-items:baseline;display:flex;flex-wrap:wrap;gap:6px}.staff-role-select__label{color:#374151;font-size:.875rem;font-weight:600}.staff-role-select__label-sep{color:#9ca3af;font-weight:400}.staff-role-select__manage-link{-webkit-appearance:none;appearance:none;background:none;border:none;color:#4338ca;cursor:pointer;font-size:.875rem;font-weight:600;padding:0;text-decoration:underline;text-underline-offset:2px}.staff-role-select__manage-link:hover:not(:disabled){color:#312e81}.staff-role-select__manage-link:disabled{cursor:not-allowed;opacity:.55}.staff-role-select__trigger{align-items:center;-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;color:#1e293b;cursor:pointer;display:flex;font-size:.9375rem;font-weight:500;gap:8px;justify-content:space-between;min-height:42px;padding:10px 12px;text-align:left;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.staff-role-select__trigger:hover:not(:disabled){border-color:#94a3b8}.staff-role-select__trigger.is-open{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.staff-role-select__trigger.is-placeholder{color:#94a3b8;font-weight:400}.staff-role-select__trigger.is-disabled{background:#f8fafc;cursor:not-allowed;opacity:.55}.staff-role-select__value{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-role-select__chevron{color:#64748b;flex-shrink:0;font-size:.75rem;line-height:1}.staff-role-select__menu-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0f172a1f;left:0;overflow:hidden;position:absolute;right:0;top:calc(100% + 6px);z-index:40}.staff-role-select__menu{list-style:none;margin:0;max-height:min(220px,36vh);overflow-y:auto;padding:6px}.staff-role-select__option{align-items:center;-webkit-appearance:none;appearance:none;background:#0000;border:none;border-radius:8px;box-sizing:border-box;color:#334155;cursor:pointer;display:flex;font-size:.9375rem;font-weight:500;gap:10px;justify-content:space-between;padding:10px 12px;text-align:left;width:100%}.staff-role-select__option-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-role-select__option-hint{color:#94a3b8;flex-shrink:0;font-size:.6875rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.staff-role-select__option:hover{background:#f1f5f9}.staff-role-select__option.is-selected{background:#eef2ff;color:#4338ca;font-weight:600}.staff-role-select__empty{color:#64748b;font-size:.875rem;font-style:italic;padding:10px 12px}.notif-settings{display:flex;flex-direction:column;gap:14px}.notif-settings__card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;gap:12px;padding:14px}.notif-settings__field{display:flex;flex-direction:column;gap:6px}.notif-settings__field label{color:#334155;font-size:.8125rem;font-weight:600;letter-spacing:.01em}.notif-settings__input{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;color:#0f172a;font-size:.95rem;padding:11px 12px;transition:border-color .15s,box-shadow .15s;width:100%}.notif-settings__input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626;outline:none}.notif-settings__input:disabled{background:#f1f5f9;color:#64748b}.notif-settings__input::placeholder{color:#94a3b8}.notif-settings__check{align-items:flex-start;color:#334155;cursor:pointer;display:flex;font-size:.875rem;gap:10px;line-height:1.4}.notif-settings__check input{accent-color:#3b82f6;cursor:pointer;flex-shrink:0;height:16px;margin:2px 0 0;width:16px}.notif-settings__hint{background:#fff;border:1px dashed #cbd5e1;border-radius:6px;color:#64748b;font-size:.78rem;line-height:1.4;margin:0;padding:8px 10px}.notif-settings__matrix{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.notif-settings__matrix-head,.notif-settings__matrix-row{grid-column-gap:4px;align-items:center;column-gap:4px;display:grid;grid-template-columns:minmax(0,1fr) 56px 56px;min-height:44px;padding:0 12px}.notif-settings__matrix-head{background:#f1f5f9;border-bottom:1px solid #e2e8f0;min-height:40px}.notif-settings__matrix-row:not(:last-child){border-bottom:1px solid #f1f5f9}.notif-settings__matrix-row:hover{background:#f8fafc}.notif-settings__col-type{color:#64748b;font-size:.7rem;font-weight:600;letter-spacing:.04em;min-width:0;padding-right:8px;text-transform:uppercase}.notif-settings__matrix-row .notif-settings__col-type{color:#0f172a;font-size:.9rem;font-weight:500;letter-spacing:normal;text-transform:none}.notif-settings__col-channel{align-items:center;box-sizing:border-box;color:#64748b;display:flex;font-size:.7rem;font-weight:600;justify-content:center;letter-spacing:.04em;margin:0;padding:0;text-align:center;text-transform:uppercase;width:100%}.notif-settings__toggle{-webkit-tap-highlight-color:transparent;background:#0000;cursor:pointer}.notif-settings__toggle:active,.notif-settings__toggle:focus,.notif-settings__toggle:focus-within{background:#0000;box-shadow:none;outline:none}.notif-settings__toggle input{-webkit-tap-highlight-color:transparent;accent-color:#3b82f6;cursor:pointer;flex-shrink:0;height:18px;margin:0;padding:0;width:18px}.notif-settings__toggle input:focus{outline:none}.notif-settings__toggle input:focus-visible{border-radius:3px;outline:2px solid #3b82f6;outline-offset:2px}.notif-settings__toggle input:disabled{cursor:not-allowed;opacity:.45}@keyframes notif-skel-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.notif-settings--skeleton{pointer-events:none;-webkit-user-select:none;user-select:none}.notif-skel{animation:notif-skel-shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#e2e8f0,#f1f5f9 45%,#e2e8f0 90%);background-size:200% 100%;border-radius:6px;display:block}.notif-skel--label{height:.8125rem;width:5.5rem}.notif-skel--input{border-radius:8px;height:42px;width:100%}.notif-skel--hint{border-radius:6px;height:2.4rem;width:100%}.notif-skel--head-type{height:.65rem;width:2.5rem}.notif-skel--head-ch{height:.65rem;margin:0 auto;width:2.25rem}.notif-skel--row-type{height:.9rem;max-width:9rem;width:70%}.notif-skel--check{border-radius:4px;height:18px;margin:0 auto;width:18px}.notif-skel--save{border-radius:8px;height:44px;margin-top:0;width:100%}@media (prefers-reduced-motion:reduce){.notif-skel{animation:none}}.staff-member-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a73;box-sizing:border-box;display:flex;inset:0;justify-content:center;overflow:hidden;padding:20px;position:fixed;z-index:2100}.staff-member-modal{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 16px 40px #0f172a2e;display:flex;flex-direction:column;flex-shrink:0;height:min(748px,calc(100dvh - 40px));max-height:min(748px,calc(100dvh - 40px));max-width:480px;min-height:0;overflow:hidden;position:relative;width:100%}.staff-member-modal-header{align-items:flex-start;background:linear-gradient(180deg,#f8fafc,#fff);border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:12px;justify-content:space-between;padding:16px 18px}.staff-member-modal-header__text{min-width:0}.staff-member-modal-title{color:#111827;font-size:1.15rem;font-weight:650;letter-spacing:-.02em;margin:0}.staff-member-modal-subtitle{color:#64748b;font-size:.875rem;line-height:1.3;margin:4px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-member-modal-close{align-items:center;-webkit-appearance:none;appearance:none;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;flex-shrink:0;font-size:1.75rem;height:32px;justify-content:center;line-height:1;width:32px}.staff-member-modal-close:hover{background:#f3f4f6;color:#111827}.staff-member-modal-tabs{-webkit-overflow-scrolling:touch;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:0;overflow-x:auto;padding:0 12px;scrollbar-width:none}.staff-member-modal-tabs::-webkit-scrollbar{display:none}.staff-member-modal-tab{-webkit-appearance:none;appearance:none;background:none;border:none;border-bottom:2px solid #0000;color:#64748b;cursor:pointer;flex:1 1;font-size:.8125rem;font-weight:600;margin-bottom:-1px;min-width:max-content;padding:12px 10px;transition:color .15s ease,border-color .15s ease;white-space:nowrap}.staff-member-modal-tab:hover{color:#334155}.staff-member-modal-tab--active{border-bottom-color:#111827;color:#111827}.staff-member-modal-tab:focus-visible{border-radius:4px 4px 0 0;outline:2px solid #6366f1;outline-offset:-2px}.staff-member-modal-body,.staff-member-modal-scroll{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.staff-member-modal-body{padding:16px 18px 20px}.staff-member-modal-tab-panel{animation:staff-member-modal-tab-in .16s ease;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.staff-member-modal-tab-panel__stack{-webkit-overflow-scrolling:touch;display:flex;flex:1 1;flex-direction:column;gap:12px;justify-content:space-between;min-height:0;overflow-y:auto}.staff-member-modal-tab-panel__stack--portal{gap:14px;justify-content:flex-start}.staff-member-modal-portal-badge{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#475569;flex-shrink:0;font-size:.8125rem;line-height:1.45;margin:0;padding:10px 12px}.staff-member-modal-portal-badge--active{background:#ecfdf5;border-color:#86efac;color:#166534}.staff-member-modal-portal-badge--invited{background:#fffbeb;border-color:#fde68a;color:#92400e}.staff-member-modal-portal-badge--disabled{background:#fef2f2;border-color:#fecaca;color:#991b1b}.staff-member-modal-portal-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:12px;padding:14px 16px}.staff-member-modal-portal-card__title{color:#334155;font-size:.875rem;font-weight:650;margin:0}.staff-member-modal-portal-card--actions{background:#f8fafc;gap:8px}.staff-member-modal-portal-action-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.staff-member-modal-portal-action-list{display:flex;flex-direction:column;gap:8px}.staff-member-modal-portal-card--actions .staff-member-modal-btn{width:100%}.staff-member-modal-portal-note{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;color:#92400e;font-size:.8125rem;line-height:1.45;margin:0;padding:10px 12px}.staff-member-modal-tab-panel__group{display:flex;flex-direction:column;gap:12px}.staff-member-modal-tab-panel__group:empty{display:none}@keyframes staff-member-modal-tab-in{0%{opacity:0}to{opacity:1}}.staff-member-modal-tab-panel__footer{border-top:none;padding-top:0}.staff-member-modal-banner{border-radius:8px;flex-shrink:0;font-size:.875rem;line-height:1.45;margin-bottom:14px;padding:10px 12px}.staff-member-modal-banner--error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.staff-member-modal-banner--success{background:#ecfdf5;border:1px solid #86efac;color:#166534}.staff-member-modal-hint{color:#64748b;font-size:.8125rem;line-height:1.45;margin:0 0 12px}.staff-member-modal-hint--inline{margin:0}.staff-member-modal-hint--empty{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px;flex:1 1;margin:0;padding:14px;text-align:center}.staff-member-modal-hint--empty,.staff-member-modal-section--delete{align-items:center;display:flex;justify-content:center}.staff-member-modal-checkbox-row{margin-top:4px}.staff-member-modal-checkbox-label{align-items:flex-start;color:#374151;cursor:pointer;display:flex;font-size:.8125rem;font-weight:500;gap:10px;line-height:1.45}.staff-member-modal-checkbox-label input{flex-shrink:0;margin-top:2px}.staff-member-modal-checkbox-label--disabled{cursor:not-allowed;opacity:.65}.staff-member-modal-checkbox-label--disabled input{cursor:not-allowed}.staff-member-modal-field{display:flex;flex-direction:column;gap:6px;margin-bottom:0}.staff-member-modal-field label{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:0}.staff-member-modal-optional{color:#9ca3af;font-weight:500}.staff-member-modal-field-hint{color:#64748b;font-size:.78rem;line-height:1.4;margin:0}.staff-member-modal-field--actions{margin-top:4px}.staff-member-modal-input{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#111827;font-size:.9375rem;padding:10px 12px;width:100%}.staff-member-modal-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f;outline:none}.staff-member-modal-input:disabled{background:#f9fafb;opacity:.65}.staff-member-modal-url-row{display:flex;flex-direction:column;gap:8px}.staff-member-modal-help-link{background:none;border:none;color:#4338ca;cursor:pointer;font-size:.875rem;font-weight:600;padding:0;text-align:left;text-decoration:underline;text-underline-offset:2px}.staff-member-modal-help-link:hover{color:#3730a3}.staff-member-modal-preview{margin:8px auto 0;max-width:160px;text-align:center}.staff-member-modal-preview img{border-radius:8px;display:block;margin:0 auto;max-height:160px;max-width:160px;object-fit:cover}.staff-member-modal-preview.is-error img{display:none}.staff-member-modal-preview-error{color:#dc2626;display:none;font-size:.75rem}.staff-member-modal-preview.is-error .staff-member-modal-preview-error{display:block;text-align:left}.staff-member-modal-portal-status{color:#475569;font-size:.8125rem;line-height:1.45;margin:0 0 10px}.staff-member-modal-portal-status--inline{margin:0}.staff-member-modal-portal-status--spaced{margin-top:8px}.staff-member-modal-actions-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.staff-member-modal-role-fieldset{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin:0;padding:12px 14px 14px}.staff-member-modal-role-fieldset legend{color:#475569;font-size:.8125rem;font-weight:600;padding:0 6px}.staff-member-modal-role-radios{display:flex;flex-wrap:wrap;gap:16px;margin-top:4px}.staff-member-modal-role-radios label{align-items:center;color:#374151;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:6px}.staff-member-modal-claim-field{margin-bottom:0}.staff-member-modal-claim-panel{background:#eff6ff;border:1px solid #93c5fd;border-radius:10px;box-sizing:border-box;padding:12px 14px}.staff-member-modal-claim-copy{color:#1e3a5f;font-size:.8125rem;line-height:1.55;margin:0}.staff-member-modal-claim-inline-btn{background:none;border:none;color:#1d4ed8;cursor:pointer;display:inline;font:inherit;font-size:inherit;font-weight:700;line-height:inherit;margin:0;padding:0;text-decoration:underline;text-underline-offset:2px}.staff-member-modal-claim-inline-btn:hover:not(:disabled){color:#1e40af}.staff-member-modal-claim-inline-btn:disabled{cursor:not-allowed;opacity:.55}.staff-member-modal-paired-row{grid-gap:10px;box-sizing:border-box;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin:0;width:100%}.staff-member-modal-paired-cell{align-items:stretch;display:flex;justify-content:stretch;min-width:0}.staff-member-modal-paired-btn{box-sizing:border-box;text-align:center;width:100%}.staff-member-modal-password-row{display:flex;justify-content:stretch;margin-top:0}.staff-member-modal-password-row .staff-member-modal-btn{width:100%}.staff-member-modal-password-editor{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-top:0;padding:14px}.staff-member-modal-portal-card--actions .staff-member-modal-password-editor{background:#fff;margin-top:4px}.staff-member-modal-password-rules{margin:0 0 10px;padding-left:18px}.staff-member-modal-password-rule{color:#6b7280;font-size:.8125rem;margin-bottom:4px}.staff-member-modal-password-rule--met{color:#166534}.staff-member-modal-password-actions{display:flex;justify-content:stretch}.staff-member-modal-password-actions .staff-member-modal-btn{width:100%}.staff-member-modal-btn{-webkit-appearance:none;appearance:none;border:1px solid #0000;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:650;line-height:1.2;padding:10px 14px}.staff-member-modal-btn:disabled{cursor:not-allowed;opacity:.55}.staff-member-modal-btn--primary{background:#111827;border-color:#111827;color:#fff}.staff-member-modal-btn--primary:hover:not(:disabled){background:#1f2937}.staff-member-modal-btn--success{background:#16a34a;border-color:#16a34a;color:#fff}.staff-member-modal-btn--success:hover:not(:disabled){background:#15803d}.staff-member-modal-btn--muted{background:#fff;border-color:#d1d5db;color:#374151}.staff-member-modal-btn--muted:hover:not(:disabled){background:#f8fafc}.staff-member-modal-btn--danger{background:#fff;border-color:#fecaca;color:#b91c1c}.staff-member-modal-btn--danger:hover:not(:disabled){background:#fef2f2}.staff-member-modal-footer{align-items:center;background:#fff;border-top:1px solid #e5e7eb;display:flex;flex-shrink:0;flex-wrap:wrap;gap:10px;justify-content:stretch;padding:14px 18px}.staff-member-modal-footer-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:stretch;min-width:0;width:100%}.staff-member-modal-footer-actions .staff-member-modal-btn{flex:1 1;min-width:0}.staff-member-modal-section--delete .staff-member-modal-btn--danger-compact{font-size:.8125rem;font-weight:600;padding:8px 14px}.staff-member-modal-loading{align-items:center;color:#64748b;display:flex;flex:1 1;font-size:.9375rem;justify-content:center;min-height:0;padding:40px 24px;text-align:center}@media (max-width:768px){.staff-member-modal-overlay{-webkit-overflow-scrolling:touch;align-items:center;justify-content:center;overflow-y:auto;padding:max(16px,env(safe-area-inset-top,0px)) 12px max(16px,env(safe-area-inset-bottom,0px))}.staff-member-modal{height:min(560px,calc(100svh - 120px));margin:auto;max-height:min(560px,calc(100svh - 120px));max-width:480px;width:100%}.staff-member-modal-tab-panel__stack{justify-content:flex-start}}@media (max-width:480px){.staff-member-modal-overlay{padding-left:10px;padding-right:10px}.staff-member-modal{height:min(520px,calc(100svh - 128px));max-height:min(520px,calc(100svh - 128px))}.staff-member-modal-tabs{padding:0 8px}.staff-member-modal-tab{font-size:.78rem;padding:11px 8px}.staff-member-modal-paired-row,.staff-member-modal-portal-action-grid{grid-template-columns:1fr}.staff-member-modal-footer-actions{flex-direction:column-reverse}.staff-member-modal-footer-actions .staff-member-modal-btn{flex:none;width:100%}}.staff-add-fab{align-items:center;background:#111827;border:1px solid #111827;border-radius:24px;bottom:88px;box-shadow:0 3px 14px #0f172a2e;color:#fff;cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:650;gap:8px;left:auto;padding:10px 14px;position:fixed;right:20px;transition:background-color .15s ease,box-shadow .15s ease,transform .15s ease;z-index:1005}.staff-add-fab:hover{background:#1f2937;box-shadow:0 4px 16px #0f172a38}.staff-add-fab:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.staff-add-fab__icon{align-items:center;background:#ffffff26;border-radius:50%;display:inline-flex;font-size:1.1rem;font-weight:700;height:22px;justify-content:center;line-height:1;width:22px}.staff-add-fab__label{letter-spacing:.01em;line-height:1.15}@media (max-width:480px){.staff-add-fab{font-size:.75rem;padding:9px 12px;right:12px}}@media (min-width:768px){.staff-add-fab{border-radius:28px;font-size:.9375rem;gap:10px;padding:13px 20px;right:24px}.staff-add-fab__icon{font-size:1.35rem;height:28px;width:28px}}.staff-form{gap:16px;text-align:left}.staff-form,.staff-form__field{display:flex;flex-direction:column}.staff-form__field{gap:6px}.staff-form__label{color:#374151;font-size:.875rem;font-weight:600}.staff-form__optional{color:#9ca3af;font-weight:500}.staff-form__input{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#111827;font-size:.9375rem;padding:10px 12px;width:100%}.staff-form__input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f;outline:none}.staff-form__input:disabled{background:#f9fafb;opacity:.65}.staff-form-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:.875rem;margin:0;padding:10px 12px}.staff-form-actions{margin-top:4px}.staff-submit-button{-webkit-appearance:none;appearance:none;background:#111827;border:1px solid #111827;border-radius:8px;color:#fff;cursor:pointer;font-size:.9375rem;font-weight:650;padding:11px 16px;width:100%}.staff-submit-button:hover:not(:disabled){background:#1f2937}.staff-submit-button:disabled{cursor:not-allowed;opacity:.65}.staff-add-overlay{align-items:center;background:#0f172a73;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:2100}.staff-add-modal{background:#fff;border-radius:14px;box-shadow:0 16px 40px #0f172a2e;display:flex;flex-direction:column;max-height:90vh;max-width:460px;overflow:hidden;width:100%}.staff-add-modal__header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;gap:12px;justify-content:space-between;padding:16px 18px}.staff-add-modal__header h2{color:#111827;font-size:1.15rem;font-weight:650;margin:0}.staff-add-modal__close{-webkit-appearance:none;appearance:none;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;font-size:1.75rem;height:32px;line-height:1;width:32px}.staff-add-modal__close:hover:not(:disabled){background:#f3f4f6;color:#111827}.staff-add-modal__body{-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:0;overflow-y:auto;padding:16px 18px 20px}@media (max-width:767.98px){.staff-add-overlay{align-items:center;box-sizing:border-box;justify-content:center;overflow:hidden;padding:20px}.staff-add-modal{flex-shrink:0;max-height:min(76.5vh,calc(100svh - 40px))}}.staff-roles-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a80;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:2200}.staff-roles-modal{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 20px 48px #0f172a33;display:flex;flex-direction:column;max-height:85vh;max-width:500px;overflow:hidden;width:100%}.staff-roles-modal__header{align-items:center;background:linear-gradient(180deg,#f8fafc,#fff);border-bottom:1px solid #e5e7eb;display:flex;gap:12px;justify-content:space-between;padding:18px 20px}.staff-roles-modal__header h2{color:#0f172a;font-size:1.2rem;font-weight:650;letter-spacing:-.02em;margin:0}.staff-roles-modal__close{align-items:center;-webkit-appearance:none;appearance:none;background:#f1f5f9;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:1.5rem;height:34px;justify-content:center;line-height:1;width:34px}.staff-roles-modal__close:hover:not(:disabled){background:#e2e8f0;color:#0f172a}.staff-roles-modal__body{overflow-y:auto;padding:18px 20px 22px}.staff-roles-modal__intro{color:#64748b;font-size:.875rem;line-height:1.5;margin:0 0 16px}.staff-roles-add-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;gap:8px;margin-bottom:16px;padding:12px}.staff-roles-add-form__input{background:#fff;border:1px solid #cbd5e1;border-radius:8px;flex:1 1;font-size:.9375rem;min-width:0;padding:10px 12px}.staff-roles-add-form__input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f;outline:none}.staff-roles-add-form__btn{-webkit-appearance:none;appearance:none;background:#111827;border:1px solid #111827;border-radius:8px;color:#fff;cursor:pointer;flex-shrink:0;font-size:.875rem;font-weight:650;padding:10px 18px}.staff-roles-add-form__btn:hover:not(:disabled){background:#1f2937}.staff-roles-add-form__btn:disabled{cursor:not-allowed;opacity:.65}.staff-roles-modal__error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:.875rem;margin:0 0 14px;padding:10px 12px}.staff-roles-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.staff-roles-list__empty{background:#f8fafd;border:1px dashed #cbd5e1;border-radius:10px;color:#64748b;font-size:.875rem;font-style:italic;padding:18px;text-align:center}.staff-roles-list__item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;display:flex;gap:12px;justify-content:space-between;padding:12px 14px;transition:border-color .15s ease,box-shadow .15s ease}.staff-roles-list__item:hover{border-color:#cbd5e1;box-shadow:0 1px 4px #0f172a0a}.staff-roles-list__name{color:#1e293b;font-size:.9375rem;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-roles-list__actions{display:flex;flex-shrink:0;gap:6px}.staff-roles-list__cancel-btn,.staff-roles-list__delete-btn,.staff-roles-list__edit-btn,.staff-roles-list__save-btn{-webkit-appearance:none;appearance:none;border:1px solid #0000;border-radius:7px;cursor:pointer;font-size:.8125rem;font-weight:600;padding:7px 11px}.staff-roles-list__edit-btn{background:#eef2ff;border-color:#c7d2fe;color:#4338ca}.staff-roles-list__edit-btn:hover:not(:disabled){background:#e0e7ff}.staff-roles-list__delete-btn{background:#fff;border-color:#fecaca;color:#b91c1c}.staff-roles-list__delete-btn:hover:not(:disabled){background:#fef2f2}.staff-roles-list__save-btn{background:#111827;color:#fff}.staff-roles-list__save-btn:hover:not(:disabled){background:#1f2937}.staff-roles-list__cancel-btn{background:#fff;border-color:#d1d5db;color:#64748b}.staff-roles-list__cancel-btn:hover:not(:disabled){background:#f8fafc}.staff-roles-list__edit-row{display:flex;flex-wrap:wrap;gap:8px;width:100%}.staff-roles-list__edit-input{border:1px solid #cbd5e1;border-radius:7px;flex:1 1 160px;font-size:.9375rem;min-width:0;padding:8px 10px}.staff-roles-list__edit-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f;outline:none}.staff-roles-reassign-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a8c;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:2300}.staff-roles-reassign-modal{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 20px 48px #0f172a3d;max-width:420px;padding:20px 22px 18px;width:100%}.staff-roles-reassign-modal__title{color:#0f172a;font-size:1.125rem;font-weight:650;margin:0 0 10px}.staff-roles-reassign-modal__message{color:#475569;font-size:.875rem;line-height:1.5;margin:0 0 16px}.staff-roles-reassign-modal__hint{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;color:#92400e;font-size:.875rem;line-height:1.45;margin:0 0 16px;padding:10px 12px}.staff-roles-reassign-modal__error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:.875rem;margin:12px 0 0;padding:10px 12px}.staff-roles-reassign-modal__actions{display:flex;gap:8px;justify-content:flex-end;margin-top:18px}.staff-roles-reassign-modal__cancel,.staff-roles-reassign-modal__confirm{-webkit-appearance:none;appearance:none;border:1px solid #0000;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:650;padding:10px 16px}.staff-roles-reassign-modal__cancel{background:#fff;border-color:#d1d5db;color:#64748b}.staff-roles-reassign-modal__cancel:hover:not(:disabled){background:#f8fafc}.staff-roles-reassign-modal__confirm{background:#b91c1c;border-color:#b91c1c;color:#fff}.staff-roles-reassign-modal__confirm:hover:not(:disabled){background:#991b1b}.staff-roles-reassign-modal__cancel:disabled,.staff-roles-reassign-modal__confirm:disabled{cursor:not-allowed;opacity:.65}.staff-availabilities-container{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:16px;overflow:hidden;transition:all .3s ease}.staff-availabilities-container:hover{box-shadow:0 4px 12px #0000001f}.availabilities-header-collapsible{align-items:center;background-color:#f7f9fc;border-bottom:1px solid #eaecf0;border-radius:12px 12px 0 0;box-sizing:border-box;cursor:pointer;display:flex;height:56px;justify-content:space-between;padding:14px 20px;transition:background-color .2s ease}.availabilities-header-collapsible:hover{background-color:#eef2f7}.availabilities-header-collapsible .compact-form-title{color:#2c3e50;font-size:17px;font-weight:600;letter-spacing:.3px;margin:0}.collapse-toggle-btn{align-items:center;background:none;background-color:#4a628014;border:none;border-radius:50%;color:#4a6280;cursor:pointer;display:flex;font-size:20px;height:30px;justify-content:center;line-height:1;transition:all .2s ease;width:30px}.collapse-toggle-btn:hover{background-color:#4a628026;transform:scale(1.05)}.availabilities-content{background-color:#fff;max-height:2000px;opacity:1;overflow:auto;padding:16px;transition:max-height .5s cubic-bezier(.4,0,.2,1),padding .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1)}.availabilities-content.collapsed{border-top:none;max-height:0;opacity:0;padding-bottom:0;padding-top:0}.availability-settings{container-name:availability-settings;container-type:inline-size;display:flex;flex-direction:column;gap:16px}.setting-group{background-color:#f8fafd;border-radius:10px;box-shadow:0 1px 3px #00000008;padding:14px;transition:box-shadow .3s ease}.setting-group:hover{box-shadow:0 2px 6px #00000014}.setting-group h5{align-items:center;color:#2c3e50;display:flex;font-size:15px;font-weight:600;gap:8px;margin:0 0 12px}.setting-group h5:before{background-color:#4a6280;border-radius:2px;content:"";display:inline-block;height:16px;width:4px}.setting-group h6{margin:0 0 12px}.setting-group h6,.setting-group label{color:#4a5568;font-size:14px;font-weight:500}.setting-group label{display:block;margin-bottom:8px}.setting-helper-text{color:#718096;font-size:.95rem;font-weight:400;line-height:1.4;margin:8px 0 0}.availability-pair-row .setting-group{align-items:stretch;box-sizing:border-box;display:flex;flex-direction:column;gap:10px;height:100%}.availability-pair-row .setting-group h5{flex:0 0 auto;justify-content:flex-start;margin:0;text-align:left;width:100%}.availability-pair-row .setting-group-body{align-items:center;display:flex;flex:1 1 auto;flex-direction:column;gap:10px;justify-content:space-evenly;min-height:0;width:100%}.setting-group--interval .ant-select{flex:0 0 auto;max-width:160px;width:160px}.setting-group--interval .setting-helper-text{margin:10px 0 0;text-align:left;width:100%}.setting-group-body--interval{align-items:flex-start!important;gap:0!important;justify-content:flex-start!important}.setting-group--weekly{box-sizing:border-box;max-width:100%;min-width:0;width:100%}.setting-group--weekly .staff-hours-table{width:100%}.availability-pair-row .time-range{flex:0 0 auto;justify-content:center;width:auto}@media (min-width:768px){.staff-availabilities-container:not(.staff-availabilities-container--compact) .setting-group--hours .time-range--stacked{align-items:center;flex-direction:column;gap:8px}}.setting-group--breaks{container-name:breaks-panel;container-type:inline-size;min-width:0}.setting-group--breaks .break-item{align-items:center;box-sizing:border-box;display:flex;flex-wrap:nowrap;gap:8px;justify-content:flex-start;margin-inline:auto;max-width:26rem;padding:4px 6px;width:min(100%,26rem)}.setting-group--breaks .setting-group-body{align-items:center;gap:6px;justify-content:center;padding-top:0;width:100%}.setting-group--breaks .break-item .time-range{flex:0 0 auto;min-width:0;width:auto}.setting-group--breaks .break-item .ant-input{flex:1 1 4rem;margin-left:0!important;max-width:9rem;min-width:3rem;width:auto!important}.setting-group--breaks .break-item .ant-btn{flex:0 0 auto;margin-left:auto}.setting-group--breaks .add-break-btn{max-width:26rem;width:100%}.date-breaks .break-item--invalid,.setting-group--breaks .break-item--invalid,.staff-hours-break-row--invalid{background-color:#dc262614;border-radius:8px;box-shadow:inset 0 0 0 1px #dc262659}.breaks-validation-alert{margin-bottom:8px;text-align:left;width:100%}.availability-validation-paused{color:#b91c1c;font-weight:500}.time-range{align-items:center;display:flex;flex-wrap:nowrap;gap:8px}@media (max-width:576px){.time-range .ant-picker{width:100px}.setting-group h5{font-size:14px;margin:0 0 10px}.setting-group{padding:12px}}.break-item{align-items:center;border-radius:8px;box-sizing:border-box;display:flex;flex-wrap:nowrap;gap:6px;margin-bottom:8px;padding:6px;transition:background-color .2s ease;width:100%}.break-item:hover{background-color:#4a62800d}.break-item .time-range{flex:0 0 auto;min-width:0}.break-item .ant-input{flex:1 1 4rem;margin-left:0!important;max-width:5.5rem;min-width:3rem;width:auto!important}.break-item .ant-btn{flex:0 0 auto;margin-left:auto}.ant-picker-focused,.ant-picker:focus,.ant-picker:hover{border-color:#4a6280;box-shadow:0 0 0 2px #4a628033}.ant-select:not(.ant-select-disabled){border-radius:6px}.ant-select-focused:not(.ant-select-disabled) .ant-select-selector,.ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-color:#4a6280!important;box-shadow:0 0 0 2px #4a628033!important}.ant-input{border-color:#cbd5e0;border-radius:6px;height:32px;transition:all .2s ease}.ant-select:not(.ant-select-disabled) .ant-select-selector{border-radius:6px;height:32px!important}.ant-select-selection-item{line-height:30px!important}.ant-tabs-tab{padding:8px 12px!important}.ant-btn{font-size:14px;height:32px;padding:0 12px}.ant-btn-sm{font-size:13px;height:28px;padding:0 8px}.date-overrides{border-top:none;margin-top:0;padding-top:0}.override-description{box-sizing:border-box;color:#718096;font-size:.95rem;line-height:1.5;margin-bottom:0;max-width:100%;min-width:0;overflow-wrap:anywhere;padding-bottom:4px;word-break:break-word}.date-calendar-container{border:1px solid #eaecf0;border-radius:10px;box-shadow:0 1px 3px #0000000d;margin:0 auto 20px;max-width:100%;overflow:hidden}.availability-calendar-header{align-items:center;box-sizing:border-box;display:flex;gap:10px;justify-content:center;min-height:52px;padding:16px 12px 12px}.availability-calendar-header .ant-select{min-width:5.5rem}.availability-calendar-header .ant-select .ant-select-selector{height:32px!important;min-height:32px!important}.date-calendar-container .ant-picker-calendar .ant-picker-panel .ant-picker-calendar-header,.date-calendar-container .availability-calendar-header{padding-bottom:12px;padding-top:16px}.date-calendar-container .ant-picker-calendar{border-radius:10px;overflow:hidden;width:100%}.date-calendar-container .ant-picker-panel{width:100%}.date-calendar-container .ant-picker-content{table-layout:fixed;width:100%}.date-calendar-container .ant-picker-cell,.date-calendar-container .ant-picker-content th{min-width:0}.date-calendar-container .ant-picker-calendar-date-content{height:auto!important;min-height:18px}@media (min-width:768px){.staff-availabilities-container:not(.staff-availabilities-container--compact) .date-calendar-container{max-width:340px;width:100%}.staff-availabilities-container:not(.staff-availabilities-container--compact) .date-calendar-container .ant-picker-calendar-date{align-items:center;aspect-ratio:1;box-sizing:border-box;display:flex;flex-direction:column;height:auto;justify-content:flex-start;margin:0 auto;padding:4px 2px!important;width:auto}.staff-availabilities-container:not(.staff-availabilities-container--compact) .date-calendar-container .ant-picker-calendar-date-value{line-height:1.2}.staff-availabilities-container:not(.staff-availabilities-container--compact) .date-cell-content .ant-tag{font-size:9px;height:14px;line-height:14px;padding:0 3px}}.date-cell-content{display:flex;justify-content:center;line-height:1;margin-top:3px}.date-cell-content .ant-tag{border-radius:4px;font-size:10px;height:16px;line-height:16px;margin:0;padding:0 4px}.date-overrides-list{background-color:#f8fafd;border:1px solid #eaecf0;border-radius:8px;margin-top:16px;padding:16px}.date-overrides-list h6{font-weight:500;margin-bottom:12px}.override-tags{display:flex;flex-wrap:wrap;gap:8px}.override-tags .ant-tag{align-items:center;border-radius:6px;box-shadow:0 1px 2px #0000000d;display:flex;font-size:12px;margin:0;padding:4px 8px;transition:all .2s ease}.override-tags .ant-tag:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.date-override-form{display:flex;flex-direction:column;gap:20px;margin-top:16px}.date-availability-toggle{align-items:center;background-color:#f8fafd;border:1px dashed #cbd5e0;border-radius:8px;display:flex;padding:12px 16px}.date-breaks,.date-working-hours{background-color:#f8fafd;border:1px solid #eaecf0;border-radius:8px;padding:16px}.date-breaks h6,.date-working-hours h6{align-items:center;color:#4a5568;display:flex;font-weight:500;gap:8px;margin-bottom:16px}@media (max-width:768px){.availabilities-content{padding:16px}.setting-group{padding:14px}}.ant-picker{border-color:#cbd5e0;border-radius:6px;height:32px;transition:all .2s ease}@media (max-width:576px){.date-calendar-container .ant-picker-calendar{font-size:12px}.ant-picker-calendar-date{padding:2px 6px!important}}.ant-picker{min-height:32px!important}.time-range-separator{color:#718096;font-weight:500;white-space:nowrap}.toggle-label{color:#4a5568;font-weight:500;margin-left:16px}.weekday-overrides{border-top:none;margin-top:0}.date-toggle,.weekday-toggle{align-items:center;display:flex;margin-bottom:16px}.setting-divider{border:none;display:none;height:0;margin:0;padding:0}@keyframes availability-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.availability-skeleton{display:flex;flex-direction:column;gap:14px;padding:8px 0 12px}.availability-skeleton__block,.availability-skeleton__day{animation:availability-skeleton-shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#eef0f3 25%,#f7f8fa 50%,#eef0f3 75%);background-size:200% 100%;border-radius:8px}.availability-skeleton__block--lg{height:48px;width:55%}.availability-skeleton__block--md{height:72px;width:100%}.availability-skeleton__block--sm{flex:1 1;height:36px}.availability-skeleton__block--cal{height:280px;width:min(100%,340px)}.availability-skeleton__row{display:flex;gap:12px}.availability-skeleton__days{display:flex;flex-direction:column;gap:8px}.availability-skeleton__day{height:52px;width:100%}.availability-saving{color:#6366f1;font-weight:500}.staff-hours-table{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-sizing:border-box;margin-inline:auto;max-width:42rem;overflow:hidden;width:100%}.staff-hours-table-header{grid-gap:10px 12px;align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;box-sizing:border-box;color:#6b7280;display:grid;font-size:.72rem;font-weight:600;gap:10px 12px;grid-template-columns:4.75rem minmax(0,1fr);letter-spacing:.03em;padding:8px 12px;text-transform:uppercase}.staff-hours-header-hours{text-align:center}.staff-hours-day-block{--staff-hours-day-inline-padding:12px;border-bottom:1px solid #f0f0f0;box-sizing:border-box;display:flex;flex-direction:column;gap:8px;min-height:2.75rem;padding:10px var(--staff-hours-day-inline-padding)}.staff-hours-day-top{grid-column-gap:12px;grid-row-gap:6px;align-items:center;column-gap:12px;display:grid;grid-template-columns:4.75rem minmax(0,1fr);row-gap:6px;width:100%}.staff-hours-day-col{align-self:center;flex-direction:column;gap:6px;grid-column:1}.staff-hours-day-col,.staff-hours-day-hours{align-items:center;display:flex;grid-row:1;min-width:0}.staff-hours-day-hours{grid-column:2;justify-content:center}.staff-hours-day-hours.is-disabled{opacity:.55;text-align:center}.staff-hours-day-time-range{align-items:center;display:flex;gap:clamp(0px,1vw,12px);justify-content:center;min-width:min-content}.staff-hours-day-time-range .availability-time-choice.compact-choice--time{flex:0 0 auto!important;max-width:none!important;min-width:auto!important;width:auto!important}.staff-hours-day-time-range .availability-time-choice .compact-choice-trigger{box-sizing:border-box;flex-shrink:0;font-size:13px;max-width:6.5rem!important;min-width:6.5rem!important;text-align:center;width:6.5rem!important}.staff-hours-day-time-range .time-range-separator{flex:0 0 auto}.staff-hours-breaks-section{background:#f9fafb;border-radius:0;border-top:1px solid #e5e7eb;box-sizing:border-box;display:flex;flex-direction:column;gap:0;margin-top:2px;margin-inline:calc(var(--staff-hours-day-inline-padding)*-1);padding:10px var(--staff-hours-day-inline-padding) 8px;width:calc(100% + var(--staff-hours-day-inline-padding)*2)}.staff-hours-break-row{align-items:center;box-sizing:border-box;display:flex;gap:clamp(0px,2vw,12px);min-width:0;overflow:hidden;padding:8px 0;width:100%}.staff-hours-break-row:not(:first-child){border-top:1px solid #e5e7eb}.staff-hours-break-label{align-items:center;display:flex;flex:0 1 12.5rem;justify-content:center;max-width:12.5rem;min-width:7rem;overflow:hidden}.staff-hours-break-label .ant-input{flex-shrink:0;font-size:13px;max-width:7rem!important;min-width:7rem!important;width:7rem!important}.staff-hours-break-times{align-items:center;display:flex;flex:1 3;gap:clamp(0px,1vw,12px);justify-content:center;min-width:min-content;overflow:hidden}.staff-hours-break-times .availability-time-choice.compact-choice--time{flex:0 0 auto!important;max-width:none!important;min-width:auto!important;width:auto!important}.staff-hours-break-times .availability-time-choice .compact-choice-trigger{box-sizing:border-box;flex-shrink:0;font-size:13px;max-width:6.5rem!important;min-width:6.5rem!important;width:6.5rem!important}.staff-hours-break-times .time-range-separator{flex:0 0 auto}.staff-hours-break-delete{align-items:center;display:flex;flex:0 0 auto;flex-shrink:0;margin-left:auto;min-width:0;width:auto}.staff-hours-break-delete .ant-btn{height:auto;line-height:1;margin:0;min-width:0;padding:0;width:auto}.staff-hours-break-row--invalid{background-color:#dc262614;border-radius:8px;box-shadow:inset 0 0 0 1px #dc262659}.staff-hours-day-block:last-child{border-bottom:none}.staff-hours-day-block:hover:not(.staff-hours-day-block--off){background:#f8f9fa}.staff-hours-day-block--off{background:#f3f4f6}.staff-hours-day-name{color:#333;font-size:.82rem;font-weight:600;line-height:1.2;text-align:center;width:100%}.staff-hours-day-block--off .staff-hours-day-name{color:#9ca3af}.staff-hours-day-toggle{background:#fff;border:1px solid #d1d5db;border-radius:6px;display:grid;grid-template-columns:1fr 1fr;max-width:4.75rem;overflow:hidden;width:100%}.staff-hours-day-toggle-btn{-webkit-appearance:none;appearance:none;background:#0000;border:none;color:#6b7280;cursor:pointer;font-size:.54rem;font-weight:700;letter-spacing:.03em;line-height:1.2;padding:5px 2px;text-transform:uppercase;transition:background .15s ease,color .15s ease}.staff-hours-day-toggle-btn+.staff-hours-day-toggle-btn{border-left:1px solid #d1d5db}.staff-hours-day-toggle-btn.is-active{background:#6366f1;color:#fff}.staff-hours-day-block--off .staff-hours-day-toggle-btn.is-active{background:#9ca3af}.staff-hours-day-toggle-btn:not(.is-active):hover{background:#f3f4f6}.staff-hours-off-label{color:#9ca3af;font-size:.82rem;font-style:italic}.staff-hours-add-break-wrap{display:flex;justify-content:center;width:100%}.staff-hours-add-break{margin:0;padding:4px 8px}.staff-hours-copy-btn{-webkit-appearance:none;appearance:none;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;font-weight:500}.staff-hours-copy-btn:hover{background:#eef2ff;border-color:#c7d2fe;color:#4338ca}.staff-hours-copy-btn--muted{background:#0000;color:#6b7280}.availability-time-choice.compact-choice--time{flex:0 0 auto!important;max-width:max-content;min-width:0;width:auto!important}.availability-time-choice .compact-choice-trigger{background:#fff;border:1px solid #e5e7eb;font-size:13px;max-width:6.5rem;min-width:5.75rem;padding:6px 10px;white-space:nowrap;width:auto!important}.time-range .availability-time-choice .compact-choice-trigger{text-align:center}.time-range{justify-content:center}.availability-pair-row{display:flex;flex-direction:column;gap:12px}.date-overrides,.weekday-overrides{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;max-width:100%;min-width:0;width:100%}.date-overrides h5,.weekday-overrides h5{box-sizing:border-box;justify-content:flex-start;max-width:100%;min-width:0;text-align:left;width:100%}.date-overrides .override-description,.weekday-overrides .override-description{align-self:stretch;box-sizing:border-box;max-width:100%;min-width:0;text-align:left;width:100%}.weekday-overrides .staff-hours-table{margin-inline:auto;max-width:100%;text-align:left;width:fit-content}.staff-availabilities-container:not(.staff-availabilities-container--compact) .weekday-overrides{align-items:stretch;width:100%}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-table{max-width:44rem;width:min(100%,44rem)}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-day-top,.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-table-header{column-gap:14px;grid-template-columns:5rem minmax(0,1fr)}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-day-time-range .availability-time-choice .compact-choice-trigger{font-size:14px;max-width:7rem!important;min-width:7rem!important;padding:8px 10px;width:7rem!important}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-break-row{gap:clamp(0px,2vw,12px)}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-break-label{flex:0 1 13.5rem;max-width:13.5rem;min-width:8rem}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-break-label .ant-input{max-width:8rem!important;min-width:8rem!important;width:8rem!important}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-break-times{flex:1 3;gap:clamp(0px,1vw,12px);min-width:min-content}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-break-times .availability-time-choice.compact-choice--time{flex:0 0 auto!important}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-break-times .availability-time-choice .compact-choice-trigger{max-width:7rem!important;min-width:7rem!important;width:7rem!important}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-day-name{font-size:.95rem}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-day-toggle{max-width:5rem}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-day-toggle-btn{font-size:.58rem;padding:6px 2px}.date-overrides-content{align-items:center;display:flex;flex:1 1 auto;flex-direction:column;width:100%}@container availability-settings (min-width: 36rem){.availability-pair-row--defaults{grid-gap:12px;align-items:stretch;display:grid;gap:12px;grid-template-columns:minmax(12rem,1fr) minmax(10rem,.85fr)}.availability-pair-row--defaults .setting-group{height:100%;min-width:0}}@container availability-settings (min-width: 64rem){.availability-pair-row--schedule{grid-gap:16px;align-items:stretch;display:grid;gap:16px;grid-template-columns:minmax(0,32rem) minmax(0,1fr)}.availability-pair-row--schedule .setting-group{height:100%}.availability-pair-row--schedule .setting-group--breaks{max-width:32rem;min-width:0;overflow:visible}.availability-pair-row--schedule .weekday-overrides{align-items:center;min-width:0;width:100%}.availability-pair-row--schedule .weekday-overrides .staff-hours-table{box-sizing:border-box;margin-inline:auto;max-width:38rem;width:min(100%,38rem)}}.staff-hours-link-btn{-webkit-appearance:none;appearance:none;background:#0000;border:none;color:#4a6280;cursor:pointer;font-size:.72rem;font-weight:500;padding:2px 4px;white-space:nowrap}.staff-hours-link-btn:hover{color:#2c3e50;text-decoration:underline}@media (max-width:767px){.break-item .time-range{gap:4px}.break-item .availability-time-choice .compact-choice-trigger{align-items:center;box-sizing:border-box;display:inline-flex;font-size:11px;height:32px;justify-content:center;max-width:5.2rem;min-height:32px;min-width:4.6rem;padding:0 6px}.break-item .time-range-separator{font-size:11px}.break-item .ant-input,.setting-group--breaks .break-item .ant-input{box-sizing:border-box;flex:1 1 auto;font-size:11px;height:32px;line-height:30px;max-width:none;min-height:32px;min-width:2.75rem;padding:0 8px}}.date-overrides .override-description,.weekday-overrides .override-description{font-size:.95rem;margin-bottom:8px}.weekday-overrides h5{margin-bottom:4px}@media (max-width:700px){.staff-hours-table-header{gap:8px 10px;grid-template-columns:4.25rem minmax(0,1fr);padding-left:10px;padding-right:10px}.staff-hours-day-block{--staff-hours-day-inline-padding:10px;padding-bottom:8px;padding-left:var(--staff-hours-day-inline-padding);padding-right:var(--staff-hours-day-inline-padding);padding-top:8px}.staff-hours-day-top{column-gap:10px;grid-template-columns:4.25rem minmax(0,1fr)}.staff-hours-day-time-range .availability-time-choice .compact-choice-trigger{font-size:12px;max-width:5rem!important;min-width:5rem!important;padding:5px 6px;width:5rem!important}.staff-hours-break-row{gap:4px}.staff-hours-break-label{flex:0 0 auto;max-width:5.25rem;min-width:5.25rem}.staff-hours-break-label .ant-input{box-sizing:border-box;font-size:12px;height:32px;line-height:30px;max-width:5.25rem!important;min-height:32px;min-width:5.25rem!important;padding:0 6px;width:5.25rem!important}.staff-hours-break-times{flex:0 1 auto;gap:4px;justify-content:flex-start;min-width:min-content}.staff-hours-break-times .availability-time-choice.compact-choice--time{flex:0 0 auto!important}.staff-hours-break-times .availability-time-choice .compact-choice-trigger{align-items:center;box-sizing:border-box;display:inline-flex;font-size:12px;height:32px;justify-content:center;max-width:4.75rem!important;min-height:32px;min-width:4.75rem!important;padding:0 4px;width:4.75rem!important}.staff-hours-day-toggle{max-width:4.25rem}.staff-hours-day-toggle-btn{font-size:.48rem;padding:4px 1px}}@media (min-width:768px){.staff-availabilities-container:not(.staff-availabilities-container--compact){font-size:15px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .availabilities-header-collapsible .compact-form-title{font-size:19px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .setting-group h5{font-size:17px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .setting-group h6{font-size:15px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .override-description,.staff-availabilities-container:not(.staff-availabilities-container--compact) .setting-helper-text{font-size:1.05rem}.staff-availabilities-container:not(.staff-availabilities-container--compact) .last-saved{font-size:15.5px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .time-range-separator{font-size:14px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .ant-select .ant-select-selector{font-size:15px;height:36px!important}.staff-availabilities-container:not(.staff-availabilities-container--compact) .ant-select-selection-item{font-size:15px;line-height:34px!important}.staff-availabilities-container:not(.staff-availabilities-container--compact) .ant-input{font-size:15px;height:36px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .ant-btn{font-size:15px;height:36px;padding:0 14px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .ant-btn-sm{font-size:14px;height:32px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .availability-time-choice .compact-choice-trigger{font-size:14px;max-width:7.5rem;min-width:6.5rem;padding:8px 12px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-day-name{font-size:.95rem}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-day-block{--staff-hours-day-inline-padding:14px;min-height:3.1rem;padding:12px var(--staff-hours-day-inline-padding)}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-hours-link-btn{font-size:.82rem;padding:4px 6px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .date-overrides .override-description,.staff-availabilities-container:not(.staff-availabilities-container--compact) .setting-group--interval .setting-helper-text,.staff-availabilities-container:not(.staff-availabilities-container--compact) .weekday-overrides .override-description{font-size:1.05rem}.staff-availabilities-container:not(.staff-availabilities-container--compact) .availability-calendar-header .ant-select .ant-select-selector{font-size:15px;height:36px!important;min-height:36px!important}.staff-availabilities-container:not(.staff-availabilities-container--compact) .date-calendar-container .ant-picker-calendar{font-size:14px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .date-cell-content .ant-tag{font-size:11px;height:18px;line-height:18px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .setting-group--interval .ant-select{max-width:160px;width:160px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .setting-group--breaks .break-item .ant-input{flex:1 1 4rem;max-width:10rem;min-width:3.5rem;width:auto!important}.staff-availabilities-container:not(.staff-availabilities-container--compact) .setting-group--breaks .break-item{gap:10px;max-width:32rem;width:min(100%,32rem)}.staff-availabilities-container:not(.staff-availabilities-container--compact) .setting-group--breaks .add-break-btn{max-width:32rem}}@container breaks-panel (max-width: 25.99rem){.setting-group--breaks .setting-group-body{align-items:stretch}.setting-group--breaks .break-item{gap:4px;margin-inline:0;max-width:none;padding:4px;width:100%}.setting-group--breaks .break-item .time-range{gap:4px}.setting-group--breaks .break-item .availability-time-choice .compact-choice-trigger{align-items:center;box-sizing:border-box;display:inline-flex;font-size:11px;height:32px;justify-content:center;max-width:5.2rem;min-height:32px;min-width:4.6rem;padding:0 6px}.setting-group--breaks .break-item .time-range-separator{font-size:11px}.setting-group--breaks .break-item .ant-input{box-sizing:border-box;flex:1 1 auto;font-size:11px;height:32px;line-height:30px;max-width:none;min-height:32px;min-width:2.75rem;padding:0 8px}.setting-group--breaks .add-break-btn{max-width:none;width:100%}}.staff-availabilities-container--compact .break-item .time-range{gap:4px}.staff-availabilities-container--compact .break-item .availability-time-choice .compact-choice-trigger{align-items:center;box-sizing:border-box;display:inline-flex;font-size:11px;height:32px;justify-content:center;max-width:5.2rem;min-height:32px;min-width:4.6rem;padding:0 6px}.staff-availabilities-container--compact .break-item .time-range-separator{font-size:11px}.staff-availabilities-container--compact .break-item .ant-input,.staff-availabilities-container--compact .setting-group--breaks .break-item .ant-input{box-sizing:border-box;flex:1 1 auto;font-size:11px;height:32px;line-height:30px;max-width:none;min-height:32px;min-width:2.75rem;padding:0 8px}.staff-availabilities-container--compact .setting-group--breaks .break-item{margin-inline:0;max-width:none;width:100%}.staff-availabilities-container--compact .setting-group--breaks .add-break-btn{max-width:none;width:100%}.staff-availabilities-container--compact .staff-hours-break-row{gap:4px}.staff-availabilities-container--compact .staff-hours-break-label{flex:0 0 auto;max-width:5.25rem;min-width:5.25rem}.staff-availabilities-container--compact .staff-hours-break-label .ant-input{box-sizing:border-box;font-size:12px;height:32px;line-height:30px;max-width:5.25rem!important;min-height:32px;min-width:5.25rem!important;padding:0 6px;width:5.25rem!important}.staff-availabilities-container--compact .staff-hours-break-times{flex:0 1 auto;gap:4px;justify-content:flex-start;min-width:min-content}.staff-availabilities-container--compact .staff-hours-break-times .availability-time-choice .compact-choice-trigger{align-items:center;box-sizing:border-box;display:inline-flex;font-size:12px;height:32px;justify-content:center;max-width:4.75rem!important;min-height:32px;min-width:4.75rem!important;padding:0 4px;width:4.75rem!important}.staff-availabilities-container--compact .staff-time-off-picker{margin:0 auto;max-width:min(360px,100%);width:100%}.staff-availabilities-container--compact .staff-time-off-layout{flex-direction:column;gap:12px}.staff-time-off.setting-group{background:#0000;box-shadow:none;padding:0}.staff-time-off.setting-group:hover{box-shadow:none}.staff-time-off{align-items:stretch;width:100%}.staff-time-off>.override-description{box-sizing:border-box;margin-bottom:10px;max-width:min(40rem,100%);min-width:0;width:100%}.staff-time-off-layout{align-items:stretch;display:flex;flex-direction:column;gap:12px;margin-top:4px;width:100%}.staff-time-off-history,.staff-time-off-picker{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-sizing:border-box}.staff-time-off-picker{gap:0;margin:0 auto;max-width:320px;overflow:hidden}.staff-time-off-form,.staff-time-off-picker{display:flex;flex-direction:column;width:100%}.staff-time-off-form{background:linear-gradient(180deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e5e7eb;box-sizing:border-box;gap:8px;margin:0;padding:10px 12px}.staff-time-off-dates{grid-gap:6px;align-items:stretch;display:grid;gap:6px;grid-template-columns:1fr auto 1fr}.staff-time-off-dates-sep{align-items:center;color:#94a3b8;display:flex;font-size:13px;font-weight:600;justify-content:center}.staff-time-off-date-chip{background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;flex-direction:column;gap:2px;min-width:0;padding:6px 8px}.staff-time-off-date-chip span{color:#94a3b8;font-size:10px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.staff-time-off-date-chip strong{color:#1e293b;font-size:13px;font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-time-off-date-chip strong.is-placeholder{color:#94a3b8;font-weight:500}.staff-time-off-field{display:flex;flex-direction:column;gap:3px;margin-bottom:0!important;min-width:0}.staff-time-off-field span{color:#64748b;font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.staff-time-off-field .ant-input,.staff-time-off-field .ant-input-affix-wrapper{border-color:#dbe2ea;border-radius:6px;font-size:13px}.staff-time-off-field .ant-input{height:32px;padding:4px 8px}.staff-time-off-field--note{width:100%}.staff-time-off-form-footer{align-items:center;display:flex;gap:8px;min-height:28px}.staff-time-off-form-actions{align-items:center;display:flex;gap:8px;justify-content:space-between;width:100%}.staff-time-off-form-actions-spacer{display:inline-block;height:1px;width:1px}.staff-time-off-form-actions .ant-btn-link{margin-right:auto;padding-inline:0}.staff-time-off-form-actions .ant-btn-primary{margin-left:auto}.staff-time-off-hint{box-sizing:border-box;color:#4a6280;font-size:12px;font-weight:600;line-height:1.3;margin:0;padding:8px 12px 0;text-align:center}.staff-time-off-form-error{color:#b91c1c;font-size:12px;font-weight:500;margin:0}.staff-time-off-calendar.date-calendar-container{background:#fff;border:none;border-radius:0;box-shadow:none;margin:0;max-width:none;width:100%}.staff-time-off-calendar .ant-picker-calendar{background:#0000;border-radius:0}.staff-time-off-calendar .ant-picker-panel{border:none}.staff-time-off-calendar .ant-picker-content th{color:#94a3b8;font-size:11px;font-weight:600;padding-bottom:4px}.staff-time-off-calendar .availability-calendar-header{gap:8px;min-height:44px;padding:10px 12px 6px}.staff-time-off-cal-nav{align-items:center;box-sizing:border-box;display:flex;gap:8px;justify-content:space-between;padding:10px 10px 4px;width:100%}.staff-time-off-cal-nav-label{color:#1e293b;flex:1 1 auto;font-size:14px;font-weight:650;letter-spacing:.01em;text-align:center}.staff-time-off-cal-nav-btn{align-items:center;-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;display:inline-flex;flex:0 0 auto;height:30px;justify-content:center;margin:0;padding:0;width:30px}.staff-time-off-cal-nav-btn:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;color:#1e293b}.staff-time-off-cal-nav-btn:disabled{cursor:not-allowed;opacity:.35}.staff-time-off-calendar .availability-calendar-header .ant-select .ant-select-selector{border-color:#dbe2ea!important;border-radius:6px!important}.staff-time-off-calendar .ant-picker-cell-in-range:before,.staff-time-off-calendar .ant-picker-cell-in-view.ant-picker-cell-in-range .ant-picker-cell-inner,.staff-time-off-calendar .ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner,.staff-time-off-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover .ant-picker-cell-inner,.staff-time-off-calendar .ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,.staff-time-off-calendar .ant-picker-cell-inner:before,.staff-time-off-calendar .ant-picker-cell-range-end:before,.staff-time-off-calendar .ant-picker-cell-range-hover:before,.staff-time-off-calendar .ant-picker-cell-range-start:before,.staff-time-off-calendar .ant-picker-cell-selected .ant-picker-cell-inner,.staff-time-off-calendar .ant-picker-cell-selected:hover .ant-picker-cell-inner,.staff-time-off-calendar .ant-picker-cell:before,.staff-time-off-calendar .ant-picker-cell:hover .ant-picker-cell-inner{background:#0000!important;border:none!important}.staff-time-off-calendar .ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner:before{display:none!important}.staff-time-off-day{box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;min-height:34px;padding:2px 0;width:100%}.staff-time-off-day,.staff-time-off-day-num{align-items:center;justify-content:center;position:relative}.staff-time-off-day-num{border-radius:50%;color:#334155;display:inline-flex;font-size:13px;height:28px;line-height:1;width:28px;z-index:1}.staff-time-off-day-dot{background:#2f6fed;border-radius:50%;bottom:2px;height:4px;left:50%;margin-left:-2px;position:absolute;width:4px;z-index:2}.staff-time-off-day--muted{cursor:default;pointer-events:none}.staff-time-off-day--muted .staff-time-off-day-num{color:#cbd5e1}.staff-time-off-day--today .staff-time-off-day-num{box-shadow:inset 0 0 0 1.5px #93c5fd;font-weight:600}.staff-time-off-day--in-range:before{background:#cfe0ff;content:"";height:28px;left:0;margin-top:-14px;position:absolute;right:0;top:50%;z-index:0}.staff-time-off-day--from.staff-time-off-day--in-range:before{border-radius:0 0 0 0;left:50%}.staff-time-off-day--to.staff-time-off-day--in-range:before{right:50%}.staff-time-off-day--from.staff-time-off-day--to.staff-time-off-day--in-range:before{display:none}.staff-time-off-day--in-range:not(.staff-time-off-day--from):not(.staff-time-off-day--to) .staff-time-off-day-num{color:#1e3a8a;font-weight:600}.staff-time-off-day--from .staff-time-off-day-num,.staff-time-off-day--to .staff-time-off-day-num{background:#2f6fed;box-shadow:none;color:#fff;font-weight:700}.staff-time-off-day--saved:not(.staff-time-off-day--in-range):not(.staff-time-off-day--from):not(.staff-time-off-day--to) .staff-time-off-day-num{background:#dbeafe;color:#1d4ed8;font-weight:600}.staff-time-off-calendar .ant-picker-cell{padding:1px 0}.staff-time-off-calendar .ant-picker-cell-inner{border-radius:0!important;height:auto!important;line-height:inherit!important;min-width:0!important;padding:0!important}.staff-time-off-calendar .ant-picker-cell-disabled .staff-time-off-day-num{color:#cbd5e1}.staff-time-off-history{background:#fafbfc;display:flex;flex-direction:column;gap:14px;min-width:0;padding:12px;text-align:left;width:100%}.staff-time-off-history-block{min-width:0}.staff-time-off-history h6{align-items:center;color:#64748b;display:flex;font-size:12px;font-weight:700;gap:8px;letter-spacing:.03em;margin:0 0 8px;text-transform:uppercase}.staff-time-off-count{align-items:center;background:#e8eef5;border-radius:999px;color:#4a6280;display:inline-flex;font-size:11px;font-weight:700;height:1.25rem;justify-content:center;letter-spacing:0;min-width:1.25rem;padding:0 6px;text-transform:none}.staff-time-off-empty{background:#fff;border:1px dashed #e2e8f0;border-radius:8px;color:#94a3b8;font-size:13px;margin:0;padding:14px 12px;text-align:center}.staff-time-off-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.staff-time-off-item{align-items:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:8px;justify-content:space-between;padding:9px 10px}.staff-time-off-item--past{opacity:.8}.staff-time-off-item-main{display:flex;flex-direction:column;gap:2px;min-width:0}.staff-time-off-item-main strong{color:#1e293b;font-size:13px;font-weight:600}.staff-time-off-note{color:#64748b;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-time-off-item-actions{align-items:center;display:flex;flex-shrink:0}@media (min-width:768px){.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-time-off-picker{margin:0 auto;max-width:min(360px,100%);width:100%}}@media (min-width:1024px){.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-time-off-layout{align-items:stretch;flex-direction:row;gap:14px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-time-off-picker{flex:0 0 320px;margin:0;max-width:320px}.staff-availabilities-container:not(.staff-availabilities-container--compact) .staff-time-off-history{flex:1 1 auto;min-height:100%}}.compact-datetime-wrap{border-bottom:1px solid #f3f4f6;padding:10px 16px}.compact-datetime{align-items:center;display:flex;gap:3px;min-height:38px}.compact-choice{min-width:0;position:relative}.compact-choice--date{flex:1.25 1}.compact-choice--time{flex:1 1}.compact-choice-trigger{background:#0000;border:1px solid #0000;border-radius:8px;color:#374151;cursor:pointer;font:inherit;font-size:13px;min-width:0;padding:8px 6px;text-align:center;white-space:nowrap;width:100%}.compact-choice-trigger:hover{background:#f9fafb;border-color:#e5e7eb}.compact-choice-trigger:focus-visible,.compact-choice-trigger[aria-expanded=true]{background:#fff;border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa2e;outline:none}.compact-choice-trigger:disabled{background:#f3f4f6;color:#6b7280;cursor:default}.compact-datetime-separator{color:#9ca3af;flex:0 0 auto}.compact-popover{background:#fff;border:1px solid #d1d5db;border-radius:12px;box-shadow:0 12px 28px #0f172a2e;left:0;position:absolute;top:calc(100% + 5px);z-index:1200}.compact-calendar{box-sizing:border-box;padding:12px;width:270px}.compact-calendar-nav{align-items:center;color:#111827;display:flex;font-size:13px;justify-content:space-between;margin-bottom:10px}.compact-calendar-nav div{display:flex;gap:4px}.compact-calendar-nav button,.compact-calendar-today{background:#0000;border:none;color:#2563eb;cursor:pointer}.compact-calendar-nav button{border-radius:7px;font-size:20px;height:30px;width:30px}.compact-calendar-nav button:hover{background:#f3f4f6}.compact-calendar-grid,.compact-calendar-weekdays{grid-gap:3px;display:grid;gap:3px;grid-template-columns:repeat(7,1fr)}.compact-calendar-weekdays span{color:#9ca3af;font-size:10px;font-weight:700;padding:5px 0;text-align:center}.compact-calendar-grid button{background:#0000;border:none;border-radius:8px;color:#374151;cursor:pointer;font-size:12px;height:31px;justify-self:center;width:31px}.compact-calendar-grid button:hover{background:#eff6ff}.compact-calendar-grid button.is-muted{color:#cbd5e1}.compact-calendar-grid button.is-selected{background:#111827;color:#fff;font-weight:700}.compact-calendar-today{display:block;font-size:12px;font-weight:600;margin:10px 0 0 auto;padding:5px}.compact-time-popover{box-sizing:border-box;padding:6px 0 7px;width:auto}.compact-time-popover input{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font:inherit;font-size:12px;height:34px;margin-bottom:6px;min-width:0;padding:0 4px 0 6px;width:100%}.compact-time-popover input[type=time]::-webkit-calendar-picker-indicator{height:14px;margin:0;opacity:.65;padding:0;width:14px}.compact-time-popover input[type=time]::-webkit-datetime-edit{margin:0;padding:0}.compact-time-popover input[type=time]::-webkit-datetime-edit-fields-wrapper{padding:0}.compact-time-popover input[type=time]::-webkit-datetime-edit-ampm-field,.compact-time-popover input[type=time]::-webkit-datetime-edit-hour-field,.compact-time-popover input[type=time]::-webkit-datetime-edit-minute-field{padding:0 1px}.compact-time-list{max-height:220px;overflow-y:auto}.compact-time-list button{background:#0000;border:none;border-radius:7px;color:#374151;cursor:pointer;display:block;font-size:12px;padding:8px 6px;text-align:center;width:100%}.compact-time-list button.is-selected,.compact-time-list button:hover{background:#f3f4f6}.compact-time-list button.is-selected{color:#111827;font-weight:700}@media (max-width:380px){.compact-datetime-wrap{padding-inline:12px}.compact-datetime{gap:1px}.compact-choice-trigger{font-size:12px;padding-inline:3px}.compact-calendar{width:min(270px,calc(100vw - 40px))}}@media (hover:none),(max-width:768px),(pointer:coarse){.compact-time-popover input{display:none}}.settings-tab.schedules-tab{max-width:none;padding-bottom:0}.settings-tab .schedules-tab-header h2{color:#2c3e50;letter-spacing:-.02em}.settings-tab__banner{border-radius:8px;font-size:.875rem;line-height:1.45;margin:0 0 16px;padding:10px 12px}.settings-tab__banner--success{background:#ecfdf5;border:1px solid #86efac;color:#166534}.settings-tab__banner--error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.settings-tab__save-status{color:#64748b;font-size:.8125rem;font-weight:600;letter-spacing:.01em;margin:6px 0 0;min-height:1.25em}.settings-tab.schedules-tab--desktop .settings-tab__save-status{font-size:.875rem}.settings-tab__loading{align-items:center;color:#64748b;display:flex;font-size:.9375rem;justify-content:center;min-height:200px}.settings-tab__stack{display:flex;flex-direction:column;gap:20px;padding-bottom:24px}@media (min-width:768px){.settings-tab__stack{margin-left:auto;margin-right:auto;max-width:880px;padding-bottom:40px}.settings-tab .schedules-tab-header h2{font-size:1.85rem}.settings-tab .schedules-tab-intro{font-size:1.1rem}.settings-tab__banner{font-size:.9375rem}.settings-card__title{font-size:19px}.settings-card__intro{font-size:.9375rem}.settings-check-label,.settings-field__label,.settings-hours-closed-label,.settings-hours-day,.settings-reminder-channel-name,.settings-reminder-enable__title,.settings-tab-address .form-label{font-size:1rem}.settings-field__hint,.settings-reminder-enable__hint{font-size:.875rem}.settings-reminder-field__hint{font-size:.8125rem}.settings-custom-select__trigger,.settings-field__input,.settings-field__select,.settings-field__textarea,.settings-tab-address .form-input,.settings-tab-address .state-input{font-size:17px}.settings-custom-select__option,.settings-reminder-stepper__value{font-size:1rem}.settings-reminder-time-choice .compact-choice-trigger{font-size:.9375rem}.settings-hours-status__label{font-size:.75rem}.settings-hours-time-choice .compact-choice-trigger{font-size:14px}.settings-hours-sep{font-size:1rem}.settings-tab-address .autocomplete-hint{font-size:.8125rem}.settings-field--business-name{margin-left:auto;margin-right:auto;max-width:28rem}}.settings-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;overflow:hidden;width:100%}.settings-card__header{background:#f7f9fc;border-bottom:1px solid #eaecf0;padding:14px 20px}.settings-card__title{align-items:center;color:#2c3e50;display:flex;font-size:17px;font-weight:600;gap:8px;letter-spacing:.3px;margin:0}.settings-card__title:before{background-color:#4a6280;border-radius:2px;content:"";display:inline-block;flex-shrink:0;height:16px;width:4px}.settings-card__body{padding:16px 20px 20px}.settings-card__intro{color:#64748b;font-size:.8125rem;line-height:1.45;margin:0 0 14px}.settings-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.settings-field:last-child{margin-bottom:0}.settings-field__label{color:#374151;font-size:.875rem;font-weight:600}.settings-field__input,.settings-field__select,.settings-field__textarea{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#111827;font-size:16px;line-height:1.35;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.settings-field__select{min-height:42px}.settings-field__textarea{font-family:inherit;min-height:108px;resize:vertical}.settings-field__input:focus,.settings-field__select:focus,.settings-field__textarea:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f133;outline:none}.settings-field__hint{color:#64748b;font-size:.78rem;line-height:1.4;margin:0}.settings-custom-select{display:flex;flex-direction:column;gap:6px;position:relative;width:100%}.settings-custom-select__trigger{align-items:center;-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#111827;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:8px;justify-content:space-between;line-height:1.35;min-height:42px;padding:10px 12px;text-align:left;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.settings-custom-select__trigger:hover:not(:disabled){border-color:#94a3b8}.settings-custom-select__trigger.is-open{border-color:#6366f1;box-shadow:0 0 0 2px #6366f133}.settings-custom-select__trigger.is-placeholder{color:#94a3b8;font-weight:400}.settings-custom-select__trigger.is-disabled,.settings-custom-select__trigger:disabled{background:#f8fafc;cursor:not-allowed;opacity:.55}.settings-custom-select__value{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-custom-select__chevron{color:#64748b;flex-shrink:0;font-size:.75rem;line-height:1}.settings-custom-select__menu-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0f172a1f;overflow:hidden}.settings-custom-select__menu{list-style:none;margin:0;max-height:min(280px,40vh);overflow-y:auto;padding:6px}.settings-custom-select__option{-webkit-appearance:none;appearance:none;background:#0000;border:none;border-radius:8px;box-sizing:border-box;color:#334155;cursor:pointer;display:block;font-size:.9375rem;font-weight:500;padding:10px 12px;text-align:left;width:100%}.settings-custom-select__option:hover{background:#f1f5f9}.settings-custom-select__option.is-selected{background:#eef2ff;color:#4338ca;font-weight:600}.settings-field-grid{grid-gap:14px 16px;display:grid;gap:14px 16px;grid-template-columns:1fr 1fr}.settings-field-grid .settings-field{margin-bottom:0}.settings-tz-booking{box-sizing:border-box;display:flex;flex-direction:column;gap:14px;margin-left:auto;margin-right:auto;max-width:28rem;width:100%}.settings-tz-booking .settings-field{margin-bottom:0}.settings-field--booking-horizon .settings-booking-horizon-stepper{height:42px;margin-left:auto;margin-right:auto;margin-top:0;max-height:42px;max-width:8.5rem;min-height:42px;width:100%}@media (min-width:900px){.settings-tz-booking{grid-gap:14px 20px;align-items:start;display:grid;gap:14px 20px;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);margin-left:0;margin-right:0;max-width:none}.settings-field--booking-horizon .settings-booking-horizon-stepper{height:42px;max-height:42px;max-width:9rem;min-height:42px}}.settings-field--business-name{width:100%}.settings-field--logo{margin-bottom:18px}.settings-field--logo .staff-photo-upload{margin:0}.settings-field--logo .staff-photo-upload__preview--stacked{border-radius:12px;height:96px;width:160px}.settings-reminder-enable{align-items:center;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;display:flex;gap:14px;justify-content:space-between;margin-bottom:14px;padding:12px 14px}.settings-reminder-enable__copy{flex:1 1;min-width:0}.settings-reminder-enable__title{color:#334155;font-size:.875rem;font-weight:650;margin:0}.settings-reminder-enable__hint{color:#64748b;font-size:.78rem;line-height:1.4;margin:4px 0 0}.settings-reminder-switch{flex-shrink:0}.settings-reminder-panel{animation:settings-reminder-panel-in .22s ease;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;gap:16px;margin-top:14px;padding:14px 16px 16px}@keyframes settings-reminder-panel-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.settings-reminder-panel{animation:none}}.settings-reminder-grid{grid-gap:14px 16px;align-items:stretch;display:grid;gap:14px 16px;grid-template-columns:repeat(2,minmax(0,1fr))}.settings-reminder-field{display:flex;flex-direction:column;gap:6px;height:100%;min-width:0}.settings-reminder-stepper{align-items:stretch;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;display:flex;height:42px;margin-top:auto;min-height:42px;overflow:hidden;width:100%}.settings-reminder-field__copy{display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-width:0}.settings-reminder-field__hint{color:#94a3b8;font-size:.72rem;font-weight:500;line-height:1.3;margin:0}.settings-reminder-stepper__value{border-left:1px solid #e2e8f0;border-right:1px solid #e2e8f0;color:#111827;flex:1 1;font-size:.9375rem;min-width:0;padding:0 4px;-webkit-user-select:none;user-select:none}.settings-reminder-stepper__btn,.settings-reminder-stepper__value{align-items:center;display:flex;font-weight:650;justify-content:center}.settings-reminder-stepper__btn{-webkit-appearance:none;appearance:none;background:#f8fafc;border:none;color:#475569;cursor:pointer;flex:0 0 28px;font-size:1rem;line-height:1;margin:0;padding:0}.settings-reminder-stepper__btn:hover:not(:disabled){background:#eef2ff;color:#4338ca}.settings-reminder-stepper__btn:disabled{cursor:not-allowed;opacity:.35}.settings-reminder-time-choice.compact-choice--time{margin-top:auto;max-width:none!important;width:100%!important}.settings-reminder-time-choice .compact-choice-trigger{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#111827;font-weight:500;height:42px;justify-content:flex-start;max-height:42px;max-width:none!important;min-height:42px;min-width:0!important;padding:0 12px;text-align:left;width:100%!important}.settings-reminder-channels{border-top:1.5px solid #e2e8f0;display:flex;flex-direction:column;gap:10px;margin:0;padding-top:2px}.settings-reminder-channels__label{margin:0}.settings-reminder-channel-list{display:flex;flex-direction:column;gap:10px}.settings-reminder-channel-row{align-items:center;display:flex;gap:12px;justify-content:space-between}.settings-reminder-channel-name{color:#374151;font-size:.875rem;font-weight:600}.settings-check-label{align-items:center;color:#374151;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:8px}.settings-check-label input{margin:0}.settings-hours-panel{background:#fff;border:1.5px solid #cbd5e1;border-radius:10px;box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:32rem;overflow:hidden;width:100%}.settings-hours-row{grid-row-gap:12px;grid-column-gap:12px;align-items:center;border-bottom:1.5px solid #e2e8f0;column-gap:12px;display:grid;grid-template-areas:"day status" "times times";grid-template-columns:minmax(0,1fr) auto;padding:14px 16px;row-gap:12px}.settings-hours-row:last-child{border-bottom:none}.settings-hours-row.is-closed{background:#fafafa}.settings-hours-day{align-items:center;color:#334155;display:flex;font-size:.875rem;font-weight:600;gap:8px;grid-area:day;min-width:0;text-transform:capitalize}.settings-hours-row.is-closed .settings-hours-day{color:#94a3b8}.settings-hours-dot{background:#22c55e;border-radius:50%;flex-shrink:0;height:8px;transition:background .2s ease;width:8px}.settings-hours-row.is-closed .settings-hours-dot{background:#94a3b8}.settings-hours-status{background:#f8fafc;border:1px solid #d1d5db;border-radius:999px;box-sizing:border-box;cursor:pointer;display:grid;grid-area:status;grid-template-columns:1fr 1fr;justify-self:end;overflow:hidden;padding:2px;position:relative;-webkit-user-select:none;user-select:none;width:118px}.settings-hours-status:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.settings-hours-status__thumb{background:#6366f1;border-radius:999px;bottom:2px;box-shadow:0 1px 3px #0f172a1f;left:2px;pointer-events:none;position:absolute;top:2px;transition:transform .22s cubic-bezier(.4,0,.2,1),background .22s ease;width:calc(50% - 2px);z-index:0}.settings-hours-status.is-closed .settings-hours-status__thumb{background:#94a3b8;transform:translateX(100%)}.settings-hours-status__label{align-items:center;color:#64748b;display:flex;font-size:.68rem;font-weight:700;justify-content:center;letter-spacing:.03em;line-height:1.2;padding:7px 4px;pointer-events:none;position:relative;text-transform:uppercase;transition:color .2s ease;z-index:1}.settings-hours-status__label.is-active{color:#fff}.settings-hours-times{align-items:center;display:flex;flex-wrap:nowrap;gap:8px;grid-area:times;justify-content:center;justify-self:stretch;min-width:0;width:100%}.settings-hours-closed-label{color:#94a3b8;font-size:.875rem;font-weight:500;text-align:center;width:100%}.settings-hours-times.is-disabled{justify-content:center;opacity:1}.settings-hours-time-choice.compact-choice--time{flex:0 0 auto!important;max-width:none!important;min-width:auto!important;width:auto!important}.settings-hours-time-choice .compact-choice-trigger{box-sizing:border-box;flex-shrink:0;font-size:13px;max-width:6.5rem!important;min-width:6.5rem!important;text-align:center;width:6.5rem!important}.settings-hours-sep{color:#64748b;flex:0 0 auto;font-size:.875rem}@media (prefers-reduced-motion:reduce){.settings-hours-status__thumb{transition:none}}.settings-tab-address .smart-address-container{margin-bottom:0}.settings-tab-address .form-group{display:flex;flex-direction:column;gap:6px;margin:0}.settings-tab-address .form-label{color:#374151;font-size:.875rem;font-weight:600;margin:0}.settings-tab-address .form-input,.settings-tab-address .state-input{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#111827;font-size:16px;height:auto;line-height:1.35;min-height:0;padding:10px 12px;width:100%}.settings-tab-address .form-input:focus,.settings-tab-address .state-input:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f133;outline:none}.settings-tab-address .address-details-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr;margin-top:14px}.settings-tab-address .autocomplete-hint{background:#ecfdf5;border-radius:4px;color:#059669;font-size:.75rem;font-weight:500;padding:2px 6px}@media (min-width:769px){.settings-tab-address .address-details-grid{gap:14px 16px;grid-template-columns:2fr 1fr 1.2fr}}@media (max-width:768px){.settings-field-grid,.settings-reminder-grid{grid-template-columns:1fr}.settings-reminder-grid{gap:12px}.settings-reminder-field{align-items:center;flex-direction:row;gap:12px;height:auto;justify-content:space-between;margin-bottom:0}.settings-reminder-field__copy{flex:1 1;min-width:0}.settings-reminder-field .settings-field__label{flex:none;line-height:1.3;margin:0}.settings-reminder-field .settings-reminder-stepper,.settings-reminder-field .settings-reminder-time-choice.compact-choice--time{flex:0 0 7.25rem;height:34px;margin-top:0;max-height:34px;max-width:7.25rem!important;min-height:34px;min-width:7.25rem!important;width:7.25rem!important}.settings-reminder-field .settings-reminder-stepper__btn{flex-basis:26px;font-size:.9375rem;min-width:26px}.settings-reminder-field .settings-reminder-stepper__value{font-size:.875rem}.settings-field--booking-horizon .settings-booking-horizon-stepper{height:34px;max-height:34px;min-height:34px}.settings-field--booking-horizon .settings-reminder-stepper__btn{flex-basis:26px;font-size:.9375rem;min-width:26px}.settings-field--booking-horizon .settings-reminder-stepper__value{font-size:.875rem}.settings-reminder-field .settings-reminder-time-choice .compact-choice-trigger{border:1px solid #d1d5db;box-sizing:border-box;font-size:.8125rem;height:34px;justify-content:center;max-width:7.25rem!important;min-height:34px;min-width:7.25rem!important;padding:0 10px;text-align:center;width:7.25rem!important}.settings-reminder-channels{gap:8px}.settings-reminder-channels,.settings-reminder-enable{align-items:stretch;flex-direction:column}.settings-reminder-enable .settings-reminder-switch{align-self:center}.settings-hours-row{padding-bottom:16px;padding-top:16px;row-gap:16px}.settings-hours-time-choice .compact-choice-trigger{font-size:12px;max-width:5.25rem!important;min-width:5.25rem!important;padding-left:6px;padding-right:6px;width:5.25rem!important}}@media (max-width:480px){.settings-hours-time-choice .compact-choice-trigger{max-width:5rem!important;min-width:5rem!important;width:5rem!important}.settings-card__body{padding:14px 16px 18px}}@media (min-width:769px){.settings-reminder-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-reminder-channel-list{grid-gap:14px 28px;display:grid;gap:14px 28px;grid-template-columns:repeat(2,minmax(0,1fr));margin-left:auto;margin-right:auto;max-width:28rem}.settings-reminder-channel-row{align-items:center;flex-direction:column;gap:8px;justify-content:flex-start;text-align:center}}.smart-address-container{margin-bottom:24px}.address-autocomplete{position:relative}.address-help{color:#666;display:block;font-size:.85rem;font-style:italic;margin-top:5px}.api-loading{color:#007bff;font-size:.8rem;font-weight:400}.api-warning{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;color:#856404;margin-top:10px;padding:8px 12px}.address-grid-optimized{grid-gap:15px;display:grid;gap:15px;grid-template-columns:2fr 1fr 1fr;margin-top:15px}.address-details-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:2fr 1fr 1.2fr;margin-top:12px}.form-group{display:flex;flex-direction:column}.form-label{align-items:center;color:#374151;display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:6px}.autocomplete-hint{background:#ecfdf5;border-radius:4px;color:#10b981;font-size:12px;font-weight:400;padding:2px 6px}.form-input{background-color:#fff;border:2px solid #e5e7eb;border-radius:8px;font-size:16px;padding:12px 16px;transition:all .2s ease}.form-input:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b9811a;outline:none}.form-input::placeholder{color:#9ca3af}.address-input{position:relative}.pac-container{border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #0000001a;margin-top:4px}.pac-item{border-bottom:1px solid #f3f4f6;cursor:pointer;padding:12px 16px;transition:background-color .15s ease}.pac-item:hover{background-color:#f9fafb}.pac-item:last-child{border-bottom:none}.pac-item-selected{background-color:#ecfdf5}.pac-icon{height:16px;margin-right:12px;width:16px}.pac-item-query{color:#111827;font-size:14px;font-weight:500}.pac-matched{color:#10b981;font-weight:600}@media (max-width:768px){.address-grid-optimized{gap:12px;grid-template-columns:1fr}.address-details-grid{gap:16px;grid-template-columns:1fr}.form-input{font-size:16px}}@media (max-width:480px){.smart-address-container{margin-bottom:20px}.address-grid-optimized{grid-template-columns:1fr}.form-input{padding:14px 16px}}.us-state-selector{position:relative;width:100%}.state-input{background-color:#fff;border:1px solid #ddd;border-radius:5px;cursor:text;font-size:16px;padding:10px;width:100%}.state-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.state-dropdown{background:#fff;border:1px solid #ddd;border-radius:0 0 5px 5px;border-top:none;box-shadow:0 2px 10px #0000001a;left:0;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.state-option{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;gap:10px;padding:10px}.state-option:last-child{border-bottom:none}.state-option:hover{background-color:#f8f9fa}.state-option.no-results{color:#666;cursor:default;font-style:italic}.state-option.no-results:hover{background-color:initial}.state-code{color:#007bff;font-weight:700;min-width:30px}.state-name{color:#333;flex:1 1}.state-dropdown::-webkit-scrollbar{width:6px}.state-dropdown::-webkit-scrollbar-track{background:#f1f1f1}.state-dropdown::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.state-dropdown::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.calendar-header{grid-gap:16px;align-items:start;border-bottom:1px solid #e5e7eb;display:grid;gap:16px;grid-template-columns:1fr auto 1fr;margin-bottom:0;padding:12px 20px 16px 12px}.calendar-header-primary{align-items:center;display:flex;flex-direction:column;gap:10px;grid-column:2;min-width:0}.calendar-header-meta{gap:12px;grid-column:3;justify-content:flex-end;justify-self:end;padding-top:2px}.calendar-header-meta,.calendar-header-nav{align-items:center;display:flex;flex-shrink:0}.calendar-header-nav{gap:10px;justify-content:center}.calendar-nav-button{align-items:center;border-radius:999px;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:4px;justify-content:center;min-height:40px;min-width:88px;padding:8px 20px;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.calendar-nav-button--ghost{background-color:#fff;border:1px solid #d1d5db;color:#374151}.calendar-nav-button--ghost:hover{background-color:#f9fafb;border-color:#9ca3af}.calendar-nav-button--ghost:active{background-color:#f3f4f6}.calendar-nav-button--today{background-color:#1d4ed8;border:1px solid #1d4ed8;box-shadow:0 1px 2px #1d4ed840;color:#fff;min-width:100px;padding-left:22px;padding-right:22px}.calendar-nav-button--today:hover{background-color:#1e40af;border-color:#1e40af}.calendar-nav-button--today:active{background-color:#1e3a8a}.calendar-nav-chevron{font-size:18px;font-weight:700;line-height:1}.calendar-date-range{color:#111827;font-size:16px;font-weight:600;line-height:1.3;min-width:0;text-align:center}.calendar-date-range--phone{display:none}.calendar-export-trigger{align-items:center;background:#eff6ff;border:none;border-radius:999px;color:#1d4ed8;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:13px;font-weight:600;gap:6px;min-height:34px;padding:6px 12px 6px 10px;transition:background-color .15s ease,color .15s ease}.calendar-export-trigger:hover{background:#dbeafe;color:#1e40af}.calendar-export-trigger:active{background:#bfdbfe}.calendar-export-trigger-icon{flex-shrink:0}@media (max-width:767px){.calendar-header{align-items:stretch;border-bottom:none;display:flex;flex-direction:column;gap:10px;padding:10px 8px 6px}.calendar-header-primary{align-items:stretch;grid-column:auto;order:2;width:100%}.calendar-date-range--desktop{display:none}.calendar-header-meta{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-column:auto;grid-template-columns:1fr auto 1fr;justify-content:normal;justify-self:auto;order:1;padding-top:0;width:100%}.calendar-date-range--phone{display:block;font-size:16px;grid-column:2;justify-self:center;text-align:center}.calendar-header-nav{justify-content:space-between;width:100%}.calendar-nav-button{flex:1 1;font-size:12px;min-height:32px;min-width:0;padding:5px 12px}.calendar-nav-button--today{flex:1.2 1;min-width:0;padding-left:14px;padding-right:14px}.calendar-nav-label{font-size:12px}.calendar-nav-chevron{font-size:16px}.calendar-export-trigger{background:#0000;box-shadow:inset 0 0 0 1px #93c5fd;color:#1d4ed8;font-size:12px;grid-column:3;justify-self:end;min-height:32px;padding:5px 11px 5px 9px}.calendar-export-trigger:hover{background:#eff6ff}}.appointment-tooltip{background:#111827;border-radius:6px;box-shadow:0 4px 14px #00000040;color:#f9fafb;font-size:12px;line-height:1.35;max-width:240px;min-width:160px;padding:8px 10px;pointer-events:none;position:fixed;z-index:1000}.appointment-tooltip-name{font-weight:700;margin-bottom:4px}.appointment-tooltip-row{color:#e5e7eb;margin-top:2px}.appointment-tooltip-status{color:#fde68a;font-weight:600;margin-top:6px;text-transform:capitalize}.appointment-tooltip-contact{border-top:1px solid #ffffff26;color:#d1d5db;font-size:11px;margin-top:6px;padding-top:6px}.appointment-block{border-left:3px solid #11182738;border-radius:4px;box-shadow:0 1px 2px #00000014;color:#111827;cursor:pointer;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:3px 5px;position:relative;touch-action:pan-y;transition:box-shadow .12s ease,filter .12s ease,z-index 0s;z-index:5}.appointment-block:hover{box-shadow:0 2px 6px #00000024;filter:brightness(.97);z-index:6}.appointment-block:active{opacity:.92;transform:scale(.985)}.appointment-block:focus-visible{outline:2px solid #111827;outline-offset:1px}.appointment-block--cancelled,.appointment-block--no-show{border-left-color:#9ca3af;box-shadow:none;opacity:.85}.appointment-block--cancelled .appointment-customer,.appointment-block--cancelled .appointment-service-staff,.appointment-block--cancelled .appointment-time,.appointment-block--no-show .appointment-customer,.appointment-block--no-show .appointment-service-staff,.appointment-block--no-show .appointment-time{color:#6b7280;text-decoration:line-through}.appointment-status-tag{align-self:flex-start;color:#4b5563;display:inline-block;font-size:9px;font-weight:700;letter-spacing:.02em;margin-top:1px;white-space:nowrap}.appointment-block-content{display:flex;flex-direction:column;gap:1px;height:100%;justify-content:flex-start;min-height:0;min-width:0}.appointment-customer{color:#111827;font-size:11px;font-weight:700;line-height:1.2;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-customer--unknown{color:#4b5563;font-style:italic;font-weight:600}.appointment-service-staff{color:#1f2937;font-weight:500;min-width:0}.appointment-service-staff,.appointment-time{font-size:10px;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-time{color:#374151;font-weight:600;letter-spacing:-.01em}.appointment-walkin{align-self:flex-start;background:#ffe066f2;border-radius:2px;color:#856404;display:inline-block;font-size:9px;font-weight:600;margin-top:1px;padding:1px 4px;white-space:nowrap}.appointment-block--google{padding-bottom:14px;padding-right:16px}.appointment-block--event{border-left:3px solid #0f172a59}.appointment-block--reminder{background-image:repeating-linear-gradient(-45deg,#0000,#0000 4px,#ffffff1f 0,#ffffff1f 8px);border:1.5px dashed #b45309b3}.appointment-block--time-off{background-image:repeating-linear-gradient(-45deg,#0000,#0000 5px,#ffffff1a 0,#ffffff1a 10px);border:1.5px dashed #64748bd9;cursor:default}.appointment-block--time-off-blended{background-image:none;border:1px dashed #94a3b859;box-shadow:none;cursor:default;pointer-events:none}.appointment-block--time-off-blended .appointment-customer,.appointment-block--time-off-blended .appointment-kind-tag{color:#94a3b8;font-size:10px;font-weight:600;letter-spacing:.02em}.appointment-kind-tag{font-size:9px;font-weight:700;letter-spacing:.04em;margin-top:1px;opacity:.9}.appointment-google-badge{align-items:center;background:#ffffffeb;border-radius:2px;bottom:2px;box-shadow:0 0 0 1px #0000000f;display:flex;height:12px;justify-content:center;line-height:0;pointer-events:none;position:absolute;right:3px;width:12px}.appointment-google-badge svg{display:block}@media (max-width:768px){.appointment-customer{font-size:10px}.appointment-service-staff,.appointment-time{font-size:9px}.appointment-walkin{font-size:8px;padding:1px 3px}}.calendar-grid-container{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;flex:1 1;min-height:0;overflow-x:auto;overflow-y:auto;overscroll-behavior:contain;position:relative;width:100%}.calendar-grid-container .calendar-grid{--calendar-time-col:max-content;border:1px solid #e5e7eb;display:grid;grid-template-columns:var(--calendar-time-col) repeat(3,1fr);grid-template-rows:32px repeat(48,35px);margin:0;min-width:360px}@media (min-width:768px){.calendar-grid-container .calendar-grid{grid-template-columns:var(--calendar-time-col) repeat(7,1fr);min-width:760px}}.calendar-grid-header{display:contents}.calendar-time-header{grid-column:1;grid-row:1;left:0;z-index:20}.calendar-day-header,.calendar-time-header{background-color:#f9fafb;border-bottom:2px solid #d1d5db;border-right:1px solid #e5e7eb;position:sticky;top:0}.calendar-day-header{align-items:baseline;display:flex;flex-direction:row;font-weight:600;gap:5px;justify-content:center;padding:4px 6px;z-index:10}.calendar-day-header--today{background-color:#eef4ff}.calendar-day-header--today .day-date{color:#1d4ed8}.day-date{color:#111827;font-size:14px;font-weight:700;line-height:1.2}.day-name{color:#6b7280;font-size:11px;font-weight:500;line-height:1.2;text-transform:uppercase}.calendar-time-label{background-color:#f9fafb;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;color:#6b7280;font-size:11px;grid-column:1;left:0;padding:4px 6px;position:sticky;text-align:right;touch-action:pan-y;white-space:nowrap;z-index:10}.calendar-time-label.full-hour{border-top:2px solid #d1d5db}.calendar-time-label.half-hour-before-full{border-bottom:none}.calendar-grid-container .calendar-grid{position:relative}.current-time-indicator-label{background-color:#000;border-radius:3px;color:#fff;font-size:11px;font-weight:600;padding:2px 6px;pointer-events:none;white-space:nowrap}.calendar-cell{background-color:#fff;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;cursor:cell;min-height:35px;position:relative;touch-action:pan-y}.calendar-cell--today{background-color:#f5f8ff}.calendar-cell--today:hover{background-color:#eef4ff}.calendar-cell--outside-hours{background-color:#f0f1f3;background-image:repeating-linear-gradient(-45deg,#0000,#0000 4px,#0f172a08 0,#0f172a08 8px)}.calendar-cell--outside-hours.calendar-cell--today{background-color:#e8ecf4;background-image:repeating-linear-gradient(-45deg,#0000,#0000 4px,#1d4ed80a 0,#1d4ed80a 8px)}.calendar-cell--outside-hours:hover{background-color:#e8eaed}.calendar-cell--staff-off{background-color:#eceff3;background-image:none}.calendar-cell--staff-off.calendar-cell--today{background-color:#e4e8ef}.calendar-cell--staff-off:hover{background-color:#e2e6ec}.calendar-cell--staff-off-blended{background-color:#f8fafcd9;background-image:none}.calendar-cell--staff-off-blended.calendar-cell--today{background-color:#f1f5f9e6}.calendar-cell--staff-off-blended:hover,.calendar-cell:hover{background-color:#f9fafb}.calendar-cell--hover-create{background-color:#f8fafc!important}.calendar-slot-ghost{align-items:flex-start;background:#64748b0f;border:1.5px solid #64748b;border-radius:3px;box-sizing:border-box;display:flex;inset:2px;padding:2px 4px;pointer-events:none;position:absolute}.calendar-slot-ghost-time{color:#475569;font-size:10px;font-weight:600;line-height:1.2;white-space:nowrap}.calendar-cell--dragging{cursor:ns-resize;-webkit-user-select:none;user-select:none}.calendar-cell--drag-create{background-color:#64748b14!important}.calendar-create-drag-ghost{background:#4755692e;border:1.5px solid #475569;border-radius:3px;box-sizing:border-box;margin:0 1px;padding:3px 5px;pointer-events:none;position:absolute;z-index:9}.calendar-create-drag-ghost-label{color:#1e293b;display:flex;flex-direction:column;font-size:10px;font-weight:600;gap:1px;line-height:1.2}.calendar-create-drag-ghost-mins{color:#475569;font-size:9px;font-weight:500}.calendar-grid--creating .appointment-block{pointer-events:none}.calendar-grid-container--creating{overscroll-behavior:none;touch-action:none}.calendar-cell.full-hour{border-top:2px solid #d1d5db}.calendar-cell.half-hour-before-full{border-bottom:none}.current-time-indicator{pointer-events:none}.calendar-filters{background:#fff;border-bottom:none;flex-shrink:0;padding:8px 12px 10px;position:relative;z-index:40}.calendar-filters-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}@media (min-width:768px){.calendar-filters-row{justify-content:center}}.calendar-filter-dropdown{box-sizing:border-box;display:flex;justify-content:center;min-width:0;padding:0 4px;position:relative}.calendar-filter-trigger{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#111827;cursor:pointer;display:inline-flex;font-size:13px;gap:8px;justify-content:center;max-width:min(100vw - 32px,280px);min-height:36px;padding:6px 12px;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.calendar-filter-trigger:hover{background:#f9fafb;border-color:#9ca3af}.calendar-filter-trigger--open{background:#eff6ff;border-color:#1d4ed8;box-shadow:0 0 0 2px #3b82f633}.calendar-filter-trigger-label{color:#6b7280;flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.calendar-filter-trigger-value{color:#111827;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-filter-chevron{color:#6b7280;flex-shrink:0;font-size:11px;margin-left:2px}.calendar-filter-menu{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0f172a1f;box-sizing:border-box;display:flex;flex-direction:column;left:0;max-height:min(360px,55vh);max-width:min(280px,calc(100vw - 24px));min-width:100%;overflow:hidden;position:absolute;top:calc(100% + 6px);width:max-content;z-index:60}.calendar-filter-menu--end{left:auto;right:0}.calendar-filter-menu-toolbar{align-items:center;display:flex;flex-shrink:0;gap:12px;justify-content:space-between;padding:10px 12px 6px}.calendar-filter-link-btn{background:none;border:none;color:#1d4ed8;cursor:pointer;font-size:12px;font-weight:600;padding:0}.calendar-filter-link-btn:hover{text-decoration:underline}.calendar-filter-search{display:block;flex-shrink:0;padding:0 12px 8px}.calendar-filter-search input{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:13px;max-width:100%;padding:8px 10px;width:12rem}.calendar-filter-search input:focus{border-color:#93c5fd;box-shadow:0 0 0 2px #3b82f633;outline:none}.calendar-filter-options{display:flex;flex:1 1;flex-direction:column;gap:6px;list-style:none;margin:0;min-height:0;overflow-y:auto;padding:4px 8px 10px}.calendar-filter-option{align-items:center;background:#0000;border:1px solid #0000;border-radius:8px;box-sizing:border-box;color:#374151;cursor:pointer;display:flex;font-size:14px;gap:8px;height:38px;margin:0;padding:0 10px;text-align:left;transition:background-color .12s ease,border-color .12s ease,color .12s ease;width:100%}.calendar-filter-option:hover{background:#f3f4f6}.calendar-filter-option--on{background:#eff6ff;border-color:#93c5fd;color:#1e3a8a;font-weight:600}.calendar-filter-option:not(.calendar-filter-option--on){background:#fff;border-color:#e5e7eb;color:#6b7280}.calendar-filter-avatar{align-items:center;background:#e5e7eb;border-radius:50%;color:#4b5563;display:inline-flex;flex-shrink:0;font-size:9px;font-weight:700;height:22px;justify-content:center;overflow:hidden;width:22px}.calendar-filter-option--on .calendar-filter-avatar{background:#dbeafe;color:#1d4ed8}.calendar-filter-avatar img{height:100%;object-fit:cover;width:100%}.calendar-filter-option-label{flex:1 1;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-filter-option--status{justify-content:center}.calendar-filter-option--status .calendar-filter-option-label{flex:0 1 auto;text-align:center}.calendar-filter-empty{color:#9ca3af;font-size:13px;padding:12px 10px}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media (max-width:768px){.calendar-filters{padding:8px 12px 10px}.calendar-filter-trigger{max-width:none;width:100%}.calendar-filters-row{width:100%}.calendar-filter-dropdown{flex:1 1;min-width:calc(50% - 4px);padding:0 4px}.calendar-filter-menu{left:0;max-width:100%;min-width:100%;right:auto;width:100%}.calendar-filter-menu--end{left:auto;right:0}.calendar-filter-search input{font-size:16px;width:100%}}.staff-color-legend{align-items:center;display:flex;flex-wrap:wrap;gap:6px 10px;margin:0;padding:2px 12px 10px}@media (min-width:768px){.staff-color-legend{justify-content:center}}.staff-color-legend-chip{align-items:center;display:inline-flex;gap:5px;max-width:100%;min-width:0}.staff-color-legend-swatch{border-radius:2px;box-shadow:inset 0 0 0 1px #00000014;flex-shrink:0;height:10px;width:10px}.staff-color-legend-name{color:#4b5563;font-size:11px;font-weight:500;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:767px){.staff-color-legend{gap:4px 8px;justify-content:center;padding:0 12px 8px}.staff-color-legend-name{font-size:10px;max-width:100px}}.staff-color-legend--bar{flex-wrap:wrap;gap:6px 10px;justify-content:center;padding:0}.appt-dtp{box-sizing:border-box;margin-inline:auto;max-width:320px;padding-top:4px;width:100%}.appt-dtp-nav{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.appt-dtp-month{color:#111827;font-size:14px;font-weight:600}.appt-dtp-nav-btn{background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;height:32px;width:32px}.appt-dtp-nav-btn:hover:not(:disabled){background:#f3f4f6}.appt-dtp-nav-btn:disabled{cursor:not-allowed;opacity:.35}.appt-dtp-grid,.appt-dtp-weekdays{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,minmax(0,1fr))}.appt-dtp-weekday{color:#9ca3af;font-size:11px;font-weight:600;padding:4px 0;text-align:center}.appt-dtp-day{aspect-ratio:1;background:#0000;border:none;border-radius:8px;color:#111827;cursor:pointer;font-size:13px;font-weight:500}.appt-dtp-day:hover{background:#f3f4f6}.appt-dtp-day--muted{color:#d1d5db}.appt-dtp-day--today{box-shadow:inset 0 0 0 1px #93c5fd}.appt-dtp-day--selected{background:#111827;color:#fff}.appt-dtp-day--selected:hover{background:#1f2937}.appt-dtp-times-label{color:#6b7280;font-size:12px;font-weight:600;margin-bottom:6px;margin-top:12px;padding-inline:8px}.appt-dtp-empty{color:#9ca3af;font-size:13px;margin:0;padding:10px 8px 6px;text-align:center}.appt-dtp-times{grid-gap:6px;box-sizing:border-box;display:grid;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr));max-height:180px;overflow-y:auto;padding:0 8px 4px}.appt-dtp-time{background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;font-size:12px;font-weight:600;padding:8px 4px}.appt-dtp-time:hover{background:#f9fafb}.appt-dtp-time.appt-dtp-time--selected{background:#111827!important;border:2px solid #111827;color:#fff!important;font-weight:700}.appt-dtp-time.appt-dtp-time--selected:hover{background:#1f2937!important;color:#fff!important}.appt-dtp-custom{border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:6px;margin-top:12px;padding-top:10px}.appt-dtp-custom-label{color:#6b7280;font-size:12px;font-weight:600}.appt-dtp-custom-input{background:#fff;color:#111827;font-size:14px}.appt-dtp-custom-input,.appt-dtp-use-now{border:1px solid #e5e7eb;border-radius:8px;padding:8px 10px}.appt-dtp-use-now{background:#f9fafb;color:#374151;cursor:pointer;display:block;font-size:13px;font-weight:600;margin:0 0 10px;max-width:320px;width:100%}.appt-dtp-use-now:hover{background:#f3f4f6}.calendar-export-overlay{align-items:center;background:#11182773;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1200}.calendar-export-modal{background:#fff;border-radius:12px;box-shadow:0 12px 40px #0000002e;display:flex;flex-direction:column;max-height:min(86vh,640px);overflow:visible;width:min(400px,calc(100vw - 32px))}.calendar-export-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;justify-content:space-between;padding:14px 16px 10px}.calendar-export-header h2{color:#111827;font-size:1.1rem;font-weight:600;margin:0}.calendar-export-close{background:#0000;border:none;color:#6b7280;cursor:pointer;font-size:1.5rem;line-height:1;padding:0 4px}.calendar-export-body{display:flex;flex:1 1;flex-direction:column;gap:12px;min-height:0;overflow:visible;padding:12px 16px 8px}.calendar-export-dates{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.calendar-export-date-field{min-width:0;position:relative}.calendar-export-date-label{color:#6b7280;display:block;font-size:.7rem;font-weight:700;letter-spacing:.04em;margin-bottom:4px;text-transform:uppercase}.calendar-export-date-trigger{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#111827;cursor:pointer;font-size:13px;font-weight:600;min-height:40px;padding:8px 10px;text-align:center;width:100%}.calendar-export-date-trigger--open,.calendar-export-date-trigger:focus{background:#eff6ff;border-color:#1d4ed8;outline:none}.calendar-export-date-popover{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 28px #0000001f;left:0;min-width:240px;padding:10px;position:absolute;right:0;top:calc(100% + 6px);z-index:30}.calendar-export-dates>:last-child .calendar-export-date-popover{left:auto;right:0}.calendar-export-dtp{max-width:none;padding-top:0}.calendar-export-filters{display:flex;gap:8px;width:100%}.calendar-export-filter{flex:1 1;min-width:0;padding:0}.calendar-export-filter .calendar-filter-trigger{max-width:none;width:100%}.calendar-export-filter .calendar-filter-menu{left:0;max-height:min(280px,45vh);right:0;width:auto;z-index:40}.calendar-export-portal-menu.calendar-filter-menu{max-height:min(360px,55vh)}.calendar-export-portal-menu.calendar-export-date-popover{min-width:240px}.calendar-export-cat-heading{color:#6b7280;font-size:11px;font-weight:700;letter-spacing:.04em;list-style:none;padding:8px 10px 4px;text-transform:uppercase}.calendar-export-hint{color:#6b7280;font-size:.75rem;margin:8px 10px}.calendar-export-google{align-items:flex-start;color:#111827;display:flex;font-size:.875rem;gap:8px}.calendar-export-delivery{color:#6b7280;font-size:.8rem;margin:0}.calendar-export-message{border-radius:6px;font-size:.85rem;padding:8px 10px}.calendar-export-message--success{background:#ecfdf5;color:#065f46}.calendar-export-message--error{background:#fef2f2;color:#991b1b}.calendar-export-footer{border-top:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:8px;justify-content:center;padding:12px 16px}.calendar-export-primary,.calendar-export-secondary{border-radius:999px;cursor:pointer;font-size:.875rem;font-weight:600;padding:10px 16px}.calendar-export-primary{background:#1d4ed8;border:none;color:#fff}.calendar-export-primary:disabled{cursor:not-allowed;opacity:.6}.calendar-export-secondary{background:#fff;border:1px solid #d1d5db;color:#374151}@media (min-width:768px){.calendar-export-modal{width:min(480px,calc(100vw - 32px))}.calendar-export-date-popover{min-width:260px}}.calendar-view{box-sizing:border-box;display:flex;flex-direction:column;height:100%;overflow:hidden;padding:0;position:relative;width:100%}.calendar-chrome{background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0;position:relative;z-index:40}.calendar-chrome--mobile{border-top:none;z-index:50}.calendar-chrome__bar{align-items:center;background:#fff;display:flex;flex-direction:row;justify-content:center;min-height:32px;padding:2px 12px 8px;position:relative}.calendar-chrome__bar--open{gap:6px;justify-content:flex-start;padding:4px 8px 8px}.calendar-chrome__toggle{align-items:center;-webkit-appearance:none;appearance:none;background:#0000;border:none;border-radius:6px;color:#4b5563;cursor:pointer;display:inline-flex;flex-shrink:0;font:inherit;font-size:.75rem;font-weight:600;gap:4px;justify-content:center;left:8px;min-height:28px;padding:4px 6px;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.calendar-chrome__bar--open .calendar-chrome__toggle{background:#f3f4f6;border-radius:999px;left:auto;padding:4px 8px;position:static;top:auto;transform:none}.calendar-chrome__toggle:hover{background:#f3f4f6;border-color:#0000;color:#111827}.calendar-chrome__bar .staff-color-legend--bar{flex:0 1 auto;justify-content:center;max-width:calc(100% - 88px);min-width:0;padding:0}.calendar-chrome__bar--open .calendar-filters{background:#0000;flex:1 1;min-width:0;padding:0;z-index:52}.calendar-chrome__bar--open .calendar-filters-row{flex-wrap:nowrap;gap:6px;justify-content:stretch}.calendar-chrome__bar--open .calendar-filter-dropdown{flex:1 1;justify-content:stretch;min-width:0;padding:0}.calendar-chrome__bar--open .calendar-filter-trigger{border-radius:999px;font-size:11px;gap:4px;max-width:none;min-height:28px;padding:3px 8px;width:100%}.calendar-chrome__bar--open .calendar-filter-trigger-label{font-size:9px;letter-spacing:.03em}.calendar-chrome__bar--open .calendar-filter-trigger-value{font-size:11px;font-weight:600}.calendar-chrome__bar--open .calendar-filter-chevron{font-size:9px}.calendar-chrome__bar--open .calendar-filter-menu{max-width:100%;min-width:100%;width:100%}.calendar-chrome__bar--open .calendar-filter-menu--end{left:auto;right:0}.calendar-chrome__bar--open .calendar-filter-search input{width:100%}.calendar-chrome__panel{background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 8px 20px #0f172a1f;left:0;padding:6px 8px 10px;position:absolute;right:0;top:100%;z-index:51}.calendar-chrome__panel .calendar-filters{padding:0 4px 4px}.calendar-chrome__panel .staff-color-legend{justify-content:center;padding:0}.calendar-filter-sidebar-slot{align-self:stretch;flex:0 0 36px;position:relative;width:36px;z-index:45}.calendar-filter-sidebar{background:#f8f9fb;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;min-height:0;transition:width .18s ease,box-shadow .18s ease}.calendar-filter-sidebar.is-collapsed{border-bottom:none;border-radius:0;box-shadow:none;inset:0;position:absolute;width:auto}.calendar-filter-sidebar.is-open{border-bottom:1px solid #e5e7eb;border-radius:0 0 10px 0;box-shadow:4px 0 18px #0f172a1f;height:auto;left:0;max-height:100%;position:absolute;top:0;width:220px}.calendar-filter-sidebar__toggle{align-items:center;-webkit-appearance:none;appearance:none;background:#f1f3f6;border:none;border-bottom:1px solid #e5e7eb;color:#374151;cursor:pointer;display:flex;flex-shrink:0;font:inherit;font-size:.8rem;font-weight:600;gap:8px;justify-content:space-between;padding:10px 12px;width:100%}.calendar-filter-sidebar.is-collapsed .calendar-filter-sidebar__toggle{align-items:center;justify-content:center;min-height:40px;padding:10px 0}.calendar-filter-sidebar__expand{color:#4b5563;font-size:1.1rem;font-weight:700;line-height:1}.calendar-filter-sidebar__toggle:hover{background:#e8eaed}.calendar-filter-sidebar__body{flex:0 1 auto;min-height:0;overflow-x:visible;overflow-y:auto;padding:10px 8px 16px}@media (min-width:769px){.calendar-filter-sidebar.is-open,.calendar-filter-sidebar__body{overflow:visible}.calendar-filter-sidebar .calendar-filter-menu{z-index:100}}.calendar-filter-sidebar__rail{align-items:stretch;display:flex;flex:1 1 auto;flex-direction:column;justify-content:flex-start;min-height:0;overflow-y:auto;padding:0}.calendar-filter-sidebar .calendar-filters{background:#0000;padding:0}.calendar-filter-sidebar .calendar-filters-row{align-items:stretch;flex-direction:column;gap:10px;justify-content:flex-start}.calendar-filter-sidebar .calendar-filter-dropdown{justify-content:stretch;padding:0;width:100%}.calendar-filter-sidebar .calendar-filter-trigger{justify-content:space-between;max-width:none;width:100%}.calendar-filter-sidebar .calendar-filter-menu{left:0;min-width:200px;right:0;width:auto}.calendar-filter-sidebar .staff-color-legend{align-items:stretch;flex-direction:column;gap:8px;justify-content:flex-start;padding:12px 4px 0}.calendar-filter-sidebar .staff-color-legend-name{max-width:none}.calendar-filter-sidebar .staff-color-legend--rail{align-items:center;flex-wrap:nowrap;gap:0;justify-content:flex-start;padding:0}.calendar-filter-sidebar .staff-color-legend--rail .staff-color-legend-chip{align-items:center;border-bottom:1px solid #dde1e6;box-sizing:border-box;flex-direction:column;gap:6px;justify-content:flex-start;padding:10px 4px 12px;width:100%}.calendar-filter-sidebar .staff-color-legend--rail .staff-color-legend-chip:last-child{border-bottom:none}.calendar-filter-sidebar .staff-color-legend--rail .staff-color-legend-swatch{border-radius:3px;height:12px;width:12px}.calendar-filter-sidebar .staff-color-legend--rail .staff-color-legend-name{color:#374151;font-size:11px;font-weight:600;letter-spacing:.02em;line-height:1.2;max-width:none;overflow:visible;text-overflow:clip;transform:rotate(180deg);writing-mode:vertical-rl}.calendar-body{display:flex;flex:1 1;flex-direction:row;min-height:0;overflow:hidden;position:relative}.calendar-main{min-width:0}.calendar-grid-wrap,.calendar-main{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;position:relative}.calendar-grid-overlay{align-items:center;background:#ffffffa6;color:#6b7280;display:flex;font-size:16px;inset:0;justify-content:center;pointer-events:none;position:absolute;z-index:5}.loading-spinner{text-align:center}.calendar-empty-filter{align-items:center;color:#6b7280;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:24px;text-align:center}.calendar-empty-filter p{color:#374151;font-size:16px;font-weight:600;margin:0 0 8px}.calendar-empty-filter-hint{color:#6b7280!important;font-size:13px!important;font-weight:400!important;max-width:280px}.calendar-error{align-items:center;display:flex;flex:1 1;justify-content:center;padding:20px}.error-message p{font-size:16px;margin:0 0 12px}.retry-button{background-color:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;margin-top:12px;padding:8px 16px;transition:background-color .2s}.retry-button:hover{background-color:#2563eb}.retry-button:active{background-color:#1d4ed8}.event-color-swatches-collapsed{align-items:center;display:flex;gap:10px;margin-top:4px}.event-color-swatches-collapse,.event-color-swatches-expand{background:none;border:none;color:#2563eb;cursor:pointer;font-size:13px;font-weight:600;padding:0}.event-color-swatches-wrap{margin-top:4px}.event-color-control{position:relative}.event-color-swatches-collapsed--compact{margin:0}.event-color-swatches-wrap--compact{background:#fff;border:1px solid #d1d5db;border-radius:10px;box-shadow:0 8px 24px #0f172a2e;left:0;padding:10px;position:absolute;top:calc(100% + 6px);width:220px;z-index:40}.event-color-control--compact{height:28px;width:42px}.event-color-trigger{align-items:center;background:#0000;border:none;cursor:pointer;display:inline-flex;gap:3px;padding:0}.event-color-caret{color:#9ca3af;font-size:12px;font-weight:700;line-height:1;text-align:center;width:10px}.event-color-swatches{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(5,1fr);max-width:220px}.event-color-swatch{border:2px solid #0000;border-radius:50%;box-shadow:inset 0 0 0 1px #00000014;cursor:pointer;height:32px;justify-self:center;padding:0;width:32px}.event-color-swatch--selected{box-shadow:0 0 0 2px #111827,inset 0 0 0 1px #0000000f}.event-color-swatch--trigger{flex-shrink:0}.event-color-swatches-collapsed--compact .event-color-swatch--trigger{display:inline-block;height:28px;width:28px}.event-color-swatch:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.event-color-trigger:focus-visible{border-radius:999px;outline:2px solid #2563eb;outline-offset:3px}.event-color-swatches-collapse{margin-top:8px}.clients-tab{box-sizing:border-box;margin:0 auto;max-width:720px;padding:16px 16px 56px}@media (max-width:767.98px){.clients-tab--mobile-profile,.clients-tab:not(.clients-tab--desktop){padding-left:0;padding-right:0}}.clients-tab--desktop{box-sizing:border-box;display:flex;flex-direction:column;height:100%;margin:0;max-width:none;min-height:0;padding:16px 20px 20px}.clients-tab--mobile-profile{max-width:720px;padding-bottom:56px}.clients-tab-header{align-items:flex-start;display:flex;flex-shrink:0;gap:16px;justify-content:space-between;margin-bottom:8px}.clients-tab-header-text{min-width:0}.clients-tab-title{color:#111827;font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0 0 4px}.clients-tab-sub{color:#6b7280;font-size:.9rem;margin:0}.clients-muted{color:#6b7280;font-size:.9rem;margin:0 0 12px}.clients-sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@keyframes client-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.client-skeleton-avatar,.client-skeleton-card,.client-skeleton-line,.client-skeleton-pill,.client-skeleton-tab{animation:client-skeleton-shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#eef0f3 25%,#f7f8fa 50%,#eef0f3 75%);background-size:200% 100%}.client-profile-loading{padding-top:8px}.client-skeleton-hero,.clients-list-item--skeleton{align-items:center;box-shadow:none;cursor:default;display:flex;gap:14px;pointer-events:none}.clients-list-item--skeleton:hover{background:#fff;transform:none}.client-skeleton-avatar{border-radius:50%;display:block;flex-shrink:0;height:56px;width:56px}.client-skeleton-avatar--sm{height:40px;width:40px}.client-skeleton-copy{display:flex;flex:1 1;flex-direction:column;gap:8px;min-width:0}.client-skeleton-line{border-radius:6px;display:block;height:12px;width:100%}.client-skeleton-line--title{height:16px;width:55%}.client-skeleton-line--sub{width:72%}.client-skeleton-line--short{width:40%}.client-skeleton-actions{display:flex;gap:8px;margin:16px 0}.client-skeleton-pill{border-radius:999px;display:block;height:36px;width:72px}.client-skeleton-tabs{border-bottom:1px solid #e5e7eb;display:flex;gap:16px;margin-bottom:14px;padding-bottom:10px}.client-skeleton-tab{border-radius:6px;display:block;height:12px;width:72px}.client-skeleton-card{animation:none;background-color:#f8fafc;background-image:none;border:1px solid #eef0f3;border-radius:14px;display:flex;flex-direction:column;gap:12px;min-height:120px;padding:16px}.client-skeleton-card .client-skeleton-line{animation:client-skeleton-shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#eef0f3 25%,#f7f8fa 50%,#eef0f3 75%);background-size:200% 100%}.clients-error{color:#b00020;margin:8px 0}.clients-toolbar-btn{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #d1d5db;border-radius:10px;color:#374151;cursor:pointer;flex-shrink:0;font:inherit;font-size:.875rem;font-weight:600;padding:8px 14px;transition:background .15s ease,border-color .15s ease,color .15s ease}.clients-toolbar-btn:hover{background:#f3f4f6;border-color:#9ca3af}.clients-toolbar-btn.is-active{background:#4b5563;border-color:#4b5563;color:#fff}.clients-master-detail{grid-gap:0;background:#fff;border:1px solid #e5e7eb;border-radius:14px;display:grid;flex:1 1;gap:0;grid-template-columns:minmax(280px,340px) 1fr;min-height:0;overflow:hidden}.clients-list-panel{min-width:0}.clients-tab--desktop .clients-list-panel{background:#fafbfc;border-right:1px solid #e5e7eb;overflow-y:auto;padding:14px 12px 20px}.clients-detail-panel{background:#fff;min-width:0;overflow-y:auto;padding:16px 20px 28px}.clients-detail-empty{align-items:center;color:#9ca3af;display:flex;font-size:.95rem;justify-content:center;min-height:240px;padding:24px;text-align:center}.clients-search-row{margin-bottom:12px}.clients-search-input{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-sizing:border-box;font-size:1rem;padding:12px 14px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.clients-search-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f12e;outline:none}.clients-count{color:#9ca3af;font-size:.75rem;font-weight:500;margin:0 0 8px}.clients-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.clients-list-item{align-items:center;background:#fff;border:1px solid #0000;border-radius:12px;cursor:pointer;display:flex;gap:12px;padding:10px 12px;text-align:left;transition:background .12s ease,border-color .12s ease;width:100%}.clients-tab:not(.clients-tab--desktop) .clients-list-item{border-color:#eef0f3;box-shadow:0 1px 2px #1018280a;margin-bottom:0}.clients-list-item:hover{background:#f3f4f6}.clients-list-item.is-active{background:#eef2ff;border-color:#c7d2fe}.clients-list-item.is-selected:not(.is-active){background:#f8fafc;border-color:#c7d2fe}.clients-avatar{align-items:center;background:linear-gradient(145deg,#818cf8,#4f46e5);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.85rem;font-weight:700;height:40px;justify-content:center;letter-spacing:.02em;width:40px}.clients-list-body{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.clients-list-name{color:#111827;font-size:.95rem;font-weight:650}.clients-list-meta{color:#6b7280;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clients-list-chevron{color:#d1d5db;flex-shrink:0;font-size:1.25rem}.clients-list-item-main{align-items:center;background:#0000;border:none;color:inherit;cursor:pointer;display:flex;flex:1 1;font:inherit;gap:12px;min-width:0;padding:0;text-align:left}.clients-select-cb{flex-shrink:0;height:18px;margin:0 0 0 2px;width:18px}.client-profile{min-width:0}.client-profile--embedded{max-width:560px}.client-profile-topbar{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.clients-back{background:none;border:none;color:#4f46e5;cursor:pointer;font-size:.95rem;font-weight:600;margin-bottom:4px;padding:0}.client-profile-icon-btn{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #e5e7eb;border-radius:10px;color:#374151;cursor:pointer;font-size:1rem;height:36px;line-height:1;width:36px}.client-profile-icon-btn--hero{flex-shrink:0;margin-left:auto}.client-profile-hero{align-items:center;display:flex;gap:14px;margin-bottom:14px}.client-profile-avatar{align-items:center;background:linear-gradient(145deg,#818cf8,#4f46e5);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.15rem;font-weight:700;height:56px;justify-content:center;width:56px}.client-profile-hero-text{flex:1 1;min-width:0}.client-profile-name{color:#111827;font-size:1.35rem;font-weight:700;letter-spacing:-.02em;margin:0 0 4px}.client-profile-sub{color:#6b7280;font-size:.85rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-quick-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.client-action-btn{align-items:center;-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #d1d5db;border-radius:999px;color:#374151;cursor:pointer;display:inline-flex;font:inherit;font-size:.875rem;font-weight:600;justify-content:center;min-height:36px;padding:0 14px;text-decoration:none;transition:background .12s ease,border-color .12s ease}.client-action-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.client-action-btn:disabled{cursor:default;opacity:.45}.client-action-btn:focus{outline:none}.client-action-btn:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.client-profile-tabs{border-bottom:1px solid #e5e7eb;display:flex;gap:4px;margin-bottom:14px}.client-profile-tab{-webkit-appearance:none;appearance:none;background:#0000;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;font:inherit;font-size:.9rem;font-weight:500;margin-bottom:-1px;padding:10px 14px}.client-profile-tab.is-active{border-bottom-color:#111827;color:#111827;font-weight:650}.client-history-card,.client-profile-card{background:#fff;border:1px solid #eef0f3;border-radius:14px;box-shadow:0 1px 2px #1018280a;margin-bottom:12px;padding:16px}.client-profile-card-head{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.client-profile-card-title{color:#9ca3af;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.client-profile-card-head .client-profile-icon-btn{flex-shrink:0}.client-about-dl{display:flex;flex-direction:column;gap:14px;margin:0}.client-about-dl>div{grid-gap:8px;align-items:baseline;display:grid;gap:8px;grid-template-columns:88px 1fr}.client-about-dl dt{color:#9ca3af;font-size:.8rem;font-weight:600;letter-spacing:.04em;margin:0;text-transform:uppercase}.client-about-dl dd{color:#111827;font-size:.95rem;margin:0;word-break:break-word}.client-about-dl a{color:#4f46e5;font-weight:500;text-decoration:none}.client-about-dl a:hover{text-decoration:underline}.client-profile-form{display:flex;flex-direction:column;gap:12px}.client-profile-form label{color:#333;display:flex;flex-direction:column;font-size:.85rem;font-weight:600;gap:4px}.client-notes-label textarea,.client-profile-form input,.client-profile-form textarea{border:1px solid #d1d5db;border-radius:8px;font-family:inherit;font-size:1rem;font-weight:400;padding:10px 12px}.client-notes-label textarea:focus,.client-profile-form input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126;outline:none}.client-notes-label textarea{min-height:8.5rem;resize:none}.client-profile-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.client-profile-span-2{grid-column:1/-1}.client-notes-label{color:#333;display:flex;flex-direction:column;font-size:.85rem;font-weight:600;gap:6px;margin-bottom:8px}.client-profile-actions{align-items:center;display:flex;flex-direction:column;gap:10px;margin-top:8px}.client-profile-actions--row{flex-direction:row;flex-wrap:wrap;justify-content:center}.clients-save-btn{background:#4f46e5;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 18px}.clients-save-btn:disabled{cursor:default;opacity:.5}.clients-secondary-btn{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 16px}.clients-secondary-btn:disabled{cursor:default;opacity:.45}.client-save-toast{color:#059669;font-size:.85rem;font-weight:600;margin:0 0 10px}.client-save-toast--error{color:#b91c1c}.clients-empty-history{margin-bottom:0}.clients-appt-timeline{display:flex;flex-direction:column;gap:8px}.clients-appt-year-group{position:relative}.clients-appt-year{color:#9ca3af;font-size:.75rem;font-weight:700;letter-spacing:.04em;margin-bottom:4px;text-align:center}.clients-appt-list{list-style:none;margin:0;padding:0}.clients-appt-item{border-bottom:1px solid #f3f4f6;padding:12px 0}.clients-appt-item:last-child{border-bottom:none}.clients-appt-row-main{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin-bottom:9px}.clients-appt-date{color:#111827;font-weight:650}.clients-appt-time{color:#4b5563;flex-shrink:0;font-size:.9rem;margin-left:auto;text-align:right}.clients-appt-row-meta{align-items:center;color:#374151;display:flex;font-size:.9rem;gap:10px;justify-content:space-between}.clients-appt-who{align-items:baseline;display:flex;flex-wrap:wrap;gap:0 8px;min-width:0}.clients-appt-service{font-weight:560}.clients-appt-staff{color:#6b7280}.clients-appt-staff:before{color:#d1d5db;content:"·";margin-right:8px}.clients-appt-row-status{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:6px;justify-content:flex-end;margin-left:auto}.clients-status{background:#f3f4f6;border-radius:999px;color:#4b5563;display:inline-block;font-size:.75rem;font-weight:600;padding:2px 8px;text-transform:capitalize}.clients-status-confirmed,.clients-status-scheduled{background:#eef2ff;color:#4338ca}.clients-status-completed{background:#ecfdf5;color:#047857}.clients-status-cancelled,.clients-status-no-show{background:#fef2f2;color:#b91c1c}.clients-walkin-badge{background:#f3f4f6;border-radius:999px;color:#6b7280;display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.04em;padding:2px 7px;text-transform:uppercase}@media (max-width:480px){.client-profile-grid{grid-template-columns:1fr}.client-profile-span-2{grid-column:auto}.client-about-dl>div{gap:2px;grid-template-columns:1fr}}@media (min-width:768px){.clients-tab--desktop{padding-bottom:20px}.clients-consolidate-fab{display:none}}.field-suggest-wrap{position:relative}.customer-lookup-results{background:#fff;border:1px solid #e0e0e0;border-radius:10px;box-shadow:0 4px 12px #00000014;list-style:none;margin:6px 0 0;max-height:160px;overflow-y:auto;padding:0;position:static;z-index:2}.customer-lookup-results li button{background:#0000;border:none;border-bottom:1px solid #f0f0f0;cursor:pointer;padding:10px 12px;text-align:left;width:100%}.customer-lookup-results li:last-child button{border-bottom:none}.customer-lookup-results li button:hover{background:#f5f9ff}.customer-lookup-hint{color:#666;font-size:.8rem;margin:4px 0 0}.clients-consolidate-fab{background:#4f46e5;border:none;border-radius:22px;bottom:calc(88px + env(safe-area-inset-bottom, 0px));box-shadow:0 4px 14px #4f46e559;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:13px 18px;position:fixed;right:20px;transition:background-color .2s ease,box-shadow .2s ease;z-index:900}.clients-consolidate-fab:hover{background:#4338ca;box-shadow:0 4px 18px #4f46e573}.clients-consolidate-fab.is-active{background:#6b7280;box-shadow:0 4px 14px #6b728059}.clients-consolidate-fab.is-active:hover{background:#4b5563}.clients-merge-bar{background:#f8fafc;color:#4b5563}.clients-merge-banner,.clients-merge-bar{align-items:center;border-radius:10px;display:flex;font-size:.9rem;gap:12px;justify-content:space-between;margin:0 0 14px;padding:10px 12px}.clients-merge-banner{background:#ecfdf5;color:#047857;flex-shrink:0;font-weight:600}.clients-merge-banner button{background:#0000;border:none;color:#047857;cursor:pointer;font-weight:600;text-decoration:underline}.clients-merge-fieldset{border:1px solid #eef0f3;border-radius:12px;margin:0 0 18px;padding:12px 14px}.clients-merge-fieldset legend{color:#9ca3af;font-size:.75rem;font-weight:700;letter-spacing:.06em;padding:0 4px;text-transform:uppercase}.clients-merge-keep{align-items:flex-start;cursor:pointer;display:flex;gap:10px;padding:8px 0}.clients-merge-keep+.clients-merge-keep{border-top:1px solid #f3f4f6}.clients-merge-meta{color:#6b7280;display:block;font-size:.85rem;font-weight:400;margin-top:2px}.clients-merge-fields{display:flex;flex-direction:column;gap:16px;margin-bottom:18px}.clients-merge-field-label{color:#374151;font-size:.8rem;font-weight:700;margin-bottom:8px}.clients-merge-options{display:flex;flex-direction:column;gap:8px}.clients-merge-option{background:#fff;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer;padding:10px 12px;text-align:left}.clients-merge-option.is-selected{background:#eef2ff;border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.clients-merge-option-from{color:#9ca3af;display:block;font-size:.75rem;font-weight:600;margin-bottom:2px}.clients-merge-option-val{color:#111827;font-size:.95rem;word-break:break-word}.clients-merge-form{display:flex;flex-direction:column}.clients-merge-actions{display:flex;justify-content:center;margin-top:8px}.clients-merge--embedded{box-sizing:border-box;max-width:100%;overflow-x:hidden;padding:12px 16px 20px;width:100%}.clients-merge-embedded-intro{font-size:.85rem;line-height:1.4;margin:0 0 14px}.clients-merge--embedded .clients-merge-actions,.clients-merge--embedded .clients-merge-fields,.clients-merge--embedded .clients-merge-fieldset,.clients-merge--embedded .clients-merge-form,.clients-merge--embedded .clients-merge-option,.clients-merge--embedded .clients-merge-options{box-sizing:border-box;max-width:100%}.clients-merge--embedded .clients-merge-fieldset{margin-left:0;margin-right:0;min-width:0;padding:10px 12px;width:100%}.clients-merge--embedded .clients-merge-keep{align-items:flex-start;min-width:0}.clients-merge--embedded .clients-merge-keep>span{flex:1 1;min-width:0;overflow-wrap:anywhere;word-break:break-word}.clients-merge--embedded .clients-merge-option{min-width:0;width:100%}.clients-merge--embedded .clients-merge-meta,.clients-merge--embedded .clients-merge-option-val{overflow-wrap:anywhere;word-break:break-word}.clients-merge--embedded .clients-save-btn{box-sizing:border-box;line-height:1.3;max-width:100%;text-align:center;white-space:normal;width:auto}.appt-shell-overlay{align-items:center;background:#00000073;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.appt-shell{background:#fff;border-radius:14px;box-shadow:0 8px 32px #0000002e;display:flex;flex-direction:column;max-height:92vh;max-width:420px;overflow:hidden;width:100%}.appt-shell-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;flex-shrink:0;gap:8px;justify-content:space-between;padding:14px 16px}.appt-shell-header-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#111827;cursor:pointer;display:inline-flex;font-size:20px;height:36px;justify-content:center;line-height:1;width:36px}.appt-shell-header-btn:hover{background:#f3f4f6}.appt-shell-header-btn:disabled{cursor:not-allowed;opacity:.45}.appt-shell-title{color:#111827;flex:1 1;font-size:17px;font-weight:600;margin:0;text-align:center}.appt-shell-header-actions{align-items:center;display:flex;gap:4px;justify-content:flex-end;min-width:72px}.appt-shell-save{background:#111827;border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 14px}.appt-shell-save:disabled{cursor:not-allowed;opacity:.5}.appt-shell-body{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto;padding:0 0 16px}.appt-tabs{background:#f3f4f6;border-radius:10px;display:flex;gap:4px;margin:12px 16px 8px;padding:4px}.appt-tab{background:#0000;border:none;border-radius:8px;color:#6b7280;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:8px 10px}.appt-tab--active{background:#fff;box-shadow:0 1px 2px #0000000f;color:#111827}.appt-row{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;gap:12px;padding:14px 16px}.appt-row-icon{align-items:center;background:#f3f4f6;border-radius:50%;color:#6b7280;display:inline-flex;flex-shrink:0;font-size:13px;font-weight:700;height:28px;justify-content:center;width:28px}.appt-row-icon--service{background:#fb923c;color:#fff}.appt-row-body{flex:1 1;min-width:0}.appt-row-label{color:#9ca3af;font-size:12px;margin-bottom:2px}.appt-row-primary{color:#111827;font-size:15px;font-weight:600;line-height:1.3}.appt-row-meta{color:#6b7280;display:flex;flex-wrap:wrap;font-size:13px;gap:12px;margin-top:4px}.appt-guest-card{align-items:flex-start;display:flex;gap:10px;margin-top:8px}.appt-avatar{align-items:center;background:#e5e7eb;border-radius:50%;color:#374151;display:inline-flex;flex-shrink:0;font-size:13px;font-weight:700;height:40px;justify-content:center;width:40px}.appt-avatar--sm{font-size:11px;height:28px;width:28px}.appt-guest-name{color:#111827;font-size:14px;font-weight:600}.appt-guest-contact{color:#6b7280;font-size:13px;word-break:break-word}.appt-status-pill{background:#fef3c7;border-radius:999px;color:#92400e;display:inline-block;font-size:12px;font-weight:600;margin-top:4px;padding:2px 8px;text-transform:capitalize}.appt-status-pill--confirmed{background:#d1fae5;color:#065f46}.appt-status-pill--cancelled{background:#fee2e2;color:#991b1b}.appt-status-pill--no-show{background:#ffedd5;color:#9a3412}.appt-status-pill--completed,.appt-status-pill--in-progress{background:#e0e7ff;color:#3730a3}.appt-status-update{padding:12px 16px 4px}.appt-status-update-row{align-items:center;display:flex;gap:12px;justify-content:space-between}.appt-status-update-label{color:#374151;flex-shrink:0;font-size:13px;font-weight:600}.appt-status-dropdown{flex:1 1;margin-left:auto;max-width:200px;position:relative}.appt-status-dropdown-trigger{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#111827;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:8px;justify-content:center;padding:8px 28px 8px 12px;position:relative;text-align:center;width:100%}.appt-status-dropdown-trigger:hover:not(:disabled){background:#f9fafb}.appt-status-dropdown-trigger:disabled{cursor:not-allowed;opacity:.55}.appt-status-dropdown-trigger--confirmed{background:#ecfdf5;border-color:#86efac;color:#065f46}.appt-status-dropdown-trigger--cancelled{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.appt-status-dropdown-trigger--no-show{background:#fff7ed;border-color:#fdba74;color:#9a3412}.appt-status-dropdown-trigger--scheduled{background:#fffbeb;border-color:#fcd34d;color:#92400e}.appt-status-dropdown-caret{color:inherit;font-size:11px;opacity:.7;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.appt-status-dropdown-menu{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 8px 20px #0000001f;list-style:none;margin:0;padding:4px}.appt-status-dropdown-menu--portal{max-height:min(240px,calc(100vh - 16px));overflow-y:auto}.appt-status-dropdown-option{background:#0000;border:none;border-radius:6px;color:#111827;cursor:pointer;font-size:13px;font-weight:600;padding:9px 10px;text-align:center;width:100%}.appt-status-dropdown-option:hover{background:#f3f4f6}.appt-status-dropdown-option--confirmed:hover{background:#ecfdf5;color:#065f46}.appt-status-dropdown-option--cancelled:hover{background:#fef2f2;color:#991b1b}.appt-status-dropdown-option--no-show:hover{background:#fff7ed;color:#9a3412}.appt-status-dropdown-option--scheduled:hover{background:#eff6ff;color:#1e40af}.appt-status-dropdown-option--current{cursor:default;opacity:.55}.appt-status-dropdown-option--current:hover{background:#0000;color:inherit}.appt-status-confirm-fields{margin:0 0 18px}.appt-status-notify-option{align-items:center;color:#1f2937;display:flex;font-size:.92rem;font-weight:600;gap:9px;margin-bottom:14px}.appt-status-notify-option input{accent-color:#2563eb;height:17px;width:17px}.appt-status-notify-unavailable{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#4b5563;font-size:.88rem;line-height:1.4;margin:0 0 14px;padding:10px 12px}.appt-status-reason-label{color:#374151;display:block;font-size:.88rem;font-weight:600;margin-bottom:6px}.appt-status-reason-label span{color:#6b7280;font-weight:400}.appt-status-reason-input{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;color:#111827;font:inherit;min-height:76px;padding:9px 10px;resize:vertical;width:100%}.appt-status-reason-input:focus{border-color:#2563eb;outline:2px solid #2563eb38}.appt-status-reason-help{color:#6b7280;font-size:.78rem;line-height:1.35;margin:6px 0 0}.appt-lifecycle-error{color:#b91c1c;font-size:12px;margin-top:8px;text-align:center;width:100%}.appt-lifecycle{padding:12px 16px 4px}.appt-lifecycle-label{color:#6b7280;font-size:12px;font-weight:600;margin-bottom:8px}.appt-lifecycle-actions{display:flex;flex-wrap:wrap;gap:8px}.appt-lifecycle-btn{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;padding:8px 12px}.appt-lifecycle-btn:disabled{cursor:not-allowed;opacity:.5}.appt-lifecycle-btn--confirm{background:#ecfdf5;border-color:#86efac;color:#065f46}.appt-lifecycle-btn--cancel{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.appt-lifecycle-btn--noshow{background:#fff7ed;border-color:#fdba74;color:#9a3412}.appt-lifecycle-btn--undo{background:#eff6ff;border-color:#93c5fd;color:#1e40af}.appt-history-date{color:#4b5563;font-size:13px;font-weight:600;padding:12px 16px 4px}.appt-history-item{display:flex;gap:12px;padding:10px 16px 14px}.appt-history-time{color:#9ca3af;flex-shrink:0;font-size:12px;padding-top:4px;width:56px}.appt-history-body{flex:1 1;min-width:0}.appt-history-who{align-items:center;display:flex;gap:8px;margin-bottom:4px}.appt-history-name{color:#111827;font-size:14px;font-weight:600}.appt-history-text{color:#4b5563;font-size:13px;line-height:1.4}.appt-history-text strong{color:#111827}.appt-history-channel{border-radius:4px;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.02em;padding:1px 6px;vertical-align:1px}.appt-history-channel--walkin{background:#fef3c7;color:#92400e}.appt-history-channel--phone{background:#e0e7ff;color:#3730a3}.appt-history-notes{background:#f9fafb;border-left:2px solid #d1d5db;color:#374151;margin-top:6px;white-space:pre-wrap;word-break:break-word}.appt-history-notes,.appt-status-history-entry{font-size:12px;line-height:1.4;padding:8px 10px}.appt-status-history-entry{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;margin-top:7px}.appt-status-history-summary{color:#334155;font-weight:600}.appt-status-history-reason{white-space:pre-wrap;word-break:break-word}.appt-status-history-fields,.appt-status-history-reason{color:#475569;margin-top:3px}.appt-status-history-delivery{color:#64748b;margin-top:3px}.appt-muted{color:#9ca3af;font-size:14px;padding:24px 16px;text-align:center}.appt-error{color:#b91c1c;font-size:13px;padding:12px 16px}.appt-edit-row{align-items:flex-start;background:#fff;border:none;border-bottom:1px solid #f3f4f6;box-sizing:border-box;cursor:pointer;display:flex;gap:12px;padding:14px 16px;text-align:left;width:100%}.appt-edit-row:hover{background:#fafafa}.appt-edit-row:disabled,.appt-edit-row[aria-disabled=true]{cursor:default;opacity:1}.appt-edit-row:disabled:hover,.appt-edit-row[aria-disabled=true]:hover{background:#fff}.appt-edit-row--open{background:#f9fafb}.appt-edit-chevron{color:#9ca3af;flex-shrink:0;font-size:18px;line-height:1;margin-top:2px}.appt-edit-expand{background:#f9fafb;border-bottom:1px solid #f3f4f6;padding:0 16px 14px}.appt-edit-expand--centered,.appt-edit-expand--datetime{align-items:center;display:flex;flex-direction:column}.appt-edit-expand--centered>:not(.appt-edit-expand-inner),.appt-edit-expand--datetime>:not(.appt-edit-expand-inner),.appt-edit-expand-inner{box-sizing:border-box;max-width:320px;width:100%}.appt-edit-expand .form-input,.appt-edit-expand .form-textarea{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:14px;padding:10px 12px;width:100%}.appt-edit-expand .form-textarea{min-height:72px;resize:vertical}.appt-edit-hint{color:#9ca3af;font-size:12px;margin:0 0 8px}.appt-service-picker{display:flex;flex-direction:column;gap:6px;width:100%}.appt-service-picker [role=listbox]{display:flex;flex-direction:column;gap:8px;width:100%}.appt-service-back{align-self:flex-start;background:#0000;border:none;color:#6b7280;cursor:pointer;font-size:12px;font-weight:600;padding:4px 0 8px}.appt-service-back:hover{color:#111827}.appt-service-option{align-items:flex-start;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:10px 12px;text-align:left;width:100%}.appt-service-option:hover{background:#fafafa;border-color:#d1d5db}.appt-service-option--selected{background:#fff7ed;border-color:#fb923c;box-shadow:inset 0 0 0 1px #fb923c}.appt-service-option-name{color:#111827;font-size:14px;font-weight:600}.appt-service-option-meta{color:#6b7280;font-size:12px}.appt-staff-inline{align-items:center;display:flex;gap:8px}.appt-create-type{margin-top:12px}.appt-create-success{align-items:center;display:flex;flex-direction:column;padding-bottom:24px}.appt-create-success-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:8px}.appt-shell-save--secondary{background:#fff;border:1px solid #d1d5db;color:#111827}.appt-shell-save--secondary:hover{background:#f9fafb}.field-optional{color:#9ca3af;font-weight:400}.appt-datetime-inline-error,.appt-edit-expand .input-error-message,.appt-edit-expand-inner .input-error-message{color:#b91c1c;font-size:12px;margin-top:6px}.appt-datetime-inline-error{font-weight:500;line-height:1.35;white-space:normal}.appt-create-dtp-wrap{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;flex-direction:column;padding:10px 16px 14px}.appt-create-dtp-wrap .appt-dtp,.appt-create-dtp-wrap .appt-lifecycle-error{margin-inline:auto;max-width:320px;width:100%}.appt-create-dtp-wrap .appt-lifecycle-error{text-align:center}.appt-create-dtp-prerequisite{color:#6b7280;font-size:14px;line-height:1.45;margin:0;max-width:320px;padding:28px 16px 32px;text-align:center}.appt-edit-expand .form-input.error{border-color:#fca5a5}.event-name-row{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:10px;padding:12px 16px}.event-name-row--reminder{padding-left:16px}.event-name-color{flex-shrink:0;position:relative}.event-location-row input,.event-name-input{background:#0000;border:none;color:#111827;flex:1 1;font:inherit;font-size:15px;font-weight:600;min-width:0;padding:8px 2px}.event-location-row{align-items:center;border-bottom:1px solid #f3f4f6;color:#9ca3af;display:flex;gap:12px;padding:8px 18px 10px}.event-location-row input{font-size:14px;font-weight:400}.event-location-row input:focus,.event-name-input:focus{outline:none}.event-location-row input::placeholder,.event-name-input::placeholder{color:#9ca3af}.appt-shell-body:has(.clients-merge--embedded){overflow-x:hidden;padding-bottom:8px}.front-desk-view{display:flex;flex-direction:column;height:100%;min-height:0;position:relative;width:100%}.front-desk-fab{background:#007bff;border:none;border-radius:22px;bottom:88px;box-shadow:0 4px 14px #007bff66;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:13px 18px;position:fixed;right:20px;transition:background-color .2s ease,box-shadow .2s ease;z-index:900}.front-desk-fab:hover{background:#0056b3;box-shadow:0 4px 18px #007bff80}.front-desk-toast{animation:front-desk-toast-in .3s ease;background:#28a745;border-radius:8px;bottom:88px;box-shadow:0 2px 12px #00000026;color:#fff;font-size:.9rem;left:50%;padding:12px 24px;position:fixed;transform:translateX(-50%);z-index:1200}@keyframes front-desk-toast-in{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.front-desk-error-banner{align-items:center;animation:front-desk-toast-in .3s ease;background:#dc3545;border-radius:8px;box-shadow:0 4px 16px #dc354566;color:#fff;display:flex;gap:12px;left:50%;max-width:calc(100vw - 32px);padding:12px 16px 12px 20px;position:fixed;top:16px;transform:translateX(-50%);z-index:1100}.front-desk-error-banner-text{flex:1 1;font-size:.9rem;line-height:1.3}.front-desk-error-banner-dismiss{align-items:center;background:#ffffff40;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.25rem;height:28px;justify-content:center;line-height:1;padding:0;transition:background .2s;width:28px}.front-desk-error-banner-dismiss:hover{background:#fff6}.calendar-import-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.calendar-import-modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:1000px;overflow-y:auto;position:relative;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e1e5e9;display:flex;justify-content:space-between;padding:24px 24px 16px}.modal-header h2{color:#1a1a1a;font-size:24px;font-weight:600;margin:0}.close-button{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;font-size:28px;padding:4px;transition:all .2s}.close-button:hover{background-color:#f5f5f5;color:#333}.close-button:disabled{cursor:not-allowed;opacity:.5}.progress-indicator{background-color:#f8f9fa;border-bottom:1px solid #e1e5e9;display:flex;justify-content:space-between;padding:20px 24px}.progress-step{align-items:center;display:flex;flex:1 1;flex-direction:column;position:relative}.progress-step:not(:last-child):after{background-color:#e1e5e9;content:"";height:2px;left:50%;position:absolute;top:20px;width:100%;z-index:1}.progress-step.active:not(:last-child):after{background-color:#007bff}.step-number{align-items:center;background-color:#e1e5e9;background-color:#fff;border:2px solid #e1e5e9;border-radius:50%;color:#666;display:flex;font-weight:600;height:40px;justify-content:center;margin-bottom:8px;position:relative;width:40px;z-index:2}.progress-step.active .step-number{background-color:#007bff;border-color:#007bff;color:#fff}.step-label{color:#666;font-size:14px;font-weight:500;text-align:center}.progress-step.active .step-label{color:#007bff;font-weight:600}.modal-content{padding:24px 24px 100px}.modal-content h3{color:#1a1a1a;font-size:20px;font-weight:600;margin:0 0 16px}.modal-content p{color:#666;line-height:1.5;margin:0 0 20px}.upload-section{text-align:center}.file-upload-area{background-color:#f8f9ff;border:2px dashed #007bff;border-radius:8px;cursor:pointer;padding:40px 20px;transition:all .2s}.file-upload-area:hover{background-color:#f0f4ff;border-color:#0056b3}.upload-icon{font-size:48px;margin-bottom:16px}.file-info{color:#888;font-size:14px;margin-top:8px}.file-selected{background-color:#e8f5e8;border:1px solid #c3e6c3;border-radius:8px;margin-top:20px;padding:16px}.file-selected p{color:#2d5a2d;font-weight:500;margin:4px 0}.processing{margin-top:20px;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:40px;margin:0 auto 16px;width:40px}.spinner.large{border-width:6px;height:60px;width:60px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.content-mapping-section{width:100%}.mapping-options{margin:24px 0}.mapping-option{background-color:#f8f9fa;border:1px solid #e1e5e9;border-radius:8px;margin-bottom:20px;padding:20px}.mapping-option h4{color:#333;font-size:18px;margin:0 0 12px}.mapping-option p{color:#666;margin:0 0 16px}.option-example{background-color:#fff;border:1px solid #e1e5e9;border-radius:6px;display:flex;flex-direction:column;gap:4px;margin:16px 0;padding:12px}.example-label{color:#888;font-size:12px;font-weight:600;text-transform:uppercase}.example-value{background-color:#f8f9fa;border-radius:4px;color:#333;font-family:monospace;font-size:14px;padding:4px 8px}.mapping-option select{background-color:#fff;border:1px solid #ddd;border-radius:6px;font-size:16px;margin:12px 0;padding:12px;width:100%}.option-help{color:#28a745;font-size:14px;font-style:italic;margin:8px 0 0}.auto-mapping-info{background-color:#e8f4fd;border:1px solid #bee5eb;border-radius:8px;margin:24px 0;padding:20px}.auto-mapping-info h4,.auto-mapping-info p{color:#0c5460;margin:0 0 12px}.auto-mapping-info ul{margin:0;padding-left:20px}.auto-mapping-info li{color:#0c5460;margin:8px 0}.import-summary{background-color:#f8f9fa;border:1px solid #e1e5e9;border-radius:8px;margin:24px 0;padding:20px}.import-summary h4{color:#333;margin:0 0 12px}.import-summary p{color:#555;margin:8px 0}.data-review-section{width:100%}.sample-appointment{background-color:#f8f9fa;border:1px solid #e1e5e9;border-radius:8px;margin:24px 0;padding:20px}.sample-appointment h4{color:#333;margin:0 0 16px}.appointment-details{background-color:#fff;border:1px solid #e1e5e9;border-radius:6px;padding:16px}.detail-row{border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:8px 0}.detail-row:last-child{border-bottom:none}.detail-row .label{color:#555;font-weight:600}.detail-row .value{color:#333;text-align:right}.import-notes{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin:24px 0;padding:20px}.import-notes h4{color:#856404;margin:0 0 12px}.import-notes ul{margin:0;padding-left:20px}.import-notes li{color:#856404;margin:8px 0}.saving-section{padding:40px 20px;text-align:center}.saving-animation{margin:24px 0}.saving-animation p{color:#333;font-size:16px;margin:16px 0}.progress-text{color:#666;font-size:14px}.success-message{margin:24px 0;text-align:center}.success-icon{font-size:64px;margin-bottom:16px}.success-message h4{color:#28a745;font-size:24px;margin:0 0 16px}.success-message p{color:#666;margin:8px 0}.button-group{display:flex;gap:16px;justify-content:space-between;margin-top:32px}.btn-primary,.btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:500;min-width:120px;padding:12px 24px;transition:all .2s}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}.btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#545b62}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24;font-weight:500;margin:16px 0;padding:16px;text-align:center}.mapping-progress{margin:20px 0 30px;text-align:center}.progress-bar{background-color:#e5e7eb;border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:4px;height:100%;transition:width .3s ease}.mapping-progress p{color:#6b7280;font-size:14px;margin:0}.current-mapping-step{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;margin:20px 0;padding:24px;width:100%}.step-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.step-header h4{color:#1f2937;font-size:20px;font-weight:600;margin:0}.optional-badge,.required-badge{border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.required-badge{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626}.optional-badge{background-color:#f0fdf4;border:1px solid #a7f3d0;color:#059669}.step-description{color:#6b7280;font-size:16px;line-height:1.5;margin-bottom:20px}.step-actions{align-items:center;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:space-between;margin-top:24px;padding-top:20px}.step-actions .btn-outline{background:#0000;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s ease}.step-actions .btn-outline:hover{background:#f9fafb;border-color:#9ca3af;color:#374151}.step-actions .btn-primary:disabled{background:#d1d5db;color:#9ca3af;cursor:not-allowed;opacity:.6}.mapping-navigation-footer{align-items:center;background:#fff;border-bottom-left-radius:12px;border-bottom-right-radius:12px;border-top:1px solid #e5e7eb;bottom:0;box-shadow:0 -4px 6px -1px #0000001a;display:flex;gap:12px;justify-content:space-between;left:0;padding:16px 24px;position:absolute;right:0;z-index:10}.mapping-navigation-footer .btn-outline{background:#0000;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s ease}.mapping-navigation-footer .btn-outline:hover{background:#f9fafb;border-color:#9ca3af;color:#374151}.mapping-navigation-footer .btn-primary:disabled{background:#d1d5db;color:#9ca3af;cursor:not-allowed;opacity:.6}.mapping-section{margin:20px 0}.mapping-section h3{color:#1f2937;font-size:18px;margin-bottom:8px}.mapping-section>p{color:#6b7280;font-size:14px;margin-bottom:24px}.optional-fields,.required-fields{margin:24px 0}.optional-fields h4,.required-fields h4{border-bottom:2px solid #e5e7eb;color:#374151;font-size:16px;font-weight:600;margin-bottom:16px;padding-bottom:8px}.required-fields h4{border-bottom-color:#fecaca;color:#dc2626}.optional-fields h4{border-bottom-color:#a7f3d0;color:#059669}.custom-selection{display:flex;flex-direction:column;gap:8px;margin:12px 0}.selection-option{align-items:center;background:#fff;border:2px solid #e1e5e9;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:all .2s ease}.selection-option:hover{background:#f8fafc;border-color:#3b82f6}.selection-option.selected{background:#eff6ff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.option-content{display:flex;flex:1 1;flex-direction:column;gap:4px}.option-label{color:#1f2937;font-size:14px;font-weight:500}.option-preview{color:#6b7280;font-size:12px;font-style:italic;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checkmark{color:#3b82f6;font-size:16px;font-weight:700;margin-left:8px}@media (max-width:768px){.calendar-import-modal{margin:10px;max-height:95vh}.modal-header{padding:16px 16px 12px}.modal-content,.progress-indicator{padding:16px}.step-label{font-size:12px}.mapping-option{padding:16px}.mapping-option select{font-size:14px}.button-group{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.user-info-modal-overlay{background-color:#0f172a73;box-sizing:border-box;display:grid;inset:0;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));place-items:center;position:fixed;touch-action:none;z-index:2000}.user-info-modal,.user-info-modal-overlay{overflow:hidden;overscroll-behavior:contain}.user-info-modal{align-self:center;background:#fff;border-radius:14px;box-shadow:0 16px 40px #0f172a2e;display:flex;flex-direction:column;justify-self:center;max-height:min(88dvh,760px);position:relative;touch-action:pan-y;width:min(520px,100%)}.user-info-modal-header{align-items:center;background:#f7f9fc;border-bottom:1px solid #eaecf0;display:flex;flex-shrink:0;gap:12px;justify-content:space-between;padding:16px 20px}.user-info-modal-header h2{align-items:center;color:#2c3e50;display:flex;font-size:1.25rem;font-weight:650;gap:8px;letter-spacing:-.02em;margin:0}.user-info-modal-header h2:before{background-color:#4a6280;border-radius:2px;content:"";display:inline-block;flex-shrink:0;height:16px;width:4px}.user-info-modal-header-nav{align-items:center;display:flex;gap:4px;min-width:0}.user-info-modal-header-nav h2:before{display:none}.user-info-modal-header-nav h2{font-size:1.15rem}.user-info-modal-back{-webkit-appearance:none;appearance:none;background:none;border:none;border-radius:8px;color:#475569;cursor:pointer;font-size:1.25rem;line-height:1;padding:6px 10px}.user-info-modal-back:hover{background:#eef2f7;color:#111827}.user-info-modal-close{align-items:center;-webkit-appearance:none;appearance:none;background:none;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;flex-shrink:0;font-size:1.75rem;height:36px;justify-content:center;line-height:1;padding:0;transition:background .15s ease,color .15s ease;width:36px}.user-info-modal-close:hover{background-color:#eef2f7;color:#1e293b}.user-info-modal-content{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#cbd5e0 #f1f5f9;scrollbar-width:thin}.user-info-modal-content::-webkit-scrollbar{width:8px}.user-info-modal-content::-webkit-scrollbar-track{background:#f1f5f9}.user-info-modal-content::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.user-info-section-heading{color:#334155;font-size:.9375rem;font-weight:650;letter-spacing:.01em;margin:0 0 12px}.user-info-section{align-items:flex-start;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;flex-shrink:0;gap:16px;padding:20px 20px 18px}.user-info-avatar-column{align-items:center;display:flex;flex-direction:column;flex-shrink:0;gap:8px;width:88px}.user-info-avatar-container{flex-shrink:0;height:68px;position:relative;width:68px}.user-info-avatar-container--editable{cursor:pointer}.user-info-avatar-file{border-radius:50%;cursor:pointer;font-size:16px;height:100%;inset:0;margin:0;opacity:0;padding:0;position:absolute;width:100%;z-index:3}.user-info-avatar-file:disabled{cursor:not-allowed;pointer-events:none}.user-info-avatar,.user-info-avatar-fallback{border:2px solid #e2e8f0;border-radius:50%;box-sizing:border-box;height:68px;width:68px}.user-info-avatar{display:block;object-fit:cover}.user-info-avatar-fallback{align-items:center;background:linear-gradient(145deg,#6366f1,#4f46e5);color:#fff;display:flex;font-size:1.35rem;font-weight:650;justify-content:center}.user-info-avatar-edit-badge{background:#111827;border:2px solid #fff;border-radius:50%;box-shadow:0 1px 4px #0f172a33;color:#fff;font-size:.7rem;pointer-events:none;right:-2px;z-index:4}.user-info-avatar-delete-badge,.user-info-avatar-edit-badge{align-items:center;bottom:-2px;display:flex;height:22px;justify-content:center;line-height:1;position:absolute;width:22px}.user-info-avatar-delete-badge{-webkit-appearance:none;appearance:none;background:#fff;border:2px solid #fecaca;border-radius:50%;box-shadow:0 1px 4px #0f172a29;color:#b91c1c;cursor:pointer;font-size:1rem;font-weight:650;left:-2px;padding:0;z-index:6}.user-info-avatar-delete-badge:hover:not(:disabled){background:#fef2f2;border-color:#f87171;color:#991b1b}.user-info-avatar-delete-badge:disabled{cursor:not-allowed;opacity:.55}.user-info-avatar-delete-badge:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.user-info-avatar-busy{align-items:center;background:#ffffffd1;border-radius:50%;color:#475569;display:flex;font-size:.62rem;font-weight:650;inset:0;justify-content:center;padding:4px;pointer-events:none;position:absolute;text-align:center;z-index:5}.user-info-avatar-container--editable:hover .user-info-avatar,.user-info-avatar-container--editable:hover .user-info-avatar-fallback{box-shadow:0 0 0 3px #6366f12e}.user-info-avatar-hint{-webkit-appearance:none;appearance:none;background:none;border:none;color:#4f46e5;cursor:pointer;display:inline-block;font:inherit;font-size:.75rem;font-weight:600;line-height:1.3;margin:0;padding:0;text-align:center}.user-info-avatar-hint:hover:not(:disabled){text-decoration:underline}.user-info-avatar-hint:disabled{cursor:not-allowed;opacity:.55}.user-info-avatar-hint--static{color:#94a3b8;cursor:default;font-weight:500;max-width:88px;text-align:center}.user-info-avatar-error{color:#b91c1c;font-size:.72rem;line-height:1.35;margin:0;max-width:88px;text-align:center}.user-info-details{flex:1 1;min-width:0}.user-info-name{color:#0f172a;font-size:1.2rem;font-weight:650;line-height:1.25;margin-bottom:2px;overflow-wrap:anywhere}.user-info-username{color:#64748b;font-size:.875rem;margin-bottom:8px;overflow-wrap:anywhere}.user-info-role-badge{align-items:center;background:#eef2ff;border:1px solid #c7d2fe;border-radius:999px;color:#4338ca;display:inline-flex;font-size:.72rem;font-weight:700;letter-spacing:.04em;padding:3px 10px;text-transform:uppercase}.user-info-logout-section{border-bottom:1px solid #e2e8f0;display:flex;flex-direction:column;gap:8px;padding:14px 20px}.btn-logout{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#374151;cursor:pointer;font-size:.9375rem;font-weight:600;padding:11px 16px;transition:background .15s ease,border-color .15s ease,color .15s ease;width:100%}.btn-notification-settings{background:#eef2ff;border-color:#c7d2fe;color:#4338ca}.btn-notification-settings:hover:not(:disabled){background:#e0e7ff;border-color:#a5b4fc}.btn-change-password{background:#f8fafc;border-color:#cbd5e1;color:#1e293b}.btn-change-password:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8}.btn-logout-danger{background:#fff;border-color:#fecaca;color:#b91c1c}.btn-logout-danger:hover:not(:disabled){background:#fef2f2;border-color:#f87171;color:#991b1b}.btn-logout:disabled{cursor:not-allowed;opacity:.6}.user-info-gcal-section{border-bottom:1px solid #e2e8f0;box-sizing:border-box;flex-shrink:0;margin:0;max-width:100%;padding:16px 20px 18px;width:100%}.user-info-gcal-row{align-items:center;display:flex;gap:12px;justify-content:space-between;min-width:0;width:100%}.user-info-gcal-label{color:#475569;flex:1 1 auto;font-size:.875rem;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-info-gcal-integrated{align-items:center;display:inline-flex;flex-wrap:wrap;font-size:.875rem;gap:10px;justify-content:flex-end;max-width:100%;min-width:0}.user-info-gcal-integrated-pill{align-items:center;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;color:#047857;display:inline-flex;font-size:.72rem;font-weight:700;letter-spacing:.03em;padding:3px 9px;text-transform:uppercase}.user-info-gcal-disconnect{-webkit-appearance:none;appearance:none;background:none;border:none;color:#64748b;cursor:pointer;font-size:.8125rem;font-weight:600;padding:0;text-decoration:underline;text-underline-offset:2px}.user-info-gcal-disconnect:hover:not(:disabled){color:#334155}.user-info-gcal-disconnect:disabled{cursor:not-allowed;opacity:.6}.btn-gcal-integrate{background:#eef2ff;border-color:#c7d2fe;color:#4338ca;flex:0 0 auto;font-size:.875rem;max-width:100%;min-width:96px;padding:8px 14px;width:auto}.btn-gcal-integrate:hover:not(:disabled){background:#e0e7ff;border-color:#a5b4fc}.user-info-gcal-hint{color:#64748b;font-size:.8125rem;line-height:1.4;margin:8px 0 0;max-width:100%;overflow-wrap:anywhere}.user-info-gcal-hint--muted{color:#94a3b8}.user-info-gcal-write-row{margin-top:12px}.user-info-gcal-notice{background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;color:#92400e;font-size:.8125rem;line-height:1.45;margin-bottom:10px;padding:10px 12px}.user-info-gcal-notice strong{color:#78350f;display:block;font-size:.875rem;margin-bottom:4px}.user-info-gcal-notice p{margin:0}.user-info-gcal-push-setting{display:flex;flex-direction:column;gap:6px}.user-info-gcal-push-row{align-items:center;cursor:pointer;display:flex;gap:12px;justify-content:space-between;-webkit-user-select:none;user-select:none}.user-info-gcal-push-row:has(.user-info-gcal-toggle-input:disabled){cursor:not-allowed;opacity:.65}.user-info-gcal-write-text{color:#374151;flex:1 1;font-size:.875rem;line-height:1.4;min-width:0}.user-info-gcal-toggle-wrap{flex-shrink:0;position:relative}.user-info-gcal-toggle-input{cursor:pointer;height:100%;inset:0;margin:0;opacity:0;position:absolute;width:100%}.user-info-gcal-toggle-input:disabled{cursor:not-allowed}.user-info-gcal-toggle-track{background:#cbd5e1;border-radius:999px;box-sizing:border-box;display:block;height:26px;padding:2px;transition:background-color .2s ease;width:44px}.user-info-gcal-toggle-thumb{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0f172a38;display:block;height:22px;transform:translateX(0);transition:transform .2s ease;width:22px}.user-info-gcal-toggle-input:checked+.user-info-gcal-toggle-track{background:#6366f1}.user-info-gcal-toggle-input:checked+.user-info-gcal-toggle-track .user-info-gcal-toggle-thumb{transform:translateX(18px)}.user-info-gcal-toggle-input:focus-visible+.user-info-gcal-toggle-track{box-shadow:0 0 0 3px #6366f147}.user-info-gcal-write-hint{color:#64748b;font-size:.8125rem;line-height:1.4;margin:0}.user-info-gcal-status{color:#64748b;flex-shrink:0;font-size:.875rem}.user-info-gcal-section .password-change-message{margin-bottom:0;margin-top:10px}.password-change-section{flex-shrink:0;padding:16px 20px 22px}.password-change-message{border-radius:8px;font-size:.875rem;line-height:1.4;margin-bottom:14px;padding:10px 12px}.password-change-message.success{background-color:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.password-change-message.error{background-color:#fef2f2;border:1px solid #fecaca;color:#991b1b}.form-group{margin-bottom:14px}.form-group label{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:6px}.form-group input{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#111827;font-size:16px;line-height:1.35;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.form-group input:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f133;outline:none}.form-group input.error{border-color:#ef4444}.form-group input:disabled{background-color:#f8fafc;cursor:not-allowed}.error-message{color:#dc2626;display:block;font-size:.8125rem;margin-bottom:0;margin-top:4px}.password-change-actions{display:flex;gap:10px;margin-top:18px}.btn-cancel,.btn-submit{-webkit-appearance:none;appearance:none;border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:.9375rem;font-weight:600;padding:11px 18px;transition:background .15s ease,opacity .15s ease}.btn-cancel{background-color:#f1f5f9;color:#334155}.btn-cancel:hover:not(:disabled){background-color:#e2e8f0}.btn-submit{background-color:#111827;color:#fff}.btn-submit:hover:not(:disabled){background-color:#1f2937}.btn-cancel:disabled,.btn-submit:disabled{cursor:not-allowed;opacity:.55}.account-notif-loading{color:#64748b;font-size:.9rem;margin:0}.account-notif-section .notif-settings{margin-top:0}.account-notif-section .notif-settings--skeleton{min-height:22rem}.account-notif-save{margin-top:14px;width:100%}@media (max-width:768px){.user-info-modal-overlay{padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px))}.user-info-modal{border-radius:14px;max-height:min(90dvh,860px);max-width:100%;width:100%}.user-info-section{align-items:center;flex-direction:column;padding:18px 16px 16px;text-align:center}.user-info-avatar-column{min-width:88px;width:auto}.user-info-details{align-items:center;display:flex;flex-direction:column}.password-change-section,.user-info-gcal-section,.user-info-logout-section{padding-left:16px;padding-right:16px}.user-info-modal-header{padding:14px 16px}.password-change-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}.user-info-gcal-row{flex-wrap:wrap}.user-info-gcal-label{flex:1 1 100%;white-space:normal}.btn-gcal-integrate{width:100%}}@media (min-width:769px){.user-info-modal-header h2{font-size:1.35rem}.user-info-name{font-size:1.3rem}.user-info-logout-section{flex-direction:column}.user-info-logout-section .btn-logout{width:100%}.form-group label{font-size:.9375rem}}.bottom-navigation{align-items:stretch;background:#fff;border-top:1px solid #e5e7eb;bottom:0;box-shadow:0 -1px 3px #0000000d,0 -4px 6px #00000005;box-sizing:initial;height:auto;justify-content:space-around;left:0;margin:0;padding:0 0 env(safe-area-inset-bottom,0);position:fixed;right:0;top:auto;transform:none;width:100%;z-index:999}.bottom-navigation,.nav-tab{display:flex;min-height:64px}.nav-tab{align-items:center;background:none;border:none;border-radius:8px;box-sizing:border-box;cursor:pointer;flex:1 1;flex-direction:column;height:64px;justify-content:center;max-width:none;min-width:0;padding:6px 2px 4px;position:relative;transition:background-color .15s ease,color .15s ease}.nav-tab:hover{background-color:#f9fafb}.nav-tab:active{background-color:#f3f4f6}.nav-tab.active{background-color:#f8f9ff;color:#4f46e5}.nav-icon{align-items:center;display:flex;font-size:20px;justify-content:center;line-height:1;margin-bottom:2px;position:relative}.nav-label{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#6b7280;display:-webkit-box;font-size:9px;font-weight:500;line-height:1.15;max-width:100%;overflow:hidden;padding:0 1px;text-align:center;white-space:normal;word-break:normal}.nav-tab.active .nav-label{color:#4f46e5;font-weight:600}.nav-badge{align-items:center;background:#ef4444;border:2px solid #fff;border-radius:10px;color:#fff;display:flex;font-size:10px;font-weight:600;height:18px;justify-content:center;min-width:18px;padding:2px 6px;position:absolute;right:-8px;top:-8px}@media (min-width:768px){.bottom-navigation{display:none!important}}.portal-sidebar{display:none}@media (min-width:768px){.portal-sidebar{--portal-sidebar-width:220px;background:#f7f8fa;border-right:1px solid #e5e7eb;box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0;height:100vh;max-height:100vh;position:sticky;top:0;width:var(--portal-sidebar-width);z-index:50}.portal-sidebar__brand{border-bottom:1px solid #e8ecf2;flex-shrink:0;padding:20px 10px 16px}.portal-sidebar__business{color:#111827;font-size:1.125rem;font-weight:700;letter-spacing:-.02em;line-height:1.25;word-break:break-word}.portal-sidebar__subtitle{color:#6b7280;font-size:.8125rem;font-weight:500;margin-top:3px}.portal-sidebar__home{align-items:center;-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #d1d5db;border-radius:999px;box-sizing:border-box;color:#374151;cursor:pointer;display:inline-flex;font:inherit;font-size:.875rem;font-weight:600;gap:6px;justify-content:center;margin-top:14px;padding:8px 14px;transition:background .15s,border-color .15s;width:100%}.portal-sidebar__home:hover{background:#f9fafb;border-color:#9ca3af;color:#111827}.portal-sidebar__nav{display:flex;flex:1 1;flex-direction:column;gap:6px;min-height:0;overflow-y:auto;padding:14px 10px}.portal-sidebar__tab{align-items:center;-webkit-appearance:none;appearance:none;background:#0000;border:none;border-radius:12px;color:#4b5563;cursor:pointer;display:flex;font:inherit;font-size:1.0625rem;font-weight:500;gap:12px;min-height:54px;padding:14px 12px;text-align:left;transition:background .15s ease,color .15s ease;width:100%}.portal-sidebar__tab:hover{background:#eef0f3;color:#111827}.portal-sidebar__tab.active{background:#e8eaed;color:#111827;font-weight:600}.portal-sidebar__icon{flex-shrink:0;font-size:1.35rem;line-height:1;text-align:center;width:1.5rem}.portal-sidebar__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-sidebar__account{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;flex-shrink:0;gap:10px;margin:8px 10px 14px;padding:10px 12px;transition:border-color .15s,box-shadow .15s;-webkit-user-select:none;user-select:none}.portal-sidebar__account:hover{border-color:#bfdbfe;box-shadow:0 2px 6px #2563eb1a}.portal-sidebar__avatar-wrap{flex-shrink:0;position:relative}.portal-sidebar__avatar-fallback,.portal-sidebar__avatar-img{border:2px solid #e2e8f0;border-radius:50%;height:40px;width:40px}.portal-sidebar__avatar-img{display:block;object-fit:cover}.portal-sidebar__avatar-fallback{align-items:center;background:linear-gradient(145deg,#60a5fa,#2563eb);border-color:#0000;color:#fff;display:flex;font-size:.9rem;font-weight:700;justify-content:center}.portal-sidebar__account-text{flex:1 1;min-width:0}.portal-sidebar__account-name{color:#334155;font-size:.9375rem;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-sidebar__account-role{color:#2563eb;font-size:.8125rem;font-weight:600}}@media (prefers-color-scheme:dark){.bottom-navigation{background:#fff;border-top-color:#e5e7eb}.nav-tab:hover{background-color:#f9fafb}.nav-tab:active{background-color:#f3f4f6}.nav-tab.active{background-color:#f8f9ff;color:#4f46e5}.nav-label{color:#6b7280}.nav-tab.active .nav-label{color:#4f46e5}}.admin-dash-shell{box-sizing:border-box;margin:0;min-height:100vh;padding:0;position:relative;transform:none;will-change:auto}.admin-dash-main{min-width:0}@media (max-width:767.98px){body:has(.admin-dash-shell){height:100%;overflow:hidden;overscroll-behavior:none}.admin-dash-shell{display:flex;flex-direction:column;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;overflow:hidden}.admin-dash-main{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden}}.admin-dash-header{background:#fff;border-bottom:1px solid #e8ecf2;box-shadow:0 1px 0 #00000005;padding:14px 16px 12px;z-index:40}.admin-dash-header-inner{margin:0 auto;max-width:1200px}.admin-dash-header-top{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.admin-dash-brand{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.admin-dash-title{color:#111827;font-size:1.15rem;font-weight:700;letter-spacing:-.02em;line-height:1.25;margin:0;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-dash-title-sub{color:#4b5563;display:block;font-size:.9rem;font-weight:600;letter-spacing:0;line-height:1.3;margin:0}.admin-dash-landing-link{align-items:center;-webkit-appearance:none;appearance:none;background:#f9fafb;border:1px solid #e5e7eb;border-radius:999px;color:#4b5563;cursor:pointer;display:inline-flex;flex-shrink:0;font-family:inherit;font-size:.75rem;font-weight:500;justify-content:center;line-height:1.2;padding:3px 10px;text-decoration:none;transition:color .15s,background .15s,border-color .15s}.admin-dash-landing-link:hover{background:#f3f4f6;border-color:#d1d5db;color:#111827}.admin-dash-content{padding:0 20px 100px}.admin-dash-content--flush{padding-bottom:0;padding-left:0;padding-right:0}.admin-dash-content--calendar{height:calc(100vh - 176px);overflow:hidden}.admin-dash-content--clients{height:auto;min-height:0;overflow:visible}@media (max-width:767.98px){.admin-dash-header--phone{flex-shrink:0;padding-top:max(14px,env(safe-area-inset-top,0px));z-index:100}.admin-dash-content{-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;padding-bottom:calc(72px + env(safe-area-inset-bottom, 0px));padding-left:16px;padding-right:16px}.admin-dash-content--flush{padding-bottom:0;padding-left:0;padding-right:0}.admin-dash-content--calendar{height:auto;max-height:none}}@media (min-width:768px){.admin-dash-shell{align-items:stretch;display:flex}.admin-dash-main{display:flex;flex:1 1;flex-direction:column;min-height:100vh;min-width:0}.admin-dash-header--phone{display:none}.admin-dash-content{flex:1 1;padding-bottom:28px}.admin-dash-content--calendar,.admin-dash-content--clients{height:100vh;max-height:100vh}.admin-dash-content--clients{overflow:hidden;padding-bottom:0}}.admin-dash-user{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:999px;box-shadow:0 1px 2px #0f172a0a;cursor:pointer;display:flex;flex-shrink:0;gap:10px;padding:6px 10px 6px 12px;-webkit-user-select:none;user-select:none}.admin-dash-user:hover{background:#fff;border-color:#bfdbfe;box-shadow:0 2px 6px #2563eb1f}.admin-dash-user-text{text-align:right}.admin-dash-user-name{color:#334155;font-size:.85rem;font-weight:600;line-height:1.2;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-dash-user-role{color:#2563eb;font-size:.75rem;font-weight:600}.admin-dash-avatar-wrap{flex-shrink:0;position:relative}.admin-dash-avatar-fallback,.admin-dash-avatar-img{border:2px solid #e2e8f0;border-radius:50%;height:36px;width:36px}.admin-dash-avatar-img{display:block;object-fit:cover}.admin-dash-avatar-fallback{align-items:center;background:linear-gradient(145deg,#60a5fa,#2563eb);border-color:#0000;color:#fff;display:flex;font-size:.85rem;font-weight:700;justify-content:center}.back-button{align-items:center;background:#0000;border:1px solid #007bff;border-radius:4px;color:#007bff;cursor:pointer;display:inline-flex;font-size:14px;gap:6px;padding:8px 12px;transition:all .2s ease;white-space:nowrap}.back-button:hover{background-color:#007bff;color:#fff}.admin-tab-row{background-color:#f8f9fa;border:1px solid #e9ecef;border-left:none;border-radius:0;border-right:none;flex-wrap:wrap;gap:0;justify-content:space-evenly;left:0;margin:0 auto;max-width:700px;overflow-x:visible;position:relative;right:0;width:100%}.admin-tab-button,.admin-tab-row{align-items:center;box-sizing:border-box;display:flex;padding:0}.admin-tab-button{background-color:#fff;border:2px solid #e9ecef;border-radius:0;color:#333;cursor:pointer;flex-direction:column;font-size:1.08rem;font-weight:500;gap:8px;height:130px;justify-content:center;min-width:130px;overflow:hidden;text-align:center;transition:all .2s ease}.admin-tab-button.active{background-color:#007bff!important;border-color:#007bff!important;box-shadow:0 2px 4px #007bff33;color:#fff!important;font-weight:600}.admin-tab-button.inactive:hover{background-color:#f1f3f4;border-color:#ced4da}.admin-tab-button.active:hover{background-color:#007bff!important;border-color:#007bff!important;color:#fff!important}@media (max-width:768px){.admin-tab-row{display:flex;flex-wrap:wrap;gap:4px;padding:8px}.admin-tab-button{font-size:.9rem;height:80px;min-width:80px}.tab-icon{font-size:1.5rem}.admin-dashboard-content{padding-bottom:80px}}.tab-icon{font-size:2rem}.tab-label{font-size:1.08rem;line-height:1.2;max-width:100%;overflow:visible;text-align:center;text-overflow:clip;white-space:normal;word-break:break-word}@media (max-width:900px){.admin-tab-row{gap:0;max-width:100%;padding:0}.admin-tab-button{font-size:.97rem;height:100px;min-width:100px;padding:0}.tab-icon{font-size:1.4rem}}@media (max-width:600px){.admin-tab-row{gap:0;max-width:100%;padding:0}.admin-tab-button{font-size:.9rem;height:70px;min-width:70px;padding:0}.tab-label{font-size:.78rem}.tab-icon{font-size:1.1rem}}body,html{box-sizing:border-box;height:100%;margin:0;min-height:100vh;min-width:100%;padding:0;width:100%}.login-page{--ink:#15202b;--ink-soft:#3d4f5f;--panel:#ffffffeb;--line:#15202b1a;--accent:#1f6f8b;--accent-hover:#185a70;--danger:#b42318;--danger-bg:#fef3f2;--success:#067647;--success-bg:#ecfdf3;--radius:16px;--shadow:0 18px 50px #0f17202e;background:radial-gradient(ellipse 80% 60% at 10% -10%,#1f6f8b59,#0000 55%),radial-gradient(ellipse 70% 50% at 100% 0,#3d5a8047,#0000 50%),linear-gradient(165deg,#0f1720,#1c2a38 45%,#243447);background-attachment:fixed;color:var(--ink);display:flex;flex-direction:column;font-family:Outfit,system-ui,sans-serif;min-height:100vh}.login-page__main{align-items:center;animation:login-rise .45s ease-out;box-sizing:border-box;display:flex;flex:1 1 auto;justify-content:center;padding:40px 20px 28px}@keyframes login-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.login-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--panel);border:1px solid #ffffff8c;border-radius:var(--radius);box-shadow:var(--shadow);box-sizing:border-box;max-width:420px;padding:36px 32px 28px;text-align:center;width:100%}.login-panel--wide{max-width:480px}.login-brand{color:var(--ink);font-family:"Source Serif 4",Georgia,serif;font-size:clamp(1.65rem,4vw,2rem);letter-spacing:-.02em;line-height:1.2}.login-brand,.login-kicker{font-weight:600;margin:0 0 8px}.login-kicker{color:var(--accent);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.login-copy{color:var(--ink-soft);font-size:.95rem;line-height:1.55;margin:0 auto 22px;max-width:34ch}.login-copy strong{color:var(--ink);font-weight:600}.login-signing{color:var(--ink-soft);font-size:.92rem;margin:0 0 22px}.login-signing strong{color:var(--ink)}.login-form{text-align:left;width:100%}.login-error{background:var(--danger-bg);border:1px solid #b423182e;border-radius:10px;color:var(--danger)}.login-error,.login-success{font-size:.88rem;margin-bottom:14px;padding:10px 12px}.login-success{background:var(--success-bg);border:1px solid #0676472e;border-radius:10px;color:var(--success);line-height:1.45}.login-field{margin-bottom:14px}.login-field label{color:var(--ink-soft);display:block;font-size:.82rem;font-weight:500;margin-bottom:6px}.login-field input{background:#fff;border:1px solid var(--line);border-radius:10px;box-sizing:border-box;color:var(--ink);display:block;font:inherit;font-size:.95rem;padding:11px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.login-field input:focus{border-color:#1f6f8b8c;box-shadow:0 0 0 3px #1f6f8b26;outline:none}.login-submit-wrap{margin-top:8px;text-align:center}.login-submit{-webkit-appearance:none;appearance:none;background:linear-gradient(180deg,#2589a8 0,var(--accent) 100%);border:none;border-radius:12px;box-shadow:0 8px 20px #1f6f8b59;color:#fff;cursor:pointer;font:inherit;font-size:.95rem;font-weight:600;padding:12px 20px;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;width:100%}.login-submit:hover:not(:disabled){box-shadow:0 10px 24px #1f6f8b6b;filter:brightness(1.05);transform:translateY(-1px)}.login-submit:active{transform:translateY(0)}.login-submit:disabled{box-shadow:none;cursor:not-allowed;filter:grayscale(.25);opacity:.55;transform:none}.login-form-link{margin:-4px 0 14px;text-align:left}.login-field a,.login-form-link a{color:var(--accent);font-size:.84rem;font-weight:500;text-decoration:none}.login-form-link a:hover{text-decoration:underline}.login-field-error{color:var(--danger);font-size:.82rem;margin:6px 0 0}.login-password-checks{grid-gap:4px;display:grid;font-size:.8rem;gap:4px;list-style:none;margin:8px 0 0;padding:0}.login-password-checks li{align-items:baseline;display:flex;gap:6px}.login-password-checks .met{color:var(--success)}.login-password-checks .unmet{color:var(--ink-soft)}.login-links{margin-top:22px}.login-links a{color:var(--accent);font-size:.88rem;font-weight:500;text-decoration:none}.login-links a:hover{text-decoration:underline}.login-tenant-list{display:flex;flex-direction:column;gap:12px;margin:0 auto;width:100%}.login-tenant-btn{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid var(--line);border-radius:12px;cursor:pointer;font:inherit;padding:18px 16px;text-align:center;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;width:100%}.login-tenant-btn:hover{border-color:#1f6f8b59;box-shadow:0 8px 22px #0f17201a;transform:translateY(-1px)}.login-tenant-btn__name{color:var(--ink);display:block;font-size:1.05rem;font-weight:600}.login-muted{color:var(--ink-soft);font-size:.95rem;padding:20px 8px}.login-page__footer{background:#080c1259;border-top:1px solid #ffffff14;flex-shrink:0;width:100%}.login-page__footer a{color:#ffffffb8!important}@media (max-width:480px){.login-panel{padding:28px 20px 22px}}.activation-page{background-color:#fff;color:#333;display:flex;flex-direction:column;font-family:Arial,sans-serif;min-height:100vh}.activation-page__main{box-sizing:border-box;flex:1 1 auto;margin:0 auto;max-width:420px;padding:28px 20px 40px;width:100%}.activation-page__title{font-size:1.65rem;margin:0 0 8px;text-align:center}.activation-page__subtitle{color:#555;font-size:.95rem;line-height:1.5;margin:0 0 24px;text-align:center}.activation-page__banner{border-radius:8px;font-size:.9rem;margin-bottom:16px;padding:12px 14px}.activation-page__banner--error{background:#ffebee;border:1px solid #ffcdd2;color:#b71c1c}.activation-page__field{margin-bottom:14px}.activation-page__field label{color:#444;display:block;font-size:.88rem;margin-bottom:4px}.activation-page__username-rules{color:#666;font-size:.8rem;line-height:1.45;margin:6px 0 0}.activation-page__input{border:1px solid #ccc;border-radius:6px;box-sizing:border-box;display:block;font-size:.95rem;padding:9px 10px;width:100%}.activation-page__checks{color:#555;font-size:.82rem;list-style:none;margin:6px 0 0;padding:0}.activation-page__checks li{align-items:flex-start;display:flex;gap:6px;margin:4px 0}.activation-page__checks li.met{color:#1b5e20}.activation-page__checks li.unmet{color:#c62828}.activation-page__check-optout{align-items:flex-start;color:#444;cursor:pointer;display:flex;font-size:.88rem;gap:8px;margin:4px 0 12px}.activation-page__check-optout input{margin-top:3px}.activation-page__submit{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;margin-top:8px;padding:11px 16px;width:100%}.activation-page__submit:disabled{cursor:not-allowed;opacity:.55}.activation-page__footer{background:#f8f9fa;border-top:1px solid #e8ecf2;flex-shrink:0;padding:12px;text-align:center;width:100%}.activation-page__link{color:#3d5a80;font-size:.9rem}.activation-gate{text-align:center}.activation-gate__title{font-size:1.35rem;margin:0 0 12px}.activation-gate__body{color:#555;font-size:.95rem;line-height:1.55;margin:0 0 20px}.activation-success-overlay{align-items:center;background:#00000073;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1400}.activation-success-modal{background:#fff;border-radius:12px;box-shadow:0 12px 40px #0000002e;max-width:360px;padding:28px 24px 24px;text-align:center;width:100%}.activation-success-modal h2{color:#1b5e20;font-size:1.35rem;margin:0 0 10px}.activation-success-modal p{color:#555;font-size:.95rem;line-height:1.5;margin:0}.report-issue-fab{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:22px;box-shadow:0 2px 10px #0f172a14;color:#4b5563;cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:560;gap:6px;padding:8px 12px;position:fixed;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease;z-index:1005}.report-issue-fab:hover{background:#f9fafb;border-color:#9ca3af;box-shadow:0 3px 12px #0f172a1f;color:#1f2937}.report-issue-fab:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.report-issue-fab--dashboard{bottom:88px;left:20px;right:auto}.report-issue-fab--public{bottom:24px;left:auto;right:20px}@media (min-width:768px){.report-issue-fab--dashboard{border-radius:28px;box-sizing:border-box;font-size:.9375rem;font-weight:650;gap:10px;justify-content:center;left:10px;padding:13px 20px;width:200px}.report-issue-fab--dashboard .report-issue-fab-icon{font-size:.95rem;height:28px;width:28px}.report-issue-fab--dashboard .report-issue-fab-label{align-items:center;flex-direction:row;gap:.3em}}.report-issue-fab-icon{align-items:center;border:1.5px solid;border-radius:50%;display:inline-flex;font-size:.72rem;font-weight:700;height:18px;justify-content:center;line-height:1;width:18px}.report-issue-fab-label{align-items:flex-start;display:flex;flex-direction:column;letter-spacing:.01em;line-height:1.15}.report-issue-overlay{background:#0f172a73;box-sizing:border-box;display:grid;inset:0;overflow:hidden;overscroll-behavior:contain;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));place-items:center;position:fixed;z-index:2100}.report-issue-modal{align-self:center;background:#fff;border-radius:14px;box-shadow:0 16px 40px #0f172a2e;display:flex;flex-direction:column;justify-self:center;max-height:min(88dvh,640px);overflow:hidden;width:min(440px,100%)}.report-issue-modal-header{align-items:center;background:#f7f9fc;border-bottom:1px solid #eaecf0;display:flex;flex-shrink:0;gap:12px;justify-content:space-between;padding:16px 20px}.report-issue-modal-header h2{align-items:center;color:#2c3e50;display:flex;font-size:1.25rem;font-weight:650;gap:8px;letter-spacing:-.02em;margin:0}.report-issue-modal-header h2:before{background-color:#4a6280;border-radius:2px;content:"";display:inline-block;flex-shrink:0;height:16px;width:4px}.report-issue-modal-close{align-items:center;-webkit-appearance:none;appearance:none;background:none;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;flex-shrink:0;font-size:1.75rem;height:36px;justify-content:center;line-height:1;transition:background .15s ease,color .15s ease;width:36px}.report-issue-modal-close:hover{background:#eef2f7;color:#1e293b}.report-issue-modal-body{-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:12px;min-height:0;overflow-y:auto;padding:18px 20px 20px}.report-issue-label{color:#374151;font-size:.875rem;font-weight:600}.report-issue-optional{color:#94a3b8;font-weight:500}.report-issue-severity{display:flex;flex-direction:column;gap:8px}.report-issue-severity-options{display:flex;flex-wrap:wrap;gap:8px}.report-issue-severity-chip{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #d1d5db;border-radius:999px;color:#475569;cursor:pointer;font-size:.8125rem;font-weight:600;padding:8px 14px;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.report-issue-severity-chip:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8;color:#1e293b}.report-issue-severity-chip:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.report-issue-severity-chip:disabled{cursor:not-allowed;opacity:.55}.report-issue-severity-chip.is-selected.report-issue-severity-chip--blocking{background:#fef2f2;border-color:#f87171;box-shadow:inset 0 0 0 1px #f8717159;color:#991b1b}.report-issue-severity-chip.is-selected.report-issue-severity-chip--annoying{background:#fff7ed;border-color:#fb923c;box-shadow:inset 0 0 0 1px #fb923c59;color:#9a3412}.report-issue-severity-chip.is-selected.report-issue-severity-chip--suggestion{background:#eff6ff;border-color:#60a5fa;box-shadow:inset 0 0 0 1px #60a5fa59;color:#1e40af}.report-issue-textarea{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#111827;font-family:inherit;font-size:16px;line-height:1.45;min-height:132px;padding:11px 12px;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.report-issue-textarea:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f133;outline:none}.report-issue-textarea:disabled{background:#f8fafc;color:#64748b}.report-issue-textarea::placeholder{color:#94a3b8}.report-issue-meta{align-items:baseline;display:flex;gap:12px;justify-content:space-between}.report-issue-hint{color:#64748b;flex:1 1;font-size:.8125rem;line-height:1.4;margin:0;min-width:0}.report-issue-char-count{font-feature-settings:"tnum";color:#94a3b8;flex-shrink:0;font-size:.75rem;font-variant-numeric:tabular-nums;font-weight:500}.report-issue-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:.875rem;line-height:1.4;margin:0;padding:10px 12px}.report-issue-success-card{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:10px;margin:4px 0 0;padding:14px}.report-issue-success{color:#065f46;font-size:.9375rem;font-weight:500;line-height:1.45;margin:0}.report-issue-modal-actions{display:flex;gap:10px;justify-content:stretch;margin-top:4px}.report-issue-btn-primary,.report-issue-btn-secondary{-webkit-appearance:none;appearance:none;border:1px solid #0000;border-radius:8px;cursor:pointer;flex:1 1;font-size:.9375rem;font-weight:600;padding:11px 16px;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.report-issue-btn-primary{background:#111827;border-color:#111827;color:#fff}.report-issue-btn-primary:hover:not(:disabled){background:#1f2937;border-color:#1f2937}.report-issue-btn-primary:disabled{cursor:not-allowed;opacity:.55}.report-issue-btn-secondary{background:#f1f5f9;border-color:#e2e8f0;color:#334155}.report-issue-btn-secondary:hover:not(:disabled){background:#e2e8f0}.report-issue-btn-secondary:disabled{cursor:not-allowed;opacity:.55}.report-issue-modal-actions--success{margin-top:12px}.report-issue-modal-actions--success .report-issue-btn-primary{flex:1 1}@media (max-width:480px){.report-issue-fab--dashboard{left:12px}.report-issue-fab--public{bottom:16px;right:12px}.report-issue-overlay{padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px))}.report-issue-modal{max-height:min(90dvh,680px)}.report-issue-modal-header{padding:14px 16px}.report-issue-modal-body{padding:16px}.report-issue-modal-actions{flex-direction:column-reverse}}@media (min-width:769px){.report-issue-modal{border-radius:16px;max-height:min(86dvh,720px);width:min(580px,100%)}.report-issue-modal-header{padding:20px 24px}.report-issue-modal-header h2{font-size:1.5rem}.report-issue-modal-header h2:before{height:18px}.report-issue-modal-close{font-size:1.9rem;height:40px;width:40px}.report-issue-modal-body{gap:14px;padding:22px 24px 24px}.report-issue-label{font-size:1.0625rem}.report-issue-severity-chip{font-size:.9375rem;padding:9px 16px}.report-issue-textarea{border-radius:10px;font-size:1.0625rem;min-height:180px;padding:14px 16px}.report-issue-hint{font-size:.9375rem}.report-issue-char-count{font-size:.875rem}.report-issue-error{font-size:.9375rem;padding:12px 14px}.report-issue-success{font-size:1.0625rem}.report-issue-success-card{padding:16px 18px}.report-issue-modal-actions{gap:12px;margin-top:6px}.report-issue-btn-primary,.report-issue-btn-secondary{border-radius:10px;font-size:1.0625rem;padding:13px 18px}}.platform-internal,.platform-internal-login,.platform-ops,.platform-ops-denied,.platform-ops-loading{--pi-ink:#101114;--pi-ink-soft:#5c6370;--pi-panel:#fff;--pi-line:#e2e4ea;--pi-accent:#b45309;--pi-accent-hover:#92400e;--pi-accent-soft:#b453091f;--pi-header:#17181c;--pi-header-text:#f5f5f4;--pi-bg:#eceae6;--pi-danger:#b42318;--pi-danger-bg:#fef3f2;--pi-success:#067647;--pi-success-bg:#ecfdf3;--pi-radius:14px;--pi-shadow:0 22px 60px #10111424;--pi-font:"DM Sans",system-ui,sans-serif;--pi-mono:"IBM Plex Mono",ui-monospace,monospace;box-sizing:border-box;color:var(--pi-ink);font-family:var(--pi-font)}.platform-internal-login{background:linear-gradient(135deg,#b4530914,#0000 42%),repeating-linear-gradient(-12deg,hsla(0,0%,100%,.025),hsla(0,0%,100%,.025) 1px,#0000 0,#0000 12px),linear-gradient(160deg,#0b0c0f,#17181c 52%,#1f2028);display:grid;min-height:100vh;padding:28px 18px;place-items:center}.platform-internal-login__panel{background:linear-gradient(180deg,#1c1d22fa,#141519fa);border:1px solid #ffffff14;border-radius:calc(var(--pi-radius) + 4px);box-shadow:var(--pi-shadow);color:#f5f5f4;padding:34px 32px 28px;width:min(440px,100%)}.platform-internal-login__badge{align-items:center;background:#b4530929;border-radius:999px;color:#fdba74;display:inline-flex;font-family:var(--pi-mono);font-size:11px;font-weight:500;gap:8px;letter-spacing:.08em;margin:0 0 14px;padding:6px 10px;text-transform:uppercase}.platform-internal-login__badge:before{background:#f59e0b;border-radius:50%;box-shadow:0 0 10px #f59e0bcc;content:"";height:7px;width:7px}.platform-internal-login__panel h1{font-size:clamp(1.75rem,4vw,2.15rem);font-weight:700;letter-spacing:-.03em;line-height:1.05;margin:0 0 10px}.platform-internal-login__panel>p{color:#a8adb7;font-size:.95rem;line-height:1.55;margin:0 0 22px}.platform-internal-login__form{grid-gap:12px;display:grid;gap:12px}.platform-internal-login__form label{color:#c4c8d0;font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.platform-internal-login__form input{background:#ffffff0a;border:1px solid #ffffff1f;border-radius:10px;box-sizing:border-box;color:#f5f5f4;font:inherit;padding:12px 13px;width:100%}.platform-internal-login__form input:focus{border-color:#f59e0b8c;outline:2px solid #f59e0b73}.platform-internal-login__form button{background:linear-gradient(180deg,#fbbf24,#d97706);border:0;border-radius:10px;color:#111;cursor:pointer;font:inherit;font-weight:700;margin-top:6px;padding:13px 16px}.platform-internal-login__form button:disabled{cursor:not-allowed;opacity:.55}.platform-internal-login__footnote{border-top:1px solid #ffffff14;color:#7b8190;font-size:.82rem;line-height:1.5;margin:18px 0 0;padding-top:16px}.platform-ops,.platform-ops-denied,.platform-ops-loading{background:linear-gradient(180deg,#b453090d 0,#0000 220px),var(--pi-bg);min-height:100vh}.platform-ops{padding:0 0 30px}.platform-ops-denied,.platform-ops-loading{color:var(--pi-ink-soft);display:grid;padding:24px;place-items:center}.platform-ops-topbar{background:var(--pi-header);border-bottom:3px solid var(--pi-accent);color:var(--pi-header-text);padding:14px 30px}.platform-ops-topbar-inner{align-items:center;display:flex;gap:16px;justify-content:space-between;margin:0 auto;max-width:1440px}.platform-ops-topbar-brand{display:flex;flex-direction:column;gap:2px}.platform-ops-topbar-brand span{color:#fbbf24;font-family:var(--pi-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.platform-ops-topbar-brand strong{font-size:1rem;font-weight:700}.platform-ops-topbar-actions{align-items:center;display:flex;gap:10px}.platform-ops-body{margin:0 auto;max-width:1440px;padding:24px 30px 0}.platform-ops-denied>div{background:var(--pi-panel);border:1px solid var(--pi-line);border-radius:var(--pi-radius);box-shadow:var(--pi-shadow);padding:32px;width:min(520px,100%)}.platform-ops-denied h1{margin:8px 0}.platform-ops-denied button,.platform-ops-note-form button{background:var(--pi-accent);border:0;border-radius:9px;color:#fff;cursor:pointer;font:inherit;font-weight:700;padding:11px 16px}.platform-ops-header{align-items:flex-end;display:flex;gap:24px;justify-content:space-between;margin:0 0 22px}.platform-ops-eyebrow{color:var(--pi-accent);font-family:var(--pi-mono);font-size:11px;font-weight:500;letter-spacing:.12em;margin:0;text-transform:uppercase}.platform-ops-header h1{font-size:clamp(28px,4vw,40px);font-weight:700;letter-spacing:-.03em;line-height:1.05;margin:7px 0 4px}.platform-ops-header p:not(.platform-ops-eyebrow){color:var(--pi-ink-soft);margin:0}.platform-ops-header-actions{align-items:center;display:flex;gap:10px}.platform-ops-header-actions button{border-radius:9px;cursor:pointer;font:inherit;font-weight:700;padding:10px 14px}.platform-ops-secondary{background:var(--pi-accent);border:1px solid var(--pi-accent);color:#fff}.platform-ops-quiet{background:#fff;border:1px solid var(--pi-line);color:var(--pi-ink-soft)}.platform-ops-employee{align-self:center;color:var(--pi-ink-soft);font-size:14px;white-space:nowrap}.platform-ops-alert{border-radius:10px;font-size:14px;margin-bottom:14px;padding:12px 14px}.platform-ops-alert--error{background:var(--pi-danger-bg);border:1px solid #b4231826;color:var(--pi-danger)}.platform-ops-alert--success{background:var(--pi-success-bg);border:1px solid #06764726;color:var(--pi-success)}.platform-ops-workspace{grid-gap:18px;background:var(--pi-panel);border:1px solid var(--pi-line);border-radius:calc(var(--pi-radius) + 2px);box-shadow:var(--pi-shadow);display:grid;gap:18px;grid-template-columns:minmax(280px,340px) minmax(0,1fr);min-height:520px;overflow:hidden}.platform-ops-queue{background:#faf9f7;border-right:1px solid var(--pi-line)}.platform-ops-queue-toolbar{align-items:center;border-bottom:1px solid var(--pi-line);display:flex;gap:10px;justify-content:space-between;padding:16px}.platform-ops-queue-toolbar label{color:var(--pi-ink-soft);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.platform-ops-queue-toolbar select{background:#fff;border:1px solid var(--pi-line);border-radius:8px;font:inherit;padding:7px 10px}.platform-ops-count{color:var(--pi-ink-soft);font-family:var(--pi-mono);font-size:11px;padding:0 16px 10px}.platform-ops-list{display:flex;flex-direction:column;max-height:calc(100vh - 260px);overflow-y:auto}.platform-ops-list-item{grid-gap:4px;border-bottom:1px solid var(--pi-line);color:inherit;display:grid;gap:4px;padding:14px 16px;text-decoration:none}.platform-ops-list-item.is-active{background:var(--pi-accent-soft);border-left:3px solid var(--pi-accent)}.platform-ops-list-item strong{font-size:14px;line-height:1.35}.platform-ops-list-item span,.platform-ops-list-item time{color:var(--pi-ink-soft);font-size:12px}.platform-ops-status{border-radius:999px;display:inline-block;font-family:var(--pi-mono);font-size:10px;letter-spacing:.06em;padding:2px 8px;text-transform:uppercase;width:fit-content}.platform-ops-status--investigating,.platform-ops-status--unresolved{background:#fff7ed;color:#9a3412}.platform-ops-status--resolved{background:#ecfdf3;color:#067647}.platform-ops-severity{border-radius:999px;display:inline-block;font-size:10px;font-weight:700;letter-spacing:.02em;padding:2px 8px;width:fit-content}.platform-ops-severity--blocking{background:#fef2f2;color:#991b1b}.platform-ops-severity--annoying{background:#fff7ed;color:#9a3412}.platform-ops-severity--suggestion{background:#eff6ff;color:#1e40af}.platform-ops-detail{padding:22px 24px 28px}.platform-ops-detail-heading{display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.platform-ops-surface{background:#f3f4f6;border-radius:6px;color:var(--pi-ink-soft);display:inline-block;font-family:var(--pi-mono);font-size:11px;letter-spacing:.06em;margin-bottom:8px;padding:4px 8px;text-transform:uppercase}.platform-ops-detail-heading h2{font-size:1.45rem;line-height:1.25;margin:0 0 6px}.platform-ops-detail-heading p{color:var(--pi-ink-soft);margin:0}.platform-ops-status-control select{border:1px solid var(--pi-line);border-radius:8px;font:inherit;padding:8px 10px}.platform-ops-metadata{grid-gap:0;border:1px solid var(--pi-line);border-radius:10px;display:grid;gap:0;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 18px;overflow:hidden}.platform-ops-metadata>div{grid-gap:4px;border-bottom:1px solid var(--pi-line);display:grid;gap:4px;padding:12px 14px}.platform-ops-metadata dt{color:var(--pi-ink-soft);font-family:var(--pi-mono);font-size:10px;letter-spacing:.08em;margin:0;text-transform:uppercase}.platform-ops-metadata dd{font-size:13px;margin:0;word-break:break-word}.platform-ops-page-link{color:var(--pi-accent);display:inline-block;font-weight:600;margin-bottom:18px}.platform-ops-investigation{border-top:1px solid var(--pi-line);padding-top:18px}.platform-ops-section-heading{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:12px}.platform-ops-section-heading h3{font-size:1rem;margin:0}.platform-ops-timeline{grid-gap:10px;display:grid;gap:10px;margin-bottom:16px}.platform-ops-note{background:#faf9f7;border:1px solid var(--pi-line);border-radius:10px;padding:12px 14px}.platform-ops-note p{margin:0 0 6px}.platform-ops-note span{color:var(--pi-ink-soft);font-size:12px}.platform-ops-note-form textarea{border:1px solid var(--pi-line);border-radius:10px;box-sizing:border-box;font:inherit;padding:12px;resize:vertical;width:100%}.platform-ops-note-form>div{align-items:center;color:var(--pi-ink-soft);display:flex;font-size:11px;justify-content:space-between;margin-top:8px}.platform-ops-empty{color:var(--pi-ink-soft);padding:24px;text-align:center}.platform-ops button:disabled{cursor:not-allowed;opacity:.55}@media (max-width:820px){.platform-ops-body,.platform-ops-topbar{padding-left:14px;padding-right:14px}.platform-ops-workspace{grid-template-columns:1fr}.platform-ops-queue{border-bottom:1px solid var(--pi-line);border-right:0}.platform-ops-list{max-height:none}.platform-ops-detail-heading{flex-direction:column}.platform-ops-metadata{grid-template-columns:1fr}}