/* Login / registration screen (js/login-screen.js). Same look as the Settings window:
   space art, cyan frame and glow, navy glass panels, green buttons, VAG Rounded. */
#login-screen{position:fixed;inset:0;z-index:80;overflow:hidden;background:#05081a;color:#fff;font:15px/1.4 "MG VAG","Trebuchet MS",Arial,sans-serif}
#login-screen[hidden]{display:none}
#login-screen *{box-sizing:border-box}

/* blurred copy of the title art behind the stage */
#login-screen .ls-backdrop{position:absolute;inset:-60px;background:#0d1530 url("../assets/login/title-blur.jpg") center/cover;filter:blur(28px) brightness(.42) saturate(1.25);transform:scale(1.05)}
#login-screen .ls-backdrop::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(13,21,48,0) 30%,rgba(5,8,26,.85) 100%)}

/* the 760x660 stage, same size rules as the game (map.css --stage-w / --stage-h) */
#login-screen .ls-stage{position:absolute;left:50%;top:50%;width:var(--stage-w);height:var(--stage-h);transform:translate(-50%,-50%)}
#login-screen .ls-art{position:absolute;inset:0;border-radius:16px;background:#0d1530 url("../assets/login/title.jpg") center/cover;box-shadow:0 0 0 3px #3fd0e8,0 0 0 5px rgba(13,21,48,.9),0 0 34px rgba(63,208,232,.4),0 24px 60px rgba(0,0,0,.75)}
#login-screen .ls-art::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(5,8,26,0) 55%,rgba(5,8,26,.45) 100%)}

/* intro (intro.swf) - its own Play Now / Skip Intro bars are covered; our Skip button sits in the bottom bar */
#login-screen .ls-intro{position:absolute;inset:0;z-index:3;overflow:hidden;border-radius:16px;background:#000;box-shadow:0 0 0 3px #3fd0e8,0 0 34px rgba(63,208,232,.35);transition:opacity .45s ease}
#login-screen .ls-intro[hidden]{display:none}
#login-screen .ls-intro.is-leaving{opacity:0}
#login-screen .ls-intro-player{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
#login-screen .ls-intro::before,#login-screen .ls-intro::after{content:"";position:absolute;left:0;right:0;z-index:1;background:#000;pointer-events:none}
#login-screen .ls-intro::before{top:0;height:17.8%}
#login-screen .ls-intro::after{bottom:0;height:18.4%}
#login-screen #ls-skip{position:absolute;z-index:2;right:calc(var(--stage-w) * 0.02895);bottom:calc(var(--stage-w) * 0.03947);min-height:0;padding:calc(var(--stage-w) * 0.01184) calc(var(--stage-w) * 0.02368);border:1.5px solid rgba(255,255,255,.7);border-radius:999px;background:rgba(13,21,48,.75);color:#fff;font:clamp(12px,calc(var(--stage-w) * 0.01974),16px) "MG VAG Bold","MG VAG",Arial,sans-serif;letter-spacing:.3px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
#login-screen #ls-skip:hover,#login-screen #ls-skip:focus-visible{background:#3fd0e8;border-color:#3fd0e8;color:#0d1530;outline:none}

/* the card */
#login-screen .ls-card{position:absolute;z-index:2;left:50%;top:calc(50% + var(--stage-h) * -0.03);width:clamp(290px,calc(var(--stage-w) * 0.47368),400px);padding:clamp(14px,calc(var(--stage-w) * 0.02368),20px);border:3px solid #3fd0e8;border-radius:16px;background:rgba(8,14,34,.86) url("../assets/ui-icons/window-bg.png") center/100% 100%;background-blend-mode:multiply;box-shadow:0 0 0 2px rgba(13,21,48,.9),0 0 22px rgba(63,208,232,.45),0 14px 40px rgba(0,0,0,.7);transform:translate(-50%,10px);opacity:0;transition:opacity .35s ease,transform .35s ease,top .3s ease;font-size:clamp(13px,calc(var(--stage-w) * 0.01842),15px)}
#login-screen .ls-card[hidden]{display:none}
#login-screen .ls-card.is-shown{opacity:1;transform:translate(-50%,0)}
#login-screen .ls-card.is-register{top:calc(50% + var(--stage-h) * -0.07)}
#login-screen .ls-card.is-busy{cursor:progress}

/* tabs */
#login-screen .ls-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:0 0 16px;padding:4px;border:1px solid rgba(63,208,232,.22);border-radius:12px;background:rgba(5,12,30,.7)}
#login-screen .ls-tabs button{min-height:0;margin:0;padding:9px 8px;border:0;border-radius:9px;background:transparent;color:#9fb3d9;font:1.02em "MG VAG Bold","MG VAG",Arial,sans-serif;cursor:pointer;transition:background .15s,color .15s}
#login-screen .ls-tabs button:hover{color:#fff;background:rgba(63,208,232,.1)}
#login-screen .ls-tabs button[aria-selected="true"]{background:linear-gradient(180deg,#1a9ab8,#0b6c86);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 0 10px rgba(63,208,232,.35)}
#login-screen .ls-tabs button:focus-visible{outline:2px solid #3fd0e8;outline-offset:2px}

/* forms */
#login-screen .ls-form{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px}
#login-screen .ls-form[hidden]{display:none}
#login-screen .ls-form label{grid-column:1/-1;display:flex;flex-direction:column;gap:5px;color:#cfe0ff;font-size:.93em}
#login-screen .ls-form label.half{grid-column:auto}
#login-screen .ls-form label small{color:#9fb3d9;font-size:.88em;font-family:"MG VAG",Arial,sans-serif}
#login-screen .ls-form input{width:100%;min-width:0;height:2.6em;padding:0 .8em;border:1px solid rgba(127,180,255,.28);border-radius:8px;background:rgba(5,12,30,.88);color:#fff;font:1.02em "MG VAG","Trebuchet MS",Arial,sans-serif;transition:border-color .15s,box-shadow .15s}
#login-screen .ls-form input::placeholder{color:#6f84ad}
#login-screen .ls-form input:focus{outline:none;border-color:#3fd0e8;box-shadow:0 0 0 2px rgba(63,208,232,.3)}
#login-screen .ls-form input:disabled{opacity:.5;cursor:not-allowed}
#login-screen .ls-pass{position:relative;display:block}
#login-screen .ls-pass input{padding-right:4.2em}
#login-screen .ls-eye{position:absolute;right:.35em;top:50%;transform:translateY(-50%);min-height:0;margin:0;padding:.3em .6em;border:0;border-radius:6px;background:transparent;color:#7fd8ff;font:.82em "MG VAG Bold","MG VAG",Arial,sans-serif;cursor:pointer}
#login-screen .ls-eye:hover{background:rgba(63,208,232,.15);color:#fff}
#login-screen .ls-eye:focus-visible{outline:2px solid #3fd0e8;outline-offset:1px}
#login-screen .ls-hint{grid-column:1/-1;margin:-2px 0 0;color:#9fb3d9;font-size:.85em}
#login-screen .ls-closed{grid-column:1/-1;margin:0;padding:.6em .8em;border:1px solid rgba(255,204,51,.35);border-radius:8px;background:rgba(255,204,51,.1);color:#ffe08a;font-size:.92em;text-align:center}
#login-screen .ls-closed[hidden]{display:none}
#login-screen .ls-primary{grid-column:1/-1;min-height:0;margin:4px 0 0;padding:.75em 1em;border:2px solid #7fe29a;border-radius:10px;background:linear-gradient(#24b04a,#16912f);color:#fff;font:1.08em "MG VAG Bold","MG VAG",Arial,sans-serif;letter-spacing:.3px;text-shadow:0 1px 0 rgba(0,0,0,.3);box-shadow:0 3px 0 rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.25);cursor:pointer;transition:filter .15s,transform .05s}
#login-screen .ls-primary:hover{filter:brightness(1.1)}
#login-screen .ls-primary:active{transform:translateY(1px)}
#login-screen .ls-primary:focus-visible{outline:2px solid #fff;outline-offset:2px}
#login-screen .ls-primary:disabled{filter:grayscale(.4) brightness(.85);cursor:wait;transform:none}
#login-screen .ls-message{min-height:1.3em;margin:12px 0 0;text-align:center;font-size:.92em}
#login-screen .ls-message:empty{display:none}
#login-screen .ls-message[data-kind="error"]{color:#ff9a9a}
#login-screen .ls-message[data-kind="ok"]{color:#7fe29a}
#login-screen .ls-message[data-kind="info"]{color:#ffe08a}

/* phones (portrait): art at the top, card under the logo */
@media (max-width:640px) and (orientation:portrait){
  #login-screen{overflow-y:auto}
  #login-screen .ls-stage{top:12px;transform:translateX(-50%)}
  #login-screen .ls-card,#login-screen .ls-card.is-register{top:calc(12px + var(--stage-h) * 0.5);width:min(400px,calc(100vw - 24px))}
}
/* short screens (landscape phones): the card sits in the middle of the screen */
@media (max-height:560px) and (orientation:landscape){
  #login-screen .ls-card,#login-screen .ls-card.is-register{top:50%;max-height:calc(100vh - 24px);overflow:auto;transform:translate(-50%,calc(-50% + 10px))}
  #login-screen .ls-card.is-shown{transform:translate(-50%,-50%)}
}
@media (max-width:380px){#login-screen .ls-form{grid-template-columns:1fr}#login-screen .ls-form label.half{grid-column:1/-1}}
@media (prefers-reduced-motion:reduce){#login-screen .ls-card,#login-screen .ls-intro{transition:none}}
