/* Fiche de rendez-vous Kerry Étanchéité – saisie sur mobile, impression A4 */
:root{
  --slate:#2b3440; --blue:#1e5f9e; --blue-d:#14426f; --cta:#f59e0b;
  --fond:#f3f4f6; --texte:#1f2933; --doux:#5b6673; --ligne:#e5e7eb; --danger:#b3402a;
}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
body{font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:var(--fond);color:var(--texte);padding:14px 10px 40px}
.barre,.fiche{max-width:860px;margin:0 auto 16px;background:#fff;border:1px solid var(--ligne);border-radius:14px;padding:18px 16px}
.demo{margin-bottom:12px;padding:8px 12px;background:#fff8e8;border-left:4px solid var(--cta);border-radius:8px;font-size:.85rem}
.demo a{color:var(--blue-d);font-weight:700;margin-left:6px}
h1{font-size:1.3rem;color:var(--slate);margin-bottom:4px}
.aide{font-size:.85rem;color:var(--doux);margin-bottom:12px}
.etat{min-height:1.4em;margin-top:8px;font-size:.85rem;color:#2f7a45}

/* boutons : cibles tactiles ≥ 48 px */
button{font:600 1rem system-ui,sans-serif;min-height:48px;padding:10px 16px;border-radius:10px;border:1px solid var(--blue);background:var(--blue);color:#fff;cursor:pointer}
button:hover{background:var(--blue-d)}
button.sec{background:#fff;color:var(--blue)}
button.sec:hover{background:#eef4fa}
button.cta{background:var(--cta);border-color:var(--cta);color:#1b1b1b}
button.cta:hover{background:#d98206}
button.danger{background:#fff;color:var(--danger);border-color:var(--danger)}
.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}

/* historique */
.histo{margin:6px 0 10px}
.histo summary{cursor:pointer;font-weight:700;padding:10px 0;color:var(--slate)}
.liste-wrap{overflow-x:auto}
.liste{width:100%;border-collapse:collapse;font-size:.9rem}
.liste th,.liste td{padding:8px;border-bottom:1px solid var(--ligne);text-align:left;white-space:nowrap}
.liste tr.cur{background:#eef4fa}
.liste button{min-height:40px;padding:4px 12px}

/* fiche */
.entete-print{display:none}
fieldset{border:0;border-top:3px solid var(--blue);margin:18px 0 0;padding:10px 0 4px}
fieldset:first-of-type{margin-top:0}
legend{font-weight:800;font-size:1.05rem;color:var(--slate);padding-right:10px}
.grille{display:grid;grid-template-columns:1fr;gap:10px 14px;margin-top:8px}
@media(min-width:640px){.grille{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.grille{grid-template-columns:repeat(3,1fr)}}
label{display:block;font-size:.82rem;color:var(--doux)}
label.bloc{margin-top:10px}
input:not([type=checkbox]),select,textarea{width:100%;min-height:48px;font:inherit;font-size:1rem;padding:10px 12px;margin-top:3px;border:1px solid #c7cdd4;border-radius:8px;background:#fff;color:var(--texte)}
textarea{resize:vertical;min-height:80px}
input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);border-color:var(--blue)}
.sous-titre{margin:12px 0 2px;font-weight:700;font-size:.9rem;color:var(--blue-d)}
.cases{display:grid;grid-template-columns:1fr;gap:2px 14px;margin-top:6px}
@media(min-width:640px){.cases{grid-template-columns:repeat(2,1fr)}}
label.case{display:flex;align-items:center;gap:10px;min-height:48px;font-size:.95rem;color:var(--texte);cursor:pointer}
label.case input{width:24px;height:24px;min-height:0;margin:0;flex:0 0 24px;accent-color:var(--blue)}
.pied-print{display:none}

/* impression */
@media print{
  @page{size:A4;margin:10mm}
  body{background:#fff;padding:0;font-size:11px}
  .barre{display:none}
  .fiche{max-width:none;border:0;padding:0;margin:0}
  .entete-print{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
  .entete-print img{width:150px;height:auto}
  .titre-print{font-size:1.5rem;font-weight:800;color:var(--blue);text-align:right}
  .sous{text-align:right;color:var(--doux);font-size:.8rem}
  fieldset{break-inside:avoid;margin-top:10px;padding-top:6px}
  .grille{grid-template-columns:repeat(3,1fr);gap:6px 10px}
  .cases{grid-template-columns:repeat(2,1fr)}
  input:not([type=checkbox]),select,textarea{min-height:0;padding:3px 6px;font-size:.95rem;border:0;border-bottom:1px solid #999;border-radius:0;background:transparent}
  select{appearance:none;-webkit-appearance:none}
  textarea{border:1px solid #999;min-height:60px}
  label.case{min-height:0;font-size:.9rem}
  label.case input{width:14px;height:14px;flex-basis:14px}
  .pied-print{display:block;text-align:center;margin-top:14px;color:var(--doux);font-size:.75rem}
}

/* Sauvegarde (mobile) */
.sauvegarde{margin:0 0 12px;padding:10px 12px;background:#eef4fa;border-left:4px solid var(--blue);border-radius:8px;font-size:.85rem}
.sauvegarde.alerte{background:#fff1e0;border-left-color:var(--cta)}
.sauvegarde .sv-texte{margin-bottom:8px}
.sauvegarde .sv-actions{display:flex;flex-wrap:wrap;gap:8px}
.sauvegarde button{min-height:48px;padding:8px 16px}
@media print{.sauvegarde{display:none}}
