/* MaBouffe — app réelle. Palette validée (proto). */
:root {
  --bg:#FAF7F0; --bg-card:#FFFFFF; --bg-muted:#F0EBE1;
  --primary:#5B7B3A; --primary-dk:#486030; --primary-lt:#EBF1E3;
  --accent:#C45B3C; --text:#2A2724; --text-soft:#6B6460; --text-xsoft:#9E9890;
  --border:#DDD8CF; --radius:12px; --radius-lg:18px;
  --shadow:0 2px 8px rgba(42,39,36,.12); --shadow-lg:0 6px 24px rgba(42,39,36,.16);
  --font:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,sans-serif;
}
* { margin:0; padding:0; box-sizing:border-box; }
html,body { height:100%; }
body {
  background:var(--bg); color:var(--text); font-family:var(--font);
  -webkit-font-smoothing:antialiased; line-height:1.5;
}
#app { min-height:100%; display:flex; flex-direction:column; }

/* ── Écran de connexion ─────────────────────────────── */
.auth-wrap {
  flex:1; display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  padding:24px; text-align:center;
}
.auth-card {
  width:100%; max-width:380px; background:var(--bg-card);
  border:1px solid var(--border); border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg); padding:32px 24px;
}
.auth-logo {
  width:64px; height:64px; border-radius:16px; margin:0 auto 16px;
  display:block;
}
.auth-title { font-size:1.4rem; font-weight:700; color:var(--primary-dk); }
.auth-sub { font-size:.9rem; color:var(--text-soft); margin:6px 0 24px; }
.auth-form { display:flex; flex-direction:column; gap:12px; }
.auth-input {
  font:inherit; font-size:1rem; padding:14px 16px;
  border:1px solid var(--border); border-radius:var(--radius);
  background:var(--bg); color:var(--text); width:100%;
}
.auth-input:focus { outline:2px solid var(--primary); border-color:var(--primary); }
.auth-btn {
  font:inherit; font-size:1rem; font-weight:700; cursor:pointer;
  padding:14px 16px; border:none; border-radius:var(--radius);
  background:var(--primary); color:#fff; min-height:48px;
  transition:background 160ms ease;
}
.auth-btn:hover { background:var(--primary-dk); }
.auth-btn:disabled { opacity:.55; cursor:default; }
.auth-msg { font-size:.88rem; margin-top:16px; min-height:1.2em; }
.auth-msg.ok { color:var(--primary-dk); }
.auth-msg.err { color:var(--accent); }
.auth-foot { margin-top:22px; font-size:.72rem; color:var(--text-xsoft); }

/* ── Coquille app (post-login, placeholder en attendant les écrans) ── */
.shell { flex:1; display:flex; flex-direction:column; align-items:center;
  justify-content:center; padding:24px; text-align:center; gap:14px; }
.shell h1 { font-size:1.3rem; color:var(--primary-dk); }
.shell p { color:var(--text-soft); font-size:.92rem; max-width:340px; }
.shell .who { font-size:.8rem; color:var(--text-xsoft); }
.link-btn {
  font:inherit; background:none; border:none; color:var(--accent);
  text-decoration:underline; cursor:pointer; font-size:.85rem; padding:8px;
}
