*{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:#0b0b0c}.background{position:fixed;inset:0;overflow:hidden;background:radial-gradient(circle at 20% 10%,#8a6100 0,#0b0b0c 34%),radial-gradient(circle at 90% 20%,#ffb701 0,#0b0b0c 32%),linear-gradient(135deg,#0b0b0c,#1a1b1e)}#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(38,39,43,.74),rgba(74,58,14,.72)),radial-gradient(circle at 30% 20%,rgba(255,183,1,.55),transparent 30%),radial-gradient(circle at 78% 18%,rgba(255,183,1,.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(8,8,9,.76),rgba(8,8,9,.36)),radial-gradient(circle at center,transparent 0,rgba(8,8,9,.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:#ffcf4d;box-shadow:0 0 0 5px rgba(255,183,1,.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,#1f2125,#ffb701);color:#fff;font-size:15px;font-weight:950;letter-spacing:.01em;cursor:pointer;box-shadow:0 18px 42px rgba(255,183,1,.38);transition:.18s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 24px 56px rgba(255,183,1,.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(8,8,9,.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;
}

/* SMS Lebanon brand */
.btn-primary{background:linear-gradient(135deg,#ffc933,#ffb701);color:#141414;box-shadow:0 18px 42px rgba(255,183,1,.28)}
.btn-primary:hover{box-shadow:0 24px 56px rgba(255,183,1,.4)}
.input-group input:focus{border-color:#ffcf4d;box-shadow:0 0 0 5px rgba(255,183,1,.22)}
.logo{background:rgba(20,21,24,.55);border-color:rgba(255,183,1,.25)}
