/* Stiluri pentru Chimicum Platform */

/* Culori care nu funcționează în Tailwind prin CDN */
.bg-teal-50 { background-color: #f0fdfa; background-color: rgba(240, 253, 250, 1); }
.bg-teal-100 { background-color: #ccfbf1; background-color: rgba(204, 251, 241, 1); }
.bg-teal-500 { background-color: #14b8a6; background-color: rgba(20, 184, 166, 1); }
.bg-teal-600 { background-color: #0d9488; background-color: rgba(13, 148, 136, 1); }
.bg-teal-700 { background-color: #0f766e; background-color: rgba(15, 118, 110, 1); }
.text-teal-600 { color: #0d9488; color: rgba(13, 148, 136, 1); }
.text-teal-800 { color: #115e59; color: rgba(17, 94, 89, 1); }
.border-teal-300 { border-color: #5eead4; border-color: rgba(94, 234, 212, 1); }
.border-teal-600 { border-color: #0d9488; border-color: rgba(13, 148, 136, 1); }
.hover\:bg-teal-700:hover { background-color: #0f766e; background-color: rgba(15, 118, 110, 1); }

.bg-blue-50 { background-color: #eff6ff; background-color: rgba(239, 246, 255, 1); }
.bg-blue-100 { background-color: #dbeafe; background-color: rgba(219, 234, 254, 1); }
.bg-blue-500 { background-color: #3b82f6; background-color: rgba(59, 130, 246, 1); }
.bg-blue-600 { background-color: #2563eb; background-color: rgba(37, 99, 235, 1); }
.bg-blue-700 { background-color: #1d4ed8; background-color: rgba(29, 78, 216, 1); }
.text-blue-600 { color: #2563eb; color: rgba(37, 99, 235, 1); }
.text-blue-700 { color: #1d4ed8; color: rgba(29, 78, 216, 1); }
.text-blue-800 { color: #1e40af; color: rgba(30, 64, 175, 1); }

.bg-green-50 { background-color: #f0fdf4; background-color: rgba(240, 253, 244, 1); }
.bg-green-500 { background-color: #22c55e; background-color: rgba(34, 197, 94, 1); }
.text-green-600 { color: #16a34a; color: rgba(22, 163, 74, 1); }
.text-green-700 { color: #15803d; color: rgba(21, 128, 61, 1); }

.bg-yellow-50 { background-color: #fefce8; background-color: rgba(254, 252, 232, 1); }
.bg-yellow-100 { background-color: #fef9c3; background-color: rgba(254, 249, 195, 1); }
.bg-yellow-300 { background-color: #fde047; color: rgba(253, 224, 71, 1); }
.text-yellow-300 { color: #fde047; color: rgba(253, 224, 71, 1); }
.bg-yellow-500 { background-color: #eab308; background-color: rgba(234, 179, 8, 1); }
.text-yellow-600 { color: #ca8a04; color: rgba(202, 138, 4, 1); }
.text-yellow-700 { color: #a16207; color: rgba(161, 98, 7, 1); }

.bg-purple-50 { background-color: #faf5ff; background-color: rgba(250, 245, 255, 1); }
.text-purple-600 { color: #9333ea; color: rgba(147, 51, 234, 1); }
.text-purple-700 { color: #7e22ce; color: rgba(126, 34, 206, 1); }

/* Fix pentru elementele care folosesc modificatori (e.g. last:border-0) */
.last\:border-0:last-child { border: 0 !important; }
.last\:pb-0:last-child { padding-bottom: 0 !important; }

/* Fix pentru gradienți */
.bg-gradient-to-r {
    background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.from-teal-600 {
    --tw-gradient-from: #0d9488;
    --tw-gradient-from: rgba(13, 148, 136, 1);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgba(13, 148, 136, 0));
}
.to-blue-600 {
    --tw-gradient-to: #2563eb;
    --tw-gradient-to: rgba(37, 99, 235, 1);
}

/* Fix pentru overlay-uri cu transparență */
.bg-white\/10 {
    background-color: rgba(255, 255, 255, 0.1);
}

/* Adaugă suport pentru blur dacă lipsește */
.backdrop-blur-sm {
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

/* Ajustări pentru grid */
@media (min-width: 1024px) {
    .lg\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .lg\:col-span-2 {
        grid-column: span 2 / span 2;
    }
}

/* Ajustări pentru mobilă */
@media (max-width: 768px) {
    .md\:w-20 {
        width: 5rem;
    }
    .md\:ml-20 {
        margin-left: 5rem;
    }
}

/* Animații pentru indicatori de progres */
@keyframes pulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.5;
    }
}

.animate-pulse {
    animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

/* Stiluri pentru bara de progres rotundă */
.progress-circle {
    position: relative;
    display: inline-block;
}

/* Previne apariția unui efect de încărcare în timpul încărcării fonturilor */
.no-flash {
    opacity: 0;
    transition: opacity 0.3s ease;
}

.no-flash-loaded {
    opacity: 1;
}