/* =====================================================================================
   PRD-1 — LA NOMENCLATURE (liste + fiche)

   ⚠️ TOUT EST BORNÉ À `.nom-liste` / `.nom-fiche`. Ce dépôt a payé DEUX FOIS un style posé sur
      un conteneur partagé (T-UI : `.btn-filtres`, puis `.crud-toolbar-actions`) et UNE FOIS une
      classe partagée (`icon-btn-edit`, CAT) — à chaque fois, ce sont des écrans que la tranche ne
      touchait pas qui se sont cassés.

   ⚠️ AUCUN SÉLECTEUR DE BALISE NUE (`div`, `table`, `input`…) : les composants partagés
      (PageHeader, CrudTableShell, ProduitPicker, VarianteSelect) sont rendus DANS ces conteneurs
      et hériteraient de tout sélecteur large. Un préfixe protège les classes, pas les balises.

   ⚠️ AUCUNE CLASSE FANTÔME : chaque classe employée par les deux écrans est définie ici. Une
      classe qu'on croit poser un style et qui n'existe pas est ignorée EN SILENCE — le HTML reste
      valide, le build est vert, seul le rendu diverge (leçon T-UI BULLETIN-bis). La garde CSS de
      T-GARDES le vérifie.
   ===================================================================================== */

/* ---------------------------------------------------------------- la liste */
.nom-liste .nom-filtre {
    max-width: 160px;
}

/* ---------------------------------------------------------------- la fiche */
.nom-fiche .nom-message {
    margin: 12px 0 4px;
}

.nom-fiche .nom-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin: 14px 0 18px;
}

.nom-fiche .nom-bloc {
    background: var(--surface, #fff);
    border: 1px solid var(--line, #e5e7eb);
    border-radius: 14px;
    padding: 14px 16px 16px;
}

.nom-fiche .nom-bloc-titre {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--slate, #6E7787);
    margin-bottom: 12px;
}

/* Le bloc du coût : liseré teal — c'est LA valeur qu'on vient consulter. */
.nom-fiche .nom-bloc-cout {
    border-left: 3px solid var(--teal, #14B8A6);
}

.nom-fiche .nom-lbl {
    display: block;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--slate, #6E7787);
    margin: 12px 0 4px;
}

.nom-fiche .nom-hint {
    font-size: 12px;
    color: var(--slate, #6E7787);
    margin-top: 6px;
}

.nom-fiche .nom-actif {
    margin-top: 14px;
    font-size: 13.5px;
}

/* --- les lignes de coût : libellé à gauche, valeur à droite, tabulaire --- */
.nom-fiche .nom-kv {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px;
    padding: 5px 0;
    font-size: 13.5px;
    color: var(--slate, #6E7787);
}

.nom-fiche .nom-kv-fort {
    color: var(--ink, #14171F);
    font-weight: 600;
}

.nom-fiche .nom-sep {
    height: 1px;
    background: var(--line, #e5e7eb);
    margin: 8px 0;
}

/* ---------------------------------------------------------------- composants et charges */
.nom-fiche .nom-section {
    margin-bottom: 20px;
}

.nom-fiche .nom-section-titre {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--slate, #6E7787);
    margin-bottom: 10px;
}

/* La rangée de saisie : fond doux + liseré teal — « la zone où on agit » (gabarit doc-*). */
.nom-fiche .nom-ajout {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    flex-wrap: wrap;
    background: var(--paper, #F3F5F7);
    border-left: 3px solid var(--teal, #14B8A6);
    border-radius: 8px;
    padding: 10px 12px;
    margin-bottom: 10px;
}

.nom-fiche .nom-qte {
    max-width: 150px;
}

.nom-fiche .nom-table {
    margin-bottom: 0;
}

/* ---------------------------------------------------------------- mobile */
@media (max-width: 768px) {
    .nom-fiche .nom-grid {
        grid-template-columns: 1fr;
    }

    /* ⚠️ La rangée de saisie s'empile : à 390 px, trois contrôles côte à côte débordent — et une
       page qui défile horizontalement est le défaut corrigé par T-DOCPUB sur la page publique. */
    .nom-fiche .nom-ajout {
        flex-direction: column;
    }

    .nom-fiche .nom-qte {
        max-width: none;
    }
}
