/* ============================================================
   Écophoenix Transfert — thème appliqué à l'application
   (injecté par nginx, aucune modification du conteneur)
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,600;12..96,700&family=Instrument+Sans:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap');

:root{
  --ep-ink:#04211F;
  --ep-deep:#062E2B;
  --ep-surface:#0A3833;
  --ep-line:rgba(1,189,158,.16);
  --ep-teal:#019F88;
  --ep-bright:#01BD9E;
  --ep-foam:#9BF3E3;
  --ep-mist:#ECF7F5;
  --ep-dim:#9CC4BE;
}

/* ---- masquer toute référence au moteur ---- */
footer.mantine-Footer-root{display:none !important}

/* ---- fond & typo globale ---- */
body{
  background:
    radial-gradient(1000px 500px at 80% -10%, rgba(1,159,136,.14), transparent 60%),
    var(--ep-ink) !important;
  color:var(--ep-mist) !important;
  font-family:'Instrument Sans',system-ui,sans-serif !important;
}
::selection{background:var(--ep-teal);color:var(--ep-ink)}

/* ---- header ---- */
header.mantine-Header-root{
  background:rgba(4,33,31,.85) !important;
  border-bottom:1px solid var(--ep-line) !important;
  backdrop-filter:blur(10px);
}
header.mantine-Header-root .mantine-Text-root{
  font-family:'Bricolage Grotesque',sans-serif !important;
  font-weight:700 !important;
  color:var(--ep-mist) !important;
}
header.mantine-Header-root img{border-radius:9px}

/* ---- textes ---- */
.mantine-Text-root,
.mantine-InputWrapper-label,
.mantine-Checkbox-label,
.mantine-Switch-label,
.mantine-Radio-label{color:var(--ep-mist) !important}
.mantine-Title-root{
  font-family:'Bricolage Grotesque',sans-serif !important;
  color:#F0FDFA !important;
  letter-spacing:-.01em;
}
.mantine-Anchor-root{color:var(--ep-foam) !important}

/* ---- surfaces : cartes, modales, menus ---- */
.mantine-Paper-root,
.mantine-Card-root,
.mantine-Modal-content,
.mantine-Modal-header,
.mantine-Menu-dropdown,
.mantine-Popover-dropdown,
.mantine-Select-dropdown{
  background:var(--ep-deep) !important;
  color:var(--ep-mist) !important;
  border:1px solid var(--ep-line) !important;
  border-radius:14px !important;
}
.mantine-Modal-header{border:none !important;border-radius:14px 14px 0 0 !important}
.mantine-Menu-item{color:var(--ep-mist) !important}
.mantine-Menu-item:hover{background:rgba(1,189,158,.09) !important}
.mantine-Divider-root{border-color:var(--ep-line) !important}
.mantine-Overlay-root{background:rgba(2,20,18,.7) !important}

/* ---- boutons ---- */
.mantine-Button-root{
  background:var(--ep-teal) !important;
  color:#F0FDFA !important;
  border:none !important;
  border-radius:10px !important;
  font-weight:600 !important;
  transition:background .2s, transform .15s;
}
.mantine-Button-root:hover{background:#02B096 !important;transform:translateY(-1px)}
.mantine-Button-root[data-variant="light"],
.mantine-Button-root[data-variant="subtle"],
.mantine-Button-root[data-variant="outline"],
.mantine-Button-root[data-variant="default"]{
  background:transparent !important;
  color:var(--ep-foam) !important;
  border:1px solid rgba(1,189,158,.35) !important;
}
.mantine-ActionIcon-root{color:var(--ep-dim) !important}
.mantine-ActionIcon-root:hover{color:var(--ep-foam) !important;background:rgba(1,189,158,.09) !important}
.mantine-CloseButton-root{color:var(--ep-dim) !important}

/* ---- champs de saisie ---- */
.mantine-Input-input,
.mantine-TextInput-input,
.mantine-PasswordInput-input,
.mantine-NumberInput-input,
.mantine-Textarea-input,
.mantine-Select-input,
.mantine-PasswordInput-innerInput{
  background:var(--ep-ink) !important;
  color:var(--ep-mist) !important;
  border:1px solid rgba(95,230,207,.25) !important;
  border-radius:10px !important;
}
.mantine-Input-input:focus,
.mantine-TextInput-input:focus,
.mantine-PasswordInput-input:focus-within,
.mantine-Textarea-input:focus{border-color:var(--ep-bright) !important}
.mantine-Input-input::placeholder{color:rgba(156,196,190,.55) !important}

/* ---- zone de dépôt ---- */
.mantine-Dropzone-root{
  background:rgba(1,159,136,.06) !important;
  border:2px dashed rgba(1,189,158,.5) !important;
  border-radius:18px !important;
  transition:background .2s, border-color .2s;
}
.mantine-Dropzone-root:hover{
  background:rgba(1,159,136,.12) !important;
  border-color:var(--ep-bright) !important;
}

/* ---- tableaux (fichiers, partages) ---- */
.mantine-Table-root{color:var(--ep-mist) !important}
.mantine-Table-root thead th{
  color:var(--ep-dim) !important;
  border-bottom:1px solid var(--ep-line) !important;
  font-family:'JetBrains Mono',monospace !important;
  font-size:.72rem !important;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.mantine-Table-root tbody td{border-top:1px solid rgba(1,189,158,.08) !important}
.mantine-Table-root tbody tr:hover td{background:rgba(1,189,158,.05) !important}

/* ---- barres de progression / chargement ---- */
.mantine-Progress-root{background:rgba(1,189,158,.12) !important;border-radius:6px !important}
.mantine-Progress-bar{background:linear-gradient(90deg,var(--ep-teal),var(--ep-bright)) !important}
.mantine-Loader-root{stroke:var(--ep-bright) !important}
.mantine-Skeleton-root::before{background:var(--ep-deep) !important}
.mantine-Skeleton-root::after{background:rgba(1,189,158,.1) !important}

/* ---- notifications ---- */
.mantine-Notification-root{
  background:var(--ep-deep) !important;
  border:1px solid var(--ep-line) !important;
  border-radius:12px !important;
}
.mantine-Notification-title,.mantine-Notification-description{color:var(--ep-mist) !important}

/* ---- badges & pastilles ---- */
.mantine-Badge-root{
  background:rgba(1,189,158,.12) !important;
  color:var(--ep-foam) !important;
  border:1px solid rgba(1,189,158,.25) !important;
}

/* ---- barre de défilement ---- */
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:var(--ep-ink)}
::-webkit-scrollbar-thumb{background:rgba(1,189,158,.25);border-radius:6px}
::-webkit-scrollbar-thumb:hover{background:rgba(1,189,158,.4)}
