:root{--color-primary-50:#eff6ff;--color-primary-100:#dbeafe;--color-primary-200:#bfdbfe;--color-primary-300:#93c5fd;--color-primary-400:#60a5fa;--color-primary-500:#3b82f6;--color-primary-600:#2563eb;--color-primary-700:#1d4ed8;--color-primary-800:#1e40af;--color-primary-900:#1e3a8a;--color-accent-50:#faf5ff;--color-accent-100:#f3e8ff;--color-accent-200:#e9d5ff;--color-accent-300:#d8b4fe;--color-accent-400:#c084fc;--color-accent-500:#a855f7;--color-accent-600:#9333ea;--color-accent-700:#7e22ce;--color-accent-800:#6b21a8;--color-accent-900:#581c87;--color-success-50:#f0fdf4;--color-success-100:#dcfce7;--color-success-200:#bbf7d0;--color-success-300:#86efac;--color-success-400:#4ade80;--color-success-500:#22c55e;--color-success-600:#16a34a;--color-success-700:#15803d;--color-error-50:#fef2f2;--color-error-100:#fee2e2;--color-error-200:#fecaca;--color-error-300:#fca5a5;--color-error-400:#f87171;--color-error-500:#ef4444;--color-error-600:#dc2626;--color-error-700:#b91c1c;--color-warning-50:#fffbeb;--color-warning-100:#fef3c7;--color-warning-200:#fde68a;--color-warning-300:#fcd34d;--color-warning-400:#fbbf24;--color-warning-500:#f59e0b;--color-warning-600:#d97706;--color-gray-50:#fafafa;--color-gray-100:#f5f5f5;--color-gray-200:#e5e5e5;--color-gray-300:#d4d4d4;--color-gray-400:#a3a3a3;--color-gray-500:#737373;--color-gray-600:#525252;--color-gray-700:#404040;--color-gray-800:#262626;--color-gray-900:#171717;--bg-page:linear-gradient(135deg,#f5f7fa,#f0f4ff 50%,#faf5ff);--bg-card:rgba(255,255,255,0.95);--bg-elevated:rgba(248,250,252,0.95);--bg-hover:rgba(102,126,234,0.08);--bg-active:rgba(102,126,234,0.12);--bg-glass:rgba(255,255,255,0.7);--text-primary:#171717;--text-secondary:#525252;--text-tertiary:#a3a3a3;--text-inverse:#ffffff;--border-light:rgba(0,0,0,0.06);--border-default:rgba(0,0,0,0.1);--border-strong:rgba(0,0,0,0.15);--gradient-primary:linear-gradient(135deg,#667eea,#764ba2);--gradient-success:linear-gradient(135deg,#84fab0,#8fd3f4);--gradient-warning:linear-gradient(135deg,#ffeaa7,#fdcb6e);--gradient-danger:linear-gradient(135deg,#ff6b6b,#ee5a6f);--gradient-subtle:linear-gradient(135deg,#f5f7fa,#c3cfe2);--gradient-blue:linear-gradient(135deg,#667eea,#2563eb);--gradient-purple:linear-gradient(135deg,#a855f7,#7e22ce);--shadow-xs:0 1px 2px 0 rgba(0,0,0,0.03);--shadow-sm:0 1px 3px 0 rgba(0,0,0,0.06),0 1px 2px -1px rgba(0,0,0,0.06);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.08),0 2px 4px -2px rgba(0,0,0,0.05);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.08),0 4px 6px -4px rgba(0,0,0,0.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.08),0 8px 10px -6px rgba(0,0,0,0.05);--shadow-2xl:0 25px 50px -12px rgba(0,0,0,0.15);--shadow-glow:0 0 20px rgba(102,126,234,0.3);--shadow-glow-purple:0 0 20px rgba(168,85,247,0.3);--radius-sm:0.5rem;--radius-md:0.75rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-2xl:2rem;--radius-full:9999px;--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:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Helvetica Neue",sans-serif;--font-mono:"SF Mono",Monaco,"Cascadia Code","Roboto Mono",Consolas,monospace}*{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--bg-page);line-height:1.6;font-size:.9375rem}body,h1,h2,h3,h4,h5,h6{color:var(--text-primary)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;letter-spacing:-.02em}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}p{color:var(--text-secondary);line-height:1.7}a{color:var(--color-primary-600);text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1)}a:hover{color:var(--color-primary-700)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:var(--radius-lg);font-size:.9375rem;font-weight:600;line-height:1.5;cursor:pointer;border:none;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.2),transparent);opacity:0;transition:opacity .2s}.btn:hover:before{opacity:1}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--gradient-blue);color:white;box-shadow:var(--shadow-md),0 0 0 0 rgba(102,126,234,.5)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translateY(-1px)}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border:1.5px solid var(--border-default);box-shadow:var(--shadow-sm)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-strong);box-shadow:var(--shadow-md)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-sm{padding:var(--space-1) var(--space-3);font-size:.8125rem;border-radius:var(--radius-md)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:1rem;border-radius:var(--radius-xl)}.card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-md);transition:all .3s cubic-bezier(.4,0,.2,1);backdrop-filter:blur(12px)}.card:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px);border-color:var(--border-default)}.card-glass{background:var(--bg-glass);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.3)}.card-elevated{box-shadow:var(--shadow-2xl)}.card-header{margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-light)}.card-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-1);letter-spacing:-.02em}.card-description{font-size:.9375rem;color:var(--text-secondary);line-height:1.6}.form-group{margin-bottom:var(--space-5)}.form-label{display:block;font-size:.875rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2);letter-spacing:-.01em}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-3) var(--space-4);border:1.5px solid var(--border-default);border-radius:var(--radius-lg);font-size:.9375rem;color:var(--text-primary);background:var(--bg-card);transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-xs)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px rgba(59,130,246,.1),var(--shadow-sm);transform:translateY(-1px)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-tertiary)}.form-textarea{resize:vertical;min-height:100px}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.badge-primary{background:var(--color-primary-100);color:var(--color-primary-700)}.badge-success{background:var(--color-success-100);color:var(--color-success-700)}.badge-error{background:var(--color-error-100);color:var(--color-error-700)}.badge-warning{background:var(--color-warning-100);color:var(--color-warning-700)}.badge-gray{background:var(--color-gray-100);color:var(--color-gray-700)}.badge-gradient{background:var(--gradient-primary);color:white}.table-container{overflow-x:auto;border:1px solid var(--border-light);border-radius:var(--radius-xl);background:var(--bg-card);box-shadow:var(--shadow-sm)}.table{width:100%;border-collapse:collapse;font-size:.875rem}.table thead{background:var(--bg-hover);border-bottom:2px solid var(--border-light)}.table th{text-align:left;font-weight:700;color:var(--text-primary);font-size:.8125rem;text-transform:uppercase;letter-spacing:.05em}.table td,.table th{padding:var(--space-4)}.table td{color:var(--text-secondary);border-bottom:1px solid var(--border-light)}.table tbody tr{transition:all .15s}.table tbody tr:hover{background:var(--bg-hover)}.table tbody tr:last-child td{border-bottom:none}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.status-dot-success{background:var(--color-success-500);box-shadow:0 0 0 3px var(--color-success-100)}.status-dot-error{background:var(--color-error-500);box-shadow:0 0 0 3px var(--color-error-100)}.status-dot-warning{background:var(--color-warning-500);box-shadow:0 0 0 3px var(--color-warning-100)}.container{max-width:1400px;margin:0 auto;padding:0 var(--space-8)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:.9375rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.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)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-spin{animation:spin 1s linear infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-fadeIn{animation:fadeIn .3s cubic-bezier(.4,0,.2,1)}.animate-slideDown{animation:slideDown .2s cubic-bezier(.4,0,.2,1)}.animate-scaleIn{animation:scaleIn .2s cubic-bezier(.4,0,.2,1)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-page)}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full);border:2px solid var(--bg-page)}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500)}.spinner{width:20px;height:20px;border:2.5px solid var(--border-light);border-top-color:var(--color-primary-600);border-radius:50%;animation:spin .6s linear infinite}.spinner-lg{width:40px;height:40px;border-width:3px}.hover-lift{transition:all .2s cubic-bezier(.4,0,.2,1)}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.hover-glow{transition:all .3s}.hover-glow:hover{box-shadow:var(--shadow-glow)}:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}::selection{background:var(--color-primary-100);color:var(--color-primary-900)}