@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--app-bg:#f5f4f8;--app-surface:#fff;--app-surface-alt:#f8f7fc;--app-surface-raised:#fff;--app-text:#0f0a1e;--app-text-secondary:#4b4869;--app-muted:#7c7a9a;--app-border:#e4e2f0;--app-border-subtle:#eeecf8;--app-primary:#6f02f2;--app-primary-hover:#5c00cc;--app-primary-light:#6f02f214;--app-primary-foreground:#fff;--color-success:#16a34a;--color-success-bg:#16a34a14;--color-warning:#ca8a04;--color-warning-bg:#ca8a0414;--color-danger:#dc2626;--color-danger-bg:#dc262614;--color-info:#2563eb;--color-info-bg:#2563eb14;--shadow-xs:0 1px 2px #0f0a1e0a;--shadow-sm:0 2px 8px #0f0a1e0f, 0 1px 2px #0f0a1e0a;--shadow-md:0 4px 16px #0f0a1e14, 0 2px 4px #0f0a1e0a;--shadow-lg:0 8px 32px #0f0a1e1a, 0 4px 8px #0f0a1e0a;--shadow-xl:0 20px 60px #0f0a1e1f, 0 8px 16px #0f0a1e0f;--app-shadow:var(--shadow-md);--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-full:9999px;--sidebar-width:240px;--sidebar-collapsed:64px;--header-height:60px;--font-sans:"Inter", system-ui, "Segoe UI", Roboto, sans-serif;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.2s cubic-bezier(.4, 0, .2, 1);--transition-slow:.3s cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--app-bg:#080612;--app-surface:#0f0a1e;--app-surface-alt:#160f2a;--app-surface-raised:#1c1535;--app-text:#f0eeff;--app-text-secondary:#b8b4d8;--app-muted:#7a7699;--app-border:#2a2347;--app-border-subtle:#1e1838;--app-primary:#8b2ff8;--app-primary-hover:#9d4fff;--app-primary-light:#8b2ff81f;--app-primary-foreground:#fff;--color-success:#22c55e;--color-success-bg:#22c55e1a;--color-warning:#eab308;--color-warning-bg:#eab3081a;--color-danger:#f87171;--color-danger-bg:#f871711a;--color-info:#60a5fa;--color-info-bg:#60a5fa1a;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 2px 8px #00000040, 0 1px 2px #0003;--shadow-md:0 4px 16px #0000004d, 0 2px 4px #0003;--shadow-lg:0 8px 32px #00000059, 0 4px 8px #0003;--shadow-xl:0 20px 60px #00000073, 0 8px 16px #00000040;--app-shadow:var(--shadow-md)}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--app-bg);color:var(--app-text);font-size:14px;line-height:1.5}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--app-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--app-muted)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-spin{animation:1s linear infinite spin}.animate-fadeIn{animation:.2s both fadeIn}.animate-fadeUp{animation:.25s both fadeUp}.animate-pulse{animation:2s ease-in-out infinite pulse}.page-enter{animation:.22s cubic-bezier(.4,0,.2,1) both fadeUp}.skeleton{background:linear-gradient(90deg, var(--app-surface-alt) 25%, var(--app-border-subtle) 50%, var(--app-surface-alt) 75%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}:focus-visible{outline:2px solid var(--app-primary);outline-offset:2px}
