:root{--color-bg:#0b0b0e;--color-bg-elevated:#131318;--color-surface:#191921;--color-surface-strong:#23232f;--color-surface-glass:#191921bf;--color-line:#ffffff14;--color-line-strong:#ffffff29;--color-text:#fcf9f2;--color-muted:#a8a296;--color-subtle:#6e685c;--color-primary:#f6c800;--color-primary-hover:#ffda33;--color-primary-dark:#c79f00;--color-primary-ink:#141006;--color-primary-glow:#f6c80033;--color-danger:#ef4444;--color-success:#22c55e;--color-warning:#eab308;--color-info:#3b82f6;--gradient-primary:linear-gradient(135deg, #f6c800 0%, #d89c00 100%);--gradient-card:linear-gradient(180deg, #ffffff0d 0%, #ffffff03 100%);--gradient-gold-subtle:linear-gradient(135deg, #f6c8001f 0%, #f6c80005 100%);--gradient-dark:linear-gradient(180deg, #0e0e12 0%, #15151c 100%);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-soft:0 16px 40px -8px #0009, 0 4px 12px -2px #0006;--shadow-card:0 8px 30px #00000073;--shadow-glow:0 0 30px -5px #f6c80040;--shadow-focus:0 0 0 3px #f6c80059;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display:"Outfit", "DM Serif Display", "Bahnschrift", sans-serif;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box}html{background:var(--color-bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-behavior:smooth;-webkit-tap-highlight-color:transparent}body{min-width:320px;min-height:100vh;color:var(--color-text);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0000;background-image:radial-gradient(circle at 15% 15%,#f6c80012 0%,#0000 40%),radial-gradient(circle at 85% 75%,#f6c8000a 0%,#0000 45%),radial-gradient(circle,#19192180 0%,#0000 100%),linear-gradient(#09090b 0%,#111116 50%,#08080a 100%);background-position:0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;margin:0;font-size:15px;line-height:1.5;overflow-x:hidden}html[data-platform=android],html[data-platform=ios]{background:#08080a}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}h1,h2,h3,h4,h5,h6,p{word-break:break-word;margin:0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0a0a0e99}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#ffffff26;border:2px solid #0a0a0e99}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.app-shell{width:min(100%,1220px);min-height:100vh;padding:max(18px, env(safe-area-inset-top)) 16px max(32px, env(safe-area-inset-bottom));margin:0 auto;animation:.35s cubic-bezier(.16,1,.3,1) fadeIn}.native-shell{width:100%;padding:max(16px, env(safe-area-inset-top)) 14px calc(92px + max(16px, env(safe-area-inset-bottom)))}.offline-banner{top:env(safe-area-inset-top);z-index:50;background:var(--gradient-primary);min-height:40px;color:var(--color-primary-ink);letter-spacing:.02em;text-align:center;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.88rem;font-weight:800;display:flex;position:fixed;left:0;right:0;box-shadow:0 4px 20px #f6c8004d}.public-shell,.customer-shell,.admin-shell{gap:var(--space-6);display:grid}.topbar{justify-content:space-between;align-items:center;gap:var(--space-4);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-line);background:#131318a6;min-height:64px;padding:8px 16px;display:flex}.brand-mark{align-items:center;gap:var(--space-3);min-width:0;transition:transform var(--transition-fast);display:flex}.brand-mark:hover{transform:translateY(-1px)}.brand-symbol{border-radius:var(--radius-md);background:var(--gradient-primary);width:42px;height:42px;color:var(--color-primary-ink);font-family:var(--font-display);transition:box-shadow var(--transition-base), transform var(--transition-fast);border:1px solid #f6c80066;place-items:center;font-size:1.25rem;font-weight:900;display:grid;box-shadow:0 4px 16px #f6c80040}.brand-mark:hover .brand-symbol{transform:scale(1.04);box-shadow:0 6px 22px #f6c80066}.brand-title{gap:1px;min-width:0;display:grid}.brand-title strong{color:var(--color-text);font-family:var(--font-display);letter-spacing:-.01em;font-size:1.05rem;font-weight:700}.brand-title span,.eyebrow{color:var(--color-primary);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:800}.nav-row{align-items:center;gap:var(--space-2);scrollbar-width:none;display:flex;overflow-x:auto}.nav-row::-webkit-scrollbar{display:none}.nav-link{border-radius:var(--radius-md);min-width:max-content;min-height:40px;color:var(--color-muted);transition:all var(--transition-fast);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:.88rem;font-weight:600;display:inline-flex}.nav-link:hover{color:var(--color-text);border-color:var(--color-line);background:#ffffff0d}.nav-link.active{color:var(--color-primary);background:#f6c8001f;border-color:#f6c80059;box-shadow:0 0 15px #f6c8001a}.bottom-nav{right:12px;bottom:max(12px, env(safe-area-inset-bottom));z-index:30;border:1px solid var(--color-line-strong);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(20px);background:#0f0f14e0;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:8px;display:grid;position:fixed;left:12px;box-shadow:0 12px 36px #000000b3}.bottom-nav .nav-link{border-radius:var(--radius-lg);flex-direction:column;justify-content:center;gap:4px;min-width:0;min-height:52px;padding:6px 4px;font-size:.73rem;font-weight:700}.admin-frame{gap:var(--space-5);display:grid}.admin-sidebar{gap:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-line);background:#13131880;min-width:0;padding:16px;display:grid}.admin-nav{gap:var(--space-2);scrollbar-width:none;padding-bottom:4px;display:flex;overflow-x:auto}.admin-nav::-webkit-scrollbar{display:none}.admin-main{align-content:start;gap:var(--space-5);min-width:0;display:grid}.admin-header{border:1px solid var(--color-line);background:#13131880;min-height:58px}.hero{gap:var(--space-5);border-radius:var(--radius-xl);border:1px solid var(--color-line-strong);min-height:380px;box-shadow:var(--shadow-soft);background:radial-gradient(at 100% 0,#f6c8001f,#0000 55%),linear-gradient(135deg,#191921cc 0%,#0f0f14e6 100%);align-content:center;padding:40px 24px;display:grid;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;filter:blur(40px);background:radial-gradient(circle,#f6c80026 0%,#0000 70%);width:350px;height:350px;position:absolute;top:-50%;right:-20%}.hero h1{color:#fff;max-width:780px;font-family:var(--font-display);letter-spacing:-.02em;background:linear-gradient(#fff 30%,#d4d0c8 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:clamp(2.2rem,7.5vw,4.2rem);font-weight:800;line-height:1.05}.hero p{max-width:640px;color:var(--color-muted);font-size:1.08rem;font-weight:400;line-height:1.65}.catalog-hero{gap:var(--space-2);padding:var(--space-4) 0;display:grid}.catalog-hero p{max-width:680px;line-height:1.6}.detail-hero{border-bottom:1px solid var(--color-line);min-height:280px;padding-bottom:var(--space-5);justify-content:end}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding-block:var(--space-2);flex-wrap:wrap;display:flex}.page-header h1{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.8rem,6vw,3rem);font-weight:800;line-height:1.1}.page-header p{color:var(--color-muted);margin-top:6px;line-height:1.55}.section-title{font-family:var(--font-display);letter-spacing:-.01em;font-size:1.85rem;font-weight:700}.hero-actions,.section-actions,.dialog-actions{align-items:center;gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.button{border-radius:var(--radius-md);min-height:46px;color:var(--color-text);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:all var(--transition-fast);justify-content:center;align-items:center;gap:10px;padding:0 18px;font-size:.92rem;font-weight:700;display:inline-flex;position:relative;overflow:hidden}.button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.button:active{transform:translateY(0)}.button:disabled{cursor:not-allowed;opacity:.5;box-shadow:none!important;transform:none!important}.button:focus-visible,.control:focus-visible,.nav-link:focus-visible,.choice input:focus-visible+.choice-control,.switch input:focus-visible+.switch-track{box-shadow:var(--shadow-focus);outline:none}.button-primary{background:var(--gradient-primary);color:var(--color-primary-ink);font-weight:800;box-shadow:0 4px 18px #f6c80047}.button-primary:hover{background:linear-gradient(135deg,#ffda33 0%,#e6a800 100%);box-shadow:0 8px 25px #f6c8006b}.button-secondary{border:1px solid var(--color-line-strong);color:var(--color-text);background:#191921cc}.button-secondary:hover{color:var(--color-text);background:#23232fe6;border-color:#f6c80066}.button-ghost{color:var(--color-muted);background:0 0}.button-ghost:hover{color:var(--color-text);background:#ffffff0f}.button-danger{color:#fecaca;background:#ef444426;border:1px solid #ef44444d}.button-danger:hover{color:#fff;background:#ef444440;border-color:#ef444480}.icon-actions{gap:var(--space-1);display:inline-flex}.icon-actions .button{border-radius:var(--radius-sm);width:40px;min-height:40px;padding:0}.badge-row,.permission-grid{gap:var(--space-2);flex-wrap:wrap;display:flex}.permission-grid{grid-template-columns:1fr;display:grid}.permission-grid .choice{border:1px solid var(--color-line);border-radius:var(--radius-md);background:#ffffff08;align-items:flex-start;min-height:64px;padding:10px}.grid{gap:var(--space-5);display:grid}.grid-3{grid-template-columns:1fr}.card{gap:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-5);background:var(--gradient-card);-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow-card);transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-fast);display:grid}.card:hover{border-color:#ffffff24}.card h2,.card h3{font-family:var(--font-display);letter-spacing:-.01em;font-weight:700}.service-card-grid,.catalog-admin-grid,.slot-grid{gap:var(--space-4);display:grid}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{transition:transform var(--transition-base), border-color var(--transition-base), box-shadow var(--transition-base);align-content:start}.service-card:hover{box-shadow:0 12px 32px #00000080, var(--shadow-glow);border-color:#f6c80059;transform:translateY(-3px)}.service-card-media{border-radius:var(--radius-md);min-height:140px;color:var(--color-primary);background:radial-gradient(circle,#f6c80026,#0000 70%),repeating-linear-gradient(135deg,#ffffff08 0 1px,#0000 1px 14px),#14141a;border:1px solid #f6c80040;place-items:center;display:grid;box-shadow:inset 0 0 20px #00000080}.service-card-body{gap:var(--space-2);display:grid}.service-card-body h2{font-family:var(--font-display);font-size:1.25rem;font-weight:700}.service-card-footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--color-line);display:flex}.service-card-footer span{color:var(--color-muted);align-items:center;gap:6px;font-size:.88rem;font-weight:600;display:inline-flex}.service-card-footer strong{color:var(--color-primary);font-size:1.15rem;font-family:var(--font-display);font-weight:800}.category-filter{gap:var(--space-2);scrollbar-width:none;padding-bottom:6px;display:flex;overflow-x:auto}.category-filter::-webkit-scrollbar{display:none}.catalog-section{gap:var(--space-4);display:grid}.admin-metric-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.metric-card{border:1px solid var(--color-line);background:linear-gradient(135deg,#191921d9 0%,#0f0f14f2 100%);align-content:space-between;min-height:124px;position:relative;overflow:hidden}.metric-card:after{content:"";pointer-events:none;background:radial-gradient(circle at 100% 0,#f6c8001f,#0000 70%);width:60px;height:60px;position:absolute;top:0;right:0}.metric-card svg{color:var(--color-primary)}.metric-card strong{font-family:var(--font-display);letter-spacing:-.02em;color:#fff;font-size:2rem;font-weight:800}.metric-card span{color:var(--color-muted);font-size:.85rem;font-weight:600}.rank-row,.customer-summary{justify-content:space-between;align-items:center;gap:var(--space-3);border-top:1px solid var(--color-line);padding-top:var(--space-3);display:flex}.customer-summary{border-top:0;justify-content:flex-start;padding-top:0}.customer-detail-hero{align-items:center;gap:var(--space-3);border-bottom:1px solid var(--color-line);padding-bottom:var(--space-3);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.customer-detail-grid{gap:var(--space-3);display:grid}.customer-detail-grid .card{gap:6px}.customer-detail-grid strong{overflow-wrap:anywhere;align-items:center;gap:8px;min-width:0;display:inline-flex}.section-subtitle{color:var(--color-text);font-family:var(--font-display);letter-spacing:0;font-size:1.05rem}.rank-row span{border-radius:var(--radius-sm);min-width:36px;height:36px;color:var(--color-primary);background:#f6c8001f;place-items:center;font-size:.9rem;font-weight:800;display:grid}.customer-callout{background:var(--gradient-gold-subtle);border-color:#f6c80040;grid-template-columns:auto minmax(0,1fr);align-items:center}.customer-callout .button{grid-column:1/-1}.field{color:var(--color-muted);gap:8px;font-size:.85rem;font-weight:600;display:grid}.control{border:1px solid var(--color-line);border-radius:var(--radius-md);width:100%;min-height:48px;color:var(--color-text);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);background:#0f0f14b3;outline:0;padding:0 14px;font-size:.95rem}.control:hover{border-color:#fff3}.control:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus);background:#14141af2}.textarea{resize:vertical;min-height:110px;padding-top:12px;padding-bottom:12px}.field-error{color:#fecaca;font-size:.8rem;font-weight:600}.choice,.switch-row{align-items:center;gap:var(--space-3);min-height:48px;color:var(--color-text);cursor:pointer;display:flex}.choice input,.switch input{opacity:0;width:1px;height:1px;position:absolute}.choice-control{border:1px solid var(--color-line-strong);width:22px;height:22px;transition:all var(--transition-fast);background:#0f0f14cc;border-radius:6px;flex:none;place-items:center;display:grid}.radio-choice .choice-control{border-radius:999px}.choice input:checked+.choice-control{border-color:var(--color-primary);background:var(--color-primary);box-shadow:0 0 12px #f6c80066}.choice input:checked+.choice-control:after{background:var(--color-primary-ink);content:"";border-radius:3px;width:10px;height:10px}.radio-choice input:checked+.choice-control:after{border-radius:999px}.choice-copy,.switch-copy{gap:2px;display:grid}.choice-copy strong,.switch-copy strong{font-size:.95rem}.choice-copy small,.switch-copy small{color:var(--color-muted);line-height:1.45}.switch-row{justify-content:space-between}.switch{flex:none;display:inline-flex;position:relative}.switch-track{border:1px solid var(--color-line-strong);width:50px;height:28px;transition:background var(--transition-fast), border-color var(--transition-fast);background:#0f0f14cc;border-radius:999px;align-items:center;padding:3px;display:inline-flex}.switch-thumb{background:var(--color-muted);width:20px;height:20px;transition:transform var(--transition-fast), background var(--transition-fast);border-radius:999px}.switch input:checked+.switch-track{border-color:var(--color-primary);background:#f6c80038}.switch input:checked+.switch-track .switch-thumb{background:var(--color-primary);transform:translate(22px);box-shadow:0 0 10px #f6c80080}.toolbar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.toolbar .field{flex:auto;min-width:min(100%,220px)}.form-grid{gap:var(--space-4);display:grid}.form-split{gap:var(--space-3);display:grid}.table-wrap{border:1px solid var(--color-line);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#13131880;overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%;min-width:620px}th,td{border-bottom:1px solid var(--color-line);padding:14px 16px}th{color:var(--color-muted);letter-spacing:.06em;text-transform:uppercase;background:#ffffff05;font-size:.76rem;font-weight:800}tbody tr{transition:background var(--transition-fast)}tbody tr:hover{background:#f6c80008}tbody tr:last-child td{border-bottom:0}.pagination{justify-content:flex-end;align-items:center;gap:var(--space-3);color:var(--color-muted);padding-top:var(--space-2);font-size:.9rem;font-weight:700;display:flex}.booking-flow{gap:var(--space-5)}.stepper{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.step{border:1px solid var(--color-line);border-radius:var(--radius-md);min-height:42px;color:var(--color-muted);transition:all var(--transition-fast);background:#13131866;align-items:center;padding:8px 14px;font-size:.82rem;font-weight:700;display:flex}.step.active{color:var(--color-primary);background:#f6c8001f;border-color:#f6c80066;box-shadow:0 0 15px #f6c8001a}.service-pick-grid{gap:var(--space-3);margin-top:var(--space-2);display:grid}.pick-card{border:1px solid var(--color-line);border-radius:var(--radius-md);min-height:76px;color:var(--color-text);text-align:left;cursor:pointer;transition:all var(--transition-fast);background:#13131899;gap:4px;padding:14px;display:grid}.pick-card:hover{background:#191921cc;border-color:#fff3}.pick-card.selected{border-color:var(--color-primary);box-shadow:var(--shadow-focus);background:#f6c80014}.pick-card span,.booking-summary span{color:var(--color-muted);font-size:.85rem}.booking-summary{align-content:center;gap:2px;min-height:48px;display:grid}.badge{border-radius:var(--radius-full);letter-spacing:.02em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;width:fit-content;min-height:28px;padding:0 12px;font-size:.75rem;font-weight:800;display:inline-flex}.badge-neutral{color:var(--color-muted);background:#ffffff14;border:1px solid #ffffff1f}.badge-success{color:#86efac;background:#22c55e26;border:1px solid #22c55e4d}.badge-warning{color:#fde68a;background:#eab30826;border:1px solid #eab3084d}.badge-danger{color:#fecaca;background:#ef444426;border:1px solid #ef44444d}.badge-info{color:#bfdbfe;background:#3b82f626;border:1px solid #3b82f64d}.feedback-state{align-content:center;place-items:center;gap:var(--space-2);border:1px dashed var(--color-line-strong);border-radius:var(--radius-lg);min-height:220px;padding:var(--space-6);color:var(--color-muted);text-align:center;background:#1313184d;display:grid}.feedback-state strong{color:var(--color-text);font-size:1.1rem}.feedback-state.error{background:#ef44440d;border-color:#ef444473}.skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg,#15151c 0%,#22222d 50%,#15151c 100%) 0 0/220% 100%;min-height:96px;animation:1.5s infinite shimmer}.spin{animation:.9s linear infinite spin}.spinner{width:28px;height:28px;color:var(--color-primary);justify-content:center;align-items:center;display:inline-flex}.dialog-backdrop{z-index:40;-webkit-backdrop-filter:blur(8px);background:#000000b8;align-items:end;padding:16px;animation:.2s ease-out fadeIn;display:grid;position:fixed;inset:0}.dialog{border:1px solid var(--color-line-strong);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:min(100%,580px);max-height:calc(100vh - 32px);padding:var(--space-6);box-shadow:0 20px 60px #000c, var(--shadow-glow);background:#14141b;margin:0 auto;animation:.25s cubic-bezier(.16,1,.3,1) slideUp;overflow-y:auto}.dialog-header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.dialog-copy{color:var(--color-muted);line-height:1.55}.sheet-backdrop{z-index:45;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b3;justify-content:flex-end;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.sheet{align-content:start;gap:var(--space-4);border-left:1px solid var(--color-line-strong);width:min(100%,460px);max-height:100vh;padding:var(--space-6);box-shadow:var(--shadow-soft);background:#14141b;animation:.3s cubic-bezier(.16,1,.3,1) slideInRight;display:grid;overflow-y:auto}.sheet-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.sheet-header h2{font-family:var(--font-display);font-size:1.5rem}.sheet-header p{color:var(--color-muted);margin-top:6px;line-height:1.55}.toast-stack{right:16px;bottom:max(16px, env(safe-area-inset-bottom));z-index:60;gap:var(--space-2);pointer-events:none;width:min(380px,100vw - 32px);display:grid;position:fixed}.toast{pointer-events:auto;border:1px solid var(--color-line-strong);border-radius:var(--radius-md);color:var(--color-text);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#16161ef2;padding:14px 16px;font-size:.92rem;font-weight:600;animation:.25s cubic-bezier(.16,1,.3,1) slideInRight;box-shadow:0 12px 30px #0009}.toast-success{background:#142319f2;border-color:#22c55e80}.toast-danger{background:#261416f2;border-color:#ef444480}.login-panel{gap:var(--space-5);width:min(100%,450px);padding-bottom:max(24px, env(safe-area-inset-bottom));margin:56px auto;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;display:grid}.login-panel .card{padding:var(--space-6);border-color:var(--color-line-strong);background:linear-gradient(#191921e6 0%,#0f0f14f2 100%)}.appointment-list{gap:var(--space-3);display:grid}.appointment-tile{align-items:center;gap:var(--space-3);border-top:1px solid var(--color-line);padding-top:var(--space-3);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.appointment-tile .button{grid-column:1/-1;width:100%}.catalog-list-item{justify-content:space-between;align-items:flex-start;gap:var(--space-3);border-top:1px solid var(--color-line);padding-top:var(--space-3);display:flex}.catalog-list-item>div:first-child{min-width:0}.availability-row{align-items:center;gap:var(--space-2);border-top:1px solid var(--color-line);padding-top:var(--space-3);grid-template-columns:46px minmax(0,1fr) minmax(0,1fr);display:grid}.availability-row .switch-row{grid-column:1/-1}.not-found{text-align:center;place-items:center;min-height:70vh;display:grid}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position:-220% 0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.fade-in{animation:fadeIn var(--transition-base) forwards}.slide-up{animation:slideUp var(--transition-base) forwards}@media (width>=760px){.app-shell{padding:32px 28px 48px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.service-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.slot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.catalog-admin-grid{grid-template-columns:minmax(300px,.75fr) minmax(0,1.35fr)}.form-split{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-row{grid-template-columns:46px minmax(0,1fr) minmax(0,1fr) minmax(150px,.8fr)}.availability-row .switch-row{grid-column:auto}.stepper,.service-pick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.customer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-callout{grid-template-columns:auto minmax(0,1fr) auto}.customer-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-callout .button,.appointment-tile .button{grid-column:auto;width:auto}.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dialog-backdrop{align-items:center}.dialog{border-radius:var(--radius-xl)}}@media (width>=980px){.admin-frame{grid-template-columns:260px minmax(0,1fr);align-items:start}.admin-sidebar{align-content:start;min-height:calc(100vh - 64px);padding:20px 16px;position:sticky;top:24px}.admin-nav{gap:var(--space-1);padding-bottom:0;display:grid;overflow:visible}.admin-nav .nav-link{border-radius:var(--radius-md);justify-content:flex-start;min-height:44px}.admin-metric-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
