#login-screen{position:fixed;inset:0;background:linear-gradient(135deg,#0f172a,#134e4a);display:flex;align-items:center;justify-content:center;z-index:200;padding:16px;box-sizing:border-box}
.login-box{background:var(--white);border-radius:20px;padding:40px 36px;width:340px;max-width:100%;box-shadow:0 24px 64px rgba(0,0,0,.4);box-sizing:border-box}
@media (max-width:400px){
  .login-box{padding:28px 22px;border-radius:16px}
}
.lb-brand{display:flex;align-items:center;gap:10px;margin-bottom:16px;justify-content:center}
.lb-icon{width:42px;height:42px;background:var(--p);border-radius:11px;display:flex;align-items:center;justify-content:center}
.lb-icon svg{width:22px;height:22px;fill:none;stroke:white;stroke-width:2;stroke-linecap:round}
.lb-title{font-size:18px;font-weight:700}
.lb-sub{font-size:12px;color:var(--ink3);text-align:center;margin-bottom:20px}
.lf{display:flex;flex-direction:column;gap:12px}
.lf-g{display:flex;flex-direction:column;gap:4px}
.lf-g label{font-size:10.5px;font-weight:600;color:var(--ink3);text-transform:uppercase;letter-spacing:.6px}
.lf-g input,.lf-g select{height:40px;border:1.5px solid var(--border);border-radius:var(--r);padding:0 12px;font-family:var(--font);font-size:13px;width:100%;color:var(--ink)}
.lf-g input:focus,.lf-g select:focus{outline:none;border-color:var(--p)}
.btn-login{height:42px;background:var(--p);color:white;border:none;border-radius:var(--r);font-family:var(--font);font-size:14px;font-weight:600;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:8px}
.btn-login:hover{background:var(--p2)}.btn-login:disabled{background:#94a3b8;cursor:not-allowed}
.li-err{color:var(--red);font-size:12px;text-align:center;display:none}
.lb-credit{position:absolute;bottom:22px;left:0;right:0;text-align:center;pointer-events:none}
.lb-credit a{pointer-events:auto}
.lb-credit-brand{font-size:15px;font-weight:800;letter-spacing:1.5px;color:rgba(255,255,255,.92)}
.lb-credit-brand .x{color:#d4af37}
.lb-credit-tag{font-size:8.5px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:2px}
.lb-credit-info{font-size:10.5px;color:rgba(255,255,255,.55);margin-top:6px}
.lb-credit-info a{color:rgba(255,255,255,.8);text-decoration:none}
.lb-credit-info a:hover{text-decoration:underline}
#welcome-banner{display:none;position:fixed;inset:0;background:linear-gradient(135deg,#0f172a,#134e4a);z-index:190;overflow-y:auto}
.wb-inner{max-width:680px;margin:0 auto;padding:24px 16px}
.wb-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:var(--r2);padding:14px;margin-bottom:10px}
.wb-event{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.wb-event:last-child{border-bottom:none}
.wb-ev-date{min-width:44px;text-align:center;background:rgba(255,255,255,.1);border-radius:7px;padding:5px 3px}
.wb-ev-day{font-size:17px;font-weight:700;color:white;line-height:1}
.wb-ev-mon{font-size:9px;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.5px}
