@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";
:root,.dark-theme{--background:#09090b;--foreground:#fafafa;--card:#18181b;--card-foreground:#fafafa;--popover:#18181b;--popover-foreground:#fafafa;--primary:#c084fc;--primary-foreground:#fafafa;--primary-hover:#a855f7;--secondary:#27272a;--secondary-foreground:#fafafa;--muted:#27272a;--muted-foreground:#a1a1aa;--accent:#27272a;--accent-foreground:#fafafa;--destructive:#ef4444;--destructive-foreground:#fafafa;--border:#27272a;--input:#27272a;--ring:#c084fc;--radius:.75rem;--glass-bg:#18181b99;--glass-border:#ffffff14;--card-bg:#18181b;--card-border:#27272a;--card-shadow:0 4px 6px -1px #0000004d;--input-bg:#18181b;--input-text:#fafafa;--input-border:#3f3f46;--input-placeholder:#a1a1aa;--label-color:#fafafa;--heading:#fafafa;--gap:1.5rem;--padding-section:4rem;--padding-card:2.5rem;--padding-input:.75rem 1rem;--radius-component:.75rem}.light-theme{--background:#e2e8f0;--foreground:#334155;--card:#fff;--card-foreground:#0f172a;--popover:#fff;--popover-foreground:#0f172a;--primary:#2563eb;--primary-foreground:#fff;--primary-hover:#1d4ed8;--secondary:#f1f5f9;--secondary-foreground:#0f172a;--muted:#f1f5f9;--muted-foreground:#64748b;--accent:#f1f5f9;--accent-foreground:#0f172a;--border:#94a3b8;--input:#fff;--ring:#2563eb;--glass-bg:#fff;--glass-border:#94a3b8;--card-bg:#fff;--card-border:#94a3b8;--card-shadow:0 4px 6px -1px #0f172a14,0 2px 4px -2px #0f172a0a;--input-bg:#fff;--input-text:#0f172a;--input-border:#64748b;--input-placeholder:#64748b;--label-color:#1e293b;--heading:#0f172a}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--background);color:var(--foreground);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;min-height:100vh;font-family:Inter,sans-serif;line-height:1.5;display:flex}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;color:var(--heading,var(--foreground));font-family:Outfit,sans-serif;font-weight:600}a{color:inherit;text-decoration:none}.glass-panel{background:var(--surface-elevated,var(--card-bg,#18181b));-webkit-backdrop-filter:blur(12px);border:1.5px solid var(--card-border,var(--border,#27272a));border-radius:var(--radius-component,.75rem);padding:var(--padding-card,2.5rem);box-shadow:var(--card-shadow,0 4px 6px -1px #0000004d)}.btn-primary{background-color:var(--primary);color:var(--primary-foreground);border-radius:var(--radius-component);padding:var(--padding-input);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;font-family:inherit;font-weight:500;transition:all .2s ease-in-out;display:inline-flex}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb40}.input-field{background-color:var(--input-bg,#18181b);border:2px solid var(--input-border,#3f3f46);border-radius:var(--radius-component,.75rem);color:var(--input-text,#fafafa);padding:var(--padding-input,.75rem 1rem);font-family:inherit;font-size:.9375rem;font-weight:500;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,background-color .15s ease-in-out;box-shadow:0 1px 2px #0000000a}.input-field::placeholder{color:var(--input-placeholder,#a1a1aa);opacity:1}.input-field:focus{outline:none;border-color:var(--primary,#2563eb)!important;box-shadow:0 0 0 4px var(--focus-ring,#2563eb40)!important;border-width:2px!important}select.input-field option{background-color:var(--surface-elevated,var(--card-bg,#18181b));color:var(--text,var(--foreground,#fafafa))}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}.appointment-card{border-radius:var(--radius);background:var(--surface-elevated,#18181b);border:1px solid var(--border);grid-template-columns:52px 2px 1fr auto auto auto;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:border-color .2s,background-color .2s;display:grid}.appointment-card:hover{border-color:var(--primary)}.appointment-card-time{text-align:center;grid-column:1;min-width:52px}.appointment-card-divider{background:var(--border);border-radius:1px;grid-column:2;align-self:stretch;width:2px}.appointment-card-info{grid-column:3;min-width:0}.appointment-card-price{text-align:right;grid-column:4;min-width:72px}.appointment-card-status{grid-column:5}.appointment-card-actions{grid-column:6;align-items:center;gap:.4rem;display:flex;position:relative}@media (max-width:640px){.appointment-card{grid-template-rows:auto auto auto;grid-template-columns:1fr 1fr;gap:.75rem;padding:1rem}.appointment-card-time{text-align:left;grid-area:1/1;min-width:auto}.appointment-card-divider{display:none}.appointment-card-info{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-area:2/1/auto/3;padding:.625rem 0}.appointment-card-price{text-align:right;grid-area:1/2;min-width:auto}.appointment-card-status{grid-area:3/1;justify-self:start}.appointment-card-actions{grid-area:3/2;justify-self:end}}.tenant-layout-container{background-color:var(--background);min-height:100vh;color:var(--foreground);display:flex}.tenant-sidebar{z-index:999;background:#0a0a14f2;border-right:1px solid #ffffff0f;flex-direction:column;width:260px;height:100vh;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0;overflow-y:auto}.tenant-main-content{flex:1;min-width:0;margin-left:260px;padding:2rem;transition:margin-left .3s cubic-bezier(.4,0,.2,1)}.mobile-topbar,.sidebar-backdrop{display:none}@media (max-width:1024px){.tenant-sidebar{transform:translate(-100%)}.tenant-sidebar.open{transform:translate(0)}.tenant-main-content{padding:5rem 1.25rem 1.25rem;margin-left:0!important}.mobile-topbar{background:#0a0a14f2;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;height:60px;padding:0 1.25rem;display:flex;z-index:900!important;position:fixed!important;top:0!important;left:0!important;right:0!important}.hamburger-btn{color:var(--foreground);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;font-size:1.5rem;display:flex}.mobile-logo{WebkitBackgroundClip:text;WebkitTextFillColor:transparent;letter-spacing:-.02em;background:linear-gradient(135deg,#6366f1,#ec4899);font-family:"'Outfit', sans-serif";font-size:1.25rem;font-weight:800}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:950;background:#00000080;display:block;position:fixed;inset:0}.mobile-sidebar-close-btn{display:block!important}}
