:root{color-scheme:dark;--red:#e8193e;--muted:#96a7ba;--white:#f3f6fb}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Segoe UI,Arial,sans-serif}body{background:#060d17;color:var(--white)}
.scene{position:fixed;inset:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 50% 40%,#122238 0%,#081321 45%,#040a12 100%)}
.world-map{position:absolute;left:50%;top:5%;width:max(1100px,110vw);transform:translateX(-50%);height:82%;opacity:.61;mask-image:linear-gradient(0deg,transparent 0%,#000 20%,#000 77%,transparent 100%)}
.world-map svg{width:100%;height:100%}
.scene:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,9,17,.52),transparent 50%,rgba(3,9,17,.52)),radial-gradient(ellipse at 50% 40%,transparent 8%,rgba(2,7,14,.5) 90%)}
.horizon{position:absolute;bottom:11%;height:23%;width:100%;background:linear-gradient(0deg,rgba(4,9,14,.95),transparent),radial-gradient(ellipse at 50% 92%,rgba(235,42,64,.17),transparent 56%)}
.runway{position:absolute;bottom:0;height:15%;width:100%;background:repeating-linear-gradient(90deg,transparent 0 37px,rgba(255,196,102,.54) 38px 40px,transparent 41px 106px),linear-gradient(180deg,transparent,#03070c 57%);opacity:.3;mask-image:linear-gradient(180deg,transparent 5%,#000 70%)}
.login-screen{position:relative;z-index:1;min-height:100svh;display:flex;justify-content:center;align-items:center;padding:88px 24px 48px}
.login-content{width:min(100%,460px);transform:translateY(22px);text-align:center;text-shadow:0 3px 18px rgba(0,0,0,.34)}
.brand-icon{color:var(--red);width:82px;height:76px;margin:0 auto 2px}.brand-icon svg{height:100%;width:100%}
.brand-name{font-size:16px;font-weight:750;letter-spacing:.25em;margin-bottom:33px;color:#e8edf5}.brand-name span{color:#ff3151}
h1{font-size:clamp(32px,4vw,40px);line-height:1.15;letter-spacing:-.04em;margin:0 0 10px;font-weight:700}.subtitle{color:#a7b5c5;font-size:12px;letter-spacing:.19em;font-weight:600;margin:0 0 32px}
form{display:grid;gap:16px}.field{height:60px;display:flex;align-items:center;gap:15px;padding:0 18px;background:#101d2e;border:1px solid rgba(147,168,194,.32);border-radius:12px;overflow:hidden;transition:border-color .2s,box-shadow .2s;backdrop-filter:blur(8px)}
.field:focus-within{border-color:#ef3957;box-shadow:0 0 0 3px rgba(231,24,63,.18)}.field svg{width:21px;height:21px;flex:none;color:#a3b4c8}.field input{display:block;appearance:none;-webkit-appearance:none;flex:1 1 0;width:0;min-width:0;height:100%;margin:0;padding:0;background:transparent!important;background-image:none!important;border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important;color:#f4f7fc;font:500 19px/1.4 Inter,Segoe UI,Arial,sans-serif!important;letter-spacing:normal;caret-color:#ff3151}.field input::placeholder{color:#aebccc;opacity:1}
.password-toggle{appearance:none;flex:none;cursor:pointer;background:transparent;border:0;border-radius:6px;color:#afbdd0;font:500 15px/1 Inter,Segoe UI,Arial,sans-serif;padding:10px 4px}.password-toggle:hover{color:white}
.submit{margin-top:6px;min-height:59px;border:0;border-radius:11px;color:#fff;font-size:17px;font-weight:700;background:linear-gradient(110deg,#f01d46,#c81131);box-shadow:0 9px 30px rgba(211,15,51,.22);cursor:pointer;transition:filter .2s,transform .2s}.submit span{font-size:21px;vertical-align:-1px;margin-left:8px}.submit:hover{filter:brightness(1.1);transform:translateY(-1px)}.submit:active{transform:translateY(0)}
.footnote{margin-top:35px;display:grid;gap:6px;font-size:11px;letter-spacing:.14em;color:#a0aebd}.notice{padding:12px 14px;margin-bottom:18px;border:1px solid rgba(255,85,106,.55);background:rgba(94,16,31,.7);border-radius:7px;color:#fff;font-size:13px;line-height:1.5}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:540px){.login-screen{align-items:center;padding:38px 24px}.world-map{width:1350px;top:10%;opacity:.38}.brand-name{margin-bottom:28px}.footnote{margin-top:28px}.field{height:56px}}@media(prefers-reduced-motion:reduce){.submit,.field{transition:none}}

/* Chrome / Edge password-manager autofill: remove mismatched dark rectangles. */
.field input:-webkit-autofill,
.field input:-webkit-autofill:hover,
.field input:-webkit-autofill:focus,
.field input:-webkit-autofill:active {
  -webkit-text-fill-color:#f4f7fc!important;
  -webkit-box-shadow:0 0 0 1000px #101d2e inset!important;
  box-shadow:0 0 0 1000px #101d2e inset!important;
  caret-color:#ff3151;
  border:0!important;
  transition:background-color 9999s ease-out 0s;
}
.field input::-ms-reveal,.field input::-ms-clear{display:none}
.field input:focus-visible,.password-toggle:focus-visible,.submit:focus-visible{outline:2px solid #ff4767;outline-offset:3px}
@media(max-width:540px){.login-content{transform:none}.field{height:58px}.submit{min-height:58px}}
