@import url("https://fonts.googleapis.com/css2?family=Saira:wght@500;600;700;800&family=Hanken+Grotesk:wght@400;500;600;700&display=swap");:root{--font-display:"Saira",system-ui,sans-serif;--font-body:"Hanken Grotesk",system-ui,sans-serif;--bg:#fafafa;--surface:#fff;--surface-2:#f5f5f5;--panel:#fff;--ink:#171717;--ink-soft:#404040;--muted:#737373;--faint:#a3a3a3;--line:#e5e5e5;--line-strong:#d4d4d4;--brand:#1d4ed8;--brand-strong:#123b8f;--brand-dark:#0c2e7c;--brand-bright:#45e6ff;--brand-tint:#eaf4ff;--brand-gradient:linear-gradient(135deg,#8ff0ff,#45e6ff 45%,#0c2e7c);--nav-bg:#0a1b3d;--nav-ink:#fff;--nav-muted:#9fcbff;--nav-line:#1b2d55;--ok:#15803d;--ok-bg:#ecfdf3;--warn:#dc2626;--warn-bg:#fef2f2;--warn-strong:#b91c1c;--amber:#b45309;--amber-bg:#fff7ed;--info:#1e6be8;--info-bg:#eaf4ff;--chip:#f5f5f5;--radius-sm:6px;--radius:10px;--radius-lg:14px;--shadow-xs:0 1px 2px rgba(10,27,61,.06);--shadow-sm:0 1px 2px rgba(10,27,61,.06);--shadow:0 1px 3px rgba(10,27,61,.08),0 1px 2px rgba(10,27,61,.05);--shadow-md:0 4px 12px -2px rgba(10,27,61,.1),0 2px 6px -2px rgba(10,27,61,.06);--shadow-lg:0 12px 28px -6px rgba(10,27,61,.14),0 4px 10px -4px rgba(10,27,61,.08);--ring:0 0 0 3px rgba(29,78,216,.28)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);color:var(--ink);background:var(--bg);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.brand,.stat .value,h1,h2,h3{font-family:var(--font-display)}a{color:var(--brand);text-decoration:none}a:hover{color:var(--brand-strong);text-decoration:underline}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:var(--nav-bg);border-bottom:1px solid var(--nav-line);display:flex;flex-wrap:wrap;gap:6px;padding:8px 16px}.brand,.nav{align-items:center}.brand{color:#fff;font-weight:700;font-size:15px;letter-spacing:-.01em;display:inline-flex;gap:9px}.navtoggle{margin-left:auto;display:none;background:transparent;color:#e2e8f0;border:1px solid hsla(0,0%,100%,.2);border-radius:8px;padding:7px 12px;font-size:13px;font-weight:600;cursor:pointer}.navmenu{display:flex;flex:1 1;align-items:center;gap:2px}.navmenu a{color:var(--nav-muted);font-weight:500;font-size:13.5px;padding:7px 10px;border-radius:8px;line-height:1}.navmenu a:hover{color:#fff;background:hsla(0,0%,100%,.06);text-decoration:none}.navspacer{flex:1 1}.navuser{color:var(--nav-muted);font-size:13px;padding:0 6px}.navmenu form{margin:0}.navmenu a.active{color:#fff;background:hsla(0,0%,100%,.1)}.subnav{display:flex;gap:2px;align-items:center;padding:6px 22px;background:var(--card,#fff);border-bottom:1px solid var(--line);overflow-x:auto;-webkit-overflow-scrolling:touch}.subnav a{color:var(--ink-soft);font-size:13.5px;font-weight:500;padding:6px 10px;border-radius:8px;white-space:nowrap;line-height:1}.subnav a:hover{text-decoration:none}.subnav a.active,.subnav a:hover{color:var(--brand-strong);background:var(--brand-tint)}.subnav a.active{font-weight:600}@media (max-width:760px){.navtoggle{display:inline-block}.navmenu{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:1px;padding-top:8px}.navmenu.open{display:flex}.navmenu a{padding:11px 10px;font-size:14px}.navspacer{display:none}.navuser{padding:12px 10px 4px;border-top:1px solid var(--nav-line);margin-top:6px}}.wrap{max-width:1060px;margin:0 auto;padding:30px 22px 80px}h1{font-size:24px;font-weight:800;letter-spacing:-.02em;margin:2px 0 6px}h2{font-size:16px;font-weight:600;letter-spacing:-.01em;margin:28px 0 12px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px;margin-bottom:16px;box-shadow:var(--shadow)}.pagehead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.pagehead h1{margin:0}.statgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px 18px;box-shadow:var(--shadow)}.stat .label{color:var(--ink-soft);font-size:13px;font-weight:600}.stat .value{font-size:30px;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin-top:2px}label{display:block;font-size:12.5px;font-weight:600;color:var(--muted);margin:12px 0 6px;letter-spacing:.01em}input,select,textarea{width:100%;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius);font-size:14px;font-family:inherit;background:var(--surface);color:var(--ink);transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:var(--ring)}.row{display:flex;gap:14px;flex-wrap:wrap}.row>div{flex:1 1;min-width:150px}.btn,button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;background:var(--brand);color:#fff;border:1px solid transparent;border-radius:var(--radius);padding:0 18px;font-size:15px;font-weight:600;font-family:inherit;line-height:1;cursor:pointer;box-shadow:var(--shadow-xs);transition:background .12s ease,border-color .12s ease,box-shadow .12s ease}.btn:hover,button:hover{background:var(--brand-strong);text-decoration:none}.btn:active,button:active{background:var(--brand-dark)}button:focus-visible{outline:none;box-shadow:var(--ring)}.btn.ghost,button.ghost{background:var(--surface);box-shadow:none}.btn.ghost,button.ghost,button.ghost:hover{color:var(--ink);border-color:var(--line-strong)}button.ghost:hover{background:var(--bg)}button.ghost:active{background:var(--surface-2)}button.small{min-height:34px;padding:0 14px;font-size:14px;border-radius:var(--radius-sm)}button.danger{background:var(--warn);color:#fff;border-color:transparent}button.danger:active,button.danger:hover{background:var(--warn-strong)}button:disabled{background:var(--line);color:var(--faint);cursor:not-allowed;box-shadow:none}table{width:100%;border-collapse:collapse;font-size:14px}td,th{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line)}th{color:var(--faint);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.05em}tbody tr{transition:background .1s}tbody tr:hover{background:var(--surface-2)}tbody tr:last-child td{border-bottom:none}.chip{background:var(--surface-2);border:1px solid var(--line);font-size:12px;font-weight:500;color:var(--ink-soft)}.chip,.status{display:inline-block;border-radius:999px;padding:3px 10px}.status{font-size:11.5px;font-weight:600;text-transform:capitalize}.status.confirmed{background:var(--ok-bg);color:var(--ok)}.status.completed{background:var(--brand-tint);color:var(--brand-strong)}.status.cancelled,.status.no_show{background:var(--warn-bg);color:var(--warn)}.status.pending{background:var(--amber-bg);color:var(--amber)}.muted{color:var(--muted);font-size:13px}.slotgrid{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.slot{color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius);padding:9px 13px;box-shadow:none;cursor:pointer;font-size:14px;font-weight:500;transition:border-color .12s,color .12s,background .12s}.slot,.slot:hover{background:var(--surface)}.slot:hover{border-color:var(--brand);color:var(--brand)}.slot:active{background:var(--brand-tint);color:var(--brand-strong)}.slot.selected,.slot.selected:active,.slot.selected:hover{background:var(--brand);color:#fff;border-color:var(--brand)}.notice{padding:11px 14px;border-radius:var(--radius);font-size:14px;font-weight:600;margin:10px 0;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.notice.ok{border-left:3px solid var(--ok);color:var(--ok)}.notice.err{border-left:3px solid var(--warn);color:var(--warn)}.empty{color:var(--muted);padding:28px;text-align:center;font-size:14px}.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:640px){.wrap{padding:20px 14px 64px}h1{font-size:21px}h2{margin-top:22px}.card{padding:16px;border-radius:12px}table.stack thead{display:none}table.stack,table.stack tbody{display:block}table.stack tr{display:block;border:1px solid var(--line);border-radius:12px;padding:4px 14px;margin-bottom:10px}table.stack tr,table.stack tr:hover{background:var(--surface)}table.stack td{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid var(--line);text-align:right}table.stack td:last-child{border-bottom:none}table.stack td:before{content:attr(data-label);color:var(--faint);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;text-align:left;white-space:nowrap}table.stack td[data-label=""]{justify-content:flex-end}table.stack td[data-label=""]:before{content:none}}