/* MCK Home — RH (Gestão de Pessoas). App standalone, visual limpo. 2026-08-11. */
:root { --brand:#592867; --bg:#f6f7fb; --ink:#0f172a; --muted:#64748b; }
* { box-sizing: border-box; }
body { margin:0; font-family:'Inter',system-ui,Arial,sans-serif; background:var(--bg); color:var(--ink); }

/* Login */
.login-page { min-height:100vh; display:flex; align-items:center; justify-content:center; padding:20px;
  background:linear-gradient(135deg,#3b1a49,#592867 60%,#7a3e8f); }
.login-card { background:#fff; border-radius:16px; padding:36px 32px; width:100%; max-width:380px;
  box-shadow:0 20px 50px rgba(0,0,0,.25); }
.login-card .brand { font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--brand); font-weight:700; }
.login-card h1 { margin:6px 0 2px; font-size:24px; }
.login-card p { margin:0 0 20px; color:var(--muted); font-size:13px; }
.form-group { margin-bottom:14px; }
.form-group label { display:block; font-size:12px; color:var(--muted); margin-bottom:5px; }
.form-control { width:100%; padding:10px 12px; border:1px solid #d1d5db; border-radius:8px; font-size:14px; }
.form-control:focus { outline:none; border-color:var(--brand); box-shadow:0 0 0 3px rgba(89,40,103,.12); }
.btn-primary { width:100%; background:var(--brand); color:#fff; border:none; border-radius:8px; padding:11px;
  font-size:14px; font-weight:600; cursor:pointer; }
.btn-primary:disabled { opacity:.6; cursor:default; }
.login-error { display:none; background:#fef2f2; color:#b91c1c; border:1px solid #fecaca; border-radius:8px;
  padding:10px; font-size:13px; margin-bottom:14px; }

/* App shell */
.topbar { background:#fff; border-bottom:1px solid #e5e7eb; padding:12px 24px; display:flex; align-items:center;
  justify-content:space-between; position:sticky; top:0; z-index:10; }
.topbar .logo { display:flex; align-items:center; gap:10px; font-weight:700; color:var(--brand); }
.topbar .logo small { display:block; font-size:11px; color:var(--muted); font-weight:500; letter-spacing:.08em; text-transform:uppercase; }
.topbar .who { font-size:13px; color:var(--muted); }
.topbar button { background:none; border:1px solid #d1d5db; border-radius:8px; padding:6px 12px; cursor:pointer; font-size:13px; color:var(--muted); }
.shell { max-width:1200px; margin:0 auto; padding:24px; }

/* Toasts (mesmo padrão do dashboard-empresa) */
#toast-container { position:fixed; top:20px; right:20px; z-index:9999; display:flex; flex-direction:column; gap:10px; }
.toast { padding:12px 16px; border-radius:10px; color:#fff; font-size:13px; box-shadow:0 8px 24px rgba(0,0,0,.18);
  transition:all .3s; min-width:220px; }
.toast-success { background:#059669; } .toast-error { background:#dc2626; } .toast-warning { background:#d97706; }
