:root{--color-primary:#eab308;--color-on-primary:#0a0a0a;--color-secondary:#facc15;--color-accent:#eab308;--color-gold:#facc15;--color-gold-soft:#fde68a;--color-barber-red:#f87171;--color-barber-blue:#93b4f8;--color-background:#000;--color-foreground:#f5f5f4;--color-muted:#1a1a1a;--color-muted-foreground:#a3a3a3;--color-border:#2a2a2a;--color-destructive:#f87171;--color-ring:#eab308;--color-card:#141414;--color-warning:#fbbf24;--color-info:#eab308;--shadow-sm:0 1px 2px #0006;--shadow-md:0 6px 16px #00000073;--shadow-lg:0 16px 40px #0000008c;--shadow-accent:0 8px 24px #eab30840;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:999px;--font-sans:"Rubik", "Segoe UI", system-ui, -apple-system, sans-serif;--font-display:"Rubik", "Segoe UI", system-ui, sans-serif;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-8:48px;--space-10:64px;--space-12:96px;--transition:.2s cubic-bezier(.4, 0, .2, 1);--sidebar-w:260px}[data-theme=dark]{--color-primary:#facc15;--color-on-primary:#0a0a0a;--color-secondary:#eab308;--color-accent:#facc15;--color-gold:#facc15;--color-gold-soft:#fde68a;--color-barber-red:#f87171;--color-barber-blue:#93b4f8;--color-background:#000;--color-foreground:#f5f5f4;--color-muted:#161616;--color-muted-foreground:#a3a3a3;--color-border:#262626;--color-destructive:#f87171;--color-ring:#facc15;--color-card:#111;--color-warning:#fbbf24;--color-info:#facc15;--shadow-sm:0 1px 2px #0006;--shadow-md:0 6px 16px #00000073;--shadow-lg:0 16px 40px #0000008c;--shadow-accent:0 8px 24px #facc1540}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px}body{font-family:var(--font-sans);background:var(--color-background);color:var(--color-foreground);min-height:100vh;transition:background var(--transition), color var(--transition);direction:rtl;line-height:1.6}#root{min-height:100vh}h1,h2,h3,h4{font-weight:700;line-height:1.25;font-family:var(--font-display)}p{color:var(--color-muted-foreground)}a{color:var(--color-primary);text-decoration:none}button{cursor:pointer;font-family:inherit}img{max-width:100%;display:block}.container{width:100%;max-width:1160px;padding-inline:var(--space-5);margin-inline:auto}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=768px){.container{padding-inline:var(--space-4)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);transition:background var(--transition), color var(--transition), border-color var(--transition), transform .1s ease, box-shadow var(--transition);cursor:pointer;text-align:center;border:1px solid #0000;min-height:44px;font-weight:700;line-height:1;display:inline-flex}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}.btn-sm{padding:0 var(--space-3);min-height:36px;font-size:14px}.btn-md{padding:0 var(--space-5);font-size:15px}.btn-lg{padding:0 var(--space-6);min-height:52px;font-size:17px}.btn-full{width:100%}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-sm);border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){filter:brightness(1.08);box-shadow:var(--shadow-md);border-color:var(--color-secondary)}.btn-accent{background:linear-gradient(135deg, #b45309, var(--color-accent));color:#0f172a;box-shadow:var(--shadow-accent);border:1px solid #eab30880}.btn-accent:hover:not(:disabled){filter:brightness(1.08)}.btn-secondary{background:var(--color-secondary);color:var(--color-on-primary)}.btn-secondary:hover:not(:disabled){filter:brightness(1.08)}.btn-outline{border-color:var(--color-border);color:var(--color-foreground);background:0 0}.btn-outline:hover:not(:disabled){background:var(--color-muted);border-color:var(--color-ring);color:var(--color-primary)}.btn-ghost{color:var(--color-foreground);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--color-muted)}.btn-destructive{background:var(--color-destructive);color:#fff}.btn-destructive:hover:not(:disabled){filter:brightness(1.06)}.icon-btn{border-radius:var(--radius-md);width:44px;height:44px;color:var(--color-muted-foreground);transition:background var(--transition), color var(--transition);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--color-muted);color:var(--color-foreground)}.icon-btn:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}.field{gap:var(--space-1);margin-bottom:var(--space-4);flex-direction:column;display:flex}.field-label{color:var(--color-foreground);font-size:14px;font-weight:700}.field-hint{color:var(--color-muted-foreground);font-size:12.5px}.field-error{color:var(--color-destructive);font-size:12.5px;font-weight:600}.input{width:100%;min-height:46px;padding:0 var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-card);color:var(--color-foreground);transition:border-color var(--transition), box-shadow var(--transition);font-family:inherit;font-size:15px}.input::placeholder{color:var(--color-muted-foreground);opacity:.7}.input:focus{border-color:var(--color-ring);outline:none;box-shadow:0 0 0 3px #eab3082e}.input-error{border-color:var(--color-destructive)}textarea.input{min-height:110px;padding-block:var(--space-3);resize:vertical}select.input{cursor:pointer;appearance:auto}.card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5)}.badge{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);background:var(--color-muted);color:var(--color-muted-foreground);white-space:nowrap;font-size:12.5px;font-weight:700;display:inline-flex}.spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;flex-shrink:0;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.loading-wrap{align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-4);color:var(--color-muted-foreground);flex-direction:column;font-weight:600;display:flex}.alert{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid;font-size:14.5px;font-weight:600;display:flex}.alert-info{color:var(--color-info);background:#eab30814;border-color:#eab3084d}.alert-success{color:var(--color-accent);background:#eab30814;border-color:#eab3084d}.alert-error{color:var(--color-destructive);background:#dc262614;border-color:#dc26264d}.alert-warning{color:var(--color-warning);background:#d9770614;border-color:#d977064d}.empty-state{text-align:center;align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);flex-direction:column;display:flex}.empty-icon{border-radius:var(--radius-full);background:var(--color-muted);width:64px;height:64px;color:var(--color-primary);margin-bottom:var(--space-2);place-items:center;display:grid}.empty-state p{max-width:360px}.empty-action{margin-top:var(--space-3)}.modal-backdrop{padding:var(--space-4);z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a8c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:520px;max-height:90vh;animation:.2s modal-in;overflow-y:auto}@keyframes modal-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.modal-body{padding:var(--space-5)}.modal-footer{justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border);display:flex}.switch{border-radius:var(--radius-full);background:var(--color-border);width:48px;height:28px;transition:background var(--transition);border:none;flex-shrink:0;position:relative}.switch-on{background:var(--color-primary)}.switch-knob{width:22px;height:22px;box-shadow:var(--shadow-sm);transition:transform var(--transition);background:#fff;border-radius:50%;position:absolute;top:3px;right:3px}.switch-on .switch-knob{transform:translate(-20px)}.switch:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}.segmented{background:var(--color-muted);border-radius:var(--radius-md);gap:4px;padding:4px;display:inline-flex}.segmented-btn{color:var(--color-muted-foreground);padding:var(--space-2) var(--space-4);border-radius:calc(var(--radius-md) - 4px);cursor:pointer;min-height:40px;transition:background var(--transition), color var(--transition), box-shadow var(--transition);background:0 0;border:none;font-family:inherit;font-size:14px;font-weight:700}.segmented-active{background:var(--color-card);color:var(--color-foreground);box-shadow:var(--shadow-sm)}.page-header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.page-title h1{font-size:26px}.page-title p{margin-top:var(--space-1)}.layout{flex-direction:column;min-height:100vh;display:flex}.layout-main{padding-top:var(--space-6);flex:1;padding-bottom:130px}.site-header{z-index:50;background:var(--color-card);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);position:sticky;top:0}.site-header-inner{justify-content:space-between;align-items:center;gap:var(--space-4);height:68px;display:flex}.brand{align-items:center;gap:var(--space-2);display:flex}.brand-logo-img{object-fit:contain;width:auto;max-width:200px;height:52px;display:block}.admin-brand .brand-logo-img{height:52px}.footer-brand .brand-logo-img{height:48px}.brand-logo{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--color-primary), var(--color-secondary));width:38px;height:38px;color:var(--color-on-primary);box-shadow:var(--shadow-md);place-items:center;display:grid}.brand-name{color:var(--color-foreground);font-size:20px;font-weight:900}.brand-sub{color:var(--color-primary)}.site-nav{align-items:center;gap:var(--space-1);display:flex}.nav-link{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);color:var(--color-muted-foreground);transition:color var(--transition), background var(--transition);cursor:pointer;background:0 0;border:none;font-size:15px;font-weight:700;display:inline-flex}.nav-link:hover,.nav-link-active{color:var(--color-primary);background:var(--color-muted)}.site-actions{align-items:center;gap:var(--space-2);display:flex}.user-chip{align-items:center;gap:var(--space-2);padding-inline-start:var(--space-2);display:flex}.user-avatar{border-radius:var(--radius-full);background:var(--color-primary);width:34px;height:34px;color:var(--color-on-primary);place-items:center;display:grid}.user-name{font-size:14px;font-weight:700}.menu-toggle{display:none}.mobile-menu{z-index:49;background:var(--color-card);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-lg);padding:var(--space-3);position:absolute;top:68px;left:0;right:0}.mobile-nav{gap:var(--space-1);flex-direction:column;display:flex}.mobile-logout{color:var(--color-destructive)}.mobile-logout:hover{color:var(--color-destructive);background:#dc262614}.site-footer{border-top:1px solid var(--color-border);background:var(--color-card);padding-block:var(--space-6);padding-bottom:130px}@media (width<=480px){.site-footer{padding-bottom:170px}}.site-footer-inner{gap:var(--space-3);flex-direction:column;display:flex}.footer-brand{align-items:center;gap:var(--space-2);display:flex}.footer-info{gap:var(--space-4);flex-wrap:wrap;display:flex}.footer-item{align-items:center;gap:var(--space-1);color:var(--color-muted-foreground);font-size:14px;display:inline-flex}.footer-admin{color:var(--color-primary);font-weight:700}.footer-copy{font-size:13px}.credit-line{color:var(--color-muted-foreground);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:center;align-items:center;font-size:13px;display:flex}.credit-line strong{color:var(--color-foreground);font-weight:800}.credit-line a{color:var(--color-primary);font-weight:700;text-decoration:none}.credit-line a:hover{text-decoration:underline}.credit-line>*+:before{content:"|";margin-inline:var(--space-3);color:var(--color-border);font-weight:400}@media (width<=480px){.credit-line{flex-direction:column;gap:0;font-size:14px}.credit-line>*+:before{content:none}.credit-line>*+*{text-align:center;border-top:1px solid var(--color-border);width:100%;padding-top:var(--space-2);margin-top:var(--space-2)}}.bottom-nav{bottom:var(--space-4);z-index:70;justify-content:space-between;align-items:flex-start;gap:var(--space-2);padding:var(--space-1) var(--space-4);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);width:min(460px,100vw - 24px);display:flex;position:fixed;left:50%;transform:translate(-50%)}.bottom-nav-item{min-width:96px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-muted-foreground);transition:color var(--transition), background var(--transition);flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:12px;font-weight:700;text-decoration:none;display:flex}.bottom-nav-item:hover,.bottom-nav-active{color:var(--color-primary);background:var(--color-muted)}.bottom-nav-cta{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-muted-foreground);transition:color var(--transition);flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:12px;font-weight:700;text-decoration:none;display:flex}.bottom-nav-cta:hover{color:var(--color-primary)}.bottom-nav-cta-btn{background:linear-gradient(135deg, var(--color-primary), var(--color-secondary));width:58px;height:58px;color:var(--color-on-primary);box-shadow:var(--shadow-accent);border:3px solid var(--color-card);border-radius:50%;place-items:center;margin-top:-34px;transition:transform .1s;display:grid}.bottom-nav-cta-btn:hover{transform:scale(1.06)}@media (width<=480px){.bottom-nav-item,.bottom-nav-cta{min-width:0;padding:var(--space-2)}}@media (width<=860px){.site-nav{display:none}.menu-toggle{display:inline-flex}.user-name{display:none}}.admin-shell{background:var(--color-background);min-height:100vh;display:flex}.admin-sidebar{width:var(--sidebar-w);background:var(--color-card);border-left:1px solid var(--color-border);z-index:60;flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:sticky;top:0}.admin-brand{align-items:center;gap:var(--space-3);padding:var(--space-5);border-bottom:1px solid var(--color-border);display:flex}.admin-brand-name{font-size:17px;font-weight:900}.admin-brand-sub{color:var(--color-muted-foreground);font-size:12px;font-weight:600}.sidebar-close{margin-inline-start:auto;display:none}.admin-nav{padding:var(--space-4);gap:var(--space-1);flex-direction:column;flex:1;display:flex;overflow-y:auto}.admin-nav-link{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);color:var(--color-muted-foreground);transition:background var(--transition), color var(--transition);font-size:15px;font-weight:700;display:flex}.admin-nav-link:hover{background:var(--color-muted);color:var(--color-primary)}.admin-nav-active{background:var(--color-primary);box-shadow:var(--shadow-md);color:var(--color-on-primary)!important}.admin-nav-active:hover{background:var(--color-primary)}.admin-sidebar-footer{padding:var(--space-4);border-top:1px solid var(--color-border);gap:var(--space-3);flex-direction:column;display:flex}.admin-user{align-items:center;gap:var(--space-3);display:flex}.admin-user .user-avatar{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-primary), var(--color-secondary));width:40px;height:40px;color:var(--color-on-primary);place-items:center;font-weight:800;display:grid}.admin-user-meta{flex-direction:column;line-height:1.3;display:flex}.admin-user-meta strong{font-size:14px}.admin-user-meta span{color:var(--color-muted-foreground);font-size:12px}.admin-sidebar-btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-destructive);cursor:pointer;transition:background var(--transition);background:0 0;border:none;font-size:14px;font-weight:700;display:flex}.admin-sidebar-btn:hover{background:#dc262614}.admin-main{flex:1;min-width:0}.admin-topbar{z-index:40;padding:var(--space-3) var(--space-5);background:var(--color-card);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.admin-topbar-side{align-items:center;gap:var(--space-2);display:flex}.sidebar-toggle{display:none}.admin-back-link{color:var(--color-muted-foreground);font-size:14px;font-weight:700}.admin-back-link:hover{color:var(--color-primary)}.admin-content{padding-top:var(--space-6);padding-bottom:var(--space-10)}.admin-backdrop{z-index:55;background:#0f172a80;position:fixed;inset:0}@media (width<=900px){.admin-sidebar{inset-inline-start:auto;transition:transform var(--transition);box-shadow:var(--shadow-lg);position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.admin-sidebar-open{transform:translate(0)}.sidebar-close,.sidebar-toggle{display:inline-flex}}.stat-grid{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.stat-card{align-items:center;gap:var(--space-4);display:flex}.stat-icon{border-radius:var(--radius-md);color:#fff;flex-shrink:0;place-items:center;width:52px;height:52px;display:grid}.stat-value{font-size:26px;font-weight:900;line-height:1.1}.stat-label{color:var(--color-muted-foreground);font-size:13.5px;font-weight:600}.toast-wrap{bottom:var(--space-5);gap:var(--space-2);z-index:200;flex-direction:column;width:min(420px,100vw - 32px);display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{align-items:center;gap:var(--space-3);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-3) var(--space-4);font-size:14.5px;font-weight:600;animation:.25s toast-in;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.toast-icon{flex-shrink:0;place-items:center;display:grid}.toast-success .toast-icon{color:var(--color-accent)}.toast-error .toast-icon{color:var(--color-destructive)}.toast-info .toast-icon{color:var(--color-primary)}.muted-text{color:var(--color-muted-foreground);font-size:14.5px}.section-title{margin:var(--space-6) 0 var(--space-4);font-size:20px}.card-title{margin-bottom:var(--space-3);font-size:17px}.form-grid-2{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.switch-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;font-size:14.5px;font-weight:700;display:flex}.danger-hover:hover{color:var(--color-destructive);background:#b91c1c14}.search-input{align-items:center;display:flex;position:relative}.search-input svg{color:var(--color-muted-foreground);pointer-events:none;position:absolute;inset-inline-start:var(--space-3)}.search-input .input{width:260px;padding-inline-start:40px}.color-input{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-card);cursor:pointer;width:100%;height:46px;padding:4px}.shop-pill{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);color:var(--color-accent);background:#eab30824;font-size:13px;font-weight:700;display:inline-flex}.shop-pill.shop-closed{color:var(--color-destructive);background:#b91c1c1a}.shop-dot{background:currentColor;border-radius:50%;width:8px;height:8px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.auth-shell{min-height:100vh;padding:var(--space-8) var(--space-4);background:radial-gradient(600px 380px at 88% -8%, #eab3081f, transparent), radial-gradient(520px 320px at 0% 105%, #eab3080f, transparent), var(--color-background);flex-direction:column;align-items:center;display:flex}.auth-shell:before,.auth-shell:after{content:"";margin-block:auto}.auth-card-wrap{width:100%;max-width:430px}.auth-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-8)}.auth-brand{margin-bottom:var(--space-6);justify-content:center;display:flex}.auth-brand-logo{object-fit:contain;width:auto;max-width:300px;height:130px}.auth-form-head{margin-bottom:var(--space-6)}.auth-form-head h2{margin-bottom:var(--space-2);font-size:26px;font-weight:900}.auth-form-head p{font-size:14.5px}.auth-form-footer{margin-top:var(--space-5)}.auth-switch{text-align:center;font-size:14.5px}.auth-switch a{color:var(--color-primary);font-weight:800}.auth-switch a:hover{text-decoration:underline}.auth-credit{width:100%;margin-top:var(--space-8);padding-inline:var(--space-2)}.auth-credit .credit-line{padding-top:var(--space-3);border-top:1px solid var(--color-border);margin-top:0}@media (width<=480px){.auth-card{padding:var(--space-6)}}.booking-page{max-width:860px}.booking-grid{margin-top:var(--space-4)}.wizard-steps{align-items:center;gap:var(--space-2);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.wizard-step{align-items:center;gap:var(--space-2);color:var(--color-muted-foreground);font-size:13.5px;font-weight:800;display:flex}.wizard-step:not(:last-child):after{content:"";background:var(--color-border);border-radius:2px;width:40px;height:2px}.wizard-dot{border-radius:var(--radius-full);background:var(--color-muted);border:1.5px solid var(--color-border);min-width:30px;height:30px;color:var(--color-muted-foreground);white-space:nowrap;place-items:center;padding:0 10px;font-size:12.5px;display:grid}.wizard-active .wizard-dot{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-primary)}.step-title{margin-bottom:var(--space-3);font-size:19px}.step-sub{margin-bottom:var(--space-4)}.step-note{color:var(--color-muted-foreground);margin-top:var(--space-3);font-size:13px}.step-actions{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.calendar{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4)}.calendar-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.calendar-title{font-size:16px;font-weight:900;font-family:var(--font-display)}.calendar-weekdays{text-align:center;margin-bottom:var(--space-2);grid-template-columns:repeat(7,1fr);display:grid}.calendar-weekday{color:var(--color-muted-foreground);font-size:12.5px;font-weight:700}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-day{border-radius:var(--radius-sm);min-height:44px;color:var(--color-foreground);cursor:pointer;transition:background var(--transition), color var(--transition), box-shadow var(--transition);background:0 0;border:none;font-family:inherit;font-size:15px;font-weight:600}.cal-day:hover:not(:disabled){background:var(--color-muted)}.cal-today{box-shadow:inset 0 0 0 2px var(--color-ring)}.cal-selected{box-shadow:var(--shadow-md);background:var(--color-accent)!important;color:var(--color-on-primary)!important}.cal-disabled{color:var(--color-muted-foreground);opacity:.35;cursor:not-allowed}.slots-grid{gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(84px,1fr));display:grid}.slot-btn{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-card);min-height:44px;color:var(--color-foreground);cursor:pointer;transition:border-color var(--transition), background var(--transition), color var(--transition);font-family:inherit;font-size:15px;font-weight:700}.slot-btn:hover{border-color:var(--color-ring)}.slot-selected{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-primary);box-shadow:var(--shadow-md)}.slots-sm{margin-top:var(--space-2)}.details-grid{gap:var(--space-4);grid-template-columns:1fr 1fr;align-items:start;display:grid}.summary-block{flex-direction:column;display:flex}.summary-row{padding:var(--space-3) 0;border-bottom:1px dashed var(--color-border);justify-content:space-between;align-items:center;font-size:15px;display:flex}.summary-row:last-child{border-bottom:none}.summary-label{color:var(--color-muted-foreground);font-weight:600}.summary-price{color:var(--color-accent);font-size:18px}.recur-options{margin-bottom:var(--space-4)}.recur-options .segmented{width:100%}.recur-options .segmented-btn{flex:1}.recur-detail{gap:var(--space-3);margin-bottom:var(--space-3);flex-direction:column;display:flex}.recur-badge{align-items:center;gap:var(--space-1);color:var(--color-accent);border-radius:var(--radius-full);padding:2px var(--space-2);margin-top:var(--space-1);background:#eab3081f;font-size:12px;font-weight:700;display:inline-flex}.done-wrap{text-align:center;max-width:520px;padding-top:var(--space-6);margin-inline:auto}.done-check{width:84px;height:84px;margin:0 auto var(--space-4);color:var(--color-accent);border:1.5px solid var(--color-accent);background:#eab30829;border-radius:50%;place-items:center;animation:.4s pop;display:grid}@keyframes pop{0%{opacity:0;transform:scale(.6)}70%{transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.done-wrap h1{margin-bottom:var(--space-2);font-size:28px}.done-wrap>p{margin-bottom:var(--space-5)}.done-summary{text-align:start;margin-bottom:var(--space-5)}.done-row{align-items:center;gap:var(--space-2);padding:var(--space-2) 0;font-size:15px;display:flex}.done-row span{align-items:center;gap:var(--space-2);display:inline-flex}.done-actions{gap:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}.services-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.service-card{--sc-color:var(--color-accent);gap:var(--space-3);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5);transition:transform var(--transition), box-shadow var(--transition);flex-direction:column;display:flex}.service-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.service-card.selectable{text-align:start;color:inherit;cursor:pointer;border-width:1.5px;font-family:inherit}.service-card.selectable:hover{border-color:var(--sc-color)}.service-icon{border-radius:var(--radius-md);background:color-mix(in srgb, var(--sc-color) 12%, transparent);width:48px;height:48px;color:var(--sc-color);place-items:center;display:grid}.service-info h3{margin-bottom:var(--space-1);font-size:18px;font-family:var(--font-sans);font-weight:800}.service-info p{font-size:14px}.service-meta{margin-top:var(--space-2);justify-content:space-between;align-items:center;display:flex}.service-price{color:var(--sc-color);font-size:19px;font-weight:900}.service-duration{align-items:center;gap:var(--space-1);color:var(--color-muted-foreground);font-size:13.5px;font-weight:600;display:inline-flex}.service-book{align-self:flex-end}.service-pick{align-self:flex-end;align-items:center;gap:var(--space-1);color:var(--sc-color);font-size:14px;font-weight:800;display:inline-flex}.appointments-list{gap:var(--space-3);flex-direction:column;display:flex}.appointment-card{gap:var(--space-4);padding:var(--space-4);grid-template-columns:70px 1fr auto;align-items:center;display:grid}.appointment-date-box{border-radius:var(--radius-md);background:linear-gradient(180deg, var(--color-primary), var(--color-secondary));border:1px solid var(--color-secondary);width:64px;height:72px;color:var(--color-on-primary);flex-direction:column;justify-content:center;align-items:center;display:flex}.ad-day{color:var(--color-on-primary);font-size:24px;font-weight:900;line-height:1}.ad-month{color:#57534e;font-size:12.5px;font-weight:700}.appointment-info{min-width:0}.appointment-head{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);flex-wrap:wrap;display:flex}.appointment-head h3{font-size:17px;font-family:var(--font-sans);font-weight:800}.appointment-meta{gap:var(--space-4);flex-wrap:wrap;display:flex}.meta-item{align-items:center;gap:var(--space-1);color:var(--color-muted-foreground);font-size:13.5px;font-weight:600;display:inline-flex}.appointment-notes{margin-top:var(--space-1);font-size:13.5px}.appointment-actions{gap:var(--space-2);flex-direction:column;display:flex}.muted-card{opacity:.65}.profile-grid{gap:var(--space-5);grid-template-columns:280px 1fr;align-items:start;max-width:860px;display:grid}.profile-card{gap:var(--space-4);flex-direction:column;display:flex}.profile-summary{text-align:center;align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.profile-summary h2{font-size:20px}.profile-summary .client-detail-links{align-items:center}@media (width<=700px){.profile-grid{grid-template-columns:1fr}}.admin-two-col{gap:var(--space-4);grid-template-columns:1fr 1fr;align-items:start;display:grid}.admin-mini-list{flex-direction:column;display:flex}.admin-mini-row{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px dashed var(--color-border);flex-wrap:wrap;display:flex}.admin-mini-row:last-child{border-bottom:none}.mini-time{min-width:150px;font-size:13.5px;font-weight:700}.mini-service{font-weight:700}.mini-client{color:var(--color-muted-foreground);font-size:14px}.quick-actions{gap:var(--space-2);flex-direction:column;display:flex}.quick-action{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-foreground);transition:border-color var(--transition), background var(--transition);display:flex}.quick-action:hover{border-color:var(--color-ring);background:var(--color-muted)}.quick-action svg{color:var(--color-accent)}.quick-action strong{font-size:14.5px;display:block}.quick-action span{color:var(--color-muted-foreground);font-size:12.5px}.filter-card{margin-bottom:var(--space-4)}.filter-toggle{align-items:center;gap:var(--space-2);border:1px solid var(--color-border);background:var(--color-card);color:var(--color-muted-foreground);border-radius:var(--radius-full);cursor:pointer;margin-bottom:var(--space-3);transition:all var(--transition);padding:8px 16px;font-family:inherit;font-size:13.5px;font-weight:700;display:inline-flex}.filter-toggle:hover{border-color:var(--color-ring);color:var(--color-foreground)}.filter-toggle-arrow{transition:transform var(--transition);font-size:10px}.filter-toggle-open{transform:rotate(180deg)}.quick-filters{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.quick-filter-chip{border:1px solid var(--color-border);background:var(--color-card);color:var(--color-foreground);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition);padding:8px 18px;font-family:inherit;font-size:13.5px;font-weight:700}.quick-filter-chip:hover{border-color:var(--color-ring)}.quick-filter-active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.quick-date{align-items:center;gap:var(--space-2);color:var(--color-muted-foreground);margin-inline-start:auto;display:inline-flex}.quick-date .input{min-height:40px}.filter-row{gap:var(--space-3);flex-wrap:wrap;align-items:flex-end;display:flex}.filter-field{flex:1;min-width:150px}.filter-field .input{min-height:42px}.filter-search{flex:1.4}.filter-search .search-input .input{width:100%}.filter-action{padding-bottom:var(--space-1)}.day-groups{gap:var(--space-6);flex-direction:column;display:flex}.day-group-title{margin-bottom:var(--space-3);align-items:center;gap:var(--space-2);font-size:18px;font-family:var(--font-sans);font-weight:800;display:flex}.day-count{color:var(--color-muted-foreground);font-size:13px;font-weight:600}.admin-appointments{gap:var(--space-2);flex-direction:column;display:flex}.admin-appointment{gap:var(--space-4);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);transition:border-color var(--transition);grid-template-columns:70px 1fr auto;align-items:center;display:grid}.admin-appointment:hover{border-color:var(--color-ring)}.row-cancelled{opacity:.55}.aa-time{flex-direction:column;align-items:center;display:flex}.aa-time strong{font-size:16px}.aa-time span{color:var(--color-muted-foreground);font-size:12.5px}.aa-main{min-width:0}.aa-title{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.aa-title strong{font-size:15.5px}.aa-client{gap:var(--space-2);color:var(--color-muted-foreground);flex-wrap:wrap;align-items:baseline;font-size:13.5px;display:flex}.aa-notes{margin-top:var(--space-1);font-size:13px}.aa-actions{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.status-btn{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);cursor:pointer;transition:filter var(--transition);border:none;font-family:inherit;font-size:12.5px;font-weight:700;display:inline-flex}.status-btn:hover{filter:brightness(.92)}.status-confirmed{color:var(--color-barber-blue);background:#1d4ed81f}.status-completed{color:#166534;background:#1665341f}.status-cancelled{color:var(--color-barber-red);background:#b91c1c1f}.clients-layout{grid-template-columns:340px 1fr}.client-list{gap:var(--space-1);flex-direction:column;max-height:70vh;display:flex;overflow-y:auto}.client-row{align-items:center;gap:var(--space-3);padding:var(--space-2);border-radius:var(--radius-md);cursor:pointer;text-align:start;color:var(--color-foreground);transition:background var(--transition);background:0 0;border:none;font-family:inherit;display:flex}.client-row:hover{background:var(--color-muted)}.client-row-active{background:#eab30824}.client-avatar{border-radius:var(--radius-full);background:var(--color-muted);width:38px;height:38px;color:var(--color-accent);flex-shrink:0;place-items:center;font-weight:800;display:grid}.client-row-active .client-avatar{background:var(--color-accent);color:var(--color-on-primary)}.client-meta{flex-direction:column;flex:1;min-width:0;display:flex}.client-meta strong{font-size:14.5px}.client-meta span{color:var(--color-muted-foreground);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.client-count{color:var(--color-muted-foreground);flex-shrink:0;font-size:12px;font-weight:700}.client-detail-head{align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.client-avatar-lg{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-primary), var(--color-secondary));border:1.5px solid var(--color-secondary);width:56px;height:56px;color:var(--color-on-primary);flex-shrink:0;place-items:center;font-size:22px;font-weight:900;display:grid}.client-detail-head h2{font-size:20px}.client-detail-links{gap:var(--space-1);color:var(--color-muted-foreground);margin-bottom:var(--space-2);flex-direction:column;font-size:13.5px;display:flex}.client-detail-links span{align-items:center;gap:var(--space-1);display:inline-flex}.history-list{gap:var(--space-2);flex-direction:column;display:flex}.history-row{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px dashed var(--color-border);display:flex}.history-row:last-child{border-bottom:none}.history-icon{color:var(--color-accent);place-items:center;display:grid}.history-main{flex-direction:column;flex:1;display:flex}.history-main strong{font-size:14px}.history-main span{color:var(--color-muted-foreground);font-size:12.5px}.admin-services-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.admin-service-card{padding:var(--space-4)}.admin-service-actions{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:var(--space-2);display:flex}.admin-settings-grid{gap:var(--space-4);grid-template-columns:1fr 1.4fr;align-items:start;display:grid}.shop-status-head{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.hours-list{gap:var(--space-2);flex-direction:column;display:flex}.hours-row{gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px dashed var(--color-border);grid-template-columns:120px 1fr auto;align-items:end;display:grid}.hours-row:last-child{border-bottom:none}.hours-day{flex-direction:column;display:flex}.hours-day strong{font-size:14.5px}.hours-closed-badge{color:var(--color-destructive);border-radius:var(--radius-full);padding:1px var(--space-2);background:#b91c1c14;width:fit-content;margin-top:2px;font-size:11.5px;font-weight:700}.hours-inputs{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.hours-field .field-label{font-size:12px}.hours-field .input{min-height:42px}.closed-list{gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column;display:flex}.closed-row{background:var(--color-muted);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);justify-content:space-between;align-items:center;display:flex}.closed-add{align-items:flex-end;gap:var(--space-2);display:flex}.closed-add .field{flex:1}.confirm-body{align-items:center;gap:var(--space-3);display:flex}.confirm-body svg{color:var(--color-warning);flex-shrink:0}.confirm-body p{font-weight:600}@media (width<=900px){.details-grid,.admin-two-col,.admin-settings-grid,.clients-layout{grid-template-columns:1fr}.admin-appointment{grid-template-columns:60px 1fr}.aa-actions{grid-column:1/-1}.hours-row{grid-template-columns:100px 1fr}.hours-row .btn{grid-column:1/-1}}@media (width<=560px){.appointment-card{grid-template-columns:60px 1fr}.appointment-actions{flex-direction:row;grid-column:1/-1}.filter-row{flex-direction:column;align-items:stretch}.filter-action .btn{width:100%}.quick-date{width:100%;margin-inline-start:0}.quick-date .input{width:100%}.form-grid-2{grid-template-columns:1fr}.search-input .input{width:100%}.services-grid{grid-template-columns:1fr}}
