/* =========================================================================
   Suite Outillage & Métrologie — résiduel spécifique à cette démo, non
   couvert par le kit de style (docs/Kit_Style_QVCT/, copié ici en
   theme.css/theme.js et lié en premier dans index.html). Aucune couleur,
   police, ombre ou arrondi propre : uniquement des classes de mise en page
   pures et des reprises de variables du kit — même principe que
   Demo_QVCT/css/styles.css.
   ========================================================================= */

/* Ligne de liste rendue comme un <button> plutôt qu'un <div> (échéance
   cliquable au tableau de bord) : réinitialisation de bouton native, même
   survol que .data-table tr.is-clickable. */
.list-row-btn {
  display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; flex-wrap: wrap;
  width: 100%; text-align: left; border: none; background: none; cursor: pointer;
  padding: 10px 6px; font: inherit; border-radius: var(--radius-card-compact);
  transition: background 0.15s ease;
}
.list-row-btn:hover, .list-row-btn:focus-visible { background: var(--surface-row-hover); }

/* Titre réduit pour une carte source compacte (modale « données utilisées »). */
.card-title-sm { font-size: 0.86rem; }

/* Petit texte en couleur de lecture courante à l'intérieur d'une ligne
   .text-fine (fiche laboratoire) — jamais une couleur en dur. */
.label-strong { color: var(--text-primary); }

/* Valeur de chiffre clé quand elle porte une référence (texte) plutôt qu'un
   nombre — évite le débordement du 2rem par défaut sur une carte étroite. */
.kpi-value-text { font-size: 1.3rem; }

/* Résultat de contrôle (écart mesuré) dans l'historique d'un outillage : un
   cran sous le texte courant, comme .text-fine mais en couleur de lecture. */
.text-result { font-size: 0.82rem; }

/* ---- Showcase (curseur fantôme) : actif uniquement avec ?showcase=1, voir
   js/pages/showcase.js. Jamais visible dans l'application réelle. Toutes les
   couleurs/ombres/arrondis reprennent des variables du kit. ---- */
.sc-cursor {
  position: fixed; left: 0; top: 0; z-index: 100000;
  pointer-events: none; margin: -2px 0 0 -2px;
  filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.35));
  transition: transform 0.6s cubic-bezier(0.42, 0.02, 0.24, 1);
}
.sc-cursor svg { display: block; }
.sc-cursor-tap svg { animation: sc-tap-svg 0.24s ease; }
@keyframes sc-tap-svg { 50% { transform: scale(0.72); } }
.sc-ring {
  position: fixed; z-index: 99999; pointer-events: none;
  width: 16px; height: 16px; margin: -8px 0 0 -8px;
  border-radius: 50%; border: 2px solid var(--focus-ring);
  animation: sc-ring 0.6s ease-out forwards;
}
@keyframes sc-ring {
  from { opacity: 0.75; transform: scale(0.3); }
  to { opacity: 0; transform: scale(3.4); }
}
@media (prefers-reduced-motion: reduce) { .sc-cursor, .sc-ring { display: none; } }
