:root{--admin-sidebar-width-expanded: 240px;--admin-sidebar-width-collapsed: 60px;--admin-topbar-height: 56px;--admin-sidebar-transition: .2s ease;--admin-overlay-bg: rgba(0, 0, 0, .55)}.admin-layout{display:flex;min-height:100vh;position:relative;background-color:var(--color-bg-primary, #f5f6fa);color:var(--color-text-primary, #1a1a2e);transition:background-color .2s ease,color .2s ease}.admin-sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--admin-sidebar-width-expanded);background-color:var(--color-bg-secondary, #ffffff);border-right:1px solid var(--color-border, #e2e8f0);z-index:100;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;transition:width var(--admin-sidebar-transition)}.admin-sidebar-collapsed .admin-sidebar{width:var(--admin-sidebar-width-collapsed)}.admin-sidebar-toggle{display:flex;align-items:center;justify-content:center;width:100%;height:44px;padding:0 16px;border:none;background:transparent;cursor:pointer;color:var(--color-text-secondary, #64748b);font-size:1.25rem;transition:color .2s ease,background-color .2s ease}.admin-sidebar-toggle:hover{background-color:var(--color-bg-primary, #f5f6fa);color:var(--color-accent, #6366f1)}.admin-sidebar-toggle:focus-visible{outline:2px solid var(--color-accent, #6366f1);outline-offset:-2px}.admin-sidebar-nav{display:flex;flex-direction:column;gap:2px;padding:8px;flex:1}.admin-sidebar-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:6px;text-decoration:none;color:var(--color-text-primary, #1a1a2e);font-size:.9rem;font-weight:500;white-space:nowrap;overflow:hidden;transition:background-color .15s ease,color .15s ease;border:none;background:transparent;cursor:pointer;width:100%;text-align:left}.admin-sidebar-item:hover{background-color:var(--color-bg-primary, #f5f6fa);color:var(--color-accent, #6366f1)}.admin-sidebar-item:focus-visible{outline:2px solid var(--color-accent, #6366f1);outline-offset:-2px}.admin-sidebar-item-active{background-color:var(--color-accent, #6366f1);color:#fff}.admin-sidebar-item-active:hover{background-color:var(--color-accent, #6366f1);color:#fff;opacity:.9}.admin-sidebar-icon{display:flex;align-items:center;justify-content:center;width:24px;min-width:24px;height:24px;font-size:1.2rem;flex-shrink:0}.admin-sidebar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:opacity var(--admin-sidebar-transition)}.admin-sidebar-collapsed .admin-sidebar-label{opacity:0;width:0;overflow:hidden}.admin-topbar{position:fixed;top:0;left:var(--admin-sidebar-width-expanded);right:0;height:var(--admin-topbar-height);background-color:var(--color-bg-secondary, #ffffff);border-bottom:1px solid var(--color-border, #e2e8f0);z-index:98;display:flex;align-items:center;justify-content:space-between;padding:0 24px;transition:left var(--admin-sidebar-transition),background-color .2s ease}.admin-sidebar-collapsed .admin-topbar{left:var(--admin-sidebar-width-collapsed)}.admin-topbar-breadcrumbs{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--color-text-secondary, #64748b);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-topbar-actions{display:flex;align-items:center;gap:16px}.admin-user-name{font-size:.875rem;font-weight:500;color:var(--color-text-primary, #1a1a2e)}.admin-logout-button{padding:6px 14px;border:1px solid var(--color-border, #e2e8f0);border-radius:4px;background:transparent;color:var(--color-text-secondary, #64748b);font-size:.8rem;font-weight:500;cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.admin-logout-button:hover{background-color:var(--color-error, #ef4444);color:#fff;border-color:var(--color-error, #ef4444)}.admin-logout-button:focus-visible{outline:2px solid var(--color-accent, #6366f1);outline-offset:2px}.admin-content{margin-left:var(--admin-sidebar-width-expanded);margin-top:var(--admin-topbar-height);padding:24px;flex:1;min-height:calc(100vh - var(--admin-topbar-height));transition:margin-left var(--admin-sidebar-transition);width:calc(100% - var(--admin-sidebar-width-expanded))}.admin-sidebar-collapsed .admin-content{margin-left:var(--admin-sidebar-width-collapsed);width:calc(100% - var(--admin-sidebar-width-collapsed))}.admin-hamburger{display:none;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:transparent;font-size:1.5rem;color:var(--color-text-primary, #1a1a2e);cursor:pointer;border-radius:4px;transition:background-color .15s ease}.admin-hamburger:hover{background-color:var(--color-bg-primary, #f5f6fa)}.admin-hamburger:focus-visible{outline:2px solid var(--color-accent, #6366f1);outline-offset:2px}.admin-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--admin-overlay-bg);z-index:99;opacity:0;transition:opacity .2s ease}.admin-overlay-visible{display:block;opacity:1}@media(max-width:767px){.admin-sidebar{transform:translate(-100%);width:var(--admin-sidebar-width-expanded);box-shadow:4px 0 20px #00000026}.admin-sidebar-collapsed .admin-sidebar{width:var(--admin-sidebar-width-expanded)}.admin-sidebar-mobile-open .admin-sidebar{transform:translate(0)}.admin-sidebar-mobile-open .admin-overlay{display:block;opacity:1}.admin-topbar,.admin-sidebar-collapsed .admin-topbar{left:0}.admin-content,.admin-sidebar-collapsed .admin-content{margin-left:0;width:100%}.admin-hamburger{display:flex}}.landing-page{width:100%;overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1f2937;line-height:1.6}.content-wrapper{max-width:1200px;margin:0 auto;padding:0 24px}.section-header{text-align:center;margin-bottom:48px}.section-title{font-size:2.25rem;font-weight:700;color:#111827;margin:0 0 12px;letter-spacing:-.02em}.section-subtitle{font-size:1.125rem;color:#6b7280;max-width:600px;margin:0 auto}.button{display:inline-flex;align-items:center;justify-content:center;padding:12px 28px;font-size:1rem;font-weight:600;border-radius:8px;text-decoration:none;cursor:pointer;transition:all .2s ease;border:2px solid transparent;gap:8px;font-family:inherit}.button-primary{background-color:#1a56db;color:#fff;border-color:#1a56db}.button-primary:hover{background-color:#1e40af;border-color:#1e40af;transform:translateY(-1px);box-shadow:0 4px 12px #1a56db4d}.button-secondary{background-color:#fff;color:#1a56db;border-color:#d1d5db}.button-secondary:hover{border-color:#1a56db;background-color:#eff6ff}.button-outline{background-color:transparent;color:#fff;border-color:#fff}.button-outline:hover{background-color:#fff;color:#1a56db}.button-large{padding:16px 36px;font-size:1.125rem}.hero-section{position:relative;width:100%;height:75vh;min-height:480px;max-height:800px;overflow:hidden}.hero-slider{display:flex;width:100%;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none}.hero-slider::-webkit-scrollbar{display:none}.hero-slide{flex:0 0 100%;width:100%;height:100%;position:relative;scroll-snap-align:start;display:flex;align-items:center;justify-content:center}.hero-slide-media{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.hero-slide-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hero-slide-content{position:relative;z-index:2;padding:40px;max-width:700px;text-align:center}.hero-slide-content.position-left{margin-right:auto;margin-left:60px;text-align:left}.hero-slide-content.position-right{margin-left:auto;margin-right:60px;text-align:right}.hero-slide-content.position-bottom_left{position:absolute;bottom:80px;left:60px;text-align:left}.hero-slide-content.position-bottom_right{position:absolute;bottom:80px;right:60px;text-align:right}.hero-slide-title{font-size:3rem;font-weight:800;margin:0 0 16px;line-height:1.15;text-shadow:0 2px 8px rgba(0,0,0,.3);color:#fff}.hero-slide-subtitle{font-size:1.25rem;margin:0 0 28px;opacity:.95;text-shadow:0 1px 4px rgba(0,0,0,.2);color:#fff}.hero-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a56db,#3b82f6,#60a5fa)}.hero-empty-content{text-align:center;padding:40px;color:#fff}.hero-empty-content .hero-slide-title{color:#fff}.hero-empty-content .hero-slide-subtitle{color:#ffffffe6}.hero-nav{position:absolute;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;z-index:5}.hero-nav-arrow{width:36px;height:36px;border-radius:50%;border:none;background:#ffffffe6;color:#1f2937;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1;font-family:inherit}.hero-nav-arrow:hover{background:#fff;transform:scale(1.1)}.hero-dots{display:flex;gap:8px}.hero-dot{width:10px;height:10px;border-radius:50%;border:2px solid #ffffff;background:transparent;cursor:pointer;transition:all .2s;padding:0}.hero-dot.active{background:#fff;transform:scale(1.2)}.trust-section{background:#f9fafb;padding:40px 0;border-bottom:1px solid #e5e7eb}.trust-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:32px}.trust-item{display:flex;align-items:center;gap:12px}.trust-icon-wrapper{width:44px;height:44px;background:#eff6ff;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.trust-icon{width:22px;height:22px;color:#1a56db}.trust-data{display:flex;flex-direction:column}.trust-number{font-size:1.25rem;font-weight:700;color:#111827;line-height:1.2}.trust-label{font-size:.8125rem;color:#6b7280;white-space:nowrap}.services-section{padding:80px 0;background:#fff}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px;margin-bottom:48px}.service-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .25s ease;display:flex;flex-direction:column}.service-panel:hover{border-color:#1a56db;box-shadow:0 8px 24px #1a56db1a;transform:translateY(-4px)}.service-panel-image{width:100%;height:180px;overflow:hidden}.service-panel-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.service-panel:hover .service-panel-image img{transform:scale(1.05)}.service-panel-icon{width:100%;height:120px;display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:#fff;font-weight:700}.service-panel-body{padding:20px;flex:1;display:flex;flex-direction:column}.service-panel-title{font-size:1.125rem;font-weight:600;color:#111827;margin:0 0 8px}.service-panel-description{font-size:.9375rem;color:#6b7280;margin:0 0 16px;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.service-panel-link{display:inline-flex;align-items:center;gap:4px;font-size:.875rem;font-weight:600;color:#1a56db;text-decoration:none;margin-top:auto;transition:gap .2s ease}.service-panel-link:hover{gap:8px}.link-arrow-icon{width:16px;height:16px}.section-actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.empty-state{text-align:center;padding:60px 20px;color:#9ca3af;font-size:1.125rem}.how-it-works-section{padding:80px 0;background:#f9fafb}.steps-grid{display:flex;align-items:flex-start;justify-content:center;gap:0;flex-wrap:wrap}.step-panel{flex:0 1 220px;text-align:center;padding:24px 16px;position:relative}.step-number-badge{position:absolute;top:16px;right:16px;width:28px;height:28px;background:#1a56db;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:700}.step-icon-wrapper{width:64px;height:64px;margin:0 auto 16px;background:#eff6ff;border-radius:16px;display:flex;align-items:center;justify-content:center}.step-icon-wrapper svg{width:32px;height:32px;color:#1a56db}.step-title{font-size:1rem;font-weight:600;color:#111827;margin:0 0 8px}.step-description{font-size:.875rem;color:#6b7280;margin:0;line-height:1.5}.step-connector{display:flex;align-items:center;padding-top:56px;color:#d1d5db}.step-connector svg{width:40px;height:12px}.testimonials-section{padding:80px 0;background:#fff}.testimonial-slider{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:8px;margin-bottom:40px}.testimonial-slider::-webkit-scrollbar{display:none}.testimonial-panel{flex:0 0 340px;scroll-snap-align:start;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:28px;display:flex;flex-direction:column;transition:border-color .2s}.testimonial-panel:hover{border-color:#1a56db}.testimonial-rating{color:#f59e0b;font-size:1.125rem;margin-bottom:12px;letter-spacing:2px}.testimonial-body{font-size:.9375rem;color:#374151;line-height:1.65;margin:0 0 20px;flex:1;font-style:italic}.testimonial-footer{display:flex;align-items:center;gap:12px}.testimonial-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.testimonial-avatar-placeholder{width:40px;height:40px;border-radius:50%;background:#1a56db;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem}.testimonial-author-info{display:flex;flex-direction:column}.testimonial-author-name{font-size:.875rem;font-weight:600;color:#111827}.testimonial-service-type{font-size:.75rem;color:#6b7280}.service-areas-section{padding:80px 0;background:#f9fafb}.areas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.area-panel{position:relative;border-radius:12px;overflow:hidden;height:200px}.area-panel-image{width:100%;height:100%;object-fit:cover}.area-panel-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#000000b3,#0000001a);display:flex;flex-direction:column;justify-content:flex-end;padding:20px;color:#fff}.area-panel-overlay h3{font-size:1.125rem;font-weight:600;margin:0 0 4px}.area-panel-overlay p{font-size:.8125rem;margin:0;opacity:.85}.cta-section{padding:100px 0;background:linear-gradient(135deg,#1a56db,#2563eb,#3b82f6);text-align:center}.cta-content{max-width:600px;margin:0 auto}.cta-title{font-size:2.5rem;font-weight:800;color:#fff;margin:0 0 16px}.cta-subtitle{font-size:1.125rem;color:#ffffffe6;margin:0 0 36px;line-height:1.6}.cta-actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.landing-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;flex-direction:column;gap:16px}.landing-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#1a56db;border-radius:50%;animation:landing-spin .8s linear infinite}@keyframes landing-spin{to{transform:rotate(360deg)}}.landing-loading-text{font-size:1rem;color:#6b7280}@media(max-width:1024px){.hero-slide-title{font-size:2.25rem}.services-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.step-connector{display:none}.steps-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.step-panel{flex:none}}@media(max-width:768px){.hero-section{height:60vh;min-height:400px}.hero-slide-title{font-size:1.75rem}.hero-slide-subtitle{font-size:1rem}.hero-slide-content{padding:24px}.hero-slide-content.position-left,.hero-slide-content.position-right,.hero-slide-content.position-bottom_left,.hero-slide-content.position-bottom_right{margin:0;position:relative;bottom:auto;left:auto;right:auto;text-align:center}.section-title{font-size:1.75rem}.section-subtitle{font-size:1rem}.trust-grid{gap:20px}.trust-item{flex:0 0 calc(50% - 10px)}.services-grid{grid-template-columns:1fr}.steps-grid{grid-template-columns:1fr;gap:16px}.testimonial-panel{flex:0 0 290px}.areas-grid{grid-template-columns:1fr 1fr}.cta-title{font-size:1.75rem}.cta-actions,.section-actions{flex-direction:column;align-items:center}}@media(max-width:480px){.content-wrapper{padding:0 16px}.hero-section{height:55vh;min-height:360px}.hero-slide-title{font-size:1.5rem}.trust-grid{flex-direction:column;align-items:stretch;gap:12px}.trust-item{flex:none}.services-section,.how-it-works-section,.testimonials-section,.service-areas-section{padding:56px 0}.testimonial-panel{flex:0 0 260px;padding:20px}.areas-grid{grid-template-columns:1fr}.cta-section{padding:64px 0}.button-large{padding:14px 28px;font-size:1rem}}.services-page{width:100%;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1f2937;line-height:1.6;background:#fff}.services-page-header{text-align:center;padding:64px 24px 40px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.services-page-title{font-size:2.5rem;font-weight:800;color:#111827;margin:0 0 12px;letter-spacing:-.02em}.services-page-subtitle{font-size:1.125rem;color:#6b7280;max-width:600px;margin:0 auto;line-height:1.6}.category-filter-bar{display:flex;align-items:center;gap:12px;padding:24px;max-width:1200px;margin:0 auto;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#d1d5db transparent}.category-filter-bar::-webkit-scrollbar{height:4px}.category-filter-bar::-webkit-scrollbar-track{background:transparent}.category-filter-bar::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.category-filter-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;font-size:.875rem;font-weight:500;color:#374151;background:#fff;border:1.5px solid #d1d5db;border-radius:9999px;cursor:pointer;white-space:nowrap;transition:all .2s ease;font-family:inherit;line-height:1.4}.category-filter-pill:hover{border-color:#1a56db;color:#1a56db;background:#eff6ff}.category-filter-pill:focus-visible{outline:2px solid #1a56db;outline-offset:2px}.category-filter-pill.active{background:#1a56db;border-color:#1a56db;color:#fff;font-weight:600}.category-filter-pill.active .category-color-dot{border:2px solid #ffffff}.category-color-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.services-results-section{max-width:1200px;margin:0 auto;padding:0 24px 64px}.services-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:28px}.service-card{position:relative;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:28px;display:flex;flex-direction:column;transition:all .25s ease}.service-card:hover{border-color:#1a56db;box-shadow:0 8px 28px #1a56db1a;transform:translateY(-4px)}.service-card-badge{position:absolute;top:16px;right:16px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:4px 10px;border-radius:9999px}.service-card-title{font-size:1.25rem;font-weight:700;color:#111827;margin:0 0 10px;padding-right:80px;line-height:1.3}.service-card-category-tag{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:500;color:#6b7280;background:#f3f4f6;padding:4px 10px;border-radius:6px;margin-bottom:14px;width:fit-content}.service-card-category-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.service-card-description{font-size:.9375rem;color:#6b7280;line-height:1.6;margin:0 0 20px;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.service-card-pricing{display:flex;align-items:baseline;gap:6px;margin-bottom:8px}.service-card-price{font-size:1.5rem;font-weight:800;color:#111827;line-height:1}.service-card-unit{font-size:.875rem;font-weight:500;color:#6b7280}.service-card-duration{display:flex;align-items:center;gap:6px;font-size:.8125rem;color:#6b7280;margin-bottom:20px}.service-card-duration-icon{width:14px;height:14px;flex-shrink:0;color:#9ca3af}.service-card-actions{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid #f3f4f6}.service-card-book-link{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;font-size:.875rem;font-weight:600;color:#fff;background:#1a56db;border-radius:8px;text-decoration:none;transition:all .2s ease;border:2px solid #1a56db}.service-card-book-link:hover{background:#1e40af;border-color:#1e40af;transform:translateY(-1px);box-shadow:0 4px 12px #1a56db4d}.service-card-book-link:focus-visible{outline:2px solid #1a56db;outline-offset:2px}.service-card-details-link{display:inline-flex;align-items:center;gap:4px;font-size:.875rem;font-weight:600;color:#1a56db;text-decoration:none;padding:10px 12px;border-radius:8px;transition:all .2s ease}.service-card-details-link:hover{background:#eff6ff;gap:8px}.service-card-details-link:focus-visible{outline:2px solid #1a56db;outline-offset:2px}.services-empty-state{text-align:center;padding:80px 24px;color:#9ca3af}.services-empty-icon{width:64px;height:64px;margin:0 auto 16px;color:#d1d5db}.services-empty-message{font-size:1.125rem;color:#6b7280;margin:0}.services-cta-section{background:#f9fafb;border-top:1px solid #e5e7eb;padding:72px 24px;text-align:center}.services-cta-content{max-width:560px;margin:0 auto}.services-cta-title{font-size:1.75rem;font-weight:700;color:#111827;margin:0 0 12px}.services-cta-description{font-size:1rem;color:#6b7280;margin:0 0 28px;line-height:1.6}.services-cta-link{display:inline-flex;align-items:center;justify-content:center;padding:14px 32px;font-size:1rem;font-weight:600;color:#fff;background:#1a56db;border-radius:8px;text-decoration:none;transition:all .2s ease;border:2px solid #1a56db}.services-cta-link:hover{background:#1e40af;border-color:#1e40af;transform:translateY(-1px);box-shadow:0 4px 12px #1a56db4d}.services-cta-link:focus-visible{outline:2px solid #1a56db;outline-offset:2px}.services-loading{display:flex;align-items:center;justify-content:center;min-height:60vh;flex-direction:column;gap:16px}.services-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#1a56db;border-radius:50%;animation:services-spin .8s linear infinite}@keyframes services-spin{to{transform:rotate(360deg)}}.services-loading-text{font-size:1rem;color:#6b7280}.services-error{text-align:center;padding:80px 24px}.services-error-message{font-size:1.125rem;color:#dc2626;margin:0 0 20px}.services-error-retry{display:inline-flex;align-items:center;justify-content:center;padding:10px 24px;font-size:.875rem;font-weight:600;color:#1a56db;background:#fff;border:2px solid #1a56db;border-radius:8px;cursor:pointer;transition:all .2s ease;font-family:inherit}.services-error-retry:hover{background:#1a56db;color:#fff}.services-error-retry:focus-visible{outline:2px solid #1a56db;outline-offset:2px}@media(max-width:1024px){.services-results-grid{grid-template-columns:repeat(2,1fr)}.services-page-title{font-size:2rem}}@media(max-width:768px){.services-page-header{padding:48px 24px 32px}.services-page-title{font-size:1.75rem}.services-page-subtitle{font-size:1rem}.services-results-grid{grid-template-columns:1fr}.category-filter-bar{padding:16px;gap:8px}.category-filter-pill{padding:8px 16px;font-size:.8125rem}.services-cta-title{font-size:1.5rem}.services-cta-section{padding:56px 24px}.service-card{padding:24px}.service-card-actions{flex-direction:column;align-items:stretch}.service-card-book-link,.service-card-details-link{justify-content:center}}@media(max-width:480px){.services-page-header{padding:40px 16px 24px}.services-page-title{font-size:1.5rem}.services-results-section{padding:0 16px 48px}.category-filter-bar{padding:12px 16px}.category-filter-pill{padding:8px 14px;font-size:.75rem}.service-card{padding:20px}.service-card-title{font-size:1.125rem;padding-right:70px}.service-card-price{font-size:1.25rem}.services-cta-section{padding:48px 16px}.services-cta-title{font-size:1.375rem}}.quote-page{width:100%;max-width:1200px;margin:0 auto;padding:40px 24px 80px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1f2937;line-height:1.6}.quote-page-header{text-align:center;margin-bottom:48px}.quote-page-title{font-size:2.25rem;font-weight:700;color:#111827;margin:0 0 12px;letter-spacing:-.02em}.quote-page-subtitle{font-size:1.125rem;color:#6b7280;max-width:600px;margin:0 auto}.quote-layout{display:flex;gap:36px;align-items:flex-start}.quote-form{flex:1;min-width:0}.quote-summary-panel{flex:0 0 360px;position:sticky;top:100px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:28px}.quote-form-step{border:none;padding:0;margin:0 0 36px}.quote-step-title{display:flex;align-items:center;gap:10px;font-size:1.125rem;font-weight:600;color:#111827;margin-bottom:16px;padding:0}.quote-step-number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:#1a56db;color:#fff;border-radius:50%;font-size:.8125rem;font-weight:700;flex-shrink:0}.quote-step-optional{font-size:.8125rem;font-weight:400;color:#9ca3af;margin-left:4px}.quote-empty-note{font-size:.9375rem;color:#9ca3af;margin:0;padding:16px 0}.quote-category-grid{display:flex;flex-wrap:wrap;gap:12px}.quote-category-option{display:flex;align-items:center;gap:10px;padding:12px 20px;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease;font-family:inherit;font-size:.9375rem;font-weight:500;color:#374151}.quote-category-option:hover{border-color:#1a56db;background:#eff6ff}.quote-category-option.selected{border-color:#1a56db;background:#eff6ff;color:#1a56db;box-shadow:0 0 0 3px #1a56db1a}.quote-category-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:#f3f4f6;border-radius:6px;font-size:1rem;font-weight:700;color:#6b7280;transition:all .2s ease}.quote-category-option.selected .quote-category-icon{background:#1a56db;color:#fff}.quote-category-name{white-space:nowrap}.quote-service-list{display:flex;flex-direction:column;gap:12px}.quote-service-option{display:flex;align-items:center;gap:14px;padding:16px 20px;background:#fff;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;transition:all .2s ease}.quote-service-option:hover{border-color:#93c5fd;background:#fafbff}.quote-service-option.selected{border-color:#1a56db;background:#eff6ff;box-shadow:0 0 0 3px #1a56db1a}.quote-service-radio{width:18px;height:18px;accent-color:#1a56db;flex-shrink:0;cursor:pointer}.quote-service-info{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.quote-service-name{font-size:1rem;font-weight:600;color:#111827}.quote-service-desc{font-size:.8125rem;color:#6b7280;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.quote-service-meta{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0}.quote-service-price{font-size:1.125rem;font-weight:700;color:#1a56db}.quote-service-unit{font-size:.75rem;color:#6b7280}.quote-units-field{display:flex;flex-direction:column;gap:8px}.quote-units-label{font-size:.9375rem;font-weight:500;color:#374151}.quote-units-input-wrapper{display:flex;align-items:center;gap:0;max-width:200px}.quote-units-btn{width:40px;height:40px;border:1px solid #d1d5db;background:#f9fafb;color:#374151;font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;font-family:inherit}.quote-units-btn:first-child{border-radius:8px 0 0 8px;border-right:none}.quote-units-btn:last-child{border-radius:0 8px 8px 0;border-left:none}.quote-units-btn:hover{background:#e5e7eb;color:#1a56db}.quote-units-input{width:80px;height:40px;text-align:center;border-radius:0;font-size:1rem;font-weight:600;border-left:none;border-right:none}.quote-units-input::-webkit-inner-spin-button,.quote-units-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quote-units-input[type=number]{-moz-appearance:textfield}.quote-units-range{font-size:.75rem;color:#9ca3af}.quote-addons-list{display:flex;flex-direction:column;gap:10px}.quote-addons-loading{display:flex;align-items:center;gap:8px;font-size:.875rem;color:#6b7280;padding:12px 0}.quote-mini-spinner{width:16px;height:16px;border:2px solid #e5e7eb;border-top-color:#1a56db;border-radius:50%;animation:quote-spin .6s linear infinite}.quote-addon-option{display:flex;align-items:center;gap:14px;padding:14px 18px;background:#fff;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;transition:all .2s ease}.quote-addon-option:hover{border-color:#93c5fd;background:#fafbff}.quote-addon-option.selected{border-color:#1a56db;background:#eff6ff;box-shadow:0 0 0 3px #1a56db1a}.quote-addon-checkbox{width:18px;height:18px;accent-color:#1a56db;flex-shrink:0;cursor:pointer}.quote-addon-info{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.quote-addon-name{font-size:.9375rem;font-weight:600;color:#111827}.quote-addon-desc{font-size:.8125rem;color:#6b7280;line-height:1.4}.quote-addon-price{font-size:.9375rem;font-weight:600;color:#1a56db;flex-shrink:0}.quote-coupon-input-row{display:flex;gap:10px;align-items:stretch}.quote-coupon-input{flex:1;max-width:260px}.quote-coupon-btn{white-space:nowrap;padding:10px 20px}.quote-coupon-btn:disabled{opacity:.5;cursor:not-allowed}.quote-coupon-error{font-size:.8125rem;color:#dc2626;margin:8px 0 0}.quote-coupon-applied{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px}.quote-coupon-applied-info{display:flex;align-items:center;gap:8px}.quote-coupon-icon{width:20px;height:20px;color:#059669;flex-shrink:0}.quote-coupon-applied-text{font-size:.875rem;color:#065f46}.quote-coupon-remove{background:none;border:none;color:#dc2626;font-size:.8125rem;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .15s ease;font-family:inherit}.quote-coupon-remove:hover{background:#fef2f2}.input-field{padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:.9375rem;font-family:inherit;color:#1f2937;background:#fff;transition:border-color .2s ease,box-shadow .2s ease;outline:none}.input-field:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.quote-summary-heading{font-size:1.25rem;font-weight:700;color:#111827;margin:0 0 20px}.quote-summary-line{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.quote-summary-line-label{font-size:.875rem;color:#374151}.quote-summary-line-value{font-size:.875rem;font-weight:600;color:#111827}.quote-summary-addons{margin-top:8px}.quote-summary-addons-title{display:block;font-size:.8125rem;font-weight:600;color:#6b7280;margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em}.quote-summary-addon-line .quote-summary-line-label{font-size:.8125rem;color:#6b7280;padding-left:8px}.quote-summary-addon-line .quote-summary-line-value{font-size:.8125rem}.quote-summary-divider{height:1px;background:#e5e7eb;margin:12px 0}.quote-summary-discount-line .quote-summary-line-label{color:#059669}.quote-summary-discount-value{color:#059669!important}.quote-summary-total{display:flex;justify-content:space-between;align-items:center;padding:8px 0 4px}.quote-summary-total-label{font-size:1rem;font-weight:700;color:#111827}.quote-summary-total-value{font-size:1.5rem;font-weight:800;color:#1a56db}.quote-summary-duration{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:.8125rem;color:#6b7280}.quote-duration-icon{width:18px;height:18px;color:#6b7280;flex-shrink:0}.quote-summary-actions{margin-top:24px;display:flex;flex-direction:column;gap:12px}.quote-book-btn{width:100%;justify-content:center;padding:14px 24px;font-size:1rem}.quote-start-over{background:none;border:none;color:#6b7280;font-size:.875rem;font-weight:500;cursor:pointer;padding:8px;text-align:center;transition:color .15s ease;font-family:inherit}.quote-start-over:hover{color:#dc2626}.quote-summary-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:32px 16px}.quote-summary-empty-icon{width:48px;height:48px;color:#d1d5db;margin-bottom:16px}.quote-summary-empty-text{font-size:.9375rem;color:#9ca3af;margin:0;line-height:1.5}.quote-page .button{display:inline-flex;align-items:center;justify-content:center;padding:12px 28px;font-size:1rem;font-weight:600;border-radius:8px;text-decoration:none;cursor:pointer;transition:all .2s ease;border:2px solid transparent;gap:8px;font-family:inherit}.quote-page .button-primary{background-color:#1a56db;color:#fff;border-color:#1a56db}.quote-page .button-primary:hover{background-color:#1e40af;border-color:#1e40af;transform:translateY(-1px);box-shadow:0 4px 12px #1a56db4d}.quote-page .button-secondary{background-color:#fff;color:#1a56db;border-color:#d1d5db}.quote-page .button-secondary:hover{border-color:#1a56db;background-color:#eff6ff}.quote-loading{display:flex;align-items:center;justify-content:center;min-height:60vh;flex-direction:column;gap:16px}.quote-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#1a56db;border-radius:50%;animation:quote-spin .8s linear infinite}.quote-loading-text{font-size:1rem;color:#6b7280}@keyframes quote-spin{to{transform:rotate(360deg)}}@media(max-width:1024px){.quote-summary-panel{flex:0 0 300px}.quote-page-title{font-size:2rem}}@media(max-width:768px){.quote-page{padding:24px 16px 60px}.quote-layout{flex-direction:column;gap:24px}.quote-summary-panel{flex:none;width:100%;position:static;order:-1}.quote-page-title{font-size:1.75rem}.quote-page-subtitle{font-size:1rem}.quote-page-header{margin-bottom:32px}.quote-category-grid{gap:8px}.quote-category-option{padding:10px 14px;font-size:.875rem}.quote-service-option{padding:14px 16px;gap:10px}.quote-service-name{font-size:.9375rem}.quote-service-price{font-size:1rem}.quote-coupon-input-row{flex-direction:column}.quote-coupon-input{max-width:none}}@media(max-width:480px){.quote-page{padding:16px 12px 48px}.quote-page-title{font-size:1.5rem}.quote-step-title{font-size:1rem}.quote-category-grid{flex-direction:column}.quote-category-option{width:100%}.quote-summary-panel{padding:20px}.quote-summary-total-value{font-size:1.25rem}.quote-addon-option{padding:12px 14px;gap:10px}.quote-units-input-wrapper{max-width:none;width:100%}.quote-units-input{flex:1}}.booking-page{width:100%;min-height:100vh;background-color:#f9fafb;padding:40px 24px 80px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1f2937;line-height:1.6}.booking-page-inner{max-width:900px;margin:0 auto}.booking-page-title{font-size:2rem;font-weight:700;color:#111827;text-align:center;margin:0 0 32px;letter-spacing:-.02em}.booking-step-indicator{display:flex;align-items:center;justify-content:center;margin-bottom:40px;padding:0;list-style:none;gap:0}.booking-step-indicator-item{display:flex;flex-direction:column;align-items:center;position:relative;flex:1;max-width:160px}.booking-step-indicator-item:not(:last-child):after{content:"";position:absolute;top:18px;left:calc(50% + 20px);width:calc(100% - 40px);height:2px;background-color:#e5e7eb;z-index:0}.booking-step-indicator-item.completed:not(:last-child):after{background-color:#1a56db}.booking-step-circle{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700;border:2px solid #e5e7eb;background-color:#fff;color:#6b7280;position:relative;z-index:1;transition:all .25s ease;cursor:default}.booking-step-indicator-item.active .booking-step-circle{border-color:#1a56db;background-color:#1a56db;color:#fff;box-shadow:0 0 0 4px #1a56db26}.booking-step-indicator-item.completed .booking-step-circle{border-color:#1a56db;background-color:#1a56db;color:#fff}.booking-step-indicator-item.clickable .booking-step-circle{cursor:pointer}.booking-step-indicator-item.clickable .booking-step-circle:hover{transform:scale(1.1)}.booking-step-label{margin-top:8px;font-size:.75rem;font-weight:500;color:#9ca3af;text-align:center;white-space:nowrap}.booking-step-indicator-item.active .booking-step-label{color:#1a56db;font-weight:600}.booking-step-indicator-item.completed .booking-step-label{color:#1a56db}.booking-form-section{background-color:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;border:1px solid #e5e7eb;animation:fadeSlideIn .3s ease}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.booking-form-section-title{font-size:1.5rem;font-weight:700;color:#111827;margin:0 0 8px}.booking-form-section-subtitle{font-size:.95rem;color:#6b7280;margin:0 0 28px}.field-wrapper{margin-bottom:20px}.field-label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:6px}.field-label .required-mark{color:#dc2626;margin-left:2px}.input-field{width:100%;padding:12px 14px;font-size:.95rem;font-family:inherit;border:1px solid #d1d5db;border-radius:8px;background-color:#fff;color:#1f2937;outline:none;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.input-field:focus{border-color:#1a56db;box-shadow:0 0 0 3px #1a56db1a}.input-field::placeholder{color:#9ca3af}.input-field.has-error{border-color:#dc2626}.input-field.has-error:focus{box-shadow:0 0 0 3px #dc26261a}.input-error{font-size:.8rem;color:#dc2626;margin-top:4px;display:block}textarea.input-field{resize:vertical;min-height:100px}select.input-field{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}.booking-service-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:16px}.booking-service-card{position:relative;border:2px solid #e5e7eb;border-radius:10px;padding:20px;cursor:pointer;transition:all .2s ease;background-color:#fff}.booking-service-card:hover{border-color:#93c5fd;box-shadow:0 4px 12px #1a56db14}.booking-service-card.selected{border-color:#1a56db;background-color:#eff6ff;box-shadow:0 0 0 3px #1a56db1f}.booking-service-card-radio{position:absolute;top:16px;right:16px;width:20px;height:20px;border-radius:50%;border:2px solid #d1d5db;background-color:#fff;transition:all .2s ease}.booking-service-card.selected .booking-service-card-radio{border-color:#1a56db;background-color:#1a56db;box-shadow:inset 0 0 0 3px #fff}.booking-service-card-name{font-size:1.1rem;font-weight:600;color:#111827;margin:0 0 6px;padding-right:30px}.booking-service-card-description{font-size:.85rem;color:#6b7280;margin:0 0 12px;line-height:1.5}.booking-service-card-meta{display:flex;align-items:center;gap:16px;font-size:.85rem}.booking-service-card-price{font-weight:700;color:#1a56db}.booking-service-card-duration{color:#6b7280}.booking-calendar{border:1px solid #e5e7eb;border-radius:10px;padding:20px;background-color:#fff;margin-bottom:24px}.booking-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.booking-calendar-title{font-size:1.1rem;font-weight:600;color:#111827}.booking-calendar-nav{display:flex;gap:8px}.booking-calendar-nav-button{width:32px;height:32px;border-radius:6px;border:1px solid #d1d5db;background-color:#fff;color:#374151;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all .15s ease}.booking-calendar-nav-button:hover{background-color:#f3f4f6;border-color:#9ca3af}.booking-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px}.booking-calendar-weekday{text-align:center;font-size:.75rem;font-weight:600;color:#6b7280;padding:6px 0;text-transform:uppercase;letter-spacing:.05em}.booking-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.booking-calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:none;background-color:transparent;color:#1f2937}.booking-calendar-day:hover:not(.disabled):not(.empty){background-color:#eff6ff;color:#1a56db}.booking-calendar-day.selected{background-color:#1a56db;color:#fff;font-weight:700}.booking-calendar-day.today:not(.selected){border:2px solid #1a56db;color:#1a56db;font-weight:600}.booking-calendar-day.disabled{color:#d1d5db;cursor:not-allowed}.booking-calendar-day.empty{cursor:default}.booking-time-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.booking-time-grid-label{width:100%;font-size:.95rem;font-weight:600;color:#374151;margin-bottom:4px}.booking-time-slot{padding:10px 18px;border:1px solid #d1d5db;border-radius:8px;background-color:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.booking-time-slot:hover:not(.unavailable){border-color:#1a56db;color:#1a56db;background-color:#eff6ff}.booking-time-slot.selected{background-color:#1a56db;border-color:#1a56db;color:#fff;font-weight:600}.booking-time-slot.unavailable{background-color:#f3f4f6;color:#9ca3af;border-color:#e5e7eb;cursor:not-allowed;text-decoration:line-through}.booking-no-slots{color:#6b7280;font-size:.9rem;font-style:italic;padding:16px 0}.booking-addon-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-top:16px}.booking-addon-item{display:flex;align-items:flex-start;gap:12px;border:1px solid #e5e7eb;border-radius:8px;padding:14px 16px;cursor:pointer;transition:all .15s ease;background-color:#fff}.booking-addon-item:hover{border-color:#93c5fd;background-color:#fafbff}.booking-addon-item.checked{border-color:#1a56db;background-color:#eff6ff}.booking-addon-checkbox{width:20px;height:20px;border-radius:4px;border:2px solid #d1d5db;background-color:#fff;flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-top:2px;transition:all .15s ease}.booking-addon-item.checked .booking-addon-checkbox{border-color:#1a56db;background-color:#1a56db}.booking-addon-checkbox-mark{color:#fff;font-size:.7rem;font-weight:700;opacity:0;transition:opacity .15s ease}.booking-addon-item.checked .booking-addon-checkbox-mark{opacity:1}.booking-addon-info{flex:1}.booking-addon-name{font-size:.9rem;font-weight:600;color:#111827;margin:0 0 2px}.booking-addon-price{font-size:.8rem;color:#1a56db;font-weight:600}.booking-addon-description{font-size:.8rem;color:#6b7280;margin-top:2px}.booking-coupon-row{display:flex;gap:10px;align-items:flex-start;margin-top:8px}.booking-coupon-row .input-field{flex:1}.booking-coupon-button{padding:12px 20px;font-size:.875rem;font-weight:600;border:1px solid #1a56db;border-radius:8px;background-color:#fff;color:#1a56db;cursor:pointer;transition:all .15s ease;white-space:nowrap}.booking-coupon-button:hover{background-color:#eff6ff}.booking-coupon-button:disabled{opacity:.5;cursor:not-allowed}.booking-coupon-success{font-size:.8rem;color:#059669;margin-top:6px;font-weight:500}.booking-coupon-error{font-size:.8rem;color:#dc2626;margin-top:6px}.booking-address-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.booking-address-grid .field-wrapper.full-width{grid-column:1 / -1}.booking-summary-panel{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:24px;margin-top:24px}.booking-summary-panel-title{font-size:1.1rem;font-weight:700;color:#111827;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.booking-summary-group{margin-bottom:16px}.booking-summary-group-title{font-size:.8rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px}.booking-summary-line{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:.9rem}.booking-summary-line-label{color:#374151}.booking-summary-line-value{font-weight:600;color:#111827}.booking-summary-divider{height:1px;background-color:#e5e7eb;margin:12px 0}.booking-summary-total{display:flex;justify-content:space-between;align-items:center;padding:12px 0 0;font-size:1.15rem;font-weight:700}.booking-summary-total-label{color:#111827}.booking-summary-total-value{color:#1a56db}.booking-summary-discount{color:#059669}.booking-terms-wrapper{display:flex;align-items:flex-start;gap:10px;margin-top:20px;padding:16px;border:1px solid #e5e7eb;border-radius:8px;background-color:#fafbff}.booking-terms-checkbox{width:20px;height:20px;border-radius:4px;border:2px solid #d1d5db;background-color:#fff;cursor:pointer;flex-shrink:0;margin-top:2px;accent-color:#1a56db}.booking-terms-text{font-size:.85rem;color:#374151;line-height:1.5}.booking-terms-text a{color:#1a56db;text-decoration:underline}.booking-nav-buttons{display:flex;justify-content:space-between;align-items:center;margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}.booking-nav-button{padding:12px 28px;font-size:.95rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;border:2px solid transparent;font-family:inherit}.booking-nav-button-prev{background-color:#fff;color:#374151;border-color:#d1d5db}.booking-nav-button-prev:hover{border-color:#9ca3af;background-color:#f9fafb}.booking-nav-button-next{background-color:#1a56db;color:#fff;border-color:#1a56db}.booking-nav-button-next:hover{background-color:#1e40af;border-color:#1e40af;transform:translateY(-1px);box-shadow:0 4px 12px #1a56db4d}.booking-nav-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.booking-nav-button-confirm{background-color:#059669;color:#fff;border-color:#059669;padding:14px 36px;font-size:1rem}.booking-nav-button-confirm:hover{background-color:#047857;border-color:#047857;transform:translateY(-1px);box-shadow:0 4px 12px #0596694d}.booking-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;gap:16px}.booking-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#1a56db;border-radius:50%;animation:spinBooking .7s linear infinite}@keyframes spinBooking{to{transform:rotate(360deg)}}.booking-loading-text{color:#6b7280;font-size:.9rem}.booking-inline-loader{display:inline-block;width:16px;height:16px;border:2px solid #e5e7eb;border-top-color:#1a56db;border-radius:50%;animation:spinBooking .6s linear infinite;vertical-align:middle;margin-left:8px}.booking-error-banner{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:14px 18px;margin-bottom:20px;color:#991b1b;font-size:.9rem}.booking-char-counter{font-size:.75rem;color:#9ca3af;text-align:right;margin-top:4px}.booking-char-counter.near-limit{color:#f59e0b}.booking-char-counter.at-limit{color:#dc2626}@media(max-width:768px){.booking-page{padding:24px 16px 60px}.booking-page-title{font-size:1.5rem}.booking-step-indicator{gap:0}.booking-step-label{font-size:.65rem}.booking-step-circle{width:30px;height:30px;font-size:.75rem}.booking-step-indicator-item:not(:last-child):after{top:15px;left:calc(50% + 16px);width:calc(100% - 32px)}.booking-form-section{padding:20px 16px}.booking-form-section-title{font-size:1.25rem}.booking-service-cards,.booking-address-grid,.booking-addon-list{grid-template-columns:1fr}.booking-nav-buttons{flex-direction:column-reverse;gap:12px}.booking-nav-button{width:100%;text-align:center}.booking-coupon-row{flex-direction:column}.booking-time-grid{gap:8px}.booking-time-slot{padding:8px 14px;font-size:.8rem}}@media(max-width:480px){.booking-step-label{display:none}.booking-calendar-day{font-size:.75rem}.booking-summary-line{font-size:.85rem}}.worker-profile-page{width:100%;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1f2937;line-height:1.6;background-color:#f9fafb;padding-bottom:80px}.worker-profile-layout{max-width:1200px;margin:0 auto;padding:32px 24px;display:grid;grid-template-columns:1fr 320px;gap:32px;align-items:start}.worker-profile-content{min-width:0}.worker-profile-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.worker-profile-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#1a56db;border-radius:50%;animation:workerProfileSpin .8s linear infinite}@keyframes workerProfileSpin{to{transform:rotate(360deg)}}.worker-profile-loading-text{font-size:1rem;color:#6b7280;margin:0}.worker-profile-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px;text-align:center;padding:48px 24px}.worker-profile-error-icon{width:48px;height:48px;color:#ef4444}.worker-profile-error-message{font-size:1.125rem;color:#374151;margin:0;max-width:400px}.worker-profile-error-retry{padding:10px 24px;background-color:#1a56db;color:#fff;border:none;border-radius:8px;font-size:.938rem;font-weight:500;cursor:pointer;transition:background-color .2s ease}.worker-profile-error-retry:hover{background-color:#1648b8}.worker-profile-error-back{font-size:.875rem;color:#1a56db;text-decoration:none;transition:color .2s ease}.worker-profile-error-back:hover{color:#1648b8;text-decoration:underline}.worker-section-title{font-size:1.375rem;font-weight:700;color:#111827;margin:0 0 20px;letter-spacing:-.01em}.worker-profile-header{background-color:#fff;border-radius:12px;padding:32px;margin-bottom:24px;box-shadow:0 1px 3px #00000014}.worker-profile-header-top{display:flex;align-items:flex-start;gap:24px;margin-bottom:24px}.worker-avatar-wrapper{flex-shrink:0;width:100px;height:100px}.worker-avatar-image{width:100%;height:100%;border-radius:50%;object-fit:cover;border:3px solid #e5e7eb}.worker-avatar-placeholder{width:100%;height:100%;border-radius:50%;background-color:#1a56db;color:#fff;display:flex;align-items:center;justify-content:center;font-size:2.25rem;font-weight:700}.worker-profile-identity{flex:1;min-width:0}.worker-profile-name{font-size:1.75rem;font-weight:700;color:#111827;margin:0 0 4px;letter-spacing:-.02em}.worker-profile-member-since{font-size:.875rem;color:#6b7280;margin:0 0 12px}.worker-trust-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:20px;background-color:#f3f4f6;border:1px solid #e5e7eb}.worker-trust-badge-indicator{width:10px;height:10px;border-radius:50%;background-color:var(--badge-color, #6b7280);box-shadow:0 0 4px var(--badge-color, #6b7280)}.worker-trust-badge-label{font-size:.813rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.04em}.worker-trust-badge-score{font-size:.75rem;color:#6b7280;padding-left:8px;border-left:1px solid #d1d5db}.worker-verification-badges{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px;padding-top:20px;border-top:1px solid #f3f4f6}.worker-verification-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;font-size:.813rem;font-weight:500;background-color:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.worker-verification-icon{width:14px;height:14px;color:#16a34a}.worker-stats-grid{display:flex;gap:0;border-top:1px solid #f3f4f6;padding-top:20px}.worker-stat-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;text-align:center}.worker-stat-item:not(:last-child){border-right:1px solid #f3f4f6}.worker-stat-value{display:flex;align-items:center;gap:4px;font-size:1.5rem;font-weight:700;color:#111827}.worker-stat-rating-number{font-size:1.5rem}.worker-stat-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;font-weight:500}.worker-star-rating{display:inline-flex;align-items:center;gap:1px}.worker-star-rating--small .worker-star,.worker-star-rating--inline .worker-star{width:14px;height:14px}.worker-star-rating--medium .worker-star{width:20px;height:20px}.worker-star--filled,.worker-star--half{color:#f59e0b}.worker-star--empty{color:#e5e7eb}.worker-about-section{background-color:#fff;border-radius:12px;padding:32px;margin-bottom:24px;box-shadow:0 1px 3px #00000014}.worker-about-bio{font-size:1rem;color:#374151;line-height:1.7;margin:0 0 24px}.worker-about-group{margin-bottom:20px}.worker-about-group:last-child{margin-bottom:0}.worker-about-group-title{font-size:.875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px}.worker-service-tags{display:flex;flex-wrap:wrap;gap:8px}.worker-service-tag{display:inline-block;padding:6px 14px;background-color:#eff6ff;color:#1a56db;border-radius:20px;font-size:.813rem;font-weight:500;border:1px solid #bfdbfe}.worker-service-tag--area{background-color:#f0fdf4;color:#166534;border-color:#bbf7d0}.worker-portfolio-section{background-color:#fff;border-radius:12px;padding:32px;margin-bottom:24px;box-shadow:0 1px 3px #00000014}.worker-portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.worker-portfolio-item{position:relative;aspect-ratio:4 / 3;border-radius:8px;overflow:hidden;border:none;padding:0;cursor:pointer;background-color:#f3f4f6;transition:transform .2s ease,box-shadow .2s ease}.worker-portfolio-item:hover{transform:scale(1.02);box-shadow:0 4px 12px #00000026}.worker-portfolio-image{width:100%;height:100%;object-fit:cover}.worker-portfolio-video-thumb{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#1f2937;color:#fff;gap:8px}.worker-portfolio-play-icon{width:36px;height:36px}.worker-portfolio-video-label{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.worker-portfolio-item-title{position:absolute;bottom:0;left:0;right:0;padding:8px 10px;background:linear-gradient(transparent,#000000b3);color:#fff;font-size:.75rem;font-weight:500;text-align:left}.worker-portfolio-empty{font-size:.938rem;color:#6b7280;margin:0;padding:24px 0;text-align:center}.worker-portfolio-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background-color:#000000e6;display:flex;align-items:center;justify-content:center;padding:24px;animation:workerLightboxFadeIn .2s ease}@keyframes workerLightboxFadeIn{0%{opacity:0}to{opacity:1}}.worker-portfolio-lightbox-content{position:relative;max-width:900px;max-height:90vh;width:100%}.worker-portfolio-lightbox-close{position:absolute;top:-40px;right:0;width:32px;height:32px;background:none;border:none;color:#fff;cursor:pointer;padding:0;transition:opacity .2s ease}.worker-portfolio-lightbox-close:hover{opacity:.7}.worker-portfolio-lightbox-close svg{width:100%;height:100%}.worker-portfolio-lightbox-image{width:100%;max-height:80vh;object-fit:contain;border-radius:8px}.worker-portfolio-lightbox-video{width:100%;max-height:80vh;border-radius:8px;background-color:#000}.worker-portfolio-lightbox-caption{color:#fff;font-size:.938rem;text-align:center;margin:12px 0 0;opacity:.9}.worker-reviews-section{background-color:#fff;border-radius:12px;padding:32px;margin-bottom:24px;box-shadow:0 1px 3px #00000014}.worker-reviews-summary{display:flex;align-items:center;gap:16px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid #f3f4f6}.worker-reviews-summary-rating{display:flex;align-items:center;gap:8px}.worker-reviews-summary-number{font-size:2rem;font-weight:700;color:#111827}.worker-reviews-summary-count{font-size:.875rem;color:#6b7280}.worker-reviews-list{display:flex;flex-direction:column;gap:16px}.worker-review-card{padding:20px;border:1px solid #f3f4f6;border-radius:10px;background-color:#fafafa;transition:border-color .2s ease}.worker-review-card:hover{border-color:#e5e7eb}.worker-review-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.worker-review-client-name{font-size:.938rem;font-weight:600;color:#111827}.worker-review-comment{font-size:.938rem;color:#374151;line-height:1.6;margin:0 0 12px}.worker-review-card-footer{display:flex;align-items:center;gap:12px;font-size:.813rem;color:#6b7280}.worker-review-service{padding:3px 10px;background-color:#eff6ff;color:#1a56db;border-radius:12px;font-size:.75rem;font-weight:500}.worker-review-date{color:#9ca3af}.worker-reviews-more{font-size:.875rem;color:#6b7280;text-align:center;margin:16px 0 0;padding-top:16px;border-top:1px solid #f3f4f6}.worker-reviews-empty{font-size:.938rem;color:#6b7280;margin:0;padding:24px 0;text-align:center}.worker-availability-section{background-color:#fff;border-radius:12px;padding:32px;margin-bottom:24px;box-shadow:0 1px 3px #00000014}.worker-availability-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.worker-availability-day{padding:16px;background-color:#f9fafb;border-radius:8px;border:1px solid #f3f4f6}.worker-availability-day-name{font-size:.875rem;font-weight:600;color:#111827;margin:0 0 10px}.worker-availability-slots{display:flex;flex-wrap:wrap;gap:6px}.worker-availability-slot{display:inline-block;padding:4px 10px;background-color:#eff6ff;color:#1a56db;border-radius:6px;font-size:.75rem;font-weight:500}.worker-availability-slot--unavailable{background-color:#f3f4f6;color:#9ca3af}.worker-availability-empty{font-size:.938rem;color:#6b7280;margin:0;padding:24px 0;text-align:center}.worker-book-cta-sidebar{position:sticky;top:32px}.worker-book-cta-panel{background-color:#fff;border-radius:12px;padding:28px;box-shadow:0 1px 3px #00000014;border:1px solid #e5e7eb;text-align:center}.worker-book-cta-title{font-size:1.125rem;font-weight:700;color:#111827;margin:0 0 8px}.worker-book-cta-description{font-size:.875rem;color:#6b7280;margin:0 0 20px;line-height:1.5}.worker-book-cta-button{display:block;width:100%;padding:14px 24px;background-color:#1a56db;color:#fff;text-align:center;text-decoration:none;border-radius:8px;font-size:1rem;font-weight:600;transition:background-color .2s ease,transform .1s ease}.worker-book-cta-button:hover{background-color:#1648b8;transform:translateY(-1px)}.worker-book-cta-button:active{transform:translateY(0)}.worker-book-cta-trust{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid #f3f4f6}.worker-book-cta-trust-indicator{width:8px;height:8px;border-radius:50%}.worker-book-cta-trust-text{font-size:.813rem;color:#6b7280;font-weight:500}.worker-book-cta-mobile{display:none;position:fixed;bottom:0;left:0;right:0;z-index:100;padding:12px 16px;background-color:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -2px 8px #00000014}.worker-book-cta-mobile .worker-book-cta-button{max-width:480px;margin:0 auto}@media(max-width:1024px){.worker-profile-layout{grid-template-columns:1fr;padding:24px 20px}.worker-book-cta-sidebar{display:none}.worker-book-cta-mobile{display:block}.worker-profile-page{padding-bottom:80px}}@media(max-width:768px){.worker-profile-header{padding:24px}.worker-profile-header-top{gap:16px}.worker-avatar-wrapper{width:80px;height:80px}.worker-avatar-placeholder{font-size:1.75rem}.worker-profile-name{font-size:1.5rem}.worker-stats-grid{flex-wrap:wrap}.worker-stat-item{min-width:80px}.worker-stat-value,.worker-stat-rating-number{font-size:1.25rem}.worker-portfolio-grid,.worker-availability-grid{grid-template-columns:repeat(2,1fr)}.worker-about-section,.worker-portfolio-section,.worker-reviews-section,.worker-availability-section{padding:24px}}@media(max-width:480px){.worker-profile-layout{padding:16px 12px;gap:16px}.worker-profile-header{padding:20px 16px}.worker-profile-header-top{flex-direction:column;align-items:center;text-align:center}.worker-avatar-wrapper{width:88px;height:88px}.worker-profile-identity{display:flex;flex-direction:column;align-items:center}.worker-profile-name{font-size:1.375rem}.worker-verification-badges{justify-content:center}.worker-stats-grid{flex-direction:column;gap:12px}.worker-stat-item:not(:last-child){border-right:none;border-bottom:1px solid #f3f4f6;padding-bottom:12px}.worker-portfolio-grid{grid-template-columns:repeat(2,1fr);gap:8px}.worker-availability-grid{grid-template-columns:1fr}.worker-about-section,.worker-portfolio-section,.worker-reviews-section,.worker-availability-section{padding:20px 16px;border-radius:10px}.worker-review-card{padding:16px}.worker-review-card-header{flex-direction:column;align-items:flex-start;gap:6px}.worker-reviews-summary{flex-direction:column;align-items:flex-start;gap:8px}.worker-reviews-summary-number{font-size:1.75rem}.worker-portfolio-lightbox{padding:12px}.worker-portfolio-lightbox-close{top:-32px;width:28px;height:28px}.worker-book-cta-mobile{padding:10px 12px}}.client-bookings-page{max-width:1100px;margin:0 auto;padding:40px 24px 80px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.client-bookings-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:16px;color:#6b7280}.client-bookings-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#7c3aed;border-radius:50%;animation:client-spin .8s linear infinite}@keyframes client-spin{to{transform:rotate(360deg)}}.client-bookings-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px;flex-wrap:wrap;gap:16px}.client-bookings-title{font-size:28px;font-weight:700;color:#1f2937;margin:0}.client-bookings-stats{display:flex;gap:12px;flex-wrap:wrap}.client-stat-badge{display:flex;flex-direction:column;align-items:center;padding:10px 16px;border-radius:10px;background:#f3f4f6;min-width:70px}.client-stat-badge.client-stat-completed{background:#ecfdf5}.client-stat-badge.client-stat-upcoming{background:#eff6ff}.client-stat-badge.client-stat-cancelled{background:#fef2f2}.client-stat-number{font-size:20px;font-weight:700;color:#1f2937}.client-stat-completed .client-stat-number{color:#059669}.client-stat-upcoming .client-stat-number{color:#2563eb}.client-stat-cancelled .client-stat-number{color:#dc2626}.client-stat-label{font-size:11px;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.client-bookings-success{padding:14px 20px;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;color:#065f46;font-size:14px;font-weight:500;margin-bottom:20px}.client-bookings-error{padding:14px 20px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:14px;font-weight:500;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.client-bookings-error-dismiss{background:none;border:none;font-size:20px;color:#991b1b;cursor:pointer;line-height:1;padding:0 4px}.client-bookings-filters{display:flex;flex-direction:column;gap:16px;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid #e5e7eb}.client-filter-tabs{display:flex;gap:4px;overflow-x:auto}.client-filter-tab{padding:8px 18px;border:1px solid #e5e7eb;border-radius:20px;background:#fff;color:#4b5563;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.client-filter-tab:hover{background:#f9fafb;border-color:#d1d5db}.client-filter-tab.active{background:#7c3aed;border-color:#7c3aed;color:#fff}.client-filters-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.client-filter-search-wrapper{position:relative;flex:1;min-width:200px}.client-filter-search{width:100%;padding:10px 36px 10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#1f2937;background:#fff;transition:border-color .2s ease}.client-filter-search:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.client-filter-search::placeholder{color:#9ca3af}.client-filter-search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;color:#9ca3af;cursor:pointer;line-height:1;padding:2px}.client-filter-search-clear:hover{color:#4b5563}.client-filter-sort{padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#1f2937;background:#fff;cursor:pointer;min-width:160px}.client-filter-sort:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.client-bookings-list{display:flex;flex-direction:column;gap:16px}.client-booking-card{display:flex;gap:20px;padding:20px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;transition:box-shadow .2s ease,border-color .2s ease;position:relative}.client-booking-card:hover{box-shadow:0 4px 12px #0000000f;border-color:#d1d5db}.client-booking-date-block{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:72px;padding:12px 8px;background:#f9fafb;border-radius:10px;flex-shrink:0}.client-booking-day-number{font-size:28px;font-weight:700;color:#1f2937;line-height:1}.client-booking-month{font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.client-booking-time-range{font-size:11px;color:#9ca3af;margin-top:6px;text-align:center;white-space:nowrap}.client-booking-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.client-booking-service-name{font-size:16px;font-weight:600;color:#1f2937;margin:0;line-height:1.3}.client-booking-category{font-size:12px;color:#6b7280;font-weight:500}.client-booking-worker{display:flex;align-items:center;gap:8px;margin-top:4px}.client-booking-worker-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;border:1px solid #e5e7eb}.client-booking-worker-name{font-size:13px;color:#7c3aed;font-weight:500;text-decoration:none;transition:color .2s ease}.client-booking-worker-name:hover{color:#5b21b6;text-decoration:underline}.client-booking-address{font-size:13px;color:#6b7280;margin:2px 0 0;line-height:1.4}.client-booking-addon-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.client-booking-addon-pill{display:inline-block;padding:3px 10px;background:#ede9fe;color:#5b21b6;border-radius:12px;font-size:11px;font-weight:500;white-space:nowrap}.client-booking-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0;min-width:130px}.client-booking-status{display:inline-block;padding:4px 12px;border-radius:16px;font-size:12px;font-weight:600;text-transform:capitalize;white-space:nowrap}.client-booking-status.status-pending{background:#fef3c7;color:#92400e}.client-booking-status.status-confirmed{background:#dbeafe;color:#1e40af}.client-booking-status.status-in-progress{background:#e0e7ff;color:#3730a3}.client-booking-status.status-completed{background:#d1fae5;color:#065f46}.client-booking-status.status-cancelled{background:#fee2e2;color:#991b1b}.client-booking-price{font-size:18px;font-weight:700;color:#1f2937}.client-booking-buttons{display:flex;flex-direction:column;gap:6px;margin-top:4px}.client-booking-button{display:inline-block;padding:7px 14px;border:1px solid transparent;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;text-align:center;text-decoration:none;transition:all .2s ease;white-space:nowrap}.client-booking-button-primary{background:#7c3aed;color:#fff;border-color:#7c3aed}.client-booking-button-primary:hover{background:#6d28d9;border-color:#6d28d9}.client-booking-button-secondary{background:#f9fafb;color:#374151;border-color:#d1d5db}.client-booking-button-secondary:hover{background:#f3f4f6;border-color:#9ca3af}.client-booking-button-danger{background:#fef2f2;color:#dc2626;border-color:#fecaca}.client-booking-button-danger:hover{background:#fee2e2;border-color:#f87171}.client-booking-button-disabled{background:#f3f4f6;color:#9ca3af;border-color:#e5e7eb;cursor:default;pointer-events:none}.client-cancel-confirmation{position:absolute;top:0;right:0;bottom:0;left:0;background:#fffffff7;border-radius:12px;display:flex;align-items:center;justify-content:center;z-index:5;padding:20px;border:2px solid #fecaca}.client-cancel-confirmation-inner{text-align:center;max-width:420px}.client-cancel-confirmation-title{font-size:16px;font-weight:600;color:#991b1b;margin:0 0 10px}.client-cancel-confirmation-policy{font-size:13px;color:#6b7280;line-height:1.5;margin:0 0 16px}.client-cancel-confirmation-policy strong{color:#374151}.client-cancel-confirmation-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.client-bookings-pagination{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}.client-bookings-pagination-info{font-size:13px;color:#6b7280;margin:0}.client-bookings-pagination-nav{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:center}.client-pagination-button{padding:8px 14px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#374151;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.client-pagination-button:hover:not(:disabled):not(.active){background:#f9fafb;border-color:#d1d5db}.client-pagination-button.active{background:#7c3aed;border-color:#7c3aed;color:#fff}.client-pagination-button:disabled{opacity:.4;cursor:not-allowed}.client-pagination-dots{padding:8px 6px;color:#9ca3af;font-size:14px}.client-bookings-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center}.client-bookings-empty-icon{font-size:48px;margin-bottom:16px}.client-bookings-empty-title{font-size:20px;font-weight:600;color:#1f2937;margin:0 0 8px}.client-bookings-empty-text{font-size:14px;color:#6b7280;margin:0 0 24px;max-width:360px;line-height:1.5}.client-bookings-empty-action{display:inline-block;padding:12px 28px;background:#7c3aed;color:#fff;border-radius:8px;font-size:15px;font-weight:600;text-decoration:none;transition:background .2s ease}.client-bookings-empty-action:hover{background:#6d28d9}@media(max-width:768px){.client-bookings-page{padding:24px 16px 60px}.client-bookings-header{flex-direction:column;align-items:flex-start}.client-bookings-stats{width:100%;justify-content:space-between}.client-stat-badge{flex:1;min-width:0;padding:8px 10px}.client-bookings-filters{gap:12px}.client-filter-tabs{gap:4px;padding-bottom:4px}.client-filter-tab{padding:7px 14px;font-size:13px}.client-filters-controls{flex-direction:column;gap:10px}.client-filter-search-wrapper{min-width:100%}.client-filter-sort{width:100%}.client-booking-card{flex-direction:column;gap:14px;padding:16px}.client-booking-date-block{flex-direction:row;min-width:0;width:100%;justify-content:flex-start;gap:12px;padding:10px 14px}.client-booking-day-number{font-size:22px}.client-booking-time-range{margin-top:0;margin-left:auto}.client-booking-actions{flex-direction:row;align-items:center;flex-wrap:wrap;min-width:0;width:100%;gap:10px}.client-booking-buttons{flex-direction:row;flex-wrap:wrap;width:100%}.client-booking-button{flex:1;min-width:100px}.client-cancel-confirmation{padding:16px}.client-cancel-confirmation-actions{flex-direction:column}}@media(max-width:480px){.client-bookings-title{font-size:22px}.client-stat-number{font-size:16px}.client-stat-label{font-size:10px}.client-booking-service-name{font-size:15px}.client-booking-price{font-size:16px}}.worker-dashboard{width:100%;max-width:1200px;margin:0 auto;padding:0 24px 60px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1f2937;line-height:1.6}.worker-dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px;color:#6b7280;font-size:1rem}.worker-dashboard-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:#1a56db;border-radius:50%;animation:workerSpin .8s linear infinite}@keyframes workerSpin{to{transform:rotate(360deg)}}.worker-dashboard-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:40vh;gap:16px;padding:40px 24px;text-align:center}.worker-form-field{display:flex;flex-direction:column;gap:.3rem}.worker-form-field span{font-size:.75rem;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.3px}.worker-form-field-wide{flex:1;min-width:200px}.worker-form-select,.worker-form-input{padding:.5rem .7rem;font-size:.85rem;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;color:#1e293b;transition:border-color .2s ease}.worker-form-select:focus,.worker-form-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.worker-form-textarea{padding:.5rem .7rem;font-size:.85rem;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;color:#1e293b;resize:vertical;min-height:60px;font-family:inherit;transition:border-color .2s ease}.worker-form-textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.worker-time-off-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;margin-bottom:2.5rem;box-shadow:0 1px 3px #0000000a}.worker-time-off-form{display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap;padding-bottom:1.25rem;border-bottom:1px solid #f1f5f9}.worker-timeoff-submit-button{padding:.55rem 1.2rem;font-size:.85rem;font-weight:600;color:#fff;background:#7c3aed;border:none;border-radius:6px;cursor:pointer;transition:background .2s ease;white-space:nowrap}.worker-timeoff-submit-button:hover:not(:disabled){background:#6d28d9}.worker-timeoff-submit-button:disabled{opacity:.6;cursor:not-allowed}.worker-error-icon{width:48px;height:48px;color:#dc2626}.worker-error-message{font-size:1.125rem;color:#374151;margin:0}.worker-dashboard-header{padding:32px 0 24px;border-bottom:1px solid #e5e7eb;margin-bottom:24px}.worker-header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.worker-header-greeting{flex:1}.worker-header-title{font-size:1.75rem;font-weight:800;color:#111827;margin:0 0 4px;letter-spacing:-.02em}.worker-header-date{font-size:1rem;color:#6b7280;margin:0}.worker-header-date strong{color:#374151}.worker-trust-badge{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#fef3c7;border:1.5px solid #f59e0b;border-radius:8px}.worker-trust-star{width:20px;height:20px;color:#f59e0b}.worker-trust-score{font-size:1.125rem;font-weight:700;color:#92400e}.worker-time-off-list{margin-top:.5rem}.worker-time-off-item{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;padding:.75rem 0;border-bottom:1px solid #f1f5f9}.worker-time-off-item:last-child{border-bottom:none}.worker-time-off-item-dates{display:flex;align-items:center;gap:.4rem;font-size:.875rem;font-weight:600;color:#1e293b;min-width:180px}.worker-time-off-date-sep{color:#94a3b8}.worker-time-off-item-reason{flex:1;font-size:.85rem;color:#475569;min-width:120px}.worker-time-off-item-actions{display:flex;align-items:center;gap:.75rem}.worker-time-off-status{display:inline-block;padding:.2rem .6rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border-radius:4px}.status-pending{background:#fef3c7;color:#92400e}.status-approved{background:#d1fae5;color:#065f46}.status-denied{background:#fee2e2;color:#991b1b}.worker-time-off-cancel{padding:.3rem .7rem;font-size:.75rem;font-weight:600;color:#dc2626;background:none;border:1px solid #fca5a5;border-radius:4px;cursor:pointer;transition:background .15s ease}.worker-time-off-cancel:hover{background:#fef2f2}.worker-time-off-conflict{width:100%;padding:.4rem .75rem;font-size:.78rem;font-weight:500;color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;margin-top:.25rem}.worker-schedule-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;flex-wrap:wrap}.worker-schedule-info{display:flex;align-items:center;gap:8px}.worker-schedule-icon{width:18px;height:18px;color:#1a56db;flex-shrink:0}.worker-schedule-text{font-size:.9375rem;color:#1e40af}.worker-schedule-text strong{font-weight:600}.worker-schedule-breaks{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.worker-break-indicator{font-size:.8125rem;color:#6b7280;padding:4px 10px;background:#fff;border:1px solid #d1d5db;border-radius:4px}.worker-active-job-panel{position:relative;padding:24px;background:#f0fdf4;border:2px solid #059669;border-radius:12px;margin-bottom:32px;box-shadow:0 4px 12px #0596691f}.worker-active-job-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.worker-active-job-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#059669;padding:4px 10px;background:#d1fae5;border-radius:4px}.worker-active-job-timer{display:flex;align-items:center;gap:6px;font-size:1.25rem;font-weight:700;color:#065f46;font-variant-numeric:tabular-nums}.worker-timer-icon{width:20px;height:20px;color:#059669}.worker-active-job-details{margin-bottom:20px}.worker-active-job-service{font-size:1.375rem;font-weight:700;color:#111827;margin:0 0 12px}.worker-active-job-meta{display:flex;flex-direction:column;gap:8px}.worker-active-job-client,.worker-active-job-address,.worker-active-job-started{display:flex;align-items:center;gap:8px;font-size:.9375rem;color:#374151}.worker-meta-icon{width:16px;height:16px;color:#6b7280;flex-shrink:0}.worker-active-job-actions{display:flex;align-items:center;gap:12px}.worker-checkout-button{display:inline-flex;align-items:center;justify-content:center;padding:14px 32px;font-size:1.0625rem;font-weight:700;color:#fff;background:#059669;border:none;border-radius:8px;cursor:pointer;transition:background-color .2s ease,transform .1s ease;min-width:160px}.worker-checkout-button:hover{background:#047857;transform:translateY(-1px)}.worker-checkout-button:active{transform:translateY(0)}.worker-checkout-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.worker-bookings-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;margin-bottom:2.5rem;box-shadow:0 1px 3px #0000000a}.worker-bookings-list{display:flex;flex-direction:column;gap:0}.worker-booking-item{display:grid;grid-template-columns:140px 90px 1fr 120px;align-items:center;gap:1rem;padding:.7rem 0;border-bottom:1px solid #f1f5f9;font-size:.875rem}.worker-booking-item:last-child{border-bottom:none}.worker-booking-date{font-weight:600;color:#1e293b}.worker-booking-time{color:#475569}.worker-booking-service{color:#1e293b;font-weight:500}.worker-booking-client{color:#64748b;text-align:right}@media(max-width:900px){.worker-schedule-page{padding:1.25rem 1rem 3rem}.worker-calendar-grid{grid-template-columns:50px repeat(7,1fr);min-height:300px}.worker-calendar-hour-label{font-size:.55rem;padding-right:.25rem}.worker-calendar-day-body{min-height:297px}.worker-booking-item{grid-template-columns:1fr 1fr;gap:.5rem}.worker-booking-client{text-align:left}}@media(max-width:640px){.worker-schedule-header{flex-direction:column;align-items:flex-start}.worker-schedule-save-button{width:100%}.worker-day-row{flex-direction:column;gap:.75rem}.worker-day-info{min-width:unset;width:100%;justify-content:space-between}.worker-time-inputs{flex-direction:column;align-items:flex-start;gap:.5rem}.worker-time-separator{display:none}.worker-break-form,.worker-time-off-form{flex-direction:column;align-items:stretch}.worker-time-off-item{flex-direction:column;align-items:flex-start;gap:.5rem}.worker-calendar-grid{grid-template-columns:40px repeat(7,1fr);min-height:250px}.worker-calendar-day-abbr{font-size:.6rem}.worker-calendar-day-date{font-size:.75rem}.worker-calendar-day-body{min-height:247px}.worker-booking-item{grid-template-columns:1fr;gap:.25rem}}.worker-panic-button{position:absolute;bottom:16px;right:16px;display:flex;align-items:center;gap:4px;padding:8px 12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff;background:#dc2626;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s ease}.worker-panic-button svg{width:14px;height:14px}.worker-panic-button:hover{background:#b91c1c}.worker-today-jobs{margin-bottom:32px}.worker-section-title{font-size:1.25rem;font-weight:700;color:#111827;margin:0 0 16px}.worker-jobs-list{display:flex;flex-direction:column;gap:12px}.worker-job-item{display:flex;align-items:flex-start;gap:16px;padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;transition:border-color .2s ease,box-shadow .2s ease}.worker-job-item:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000a}.worker-job-time-block{display:flex;flex-direction:column;align-items:center;min-width:80px;padding:8px 0}.worker-job-time{font-size:.9375rem;font-weight:700;color:#1a56db}.worker-job-end-time{font-size:.75rem;color:#9ca3af;margin-top:2px}.worker-job-info{flex:1;min-width:0}.worker-job-service-name{font-size:1rem;font-weight:600;color:#111827;margin:0 0 4px}.worker-job-client{font-size:.875rem;color:#374151;margin:0 0 2px}.worker-job-address{font-size:.8125rem;color:#6b7280;margin:0 0 8px}.worker-job-addons{display:flex;flex-wrap:wrap;gap:6px}.worker-addon-tag{display:inline-block;font-size:.6875rem;font-weight:500;color:#6b21a8;background:#f3e8ff;border:1px solid #e9d5ff;padding:3px 8px;border-radius:4px}.worker-job-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:120px}.worker-job-price{font-size:1rem;font-weight:700;color:#111827}.worker-job-status-badge{display:inline-block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:4px 10px;border-radius:4px;white-space:nowrap}.worker-job-status-badge.status-assigned{color:#92400e;background:#fef3c7;border:1px solid #fbbf24}.worker-job-status-badge.status-accepted{color:#1e40af;background:#dbeafe;border:1px solid #93c5fd}.worker-job-status-badge.status-en-route{color:#7c2d12;background:#fed7aa;border:1px solid #fdba74}.worker-job-status-badge.status-checked-in,.worker-job-status-badge.status-in-progress{color:#065f46;background:#d1fae5;border:1px solid #6ee7b7}.worker-job-status-badge.status-completed{color:#374151;background:#f3f4f6;border:1px solid #d1d5db}.worker-job-status-badge.status-cancelled,.worker-job-status-badge.status-declined{color:#991b1b;background:#fee2e2;border:1px solid #fca5a5}.worker-job-status-badge.status-default{color:#6b7280;background:#f9fafb;border:1px solid #e5e7eb}.worker-job-actions{display:flex;gap:6px;flex-wrap:wrap}.worker-action-accept,.worker-action-decline,.worker-action-enroute,.worker-action-checkin,.worker-action-complete{padding:6px 14px;font-size:.75rem;font-weight:600;border:none;border-radius:5px;cursor:pointer;transition:background-color .2s ease,opacity .2s ease;white-space:nowrap}.worker-action-accept{color:#fff;background:#059669}.worker-action-accept:hover{background:#047857}.worker-action-decline{color:#dc2626;background:#fee2e2;border:1px solid #fca5a5}.worker-action-decline:hover{background:#fecaca}.worker-action-enroute{color:#fff;background:#d97706}.worker-action-enroute:hover{background:#b45309}.worker-action-checkin{color:#fff;background:#1a56db}.worker-action-checkin:hover{background:#1e40af}.worker-action-complete{color:#fff;background:#059669}.worker-action-complete:hover{background:#047857}.worker-action-accept:disabled,.worker-action-decline:disabled,.worker-action-enroute:disabled,.worker-action-checkin:disabled,.worker-action-complete:disabled{opacity:.5;cursor:not-allowed}.worker-stats-section{margin-bottom:32px}.worker-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:12px}.worker-stat-card{display:flex;align-items:center;gap:12px;padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;transition:box-shadow .2s ease}.worker-stat-card:hover{box-shadow:0 2px 8px #0000000d}.worker-stat-icon-wrapper{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:8px;flex-shrink:0}.worker-stat-icon-wrapper svg{width:22px;height:22px}.worker-stat-icon-jobs{background:#dbeafe;color:#1a56db}.worker-stat-icon-earnings{background:#d1fae5;color:#059669}.worker-stat-icon-rating{background:#fef3c7;color:#d97706}.worker-stat-icon-ontime{background:#ede9fe;color:#7c3aed}.worker-stat-data{display:flex;flex-direction:column;min-width:0}.worker-stat-value{font-size:1.25rem;font-weight:800;color:#111827;line-height:1.2}.worker-stat-label{font-size:.75rem;color:#6b7280;margin-top:2px}.worker-stats-monthly{display:flex;align-items:center;gap:24px;padding:10px 16px;background:#f9fafb;border-radius:6px;font-size:.875rem;color:#6b7280}.worker-stats-monthly-item strong{color:#111827;font-weight:600}.worker-upcoming-section{margin-bottom:32px}.worker-section-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.worker-section-header-row .worker-section-title{margin-bottom:0}.worker-view-all-link{display:inline-flex;align-items:center;gap:4px;font-size:.875rem;font-weight:500;color:#1a56db;text-decoration:none;transition:color .2s ease}.worker-view-all-link:hover{color:#1e40af}.worker-link-arrow{width:16px;height:16px}.worker-upcoming-list{display:flex;flex-direction:column;gap:8px}.worker-upcoming-item{display:flex;align-items:center;gap:16px;padding:12px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;transition:border-color .2s ease}.worker-upcoming-item:hover{border-color:#d1d5db}.worker-upcoming-date{display:flex;flex-direction:column;align-items:center;min-width:90px}.worker-upcoming-day{font-size:.8125rem;font-weight:600;color:#374151}.worker-upcoming-time{font-size:.75rem;color:#9ca3af}.worker-upcoming-info{flex:1;display:flex;flex-direction:column;min-width:0}.worker-upcoming-service{font-size:.9375rem;font-weight:600;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worker-upcoming-client{font-size:.8125rem;color:#6b7280}.worker-upcoming-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.worker-upcoming-price{font-size:.875rem;font-weight:600;color:#111827}.worker-pending-alerts{margin-bottom:32px}.worker-alerts-list{display:flex;flex-direction:column;gap:8px}.worker-alert-item{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:8px;text-decoration:none;transition:opacity .2s ease,transform .1s ease}.worker-alert-item:hover{opacity:.9;transform:translate(2px)}.worker-alert-warning{background:#fffbeb;border:1px solid #fbbf24}.worker-alert-danger{background:#fef2f2;border:1px solid #fca5a5}.worker-alert-info{background:#eff6ff;border:1px solid #93c5fd}.worker-alert-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0}.worker-alert-icon svg{width:20px;height:20px}.worker-alert-warning .worker-alert-icon{color:#d97706}.worker-alert-danger .worker-alert-icon{color:#dc2626}.worker-alert-info .worker-alert-icon{color:#1a56db}.worker-alert-content{flex:1;display:flex;flex-direction:column;min-width:0}.worker-alert-title{font-size:.875rem;font-weight:600;color:#111827}.worker-alert-description{font-size:.75rem;color:#6b7280}.worker-alert-count{display:flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:.75rem;font-weight:700;color:#fff;background:#374151;border-radius:50%;flex-shrink:0}.worker-alert-warning .worker-alert-count{background:#d97706}.worker-alert-danger .worker-alert-count{background:#dc2626}.worker-alert-info .worker-alert-count{background:#1a56db}.worker-quick-actions{margin-bottom:32px}.worker-quick-actions-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.worker-quick-action-item{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;text-decoration:none;color:#374151;font-size:.8125rem;font-weight:500;text-align:center;transition:border-color .2s ease,box-shadow .2s ease,color .2s ease}.worker-quick-action-item svg{width:28px;height:28px;color:#1a56db;transition:color .2s ease}.worker-quick-action-item:hover{border-color:#1a56db;box-shadow:0 2px 8px #1a56db14;color:#1a56db}.worker-quick-action-item:hover svg{color:#1e40af}.worker-empty-state{padding:24px;text-align:center;color:#9ca3af;font-size:.9375rem;background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px}.worker-empty-state p{margin:0}.worker-dashboard .button-primary{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;font-size:.875rem;font-weight:600;color:#fff;background:#1a56db;border:none;border-radius:6px;cursor:pointer;text-decoration:none;transition:background-color .2s ease}.worker-dashboard .button-primary:hover{background:#1e40af}@media(max-width:768px){.worker-dashboard{padding:0 16px 40px}.worker-header-title{font-size:1.5rem}.worker-stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.worker-quick-actions-grid{grid-template-columns:repeat(2,1fr);gap:10px}.worker-job-item{flex-wrap:wrap}.worker-job-time-block{min-width:70px}.worker-job-right{flex-direction:row;align-items:center;width:100%;justify-content:space-between;min-width:0;padding-top:8px;border-top:1px solid #f3f4f6}.worker-upcoming-item{flex-wrap:wrap}.worker-upcoming-right{flex-direction:row;align-items:center;gap:8px;width:100%;justify-content:space-between;padding-top:8px;border-top:1px solid #f3f4f6}.worker-schedule-bar{flex-direction:column;align-items:flex-start;gap:8px}.worker-stats-monthly{flex-direction:column;gap:8px;align-items:flex-start}.worker-active-job-timer{font-size:1.125rem}}@media(max-width:480px){.worker-dashboard{padding:0 12px 32px}.worker-header-top{flex-direction:column;gap:12px}.worker-header-title{font-size:1.375rem}.worker-stats-grid{grid-template-columns:1fr}.worker-quick-actions-grid{grid-template-columns:1fr 1fr}.worker-job-item{flex-direction:column;gap:12px}.worker-job-time-block{align-items:flex-start;flex-direction:row;gap:8px}.worker-job-right{flex-direction:column;align-items:flex-start;gap:8px}.worker-active-job-panel{padding:16px}.worker-active-job-service{font-size:1.125rem}.worker-checkout-button{width:100%;padding:12px 24px}.worker-panic-button{bottom:12px;right:12px}.worker-upcoming-item{flex-direction:column;align-items:flex-start;gap:8px}.worker-upcoming-date{flex-direction:row;gap:8px;min-width:0}.worker-upcoming-right{flex-direction:row;width:100%}.worker-section-header-row{flex-direction:column;align-items:flex-start;gap:8px}.worker-alert-item{padding:12px}}.admin-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:#1a1a2e}.admin-login-container{width:100%;max-width:420px;background:#16213e;border-radius:8px;padding:2.5rem;box-shadow:0 4px 24px #0000004d;border:1px solid #0f3460}.admin-login-header{text-align:center;margin-bottom:2rem}.admin-login-icon{font-size:2.5rem;margin-bottom:.75rem}.admin-login-title{font-size:1.75rem;font-weight:700;color:#e8e8e8;margin:0}.admin-login-subtitle{color:#9ca3af;margin-top:.5rem;font-size:.85rem}.admin-login-alert{background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:6px;padding:.75rem 1rem;margin-bottom:1.25rem;color:#fca5a5;font-size:.875rem}.admin-login-form{display:flex;flex-direction:column;gap:1.25rem}.admin-login-form .field-wrapper{display:flex;flex-direction:column;gap:.375rem}.admin-login-form .field-label{font-size:.875rem;font-weight:500;color:#d1d5db}.admin-login-form .input-field{padding:.75rem 1rem;border:1px solid #374151;border-radius:6px;font-size:.9rem;background:#1f2937;color:#e8e8e8;transition:border-color .2s;width:100%;box-sizing:border-box}.admin-login-form .input-field::placeholder{color:#6b7280}.admin-login-form .input-field:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.admin-login-form .input-code{font-size:1.75rem;text-align:center;letter-spacing:.5rem;padding:1rem;font-family:monospace}.admin-login-form .password-field-wrapper{position:relative;display:flex}.admin-login-form .password-field-wrapper .input-field{padding-right:4rem}.admin-login-form .password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#9ca3af;font-size:.8rem;cursor:pointer;padding:.25rem .5rem}.admin-login-form .password-toggle:hover{color:#e8e8e8}.admin-login-form .button-full{width:100%;padding:.875rem;font-size:.95rem;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s,opacity .2s;margin-top:.5rem}.admin-login-form .button-primary{background:#6366f1;color:#fff}.admin-login-form .button-primary:hover:not(:disabled){background:#4f46e5}.admin-login-form .button-primary:disabled{opacity:.6;cursor:not-allowed}.admin-login-footer{text-align:center;margin-top:1.75rem;font-size:.8rem;color:#6b7280}:root{--color-bg-primary: #ffffff;--color-bg-secondary: #f8fafc;--color-bg-tertiary: #f1f5f9;--color-text-primary: #1a1a2e;--color-text-secondary: #64748b;--color-text-muted: #94a3b8;--color-accent: #6366f1;--color-accent-hover: #4f46e5;--color-accent-light: rgba(99, 102, 241, .1);--color-border: #e2e8f0;--color-border-light: #f1f5f9;--color-input-bg: #f8fafc;--color-input-border: #d1d5db;--color-input-focus: #6366f1;--color-success: #059669;--color-success-bg: #ecfdf5;--color-success-border: #a7f3d0;--color-error: #dc2626;--color-error-bg: #fef2f2;--color-error-border: #fecaca;--color-warning: #f59e0b;--color-warning-bg: #fffbeb;--color-warning-border: #fde68a;--color-info: #2563eb;--color-info-bg: #eff6ff;--color-info-border: #bfdbfe;--color-shadow: rgba(0, 0, 0, .06);--color-shadow-medium: rgba(0, 0, 0, .1);--color-shadow-heavy: rgba(0, 0, 0, .15);--color-overlay: rgba(0, 0, 0, .4);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--font-family-mono: "SF Mono", "Fira Code", "Fira Mono", Menlo, Consolas, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75}[data-theme=dark]{--color-bg-primary: #1a1a2e;--color-bg-secondary: #16213e;--color-bg-tertiary: #0f3460;--color-text-primary: #e8e8e8;--color-text-secondary: #9ca3af;--color-text-muted: #6b7280;--color-accent: #818cf8;--color-accent-hover: #6366f1;--color-accent-light: rgba(129, 140, 248, .1);--color-border: #374151;--color-border-light: #1f2937;--color-input-bg: #1f2937;--color-input-border: #4b5563;--color-input-focus: #818cf8;--color-success: #34d399;--color-success-bg: rgba(52, 211, 153, .1);--color-success-border: rgba(52, 211, 153, .3);--color-error: #f87171;--color-error-bg: rgba(248, 113, 113, .1);--color-error-border: rgba(248, 113, 113, .3);--color-warning: #fbbf24;--color-warning-bg: rgba(251, 191, 36, .1);--color-warning-border: rgba(251, 191, 36, .3);--color-info: #60a5fa;--color-info-bg: rgba(96, 165, 250, .1);--color-info-border: rgba(96, 165, 250, .3);--color-shadow: rgba(0, 0, 0, .3);--color-shadow-medium: rgba(0, 0, 0, .4);--color-shadow-heavy: rgba(0, 0, 0, .5);--color-overlay: rgba(0, 0, 0, .6)}*,*:before,*:after{transition:background-color var(--transition-normal),color var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}}:root{--color-primary: #6366f1;--color-primary-dark: #4f46e5;--color-secondary: #4b5563;--color-danger: #dc2626;--color-success: #059669;--color-warning: #f59e0b;--color-bg: #ffffff;--color-bg-secondary: #f9fafb;--color-text: #1a1a2e;--color-text-muted: #6b7280;--color-border: #e5e7eb;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Inter", sans-serif;--radius: 8px;--radius-sm: 6px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;font-family:var(--font-family);font-size:16px;line-height:1.5;color:var(--color-text);background:var(--color-bg-secondary);-webkit-font-smoothing:antialiased}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}.app-layout{display:flex;flex-direction:column;min-height:100vh}.app-header{display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;height:56px;background:var(--color-bg);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100}.header-left,.header-right{display:flex;align-items:center;gap:1rem}.app-logo{font-size:1.125rem;font-weight:700;color:var(--color-primary);text-decoration:none;margin-right:1rem}.nav-list{display:flex;gap:.75rem}.nav-link{font-size:.875rem;color:var(--color-text-muted);text-decoration:none;padding:.25rem .5rem;border-radius:4px;transition:color .15s,background .15s}.nav-link:hover{color:var(--color-primary);background:#6366f10d;text-decoration:none}.logout-button{background:none;border:1px solid var(--color-border);padding:.35rem .75rem;border-radius:var(--radius-sm);font-size:.8rem;cursor:pointer;color:var(--color-text-muted)}.logout-button:hover{color:var(--color-danger);border-color:var(--color-danger)}.app-main{flex:1;padding:2rem;max-width:1200px;margin:0 auto;width:100%}.loading-screen{display:flex;align-items:center;justify-content:center;height:100vh;font-size:1.1rem;color:var(--color-text-muted)}.button{display:inline-flex;align-items:center;justify-content:center;padding:.6rem 1.25rem;font-size:.875rem;font-weight:600;border:none;border-radius:var(--radius-sm);cursor:pointer;text-decoration:none;transition:background .2s,opacity .2s;line-height:1}.button-primary{background:var(--color-primary);color:#fff}.button-primary:hover{background:var(--color-primary-dark);text-decoration:none}.button-secondary{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border)}.button-secondary:hover{background:var(--color-bg-secondary);text-decoration:none}.button-danger{background:var(--color-danger);color:#fff}.button-small{padding:.35rem .75rem;font-size:.8rem}.button-full{width:100%}.button:disabled{opacity:.6;cursor:not-allowed}.field-wrapper{display:flex;flex-direction:column;gap:.375rem}.field-wrapper label{font-size:.875rem;font-weight:500;color:var(--color-text)}.input-field{padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.9rem;font-family:inherit;transition:border-color .2s;width:100%}.input-field:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.field-error{font-size:.8rem;color:var(--color-danger)}.panel{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.panel-header{padding:1rem 1.5rem;border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary)}.panel-header h2{font-size:1rem;font-weight:600;margin:0}.panel-body{padding:1.5rem}.message-success{padding:.75rem 1rem;background:#05966914;border:1px solid rgba(5,150,105,.25);border-radius:var(--radius-sm);color:#065f46;font-size:.875rem;margin-bottom:1rem}.message-error{padding:.75rem 1rem;background:#dc262614;border:1px solid rgba(220,38,38,.25);border-radius:var(--radius-sm);color:#991b1b;font-size:.875rem;margin-bottom:1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.25rem;display:flex;flex-direction:column;gap:.25rem}.stat-value{font-size:1.5rem;font-weight:700}.stat-label{font-size:.8rem;color:var(--color-text-muted)}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:.6rem .75rem;text-align:left;border-bottom:1px solid #f3f4f6;font-size:.85rem}.data-table th{font-weight:600;color:var(--color-text-muted)}.content-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--color-bg-secondary)}.auth-container{width:100%;max-width:420px;background:var(--color-bg);border-radius:var(--radius);padding:2.5rem;box-shadow:0 2px 12px #00000014}.auth-header{text-align:center;margin-bottom:2rem}.auth-title{font-size:1.75rem;font-weight:700}.auth-subtitle{color:var(--color-text-muted);margin-top:.5rem;font-size:.9rem}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.auth-footer{text-align:center;margin-top:1.5rem;font-size:.875rem;color:var(--color-text-muted)}.page-header{margin-bottom:2rem}.page-header h1{font-size:1.5rem;font-weight:700;margin:0}.page-header p{color:var(--color-text-muted);margin-top:.25rem}.empty-state{text-align:center;padding:4rem 2rem;color:var(--color-text-muted)}@media(max-width:768px){.app-main{padding:1rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.nav-list{display:none}}
