/* Espace interne d'agenia.pro — portail commun, documentation, statistiques. */
:root{--tx:#1c1a17;--mu:#6b635a;--ln:#e2ddd5;--bg:#fdfcfa;--ac:#b4552d;--sb:#f6f3ee}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--tx);
font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,sans-serif}

/* ---- Portail de connexion (identique sur les deux pages) ---- */
#portail{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
/* [hidden] seul perd contre le display:flex ci-dessus (spécificité). */
#portail[hidden]{display:none}
#carte{width:100%;max-width:400px;background:#fff;border:1px solid var(--ln);
border-radius:14px;padding:38px 34px;box-shadow:0 8px 30px rgba(60,50,40,.09)}
#carte h1{font-size:20px;margin:0 0 6px;letter-spacing:-.01em}
#carte>p{color:var(--mu);font-size:14px;margin:0 0 24px}
label{display:block;font-size:12px;letter-spacing:.05em;text-transform:uppercase;
color:var(--mu);margin:14px 0 7px;font-weight:600}
#carte label:first-of-type{margin-top:0}
input{width:100%;padding:11px 13px;font-size:15px;border:1px solid var(--ln);
border-radius:8px;background:var(--sb);font-family:inherit}
input:focus{outline:none;border-color:var(--ac);background:#fff}
button{padding:11px 18px;font-size:15px;font-family:inherit;font-weight:600;
color:#fff;background:var(--ac);border:0;border-radius:8px;cursor:pointer}
button:hover{background:#9d4726}
button:disabled{opacity:.55;cursor:default}
#valider,#validerCode{width:100%;margin-top:18px}
#lignelien{margin:12px 0 0;text-align:center;font-size:13px}
#lienOubli{background:none;border:0;padding:0;color:var(--mu);font-size:13px;
font-weight:400;cursor:pointer}
#lienOubli:hover{color:var(--ac);text-decoration:underline;background:none}
#lienOubli:disabled{opacity:.55;cursor:default;text-decoration:none}
#formCode{margin-top:16px;padding-top:16px;border-top:1px solid var(--ln)}
#formCode>p{color:var(--mu);font-size:13px;margin:0 0 4px}
#msg{margin-top:14px;font-size:13.5px;color:var(--mu);min-height:19px}
#retour{display:block;margin-top:22px;font-size:13px;color:var(--mu);text-decoration:none}
#retour:hover{color:var(--ac)}

/* ---- Espace connecté ---- */
#contenu{padding:0 20px 80px}
.conteneur{max-width:960px;margin:0 auto}

/* Menu horizontal */
.barre{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
gap:12px;padding:14px 0;margin-bottom:32px;border-bottom:1px solid var(--ln);
position:sticky;top:0;background:var(--bg);z-index:5}
.menu{display:flex;gap:4px;flex-wrap:wrap}
.menu a{display:inline-block;padding:8px 14px;border-radius:8px;text-decoration:none;
color:var(--mu);font-size:14px;font-weight:600}
.menu a:hover{background:var(--sb);color:var(--tx)}
.menu a.actif{background:var(--tx);color:#fff}
#deconnexion{background:transparent;color:var(--mu);border:1px solid var(--ln);
padding:7px 14px;font-size:13px}
#deconnexion:hover{background:var(--sb);color:var(--tx)}

/* ---- Documentation ---- */
#doc h1{font-size:26px;margin:0 0 8px;letter-spacing:-.01em}
#doc h2{font-size:18px;margin:34px 0 10px}
#doc h3{font-size:15px;margin:24px 0 8px}
#doc p{margin:0 0 14px}
#doc .chapeau{color:var(--mu);font-size:17px;margin-bottom:28px}
#doc ul,#doc ol{margin:0 0 16px;padding-left:22px}
#doc li{margin-bottom:7px}
#doc code{background:var(--sb);border:1px solid var(--ln);border-radius:4px;
padding:1px 5px;font-size:13.5px}
#doc a{color:var(--ac)}
#doc table{width:100%;border-collapse:collapse;margin:0 0 18px;font-size:14px}
#doc th,#doc td{border:1px solid var(--ln);padding:8px 10px;text-align:left;vertical-align:top}
#doc th{background:var(--sb)}
#doc>*{max-width:820px}

/* ---- Statistiques ---- */
.titre{font-size:22px;margin:0 0 4px}
.sousTitre{color:var(--mu);font-size:14px;margin:0 0 28px;max-width:760px}
.tuiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
gap:12px;margin-bottom:32px}
.tuile{border:1px solid var(--ln);border-radius:12px;background:#fff;padding:16px}
.tuile b{display:block;font-size:24px}
.tuile span{display:block;font-size:13px;color:var(--mu);margin-top:2px}
h2.section{font-size:16px;margin:34px 0 4px}
.note{color:var(--mu);font-size:13px;margin:0 0 12px;max-width:760px}
.tables{display:grid;grid-template-columns:1fr;gap:24px}
@media (min-width:820px){.tables{grid-template-columns:1fr 1fr}}
table.donnees{width:100%;border-collapse:collapse;background:#fff;
border:1px solid var(--ln);border-radius:10px;overflow:hidden;font-size:13.5px}
table.donnees th{text-align:left;background:var(--sb);color:var(--mu);font-weight:600;
padding:10px 12px;font-size:12px;text-transform:uppercase;letter-spacing:.03em}
table.donnees td{padding:9px 12px;border-top:1px solid var(--ln);vertical-align:top}
table.donnees td.chiffre{text-align:right;font-weight:600}
.jauge{height:6px;border-radius:3px;background:var(--ac);opacity:.55}
.vide{text-align:center;color:var(--mu);padding:24px;border:1px solid var(--ln);
border-radius:10px;background:#fff}
.puce{display:inline-block;background:var(--sb);border-radius:999px;padding:2px 10px;
font-size:12px;font-weight:600;white-space:nowrap}
.detail span{display:block}
.scroll{overflow-x:auto}
#chargement{color:var(--mu);text-align:center;padding:60px 0}

/* ---- Audit ---- */
.etat{display:inline-block;border-radius:999px;padding:2px 10px;font-size:12px;
font-weight:600;white-space:nowrap}
.etat--ok{background:#e8f3ec;color:#1f7a43}
.etat--avert{background:#fbf0e1;color:#8a5a12}
.etat--grave{background:#fbe9e6;color:#a8342a}
.tuile--ok b{color:#1f7a43}
.tuile--avert b{color:#8a5a12}
.tuile--grave b{color:#a8342a}
table.donnees code{font-size:12.5px;color:var(--mu);word-break:break-all}
ul.note{padding-left:20px;margin-top:0}
ul.note li{margin-bottom:6px}

/* ---- Barre d'outils du tableau des visiteurs ---- */
.outils{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px}
.outils button{background:#fff;color:var(--tx);border:1px solid var(--ln);border-radius:8px;
padding:7px 13px;font-size:13px;cursor:pointer}
.outils button:hover:not(:disabled){background:var(--sb)}
.outils button:disabled{opacity:.45;cursor:default}
/* La suppression est définitive : son bouton ne doit pas ressembler aux autres. */
.outils button.danger{color:#a8342a;border-color:#e6c9c4}
.outils button.danger:hover:not(:disabled){background:#fbe9e6}
.outils .compte{font-size:13px;color:var(--mu)}
table.donnees th.coche,table.donnees td.coche{width:34px;padding-right:0}
table.donnees input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--ac)}
