:root{--purple-deep:#2d0a4e;--purple-mid:#6b21a8;--purple-light:#9333ea;--magenta:#be185d;--crimson:#9d174d;--rose:#fb7185;--gold:#c084fc;--gold-light:#f472b6;--glass-bg:#0f0519c7;--glass-bg-light:#7d75888c;--glass-border:#8b5cf62e;--glass-border-hover:#8b5cf661;--text-primary:#f5f0ff;--text-muted:#c8b9dcb8;--text-faint:#b4a0d273;--bg-primary:#0a0a0a;--bg-secondary:#1a1a2e;--bg-card:#1e0a3299;--bg-card-hover:#280e41cc;--success:#4caf50;--success-dark:#388e3c;--info:#2196f3;--info-dark:#1976d2;--warning:#ff9800;--warning-dark:#f57c00;--danger:#f44336;--danger-dark:#d32f2f;--dark:#1a0a2e;--mid:#4a3060;--light:#f5f0ff;--border:#8b5cf638;--surface:#1e0a3299;--surface-raised:#280e41cc;--shadow-sm:0 2px 8px #00000040;--shadow-md:0 4px 24px #0000004d;--shadow-lg:0 8px 40px #0006;--shadow-purple:0 4px 24px #6d21a840;--shadow-magenta:0 4px 24px #be185d40;--shimmer:#ffffff14}[data-theme=light]{--purple-deep:#f3e8ff;--purple-mid:#8b5cf6;--purple-light:#a78bfa;--magenta:#ec4899;--crimson:#db2777;--rose:#f43f5e;--gold:#8b5cf6;--gold-light:#a78bfa;--glass-bg:#ffffffd9;--glass-bg-light:#fffffff2;--glass-border:#8b5cf640;--glass-border-hover:#8b5cf680;--text-primary:#1a1a2e;--text-muted:#4a4a6a;--text-faint:#8a8aaa;--bg-primary:#f5f3ff;--bg-secondary:#fff;--bg-card:#fff;--bg-card-hover:#f8f7ff;--shadow-sm:0 2px 8px #00000014;--shadow-md:0 4px 16px #0000001a;--shadow-lg:0 8px 32px #0000001f;--surface:#ffffffe6;--surface-raised:#fff;--border:#8b5cf633;--shimmer:#0000000f}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}*{box-sizing:border-box;margin:0;padding:0;transition:background-color .3s,color .3s,border-color .3s}body{background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;font-family:Jost,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}ul,ol{list-style:none}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-muted{color:var(--text-muted)}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}.text-success{color:var(--success)}.text-primary{color:var(--purple-mid)}.m-0{margin:0}.m-1{margin:4px}.m-2{margin:8px}.m-3{margin:16px}.m-4{margin:24px}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:16px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:16px}.p-0{padding:0}.p-1{padding:4px}.p-2{padding:8px}.p-3{padding:16px}.p-4{padding:24px}.d-flex{display:flex}.d-grid{display:grid}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.align-center{align-items:center}.align-start{align-items:flex-start}.align-end{align-items:flex-end}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:16px}.gap-4{gap:24px}.hidden{display:none}.visible{display:block}[data-theme=light] .dropdown-menu{border:1px solid var(--border);background:#fffffff2}[data-theme=light] .dropdown-menu a{color:var(--text-muted)}[data-theme=light] .dropdown-menu a:hover{background:#8b5cf61a}[data-theme=light] .footer{background-color:#f0eef7}[data-theme=light] .footer-link{color:var(--text-muted)}[data-theme=light] .footer-newsletter-input{color:var(--text-primary);background-color:#ffffffe6}[data-theme=light] .calendar-day-column{background-color:var(--bg-secondary)}[data-theme=light] .day-timeline,[data-theme=light] .calendar-working-hours{background-color:var(--bg-card)}.btn{border-radius:var(--radius-md);cursor:pointer;transition:var(--t-default);border:none;padding:10px 18px;font-family:Jost,sans-serif;font-size:14px;font-weight:500}.btn-primary{background-color:var(--success);color:#fff}.btn-primary:hover{background-color:var(--success-dark);transform:translateY(-1px)}.btn-secondary{background-color:var(--info);color:#fff}.btn-secondary:hover{background-color:var(--info-dark);transform:translateY(-1px)}.btn-warning{background-color:var(--warning);color:#fff}.btn-warning:hover{background-color:var(--warning-dark);transform:translateY(-1px)}.btn-danger{background-color:var(--danger);color:#fff}.btn-danger:hover{background-color:var(--danger-dark);transform:translateY(-1px)}.btn-outline{border:1px solid var(--border);color:var(--text-primary);background-color:#0000}.btn-outline:hover{border-color:var(--glass-border-hover);background-color:#8b5cf626}.btn-sm{padding:6px 12px;font-size:12px}.btn-lg{padding:14px 24px;font-size:16px}.btn-small{padding:6px 12px;font-size:12px}.btn-check{width:100%;margin-top:10px}.btn-link{color:var(--text-muted);cursor:pointer;transition:var(--t-fast);background:0 0;border:none;padding:4px 8px;font-family:Jost,sans-serif;font-size:18px}.btn-link:hover{color:var(--danger);transform:none}.form-group{margin-bottom:15px}.form-row{flex-wrap:wrap;gap:20px;display:flex}.form-label{color:var(--text-muted);margin-bottom:5px;font-size:14px;font-weight:500;display:block}.form-input,.form-select,.form-textarea{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);width:100%;color:var(--text-primary);transition:var(--t-fast);padding:12px 14px;font-family:Jost,sans-serif;font-size:14px}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--purple-mid);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.form-input:disabled,.form-select:disabled{opacity:.5;cursor:not-allowed}.form-hint{color:var(--text-faint);margin-top:5px;font-size:11px;display:block}.error-message{border-left:4px solid var(--danger);color:var(--danger);border-radius:var(--radius-md);background-color:#f4433626;margin-bottom:15px;padding:12px;font-size:14px}.success-message{border-left:4px solid var(--success);color:var(--success);border-radius:var(--radius-md);background-color:#4caf5026;margin-bottom:15px;padding:12px;font-size:14px}.loading-container{text-align:center;padding:50px}.spinner{border:4px solid var(--border);border-top:4px solid var(--purple-mid);border-radius:50%;width:40px;height:40px;margin:0 auto 15px;animation:1s linear infinite spin}.skeleton-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;padding:20px 0;display:grid}.skeleton-card{background:var(--surface-raised);border-radius:var(--radius-lg);border:1px solid var(--border);overflow:hidden}.skeleton-img{background:var(--surface);width:100%;height:180px;position:relative;overflow:hidden}.skeleton-body{padding:20px}.skeleton-line{background:var(--surface);border-radius:8px;height:14px;margin-bottom:12px;position:relative;overflow:hidden}.skeleton-line:last-child{margin-bottom:0}.skeleton-line.w-60{width:60%}.skeleton-line.w-70{width:70%}.skeleton-line.w-80{width:80%}.skeleton-line.w-40{width:40%}.skeleton-img:after,.skeleton-line:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--shimmer) 50%, transparent 100%);animation:1.5s ease-in-out infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.empty-state{text-align:center;background-color:var(--surface);border-radius:var(--radius-lg);color:var(--text-muted);padding:60px}.card{background-color:var(--surface-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border);transition:transform .3s,box-shadow .3s;overflow:hidden}.card-hover:hover{box-shadow:var(--shadow-purple);transform:translateY(-5px)}.card-clickable{cursor:pointer}.card-body{padding:20px}.card-header{border-bottom:1px solid var(--border);background-color:var(--surface);padding:16px 20px}.card-footer{border-top:1px solid var(--border);background-color:var(--surface);padding:16px 20px}.card-title{color:var(--text-primary);margin-bottom:8px;font-size:18px;font-weight:700}.card-text{color:var(--text-muted);font-size:14px;line-height:1.5}.badge{border-radius:var(--radius-pill);padding:4px 12px;font-size:11px;font-weight:700;display:inline-block}.badge-primary{background-color:var(--purple-mid);color:#fff}.badge-success{background-color:var(--success);color:#fff}.badge-warning{background-color:var(--warning);color:#fff}.badge-danger{background-color:var(--danger);color:#fff}.badge-info{background-color:var(--info);color:#fff}.status-badge{border-radius:var(--radius-pill);color:#fff;text-transform:uppercase;letter-spacing:.05em;padding:6px 16px;font-size:12px;font-weight:700;display:inline-block}.role-badge{border-radius:var(--radius-pill);color:#fff;letter-spacing:.03em;padding:4px 10px;font-size:11px;font-weight:700;display:inline-block}.grid{gap:25px;display:grid}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.pagination{justify-content:center;align-items:center;gap:20px;margin-top:30px;padding:20px 0;display:flex}.pagination-prev,.pagination-next{background:var(--grad-brand);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:8px 16px;font-size:14px}.pagination-prev:hover:not(:disabled),.pagination-next:hover:not(:disabled){box-shadow:var(--shadow-purple);transform:translateY(-2px)}.pagination-prev:disabled,.pagination-next:disabled{opacity:.5;cursor:not-allowed}.pagination-info{color:var(--text-muted);font-size:14px}.info-box{background-color:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);align-items:flex-start;gap:12px;padding:15px;display:flex}.info-box-icon{flex-shrink:0;font-size:24px;line-height:1}.info-box-text{color:var(--text-muted);margin:5px 0 0;font-size:13px;line-height:1.5}.info-box strong{color:var(--text-primary);font-size:14px}.text-error{color:var(--danger);font-size:14px}.info-message{border-radius:var(--radius-md);color:var(--info);background-color:#2196f31a;border:1px solid #2196f333;margin-bottom:15px;padding:12px;font-size:13px;line-height:1.5}.success-container{text-align:center;padding:40px}.banner{border-radius:var(--radius-md);margin-bottom:12px;padding:8px 14px;font-size:12px;font-weight:600}.banner-warning{color:var(--warning);background-color:#ff980026;border:1px solid #ff98004d}.card-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.page-card{background-color:var(--surface-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border);cursor:pointer;padding:20px;transition:transform .3s,box-shadow .3s}.page-card:hover{box-shadow:var(--shadow-purple);transform:translateY(-4px)}.grid-card{flex-direction:column;gap:8px;height:100%;display:flex}.checkbox-label{color:var(--text-primary);cursor:pointer;align-items:center;gap:10px;font-size:14px;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--success)}.modal-content.wide{max-width:700px}.page-button{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;transition:var(--t-fast);padding:8px 16px;font-family:Jost,sans-serif;font-size:14px}.page-button:hover:not(:disabled){border-color:var(--purple-mid);background-color:#8b5cf61a}.page-button:disabled{opacity:.5;cursor:not-allowed}.page-info{color:var(--text-muted);font-size:14px}.bookit-nav{z-index:1000;background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--glass-border);height:72px;box-shadow:0 4px 40px var(--glow-purple);justify-content:space-between;align-items:center;padding:0 2.5rem;font-family:Jost,sans-serif;transition:all .4s;display:flex;position:fixed;top:0;left:0;right:0}.bookit-nav.scrolled{height:62px;box-shadow:0 4px 50px var(--glow-purple)}.nav-logo img{object-fit:contain;width:auto;height:60px;filter:drop-shadow(0 0 8px var(--accent-glow));padding:4px;transition:transform .3s,filter .3s}.nav-logo img:hover{filter:drop-shadow(0 0 14px var(--glow-magenta));transform:scale(1.04)}.nav-links-wrapper{flex:1;justify-content:center;display:flex}.nav-links{align-items:center;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.nav-links a,.nav-links button{color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;border-radius:6px;align-items:center;height:36px;padding:.45rem .9rem;font-size:.82rem;font-weight:400;line-height:1;text-decoration:none;transition:color .25s,background .25s;display:inline-flex;position:relative}.nav-links a:after{content:"";background:var(--grad-brand);border-radius:2px;width:0;height:1.5px;transition:width .3s;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.nav-links a:hover,.nav-links button:hover{color:var(--text-primary);background:#8b5cf614}.nav-links a:hover:after{width:60%}.establishments-wrapper{position:relative}.establishments-wrapper>button{cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;height:36px;font-family:Jost,sans-serif;display:inline-flex}.chevron{border-bottom:1.5px solid;border-right:1.5px solid;width:10px;height:10px;transition:transform .25s;display:inline-block;transform:rotate(45deg)translateY(-2px)}.chevron.open{transform:rotate(-135deg)translateY(2px)}.dropdown-menu{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);opacity:0;visibility:hidden;pointer-events:none;min-width:180px;box-shadow:var(--shadow-lg);background:#0c0416f2;padding:.5rem;transition:all .25s cubic-bezier(.4,0,.2,1);position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(-6px)}.dropdown-menu.open{opacity:1;visibility:visible;pointer-events:all;transform:translate(-50%)translateY(0)}.dropdown-menu a{border-radius:var(--radius-md);color:var(--text-muted);letter-spacing:.06em;align-items:center;gap:.6rem;height:auto;padding:.65rem 1rem;font-size:.83rem;font-weight:400;text-decoration:none;transition:all .2s;display:flex}.dropdown-menu a:hover{color:var(--text-primary);background:#8b5cf61f}.dropdown-dot{background:var(--grad-brand);border-radius:50%;flex-shrink:0;width:5px;height:5px}.nav-right{align-items:center;gap:.75rem;display:flex}.btn-login{color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius-md);border:1px solid #0000;align-items:center;height:36px;padding:.45rem 1rem;font-size:.82rem;font-weight:400;text-decoration:none;transition:all .25s;display:inline-flex}.btn-login:hover{color:var(--text-primary);border-color:var(--glass-border);background:#8b5cf614}.btn-register{color:var(--text-primary);letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius-md);background:var(--grad-brand);box-shadow:0 2px 20px var(--glow-purple);align-items:center;height:36px;padding:.48rem 1.25rem;font-size:.82rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex;position:relative;overflow:hidden}.btn-register:before{content:"";opacity:0;background:linear-gradient(135deg,#ffffff26,#0000);transition:opacity .25s;position:absolute;inset:0}.btn-register:hover{box-shadow:0 6px 28px var(--glow-magenta);transform:translateY(-1px)}.btn-register:hover:before{opacity:1}.user-section{align-items:center;gap:.75rem;display:flex}.user-profile-link{border-radius:var(--radius-pill);border:1px solid var(--glass-border);background:#8b5cf60f;align-items:center;gap:.65rem;padding:.35rem .8rem .35rem .4rem;text-decoration:none;transition:all .25s;display:flex}.user-profile-link:hover{border-color:var(--glass-border-hover);background:#8b5cf624}.user-avatar{object-fit:cover;background:var(--glass-bg) padding-box, var(--grad-brand) border-box;border:1.5px solid #0000;border-radius:50%;flex-shrink:0;width:32px;height:32px}.user-avatar-placeholder{background:var(--grad-brand);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.75rem;font-weight:600;display:flex}.user-name{color:var(--text-primary);letter-spacing:.04em;white-space:nowrap;font-size:.82rem;font-weight:400}.btn-logout{cursor:pointer;color:#be185db3;letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius-md);background:0 0;border:1px solid #be185d4d;padding:.42rem .85rem;font-family:Jost,sans-serif;font-size:.78rem;font-weight:400;transition:all .25s}.btn-logout:hover{color:var(--rose);background:#be185d1a;border-color:#be185d99}.nav-spacer{height:72px}@media (width<=1300px){.user-name{display:none}.user-profile-link{padding:.35rem .4rem}}.mobile-toggle{display:none}@media (width>=1001px){.mobile-toggle,.mobile-menu{display:none}}@media (width<=1200px) and (width>=1001px){.nav-links a,.nav-links button{letter-spacing:.08em;padding:.35rem .6rem;font-size:.65rem}}@media (width<=1000px){.nav-links-wrapper{display:none}.mobile-toggle{flex-direction:column;justify-content:center;align-items:center;display:flex}}@media (width<=480px){.bookit-nav{gap:.25rem;padding:0 .75rem}.nav-logo img{height:32px;padding:2px}.nav-right{gap:.35rem}.btn-login,.btn-register{letter-spacing:.06em;height:28px;padding:.3rem .6rem;font-size:.65rem}.user-profile-link{gap:.4rem;padding:.2rem .4rem .2rem .25rem}.user-avatar,.user-avatar-placeholder{width:24px;height:24px;font-size:.55rem}.user-name{font-size:.7rem}.btn-logout{letter-spacing:.06em;padding:.25rem .5rem;font-size:.6rem}.mobile-toggle{padding:.3rem}.hamburger-line{width:15px;margin:3px 0}.nav-spacer{height:72px}}.mobile-toggle{border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;color:var(--text-primary);background:0 0;padding:.45rem;transition:all .2s}.hamburger-line{background-color:currentColor;width:18px;height:2px;margin:4px 0;transition:all .2s;display:block}.mobile-toggle.open .hamburger-line:first-child{transform:rotate(45deg)translate(5px,5px)}.mobile-toggle.open .hamburger-line:nth-child(2){opacity:0}.mobile-toggle.open .hamburger-line:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.mobile-menu{background:var(--glass-bg);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);z-index:999;transition:transform .3s;position:fixed;inset:72px 0 0;overflow-y:auto;transform:translate(100%)}.mobile-menu.open{transform:translate(0)}.mobile-menu-container{padding:20px;position:relative}.mobile-close-btn{border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;color:var(--text-primary);z-index:1;background:0 0;flex-direction:column;justify-content:center;align-items:center;padding:.4rem;transition:all .2s;display:flex;position:absolute;top:12px;right:12px}.mobile-close-btn .hamburger-line:first-child{width:16px;margin:0;transform:rotate(45deg)translate(2px,2px)}.mobile-close-btn .hamburger-line:nth-child(2){width:16px;margin:0;transform:rotate(-45deg)translate(2px,-2px)}.mobile-close-btn:hover{background:#8b5cf61f}.mobile-nav-links{margin:0;padding:0;list-style:none}.mobile-nav-links li{margin-bottom:8px}.mobile-nav-links li.mobile-dropdown{margin-bottom:0}.mobile-nav-links a,.mobile-nav-links .mobile-dropdown-btn{color:var(--text-primary);border-radius:var(--radius-md);text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:12px 16px;font-family:Jost,sans-serif;font-size:16px;font-weight:500;text-decoration:none;transition:all .2s;display:block}.mobile-nav-links a:hover,.mobile-nav-links .mobile-dropdown-btn:hover{background:#8b5cf626}.mobile-dropdown-btn{justify-content:space-between;align-items:center;display:flex}.mobile-dropdown-menu{max-height:0;padding-left:20px;transition:max-height .3s;overflow:hidden}.mobile-dropdown-menu.open{max-height:300px}.mobile-dropdown-menu a{color:var(--text-muted);padding:10px 16px;font-size:14px}.mobile-divider{background:var(--border);height:1px;margin:16px 0}.mobile-login-btn,.mobile-register-btn{text-align:center!important}.mobile-register-btn{background:var(--grad-brand);margin-top:8px}.mobile-register-btn:hover{box-shadow:var(--shadow-purple);transform:translateY(-2px)}@media (width<=480px){.mobile-menu{height:calc(100vh - 60px);top:auto;bottom:0}}.footer{background-color:var(--dark);color:var(--text-muted);margin-top:auto;font-family:Jost,sans-serif}.footer-container{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;max-width:1400px;margin:0 auto;padding:60px 20px 40px;display:grid}.footer-logo-container{flex-direction:column;align-items:start;gap:10px;margin-bottom:10px;display:flex}.footer-logo{width:auto;height:50px}.footer-logo-text{background:linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:24px;font-weight:700}.footer-description{color:var(--text-faint);margin-bottom:10px;font-size:14px;line-height:1.6}.footer-social-links{gap:15px;margin-top:10px;display:flex}.footer-social-icon{background-color:#8b5cf61a;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;text-decoration:none;transition:all .3s;display:flex}.footer-social-icon:hover{background-color:var(--purple-mid);transform:translateY(-3px)}.footer-social-icon-text{font-size:20px}.footer-column-title{color:var(--text-primary);margin-bottom:15px;padding-bottom:10px;font-size:18px;font-weight:700;position:relative}.footer-column-title:after{content:"";background:linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);width:40px;height:2px;position:absolute;bottom:0;left:0}.footer-column{flex-direction:column;gap:8px;display:flex}.footer-link-list{margin:0;padding:0;list-style:none}.footer-link{color:var(--text-faint);font-size:14px;line-height:2.2;text-decoration:none;transition:color .3s}.footer-link:hover{color:var(--gold)}.footer-contact-list{margin:0;padding:0;list-style:none}.footer-contact-item{color:var(--text-faint);align-items:center;gap:12px;margin-bottom:12px;font-size:14px;display:flex}.footer-contact-icon{min-width:24px;font-size:16px}.footer-newsletter{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background-color:#8b5cf60d;padding:40px 20px}.footer-newsletter-content{text-align:center;max-width:600px;margin:0 auto}.footer-newsletter-title{color:var(--text-primary);margin-bottom:10px;font-size:20px;font-weight:700}.footer-newsletter-text{color:var(--text-faint);margin-bottom:20px;font-size:14px}.footer-newsletter-form{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.footer-newsletter-input{border-radius:var(--radius-md);border:1px solid var(--border);background-color:var(--surface);min-width:250px;color:var(--text-primary);outline:none;flex:1;padding:12px 16px;font-size:14px}.footer-newsletter-input:focus{border-color:var(--purple-mid)}.footer-newsletter-input::placeholder{color:var(--text-faint)}.footer-newsletter-button{border-radius:var(--radius-md);background:var(--grad-brand);color:#fff;cursor:pointer;border:none;padding:12px 24px;font-size:14px;font-weight:700;transition:transform .3s,box-shadow .3s}.footer-newsletter-button:hover{box-shadow:var(--shadow-magenta);transform:translateY(-2px)}.footer-copyright{text-align:center;padding:20px}.footer-copyright-content{max-width:1400px;color:var(--text-faint);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin:0 auto;font-size:12px;display:flex}.footer-legal-links{flex-wrap:wrap;align-items:center;gap:15px;display:flex}.footer-legal-link{color:var(--text-faint);text-decoration:none;transition:color .3s}.footer-legal-link:hover{color:var(--gold)}.footer-separator{color:var(--border)}@media (width<=768px){.footer-container{text-align:center;grid-template-columns:1fr}.footer-logo-container{align-items:center}.footer-column-title:after{left:50%;transform:translate(-50%)}.footer-contact-item{justify-content:center}.footer-copyright-content{text-align:center;flex-direction:column}}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}.section{padding:60px 20px}.page{max-width:1400px;min-height:100vh;margin:0 auto;padding:20px}.filters{flex-flow:wrap;justify-content:center;align-items:center;gap:15px;width:100%;margin-bottom:30px;display:flex}.filters-search{flex:2;min-width:250px;max-width:400px}.search-input{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);width:100%;color:var(--text-primary);transition:var(--t-fast);padding:12px 16px;font-size:14px}.search-input:focus{border-color:var(--purple-mid);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.search-input::placeholder{color:var(--text-faint)}.filter-select{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);color:var(--text-primary);cursor:pointer;min-width:180px;transition:var(--t-fast);padding:12px 20px;font-size:14px}.filter-select:hover{border-color:var(--purple-mid)}.filter-select:focus{border-color:var(--purple-mid);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.btn-filter-reset{background-color:var(--warning);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);white-space:nowrap;border:none;padding:12px 20px;font-size:14px;font-weight:700}.btn-filter-reset:hover{background-color:var(--warning-dark);transform:translateY(-1px)}.search-wrapper{flex:2;min-width:250px;position:relative}.search-box{background-color:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);transition:var(--t-fast);align-items:center;padding:0 15px;display:flex}.search-box:focus-within{border-color:var(--purple-mid);box-shadow:0 0 0 3px var(--accent-glow)}.search-icon{color:var(--text-muted);margin-right:8px;font-size:18px}.suggestions-dropdown{background-color:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);z-index:1000;max-height:200px;box-shadow:var(--shadow-md);margin-top:5px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.suggestion-item{cursor:pointer;border-bottom:1px solid var(--border);color:var(--text-muted);padding:10px 15px;font-size:14px;transition:background-color .2s}.suggestion-item:hover{color:var(--text-primary);background-color:#8b5cf626}.results-info{color:var(--text-muted);text-align:center;margin-bottom:20px;font-size:14px}.types-row{flex-flow:wrap;justify-content:center;gap:20px;margin-bottom:30px;display:flex}.type-btn{border-radius:var(--radius-pill);border:1px solid var(--border);cursor:pointer;background:var(--surface);color:var(--text-primary);white-space:nowrap;align-items:center;gap:12px;padding:12px 24px;font-size:16px;font-weight:600;transition:all .3s;display:flex}.type-btn-active{background-color:var(--type-color,var(--purple-mid));border-color:var(--type-color,var(--purple-mid));color:#fff}.type-btn-icon{font-size:20px}@media (width<=768px){.filters{flex-direction:column;align-items:stretch}.filters-search{max-width:100%}.filter-select,.btn-filter-reset{width:100%}.types-row{flex-direction:column;align-items:stretch}.type-btn{justify-content:center}}.modal-content{background-color:var(--surface-raised);border-radius:var(--radius-lg);width:90%;max-width:550px;max-height:85vh;box-shadow:var(--shadow-lg);border:1px solid var(--border);flex-direction:column;animation:.3s ease-out fadeIn;display:flex;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border);background-color:var(--surface);z-index:10;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}.modal-title{color:var(--text-primary);margin:0;font-size:18px}.modal-footer{border-top:1px solid var(--border);background-color:var(--surface);z-index:10;justify-content:flex-end;gap:12px;padding:16px 20px;display:flex;position:sticky;bottom:0}.modal-close{cursor:pointer;color:var(--text-muted);transition:var(--t-fast);background:0 0;border:none;padding:0 4px;font-size:24px}.modal-close:hover{color:var(--danger)}.sidebar-overlay{z-index:999999;background-color:#00000080;justify-content:flex-end;align-items:stretch;display:flex;position:fixed;inset:0}.sidebar-content{background-color:var(--surface-raised);width:450px;max-width:90vw;height:100vh;box-shadow:var(--shadow-lg);border-left:1px solid var(--border);flex-direction:column;animation:.3s ease-out slideInRight;display:flex;overflow-y:auto}.sidebar-header{border-bottom:1px solid var(--border);background-color:var(--surface);z-index:10;justify-content:space-between;align-items:center;padding:20px;display:flex;position:sticky;top:0}.sidebar-title{color:var(--text-primary);margin:0;font-size:18px}.sidebar-body{flex:1;padding:20px;overflow:visible}.sidebar-footer{border-top:1px solid var(--border);background-color:var(--surface);z-index:10;justify-content:flex-end;gap:12px;padding:16px 20px;display:flex;position:sticky;bottom:0}@media (width<=576px){.sidebar-content{width:100%}.modal-content{width:95%;margin:10px}}.day-column{border-left:1px solid var(--border);border-right:1px solid var(--border);background-color:var(--surface);flex-direction:column;width:250px;display:flex;position:relative;overflow:hidden}.day-closed-column{border-left:1px solid var(--border);border-right:1px solid var(--border);background-color:var(--surface);flex-direction:column;width:250px;display:flex}.day-closed-header{background-color:var(--mid);color:#fff;text-align:center;justify-content:center;align-items:center;height:50px;padding:10px;font-weight:700;display:flex}.day-closed-body{text-align:center;color:var(--text-muted);background-color:var(--surface);justify-content:center;align-items:center;min-height:400px;padding:20px;display:flex}.reservation-scroll-wrapper{flex-wrap:nowrap;gap:0;padding-bottom:10px;display:flex;overflow-x:auto}.appointment-card{background-color:var(--appointment-bg,var(--purple-mid));color:#fff;border-radius:var(--radius-md);cursor:pointer;flex-direction:column;justify-content:space-between;padding:8px;font-size:12px;transition:transform .2s;display:flex;position:absolute;inset:0;overflow:visible}.appointment-card:hover{transform:scale(.98)}.appointment-card.pointer{cursor:pointer}.appointment-status-bar{background-color:var(--status-color,var(--warning));border-radius:var(--radius-md) 0 0 var(--radius-md);width:6px;position:absolute;top:0;bottom:0;left:0}.appointment-content{z-index:10;flex-direction:column;flex:1;justify-content:space-between;padding-left:6px;display:flex}.appointment-name{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}.appointment-meta{opacity:.9;font-size:10px}.appointment-meta-muted{opacity:.7}.appointment-tag{background-color:var(--status-color,var(--warning));border-radius:var(--radius-pill);align-self:flex-start;margin-top:4px;padding:2px 6px;font-size:9px;display:inline-block}.break-modal{max-width:450px}.reviews-container{background-color:var(--surface);border-radius:var(--radius-lg);margin-top:20px;padding:20px}.reviews-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;display:flex}.reviews-title{color:var(--text-primary);margin:0;font-size:20px}.rating-summary{align-items:center;gap:10px;margin-top:5px;display:flex}.rating-text{color:var(--text-muted);font-size:14px}.stars-container{align-items:center;gap:2px;font-size:14px;display:flex}.star-full{color:#ffc107}.star-half{color:#ffc107;position:relative}.stars-large{font-size:20px}.review-form{background-color:var(--surface-raised);border-radius:var(--radius-lg);border:1px solid var(--border);margin-bottom:20px;padding:20px}.rating-input{align-items:center;gap:10px;margin-bottom:15px;display:flex}.rating-input select{border-radius:var(--radius-md);background-color:var(--surface);border:1px solid var(--border);color:var(--text-primary);padding:8px 12px}.reviews-list{flex-direction:column;gap:15px;display:flex}.review-card{background-color:var(--surface-raised);border-radius:var(--radius-lg);border:1px solid var(--border);padding:15px}.review-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.user-info{align-items:center;gap:10px;display:flex}.user-avatar{object-fit:cover;border-radius:50%;width:40px;height:40px}.user-avatar-placeholder{background-color:var(--surface);width:40px;height:40px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:flex}.review-date{color:var(--text-faint);font-size:12px}.review-message{color:var(--text-muted);margin-bottom:10px;font-size:14px;line-height:1.5}.review-actions{border-top:1px solid var(--border);gap:10px;margin-top:10px;padding-top:10px;display:flex}.feedback-container{border-radius:var(--radius-md);border-left:3px solid var(--info);background-color:#2196f31a;margin-top:10px;padding:10px}.feedback-header{color:var(--info);margin-bottom:5px;font-size:12px;font-weight:700}.feedback-text{color:var(--text-muted);margin:0;font-size:13px}.feedback-form{background-color:var(--surface);border-radius:var(--radius-md);margin-top:10px;padding:10px}.feedback-textarea{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface-raised);width:100%;color:var(--text-primary);box-sizing:border-box;margin-bottom:10px;padding:8px;font-size:13px}.feedback-actions{gap:10px;display:flex}.location-selector{flex-direction:column;gap:16px;width:100%;display:flex}.location-level{flex-direction:column;gap:8px;display:flex;position:relative}.location-label{color:var(--text-primary);letter-spacing:.3px;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.optional-badge{background-color:var(--surface);color:var(--text-muted);border-radius:var(--radius-pill);padding:2px 8px;font-size:10px;font-weight:400}.location-arrow{justify-content:center;margin:-8px 0;display:flex}.location-arrow-icon{color:var(--success);border-radius:var(--radius-pill);background-color:#4caf5026;padding:2px 8px;font-size:12px}.location-indented-wrapper{align-items:center;gap:8px;display:flex;position:relative}.location-tree-line{justify-content:flex-end;align-items:center;width:30px;display:flex}.location-tree-icon{color:var(--success);font-size:18px;font-weight:700}.location-indented-select{border:1px solid var(--border);border-radius:var(--radius-lg);background-color:var(--surface);color:var(--text-primary);cursor:pointer;transition:var(--t-fast);outline:none;flex:1;padding:12px 14px;font-family:inherit;font-size:14px}.location-indented-select:hover{border-color:var(--purple-mid)}.location-indented-select:focus{border-color:var(--purple-mid);box-shadow:0 0 0 3px var(--accent-glow)}.option-item{padding:8px 12px;font-family:monospace;font-size:13px}@media (width<=768px){.location-indented-wrapper{flex-direction:column;align-items:flex-start}.location-tree-line{display:none}.location-indented-select{width:100%}}.opening-hours-manager{flex-direction:column;gap:15px;display:flex}.day-schedule{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);flex-direction:column;padding:15px;display:flex}.day-schedule .day-header{margin-bottom:12px}.day-label{cursor:pointer;color:var(--text-primary);align-items:center;gap:8px;font-weight:700;display:flex}.time-slots{flex-direction:column;gap:8px;padding-left:25px;display:flex}.time-slot{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.time-slot input[type=time]{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);color:var(--text-primary);padding:8px 12px;font-size:14px}.add-slot-btn,.delete-slot-btn,.remove-slot-btn{cursor:pointer;width:28px;height:28px;transition:var(--t-fast);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:inline-flex}.add-slot-btn{background-color:var(--success);color:#fff}.add-slot-btn:hover{background-color:var(--success-dark);transform:scale(1.05)}.delete-slot-btn,.remove-slot-btn{background-color:var(--danger);color:#fff}.delete-slot-btn:hover,.remove-slot-btn:hover{background-color:var(--danger-dark);transform:scale(1.05)}.opening-hours-summary{border-radius:var(--radius-lg);border-left:4px solid var(--success);background:#4caf501a;margin-top:20px;padding:15px}.summary-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.summary-item{border-bottom:1px solid #4caf5033;justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.summary-item .day{color:var(--success);text-transform:capitalize;font-weight:700}.summary-item .hours{color:var(--text-muted);font-family:monospace}.summary-item.closed .hours{color:var(--danger)}.summary-item.closed{opacity:.7}@media (width<=768px){.time-slot{width:100%}.time-slot input[type=time]{flex:1}.summary-grid{grid-template-columns:1fr}}.employee-management-container{background-color:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);margin-bottom:20px;padding:20px}.employee-management-container .employee-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;display:flex}.employee-management-container .employee-title{color:var(--text-primary);margin:0;font-size:20px}.employee-add-form{background-color:var(--surface-raised);border-radius:var(--radius-md);border:1px solid var(--border);margin-bottom:20px;padding:20px}.employee-add-form .form-title{color:var(--text-primary);margin:0 0 15px;font-size:16px}.employee-add-form .form-input{margin-bottom:10px}.employee-add-form .form-hint{color:var(--text-muted);margin-bottom:15px;font-size:12px}.employee-add-form .warning-text{color:var(--warning);margin-bottom:15px;font-size:12px}.employee-add-form .button-group{gap:10px;margin-top:10px;display:flex}.employee-list{flex-direction:column;gap:12px;display:flex}.employee-card{background-color:var(--surface-raised);border-radius:var(--radius-md);border:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;padding:15px;transition:box-shadow .3s;display:flex}.employee-card:hover{box-shadow:var(--shadow-md)}.employee-card.pending-verification{border-left:4px solid var(--warning);background-color:#ff98001a}.employee-info{flex:1}.employee-info .employee-header{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:8px;display:flex}.employee-info .employee-name{color:var(--text-primary);font-size:16px;font-weight:700}.verified-badge{background-color:var(--success);color:#fff;border-radius:var(--radius-pill);padding:3px 8px;font-size:11px;font-weight:700}.pending-badge{background-color:var(--warning);color:#fff;border-radius:var(--radius-pill);padding:3px 8px;font-size:11px;font-weight:700}.employee-details{color:var(--text-muted);flex-wrap:wrap;gap:20px;margin-bottom:8px;font-size:13px;display:flex}.working-hours-display{border-top:1px dashed var(--border);align-items:center;gap:8px;margin-top:8px;padding-top:8px;display:flex}.working-hours-display .clock-icon{font-size:14px}.working-hours-display .hours-text{color:var(--success);font-family:monospace;font-size:13px;font-weight:500}.unverified-warning{color:var(--warning);margin:5px 0 0;font-size:12px}.employee-card .action-buttons{gap:10px;display:flex}.employee-hours-modal .employee-info{text-align:center;background-color:var(--surface);border-radius:var(--radius-md);margin-bottom:20px;padding:12px}.employee-hours-modal .employee-email{color:var(--text-muted);margin-top:4px;font-size:12px;display:block}.employee-hours-modal .time-inputs{gap:16px;margin-bottom:16px;display:flex}.employee-hours-modal .time-group{flex:1}.employee-hours-modal .time-input{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);width:100%;color:var(--text-primary);text-align:center;padding:10px;font-family:monospace}.employee-hours-modal .hint{color:var(--text-faint);text-align:center;background-color:var(--surface);border-radius:var(--radius-md);padding:8px;font-size:12px}.conflict-list{max-height:300px;margin-bottom:16px;overflow-y:auto}.conflict-item{border-bottom:1px solid var(--border);border-radius:var(--radius-md);background-color:#ff98001a;margin-bottom:8px;padding:12px}.conflict-date{color:var(--warning);font-size:13px;font-weight:700}.conflict-time,.conflict-service{color:var(--text-muted);margin-top:4px;font-size:12px}.warning-box{border-radius:var(--radius-md);color:var(--danger);background-color:#f443361a;margin-top:16px;padding:12px;font-size:13px}@media (width<=768px){.employee-card{flex-direction:column;align-items:stretch}.employee-card .action-buttons{justify-content:flex-end}.employee-hours-modal .time-inputs{flex-direction:column}}.service-management-container{background-color:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);padding:20px}.service-management-container .service-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;display:flex}.service-management-container .service-title{color:var(--text-primary);margin:0;font-size:20px}.service-card-content{align-items:flex-start;gap:15px;display:flex}.service-card-image{border-radius:var(--radius-md);flex-shrink:0;width:120px;height:90px;overflow:hidden}.service-card-image img{object-fit:cover;width:100%;height:100%;display:block}.service-card-info{flex:1;min-width:0}.service-list{flex-direction:column;gap:15px;display:flex}.service-card{background-color:var(--surface-raised);border-radius:var(--radius-md);border:1px solid var(--border);border-left:5px solid var(--service-color,var(--purple-mid));padding:20px;transition:box-shadow .3s}.service-card:hover{box-shadow:var(--shadow-md)}.service-card .service-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.service-card .service-name{color:var(--text-primary);margin:0;font-size:18px;font-weight:700}.service-badge{align-items:center;gap:10px;display:flex}.service-price-badge{color:#fff;border-radius:var(--radius-pill);padding:4px 10px;font-size:12px;font-weight:700}.service-description{color:var(--text-muted);margin-bottom:15px;font-size:14px;line-height:1.5}.service-actions{gap:10px;margin-top:10px;display:flex}.service-form{background-color:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);margin-top:10px;padding:20px}.service-form .form-title{color:var(--text-primary);margin:0 0 15px;font-size:16px}.service-form .form-row{gap:10px;margin-bottom:12px;display:flex}.service-form .form-row .form-select,.service-form .form-row .form-input{flex:1}.color-group{margin-bottom:15px}.color-label{color:var(--text-muted);margin-bottom:8px;font-size:14px;font-weight:700;display:block}.color-options{flex-wrap:wrap;gap:10px;display:flex}.color-option{cursor:pointer;border:2px solid var(--border);border-radius:50%;width:32px;height:32px;transition:transform .2s,border .2s}.color-option:hover{transform:scale(1.1)}.color-option.selected{border:3px solid var(--text-primary);transform:scale(1.1)}.service-form .button-group{gap:10px;margin-top:15px;display:flex}.empty-state p{margin-bottom:15px}@media (width<=768px){.service-card .service-header{flex-direction:column;align-items:flex-start}.service-form .form-row{flex-direction:column}.color-options{justify-content:center}}.serviemp-container{background-color:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);padding:20px}.serviemp-header{margin-bottom:20px}.serviemp-title{color:var(--text-primary);margin:0;font-size:20px}.serviemp-form-card{background-color:var(--surface-raised);border-radius:var(--radius-lg);border:1px solid var(--border);margin-bottom:20px;padding:20px}.serviemp-form-card .form-title{color:var(--text-primary);margin:0 0 15px;font-size:16px}.serviemp-form-card .form-row{flex-wrap:wrap;align-items:flex-end;gap:15px;display:flex}.serviemp-form-card .form-group{flex:1;min-width:200px}.serviemp-form-card .form-label{color:var(--text-muted);margin-bottom:5px;font-size:13px;font-weight:700;display:block}.serviemp-form-card .form-select{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);width:100%;color:var(--text-primary);cursor:pointer;padding:10px;font-size:14px}.serviemp-form-card .form-select:focus{border-color:var(--purple-mid);outline:none}.serviemp-form-card .form-select:disabled{opacity:.5;cursor:not-allowed}.serviemp-form-card .form-hint{color:var(--text-faint);margin-top:5px;font-size:11px;display:block}.serviemp-form-card .add-button{background-color:var(--success);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:10px 20px;font-size:14px;font-weight:700}.serviemp-form-card .add-button:hover:not(:disabled){background-color:var(--success-dark);transform:translateY(-1px)}.serviemp-form-card .add-button:disabled{opacity:.6;cursor:not-allowed}.serviemp-list-card{background-color:var(--surface-raised);border-radius:var(--radius-lg);border:1px solid var(--border);padding:20px}.serviemp-list-card .list-title{color:var(--text-primary);margin:0 0 15px;font-size:16px}.affectation-list{flex-direction:column;gap:10px;display:flex}.affectation-card{background-color:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);transition:var(--t-fast);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 15px;display:flex}.affectation-card:hover{background-color:var(--surface-raised);border-color:var(--purple-mid)}.affectation-info{flex-wrap:wrap;align-items:center;gap:15px;display:flex}.employee-info-chip{border-radius:var(--radius-pill);color:var(--text-primary);background-color:#2196f326;align-items:center;gap:8px;padding:6px 12px;font-size:13px;display:flex}.employee-info-chip span:first-child{font-size:14px}.arrow{color:var(--text-muted);font-size:18px;font-weight:700}.service-info-chip{border-radius:var(--radius-pill);color:var(--text-primary);background-color:#4caf5026;align-items:center;gap:8px;padding:6px 12px;font-size:13px;display:flex}.service-info-chip span:first-child{font-size:14px}.affectation-card .delete-button{background-color:var(--danger);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:6px 12px;font-size:12px}.affectation-card .delete-button:hover{background-color:var(--danger-dark);transform:translateY(-1px)}.serviemp-container .error-message{color:var(--danger);border-radius:var(--radius-md);border-left:3px solid var(--danger);background-color:#f4433626;margin-bottom:15px;padding:12px;font-size:14px}.serviemp-container .loading-container{text-align:center;padding:40px}.serviemp-container .spinner{border:4px solid var(--border);border-top:4px solid var(--purple-mid);border-radius:50%;width:40px;height:40px;margin:0 auto 15px;animation:1s linear infinite spin}.serviemp-container .empty-state{text-align:center;color:var(--text-muted);padding:40px}.serviemp-container .empty-subtext{color:var(--text-faint);margin-top:5px;font-size:12px}.option-disabled{color:var(--text-faint);font-style:italic}@media (width<=768px){.serviemp-form-card .form-row{flex-direction:column;align-items:stretch}.serviemp-form-card .form-group,.serviemp-form-card .add-button{width:100%}.affectation-card{flex-direction:column;align-items:stretch}.affectation-info{justify-content:center}.affectation-card .delete-button{width:100%}}.rich-text-editor{border:1px solid var(--border);border-radius:var(--radius-lg);background-color:var(--surface);transition:var(--t-fast);overflow:hidden}.rich-text-editor:focus-within{border-color:var(--purple-mid);box-shadow:0 0 0 3px var(--accent-glow)}.editor-toolbar{background:var(--surface-raised);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;display:flex}.toolbar-group{border-right:1px solid var(--border);gap:4px;padding:0 8px;display:flex}.toolbar-group:last-child{border-right:none}.editor-toolbar button{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:var(--radius-md);min-width:36px;transition:var(--t-fast);color:var(--text-muted);padding:6px 10px;font-size:14px;font-weight:500}.editor-toolbar button:hover{background:var(--surface-raised);border-color:var(--purple-mid);color:var(--text-primary)}.editor-toolbar button.is-active{background:var(--grad-brand);color:#fff;border-color:#0000}.color-picker{border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;background:var(--surface);color:var(--text-primary);transition:var(--t-fast);padding:6px 10px;font-size:13px}.color-picker:hover{border-color:var(--purple-mid)}.ProseMirror{min-height:250px;color:var(--text-primary);background-color:var(--surface);outline:none;padding:20px;font-family:Jost,sans-serif;line-height:1.6}.ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--text-faint);pointer-events:none;height:0;font-style:italic}.ProseMirror p{margin:0 0 12px}.ProseMirror h1{color:var(--text-primary);margin:.67em 0;font-size:2em;font-weight:700}.ProseMirror h2{color:var(--text-primary);margin:.75em 0;font-size:1.5em;font-weight:700}.ProseMirror h3{color:var(--text-primary);margin:.83em 0;font-size:1.17em;font-weight:700}.ProseMirror ul,.ProseMirror ol{margin:0 0 12px;padding-left:1.5em}.ProseMirror li{color:var(--text-muted);margin:5px 0}.ProseMirror a{color:var(--info);cursor:pointer;text-decoration:underline}.ProseMirror a:hover{color:var(--info-dark)}.ProseMirror img{border-radius:var(--radius-md);max-width:100%;height:auto;margin:10px 0}.ProseMirror blockquote{border-left:3px solid var(--purple-mid);color:var(--text-muted);margin:15px 0;padding-left:15px;font-style:italic}.ProseMirror code{background-color:var(--surface-raised);border-radius:var(--radius-sm);color:var(--warning);padding:2px 6px;font-family:monospace;font-size:.9em}.ProseMirror pre{background-color:var(--surface-raised);border-radius:var(--radius-md);padding:12px;font-family:monospace;font-size:.9em;overflow-x:auto}.ProseMirror pre code{color:var(--text-primary);background:0 0;padding:0}.ProseMirror .has-text-align-left{text-align:left}.ProseMirror .has-text-align-center{text-align:center}.ProseMirror .has-text-align-right{text-align:right}.ProseMirror .has-text-align-justify{text-align:justify}.ProseMirror ::selection{background-color:var(--purple-mid);color:#fff}.ProseMirror .selection{background-color:var(--purple-mid)}.ProseMirror a[href]{cursor:pointer}.ProseMirror img.ProseMirror-selectednode{outline:2px solid var(--purple-mid);outline-offset:2px}.ProseMirror table{border-collapse:collapse;width:100%;margin:15px 0}.ProseMirror th,.ProseMirror td{border:1px solid var(--border);text-align:left;padding:8px 12px}.ProseMirror th{background-color:var(--surface-raised);font-weight:700}.ProseMirror::-webkit-scrollbar{width:8px;height:8px}.ProseMirror::-webkit-scrollbar-track{background:var(--surface);border-radius:4px}.ProseMirror::-webkit-scrollbar-thumb{background:var(--purple-mid);border-radius:4px}.ProseMirror::-webkit-scrollbar-thumb:hover{background:var(--magenta)}.rich-text-editor.disabled{opacity:.6;pointer-events:none}.rich-text-editor.disabled .editor-toolbar button{cursor:not-allowed;opacity:.5}@media (width<=768px){.editor-toolbar{gap:5px;padding:8px}.toolbar-group{padding:0 5px}.editor-toolbar button{min-width:32px;padding:5px 8px;font-size:12px}.ProseMirror{min-height:200px;padding:15px}}@media (width<=480px){.editor-toolbar{justify-content:center}.toolbar-group{border-right:none;flex-wrap:wrap}}.notification-bell{position:relative}.notification-btn{cursor:pointer;transition:var(--t-fast);color:var(--text-muted);background:0 0;border:none;border-radius:50%;padding:8px;position:relative}.notification-btn:hover{color:var(--text-primary);background-color:#8b5cf61a}.notification-icon{font-size:20px}.notification-badge{background-color:var(--danger);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:700;display:flex;position:absolute;top:-2px;right:-2px}.notification-dropdown{background-color:var(--surface-raised);border-radius:var(--radius-lg);width:380px;max-width:90vw;box-shadow:var(--shadow-lg);border:1px solid var(--border);z-index:1000;margin-top:8px;position:absolute;top:100%;right:0;overflow:hidden}.notification-header{border-bottom:1px solid var(--border);background-color:var(--surface);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.notification-header h3{color:var(--text-primary);margin:0;font-size:16px}.mark-all-read{color:var(--info);cursor:pointer;background:0 0;border:none;font-size:12px}.mark-all-read:hover{text-decoration:underline}.notification-list{max-height:400px;overflow-y:auto}.notification-item{border-bottom:1px solid var(--border);cursor:pointer;transition:var(--t-fast);align-items:flex-start;gap:12px;padding:12px 16px;display:flex}.notification-item:hover{background-color:var(--surface)}.notification-item.unread{background-color:#2196f31a}.notification-icon-wrapper{text-align:center;min-width:32px;font-size:20px}.notification-content{flex:1}.notification-title{color:var(--text-primary);margin-bottom:4px;font-size:14px;font-weight:700}.notification-message{color:var(--text-muted);margin-bottom:4px;font-size:13px}.notification-time{color:var(--text-faint);font-size:11px}.notification-delete{color:var(--text-faint);cursor:pointer;opacity:0;transition:var(--t-fast);background:0 0;border:none;padding:4px;font-size:12px}.notification-item:hover .notification-delete{opacity:1}.notification-delete:hover{color:var(--danger)}.notification-empty{text-align:center;color:var(--text-muted);padding:40px 20px}.notification-empty span{margin-bottom:12px;font-size:48px;display:block}@media (width<=480px){.notification-dropdown{border-radius:0;width:100%;max-width:none;position:fixed;top:60px;left:0;right:0}}.theme-toggle{cursor:pointer;transition:var(--t-fast);color:var(--text-muted);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;display:flex}.theme-toggle:hover{background-color:#8b5cf61a;transform:scale(1.05)}.theme-icon{font-size:18px}.admin-table-container{background-color:var(--surface-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border);padding:20px}.admin-table-success{color:var(--success);border-radius:var(--radius-md);border-left:3px solid var(--success);background-color:#4caf5026;margin-bottom:15px;padding:12px;font-size:14px}.admin-table-error{color:var(--danger);border-radius:var(--radius-md);border-left:3px solid var(--danger);background-color:#f4433626;margin-bottom:15px;padding:12px;font-size:14px}.admin-filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.admin-search-box{flex:2;min-width:250px}.admin-search-input{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);width:100%;color:var(--text-primary);transition:var(--t-fast);padding:10px 15px;font-size:14px}.admin-search-input:focus{border-color:var(--purple-mid);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.admin-filter-select{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);color:var(--text-primary);cursor:pointer;transition:var(--t-fast);padding:10px 15px;font-size:14px}.admin-filter-select:hover{border-color:var(--purple-mid)}.admin-filter-reset{background-color:var(--warning);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:10px 20px;font-size:14px;font-weight:700}.admin-filter-reset:hover{background-color:var(--warning-dark);transform:translateY(-1px)}.admin-stats-info{color:var(--text-muted);margin-bottom:15px;font-size:13px}.admin-table-wrapper{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border);padding:12px}.admin-table th{background-color:var(--surface);color:var(--text-primary);font-size:13px;font-weight:600}.admin-table tr:hover{background-color:var(--surface)}.admin-type-badge{border-radius:var(--radius-pill);color:#fff;padding:4px 8px;font-size:11px;font-weight:500;display:inline-block}.admin-status-badge,.admin-verified-badge{border-radius:var(--radius-pill);color:#fff;padding:4px 8px;font-size:11px;display:inline-block}.admin-table-logo{border-radius:var(--radius-md);object-fit:cover;width:40px;height:40px}.admin-table-logo-placeholder{border-radius:var(--radius-md);background-color:var(--surface);justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.admin-owner-email{color:var(--text-faint);margin-top:3px;font-size:11px}.admin-action-buttons{gap:8px;display:flex}.admin-btn-activate{background-color:var(--success);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:6px 12px;font-size:14px}.admin-btn-activate:hover{background-color:var(--success-dark);transform:scale(1.05)}.admin-btn-deactivate{background-color:var(--warning);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:6px 12px;font-size:14px}.admin-btn-deactivate:hover{background-color:var(--warning-dark);transform:scale(1.05)}.admin-btn-verify{background-color:var(--info);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:6px 12px;font-size:14px}.admin-btn-verify:hover{background-color:var(--info-dark);transform:scale(1.05)}.admin-btn-unverify{background-color:var(--warning);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:6px 12px;font-size:14px}.admin-btn-unverify:hover{background-color:var(--warning-dark);transform:scale(1.05)}.admin-btn-delete{background-color:var(--danger);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:6px 12px;font-size:14px}.admin-btn-delete:hover{background-color:var(--danger-dark);transform:scale(1.05)}.admin-pagination{justify-content:center;align-items:center;gap:20px;margin-top:20px;padding:16px 0;display:flex}.admin-page-btn{background:var(--grad-brand);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:8px 16px;font-size:14px}.admin-page-btn:hover:not(:disabled){box-shadow:var(--shadow-purple);transform:translateY(-2px)}.admin-page-btn:disabled{opacity:.5;cursor:not-allowed}.admin-page-info{color:var(--text-muted);font-size:14px}.admin-loading{text-align:center;color:var(--text-muted);padding:40px}.admin-error{text-align:center;color:var(--danger);padding:40px}@media (width<=768px){.admin-table-container{padding:15px}.admin-filters{flex-direction:column;align-items:stretch}.admin-search-box,.admin-filter-select,.admin-filter-reset{width:100%}.admin-table th,.admin-table td{padding:8px;font-size:12px}.admin-action-buttons{flex-direction:column;gap:5px}.admin-btn-activate,.admin-btn-deactivate,.admin-btn-verify,.admin-btn-unverify,.admin-btn-delete{padding:4px 8px;font-size:12px}.admin-pagination{gap:10px}.admin-page-btn{padding:6px 12px;font-size:12px}}@media (width<=480px){.admin-table-logo,.admin-table-logo-placeholder{width:30px;height:30px;font-size:16px}.admin-owner-email{display:none}}.apt-mgr-modal{background-color:var(--surface-raised);border-radius:var(--radius-lg);width:90%;max-width:520px;max-height:90vh;box-shadow:var(--shadow-lg);border:1px solid var(--border);flex-direction:column;animation:.2s ease-out fadeIn;display:flex;overflow-y:auto}.apt-mgr-header{border-bottom:1px solid var(--border);z-index:10;background-color:var(--surface-raised);justify-content:space-between;align-items:center;padding:18px 24px;display:flex;position:sticky;top:0}.apt-mgr-title{color:var(--text-primary);margin:0;font-size:18px;font-weight:600}.apt-mgr-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:24px;line-height:1;transition:color .15s}.apt-mgr-close:hover{color:var(--danger)}.apt-mgr-body{flex:1;padding:20px 24px;overflow:visible}.apt-mgr-error{color:var(--danger);border-radius:var(--radius-md);background-color:#f443361a;border:1px solid #f443364d;margin-bottom:14px;padding:10px 14px;font-size:13px}.apt-mgr-success{color:var(--success);border-radius:var(--radius-md);background-color:#4caf501a;border:1px solid #4caf504d;margin-bottom:14px;padding:10px 14px;font-size:13px}.apt-mgr-status{color:#fff;border-radius:999px;align-items:center;gap:6px;margin-bottom:16px;padding:6px 14px;font-size:14px;font-weight:600;display:inline-flex}.apt-mgr-info{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:16px;padding:14px 16px}.apt-mgr-info-row{justify-content:space-between;padding:6px 0;font-size:14px;display:flex}.apt-mgr-info-row+.apt-mgr-info-row{border-top:1px solid var(--border)}.apt-mgr-info-label{color:var(--text-muted);font-weight:500}.apt-mgr-info-value{color:var(--text-primary);text-align:right;font-weight:600}.apt-mgr-section{border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:20px}.apt-mgr-section:last-of-type{border-bottom:none}.apt-mgr-label{color:var(--text-primary);margin-bottom:10px;font-size:14px;font-weight:600;display:block}.apt-mgr-small-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:12px;font-weight:500;display:block}.apt-mgr-input,.apt-mgr-select{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);width:100%;color:var(--text-primary);padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.apt-mgr-input:focus,.apt-mgr-select:focus{border-color:var(--purple-mid);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.apt-mgr-textarea{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);width:100%;color:var(--text-primary);resize:vertical;min-height:60px;margin-top:8px;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.apt-mgr-textarea:focus{border-color:var(--purple-mid);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.apt-mgr-form-row{gap:12px;margin-bottom:12px;display:flex}.apt-mgr-form-group{flex:1;margin-bottom:12px}.apt-mgr-form-group:last-child{margin-bottom:0}.apt-mgr-btn{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:6px;padding:10px 18px;font-family:inherit;font-size:14px;font-weight:500;transition:all .15s;display:inline-flex}.apt-mgr-btn:disabled{opacity:.6;cursor:not-allowed}.apt-mgr-btn-primary{background-color:var(--purple-mid);color:#fff;width:100%;margin-top:10px}.apt-mgr-btn-primary:hover:not(:disabled){background-color:var(--purple-dark)}.apt-mgr-btn-warning{background-color:var(--warning);color:#fff;width:100%;margin-top:10px}.apt-mgr-btn-warning:hover:not(:disabled){filter:brightness(.9)}.apt-mgr-btn-danger{background-color:var(--danger);color:#fff}.apt-mgr-btn-danger:hover:not(:disabled){filter:brightness(.85)}.apt-mgr-btn-outline{border:1px solid var(--border);color:var(--text-primary);background-color:#0000}.apt-mgr-btn-outline:hover:not(:disabled){background-color:var(--surface);border-color:var(--text-muted)}.apt-mgr-btn-link{color:var(--purple-mid);background:0 0;border:none;padding:8px 0;font-size:13px}.apt-mgr-btn-link:hover{text-decoration:underline}.apt-mgr-slots{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px;margin-bottom:8px;display:grid}.apt-mgr-slot{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);color:var(--text-primary);cursor:pointer;text-align:center;padding:10px 6px;font-family:inherit;font-size:13px;font-weight:500;transition:all .15s}.apt-mgr-slot:hover{border-color:var(--purple-mid);background-color:#8b5cf614}.apt-mgr-slot-sel{border-color:var(--success);color:var(--success);background-color:#4caf501f;font-weight:600}.apt-mgr-no-slots{text-align:center;color:var(--text-muted);grid-column:1/-1;padding:16px;font-size:14px}.apt-mgr-selected-time{border-radius:var(--radius-md);border-left:3px solid var(--success);color:var(--text-primary);background-color:#4caf5014;margin-top:8px;padding:8px 14px;font-size:14px}.apt-mgr-penalty-badge{border:1px solid var(--warning);color:var(--warning);border-radius:var(--radius-md);background-color:#ff98001f;margin-bottom:12px;padding:8px 12px;font-size:12px;font-weight:600;display:inline-block}.apt-mgr-penalty-warning{border-left:3px solid var(--danger);border-radius:var(--radius-md);color:var(--text-primary);background-color:#f4433614;margin-top:8px;padding:12px 16px;font-size:13px;line-height:1.5}.apt-mgr-footer{border-top:1px solid var(--border);background-color:var(--surface-raised);z-index:10;justify-content:flex-end;align-items:center;gap:10px;padding:14px 24px;display:flex;position:sticky;bottom:0}.apt-mgr-delete-confirm{border-radius:var(--radius-md);color:var(--danger);background-color:#f443360f;align-items:center;gap:10px;padding:8px 14px;font-size:14px;font-weight:600;display:flex}@media (width<=576px){.apt-mgr-modal{width:95%;max-height:95vh}.apt-mgr-body{padding:16px}.apt-mgr-header,.apt-mgr-footer{padding:14px 16px}.apt-mgr-form-row{flex-direction:column;gap:0}.apt-mgr-slots{grid-template-columns:repeat(3,1fr)}}.user-table-container{background-color:var(--surface-raised);border-radius:var(--radius-lg);border:1px solid var(--border);padding:20px;overflow:hidden}.filters-container{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.filters-container .search-box{background-color:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);min-width:200px;transition:var(--t-fast);flex:1;align-items:center;padding:0 12px;display:flex}.filters-container .search-box:focus-within{border-color:var(--purple-mid);box-shadow:0 0 0 3px var(--accent-glow)}.filters-container .search-box .form-input{background:0 0;border:none;padding:10px 0}.filters-container .search-box .form-input:focus{box-shadow:none}.filters-container .form-select{min-width:140px}.stats-info{color:var(--text-muted);margin-bottom:15px;padding:8px 0;font-size:14px}@media (width<=768px){.user-table-container{padding:15px}.filters-container{flex-direction:column}.filters-container .search-box{width:100%}.filters-container .form-select{width:100%;min-width:unset}.filters-container .btn{width:100%}}.user-stats-container .empty-icon{margin-bottom:15px;font-size:48px}.user-stats-container .empty-title{color:var(--text-primary);margin-bottom:10px;font-size:20px;font-weight:700}.user-stats-container .empty-message{color:var(--text-muted);margin-bottom:20px;font-size:14px}.footer-actions{border-top:1px solid var(--border);justify-content:center;gap:12px;margin-top:20px;padding-top:20px;display:flex}.clickable-row{cursor:pointer;transition:background .2s}.clickable-row:hover{background:var(--surface)}@media (width<=576px){.user-stats-tabs{flex-direction:column}.user-stats-tabs .tab-button{text-align:center;width:100%}.footer-actions{flex-direction:column}.footer-actions .btn{width:100%}.user-stats-content .status-badge{padding:2px 6px;font-size:9px}.user-stats-content .data-table thead{display:none}.user-stats-content .data-table,.user-stats-content .data-table tbody,.user-stats-content .data-table tr,.user-stats-content .data-table td{display:block}.user-stats-content .data-table tr{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:12px;padding:12px}.user-stats-content .data-table td{border:none;justify-content:space-between;align-items:center;gap:8px;padding:6px 0;font-size:13px;display:flex}.user-stats-content .data-table td:before{content:attr(data-label);color:var(--text-muted);flex-shrink:0;font-size:12px;font-weight:600}.user-stats-content .data-table td:last-child{border-top:1px solid var(--border);justify-content:flex-end;margin-top:6px;padding-top:10px}}@keyframes toastSlideIn{0%{opacity:0;transform:translate(120%)scale(.9)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(120%)scale(.9)}}@keyframes toastProgress{0%{width:100%}to{width:0%}}.hero-section{position:relative;overflow:hidden}.categories-section{background-color:var(--bg-primary);padding:60px 20px}.categories-grid{grid-template-columns:repeat(3,1fr);gap:24px;max-width:1100px;margin:0 auto;display:grid}.category-card{border-radius:var(--radius-lg);text-align:center;cursor:pointer;color:#fff;background-position:50%;background-repeat:no-repeat;background-size:cover;flex-direction:column;justify-content:flex-end;align-items:center;min-height:320px;padding:60px 30px 40px;transition:transform .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden}.category-overlay{z-index:1;background:linear-gradient(#0000001a 0%,#0006 50%,#000000d9 100%);position:absolute;inset:0}.category-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px #0000004d}.category-title{z-index:2;text-shadow:0 2px 8px #00000080;margin-bottom:8px;font-size:22px;font-weight:700;position:relative}.category-desc{opacity:.9;z-index:2;text-shadow:0 1px 4px #0006;margin-bottom:20px;font-size:14px;line-height:1.5;position:relative}.category-btn{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;cursor:pointer;z-index:2;background:#fff3;border:2px solid #fff6;border-radius:50px;padding:10px 28px;font-family:Jost,sans-serif;font-size:14px;font-weight:600;transition:all .3s;position:relative}.category-btn:hover{background:#ffffff59;border-color:#ffffffb3;transform:scale(1.05)}.testimonials-section{background:linear-gradient(180deg, var(--bg-primary) 0%, var(--surface) 50%, var(--bg-primary) 100%);text-align:center;padding:80px 20px}.testimonials-carousel{align-items:center;gap:12px;max-width:900px;margin:0 auto;display:flex}.testimonials-slide{flex:1;grid-template-columns:1fr 1fr;gap:20px;animation:.35s ease-out fadeIn;display:grid}.testimonial-card{background:var(--surface-raised);border:1px solid var(--glass-border);box-shadow:var(--shadow-md);text-align:left;border-radius:20px;flex-direction:column;padding:28px 24px;display:flex;position:relative}.testimonial-card:before{color:var(--purple-mid);opacity:.1;content:"“";pointer-events:none;font-family:Georgia,serif;font-size:64px;line-height:1;position:absolute;top:12px;left:20px}.testimonial-header{z-index:1;align-items:center;gap:14px;margin-bottom:16px;display:flex;position:relative}.testimonial-avatar{object-fit:cover;border:2px solid var(--glass-border-hover);border-radius:50%;flex-shrink:0;width:48px;height:48px}.testimonial-user-info{flex:1}.testimonial-name{color:var(--text-primary);margin-bottom:2px;font-size:15px;font-weight:700}.testimonial-stars{gap:2px;font-size:15px;display:flex}.star-filled{color:#f59e0b}.star-empty{color:var(--border)}.testimonial-comment{color:var(--text-muted);z-index:1;flex:1;margin-bottom:20px;font-size:15px;font-style:italic;line-height:1.6;position:relative}.testimonial-establishment{border:1px solid var(--glass-border);background:var(--glass-bg);cursor:pointer;color:var(--text-primary);border-radius:50px;align-self:flex-start;align-items:center;gap:8px;padding:6px 14px;font-family:Jost,sans-serif;font-size:12px;font-weight:500;transition:all .25s;display:inline-flex}.testimonial-establishment:hover{border-color:var(--purple-mid);background:#6b21a81a;transform:translateY(-1px)}.test-emp-logo{object-fit:cover;border-radius:50%;width:22px;height:22px}.test-emp-logo-placeholder{background:var(--purple-mid);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:10px;font-weight:700;display:flex}.test-emp-arrow{color:var(--purple-light);margin-left:2px;font-size:14px}.test-arrow-prev,.test-arrow-next{background:var(--surface-raised);border:1px solid var(--glass-border);cursor:pointer;width:40px;height:40px;color:var(--text-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-family:Georgia,serif;font-size:22px;line-height:1;transition:all .25s;display:flex}.test-arrow-prev:hover,.test-arrow-next:hover{background:var(--purple-mid);border-color:var(--purple-mid);color:#fff}.test-arrow{background:var(--surface-raised);border:1px solid var(--glass-border);cursor:pointer;width:40px;height:40px;color:var(--text-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-family:Georgia,serif;font-size:22px;line-height:1;transition:all .25s;display:flex}.test-arrow:hover{background:var(--purple-mid);border-color:var(--purple-mid);color:#fff}.testimonial-dots{justify-content:center;gap:10px;margin-top:28px;display:flex}.dot{background-color:var(--border);cursor:pointer;border:none;border-radius:50%;width:10px;height:10px;padding:0;transition:all .3s}.dot.active{background-color:var(--purple-mid);border-radius:5px;width:28px}@media (width<=768px){.testimonials-slide{grid-template-columns:1fr}.testimonials-carousel{flex-direction:column}.test-arrow,.test-arrow-next,.test-arrow-prev{display:none}}.cta-section{background:linear-gradient(135deg, var(--purple-mid) 0%, var(--magenta) 100%);text-align:center;padding:80px 20px;position:relative;overflow:hidden}.cta-section:before{content:"";background:radial-gradient(circle at 20%,#ffffff14 0%,#0000 50%),radial-gradient(circle at 80%,#ffffff0d 0%,#0000 50%);position:absolute;inset:0}.cta-content{z-index:1;max-width:600px;margin:0 auto;position:relative}.cta-title{color:#fff;margin-bottom:16px;font-size:40px;font-weight:800}.cta-text{color:#ffffffd9;margin-bottom:32px;font-size:18px;line-height:1.6}.cta-button{color:var(--purple-mid);cursor:pointer;background:#fff;border:none;border-radius:50px;padding:16px 48px;font-family:Jost,sans-serif;font-size:18px;font-weight:700;transition:all .3s;box-shadow:0 4px 20px #00000026}.cta-button:hover{background:#fffffff2;transform:translateY(-3px);box-shadow:0 8px 30px #00000040}@media (width<=768px){.categories-grid{grid-template-columns:1fr;gap:16px}.cta-title{font-size:28px}.cta-button{padding:14px 32px;font-size:16px}.testimonial-card{padding:24px 16px}.testimonial-comment{font-size:16px}}.hero-container{width:100%;position:relative;overflow:hidden}.hero-video{object-fit:contain;object-position:top;width:100%;height:100%}.stats-section,.personal-stats-section{padding:60px 20px}.stats-section{background-color:var(--surface)}.personal-stats-section{background-color:var(--surface-raised);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.section-header{text-align:center;margin-bottom:40px}.section-title{background:var(--grad-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:10px;font-size:32px;font-weight:700}.section-subtitle{color:var(--text-muted);font-size:16px}.stats-container{background-color:var(--surface);border-radius:var(--radius-lg);margin:20px;padding:20px}.stats-title{color:var(--text-primary);border-bottom:2px solid var(--success);margin-bottom:20px;padding-bottom:10px;font-size:24px;font-weight:700;display:inline-block}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:20px;display:grid}.stat-card{background-color:var(--surface-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);cursor:pointer;border:1px solid var(--border);transition:transform .3s,box-shadow .3s;overflow:hidden}.stat-card:hover{box-shadow:var(--shadow-purple);transform:translateY(-5px)}.stat-card-content{align-items:center;gap:15px;padding:20px;display:flex}.stat-icon-container{border-radius:var(--radius-lg);background-color:var(--surface);justify-content:center;align-items:center;width:70px;height:70px;display:flex}.stat-icon{object-fit:contain;width:40px;height:40px}.stat-info{flex:1}.stat-card-title{color:var(--text-muted);margin-bottom:5px;font-size:16px}.stat-count{color:var(--text-primary);margin:0;font-size:32px;font-weight:700}.stat-card-footer{border-top:1px solid var(--border);text-align:right;background-color:#ffffff08;padding:12px 20px}.stat-view-link{color:var(--success);font-size:13px;font-weight:500}.user-stats-container{background-color:var(--surface);border-radius:var(--radius-lg);margin-top:0;overflow:hidden}.user-stats-tabs{border-bottom:1px solid var(--border);background-color:var(--surface-raised);display:flex}.user-stats-tabs .tab-button{cursor:pointer;color:var(--text-muted);background:0 0;border:none;flex:1;padding:12px 20px;font-size:14px;font-weight:500;transition:all .3s}.user-stats-tabs .tab-button.active{background-color:var(--success);color:#fff}.user-stats-content{padding:20px}.user-stats-empty{text-align:center;padding:40px}.empty-buttons{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px;display:flex}.home-content{max-width:1200px;margin:0 auto;padding:40px 20px}.home-button-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:30px;display:grid}.home-card{background-color:var(--surface-raised);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-md);border:1px solid var(--border);padding:20px}.home-card h3{color:var(--text-primary);margin-bottom:15px}.login-container,.register-container,.forgot-password-container,.reset-password-container,.verify-container,.verify-pending-container{background:var(--purple-deep);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card,.register-card,.forgot-password-card,.reset-password-card,.verify-card,.verify-pending-card{background:var(--surface-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border);width:100%;max-width:400px;animation:.5s ease-out fadeIn;overflow:hidden}.register-card,.verify-pending-card{max-width:450px}.verify-card{text-align:center;max-width:400px;padding:40px}.login-title,.register-header h2{text-align:center;color:var(--text-primary);margin-bottom:30px}.register-header{text-align:center;margin-bottom:2rem}.register-header h2{color:var(--text-primary);margin:0;font-size:1.875rem;font-weight:700}.register-header p{color:var(--text-muted);margin-top:.5rem}.login-form,.forgot-password-form,.reset-password-form{flex-direction:column;gap:15px;margin-bottom:20px;padding:30px;display:flex}.login-button{width:100%}.login-links{text-align:center;margin-top:15px}.forgot-password-link,.register-link,.form-link{color:var(--info);transition:var(--t-fast);font-size:14px;text-decoration:none}.forgot-password-link:hover,.register-link:hover,.form-link:hover{color:var(--purple-light);text-decoration:underline}.form-links{text-align:center;flex-direction:column;gap:8px;margin-top:15px;display:flex}.login-divider{text-align:center;align-items:center;margin:20px 0;padding:0 30px;display:flex}.divider-text{color:var(--text-muted);padding:0 10px;font-size:14px}.google-login-container{text-align:center;margin-bottom:15px;padding:0 30px 30px}.google-login-text{color:var(--text-muted);margin-bottom:10px}.verify-pending-card{text-align:center}.verify-pending-icon{margin-bottom:20px;font-size:48px}.verify-pending-title{color:var(--text-primary);margin-bottom:10px;font-size:24px;font-weight:700}.verify-pending-message,.verify-pending-info{color:var(--text-muted);margin-bottom:10px;font-size:14px}.verify-pending-button{width:100%;margin:10px 0}.success-icon{color:var(--success);margin-bottom:20px;font-size:48px}.verify-title{color:var(--text-primary);margin-bottom:10px;font-size:24px;font-weight:700}.verify-message{color:var(--text-muted);margin-bottom:10px;font-size:14px}.verify-info{color:var(--text-faint);font-size:12px}.forgot-password-header,.reset-password-header{text-align:center;margin-bottom:20px}.forgot-password-title,.reset-password-title{color:var(--text-primary);margin-bottom:10px;font-size:24px;font-weight:700}.forgot-password-subtitle,.reset-password-subtitle{color:var(--text-muted);font-size:14px}.success-box{text-align:center;padding:30px}.success-text{color:var(--success);margin-bottom:10px;font-size:16px}.success-info{color:var(--text-muted);margin-bottom:20px;font-size:13px}@media (width<=576px){.login-card,.register-card,.forgot-password-card,.reset-password-card{max-width:calc(100% - 20px);margin:10px}.login-form,.forgot-password-form,.reset-password-form{padding:20px}.google-login-container{padding:0 20px 20px}}.dashboard-container{max-width:1400px;margin:0 auto;padding:20px}.dashboard-header{background-color:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;padding:20px;display:flex}.dashboard-header h1{color:var(--text-primary);margin:0;font-size:24px}.user-info{flex-wrap:wrap;align-items:center;gap:15px;display:flex}.user-info .avatar{object-fit:cover;border:2px solid var(--border);border-radius:50%;width:50px;height:50px}.user-info .user-email{color:var(--text-muted);margin:0;font-size:12px}.add-admin-button{background:var(--grad-brand);color:#fff}.logout-button{background-color:var(--danger);color:#fff}.dashboard-tabs{border-bottom:1px solid var(--border);gap:10px;margin-bottom:20px;padding-bottom:10px;display:flex}.dashboard-tabs .tab-button{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-md);background:0 0;border:none;padding:10px 20px;font-size:16px;transition:all .3s}.dashboard-tabs .tab-button.active{background:var(--grad-brand);color:#fff}.dashboard-tabs .tab-button:hover:not(.active){background-color:var(--surface);color:var(--text-primary)}.dashboard-section{background-color:var(--surface-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border);padding:20px}.dashboard-section h2{color:var(--text-primary);margin-top:0;margin-bottom:20px;font-size:20px}.table-container{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);padding:12px}.data-table th{background-color:var(--surface);color:var(--text-primary);font-weight:600}.data-table tr:hover{background-color:var(--surface)}.banned-row{background-color:#f443361a}.table-logo{border-radius:var(--radius-md);object-fit:cover;width:40px;height:40px}.table-logo-placeholder{border-radius:var(--radius-md);background-color:var(--surface);justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.action-buttons{flex-wrap:wrap;gap:8px;display:flex}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (width<=768px){.dashboard-header{flex-direction:column;align-items:flex-start}.dashboard-tabs{flex-direction:column}.dashboard-tabs .tab-button{text-align:center;width:100%}.data-table th,.data-table td{padding:8px;font-size:12px}}@media (width<=576px){.data-table th,.data-table td{padding:6px 4px;font-size:10px}.data-table .btn-small{padding:4px 6px;font-size:10px}.data-table td:first-child,.data-table th:first-child{padding-left:6px}.data-table td:last-child,.data-table th:last-child{padding-right:6px}.table-logo,.table-logo-placeholder{width:28px;height:28px;font-size:14px}}.profile-container,.edit-user-container{background-color:var(--purple-deep);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.profile-card,.edit-user-card{background-color:var(--surface-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border);width:100%;max-width:900px;overflow:hidden}.profile-title,.edit-user-title{text-align:center;color:var(--text-primary);margin:20px 0 0;padding:0 20px;font-size:28px}.tabs-container{border-bottom:1px solid var(--border);background-color:var(--surface);margin-top:20px;display:flex}.tab-button{cursor:pointer;color:var(--text-muted);background-color:#0000;border:none;flex:1;padding:14px 20px;font-size:15px;font-weight:500;transition:all .3s}.tab-button.active{background-color:var(--success);color:#fff}.tab-button:hover:not(.active){background-color:var(--surface-raised);color:var(--text-primary)}.tab-content{padding:25px}.image-upload-container{flex-direction:column;align-items:center;gap:15px;margin-bottom:25px;display:flex}.avatar-preview{background-color:var(--surface);border:3px solid var(--border);border-radius:50%;width:150px;height:150px;overflow:hidden}.avatar-preview-img{object-fit:cover;width:100%;height:100%}.avatar-placeholder{width:100%;height:100%;color:var(--text-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.google-info-message{border-left:4px solid var(--info);border-radius:var(--radius-md);background-color:#2196f31a;align-items:center;gap:12px;margin-bottom:20px;padding:15px;display:flex}.google-info-icon{font-size:28px}.required-fields-note{color:var(--text-faint);margin-top:8px;font-size:12px;display:block}.password-button{background-color:var(--warning);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;flex:1;padding:12px;font-size:16px;font-weight:700}.password-button:hover{background-color:var(--warning-dark);transform:translateY(-1px)}@media (width<=768px){.profile-card,.edit-user-card{margin:10px}.tabs-container{flex-direction:column}.tab-button{width:100%}}.establishment-page{max-width:1200px;min-height:100vh;margin:0 auto;padding:20px}.establishment-cover{border-radius:var(--radius-lg);margin-bottom:20px;overflow:hidden}.establishment-cover-img{object-fit:cover;width:100%;height:300px}.establishment-header{flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:30px;display:flex}.establishment-logo{object-fit:cover;border:3px solid var(--surface-raised);width:100px;height:100px;box-shadow:var(--shadow-md);border-radius:50%}.establishment-title-block{flex-wrap:wrap;flex:1;justify-content:space-between;align-items:center;gap:15px;display:flex}.establishment-name{color:var(--text-primary);margin:0;font-size:28px;font-weight:700}.establishment-actions{gap:10px;display:flex}.establishment-gender-badge{background-color:var(--purple-mid);color:#fff;border-radius:var(--radius-pill);margin-bottom:20px;padding:5px 12px;font-size:12px;display:inline-block}.establishment-section{background-color:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);margin-bottom:20px;padding:20px}.establishment-section-title{color:var(--text-primary);margin-top:0;margin-bottom:15px;font-size:20px}.establishment-info-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px;display:grid}.establishment-info-item{color:var(--text-muted);margin:0}.establishment-info-item strong{color:var(--text-primary)}.establishment-description{color:var(--text-muted);line-height:1.6}.establishment-hours-grid{flex-direction:column;gap:10px;display:flex}.establishment-hours-row{border-bottom:1px solid var(--border);justify-content:space-between;padding:8px 0;display:flex}.establishment-hours-day{color:var(--text-primary);text-transform:capitalize;font-weight:700}.establishment-hours-value{color:var(--text-muted)}.establishment-features{flex-wrap:wrap;gap:10px;display:flex}.establishment-feature-tag{background-color:var(--surface-raised);border-radius:var(--radius-pill);color:var(--text-muted);border:1px solid var(--border);padding:5px 12px;font-size:14px}.establishment-cover{border-radius:var(--radius-lg);margin-bottom:20px;position:relative;overflow:hidden}.establishment-social-overlay{pointer-events:none;background:linear-gradient(#0000 0%,#0009 100%);justify-content:center;gap:12px;padding:16px;display:flex;position:absolute;bottom:0;left:0;right:0}.establishment-social-overlay .establishment-social-icon{pointer-events:auto;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;text-transform:uppercase;background:#ffffff26;border:2px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-family:Jost,sans-serif;font-size:13px;font-weight:700;text-decoration:none;transition:all .25s;display:flex}.establishment-social-overlay .establishment-social-icon:hover{background:var(--purple-mid);border-color:var(--purple-light);transform:translateY(-3px)scale(1.1);box-shadow:0 4px 16px #6b21a866}.establishment-gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.establishment-gallery-img{object-fit:cover;border-radius:var(--radius-md);cursor:pointer;width:100%;height:150px;transition:transform .3s}.establishment-gallery-img:hover{transform:scale(1.05)}.establishment-services-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px;display:grid}.establishment-service-img{border-radius:var(--radius-md);width:100%;max-width:240px;height:140px;margin-bottom:10px;overflow:hidden}.establishment-service-img img{object-fit:cover;width:100%;height:100%;display:block}.establishment-service-card{background-color:var(--purple-mid);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);color:#fff;text-align:center;flex-direction:column;justify-self:center;align-items:center;max-width:280px;padding:15px;text-decoration:none;transition:transform .3s;display:flex}.establishment-service-card:hover{box-shadow:var(--shadow-purple);transform:translateY(-3px)}.establishment-service-info{width:100%}.establishment-service-name{color:#fff;margin:0 0 5px;font-size:16px}.establishment-service-price{color:#fff;margin:0;font-size:14px}.establishment-verification-banner{border-left:4px solid var(--warning);border-radius:var(--radius-md);background-color:#ff980026;flex-wrap:wrap;align-items:center;gap:15px;margin-bottom:20px;padding:15px 20px;display:flex}.establishment-verification-icon{font-size:28px}.establishment-verification-text{opacity:.9;color:var(--text-muted);margin:5px 0 0;font-size:13px}.establishment-map{border-radius:var(--radius-lg);width:100%;height:350px;margin-bottom:10px;overflow:hidden}.establishment-coordinates{color:var(--text-faint);text-align:center;margin-top:10px;font-size:12px}.establishment-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000000;background-color:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.establishment-modal{background-color:var(--surface-raised);border-radius:var(--radius-lg);width:90%;max-width:450px;box-shadow:var(--shadow-lg);border:1px solid var(--border);overflow:hidden}.establishment-modal-header{border-bottom:1px solid var(--border);background-color:var(--surface);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.establishment-modal-title{color:var(--text-primary);margin:0;font-size:18px}.establishment-modal-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:0 4px;font-size:20px}.establishment-modal-body{padding:20px}.establishment-modal-footer{border-top:1px solid var(--border);background-color:var(--surface);justify-content:flex-end;gap:12px;padding:16px 20px;display:flex}.establishment-warning{color:var(--warning);font-size:13px}@media (width<=768px){.establishment-header,.establishment-title-block{text-align:center;flex-direction:column}.establishment-cover-img{height:200px}.establishment-info-grid{grid-template-columns:1fr}.establishment-gallery{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.establishment-gallery-img{height:100px}.establishment-map{height:250px}}@media (width<=480px){.establishment-page{padding:15px}.establishment-name{font-size:24px}.establishment-services-grid{grid-template-columns:1fr}}.employee-reviews-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px;margin-top:20px;display:grid}.employee-review-card{background-color:var(--surface-raised);border-radius:var(--radius-lg);border:1px solid var(--border);transition:var(--t-default);padding:20px}.employee-review-card:hover{border-color:var(--purple-mid);box-shadow:var(--shadow-sm)}.employee-review-header{border-bottom:1px solid var(--border);align-items:center;gap:15px;margin-bottom:15px;padding-bottom:10px;display:flex}.employee-avatar{background-color:var(--surface);border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:24px;display:flex;overflow:hidden}.employee-avatar img{object-fit:cover;width:100%;height:100%}.employee-name{color:var(--text-primary);margin:0 0 5px;font-size:16px;font-weight:700}.employee-role{color:var(--text-muted);margin:0;font-size:12px}.employee-review-btn{cursor:pointer;color:#ffc107;white-space:nowrap;transition:var(--t-fast);background-color:#ffc10733;border:1px solid #ffc10780;border-radius:4px;padding:4px 8px;font-size:11px}.employee-review-btn:hover{background-color:#ffc1074d;transform:translateY(-1px)}.image-viewer-overlay{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);z-index:999999;cursor:pointer;justify-content:center;align-items:center;animation:.3s ease-out fadeIn;display:flex;position:fixed;inset:0}.image-viewer-img{object-fit:contain;border-radius:var(--radius-lg);max-width:90vw;max-height:85vh;box-shadow:0 0 50px #00000080, 0 0 0 1px var(--glass-border);cursor:default;background-color:var(--surface-raised);animation:.3s cubic-bezier(.4,0,.2,1) zoomIn}.image-viewer-close{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);cursor:pointer;color:#fff;width:48px;height:48px;transition:var(--t-fast);z-index:10;background:#0009;border-radius:50%;justify-content:center;align-items:center;font-size:24px;display:flex;position:absolute;top:24px;right:24px}.image-viewer-close:hover{background:var(--danger);border-color:var(--danger);transform:scale(1.1)}.image-viewer-nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);cursor:pointer;color:#fff;width:56px;height:56px;transition:var(--t-fast);z-index:10;background:#0009;border-radius:50%;justify-content:center;align-items:center;font-size:28px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.image-viewer-nav:hover{background:var(--purple-mid);border-color:var(--purple-mid);transform:translateY(-50%)scale(1.1)}.image-viewer-prev{left:24px}.image-viewer-next{right:24px}.image-viewer-counter{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-primary);border-radius:var(--radius-pill);border:1px solid var(--glass-border);letter-spacing:1px;background:#0009;padding:8px 16px;font-family:monospace;font-size:14px;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}@keyframes zoomIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.image-viewer-loading{border:3px solid var(--glass-border);border-top-color:var(--purple-mid);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (width<=768px){.image-viewer-close{width:40px;height:40px;font-size:20px;top:16px;right:16px}.image-viewer-nav{width:44px;height:44px;font-size:22px}.image-viewer-prev{left:16px}.image-viewer-next{right:16px}.image-viewer-counter{padding:6px 12px;font-size:12px;bottom:16px}}@media (width<=480px){.image-viewer-nav{width:36px;height:36px;font-size:18px}.image-viewer-img{max-width:95vw;max-height:80vh}}.page-list{max-width:1400px;min-height:100vh;margin:0 auto;padding:20px}.page-list .page-header{text-align:center;background:var(--grad-soft);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-bottom:40px;padding:40px 20px}.page-list .page-header-icon{margin-bottom:10px;font-size:48px}.page-header-wide{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:0 0!important;padding:0!important}.page-header-img-wrapper{border-radius:var(--radius-xl);width:100%;max-width:1000px;box-shadow:var(--shadow-lg);margin:0 auto;position:relative;overflow:hidden}.page-list .page-header-wide-img{object-fit:cover;object-position:center center;width:100%;height:320px;display:block}.page-header-overlay{background:linear-gradient(#00000026 0%,#00000059 50%,#000000b3 100%);flex-direction:column;justify-content:center;align-items:center;padding:40px 20px;display:flex;position:absolute;inset:0}.page-header-overlay .page-title{-webkit-text-fill-color:white;color:#fff;text-shadow:0 2px 12px #0009;background:0 0;margin-bottom:12px;font-size:42px}.page-header-overlay .page-subtitle{color:#fff;text-shadow:0 2px 8px #00000080;font-size:18px}.page-list .page-title{background:var(--grad-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:10px;font-size:36px;font-weight:700}.page-list .page-subtitle{color:var(--text-muted);font-size:16px}.page-list .filters{flex-flow:wrap;justify-content:center;align-items:center;gap:15px;width:100%;margin-bottom:30px;display:flex}.page-list .filters-search{flex:2;min-width:250px;max-width:400px}.page-list .search-wrapper{flex:2;min-width:250px;position:relative}.page-list .search-box{background-color:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);transition:var(--t-fast);align-items:center;padding:0 15px;display:flex}.page-list .search-box:focus-within{border-color:var(--purple-mid);box-shadow:0 0 0 3px var(--accent-glow)}.page-list .search-icon{color:var(--text-muted);margin-right:8px;font-size:18px}.page-list .search-input{color:var(--text-primary);background-color:#0000;border:none;outline:none;flex:1;padding:12px 0;font-size:14px}.page-list .search-input::placeholder{color:var(--text-faint)}.page-list .filter-select{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);color:var(--text-primary);cursor:pointer;min-width:180px;transition:var(--t-fast);padding:12px 20px;font-size:14px}.page-list .filter-select:hover{border-color:var(--purple-mid)}.page-list .filter-select:focus{border-color:var(--purple-mid);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.page-list .filter-select:disabled{opacity:.5;cursor:not-allowed}.page-list .btn-filter-reset{background-color:var(--warning);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);white-space:nowrap;border:none;padding:12px 20px;font-size:14px;font-weight:700}.page-list .btn-filter-reset:hover{background-color:var(--warning-dark);transform:translateY(-1px)}.page-list .suggestions-dropdown{background-color:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);z-index:1000;max-height:200px;box-shadow:var(--shadow-md);margin-top:5px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.page-list .suggestion-item{cursor:pointer;border-bottom:1px solid var(--border);color:var(--text-muted);padding:10px 15px;font-size:14px;transition:background-color .2s}.page-list .suggestion-item:hover{color:var(--text-primary);background-color:#8b5cf626}.page-list .results-info{color:var(--text-muted);text-align:center;margin-bottom:20px;font-size:14px}.page-list .types-row{flex-flow:wrap;justify-content:center;gap:20px;margin-bottom:30px;display:flex}.page-list .type-btn{border-radius:var(--radius-pill);border:1px solid var(--border);cursor:pointer;background:var(--surface);color:var(--text-primary);white-space:nowrap;align-items:center;gap:12px;padding:12px 24px;font-size:16px;font-weight:600;transition:all .3s;display:flex}.page-list .type-btn-active{background-color:var(--type-color,var(--purple-mid));border-color:var(--type-color,var(--purple-mid));color:#fff}.page-list .type-btn-icon{font-size:20px}.page-list .grid{gap:25px;margin-bottom:30px;padding-top:45px;display:grid}.page-list .grid-auto{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.card-establishment{flex-direction:column;height:100%;display:flex;position:relative}.card-establishment .card-image{height:160px;position:relative;overflow:hidden}.card-establishment .card-image img{object-fit:cover;width:100%;height:100%}.card-establishment .image-placeholder{background-color:var(--surface);justify-content:center;align-items:center;width:100%;height:100%;font-size:48px;display:flex}.card-establishment .type-badge{border-radius:var(--radius-pill);color:#fff;padding:5px 12px;font-size:12px;font-weight:700;position:absolute;top:10px;left:10px}.card-establishment .unverified-banner{background-color:var(--warning);color:#fff;z-index:10;white-space:nowrap;box-shadow:var(--shadow-sm);padding:5px 30px;font-size:11px;font-weight:700;position:absolute;top:50px;right:-40px;transform:rotate(45deg)}.card-establishment .card-content{flex-direction:column;flex:1;gap:8px;padding:15px;display:flex}.card-establishment .establishment-name{color:var(--text-primary);font-size:18px;font-weight:700}.card-establishment .location{color:var(--text-muted);align-items:center;gap:5px;font-size:13px;display:flex}.card-establishment .verified-badge{color:var(--success);border-radius:var(--radius-pill);background-color:#4caf5026;width:fit-content;padding:4px 10px;font-size:11px;font-weight:700;display:inline-block}.card-establishment .stats{border-top:1px solid var(--border);gap:15px;margin-top:auto;padding-top:10px;display:flex}.card-establishment .stat-item{color:var(--text-faint);align-items:center;gap:5px;font-size:12px;display:flex}.card-service{flex-direction:column;height:100%;display:flex}.card-service .service-type-bar{color:#fff;background-color:var(--type-color,var(--purple-mid));align-items:center;gap:8px;padding:8px 15px;display:flex}.card-service .card-image{background-color:var(--surface);height:160px;overflow:hidden}.card-service .card-image img{object-fit:cover;width:100%;height:100%}.card-service .image-placeholder{justify-content:center;align-items:center;width:100%;height:100%;font-size:48px;display:flex}.card-service .card-content{flex-direction:column;flex:1;gap:10px;padding:15px;display:flex}.card-service .service-header{justify-content:space-between;align-items:center;display:flex}.card-service .service-name{color:var(--text-primary);margin:0;font-size:18px;font-weight:700}.card-service .service-price{background-color:var(--success);color:#fff;border-radius:var(--radius-pill);padding:4px 10px;font-size:13px;font-weight:700}.card-service .service-description{color:var(--text-muted);font-size:13px;line-height:1.4}.card-service .service-duration{color:var(--text-faint);align-items:center;gap:4px;font-size:12px;display:flex}.card-service .divider{border:none;border-top:1px solid var(--border);margin:10px 0}.card-service .establishment-info{margin-top:auto}.card-service .establishment-header{align-items:center;gap:8px;margin-bottom:5px;display:flex}.card-service .establishment-logo{object-fit:cover;border-radius:50%;width:24px;height:24px}.card-service .establishment-icon{font-size:16px}.card-service .establishment-name{color:var(--text-primary);font-size:14px;font-weight:700}.card-service .establishment-location{color:var(--text-faint);align-items:center;gap:4px;font-size:12px;display:flex}.card-expert{text-align:center;margin-top:0;transition:transform .3s,box-shadow .3s;position:relative;overflow:visible}.card-expert .expert-name{color:var(--text-primary);font-size:20px;font-weight:700}.card-expert .expert-info-icon{font-size:14px}.card-expert .establishment-header{justify-content:center;align-items:center;gap:8px;display:flex}.card-expert .establishment-icon{font-size:16px}.card-expert .establishment-location,.card-expert .establishment-type{color:var(--text-faint);justify-content:center;align-items:center;gap:4px;font-size:12px;display:flex}.page-list .pagination{justify-content:center;align-items:center;gap:20px;margin-top:30px;padding:20px 0;display:flex}.page-list .pagination-prev,.page-list .pagination-next{background:var(--grad-brand);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:8px 16px;font-size:14px}.page-list .pagination-prev:hover:not(:disabled),.page-list .pagination-next:hover:not(:disabled){box-shadow:var(--shadow-purple);transform:translateY(-2px)}.page-list .pagination-prev:disabled,.page-list .pagination-next:disabled{opacity:.5;cursor:not-allowed}.page-list .pagination-info{color:var(--text-muted);font-size:14px}.page-list .stars-container{align-items:center;gap:2px;font-size:14px;display:flex}.page-list .star-full,.page-list .star-half{color:#ffc107}.page-list .star-empty{color:var(--text-faint)}.page-list .rating-value{color:var(--text-muted);margin-left:5px;font-size:12px}.card-expert .card-avatar{background-color:var(--surface-raised);width:80px;height:80px;box-shadow:var(--shadow-md);z-index:10;border:3px solid var(--border);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-40px;left:50%;overflow:hidden;transform:translate(-50%)}.card-expert .avatar-img{object-fit:cover;object-position:center;width:100%;height:100%}.card-expert .avatar-placeholder{background:var(--grad-brand);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;font-size:36px;display:flex}.card-expert{text-align:center;margin-top:40px;transition:transform .3s,box-shadow .3s;position:relative}.card-expert:hover{box-shadow:var(--shadow-purple);transform:translateY(-5px)}.card-expert .card-content{flex-direction:column;gap:8px;padding:50px 20px 20px;display:flex}.card-expert .expert-name{color:var(--text-primary);margin:0;font-size:20px;font-weight:700}.card-expert .expert-role{color:var(--success);font-size:14px;font-weight:500}.card-expert .expert-info{color:var(--text-muted);justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex}.card-expert .divider{border:none;border-top:1px solid var(--border);margin:15px 0}.card-expert .establishment-header{justify-content:center;align-items:center;gap:8px;margin-bottom:5px;display:flex}.card-expert .establishment-logo{object-fit:cover;border-radius:50%;width:24px;height:24px}.card-expert .establishment-name{color:var(--text-primary);font-size:14px;font-weight:700}.card-expert .establishment-location{color:var(--text-faint);justify-content:center;align-items:center;gap:4px;font-size:12px;display:flex}@media (width<=768px){.card-expert .card-avatar{width:60px;height:60px;top:-30px}.card-expert .card-content{padding-top:40px}.card-expert .expert-name{font-size:18px}}@media (width<=1024px){.page-list .grid-auto{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.page.page-list{max-width:1400px;min-height:100vh;margin:0 auto;padding:20px}.page-establishments .page-header-img,.page-experts .page-header-img{width:100px;height:auto}.type-label{font-size:16px;font-weight:600}.type-bar-text{font-size:14px;font-weight:600}.page-list{padding:15px}.page-list .page-title{font-size:28px}.page-list .page-header{padding:30px 15px}.page-list .page-header-icon{font-size:36px}.page-list .page-header-wide-img{height:220px}.page-header-overlay{padding:24px 16px}.page-header-overlay .page-title{font-size:24px}.page-header-overlay .page-subtitle{font-size:14px}.page-list .filters{flex-direction:column;align-items:stretch}.page-list .filters-search,.page-list .search-wrapper{max-width:100%}.page-list .filter-select,.page-list .btn-filter-reset{width:100%}.page-list .types-row{flex-direction:column;align-items:stretch}.page-list .type-btn{justify-content:center;width:100%}.page-list .grid-auto{grid-template-columns:1fr}.page-list .pagination{gap:10px}.page-list .pagination-prev,.page-list .pagination-next{padding:6px 12px;font-size:12px}}@media (width<=480px){.page-list .page-title{font-size:24px}.page-list .page-header-wide-img{height:180px}.page-header-overlay .page-title{font-size:20px}.page-header-overlay .page-subtitle{font-size:13px}.page-list .expert-name{font-size:18px}.card-expert{margin-top:30px}.card-expert .card-avatar{width:60px;height:60px;top:-30px}.card-expert .avatar-img,.card-expert .avatar-placeholder{width:56px;height:56px;font-size:28px}.card-expert .card-content{padding-top:40px}}.service-unverified-banner{background-color:var(--warning);color:#fff;box-shadow:var(--shadow-sm);z-index:20;white-space:nowrap;text-transform:uppercase;letter-spacing:.5px;padding:5px 30px;font-size:11px;font-weight:700;position:absolute;top:50px;right:-50px;transform:rotate(45deg)}.service-unverified-banner-left{background-color:var(--warning);color:#fff;border-radius:var(--radius-pill);z-index:20;white-space:nowrap;align-items:center;gap:4px;padding:4px 12px;font-size:10px;font-weight:700;display:flex;position:absolute;top:10px;left:10px}.service-unverified-banner-left:before{content:"⚠️";font-size:10px}.service-unverified-banner-icon{background-color:var(--warning);color:#fff;border-radius:var(--radius-pill);z-index:20;align-items:center;gap:4px;padding:4px 10px;font-size:10px;font-weight:700;display:flex;position:absolute;top:10px;right:10px}.card-service{position:relative}.about-page{max-width:1000px;min-height:100vh;margin:0 auto;padding:40px 20px}.about-header{text-align:center;margin-bottom:40px}.about-title{background:var(--grad-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:10px;font-size:42px}.about-subtitle{color:var(--text-muted);font-size:18px}.about-presentation{background-color:var(--surface-raised);border-radius:var(--radius-xl);border:1px solid var(--border);margin-bottom:40px;padding:30px}.about-presentation-card{text-align:center;margin-bottom:30px}.about-presentation-icon{margin-bottom:15px;font-size:64px}.about-presentation-title{color:var(--text-primary);margin-bottom:15px;font-size:28px}.about-presentation-text{color:var(--text-muted);max-width:700px;margin:0 auto;font-size:16px;line-height:1.6}.about-verification-badges{flex-wrap:wrap;justify-content:center;gap:20px;margin-bottom:30px;display:flex}.about-badge{background-color:var(--surface);border-radius:var(--radius-pill);color:var(--text-primary);align-items:center;gap:8px;padding:8px 16px;font-size:14px;display:flex}.about-badge-icon{color:var(--success);font-size:18px}.about-features-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px;display:grid}.about-feature-card{text-align:center;background-color:var(--surface);border-radius:var(--radius-lg);padding:20px;transition:transform .3s}.about-feature-card:hover{transform:translateY(-5px)}.about-feature-icon{margin-bottom:10px;font-size:36px}.about-feature-title{color:var(--text-primary);margin-bottom:8px;font-size:18px;font-weight:600}.about-feature-text{color:var(--text-muted);font-size:13px;line-height:1.4}.about-accordion{background-color:var(--surface-raised);border-radius:var(--radius-lg);border:1px solid var(--border);overflow:hidden}.about-accordion-item{border-bottom:1px solid var(--border)}.about-accordion-item:last-child{border-bottom:none}.about-accordion-button{background-color:var(--surface);cursor:pointer;width:100%;color:var(--text-primary);border:none;justify-content:space-between;align-items:center;padding:18px 20px;font-size:18px;font-weight:500;transition:background-color .3s;display:flex}.about-accordion-button:hover{background-color:var(--surface-raised)}.about-accordion-title{align-items:center;gap:12px;display:flex}.about-accordion-icon{font-size:24px}.about-accordion-content{background-color:var(--surface);border-top:1px solid var(--border);color:var(--text-muted);padding:20px;line-height:1.6}.about-accordion-content h4{color:var(--text-primary);margin:15px 0 10px}.about-accordion-content p{margin-bottom:8px}.about-contact-form{flex-direction:column;gap:15px;margin-top:15px;display:flex}.about-input,.about-select,.about-textarea{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);color:var(--text-primary);padding:12px;font-size:14px}.about-input:focus,.about-select:focus,.about-textarea:focus{border-color:var(--purple-mid);outline:none}.about-submit-button{background:var(--grad-brand);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:12px;font-size:16px;font-weight:700}.about-submit-button:hover{box-shadow:var(--shadow-purple);transform:translateY(-2px)}.about-social-links{flex-wrap:wrap;gap:15px;margin:15px 0;display:flex}.about-social-link{background-color:var(--info);color:#fff;border-radius:var(--radius-md);transition:var(--t-fast);padding:8px 16px;text-decoration:none}.about-social-link:hover{background-color:var(--info-dark);transform:translateY(-2px)}.about-support-info{background-color:var(--surface);border-radius:var(--radius-md);margin-top:20px;padding:15px}.about-footer-info{background-color:var(--surface);border-radius:var(--radius-lg);text-align:center;color:var(--text-muted);margin-top:30px;padding:20px;font-size:14px}@media (width<=768px){.about-title{font-size:32px}.about-presentation-title{font-size:24px}.about-accordion-button{padding:15px;font-size:16px}.about-features-grid{grid-template-columns:1fr}}.reservation-page{max-width:1400px;min-height:100vh;margin:0 auto;padding:20px}.reservation-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:30px;display:flex}.reservation-header h1{color:var(--text-primary);margin:0 0 5px;font-size:24px;font-weight:700}.reservation-header p{color:var(--text-muted);margin:0}.reservation-controls{flex-wrap:wrap;align-items:center;gap:15px;display:flex}.reservation-controls .form-input{border-radius:var(--radius-md);border:1px solid var(--border);background-color:var(--surface);color:var(--text-primary);padding:10px;font-size:14px}.reservation-controls .btn{white-space:nowrap}.reservation-info{border-radius:var(--radius-md);color:var(--info);border-left:3px solid var(--info);background-color:#2196f326;margin-bottom:15px;padding:12px 16px;font-size:14px}.reservation-info.closed{color:var(--danger);border-left-color:var(--danger);background-color:#f4433626}.reservation-scroll-wrapper{scrollbar-width:thin;flex-wrap:nowrap;gap:0;padding-bottom:15px;padding-left:20px;display:flex;overflow-x:auto}.reservation-scroll-wrapper::-webkit-scrollbar{height:8px}.reservation-scroll-wrapper::-webkit-scrollbar-track{background:var(--surface);border-radius:4px}.reservation-scroll-wrapper::-webkit-scrollbar-thumb{background:var(--purple-mid);border-radius:4px}.reservation-loading{text-align:center;color:var(--text-muted);padding:50px}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000000;background-color:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--surface-raised);border-radius:var(--radius-lg);width:90%;max-width:450px;max-height:85vh;box-shadow:var(--shadow-lg);border:1px solid var(--border);flex-direction:column;display:flex;overflow:hidden}.modal-header{border-bottom:1px solid var(--border);background-color:var(--surface);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h2,.modal-header h3{color:var(--text-primary);margin:0;font-size:18px}.modal-body{flex:1;padding:20px;overflow:visible}.modal-footer{border-top:1px solid var(--border);background-color:var(--surface);justify-content:flex-end;gap:12px;padding:16px 20px;display:flex}.close-button{cursor:pointer;color:var(--text-muted);transition:var(--t-fast);background:0 0;border:none;padding:0 4px;font-size:20px}.close-button:hover{color:var(--danger)}.modal-body .form-group{margin-bottom:15px}.modal-body .form-group p{color:var(--text-muted);margin:8px 0}.modal-body .form-group strong{color:var(--text-primary)}.modal-body .form-textarea{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);width:100%;color:var(--text-primary);resize:vertical;min-height:80px;padding:10px;font-size:14px}.modal-body .form-textarea:focus{border-color:var(--purple-mid);outline:none}.modal-body .label{color:var(--text-muted);margin-bottom:8px;font-size:13px;font-weight:700;display:block}.modal-body .form-select{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);width:100%;color:var(--text-primary);cursor:pointer;padding:10px;font-size:14px}.modal-body .form-input{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);width:100%;color:var(--text-primary);padding:10px;font-size:14px}.modal-body .form-hint{color:var(--text-faint);margin-top:5px;font-size:11px;display:block}.confirm-button{background-color:var(--success);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:10px 20px;font-size:14px;font-weight:700}.confirm-button:hover{background-color:var(--success-dark);transform:translateY(-1px)}.cancel-button{background-color:var(--danger);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);border:none;padding:10px 20px;font-size:14px}.cancel-button:hover{background-color:var(--danger-dark);transform:translateY(-1px)}.btn-outline{border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-md);cursor:pointer;transition:var(--t-fast);background-color:#0000;padding:10px 20px;font-size:14px}.btn-outline:hover{background-color:var(--surface);border-color:var(--purple-mid)}.mobile-employees-selector{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.mobile-emp-btn{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-width:0;color:var(--text-muted);cursor:pointer;text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:1;padding:10px 12px;font-family:Jost,sans-serif;font-size:13px;transition:all .2s;overflow:hidden}.mobile-emp-btn.active{background:var(--grad-brand);color:#fff;box-shadow:0 2px 12px var(--glow-purple);border-color:#0000}@media (width<=768px){.reservation-page{padding:15px}.reservation-header{flex-direction:column;align-items:flex-start}.reservation-controls{flex-direction:column;width:100%}.reservation-controls .form-input,.reservation-controls .btn{width:100%}.modal-content{width:95%;margin:10px}.modal-header h2,.modal-header h3{font-size:16px}}@media (width<=480px){.reservation-header h1{font-size:20px}.modal-body{padding:15px}}.add-etab-container{max-width:900px;min-height:100vh;margin:0 auto;padding:20px}.add-etab-container h2{color:var(--text-primary);text-align:center;background:var(--grad-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;width:100%;margin-bottom:30px;font-size:28px;font-weight:700;display:inline-block}.etab-form{flex-direction:column;gap:30px;display:flex}.form-section{background-color:var(--surface-raised);border-radius:var(--radius-lg);border:1px solid var(--border);transition:var(--t-default);padding:25px}.form-section:hover{border-color:var(--purple-mid);box-shadow:var(--shadow-sm)}.form-section h3{color:var(--text-primary);border-bottom:2px solid var(--grad-brand);margin-top:0;margin-bottom:20px;padding-bottom:10px;font-size:20px;font-weight:600;display:inline-block}.form-section .form-group{margin-bottom:20px}.form-section .form-group label{color:var(--text-muted);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-section .form-group input,.form-section .form-group select,.form-section .form-group textarea{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);width:100%;color:var(--text-primary);transition:var(--t-fast);padding:12px 14px;font-family:Jost,sans-serif;font-size:14px}.form-section .form-group input:focus,.form-section .form-group select:focus,.form-section .form-group textarea:focus{border-color:var(--purple-mid);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.form-section .form-group input::placeholder,.form-section .form-group textarea::placeholder{color:var(--text-faint)}.form-section .form-group small{color:var(--text-faint);margin-top:5px;font-size:11px;display:block}.form-section .form-row{flex-wrap:wrap;gap:20px;margin-bottom:20px;display:flex}.form-section .form-row .form-group{flex:1;margin-bottom:0}.map-container{border-radius:var(--radius-lg);border:1px solid var(--border);margin-bottom:15px;overflow:hidden}.map-full{border-radius:var(--radius-lg);width:100%;height:400px}.coordinates-info{background-color:var(--surface);border-radius:var(--radius-md);color:var(--text-muted);text-align:center;margin-top:10px;padding:12px 16px;font-size:13px}.coordinates-info p{margin:5px 0}.coordinates-info strong{color:var(--text-primary)}.logo-preview,.cover-preview{border-radius:var(--radius-md);border:1px solid var(--border);max-width:150px;margin-top:15px;overflow:hidden}.logo-preview img,.cover-preview img{width:100%;height:auto;display:block}.gallery-preview{flex-wrap:wrap;gap:15px;margin-top:15px;display:flex}.gallery-thumb{object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--border);width:100px;height:100px;transition:var(--t-fast)}.gallery-thumb:hover{border-color:var(--purple-mid);transform:scale(1.05)}.features-group{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.feature-item{background-color:var(--surface);border-radius:var(--radius-md);transition:var(--t-fast);align-items:center;gap:10px;padding:8px 12px;display:flex}.feature-item:hover{background-color:var(--surface-raised)}.feature-item input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--success)}.feature-item label{cursor:pointer;color:var(--text-muted);margin:0;font-size:14px}.feature-item label:hover{color:var(--text-primary)}.opening-hours-summary{border-radius:var(--radius-md);border-left:4px solid var(--success);background-color:#4caf501a;margin-top:20px;padding:15px}.opening-hours-summary h4{color:var(--success);margin:0 0 10px;font-size:14px}.opening-hours-summary .summary-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.opening-hours-summary .summary-item{border-bottom:1px solid #4caf5033;justify-content:space-between;padding:5px 0;font-size:13px;display:flex}.opening-hours-summary .summary-item .day{color:var(--success);text-transform:capitalize;font-weight:700}.opening-hours-summary .summary-item .hours{color:var(--text-muted);font-family:monospace}.opening-hours-summary .summary-item.closed .hours{color:var(--danger)}.opening-hours-summary .summary-item.closed{opacity:.7}.submit-btn{background:var(--grad-brand);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--t-default);border:none;width:100%;max-width:300px;margin:20px auto 0;padding:14px 28px;font-size:16px;font-weight:700;display:block}.submit-btn:hover:not(:disabled){box-shadow:var(--shadow-purple);transform:translateY(-2px)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.submit-btn.loading{color:#0000;position:relative}.submit-btn.loading:after{content:"";border:2px solid #fff;border-top-color:#0000;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.form-error{border-left:4px solid var(--danger);color:var(--danger);border-radius:var(--radius-md);background-color:#f4433626;margin-bottom:20px;padding:12px 16px;font-size:14px}@media (width<=768px){.add-etab-container{padding:15px}.add-etab-container h2{font-size:24px}.form-section{padding:20px}.form-section h3{font-size:18px}.form-section .form-row{flex-direction:column;gap:15px}.form-section .form-row .form-group{width:100%}.features-group{grid-template-columns:1fr}.gallery-preview{justify-content:center}.map-full{height:300px}.submit-btn{width:100%}}@media (width<=480px){.add-etab-container h2{font-size:20px}.form-section{padding:15px}.map-full{height:250px}.opening-hours-summary .summary-grid{grid-template-columns:1fr}}.my-appointments-container{max-width:900px;min-height:100vh;color:var(--text-primary);margin:0 auto;padding:40px 20px}.my-appointments-header{text-align:center;background:var(--grad-soft);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-bottom:40px;padding:30px 20px}.my-appointments-header .page-icon{margin-bottom:10px;font-size:48px}.my-appointments-header .page-title{background:var(--grad-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:8px;font-size:32px;font-weight:700}.my-appointments-header .page-subtitle{color:var(--text-muted);font-size:14px}.appointments-stats{flex-wrap:wrap;justify-content:center;gap:30px;margin-bottom:30px;display:flex}.stat-badge{background-color:var(--surface);border-radius:var(--radius-pill);color:var(--text-muted);align-items:center;gap:8px;padding:8px 16px;font-size:13px;display:flex}.stat-badge .stat-count{color:var(--text-primary);font-weight:700}.appointments-list{flex-direction:column;gap:20px;display:flex}.appointment-card{background-color:var(--surface-raised);border-radius:var(--radius-lg);border:1px solid var(--border);transition:var(--t-default);position:relative;overflow:hidden}.appointment-card:before{content:"";background:var(--status-color,var(--purple-mid));width:4px;height:100%;position:absolute;top:0;left:0}.appointment-card:hover{border-color:var(--purple-mid);box-shadow:var(--shadow-sm);transform:translate(4px)}.appointment-card-header{background-color:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:16px 20px;display:flex}.appointment-card-header h3{color:var(--text-primary);margin:0;font-size:18px;font-weight:700}.appointment-status{border-radius:var(--radius-pill);color:#fff;white-space:nowrap;padding:4px 12px;font-size:12px;font-weight:500}.appointment-card-body{color:var(--text-muted);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;padding:20px;display:grid}.appointment-card-body strong{color:var(--text-primary)}.appointment-card-body p{color:var(--text-muted)}.appointment-detail{color:var(--text-muted);align-items:center;gap:8px;font-size:14px;display:flex}.appointment-detail .detail-icon{min-width:24px;font-size:16px}.appointment-detail .detail-label{color:var(--text-primary);font-weight:500}.appointment-detail .detail-value{color:var(--text-muted)}.appointment-price{color:var(--success);font-size:16px;font-weight:700}.appointment-card-footer{background-color:var(--surface);border-top:1px solid var(--border);justify-content:flex-end;padding:16px 20px;display:flex}.penalty-notice{color:var(--danger);border-radius:var(--radius-md);background-color:#f4433626;margin-top:10px;padding:8px 12px;font-size:12px;display:inline-block}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.appointment-card{animation:.3s ease-out fadeInUp}@media (width<=768px){.my-appointments-container{padding:20px 15px}.my-appointments-header .page-title{font-size:28px}.appointment-card-body{grid-template-columns:1fr;gap:10px;padding:15px}.appointment-card-header{flex-direction:column;align-items:flex-start;padding:12px 15px}.appointment-service-name{font-size:16px}.appointment-card-footer{padding:12px 15px}.appointments-stats{gap:15px}.stat-badge{padding:6px 12px;font-size:12px}}.register-container{background:linear-gradient(135deg, var(--purple-deep) 0%, var(--dark) 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.register-card{background:var(--surface-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border);width:100%;max-width:500px;animation:.5s ease-out fadeIn;overflow:hidden}.register-card form{padding:0 30px 30px}.register-card .form-group{margin-bottom:1rem}.register-card .form-row{gap:20px;margin-bottom:0;display:flex}.register-card .form-row .form-group{flex:1;min-width:0}.image-preview{margin-top:.5rem}.image-preview img{object-fit:cover;border:3px solid var(--purple-mid);width:100px;height:100px;box-shadow:var(--shadow-sm);border-radius:50%}.submit-button{border-radius:var(--radius-md);cursor:pointer;width:100%;transition:var(--t-default);background:linear-gradient(135deg, var(--purple-mid) 0%, var(--magenta) 100%);color:#fff;border:none;margin-top:.5rem;padding:14px 24px;font-family:Jost,sans-serif;font-size:16px;font-weight:600}.submit-button:hover:not(:disabled){box-shadow:var(--shadow-purple);transform:translateY(-2px)}.submit-button:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (width<=576px){.register-card{max-width:calc(100% - 20px);margin:10px}.register-card form{padding:0 20px 20px}.register-card .form-row{flex-direction:column;gap:0}}.add-admin-container{max-width:700px;min-height:100vh;margin:0 auto;padding:40px 20px}.add-admin-card{background-color:var(--surface-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border);padding:30px}.add-admin-header{text-align:center;margin-bottom:30px}.add-admin-title{color:var(--text-primary);margin-bottom:8px;font-size:28px;font-weight:700}.add-admin-subtitle{color:var(--text-muted);font-size:14px}.add-admin-form{flex-direction:column;gap:20px;display:flex}@media (width<=768px){.add-admin-container{padding:20px 15px}.add-admin-card{padding:20px}.add-admin-title{font-size:24px}}@media (width<=576px){.add-admin-title{font-size:20px}}.edit-user-form{flex-direction:column;gap:20px;display:flex}.form-input-disabled{opacity:.6;cursor:not-allowed;background-color:var(--surface)!important}.edit-etab-container{max-width:900px;min-height:100vh;margin:0 auto;padding:20px}.edit-etab-container h1{color:var(--text-primary);text-align:center;background:var(--grad-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:30px;font-size:28px;font-weight:700}.gallery-item{display:inline-block;position:relative}.remove-btn{background-color:var(--danger);color:#fff;border:2px solid var(--surface-raised);cursor:pointer;width:24px;height:24px;transition:var(--t-fast);border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:12px;font-weight:700;line-height:1;display:flex;position:absolute;top:-8px;right:-8px}.remove-btn:hover{background-color:var(--danger-dark);transform:scale(1.15)}.form-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:15px;margin-top:30px;display:flex}.cancel-btn{min-width:150px}@media (width<=768px){.edit-etab-container{padding:15px}.edit-etab-container h1{font-size:24px}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}@media (width<=576px){.edit-etab-container h1{font-size:20px}}@media (width<=1200px){.container{padding:0 15px}.grid-4{grid-template-columns:repeat(3,1fr)}}@media (width<=992px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}.page-title{font-size:32px}.section-title{font-size:28px}}@media (width<=768px){.form-row{flex-direction:column;gap:15px}.grid,.stats-grid,.services-grid,.experts-grid,.establishments-grid,.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.day-column{width:300px}.sidebar-content{width:100%}.modal-content{width:95%;margin:10px}.filters,.filters-row,.types-row{flex-direction:column;align-items:stretch}.filters select,.filters-row select,.filter-row select,.filter-select{width:100%}.search-wrapper,.filters-search{width:100%;max-width:100%}.type-button{justify-content:center;width:100%}.page-title{font-size:28px}.section-title{font-size:24px}.page-header{padding:30px 15px}.page-header-icon{font-size:36px}.card-body{padding:15px}.establishment-header,.establishment-title-block{text-align:center;flex-direction:column}.cover-image{height:200px}.data-table th,.data-table td{padding:8px;font-size:12px}.action-buttons{flex-direction:column;gap:5px}.dashboard-header{flex-direction:column;align-items:flex-start}.dashboard-tabs{flex-direction:column}.dashboard-tabs .tab-button{text-align:center;width:100%}.tabs-container{flex-direction:column}.tab-button{width:100%}}@media (width<=576px){body{font-size:14px}.container{padding:0 12px}.section{padding:40px 15px}.card-body{padding:12px}.card-title{font-size:16px}.page-title{font-size:24px}.section-title{font-size:20px}.page-header-icon{font-size:32px}.form-input,.form-select,.form-textarea{padding:10px 12px;font-size:13px}.btn{padding:8px 16px;font-size:13px}.modal-content{width:98%;max-height:90vh}.modal-header,.modal-footer{padding:12px 15px}.modal-body{padding:15px}.login-card,.register-card{max-width:calc(100% - 20px);margin:10px}.login-form,.forgot-password-form,.reset-password-form{padding:20px}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.gallery-image{height:100px}.pagination{gap:10px}.pagination-prev,.pagination-next{padding:6px 12px;font-size:12px}.pagination-info{font-size:12px}}@media (width<=768px){.card-grid{grid-template-columns:1fr}.info-box{text-align:center;flex-direction:column;align-items:center}.gallery-item{width:calc(50% - 10px)}.gallery-preview{gap:10px}}@media (width<=576px){.card-grid{grid-template-columns:1fr}.page-card{padding:15px}.page-button{padding:6px 12px;font-size:12px}.info-box{padding:12px}}@media (width<=380px){.page-title{font-size:20px}.btn{padding:6px 12px;font-size:12px}.card-title{font-size:14px}.hours-row{flex-direction:column;align-items:flex-start;gap:5px}}.toast-container{z-index:99999;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:fixed;top:20px;right:20px}.toast{pointer-events:auto;box-shadow:var(--shadow-purple,0 4px 24px #6d21a840);background:#fff;border:1px solid #6d21a81a;border-radius:12px;align-items:center;gap:12px;min-width:300px;max-width:420px;padding:14px 18px;transition:opacity .3s,transform .3s;animation:.35s cubic-bezier(.16,1,.3,1) toastSlideIn;display:flex}.toast-leaving{animation:.3s forwards toastSlideOut}.toast-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:22px;display:flex}.toast-icon.success{background:#4caf501f}.toast-icon.error{background:#f443361f}.toast-icon.warning{background:#ff98001f}.toast-icon.info{background:#2196f31f}.toast-content{color:#333;word-break:break-word;flex:1;font-size:14px;line-height:1.4}.toast-close{cursor:pointer;color:#bbb;background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:4px;font-size:16px;line-height:1;transition:all .2s}.toast-close:hover{color:#666;background:#0000000d}.toast-progress{border-radius:0 0 12px 12px;height:3px;animation:4s linear forwards toastProgress;position:absolute;bottom:0;left:0}.toast-progress.success{background:#4caf50}.toast-progress.error{background:#f44336}.toast-progress.warning{background:#ff9800}.toast-progress.info{background:#2196f3}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
