:root{--primary-50:#fef2f2;--primary-100:#fee2e2;--primary-200:#fecaca;--primary-300:#fca5a5;--primary-400:#f87171;--primary-500:#ef4444;--primary-600:#dc2626;--primary-700:#b91c1c;--primary-800:#991b1b;--primary-900:#7f1d1d;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--gray-950:#0a0a0a;--success-50:#f0fdf4;--success-500:#22c55e;--success-600:#16a34a;--warning-50:#fffbeb;--warning-500:#f59e0b;--warning-600:#d97706;--error-50:#fef2f2;--error-500:#ef4444;--error-600:#dc2626;--info-50:#eff6ff;--info-500:#3b82f6;--background:#fff;--background-secondary:#f9fafb;--background-tertiary:#f3f4f6;--foreground:#111827;--foreground-secondary:#6b7280;--foreground-muted:#9ca3af;--border:#e5e7eb;--border-hover:#d1d5db;--sidebar-bg:#fff;--sidebar-active:var(--primary-500);--card-bg:#fff;--input-bg:#fff;--status-available:#22c55e;--status-busy:#ef4444;--status-away:#f59e0b;--status-on-leave:#8b5cf6;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono","Fira Code",monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--radius-sm:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-2xl:1rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--transition-fast:150ms ease;--transition-base:200ms ease;--transition-slow:300ms ease;--sidebar-width:220px;--sidebar-collapsed-width:72px;--header-height:64px;--chat-sidebar-width:280px}[data-theme=dark]{--background:#0a0a0a;--background-secondary:#141414;--background-tertiary:#1a1a1a;--foreground:#fafafa;--foreground-secondary:#a1a1aa;--foreground-muted:#71717a;--border:#27272a;--border-hover:#3f3f46;--sidebar-bg:#0a0a0a;--card-bg:#141414;--input-bg:#1a1a1a;--gray-50:#18181b;--gray-100:#27272a;--gray-200:#3f3f46;--gray-300:#52525b;--gray-400:#71717a;--gray-500:#a1a1aa;--gray-600:#d4d4d8;--gray-700:#e4e4e7;--gray-800:#f4f4f5;--gray-900:#fafafa}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background-color:var(--background);line-height:1.6;min-height:100vh;transition:background-color var(--transition-base),color var(--transition-base)}body,h1,h2,h3,h4,h5,h6{color:var(--foreground)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-semibold);line-height:1.3}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}p{color:var(--foreground-secondary)}a{color:var(--primary-500);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-600)}:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--background-secondary)}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);border-radius:var(--radius-lg);border:1px solid transparent;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary-500);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-600);transform:translateY(-1px)}.btn-secondary{background:var(--background);color:var(--foreground);border-color:var(--border)}.btn-secondary:hover:not(:disabled){background:var(--background-secondary);border-color:var(--border-hover)}.btn-ghost{background:transparent;color:var(--foreground-secondary)}.btn-ghost:hover:not(:disabled){background:var(--background-secondary);color:var(--foreground)}.btn-success{background:var(--success-500);color:#fff}.btn-danger{background:var(--error-500);color:#fff}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:var(--text-base)}.btn-icon{padding:var(--space-2);border-radius:var(--radius-md)}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-6);transition:all var(--transition-base)}.card:hover{border-color:var(--border-hover)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border)}.card-title{font-size:var(--text-lg);font-weight:var(--font-semibold)}.form-group{margin-bottom:var(--space-4)}.form-label{display:block;margin-bottom:var(--space-2);font-weight:var(--font-medium)}.form-input,.form-label{font-size:var(--text-sm);color:var(--foreground)}.form-input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--input-bg);transition:all var(--transition-fast)}.form-input:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px var(--primary-100)}[data-theme=dark] .form-input:focus{box-shadow:0 0 0 3px rgba(239,68,68,.2)}.form-input::placeholder{color:var(--foreground-muted)}.form-textarea{min-height:100px;resize:vertical}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:40px}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-full)}.badge-primary{background:var(--primary-100);color:var(--primary-700)}[data-theme=dark] .badge-primary{background:rgba(239,68,68,.2);color:var(--primary-400)}.badge-success{background:var(--success-50);color:var(--success-600)}[data-theme=dark] .badge-success{background:rgba(34,197,94,.2);color:#4ade80}.badge-warning{background:var(--warning-50);color:var(--warning-600)}.badge-error{background:var(--error-50);color:var(--error-600)}.badge-gray{background:var(--gray-100);color:var(--gray-600)}.status-dot{width:10px;height:10px;border-radius:var(--radius-full);border:2px solid var(--background);box-shadow:var(--shadow-sm)}.status-available{background:var(--status-available)}.status-busy{background:var(--status-busy)}.status-away{background:var(--status-away)}.status-on-leave{background:var(--status-on-leave)}.avatar{width:40px;height:40px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--primary-400),var(--primary-600));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:var(--font-semibold);font-size:var(--text-sm);overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-sm{width:32px;height:32px;font-size:var(--text-xs)}.avatar-lg{width:56px;height:56px;font-size:var(--text-lg)}.avatar-xl{width:80px;height:80px;font-size:var(--text-2xl)}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn var(--transition-fast)}.modal{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;animation:slideUp var(--transition-base)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-6);border-bottom:1px solid var(--border)}.modal-title{font-size:var(--text-lg);font-weight:var(--font-semibold)}.modal-body,.modal-footer{padding:var(--space-6)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--space-3);border-top:1px solid var(--border)}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:var(--space-4);text-align:left;border-bottom:1px solid var(--border)}.table th{font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--foreground-secondary);background:var(--background-secondary)}.table tbody tr{transition:background var(--transition-fast)}.table tbody tr:hover{background:var(--background-secondary)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16);text-align:center}.empty-state-icon{width:64px;height:64px;margin-bottom:var(--space-4);color:var(--foreground-muted)}.empty-state-title{font-size:var(--text-lg);font-weight:var(--font-semibold);margin-bottom:var(--space-2)}.empty-state-description{color:var(--foreground-secondary);margin-bottom:var(--space-6)}.theme-toggle{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-4);background:var(--primary-500);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);transition:all var(--transition-fast)}.theme-toggle:hover{background:var(--primary-600)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.app-container{display:flex;min-height:100vh}.main-content{flex:1 1;margin-left:var(--sidebar-width);padding:var(--space-6);transition:margin-left var(--transition-base);background:var(--background)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.page-title{font-size:var(--text-2xl);font-weight:var(--font-bold)}.page-description{color:var(--foreground-secondary);margin-top:var(--space-1)}.grid{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}@media (max-width:1024px){.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.main-content{margin-left:0;padding:var(--space-4)}.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start;gap:var(--space-4)}.modal{margin:var(--space-4);max-height:calc(100vh - var(--space-8))}}