@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}:root{--color-primary: #a97dd0;--color-primary-dark: #9962cd;--color-primary-light: #c4a8e0;--color-primary-lighter: #d9c5ed;--color-primary-bg: #f5f0fa;--color-primary-bg-light: #faf8fc;--color-primary-ring: rgba(169, 125, 208, .12);--color-primary-shadow: rgba(169, 125, 208, .25);--color-primary-hover-bg: rgba(169, 125, 208, .05);--color-purple: #a97dd0;--color-purple-dark: #9962cd;--color-purple-light: #d9c5ed;--color-white: #ffffff;--color-bg: #f8f8f8;--color-bg-white: #ffffff;--color-bg-muted: #f0f0f0;--color-dark: #8a4fc2;--color-dark-light: #7641a8;--color-dark-border: rgba(255, 255, 255, .15);--color-dark-hover: rgba(255, 255, 255, .2);--color-dark-active: rgba(255, 255, 255, .25);--color-sidebar-bg: #ffffff;--color-sidebar-border: #eeeeee;--color-sidebar-text: #555555;--color-sidebar-hover: #f5f5f5;--color-sidebar-active-bg: #f5f0fa;--color-sidebar-active-text: #a97dd0;--color-text-primary: #333333;--color-text-default: #333333;--color-text-secondary: #555555;--color-text-muted: #666666;--color-text-placeholder: #999999;--color-text-light: #e0e0e0;--color-text-lighter: #f5f5f5;--color-text-on-dark: #cccccc;--color-border: #dddddd;--color-border-hover: #cccccc;--color-border-light: #eeeeee;--color-success: #7bc97b;--color-success-dark: #6ab86a;--color-success-bg: #f0fdf4;--color-error: #ef4444;--color-error-dark: #dc2626;--color-error-bg: #fef2f2;--color-error-border: #fecaca;--color-warning: #f59e0b;--color-warning-dark: #ca8a04;--color-warning-bg: #fefce8;--color-info: #5FA0E7;--color-info-dark: #4a8fd6;--color-info-bg: #eff6ff;--color-orange: #f87171;--color-orange-dark: #ea580c;--color-orange-bg: #fff7ed;--color-pink: #f472b6;--color-pink-dark: #db2777;--color-pink-bg: #fdf2f8;--color-cyan: #0891b2;--color-cyan-bg: #ecfeff;--color-chart-bar-1: #a97dd0;--color-chart-bar-2: #7bc97b;--color-chart-pending: #b89de0;--color-chart-confirmed: #7bc97b;--color-chart-completed: #7db3e8;--color-chart-noshow: #f8c085;--color-chart-cancelled: #fa9a9a;--color-chart-rejected: #f6a5c0;--color-card-patients: #f8c085;--color-card-doctors: #7db3e8;--color-card-total-appt: #a97dd0;--color-card-today-appt: #7bc97b;--color-avatar-patient-from: #f0e9f7;--color-avatar-patient-to: #e0d4ef;--color-avatar-patient-text: #9962cd;--color-avatar-doctor-from: #dbeafe;--color-avatar-doctor-to: #bfdbfe;--color-avatar-doctor-text: #4a8fd6;--gradient-primary: linear-gradient(135deg, var(--color-primary), var(--color-purple-dark));--gradient-primary-btn: linear-gradient(135deg, var(--color-primary), var(--color-purple-dark));--gradient-logo-text: linear-gradient(135deg, var(--color-primary-light), var(--color-purple-light));--gradient-auth-bg: linear-gradient(135deg, var(--color-dark) 0%, var(--color-dark-light) 100%);--shadow-sm: 0 2px 6px rgba(0, 0, 0, .08);--shadow-md: 0 4px 16px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .08);--shadow-xl: 0 12px 36px rgba(0, 0, 0, .1);--shadow-dropdown: 0 12px 36px rgba(0, 0, 0, .12), 0 0 0 1px rgba(0, 0, 0, .04);--shadow-tooltip: 0 8px 24px rgba(0, 0, 0, .15);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 12px;--radius-2xl: 14px;--radius-3xl: 16px;--radius-pill: 20px;--radius-full: 50%;--font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background:var(--color-bg);color:var(--color-text-default);-webkit-font-smoothing:antialiased}.auth-page{display:flex;min-height:100vh}.auth-brand-simple .auth-logo-img{height:48px;width:auto}.auth-left{flex:1;background:var(--gradient-auth-bg);display:flex;align-items:center;justify-content:center;padding:48px;position:relative;overflow:hidden}.auth-left:before{content:"";position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(99,102,241,.15) 0%,transparent 70%);top:-100px;right:-100px;border-radius:50%}.auth-left:after{content:"";position:absolute;width:400px;height:400px;background:radial-gradient(circle,rgba(139,92,246,.1) 0%,transparent 70%);bottom:-80px;left:-80px;border-radius:50%}.auth-left-content{position:relative;z-index:1;max-width:420px}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:40px}.auth-logo{width:44px;height:44px;background:var(--gradient-primary);border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;color:var(--color-white)}.auth-logo-img{width:44px;height:44px;border-radius:12px;object-fit:contain}.auth-logo-text{font-size:24px;font-weight:700;background:var(--gradient-logo-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.auth-left-title{font-size:28px;font-weight:700;color:var(--color-text-lighter);line-height:1.3;margin-bottom:14px}.auth-left-desc{font-size:15px;color:var(--color-text-placeholder);line-height:1.6;margin-bottom:32px}.auth-left-features{display:flex;flex-direction:column;gap:14px}.auth-feature{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--color-text-on-dark);font-weight:500}.auth-feature-icon{width:36px;height:36px;background:#6366f11f;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--color-primary-light);flex-shrink:0}.auth-right{flex:1;display:flex;align-items:center;justify-content:center;padding:48px;background:var(--color-bg-white)}.auth-form-container{width:100%;max-width:400px}.auth-page-simple{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--color-bg);padding:24px}.auth-page-simple .auth-form-container{background:var(--color-bg-white);padding:48px;border-radius:16px;box-shadow:var(--shadow-md)}.auth-brand-simple{text-align:center;margin-bottom:32px}.auth-brand-simple .auth-logo-img{height:48px;width:auto;object-fit:contain}.auth-form-header{margin-bottom:32px}.auth-form-header h1{font-size:26px;font-weight:700;color:var(--color-text-primary);margin-bottom:6px}.auth-form-header p{font-size:14px;color:var(--color-text-muted);line-height:1.5}.auth-form{display:flex;flex-direction:column;gap:20px}.auth-error{padding:10px 14px;background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:10px;color:var(--color-error-dark);font-size:13px;font-weight:500}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-field label{font-size:13px;font-weight:600;color:var(--color-text-secondary)}.auth-field-header{display:flex;justify-content:space-between;align-items:center}.auth-input-wrapper{display:flex;align-items:center;gap:10px;border:1px solid var(--color-border);border-radius:10px;padding:0 14px;height:46px;transition:all .15s;background:var(--color-bg-white)}.auth-input-wrapper:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring)}.auth-input-icon{flex-shrink:0}.auth-input-wrapper input{flex:1;border:none;outline:none;font-size:14px;font-family:inherit;color:var(--color-text-default);background:none;height:100%}.auth-input-wrapper input::placeholder{color:var(--color-text-placeholder)}.auth-input-wrapper .ant-input-affix-wrapper,.auth-input-wrapper .ant-input{border:none!important;box-shadow:none!important;background:transparent!important;padding:0!important}.auth-input-wrapper .ant-input-affix-wrapper{flex:1;height:100%}.auth-input-wrapper .ant-input-affix-wrapper-focused{box-shadow:none!important}.auth-toggle-password{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;flex-shrink:0}.auth-link{background:none;border:none;color:var(--color-primary);font-size:13px;font-weight:500;cursor:pointer;font-family:inherit;padding:0}.auth-link:hover{color:var(--color-primary-dark);text-decoration:underline}.auth-submit{height:46px;border:none;border-radius:10px;background:var(--gradient-primary-btn);color:var(--color-white);font-size:15px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .2s;display:flex;align-items:center;justify-content:center}.auth-submit:hover:not(:disabled){box-shadow:0 4px 16px var(--color-primary-shadow);transform:translateY(-1px)}.auth-submit:disabled{opacity:.7;cursor:not-allowed}.auth-spinner{width:20px;height:20px;border:2.5px solid rgba(255,255,255,.3);border-top-color:var(--color-white);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-footer-text{text-align:center;margin-top:24px;font-size:13px;color:var(--color-text-muted)}.otp-icon-wrapper{width:60px;height:60px;background:var(--color-primary-bg);border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:16px}.otp-inputs{display:flex;gap:10px;justify-content:center}.otp-input{width:50px;height:56px;border:2px solid var(--color-border);border-radius:12px;text-align:center;font-size:22px;font-weight:700;font-family:inherit;color:var(--color-text-primary);outline:none;transition:all .15s;background:var(--color-bg-white)}.otp-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring)}.otp-input.filled{border-color:var(--color-primary);background:var(--color-primary-bg-light)}.otp-footer{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:24px}.resend-timer{color:var(--color-text-placeholder);font-weight:500}.auth-back-btn{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--color-text-muted);font-size:13px;font-weight:500;cursor:pointer;font-family:inherit;padding:0;transition:color .15s}.auth-back-btn:hover{color:var(--color-text-secondary)}@media(max-width:768px){.auth-page{flex-direction:column}.auth-left{padding:32px 24px;min-height:auto}.auth-left-title{font-size:22px}.auth-left-features{display:none}.auth-right{padding:32px 24px}.otp-input{width:44px;height:50px;font-size:20px}}.app-layout{display:flex;min-height:100vh}.sidebar{width:260px;background:var(--color-sidebar-bg);color:var(--color-sidebar-text);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:width .25s cubic-bezier(.4,0,.2,1);border-right:1px solid var(--color-sidebar-border)}.app-layout.collapsed .sidebar{width:72px}.app-layout.collapsed .sidebar-header{justify-content:center;padding:20px 8px;flex-direction:column;gap:8px}.app-layout.collapsed .logo{display:flex;justify-content:center;width:100%}.app-layout.collapsed .logo-icon-img{width:48px;height:48px}.app-layout.collapsed .collapse-btn{position:static;width:100%}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:20px 16px;border-bottom:1px solid var(--color-sidebar-border);position:relative}.logo{display:flex;align-items:center;gap:10px}.logo-icon{width:36px;height:36px;background:var(--gradient-primary);border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;color:var(--color-white);flex-shrink:0}.logo-icon-img{width:56px;height:56px;border-radius:10px;object-fit:contain;flex-shrink:0}.logo-text{font-size:20px;font-weight:700;letter-spacing:-.5px;background:var(--gradient-logo-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.collapse-btn{background:var(--color-sidebar-hover);border:none;color:var(--color-sidebar-text);width:32px;height:32px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.collapse-btn:hover{background:var(--color-border);color:var(--color-text-primary)}.sidebar-nav{flex:1;padding:12px 8px;display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border:none;background:none;color:var(--color-sidebar-text);font-size:14px;font-weight:500;border-radius:10px;cursor:pointer;transition:all .15s;width:100%;text-align:left}.nav-item:hover{background:var(--color-sidebar-hover);color:var(--color-text-primary)}.nav-item.active{background:var(--color-sidebar-active-bg);color:var(--color-sidebar-active-text)}.nav-item.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.nav-item svg{flex-shrink:0}.sidebar-footer{padding:16px;border-top:1px solid var(--color-sidebar-border);display:flex;align-items:center;gap:12px}.app-layout.collapsed .sidebar-footer{flex-direction:column;gap:8px;padding:16px 8px}.app-layout.collapsed .logout-btn{margin-left:0;width:100%}.user-avatar{width:36px;height:36px;background:var(--gradient-primary);border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;color:var(--color-white);flex-shrink:0}.user-info{display:flex;flex-direction:column;overflow:hidden}.user-name{font-size:13px;font-weight:600;color:var(--color-text-primary)}.user-role{font-size:11px;color:var(--color-text-muted)}.logout-btn{margin-left:auto;padding:8px;border:none;background:transparent;color:var(--color-text-muted);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0}.logout-btn:hover{background:var(--color-sidebar-hover-bg);color:var(--color-text-primary)}.logout-btn:active{transform:scale(.95)}.main-content{flex:1;margin-left:260px;padding:0 32px 32px;transition:margin-left .25s cubic-bezier(.4,0,.2,1);min-width:0}.app-layout.collapsed .main-content{margin-left:72px}.top-bar{display:flex;align-items:center;justify-content:space-between;padding:24px 0;position:sticky;top:0;background:var(--color-bg);z-index:50}.page-title{font-size:26px;font-weight:700;letter-spacing:-.5px;color:var(--color-text-primary)}.page-subtitle{font-size:14px;color:var(--color-text-muted);margin-top:4px}.top-bar-left{min-width:0}.top-bar-actions{display:flex;align-items:center;gap:12px}.search-box{display:flex;align-items:center;gap:8px;background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:10px;padding:8px 14px;transition:all .15s}.search-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring)}.search-box input{border:none;outline:none;font-size:14px;color:var(--color-text-default);background:none;width:180px;font-family:inherit}.search-box input::placeholder{color:var(--color-text-placeholder)}.search-box.small{padding:6px 12px}.search-box.small input{width:200px;font-size:13px}.notification-btn{position:relative;background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:10px;padding:8px;cursor:pointer;color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;transition:all .15s}.notification-btn:hover{border-color:var(--color-border-hover);color:var(--color-text-default)}.notification-dot{position:absolute;top:6px;right:6px;width:8px;height:8px;background:var(--color-error);border-radius:50%;border:2px solid var(--color-bg-white)}.breadcrumb{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:13px}.breadcrumb-link{background:none;border:none;color:var(--color-primary);font-size:13px;font-weight:500;cursor:pointer;font-family:inherit;padding:0;transition:color .15s}.breadcrumb-link:hover{color:var(--color-primary-dark);text-decoration:underline}.breadcrumb-separator{color:var(--color-text-placeholder);font-size:14px}.breadcrumb-current{color:var(--color-text-muted);font-weight:500}.level-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.3px}.level-badge--system{background:var(--color-primary-bg);color:var(--color-primary-dark)}.level-badge--clinic{background:var(--color-success-bg);color:var(--color-success-dark)}.sidebar-back{padding:8px;border-bottom:1px solid var(--color-sidebar-border)}.back-to-system-btn{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;background:var(--color-primary-bg);color:var(--color-primary);font-size:13px;font-weight:600;border-radius:10px;cursor:pointer;transition:all .15s;font-family:inherit;text-align:left}.back-to-system-btn:hover{background:var(--color-primary-bg-light);color:var(--color-primary-dark);transform:translate(-2px)}.app-layout.collapsed .back-to-system-btn{justify-content:center;padding:10px}.sidebar-clinic-label{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--color-sidebar-border)}.sidebar-clinic-avatar{width:32px;height:32px;background:var(--gradient-primary);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--color-white);font-weight:700;font-size:13px;flex-shrink:0}.sidebar-clinic-info{display:flex;flex-direction:column;min-width:0}.sidebar-clinic-name{font-size:13px;font-weight:600;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-clinic-location{font-size:11px;color:var(--color-text-placeholder)}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.stat-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:var(--color-bg-white);border-radius:16px;padding:20px;display:flex;align-items:flex-start;gap:14px;cursor:pointer;border:1px solid var(--color-border);transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--card-accent);opacity:0;transition:opacity .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:transparent}.stat-card:hover:before,.stat-card.selected:before{opacity:1}.stat-card.selected{border-color:var(--card-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--card-accent) 12%,transparent)}.stat-card-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card-content{flex:1;display:flex;flex-direction:column;gap:4px}.stat-label{font-size:13px;color:var(--color-text-muted);font-weight:500}.stat-value{font-size:28px;font-weight:700;letter-spacing:-.5px;color:var(--color-text-primary);line-height:1}.stat-trend{font-size:12px;font-weight:600;padding:3px 8px;border-radius:20px;align-self:flex-start;margin-top:2px}.stat-trend.up{color:var(--color-success-dark);background:var(--color-success-bg)}.stat-trend.down{color:var(--color-error-dark);background:var(--color-error-bg)}.charts-row{display:grid;grid-template-columns:1.6fr 1fr;gap:14px;margin-bottom:20px}.charts-row:has(.full-width){grid-template-columns:1fr}.chart-card{background:var(--color-bg-white);border-radius:12px;padding:16px 20px;border:1px solid var(--color-border);transition:box-shadow .2s}.chart-card:hover{box-shadow:var(--shadow-md)}.chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.chart-header h3{font-size:15px;font-weight:600;color:var(--color-text-primary)}.chart-header-right{display:flex;align-items:center;gap:16px}.chart-range-toggle{display:flex;background:var(--color-bg-muted);border-radius:10px;padding:3px;gap:2px}.range-btn{padding:6px 14px;border:none;background:none;border-radius:8px;font-size:12px;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:all .15s;font-family:inherit;white-space:nowrap}.range-btn:hover{color:var(--color-text-secondary)}.range-btn.active{background:var(--color-bg-white);color:var(--color-text-primary);box-shadow:0 1px 3px #00000014;font-weight:600}.chart-legend-inline{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-muted)}.legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.chart-badge{font-size:12px;color:var(--color-primary);background:var(--color-primary-bg);padding:4px 10px;border-radius:20px;font-weight:500}.custom-tooltip{background:var(--color-dark);border-radius:10px;padding:10px 14px;box-shadow:var(--shadow-tooltip)}.custom-tooltip .tooltip-label{font-size:12px;color:var(--color-text-placeholder);margin-bottom:4px}.custom-tooltip p{font-size:13px;color:var(--color-text-light);margin:0}.clinics-section{margin-top:8px}.clinics-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.clinics-section-header h3{font-size:18px;font-weight:600;color:var(--color-text-primary)}.clinics-count{font-size:13px;color:var(--color-text-muted);font-weight:500}.clinics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.clinic-card{display:flex;align-items:center;gap:14px;padding:20px;background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:14px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);font-family:inherit;text-align:left;width:100%;position:relative;overflow:hidden}.clinic-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--color-primary);opacity:0;transition:opacity .2s}.clinic-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-light)}.clinic-card:hover:before{opacity:1}.clinic-card--loading{pointer-events:none}.clinic-card-avatar{width:44px;height:44px;background:var(--gradient-primary);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--color-white);font-weight:700;font-size:16px;flex-shrink:0}.clinic-card-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.clinic-card-name{font-size:15px;font-weight:600;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clinic-card-location{font-size:12px;color:var(--color-text-muted)}.clinic-card-arrow{color:var(--color-text-placeholder);flex-shrink:0;opacity:0;transition:all .15s;transform:translate(-4px)}.clinic-card:hover .clinic-card-arrow{opacity:1;transform:translate(0)}.clinics-empty{text-align:center;padding:40px;color:var(--color-text-placeholder);font-size:14px;background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:14px}.table-subtitle{font-size:13px;color:var(--color-text-muted);font-weight:400}@media(max-width:768px){.clinics-grid{grid-template-columns:1fr}}.table-section{background:var(--color-bg-white);border-radius:16px;border:1px solid var(--color-border);overflow:visible}.clinics-table-row{cursor:pointer;transition:background-color .15s ease,box-shadow .15s ease}.clinics-table-row>.ant-table-cell{transition:background-color .15s ease}.table-section .ant-table-tbody .clinics-table-row:hover>.ant-table-cell{background-color:var(--color-primary-bg)!important}.table-section .ant-table-tbody .clinics-table-row:hover>.ant-table-cell:first-child{box-shadow:inset 3px 0 0 var(--color-primary)}.clinic-name-cell{font-weight:600;font-size:14px;color:var(--color-primary);transition:color .15s ease}.clinics-table-row:hover .clinic-name-cell{color:var(--color-primary-dark);text-decoration:underline;text-underline-offset:2px}.table-section .ant-table-thead>tr>th{background-color:var(--color-primary-bg-light)!important;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)!important;border-bottom:2px solid var(--color-border)!important}.table-section .ant-table-tbody>tr>td{padding:14px 16px;font-size:14px;color:var(--color-text-primary);border-bottom:1px solid var(--color-border)}.table-section .ant-table-tbody>tr:last-child>td{border-bottom:none}.table-section .ant-table-pagination{padding:16px 24px!important;margin:0!important}.table-section .ant-pagination{padding:0}.table-section .ant-pagination-options{margin-left:16px}.ant-pagination-item-active{border-color:var(--color-primary)!important}.ant-pagination-item-active a{color:var(--color-primary)!important}.ant-pagination-item:hover,.ant-pagination-item:focus-visible{border-color:var(--color-primary-light)!important}.ant-pagination-item:hover a,.ant-pagination-item:focus-visible a{color:var(--color-primary)!important}.ant-pagination-prev:hover .ant-pagination-item-link,.ant-pagination-next:hover .ant-pagination-item-link,.ant-pagination-prev:focus-visible .ant-pagination-item-link,.ant-pagination-next:focus-visible .ant-pagination-item-link{color:var(--color-primary)!important;border-color:var(--color-primary-light)!important}.auth-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:20px;background:var(--color-bg-page, #f8f9fa)}.auth-loading .ant-spin-dot-item{background-color:var(--color-primary, #a97dd0)!important}.auth-loading-message{font-size:14px;font-weight:500;color:var(--color-text-primary, #333333);margin:0}.loading-container,.table-loader-placeholder{display:flex;align-items:center;justify-content:center;min-height:200px;flex-direction:column;gap:16px}.loading-container{min-height:400px}.table-loader-placeholder .ant-spin-dot-item,.loading-container .ant-spin-dot-item{background-color:var(--color-primary, #a97dd0)!important}.table-loader-placeholder p,.loading-container p{font-size:14px;color:var(--color-text-muted, #666666);margin:0}.table-header{padding:20px 24px 16px;display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px;overflow:visible;position:relative;z-index:20}.table-header h3{font-size:16px;font-weight:600;color:var(--color-text-primary)}.table-controls,.table-date-range{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.custom-date-inputs{display:flex;align-items:center;gap:10px;animation:dropdownIn .15s ease-out}.date-field{display:flex;align-items:center;gap:6px}.date-field label{font-size:12px;font-weight:500;color:var(--color-text-muted)}.date-field input[type=date]{padding:6px 10px;border:1px solid var(--color-border);border-radius:8px;font-size:13px;font-family:inherit;color:var(--color-text-default);background:var(--color-bg-white);outline:none;transition:all .15s}.date-field input[type=date]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring)}.filter-pills{display:flex;gap:6px;flex-wrap:wrap}.filter-pill{padding:5px 14px;border-radius:20px;border:1px solid var(--color-border);background:var(--color-bg-white);font-size:12px;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:all .15s;font-family:inherit}.filter-pill:hover{border-color:var(--color-border-hover);color:var(--color-text-default)}.filter-pill.active{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.searchable-dropdown{position:relative}.searchable-dropdown-btn{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .15s;font-family:inherit;min-width:180px;font-size:13px;font-weight:500;color:var(--color-text-default)}.searchable-dropdown-btn:hover{border-color:var(--color-border-hover)}.searchable-dropdown-label{flex:1;text-align:left}.searchable-dropdown-chevron{transition:transform .2s;flex-shrink:0}.searchable-dropdown-chevron.open{transform:rotate(180deg)}.searchable-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-dropdown);z-index:1050;overflow:hidden;min-width:220px}.searchable-dropdown-search{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--color-border-light)}.searchable-dropdown-search input{flex:1;border:none;outline:none;font-size:13px;color:var(--color-text-default);background:none;font-family:inherit}.searchable-dropdown-search input::placeholder{color:var(--color-text-placeholder)}.searchable-dropdown-list{max-height:240px;overflow-y:auto;padding:4px}.searchable-dropdown-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;border:none;background:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;color:var(--color-text-default);text-align:left;transition:all .15s;font-family:inherit}.searchable-dropdown-item:hover{background:var(--color-sidebar-hover)}.searchable-dropdown-item.active{background:var(--color-sidebar-active-bg);color:var(--color-sidebar-active-text)}.searchable-dropdown-check{flex-shrink:0;margin-left:8px}.searchable-dropdown-empty{padding:12px;text-align:center;font-size:13px;color:var(--color-text-muted)}.table-container{overflow-x:auto}table{width:100%;border-collapse:collapse}thead{background:var(--color-bg)}th{padding:12px 24px;font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;text-align:left;border-bottom:1px solid var(--color-border)}td{padding:14px 24px;font-size:14px;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-light)}.table-row{transition:background .1s}.table-row:hover{background:var(--color-bg)}.patient-cell{display:flex;align-items:center;gap:10px;font-weight:500;color:var(--color-text-primary)}.avatar-wrapper{position:relative;flex-shrink:0}.patient-avatar{width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,var(--color-avatar-patient-from),var(--color-avatar-patient-to));color:var(--color-avatar-patient-text);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}.online-dot{position:absolute;bottom:-2px;right:-2px;width:10px;height:10px;background:var(--color-success-dark);border-radius:50%;border:2px solid var(--color-bg-white)}.online-dot.online-dot--online{background:var(--color-success-dark)}.online-dot.online-dot--offline{background:var(--color-error-dark)}.online-dot.inline{position:static;display:inline-block;width:8px;height:8px;border:none;margin-left:6px;vertical-align:middle}.doctor-cell{display:inline-flex;align-items:center}.empty-state{text-align:center;padding:40px 24px!important;color:var(--color-text-placeholder);font-size:14px}.status-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;min-width:90px;text-align:center}.status-confirmed{background:var(--color-success-bg);color:var(--color-success-dark)}.status-completed{background:var(--color-info-bg);color:var(--color-info-dark)}.status-pending{background:var(--color-warning-bg);color:var(--color-warning-dark)}.status-cancelled{background:var(--color-error-bg);color:var(--color-error-dark)}.status-draft{background:var(--color-bg-muted);color:var(--color-text-secondary)}.status-no-show{background:var(--color-orange-bg);color:var(--color-orange-dark)}.status-rejected{background:var(--color-pink-bg);color:var(--color-pink-dark)}.status-active{background:var(--color-success-bg);color:var(--color-success-dark)}.status-inactive{background:var(--color-error-bg);color:var(--color-error-dark)}.payment-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;min-width:90px;text-align:center}.payment-private-pay,.payment-private{background:#ecfeff;color:#0891b2}.payment-insurance,.payment-insured,.payment-ohip{background:#faf5ff;color:#9333ea}.payment-ohip-not-available{background:#fef3c7;color:#b45309}.payment-both{background:#e0e7ff;color:#4338ca}.payment-na,.payment-none,.payment-unknown{background:var(--color-bg-muted);color:var(--color-text-muted)}.type-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;min-width:90px;text-align:center}.type-virtual,.type-online,.type-telehealth{background:#faf5ff;color:#9333ea}.type-in-person,.type-inperson,.type-onsite{background:#f0fdfa;color:#059669}.type-scheduled,.type-schedule{background:#eff6ff;color:#1d4ed8}.type-callback{background:#fef3c7;color:#b45309}.type-default{background:#f1f5f9;color:#475569}.type-unknown{background:var(--color-bg-muted);color:var(--color-text-muted)}.staff-type-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;min-width:70px;text-align:center;background:#eff6ff;color:#1d4ed8}.payment-tag{display:inline-block;font-size:12px;font-weight:500;color:var(--color-text-muted);background:var(--color-bg-muted);padding:4px 12px;border-radius:20px;min-width:80px;text-align:center}.type-tag{display:inline-block;font-size:12px;font-weight:500;padding:4px 12px;border-radius:20px;min-width:80px;text-align:center}.type-tag.virtual{color:var(--color-purple-dark);background:var(--color-primary-bg-light)}.type-tag.inperson{color:var(--color-cyan);background:var(--color-cyan-bg)}.stat-card.clickable{cursor:pointer}.stat-card-arrow{align-self:center;opacity:0;transition:opacity .15s,transform .15s;flex-shrink:0}.stat-card:hover .stat-card-arrow{opacity:1;transform:translate(2px)}.list-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:16px}.list-count{font-size:13px;color:var(--color-text-placeholder);font-weight:500;white-space:nowrap}.email-cell{color:var(--color-primary)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.person-card{background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:16px;padding:20px;transition:all .2s cubic-bezier(.4,0,.2,1)}.person-card:hover{box-shadow:0 8px 24px #0000000f;transform:translateY(-2px)}.person-card-header{display:flex;align-items:center;gap:14px;margin-bottom:16px}.person-avatar{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0}.doctor-avatar{background:linear-gradient(135deg,var(--color-avatar-doctor-from),var(--color-avatar-doctor-to));color:var(--color-avatar-doctor-text)}.person-card-info{display:flex;flex-direction:column;gap:2px;min-width:0}.person-name{font-size:15px;font-weight:600;color:var(--color-text-primary)}.person-meta{font-size:13px;color:var(--color-text-muted)}.person-card-details{display:flex;flex-direction:column;gap:8px;padding:12px 0;border-top:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light);margin-bottom:14px}.detail-row{display:flex;justify-content:space-between;align-items:center}.detail-label{font-size:12px;color:var(--color-text-placeholder);font-weight:500}.detail-value{font-size:13px;color:var(--color-text-secondary);font-weight:500}.person-card-footer{display:flex;align-items:center;justify-content:flex-end}.empty-state-card{grid-column:1 / -1;text-align:center;padding:40px;color:var(--color-text-placeholder);font-size:14px}@media(max-width:1024px){.charts-row{grid-template-columns:1fr}.stat-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.sidebar{width:72px}.main-content{margin-left:72px;padding:0 16px 16px}.stat-cards{grid-template-columns:1fr}.top-bar{flex-direction:column;align-items:flex-start;gap:12px}.table-header{flex-direction:column}}
