/*
 * Les Cocottes Manager v3.0.1 — fondations visuelles unifiées.
 * Ce fichier est l’unique source des variables utilisées par l’application.
 */
:root {
  --lcm-bg: #f5f7f4;
  --lcm-surface: #ffffff;
  --lcm-surface-soft: #fafbf9;
  --lcm-text: #1d2a23;
  --lcm-text-soft: #6f7b73;
  --lcm-text-faint: #98a198;
  --lcm-border: #e7ebe6;
  --lcm-primary: #315c49;
  --lcm-primary-strong: #214536;
  --lcm-primary-soft: #eaf3ee;
  --lcm-gold: #d7a52a;
  --lcm-gold-soft: #fff5d9;
  --lcm-rose: #c96c72;
  --lcm-rose-soft: #fff0f1;
  --lcm-blue: #5d83ae;
  --lcm-blue-soft: #edf4fb;
  --lcm-violet: #806da6;
  --lcm-violet-soft: #f2eef9;
  --lcm-danger: #b34d4d;
  --lcm-danger-soft: #fcecec;
  /* 2026-08-06 : tons additionnels pour les 8 tuiles d'actions rapides et le
     badge de notification, harmonisés sur la maquette de référence. */
  --lcm-yellow: #b8922a;
  --lcm-yellow-soft: #fbf1d4;
  --lcm-orange: #c17235;
  --lcm-orange-soft: #fbead9;
  --lcm-slate: #5c6a72;
  --lcm-slate-soft: #eaeef0;
  --lcm-dark: #2c332e;
  --lcm-dark-soft: #e4e6e2;
  --lcm-radius-xs: 10px;
  --lcm-radius-sm: 14px;
  --lcm-radius: 20px;
  --lcm-radius-lg: 28px;
  --lcm-shadow-xs: 0 1px 2px rgba(25,40,31,.035);
  --lcm-shadow-sm: 0 8px 28px rgba(25,40,31,.055);
  --lcm-shadow-lg: 0 26px 74px rgba(25,40,31,.14);
  --lcm-sidebar: 272px;
  --lcm-topbar: 82px;
  --lcm-mobile-nav: 72px;
  --lcm-font: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html:has(.lcm-app-shell),
body.lcm-app-page {
  margin: 0;
  background: var(--lcm-bg) !important;
}

body.lcm-app-page {
  padding-top: 0 !important;
  color: var(--lcm-text);
  font-family: var(--lcm-font);
}

body.lcm-app-page #wpadminbar { display: none; }
.lcm-app-shell, .lcm-app-shell * { box-sizing: border-box; }
.lcm-app-shell {
  min-height: 100dvh;
  color: var(--lcm-text);
  background: var(--lcm-bg);
  font: 15px/1.55 var(--lcm-font);
}
.lcm-app-shell h1,
.lcm-app-shell h2,
.lcm-app-shell h3 {
  margin: 0;
  color: var(--lcm-text);
  font-family: var(--lcm-font);
  letter-spacing: -.025em;
}
.lcm-app-shell h1 { font-size: clamp(1.8rem, 2.5vw, 2.55rem); line-height: 1.12; font-weight: 780; }
.lcm-app-shell h2 { font-size: clamp(1.05rem, 1.4vw, 1.3rem); line-height: 1.25; }
.lcm-app-shell p { line-height: 1.6; }
.lcm-app-shell a { text-underline-offset: 3px; }
.lcm-app-shell [hidden] { display: none !important; }
.lcm-icon { display: block; width: 21px; height: 21px; flex: 0 0 auto; }
/* 2026-08-08 (v4.0.0) : icon() produit désormais des émoticônes (<span>) et non plus des <svg> —
   la taille se règle par font-size plutôt que par width/height, mais la classe .lcm-icon reste
   la même pour ne rien casser côté appelants. */
.lcm-icon.lcm-icon-emoji { display: inline-flex; align-items: center; justify-content: center; width: auto; height: auto; font-size: 20px; line-height: 1; font-style: normal; }
.screen-reader-text {
  position: absolute !important;
  width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

.lcm-app-layout { min-height: 100dvh; padding-top: var(--lcm-topbar); }
.lcm-app-main {
  width: calc(100% - var(--lcm-sidebar));
  max-width: 1680px;
  min-width: 0;
  min-height: calc(100dvh - var(--lcm-topbar));
  margin-left: var(--lcm-sidebar);
  padding: 34px clamp(24px, 3vw, 50px) 68px;
  outline: none;
}

.lcm-app-shell input,
.lcm-app-shell select,
.lcm-app-shell textarea {
  min-height: 46px;
  border: 1px solid var(--lcm-border);
  border-radius: var(--lcm-radius-xs);
  color: var(--lcm-text);
  background: var(--lcm-surface);
  box-shadow: var(--lcm-shadow-xs);
}
.lcm-app-shell textarea { min-height: 112px; }
.lcm-app-shell input:focus,
.lcm-app-shell select:focus,
.lcm-app-shell textarea:focus {
  border-color: var(--lcm-gold);
  outline: 3px solid rgba(215,165,42,.19);
  outline-offset: 0;
}
.lcm-app-shell label { color: var(--lcm-text); font-weight: 700; }
.lcm-app-shell a:focus-visible,
.lcm-app-shell button:focus-visible {
  outline: 3px solid rgba(215,165,42,.36);
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  .lcm-app-shell *, .lcm-app-shell *::before, .lcm-app-shell *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
