/* pilote-theme.css — thème commun : tons ardoise doux, contrastes atténués.
   Chargé après les styles de chaque page pour les harmoniser. */
:root{
  --fond:#f2f4f7; --surface:#ffffff; --encre:#273142; --doux:#6b7686; --trait:#e2e6ec;
  --accent:#3d5a80; --accent-pale:#e8eef5;
  --ok:#5c9a7a; --ok-pale:#edf5f0; --attention:#c99a4e; --attention-pale:#faf4e8;
  --alerte:#c26a62; --alerte-pale:#f8eceb;
  --ombre:0 1px 2px rgba(39,49,66,.06), 0 2px 8px rgba(39,49,66,.04);
}
html{background:var(--fond);}
body{background:var(--fond);color:var(--encre);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;
  -webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;line-height:1.45;}
h1{font-weight:600;letter-spacing:-.01em;color:var(--encre);}
h2,.section h2,summary{color:var(--doux);font-weight:600;font-size:.95rem;}
.muted,p.info{color:var(--doux);}
a{color:var(--accent);}

/* bandeau commun : clair, avec un liseré en damier discret */
html body #pilote-banner{background:rgba(255,255,255,.94);color:var(--encre);
  border-bottom:1px solid var(--trait);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
html body #pilote-banner::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:4px;opacity:.18;
  background:repeating-conic-gradient(var(--encre) 0 25%, transparent 0 50%) 0 0/8px 8px;}
html body #pilote-banner strong{font-weight:600;}
html body #pilote-banner span{color:var(--doux);}

/* boutons et champs */
button{background:var(--accent);color:#fff;border:none;border-radius:10px;font-weight:500;
  transition:background .15s ease;}
button:hover{background:#344e70;}
button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
button:disabled{opacity:.4;}
button.link{background:none;color:var(--doux);}
button.back{background:var(--surface);color:var(--encre);border:1px solid var(--trait);}
input,select{border:1px solid var(--trait);border-radius:10px;background:var(--surface);color:var(--encre);}
p.error{color:var(--alerte);}

/* déclarations */
.card{border:1px solid var(--trait);border-radius:12px;box-shadow:var(--ombre);background:var(--surface);}
.lib{font-weight:600;color:var(--encre);}
.meta{color:var(--doux);}
.late .card{border-color:#ecdcbf;background:var(--attention-pale);}
.done{color:var(--ok);}
.bravo{background:var(--ok-pale);color:#3f7a5a;border-radius:12px;}
#banner,#imp{background:var(--attention-pale);color:#7a5a24;border:1px solid #ecdcbf;border-radius:10px;}
#admin{border:1px dashed #cfd5de;border-radius:12px;background:var(--surface);}
button.who{background:var(--fond);color:var(--encre);border:1px solid var(--trait);}
button.who:hover{background:var(--accent-pale);}
button.who small{color:var(--doux);}

/* tableau de bord */
.kpi,.tile{border:1px solid var(--trait);box-shadow:var(--ombre);background:var(--surface);}
.kpi{border-radius:14px;}
.tile{border-radius:14px;}
.tile.click:hover{border-color:#c9d2de;background:#fbfcfd;}
.kpi .lab,.tname{color:var(--encre);}
.kpi .sub,.tsub,.tstats{color:var(--doux);}
.crumbs{color:var(--doux);}
.crumbs a{color:var(--accent);}

/* connexion */
#title{color:var(--encre);}
#subtitle{color:var(--doux);}

/* actions secondaires */
input,button,select{font-family:inherit;}
#conso-link a{color:var(--accent) !important;}
button[onclick="logout()"]{background:var(--surface);color:var(--doux);border:1px solid var(--trait);}
button[onclick="logout()"]:hover{background:var(--fond);}

@media (prefers-reduced-motion: reduce){*{transition:none !important;}}

/* vignettes du tableau de bord : 2 par ligne sur mobile, grille fluide sur grand écran */
.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
@media (min-width:700px){
  body.conso{max-width:1100px;}
  .grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;}
}

/* tailles de texte : base légèrement agrandie, titres et informations clés renforcés */
html{font-size:17px;}
h1{font-size:1.35rem;line-height:1.25;}
#title{font-size:2rem;}
#subtitle{font-size:1.05rem;}
h2,.section h2,summary{font-size:1.05rem;}
html body #pilote-banner{font-size:1rem;}
.lib{font-size:1.05rem;}
.meta{font-size:.85rem;}
.card button{font-size:1rem;}
.kpi .lab{font-size:1.02rem;}
.kpi .sub{font-size:.85rem;}
.tname{font-size:.92rem;}
.tsub{font-size:.78rem;}
.tstats{font-size:.72rem;}
