*{margin:0;padding:0;box-sizing:border-box}:root{--color-primary-50: #e6f0ff;--color-primary-100: #b3d1ff;--color-primary-200: #80b3ff;--color-primary-300: #4d94ff;--color-primary-400: #1a75ff;--color-primary-500: #0066ff;--color-primary-600: #0052cc;--color-primary-700: #003d99;--color-primary-800: #002966;--color-primary-900: #001433;--color-success-50: #e6f9ec;--color-success-100: #b3ecc9;--color-success-200: #80dfa6;--color-success-300: #4dd283;--color-success-400: #1ac560;--color-success-500: #22c55e;--color-success-600: #1b9e4b;--color-success-700: #147638;--color-success-800: #0e4f25;--color-success-900: #072713;--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-white: #ffffff;--color-black: #000000;--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);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--border-radius: .375rem}body{font-family:var(--font-family);background-color:var(--color-gray-50);color:var(--color-gray-900);line-height:1.5}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.m-2{margin:.5rem}.m-4{margin:1rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mb-4{margin-bottom:1rem}.w-full{width:100%}.h-full{height:100%}.rounded{border-radius:var(--border-radius)}.shadow{box-shadow:var(--shadow-md)}.bg-white{background-color:var(--color-white)}.bg-primary{background-color:var(--color-primary-500)}.text-white{color:var(--color-white)}.text-primary{color:var(--color-primary-500)}.text-gray{color:var(--color-gray-500)}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:var(--border-radius);font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.btn-primary{background-color:var(--color-primary-500);color:var(--color-white)}.btn-primary:hover{background-color:var(--color-primary-600)}.btn-outline{background-color:transparent;border:1px solid var(--color-gray-300);color:var(--color-gray-700)}.btn-outline:hover{background-color:var(--color-gray-100)}.input{width:100%;padding:.5rem .75rem;border-radius:var(--border-radius);border:1px solid var(--color-gray-300);background-color:var(--color-white);font-size:1rem;transition:all .2s ease}.input:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 1px var(--color-primary-500)}.select{width:100%;padding:.5rem .75rem;border-radius:var(--border-radius);border:1px solid var(--color-gray-300);background-color:var(--color-white);font-size:1rem;transition:all .2s ease}.select:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 1px var(--color-primary-500)}.card{background-color:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-md);padding:1rem}.layout{display:flex;min-height:100vh}.sidebar{width:250px;background-color:var(--color-white);box-shadow:var(--shadow-md);z-index:10;transition:all .3s ease}.sidebar-collapsed{width:80px}.main-content{flex:1;padding:1rem;overflow-y:auto}.header{display:flex;align-items:center;justify-content:space-between;padding:1rem;background-color:var(--color-white);box-shadow:var(--shadow-sm);margin-bottom:1rem}.table-container{width:100%;overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--color-gray-200)}.table th{background-color:var(--color-gray-50);font-weight:600}.table tr:hover{background-color:var(--color-gray-50)}@media (max-width: 768px){.sidebar{position:fixed;left:-250px}.sidebar-open{left:0}.main-content{margin-left:0}}
