/* Login Preview · mesmas cores base do Automation Panel / UniFi dark */
:root{color-scheme:dark;--background:#0b0d0f;--background-secondary:#101316;--background-tertiary:#15191d;--card:#111417;--border:#24292e;--border-light:#30363d;--text:#f1f3f5;--text-secondary:#a7adb4;--text-muted:#737b84;--blue:#2f8cff;--blue-hover:#4a9cff;--green:#32d583}
*{box-sizing:border-box}html{min-height:100%;background:var(--background)}body{margin:0;min-height:100vh;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,input{font:inherit}.login-layout{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:40px 20px;position:relative;overflow:hidden;background:radial-gradient(ellipse 55% 52% at 50% -16%,rgba(47,140,255,.12),transparent 85%),#0b0d0f}
.ambient{position:absolute;pointer-events:none;border-radius:50%;filter:blur(70px);opacity:.45}.ambient-one{width:340px;height:340px;background:#122a49;left:-200px;bottom:-180px}.ambient-two{width:260px;height:260px;background:#152c48;right:-170px;top:-150px}
.login-shell{width:min(100%,440px);position:relative;z-index:1;background:linear-gradient(160deg,rgba(21,25,29,.97),rgba(15,18,21,.98));border:1px solid #292f35;border-radius:22px;padding:42px 39px 28px;box-shadow:0 24px 90px rgba(0,0,0,.43),0 1px 0 rgba(255,255,255,.035) inset}
.brandmark{width:54px;height:54px;margin:0 auto 15px}.brandmark svg{width:100%;height:100%}.brand-name{text-align:center;font-size:12px;letter-spacing:.18em;font-weight:750;color:#eef4ff}.brand-name span{color:#7fb8ff}.eyebrow{display:flex;align-items:center;justify-content:center;gap:8px;margin:37px 0 12px;font-size:10px;letter-spacing:.16em;color:#9ba7b5;font-weight:700}.status-dot,.indicator{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 12px rgba(50,213,131,.3)}h1{text-align:center;font-size:27px;line-height:1.2;letter-spacing:-.7px;font-weight:670;margin:0 0 11px}.subtitle{text-align:center;font-size:13px;color:var(--text-secondary);margin:0 0 33px;line-height:1.6}
form label{display:block;margin:0 0 9px;color:#d3d9e0;font-size:12px;font-weight:600}.field{height:49px;display:flex;align-items:center;gap:12px;background:#0d1013;border:1px solid #30363d;border-radius:11px;padding:0 14px;margin:0 0 22px;transition:border-color .2s,box-shadow .2s}.field:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,140,255,.13)}.field>svg{width:18px;height:18px;flex:none;stroke:#788695;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}.field input{min-width:0;flex:1;background:transparent;border:0;outline:0;color:var(--text);font-size:14px}.field input::placeholder{color:#66717d}.visibility{border:0;background:none;color:#8694a3;cursor:pointer;padding:4px;display:flex;align-items:center}.visibility svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.visibility:hover{color:#d3e6ff}.forgot-row{display:flex;justify-content:flex-end;margin:-7px 0 26px}.forgot{background:none;border:0;padding:4px 0;color:#75b3ff;font-size:12px;font-weight:600;cursor:pointer}.forgot:hover{text-decoration:underline;color:#a4ceff}.submit{width:100%;height:49px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid #3991ff;border-radius:11px;background:linear-gradient(180deg,#398fff,#2577e4);color:white;font-size:14px;font-weight:650;cursor:pointer;box-shadow:0 7px 24px rgba(47,140,255,.15);transition:background .2s,transform .2s}.submit:hover{background:linear-gradient(180deg,#53a0ff,#2f8cff)}.submit:active{transform:translateY(1px)}.submit span{font-size:19px;line-height:1}.message{min-height:19px;text-align:center;margin:13px 0 0;color:#b8c6d6;font-size:12px;line-height:1.5}.footer{border-top:1px solid #252b30;margin-top:20px;padding-top:23px;display:flex;justify-content:center;align-items:center;gap:8px;color:#78838e;font-size:11px}.indicator{background:#6e9bca;box-shadow:none}.separator{color:#4e5861}
@media(max-width:480px){.login-layout{padding:18px 15px}.login-shell{padding:35px 23px 25px;border-radius:19px}h1{font-size:25px}.eyebrow{margin-top:30px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
