@font-face{font-family:SegoeUI;src:url('/assets/SegoeUI.woff') format('woff');font-weight:400;font-display:swap}@font-face{font-family:SegoeUI;src:url('/assets/SegoeUI-SemiBold.woff') format('woff');font-weight:600;font-display:swap}
*{box-sizing:border-box}html{height:100%;color-scheme:dark}body{margin:0;min-height:100%;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 22% 10%,#302039 0,transparent 50%),radial-gradient(ellipse at 92% 90%,#141b36 0,transparent 45%),#131317;color:#f5f5f7;font:18px SegoeUI,Arial,sans-serif;padding:40px 24px}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}.login-card{width:100%;max-width:440px}.login-logo{display:block;width:270px;max-width:85%;height:auto;margin:0 auto 28px}h1{font-size:30px;font-weight:600;text-align:center;margin:0 0 8px}.subtitle{text-align:center;color:#aaa8b5;margin:0 0 30px;font-size:16px}form>label:not(.remember){display:block;margin:18px 0 9px;font-size:16px;color:#e2e0e8}input[type=text],input[type=password]{display:block;width:100%;height:56px;border:1px solid #53515e;background:#222128;color:white;border-radius:12px;padding:0 16px;outline:none}input:focus{border-color:#b4a3ff;box-shadow:0 0 0 3px #9b80ff30}.password-field{position:relative}.password-field input{padding-right:58px}.reveal-password{position:absolute;right:6px;top:6px;width:44px;height:44px;background:none;border:0;color:#c3bdcf;border-radius:8px}.reveal-password svg{width:24px;height:24px;vertical-align:middle}.remember{display:flex;align-items:center;gap:10px;margin:22px 0;font-size:15px;color:#c2becb;cursor:pointer}.remember input{width:19px;height:19px;accent-color:#b495ff;margin:0;flex-shrink:0}button[type=submit],#refreshSetup{width:100%;min-height:54px;border:0;border-radius:12px;background:#f5f4f8;color:#17151e;font-weight:600;transition:background .15s,transform .15s}button[type=submit]:hover,#refreshSetup:hover{background:#dbd1ff}button:focus-visible{outline:3px solid #b495ff;outline-offset:4px}button[type=submit]:active{transform:scale(.985)}.login-error{font-size:15px;color:#ffa8b7;line-height:1.45;margin:0 0 18px}#loginStatus{text-align:center;color:#c2becb;font-size:16px}#setupState{font-size:17px;line-height:1.6;color:#c2becb}#setupState h2{font-size:22px;color:#f5f5f7;font-weight:600}.login-footer{margin:28px 0 0;text-align:center;font-size:14px;color:#8b8698}@media(max-height:720px){body{padding-top:25px;padding-bottom:25px}.login-logo{width:220px;margin-bottom:20px}.subtitle{margin-bottom:20px}.login-footer{margin-top:20px}}

html.tv-mode .tv-input-button{display:block;width:100%;height:64px;text-align:left;border:1px solid #53515e;background:#222128;color:#d5d1df;border-radius:12px;padding:0 16px;font:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html.tv-mode .tv-input-button:focus,html.tv-mode button:focus{outline:3px solid white;outline-offset:3px}html.tv-mode .tv-input-button:focus{background:white;color:#202025}html.tv-mode .login-card{max-width:520px}html.tv-mode input[type=text],html.tv-mode input[type=password]{height:64px}html.tv-mode .remember input:focus{outline:3px solid white;outline-offset:4px}
