*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Segoe UI,Arial,sans-serif;color:#fff}body{min-height:100vh;overflow:hidden;background:#020617}.background{position:fixed;inset:0;overflow:hidden;background:radial-gradient(circle at 20% 10%,#1d4ed8 0,#020617 34%),radial-gradient(circle at 90% 20%,#7c3aed 0,#020617 32%),linear-gradient(135deg,#020617,#111827)}#bg-video,.video-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.video-fallback{background:linear-gradient(135deg,rgba(15,23,42,.94),rgba(30,64,175,.74),rgba(88,28,135,.72)),radial-gradient(circle at 30% 20%,rgba(96,165,250,.55),transparent 30%),radial-gradient(circle at 78% 18%,rgba(168,85,247,.45),transparent 32%)}#bg-video:not([src])+.video-fallback{display:block}#particles-js{position:absolute;inset:0;z-index:2}.overlay{position:absolute;inset:0;z-index:3;background:linear-gradient(90deg,rgba(2,6,23,.76),rgba(2,6,23,.36)),radial-gradient(circle at center,transparent 0,rgba(2,6,23,.58) 76%);backdrop-filter:blur(1px)}.login-container{position:relative;z-index:4;min-height:calc(100vh - 58px);display:flex;align-items:center;justify-content:center;flex-direction:column;padding:34px 18px 80px}.logo{width:min(420px,100%);height:122px;border-radius:30px;display:grid;place-items:center;margin-bottom:22px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);box-shadow:0 24px 70px rgba(0,0,0,.32);backdrop-filter:blur(14px)}.logo img{max-width:300px;max-height:86px;object-fit:contain}.form-wrapper{width:min(420px,100%);background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:30px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.38);backdrop-filter:blur(18px)}form{margin:0}.input-group{margin-bottom:16px}.input-group input{width:100%;height:56px;border:1px solid rgba(255,255,255,.24);border-radius:18px;background:rgba(255,255,255,.92);color:#0f172a;font-size:15px;font-weight:700;padding:0 18px;outline:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);transition:.18s ease}.input-group input:focus{border-color:#93c5fd;box-shadow:0 0 0 5px rgba(59,130,246,.22),inset 0 0 0 1px rgba(255,255,255,.3);transform:translateY(-1px)}.btn-primary{width:100%;height:56px;border:0;border-radius:18px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;font-size:15px;font-weight:950;letter-spacing:.01em;cursor:pointer;box-shadow:0 18px 42px rgba(37,99,235,.38);transition:.18s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 24px 56px rgba(37,99,235,.48)}h5{margin:18px 0 0;padding:12px 14px;border-radius:16px;background:rgba(239,68,68,.16);border:1px solid rgba(254,202,202,.3);color:#fecaca;text-align:center;font-size:13px}.login-footer{position:fixed;z-index:4;left:0;right:0;bottom:0;min-height:58px;display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;padding:12px 18px;color:rgba(255,255,255,.76);font-size:13px;background:rgba(2,6,23,.38);border-top:1px solid rgba(255,255,255,.12);backdrop-filter:blur(14px)}@media(max-width:620px){body{overflow:auto}.login-container{justify-content:flex-start;padding-top:58px}.logo{width:min(100%,420px);height:104px;border-radius:26px}.form-wrapper{padding:24px;border-radius:26px}.login-footer{position:relative}.logo img{max-width:260px;max-height:74px}.input-group input,.btn-primary{height:54px}}


.flash.flash-error {
  background: #fee2e2;
  border-color: #fecaca;
  color: #b91c1c;
}
.flash.flash-error span {
  background: #ef4444;
}
