@charset "UTF-8";:root{--primary: #0f7a6b;--primary-600: #0c6a5d;--primary-700: #0a564c;--heading: #0b2b2c;--primary-glow: rgba(15, 122, 107, .28);--gold: #f2c75c;--gold-ink: #0b2b2c;--fill-ink: #0b2b2c;--blue-50: #e8f5f1;--blue-100: #d3ece5;--blue-200: #a9d9cb;--blue-300: #6fbfa9;--peach: #f9ddc8;--peach-soft: #fdeee2;--lavender: #e2f1ec;--lavender-soft: #eff8f4;--gradient-brand: linear-gradient(135deg, #14a08a 0%, #0f7a6b 55%, #0a564c 100%);--gradient-ink: linear-gradient(150deg, #0b2b2c 0%, #0f4d48 60%, #0f7a6b 130%);--bg: #f4f7f5;--surface: #ffffff;--surface-2: #f6f9f7;--border: #e3ebe7;--border-strong: #d0dcd6;--text: #344543;--text-muted: #6b7f7b;--text-faint: #a3b2ae;--success: #17a066;--success-soft: #e4f6ee;--warning: #d98a1a;--warning-soft: #fdf2e0;--danger: #e2574f;--danger-soft: #fdeae9;--info: #0f7a6b;--info-soft: #e8f5f1;--success-ink: #17795a;--warning-ink: #8a5a10;--danger-ink: #b42318;--radius-lg: 22px;--radius: 18px;--radius-sm: 12px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(11, 43, 44, .05);--shadow: 0 4px 16px -6px rgba(11, 43, 44, .1), 0 2px 6px -2px rgba(11, 43, 44, .05);--shadow-lg: 0 26px 52px -20px rgba(11, 43, 44, .26);--ring: 0 0 0 4px rgba(15, 122, 107, .15);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--sidebar-width: 264px;--topbar-height: 70px;--font: "Poppins", "Segoe UI", system-ui, -apple-system, sans-serif;--font-display: "Plus Jakarta Sans", "Poppins", "Segoe UI", system-ui, sans-serif}:root[data-theme=dark]{color-scheme:dark;--primary: #1f9e88;--primary-600: #23b097;--primary-700: #2bc4a8;--heading: #ecf5f2;--primary-glow: rgba(31, 158, 136, .35);--fill-ink: #1f9e88;--blue-50: rgba(43, 179, 155, .13);--blue-100: rgba(43, 179, 155, .2);--blue-200: rgba(43, 179, 155, .34);--blue-300: #4fc3ab;--peach: rgba(249, 221, 200, .16);--peach-soft: rgba(249, 221, 200, .08);--lavender: rgba(43, 179, 155, .14);--lavender-soft: rgba(43, 179, 155, .07);--gradient-brand: linear-gradient(135deg, #1fa88f 0%, #178a76 55%, #106b5c 100%);--gradient-ink: linear-gradient(150deg, #0a1312 0%, #0f2624 60%, #14524a 130%);--bg: #0b1413;--surface: #131f1e;--surface-2: #192826;--border: #233532;--border-strong: #2f4642;--text: #d0dfdb;--text-muted: #8ea6a0;--text-faint: #5f7974;--success: #3fcf91;--success-soft: rgba(63, 207, 145, .14);--warning: #f0aa3e;--warning-soft: rgba(240, 170, 62, .14);--danger: #f2756d;--danger-soft: rgba(242, 117, 109, .14);--info: #4fc3ab;--info-soft: rgba(43, 179, 155, .13);--success-ink: #5fdca5;--warning-ink: #f3bd62;--danger-ink: #f79a93;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .35);--shadow: 0 4px 16px -6px rgba(0, 0, 0, .55), 0 2px 6px -2px rgba(0, 0, 0, .35);--shadow-lg: 0 26px 52px -20px rgba(0, 0, 0, .7);--ring: 0 0 0 4px rgba(31, 158, 136, .25)}:root[data-theme=dark] .input.is-invalid,:root[data-theme=dark] app-password-field.is-invalid .input{background:#f2756d14}:root[data-theme=dark] .btn-danger:hover:not(:disabled){background:#f2756d38}:root[data-theme=dark] img{opacity:.94}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;font-family:var(--font);background:var(--bg);color:var(--text);font-size:14.5px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;color:var(--heading);text-wrap:balance}p{text-wrap:pretty}a{color:var(--primary);text-decoration:none}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}:where(a,button,summary,select,[role=button],[tabindex]):focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}.data-table,.num,.badge,.counter,[class*=stat-value],[class*=stat-num],.stats,.totals,.total,.amount,.price{font-variant-numeric:tabular-nums}.skip-link{border:0;font:inherit;cursor:pointer;position:absolute;left:12px;top:-60px;z-index:1100;padding:10px 16px;border-radius:var(--radius-sm);background:var(--primary);color:#fff;font-weight:600;transition:top .15s ease}.skip-link:focus{top:12px}::selection{background:#0f7a6b2e}*{scrollbar-width:thin;scrollbar-color:#c7d0e4 transparent}*::-webkit-scrollbar{width:9px;height:9px}*::-webkit-scrollbar-thumb{background:#c7d0e4;border-radius:9px}*::-webkit-scrollbar-thumb:hover{background:#aab6d2}*::-webkit-scrollbar-track{background:transparent}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-5)}.card-title{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--heading);margin-bottom:18px;display:flex;align-items:center;gap:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 22px;font-size:14px;font-weight:600;font-family:inherit;border-radius:var(--radius-pill);border:1.5px solid transparent;cursor:pointer;transition:transform .18s cubic-bezier(.22,1,.36,1),background .18s ease,box-shadow .18s ease,border-color .18s ease,color .18s ease;white-space:nowrap;letter-spacing:.005em}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:active:not(:disabled){transform:translateY(1px) scale(.98)}.btn:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--radius-pill)}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 10px 22px -10px var(--primary-glow)}.btn-primary:hover:not(:disabled){background:var(--primary-600);box-shadow:0 14px 26px -10px var(--primary-glow);transform:translateY(-1px)}.btn-primary:focus-visible{box-shadow:var(--ring),0 10px 22px -10px var(--primary-glow)}.btn-outline{background:var(--surface);color:var(--heading);border-color:var(--border-strong)}.btn-outline:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:var(--blue-50)}.btn-soft{background:var(--blue-100);color:var(--primary-700)}.btn-soft:hover:not(:disabled){background:var(--blue-200)}.btn-danger{background:var(--danger-soft);color:var(--danger)}.btn-danger:hover:not(:disabled){background:#fbd8d6}.btn-sm{padding:7px 15px;font-size:13px}.form-field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.form-field label{font-size:12.5px;font-weight:600;color:var(--heading)}.input,select.input,textarea.input{width:100%;padding:11px 15px;font-size:14px;font-family:inherit;color:var(--text);background:var(--surface);border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);outline:none;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:var(--text-faint)}.input:hover:not(:focus):not(:disabled){border-color:var(--blue-300)}.input:focus{border-color:var(--primary);box-shadow:var(--ring)}.input:disabled{background:var(--surface-2);color:var(--text-muted);cursor:not-allowed}.input.ng-invalid.ng-touched:not(:focus){border-color:var(--danger)}.req{color:var(--danger);font-weight:700;margin-left:1px}.input.is-invalid{border-color:var(--danger);background:snow}.input.is-invalid:focus{box-shadow:0 0 0 4px #e2574f26}.field-error{display:block;font-size:12.5px;font-weight:500;color:var(--danger);margin-top:2px;animation:field-error-in .18s ease}.form-summary{font-size:13px;color:var(--danger);font-weight:500;margin:0 0 10px}app-password-field.is-invalid .input{border-color:var(--danger);background:snow}.slot-picker.is-invalid,.phone-group:has(.is-invalid) .dial-wrap{border-color:var(--danger)!important}@keyframes field-error-in{0%{opacity:0;transform:translateY(-3px)}}@media(prefers-reduced-motion:reduce){.field-error{animation:none}}.table-wrap{overflow-x:auto;margin:0 -24px;padding:0 24px}table.data-table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:640px}.data-table th{text-align:left;font-size:12.5px;font-weight:600;color:var(--text-muted);padding:12px 14px;border-bottom:1px solid var(--border)}.data-table td{padding:15px 14px;border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text)}.data-table tr:last-child td{border-bottom:none}@media(max-width:640px){.table-wrap:has(>.data-table.stack){margin:0;padding:0;overflow:visible}table.data-table.stack{min-width:0}.data-table.stack thead{display:none}.data-table.stack tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;padding:14px 2px;border-bottom:1px solid var(--border)}.data-table.stack tbody tr:last-child{border-bottom:none}.data-table.stack td{display:block;padding:0;border:none;min-width:0;overflow-wrap:anywhere}.data-table.stack td[data-label]:before{content:attr(data-label);display:block;margin-bottom:3px;font-size:12px;font-weight:600;color:var(--text-muted)}.data-table.stack td:first-child,.data-table.stack td.cell-wide{grid-column:1/-1}.data-table.stack td:empty{display:none}}.data-table tbody tr{transition:background .12s}.data-table tbody tr:hover{background:var(--surface-2)}.avatar-sm{width:38px;height:38px;border-radius:12px;background:var(--blue-100);color:var(--primary-700);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex-shrink:0}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;font-size:12px;font-weight:600;border-radius:999px;text-transform:capitalize;line-height:1.5}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.badge-confirmed,.badge-completed,.badge-success{background:var(--success-soft);color:var(--success)}.badge-pending,.badge-warning{background:var(--warning-soft);color:var(--warning)}.badge-cancelled,.badge-no_show,.badge-failed,.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge-simulated,.badge-info{background:var(--info-soft);color:var(--info)}.badge-neutral{background:var(--surface-2);color:var(--text-muted)}.chip{padding:8px 17px;border-radius:999px;border:1.5px solid var(--border-strong);background:var(--surface);color:var(--text-muted);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;text-transform:capitalize;transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.chip:active{transform:scale(.97)}@media(hover:hover){.chip:not(.chip-active):hover{border-color:var(--primary);color:var(--primary)}}.chip-active,.chip-active:hover{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 10px 20px -10px var(--primary-glow)}.page-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.page-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:var(--space-5)}.page-header h1{font-size:23px;font-weight:700;letter-spacing:-.02em}.page-header p{margin:4px 0 0;color:var(--text-muted);font-size:14px;max-width:70ch}.empty-state{text-align:center;color:var(--text-muted);padding:52px 16px;font-size:14px}.empty-state .icon{font-size:38px;display:block;margin-bottom:12px}.alert{background:var(--danger-soft);color:var(--danger);border:1px solid #f6cecb;border-radius:var(--radius-sm);padding:11px 14px;font-size:13px;margin-bottom:14px}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.rise{animation:rise-in .4s cubic-bezier(.22,1,.36,1) both}.rise-1{animation-delay:.05s}.rise-2{animation-delay:.1s}.rise-3{animation-delay:.15s}.rise-4{animation-delay:.2s}.rise-5{animation-delay:.25s}@media(prefers-reduced-motion:reduce){.rise{animation:none}}.muted{color:var(--text-muted)}.faint{color:var(--text-faint);font-size:12.5px}.spacer{flex:1}@media(max-width:640px){.page-header h1{font-size:20px}.card{padding:18px}.table-wrap{margin:0 -18px;padding:0 18px}}.modal-overlay{position:fixed;inset:0;z-index:1000;background:#0b2b2c73;display:grid;place-items:center;padding:20px;overflow-y:auto;animation:overlay-in .15s ease}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;width:100%;max-width:400px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;box-shadow:0 24px 60px -20px #0b2b2c73;animation:modal-in .16s ease}.modal h3{margin:0 0 8px;color:var(--heading);font-size:18px}.modal p{margin:0 0 22px;color:var(--text);font-size:14px;line-height:1.55}.modal-actions{display:flex;gap:10px;justify-content:flex-end}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.modal-overlay,.modal{animation:none}}@media(max-width:520px){.modal-overlay{padding:12px}.modal{padding:18px}.modal-actions{flex-direction:column-reverse}.modal-actions .btn{width:100%}}main[tabindex="-1"]:focus{outline:none}.set-row{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:var(--space-2) var(--space-6);padding:var(--space-5) 0;border-bottom:1px solid var(--border)}.set-row:last-of-type{border-bottom:0}.set-label{display:flex;flex-direction:column;gap:4px;min-width:0}.set-label label,.set-label-text{font-size:14px;font-weight:600;color:var(--heading)}.set-hint{font-size:12.5px;color:var(--text-muted);line-height:1.5}.set-hint.set-price{margin-top:6px;color:var(--text);font-weight:600}.set-control{display:flex;flex-direction:column;gap:6px;min-width:0;max-width:520px}.set-link{font-size:12.5px}.save-bar{position:sticky;bottom:0;display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5);background:var(--blue-50);border-top:1px solid var(--blue-100);animation:save-bar-in .2s ease}.save-text{margin-right:auto;font-size:13.5px;font-weight:600;color:var(--primary-700)}@keyframes save-bar-in{0%{opacity:0;transform:translateY(6px)}}@media(prefers-reduced-motion:reduce){.save-bar{animation:none}}.btn-ghost{background:transparent;color:var(--text)}.btn-ghost:hover:not(:disabled){background:var(--surface-2)}.danger-text{color:var(--danger)}.btn-outline.danger-text:hover:not(:disabled){border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}@media(max-width:720px){.set-row{grid-template-columns:minmax(0,1fr);padding:var(--space-4) 0}}
