:root{--color-primary: #3b82f6;--color-primary-hover: #2563eb;--color-primary-light: rgba(59, 130, 246, .1);--color-primary-dark: #1d4ed8;--color-secondary: #f8fafc;--color-secondary-hover: #f1f5f9;--color-secondary-dark: #e2e8f0;--color-success: #10b981;--color-success-hover: #059669;--color-success-light: rgba(16, 185, 129, .1);--color-warning: #f59e0b;--color-warning-hover: #d97706;--color-warning-light: rgba(245, 158, 11, .1);--color-danger: #ef4444;--color-danger-hover: #dc2626;--color-danger-light: rgba(239, 68, 68, .1);--color-info: #06b6d4;--color-info-hover: #0891b2;--color-info-light: rgba(6, 182, 212, .1);--color-white: #ffffff;--color-black: #000000;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--color-background: var(--color-white);--color-surface: var(--color-white);--color-text: #1e293b;--color-text-muted: #64748b;--color-text-light: #94a3b8;--color-border: #e2e8f0;--color-border-hover: #cbd5e1;--color-divider: #f1f5f9;--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 -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-full: 9999px;--space-1: .25rem;--space-2: .5rem;--space-3: .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;--space-20: 5rem;--font-family-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "Fira Code", Consolas, Monaco, "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--z-dropdown: 1000;--z-sticky: 1010;--z-fixed: 1020;--z-modal-backdrop: 1030;--z-modal: 1040;--z-popover: 1050;--z-tooltip: 1060;--z-toast: 1070;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px}@media (prefers-color-scheme: dark){:root{--color-background: #0f172a;--color-surface: #1e293b;--color-text: #f1f5f9;--color-text-muted: #94a3b8;--color-text-light: #64748b;--color-border: #334155;--color-border-hover: #475569;--color-divider: #1e293b;--color-secondary: #1e293b;--color-secondary-hover: #334155}}.dark{--color-background: #0f172a;--color-surface: #1e293b;--color-text: #f1f5f9;--color-text-muted: #94a3b8;--color-text-light: #64748b;--color-border: #334155;--color-border-hover: #475569;--color-divider: #1e293b;--color-secondary: #1e293b;--color-secondary-hover: #334155}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-text-muted)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.text-info{color:var(--color-info)}.bg-primary{background-color:var(--color-primary)}.bg-secondary{background-color:var(--color-secondary)}.bg-success{background-color:var(--color-success)}.bg-warning{background-color:var(--color-warning)}.bg-danger{background-color:var(--color-danger)}.bg-info{background-color:var(--color-info)}.border-primary{border-color:var(--color-primary)}.border-secondary{border-color:var(--color-border)}.border-success{border-color:var(--color-success)}.border-warning{border-color:var(--color-warning)}.border-danger{border-color:var(--color-danger)}.border-info{border-color:var(--color-info)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.transition-fast{transition:all var(--transition-fast)}.transition-normal{transition:all var(--transition-normal)}.transition-slow{transition:all var(--transition-slow)}:root{--color-primary: #3b82f6;--color-primary-hover: #2563eb;--color-primary-light: rgba(59, 130, 246, .1);--color-secondary: #f8fafc;--color-secondary-hover: #f1f5f9;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--color-info: #06b6d4;--color-background: #ffffff;--color-surface: #ffffff;--color-text: #1e293b;--color-text-muted: #64748b;--color-border: #e2e8f0;--color-border-hover: #cbd5e1;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--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 -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .2s cubic-bezier(.4, 0, .2, 1)}app-button,app-input,app-form-field,app-select,app-modal,app-loading-spinner{font-family:inherit}app-button *,app-input *,app-form-field *,app-select *,app-modal *,app-loading-spinner *{box-sizing:border-box}app-form-field{display:block}app-form-field .form-field-label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.875rem;color:var(--color-text)}app-form-field .form-field-label .form-field-required{color:var(--color-danger);margin-left:.25rem}app-form-field .form-field-error{color:var(--color-danger);font-size:.75rem;margin-top:.25rem}app-form-field .form-field-hint{color:var(--color-text-muted);font-size:.75rem;margin-top:.25rem}app-input{display:block}app-input .input-container{position:relative}app-input .input-field{width:100%;border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-background);color:var(--color-text);font-size:.875rem;transition:var(--transition-normal);outline:none}app-input .input-field:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}app-input .input-field:disabled{background-color:var(--color-secondary);cursor:not-allowed;opacity:.6}app-input .input-field::placeholder{color:var(--color-text-muted)}app-input .input-prefix,app-input .input-suffix{position:absolute;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}app-input .input-prefix.password-toggle,app-input .input-suffix.password-toggle{pointer-events:auto;background:none;border:none;cursor:pointer;color:var(--color-text-muted);border-radius:var(--radius-sm);transition:var(--transition-normal)}app-input .input-prefix.password-toggle:hover,app-input .input-suffix.password-toggle:hover{color:var(--color-text)}app-input .input-prefix{left:.75rem}app-input .input-suffix{right:.75rem}app-button{display:inline-block}app-button .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;border-radius:var(--radius-lg);font-weight:500;font-family:inherit;cursor:pointer;transition:var(--transition-normal);text-decoration:none;outline:none}app-button .btn:focus-visible{box-shadow:0 0 0 2px var(--color-primary)}app-button .btn.btn-primary{background-color:var(--color-primary);color:#fff}app-button .btn.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}app-button .btn.btn-secondary{background-color:var(--color-secondary);color:var(--color-text);border:1px solid var(--color-border)}app-button .btn.btn-secondary:hover:not(:disabled){background-color:var(--color-secondary-hover);border-color:var(--color-border-hover)}app-button .btn.btn-danger{background-color:var(--color-danger);color:#fff}app-button .btn.btn-danger:hover:not(:disabled){background-color:#dc2626}app-button .btn.btn-sm{padding:.5rem .75rem;font-size:.875rem}app-button .btn.btn-md{padding:.625rem 1rem;font-size:.875rem}app-button .btn.btn-lg{padding:.75rem 1.25rem;font-size:1rem}app-button .btn:disabled,app-button .btn.btn-disabled{opacity:.5;cursor:not-allowed;transform:none!important}app-button .btn.btn-loading{cursor:wait}app-button .btn.btn-full-width{width:100%}app-button .btn .btn-spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}app-select{display:block}app-select .select-trigger{width:100%;border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-background);color:var(--color-text);cursor:pointer;transition:var(--transition-normal)}app-select .select-trigger:hover{border-color:var(--color-border-hover)}app-select .select-trigger:focus,app-select .select-trigger.select-open{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}app-select .select-dropdown{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-color-scheme: dark){:root{--color-background: #0f172a;--color-surface: #1e293b;--color-text: #f1f5f9;--color-text-muted: #94a3b8;--color-border: #334155;--color-border-hover: #475569;--color-secondary: #1e293b;--color-secondary-hover: #334155}}*{box-sizing:border-box}html{height:100%}body{height:100%;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;background:linear-gradient(135deg,#fff,#f8fafc,#f1f5f9)}#root,app-root{height:100%;display:flex;flex-direction:column}input,textarea,select{font-size:16px}@media (max-width: 480px){input,textarea,select{font-size:16px!important}}@media (min-width: 769px){body.sidebar-open{padding-left:280px}body.sidebar-open.sidebar-collapsed{padding-left:64px}body:not(.mobile-view):not(.sidebar-open){padding-left:64px}}@media (max-width: 768px){body{padding-left:0!important}body.mobile-view.sidebar-open{overflow:hidden}}body{transition:padding-left .3s cubic-bezier(.4,0,.2,1)}@media (min-width: 769px){.dashboard-main-content{margin-left:0!important}}
