/* login.css — Exclusivo de login.html (página standalone, no usa admin.css) */
:root{--bg:#080810;--sf:#111120;--sf2:#191929;--bd:rgba(255,255,255,0.06);--bd2:rgba(255,255,255,0.10);--bd3:rgba(255,255,255,0.18);--teal:#4aa851;--tglow:rgba(74,168,81,0.25);--tdim:rgba(74,168,81,0.10);--red:#ef4444;--rdim:rgba(239,68,68,0.12);--tx:#e2e2f0;--tx2:#a0a0c0;--tx3:#606080;--hf:'Outfit',sans-serif;--mn:'Space Mono',monospace;--r:8px;--r2:14px}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--tx);font-family:var(--mn);font-size:13px;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;
  background-image:radial-gradient(ellipse at 50% 0%, rgba(45,212,191,0.06) 0%, transparent 60%);}

.card{width:100%;max-width:400px;background:var(--sf);border:1px solid var(--bd2);border-radius:20px;padding:40px;box-shadow:0 32px 80px rgba(0,0,0,.6),0 0 0 1px rgba(45,212,191,.05);}

.logo{display:flex;align-items:center;gap:12px;margin-bottom:32px;justify-content:center;}
.logo-ico{width:48px;height:48px;background:var(--sf2);border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 24px var(--tglow);overflow:hidden;}
.logo-ico img{width:100%;height:100%;object-fit:contain;padding:5px;}
.logo-txt{font-family:var(--hf);font-size:22px;font-weight:800;letter-spacing:-.3px;}
.logo-sub{font-size:11px;color:var(--tx3);margin-top:1px;}

h1{font-family:var(--hf);font-size:20px;font-weight:700;margin-bottom:6px;text-align:center;}
.sub{font-size:12px;color:var(--tx3);text-align:center;margin-bottom:28px;}

.fg{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;}
label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--tx3);}
input{background:var(--bg);border:1px solid var(--bd2);border-radius:var(--r);padding:11px 14px;color:var(--tx);font-family:var(--mn);font-size:13px;outline:none;transition:border-color .15s,box-shadow .15s;width:100%;}
input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(45,212,191,.1);}
input::placeholder{color:var(--tx3);}
input.err{border-color:var(--red);}

.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;border-radius:var(--r);font-family:var(--mn);font-size:13px;font-weight:700;cursor:pointer;border:none;transition:all .15s;margin-top:8px;}
.btn-t{background:var(--teal);color:#000;}
.btn-t:hover{background:#5ec466;box-shadow:0 0 20px var(--tglow);}
.btn-t:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;}

.err-box{background:var(--rdim);border:1px solid rgba(239,68,68,.25);border-radius:var(--r);padding:10px 14px;font-size:12px;color:var(--red);margin-bottom:16px;display:none;}
.err-box.show{display:block;animation:shake .3s ease;}
@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}

.warn-box{background:rgba(245,158,11,0.1);border:1px solid rgba(245,158,11,.25);border-radius:var(--r);padding:10px 14px;font-size:12px;color:#f59e0b;margin-bottom:16px;display:none;}
.warn-box.show{display:block;}

.footer{text-align:center;margin-top:24px;font-size:11px;color:var(--tx3);}
