/* Charte PROXIMMO — reprise du formulaire (etat-des-lieux.html).
   Vert réservé aux validations, rouge à la suppression. */
:root{
  --paper:#F4F5F7; --ink:#152238; --line:#D6DCE3;
  --accent:#D9722B; --accent-dark:#A8551C; --panel:#FFFFFF; --muted:#5B6B7D; --bad:#A83A2E; --good:#2F8F5B;
  --blue:#1F4E79; --blue-dark:#123454; --blue-light:#EAF1F7;
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{margin:0; background:var(--paper); color:var(--ink); font-family:-apple-system,'Helvetica Neue',Helvetica,Arial,sans-serif; font-size:16px; line-height:1.4;}
[hidden]{display:none !important;}

.app-header{padding:18px 16px 14px; background:linear-gradient(135deg, var(--blue-dark), var(--blue)); border-bottom:4px solid var(--accent); color:#fff;}
.app-header .eyebrow{font-family:'Courier New',monospace; font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--accent); font-weight:600;}
.app-header h1{margin:4px 0 0; font-size:21px; font-weight:700;}
.app-header .who{display:flex; justify-content:space-between; align-items:center; gap:10px; margin-top:10px; font-size:14px; color:#C7D6E5;}
.app-header .who button{background:transparent; color:#fff; border:1px solid #9FB6CC; border-radius:2px; padding:7px 11px; font:inherit; font-size:13.5px; cursor:pointer;}

main.page{max-width:720px; margin:0 auto; padding:0 16px 40px;}
.card{background:var(--panel); border:1px solid var(--line); border-radius:2px; margin-top:20px; padding:18px 16px;}
.card h2{font-size:16.5px; text-transform:uppercase; letter-spacing:.06em; margin:0 0 14px; padding-bottom:8px; border-bottom:2px solid var(--blue); color:var(--blue-dark);}

label.field{display:block; font-size:14.5px; color:var(--muted); margin:12px 0 5px;}
input[type=email], input[type=password], input[type=text], input[type=search], select{
  width:100%; font:inherit; font-size:16px; padding:11px; border:1px solid var(--line); border-radius:2px; background:#FCFBF8; color:var(--ink);
}
input:focus, select:focus, button:focus-visible{outline:2px solid var(--blue); outline-offset:1px;}

.btn{display:block; width:100%; margin-top:16px; padding:13px; border:none; border-radius:2px; font:inherit; font-size:15.5px; cursor:pointer; text-align:center; text-decoration:none;}
.btn-primary{background:var(--blue); color:#fff;}
.btn-accent{background:var(--accent); color:#fff;}
.btn-ghost{background:#fff; color:var(--ink); border:1px solid var(--ink);}
.btn-danger{background:#fff; color:var(--bad); border:1px solid var(--bad);}
.btn[disabled]{opacity:.6; cursor:wait;}
.link{background:none; border:none; padding:0; margin-top:14px; font:inherit; font-size:14.5px; color:var(--blue); text-decoration:underline; cursor:pointer;}

.msg{margin-top:14px; padding:11px 13px; border-radius:2px; font-size:14.5px;}
.msg-err{background:#FBEAE7; border:1px solid #E3B5AC; color:var(--bad);}
.msg-ok{background:#F1F7F3; border:1px solid var(--good); color:var(--good);}
.msg-info{background:#FFF6E0; border:1px solid var(--accent); color:var(--accent-dark);}
.hint{font-size:13.5px; color:var(--muted); margin:6px 0 0;}
.empty{color:var(--muted); font-size:15px; text-align:center; padding:26px 8px;}
.loading{color:var(--muted); font-size:15px; text-align:center; padding:40px 8px;}
