/*
 * Utilitarele Tailwind pe care le folosesc view-urile proiectului si care NU
 * exista in CSS-ul livrat de Filament.
 *
 * De ce e nevoie de fisierul asta: proiectul n-are build de Tailwind (nici
 * tailwind.config.js, nici pas de `npm run build` la deploy) si se sprijina pe
 * foile deja compilate din public/css/filament/. Acelea contin doar clasele pe
 * care le foloseste Filament insusi. Orice alta clasa scrisa intr-un blade de-al
 * nostru nu produce NIMIC — nicio eroare, niciun avertisment, doar un stil care
 * lipseste. Asa au ajuns sa nu functioneze, luni la rand:
 *
 *   - `pr-4` pe ~160 de celule de tabel (Filament compileaza doar `pe-4`,
 *     varianta logica) — tabelele n-aveau spatiu intre coloane;
 *   - TOATE `grid-cols-*` — blocurile de KPI-uri se afisau unul sub altul,
 *     nu pe 3-6 coloane;
 *   - `text-success-600` si `text-warning-600` (dar nu si `text-danger-600`,
 *     pe care Filament il foloseste) — cifrele verzi si galbene erau negre;
 *   - TOATE variantele `dark:` — proiectul nu avea de fapt niciun stil de
 *     mod intunecat propriu.
 *
 * Regula: aici intra doar clase chiar folosite in resources/views. Lista e
 * verificata automat de tests/Feature/ClaseCssFolositeTest.php, care pica daca
 * un blade foloseste o clasa pe care n-o serveste nimeni.
 *
 * Valorile sunt cele implicite din Tailwind v3. Culorile trec prin variabilele
 * pe care Filament le injecteaza in :root la fiecare pagina (--success-600 etc.,
 * triplete RGB), deci raman legate de paleta panoului. Variantele `dark:`
 * copiaza selectorul folosit de Filament: `.dark\:x:is(.dark *)`.
 */

/* --- Spatieri --------------------------------------------------------- */

.mt-0\.5 { margin-top: 0.125rem; }
.mr-3 { margin-right: 0.75rem; }
.pr-4 { padding-right: 1rem; }
.py-0\.5 { padding-top: 0.125rem; padding-bottom: 0.125rem; }

/* --- Latimi fixe de coloana ------------------------------------------- */

.w-24 { width: 6rem; }
.w-28 { width: 7rem; }
.w-36 { width: 9rem; }
.w-40 { width: 10rem; }
.w-48 { width: 12rem; }

/* --- Grile de KPI-uri -------------------------------------------------- */

.grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
.grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.grid-cols-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.grid-cols-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }

@media (min-width: 768px) {
    .md\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .md\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .md\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (min-width: 1024px) {
    .lg\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .lg\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .lg\:grid-cols-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
    .lg\:grid-cols-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}

/* --- Tabele si text ---------------------------------------------------- */

.table-fixed { table-layout: fixed; }
.text-ellipsis { text-overflow: ellipsis; }
.whitespace-pre-line { white-space: pre-line; }
.items-baseline { align-items: baseline; }
.border-t-2 { border-top-width: 2px; }
.border-l-4 { border-left-width: 4px; }

@media (min-width: 640px) {
    .sm\:text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
}

/* --- Culori de stare --------------------------------------------------- */

.text-success-600 { color: rgba(var(--success-600), 1); }
.text-success-700 { color: rgba(var(--success-700), 1); }
.text-warning-600 { color: rgba(var(--warning-600), 1); }
.text-warning-700 { color: rgba(var(--warning-700), 1); }
.text-danger-700 { color: rgba(var(--danger-700), 1); }

.bg-success-50 { background-color: rgba(var(--success-50), 1); }
.bg-success-500 { background-color: rgba(var(--success-500), 1); }
.bg-warning-50 { background-color: rgba(var(--warning-50), 1); }
.bg-danger-50 { background-color: rgba(var(--danger-50), 1); }
.bg-danger-500 { background-color: rgba(var(--danger-500), 1); }

.hover\:text-primary-600:hover { color: rgba(var(--primary-600), 1); }

/* --- Mod intunecat ----------------------------------------------------- */

.dark\:text-white:is(.dark *) { color: #fff; }
.dark\:text-gray-300:is(.dark *) { color: rgba(var(--gray-300), 1); }
.dark\:text-gray-400:is(.dark *) { color: rgba(var(--gray-400), 1); }
.dark\:text-primary-400:is(.dark *) { color: rgba(var(--primary-400), 1); }
.dark\:text-success-400:is(.dark *) { color: rgba(var(--success-400), 1); }
.dark\:text-warning-400:is(.dark *) { color: rgba(var(--warning-400), 1); }
.dark\:text-danger-400:is(.dark *) { color: rgba(var(--danger-400), 1); }

.dark\:border-gray-600:is(.dark *) { border-color: rgba(var(--gray-600), 1); }
.dark\:border-gray-700:is(.dark *) { border-color: rgba(var(--gray-700), 1); }
.dark\:border-gray-800:is(.dark *) { border-color: rgba(var(--gray-800), 1); }

.dark\:bg-white\/5:is(.dark *) { background-color: hsla(0, 0%, 100%, 0.05); }
.dark\:bg-gray-400\/10:is(.dark *) { background-color: rgba(var(--gray-400), 0.1); }
.dark\:bg-success-400\/10:is(.dark *) { background-color: rgba(var(--success-400), 0.1); }
.dark\:bg-success-500\/10:is(.dark *) { background-color: rgba(var(--success-500), 0.1); }
.dark\:bg-warning-400\/10:is(.dark *) { background-color: rgba(var(--warning-400), 0.1); }
.dark\:bg-warning-500\/10:is(.dark *) { background-color: rgba(var(--warning-500), 0.1); }
.dark\:bg-danger-400\/10:is(.dark *) { background-color: rgba(var(--danger-400), 0.1); }
.dark\:bg-danger-500\/10:is(.dark *) { background-color: rgba(var(--danger-500), 0.1); }
