/* AML — complementos ao tema do v15 (web/css/v15.css, copiado sem alterações). */
.brand{line-height:1.1}
.user-box{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.user-box select{width:auto;min-width:180px;padding:8px 10px}
.perfil-tag{font-size:10px;font-weight:800;letter-spacing:.04em;color:var(--accent);background:var(--accent2);border-radius:999px;padding:4px 8px}
.modo-demo{background:#fff4d8;color:#9a6700;border:1px solid #f1dca4;border-radius:10px;padding:8px 12px;font-size:12px;margin-bottom:14px}
nav .nav-sep{height:1px;background:#2a3238;margin:10px 6px}
nav button{white-space:nowrap}
nav button[title="Em migração"]{opacity:.6}
.nav-sair{margin-top:18px;color:#ffb4ae!important}
.empty{padding:28px;text-align:center;color:var(--muted)}
.form-grid .full{grid-column:1/-1}
.field .erro{color:var(--bad);font-size:11px;font-weight:700}
input.invalido,select.invalido{border-color:var(--bad)}
.acoes{display:flex;gap:6px;flex-wrap:nowrap}
.acoes .btn{padding:7px 10px;font-size:12px}
.tabs{overflow-x:auto;flex-wrap:nowrap}
.tab{white-space:nowrap}
.kv{display:grid;grid-template-columns:160px 1fr;gap:6px 12px;font-size:13px}
.kv dt{color:var(--muted);font-weight:700}.kv dd{margin:0}
.placeholder-modulo{max-width:640px}
.toast{max-width:min(420px,calc(100vw - 40px))}
.toast.erro{background:var(--bad)}

/* Login */
.login-page{min-height:100vh;display:grid;place-items:center;padding:16px;background:linear-gradient(135deg,#0c1728 0%,#14233a 100%)}
.login-card{background:#fff;border-radius:18px;padding:28px;width:min(400px,100%);box-shadow:0 20px 60px rgba(0,0,0,.35)}
.login-card h1{font-size:22px;margin:0 0 4px}
.login-card .brand-login{font-weight:800;letter-spacing:.05em;color:var(--accent);font-size:13px;margin-bottom:18px}
.login-card .field{margin-bottom:12px}
.login-card .btn{width:100%;margin-top:6px}
.login-msg{min-height:20px;font-size:13px;margin:8px 0}
.login-msg.erro{color:var(--bad)}.login-msg.ok{color:var(--ok)}
.link{background:none;border:0;color:var(--info);cursor:pointer;padding:0;font-size:13px;text-decoration:underline}

/* Celular: menu lateral vira barra horizontal (regra do v15) e topo empilha */
@media(max-width:620px){
  .user-box{width:100%}.user-box select{flex:1}
  .kv{grid-template-columns:1fr}
  .modal{padding:14px}
}
