 :root {
            --color-primary: 72 106 55;
            --color-secondary: 113 129 87;
            --color-accent: 168 99 57;
            --color-success: 34 197 94;
            --color-warning: 234 179 8;
            --color-error: 239 68 68;
            --color-neutral: 107 114 128;
        }

        .dark {
            --color-primary: 96 142 73;
            --color-secondary: 141 162 109;
            --color-accent: 226 134 77;
            --color-success: 74 222 128;
            --color-warning: 250 204 21;
            --color-error: 248 113 113;
            --color-neutral: 156 163 175;
        }

        .btn {
            padding: 0.5rem 1rem;
            border-radius: 0.375rem;
            font-weight: 500;
            transition: all 0.2s;
        }
        
        .btn-primary {
            background-color: rgb(72 106 55);
            color: white;
        }
        
        .btn-primary:hover {
            background-color: rgb(55 85 42);
        }
        
        .btn-outline {
            border: 1px solid #d1d5db;
            background-color: white;
            color: #374151;
        }
        
        .btn-outline:hover {
            background-color: #f9fafb;
        }

        .dark .btn-outline {
            border-color: #4b5563;
            background-color: #1f2937;
            color: #e5e7eb;
        }

        .dark .btn-outline:hover {
            background-color: #374151;
        }

        .card {
            background-color: white;
            border-radius: 0.5rem;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
            padding: 1.5rem;
        }

        .dark .card {
            background-color: #1f2937;
            border: 1px solid #374151;
        }

        .table-container {
            overflow-x: auto;
            border-radius: 0.5rem;
            border: 1px solid #e5e7eb;
        }

        .dark .table-container {
            border-color: #374151;
        }

        .table {
            min-width: 100%;
            border-collapse: collapse;
        }

        .table th {
            padding: 0.75rem 1.5rem;
            text-align: left;
            font-size: 0.75rem;
            font-weight: 500;
            color: #6b7280;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            background-color: #f9fafb;
        }

        .dark .table th {
            color: #9ca3af;
            background-color: #374151;
        }

        .table td {
            padding: 1rem 1.5rem;
            white-space: nowrap;
            font-size: 0.875rem;
            color: #6b7280;
            border-top: 1px solid #e5e7eb;
        }

        .dark .table td {
            color: #9ca3af;
            border-color: #374151;
        }

        .table tbody tr {
            background-color: white;
        }

        .dark .table tbody tr {
            background-color: #1f2937;
        }

        .table tbody tr:nth-child(even) {
            background-color: #f9fafb;
        }

        .dark .table tbody tr:nth-child(even) {
            background-color: #374151;
        }

        .badge {
            display: inline-flex;
            align-items: center;
            padding: 0.25rem 0.625rem;
            border-radius: 9999px;
            font-size: 0.75rem;
            font-weight: 500;
        }

        .badge-success {
            background-color: #dcfce7;
            color: #166534;
        }

        .dark .badge-success {
            background-color: #bbf7d0;
            color: #14532d;
        }

        .badge-info {
            background-color: #1e3a8a22; 
            color: #1e3a8a;
        }

        .dark .badge-info {
            background-color: #1e40af33; 
            color: #93c5fd; 
        }


        .badge-danger {
            background-color: #fee2e2;
            color: #991b1b;
        }

        .dark .badge-danger {
            background-color: #fecaca;
            color: #7f1d1d;
        }

        .badge-warning {
            background-color: #fef9c3;
            color: #92400e;
        }

        .dark .badge-warning {
            background-color: #fde68a;
            color: #78350f;
        }

        .form-input {
            display: block;
            width: 100%;
            border-radius: 0.375rem;
            border: 1px solid #d1d5db;
            box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
            padding: 0.5rem 0.75rem;
        }

        .dark .form-input {
            background-color: #374151;
            border-color: #4b5563;
            color: white;
        }

        .animate-fade-in {
            animation: fadeIn 0.3s ease-out;
        }

        @keyframes fadeIn {
            from { opacity: 0; }
            to { opacity: 1; }
        }

        .bg-primary-600 { background-color: rgb(72 106 55); }
        .dark .bg-primary-800 { background-color: rgb(55 85 42); }
        .text-primary-600 { color: rgb(72 106 55); }
        .dark .text-primary-400 { color: rgb(96 142 73); }
        .border-primary-600 { border-color: rgb(72 106 55); }
        .dark .border-primary-400 { border-color: rgb(96 142 73); }
        .hover\:bg-primary-700:hover { background-color: rgb(55 85 42); }
        .dark .hover\:bg-primary-900:hover { background-color: rgb(40 65 30); }