*{box-sizing:border-box;margin:0;padding:0}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f7fa;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#root,.App,body,html{height:100%}:root{--primary-color:#2563eb;--primary-hover:#1d4ed8;--primary-light:#dbeafe;--success-color:#10b981;--warning-color:#f59e0b;--error-color:#ef4444;--info-color:#06b6d4;--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;--sidebar-width:250px;--header-height:64px;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}h1,h2,h3,h4,h5,h6{color:#111827;color:var(--gray-900);font-weight:600;line-height:1.25}h1{font-size:2.25rem;margin-bottom:1.5rem;margin-bottom:var(--spacing-lg)}h2{font-size:1.875rem}h2,h3{margin-bottom:1rem;margin-bottom:var(--spacing-md)}h3{font-size:1.5rem}h4{font-size:1.25rem}h4,h5{margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}h5{font-size:1.125rem}h6{font-size:1rem;margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}p{color:#374151;color:var(--gray-700);line-height:1.6;margin-bottom:1rem;margin-bottom:var(--spacing-md)}a{color:#2563eb;color:var(--primary-color);text-decoration:none;transition:color .2s ease}a:hover{color:#1d4ed8;color:var(--primary-hover);text-decoration:underline}.btn{align-items:center;border:none;border-radius:.5rem;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;justify-content:center;min-height:40px;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);text-decoration:none;transition:all .2s ease}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background-color:#2563eb;background-color:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background-color:#1d4ed8;background-color:var(--primary-hover);color:#fff;text-decoration:none}.btn-secondary{background-color:#e5e7eb;background-color:var(--gray-200);color:#374151;color:var(--gray-700)}.btn-secondary:hover:not(:disabled){background-color:#d1d5db;background-color:var(--gray-300);color:#1f2937;color:var(--gray-800)}.btn-success{background-color:#10b981;background-color:var(--success-color);color:#fff}.btn-warning{background-color:#f59e0b;background-color:var(--warning-color);color:#fff}.btn-danger{background-color:#ef4444;background-color:var(--error-color);color:#fff}.form-group{margin-bottom:1rem;margin-bottom:var(--spacing-md)}.form-label{color:#374151;color:var(--gray-700);display:block;font-weight:500;margin-bottom:.25rem;margin-bottom:var(--spacing-xs)}.form-input{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:.5rem;border-radius:var(--radius-md);font-size:.875rem;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);transition:border-color .2s ease;width:100%}.form-input:focus{border-color:#2563eb;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a;outline:none}.form-error{color:#ef4444;color:var(--error-color);font-size:.75rem;margin-top:.25rem;margin-top:var(--spacing-xs)}.card{background:#fff;border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);overflow:hidden}.card-header{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200)}.card-body,.card-footer,.card-header{padding:1.5rem;padding:var(--spacing-lg)}.card-footer{background-color:#f9fafb;background-color:var(--gray-50);border-top:1px solid #e5e7eb;border-top:1px solid var(--gray-200)}.badge{align-items:center;border-radius:.25rem;border-radius:var(--radius-sm);display:inline-flex;font-size:.75rem;font-weight:500;letter-spacing:.05em;padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm);text-transform:uppercase}.badge-success{background-color:#d1fae5;color:#065f46}.badge-warning{background-color:#fef3c7;color:#92400e}.badge-error{background-color:#fee2e2;color:#991b1b}.badge-info{background-color:#cffafe;color:#155e75}.badge-gray{background-color:#e5e7eb;background-color:var(--gray-200);color:#374151;color:var(--gray-700)}.loading-spinner{animation:spin 1s linear infinite;border:2px solid #e5e7eb;border-top:2px solid #2563eb;border:2px solid var(--gray-200);border-radius:50%;border-top-color:var(--primary-color);height:20px;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-0{margin-top:0}.mt-1{margin-top:.25rem;margin-top:var(--spacing-xs)}.mt-2{margin-top:.5rem;margin-top:var(--spacing-sm)}.mt-3{margin-top:1rem;margin-top:var(--spacing-md)}.mt-4{margin-top:1.5rem;margin-top:var(--spacing-lg)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem;margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:1rem;margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:1.5rem;margin-bottom:var(--spacing-lg)}.p-0{padding:0}.p-1{padding:.25rem;padding:var(--spacing-xs)}.p-2{padding:.5rem;padding:var(--spacing-sm)}.p-3{padding:1rem;padding:var(--spacing-md)}.p-4{padding:1.5rem;padding:var(--spacing-lg)}.w-full{width:100%}.h-full{height:100%}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.hidden{display:none}@media (max-width:768px){:root{--sidebar-width:0px}h1{font-size:1.875rem}h2{font-size:1.5rem}h3{font-size:1.25rem}.card-body{padding:1rem;padding:var(--spacing-md)}}