:root{--bg-body: #f4f6f9;--bg-surface: #ffffff;--bg-surface-hover: #f0f2f5;--bg-surface-raised: #ffffff;--bg-subtle: #eef1f6;--bg-inset: #e8ecf1;--text-primary: #1a1d23;--text-secondary: #4a5063;--text-muted: #6b7280;--text-faint: #9ca3af;--text-on-accent: #ffffff;--accent: #7c3aed;--accent-hover: #6d28d9;--accent-subtle: #ede9fe;--accent-text: #6d28d9;--border: #dfe3ea;--border-subtle: #e8ecf1;--border-strong: #c7cdd6;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--shadow-lg: 0 8px 30px rgba(0,0,0,.12);--shadow-glow: 0 0 0 3px rgba(124,58,237,.15);--focus-ring: 0 0 0 2px var(--bg-surface), 0 0 0 4px var(--accent);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 18px;--radius-full: 9999px;--sidebar-bg: #0f1119;--sidebar-text: #c1c7d4;--sidebar-text-muted: #717a8e;--sidebar-active-bg: var(--accent);--sidebar-hover-bg: #1a1e2e;--sidebar-border: #1e2234}.dark{--bg-body: #0b0e14;--bg-surface: #131620;--bg-surface-hover: #1a1e2e;--bg-surface-raised: #1a1e2e;--bg-subtle: #1a1e2e;--bg-inset: #0f1119;--text-primary: #e8ecf1;--text-secondary: #a8b1c1;--text-muted: #717a8e;--text-faint: #4a5063;--accent: #8b5cf6;--accent-hover: #a78bfa;--accent-subtle: rgba(139,92,246,.12);--accent-text: #a78bfa;--border: #1e2234;--border-subtle: #1a1e2e;--border-strong: #2d3348;--shadow-sm: 0 1px 2px rgba(0,0,0,.3);--shadow-md: 0 4px 12px rgba(0,0,0,.4);--shadow-lg: 0 8px 30px rgba(0,0,0,.5);--sidebar-bg: #080a10;--sidebar-hover-bg: #131620;--sidebar-border: #131620}*{box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-body);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent;border-radius:20px}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:var(--border-strong);border-radius:20px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--text-faint)}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.sidebar-scrollbar::-webkit-scrollbar{width:4px}.sidebar-scrollbar::-webkit-scrollbar-track{background:transparent}.sidebar-scrollbar::-webkit-scrollbar-thumb{background-color:var(--sidebar-border);border-radius:20px}.sidebar-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--sidebar-text-muted)}.sidebar-scrollbar{scrollbar-width:thin;scrollbar-color:var(--sidebar-border) transparent}*:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:var(--focus-ring)}.no-focus-ring:focus-visible,.no-focus-ring:focus{box-shadow:none!important;outline:none!important}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;padding-right:2rem!important;border-radius:.5rem;transition:border-color .15s ease,box-shadow .15s ease}select option{padding:.5rem .75rem;background:var(--bg-surface);color:var(--text-primary);border-radius:0}.theme-transition,.theme-transition *,.theme-transition *:before,.theme-transition *:after{transition:background-color .2s ease,border-color .2s ease,color .2s ease!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fadeIn{animation:fadeIn .2s ease-out}.animate-slideUp{animation:slideUp .25s ease-out}.animate-slideDown{animation:slideDown .25s ease-out}.animate-scaleIn{animation:scaleIn .2s ease-out}.surface-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.surface-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong)}.surface-raised{background:var(--bg-surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-full);font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;border:1px solid transparent;line-height:1.5}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;animation:fadeIn .15s ease-out}.dark .modal-backdrop{background:#000000b3}.modal-panel{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:scaleIn .2s ease-out}.login-bg{background:linear-gradient(135deg,#0f1119,#1a1040 40%,#0f1119);min-height:100vh}.sidebar-active-bar{position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;border-radius:0 4px 4px 0;background:var(--accent)}
