/* Éléments d'interface communs à l'espace membres et à l'administration. */
:root{
  --sable:#EFE1CA; --sable-pale:#F8F2E7; --sable-sombre:#DCC7A8;
  --encre:#16120E; --encre-doux:#3A3129; --encre-pale:#6B5D4E;
  --bleu:#2E5F74; --bleu-nuit:#17333F; --bleu-clair:#4E8298;
  --rouge:#B02730; --rouge-clair:#D0434C; --ocre:#C08A3E; --vert:#2F7A4B;
  --ease:cubic-bezier(.22,1,.36,1);
}
body.adi-noscroll{overflow:hidden}

/* ---------- boutons ---------- */
.adi-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:52px;padding:.7rem 1.4rem;border-radius:14px;border:2px solid var(--bleu-nuit);background:var(--bleu-nuit);color:#fff;font:600 1rem/1.2 "Inter Tight",system-ui,sans-serif;cursor:pointer;text-decoration:none;transition:transform .15s var(--ease),background .2s,box-shadow .2s;-webkit-tap-highlight-color:transparent}
.adi-btn:hover{background:var(--bleu);border-color:var(--bleu);transform:translateY(-1px);box-shadow:0 6px 18px rgba(23,51,63,.22)}
.adi-btn:active{transform:none}
.adi-btn:focus-visible,.mb-tool:focus-visible,.mb-card:focus-visible,.mb-chip:focus-visible,.mb-voice:focus-visible,.mb-ans:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--ocre);outline-offset:2px}
.adi-btn.ghost{background:transparent;color:var(--bleu-nuit)}
.adi-btn.ghost:hover{background:var(--bleu-nuit);color:#fff}
.adi-btn.danger{background:var(--rouge);border-color:var(--rouge)}
.adi-btn.danger:hover{background:var(--rouge-clair);border-color:var(--rouge-clair)}
.adi-btn.ok{background:var(--vert);border-color:var(--vert)}
.adi-btn.big{min-height:60px;font-size:1.12rem;width:100%}
.adi-btn.small{min-height:40px;padding:.4rem .9rem;font-size:.9rem;border-radius:10px}
.adi-btn[disabled]{opacity:.55;cursor:wait;transform:none;box-shadow:none}
.adi-actions{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:flex-end;margin-top:1.4rem}

/* ---------- connexion ---------- */
.adi-login{max-width:520px;margin:0 auto;background:#fff;border-radius:22px;padding:clamp(1.6rem,5vw,2.6rem);box-shadow:0 20px 60px rgba(23,51,63,.14);border:1px solid rgba(22,18,14,.08);text-align:center}
.adi-login-ico{width:64px;height:64px;border-radius:50%;background:var(--bleu-nuit);color:var(--sable-pale);display:grid;place-items:center;margin:0 auto 1rem}
.adi-login h2{font-family:Fraunces,serif;font-size:clamp(1.5rem,4vw,1.9rem);color:var(--bleu-nuit);line-height:1.2;margin-bottom:.6rem}
.adi-login-intro{color:var(--encre-pale);margin-bottom:1.4rem;font-size:1rem}
.adi-login label{display:block;text-align:left;font-weight:600;margin-bottom:.4rem;color:var(--encre-doux)}
.adi-pwrow{position:relative;margin-bottom:1rem}
.adi-pwrow input{width:100%;min-height:58px;font:500 1.15rem "Inter Tight",sans-serif;padding:.6rem 3.4rem .6rem 1rem;border-radius:14px;border:2px solid var(--sable-sombre);background:var(--sable-pale);color:var(--encre)}
.adi-pwrow input:focus{border-color:var(--bleu);outline:none;background:#fff}
.adi-eye{position:absolute;right:6px;top:6px;width:46px;height:46px;border:none;background:transparent;color:var(--encre-pale);border-radius:10px;cursor:pointer;display:grid;place-items:center}
.adi-eye:hover,.adi-eye[aria-pressed=true]{color:var(--bleu);background:rgba(46,95,116,.1)}
.adi-msg{background:#fdecea;color:#8a1f1f;border-radius:10px;padding:.7rem 1rem;margin-bottom:1rem;text-align:left;font-weight:500}
.adi-login-foot{margin-top:1.2rem;font-size:.9rem;color:var(--encre-pale)}

/* ---------- fenêtres ---------- */
.adi-modal-back{position:fixed;inset:0;z-index:10000;background:rgba(14,28,34,.62);display:grid;place-items:center;padding:1rem;overflow:auto;animation:adiFade .2s}
.adi-modal{background:#fff;border-radius:20px;padding:clamp(1.3rem,4vw,2rem);width:min(560px,100%);max-height:calc(100dvh - 2rem);overflow:auto;box-shadow:0 30px 80px rgba(0,0,0,.35);animation:adiPop .28s var(--ease)}
.adi-modal h3{font-family:Fraunces,serif;font-size:1.5rem;color:var(--bleu-nuit);margin-bottom:.6rem}
.adi-modal p{color:var(--encre-doux)}
@keyframes adiFade{from{opacity:0}}
@keyframes adiPop{from{opacity:0;transform:translateY(14px) scale(.98)}}

/* ---------- messages ---------- */
.adi-toasts{position:fixed;left:50%;bottom:calc(1.2rem + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:10100;display:flex;flex-direction:column;gap:.5rem;align-items:center;width:min(92vw,520px);pointer-events:none}
.adi-toast{background:var(--bleu-nuit);color:#fff;padding:.9rem 1.3rem;border-radius:14px;font-weight:600;box-shadow:0 10px 30px rgba(0,0,0,.3);animation:adiPop .3s var(--ease);transition:opacity .4s,transform .4s;text-align:center}
.adi-toast.err{background:var(--rouge)}
.adi-toast.out{opacity:0;transform:translateY(10px)}

/* ---------- formulaires ---------- */
.adi-field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem;text-align:left}
.adi-field>label,.adi-field>.lab{font-weight:600;color:var(--encre-doux);font-size:.95rem}
.adi-field small{color:var(--encre-pale);font-size:.85rem}
.adi-field input[type=text],.adi-field input[type=date],.adi-field input[type=url],.adi-field input[type=password],.adi-field input[type=time],.adi-field textarea,.adi-field select{width:100%;min-height:50px;font:500 1.02rem "Inter Tight",system-ui,sans-serif;padding:.6rem .9rem;border-radius:12px;border:2px solid var(--sable-sombre);background:var(--sable-pale);color:var(--encre)}
.adi-field textarea{min-height:110px;resize:vertical;line-height:1.5}
.adi-field input:focus,.adi-field textarea:focus,.adi-field select:focus{border-color:var(--bleu);outline:none;background:#fff}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
[hidden]{display:none!important}
