body { background:var(--borg-dark-main); color:var(--borg-white);
    font-family:var(--font); min-height:100vh;
    display:flex; align-items:center; justify-content:center; overflow:hidden; }
  .bg-glow { position:fixed; inset:0; z-index:0;
    background:
      radial-gradient(ellipse 55% 50% at 15% 50%, rgba(5,195,222,.10) 0%, transparent 70%),
      radial-gradient(ellipse 45% 60% at 85% 40%, rgba(237,152,8,.07) 0%, transparent 70%); }
  .card { position:relative; z-index:1;
    background:var(--borg-main);
    border:1px solid rgba(5,195,222,.20);
    border-radius:30px; padding:25px 40px; width:100%; max-width:420px;
    box-shadow:0 32px 80px rgba(0,0,0,.5); }
  .logo-wrap { display:flex; align-items:center; gap:10px; margin: 18px 0; justify-content: center;}
  .logo-dot-lg { width:12px; height:12px; border-radius:50%;
    background:var(--borg-secondary); box-shadow:0 0 12px var(--borg-secondary); }
  .logo-wrap h1 { font-family:var(--font); font-weight:700; font-size:1.5rem;
    color:var(--borg-white); letter-spacing:.5px; margin: 0 !important;}
  .subtitle { color:rgba(255,255,255,.45); font-size:.88rem; margin-bottom:36px; }
  label { display:block; font-size:.73rem; color:rgba(255,255,255,.45);
    margin-bottom:6px; letter-spacing:.07em; text-transform:uppercase; font-weight:600; }
  input { width:100%; padding:12px 16px;
    background:var(--borg-dark-main);
    border:1px solid rgba(5,195,222,.18);
    border-radius:var(--borg-bradius-btn); color:var(--borg-white);
    font-family:var(--font); font-size:.95rem;
    outline:none; transition:border-color .2s; margin-bottom:10px; }
  input:focus { border-color:var(--borg-secondary); }
  .erro { background:rgba(240,84,84,.10); border:1px solid rgba(240,84,84,.28);
    color:#f87171; border-radius:var(--borg-bradius-btn);
    padding:10px 16px; font-size:.85rem; margin-bottom:20px; }
  .aviso { background:rgba(34,197,94,.10); border:1px solid rgba(34,197,94,.25);
    color:#4ade80; border-radius:var(--borg-bradius-btn);
    padding:10px 16px; font-size:.85rem; margin-bottom:20px; }
  button { width:100%; padding:12px 16px;
    background:var(--borg-secondary);
    border:none; border-radius:var(--borg-bradius-btn);
    color:var(--borg-dark-main); font-family:var(--font);
    font-weight:700; font-size:1rem; cursor:pointer;
    transition:background .2s, transform .1s; margin-top: 10px; }
  button:hover { background:#07daf7; }
  button:active { transform:scale(.98); }