:root{color-scheme:dark;font-family:Segoe UI,Arial,sans-serif;color:#eff0f4;background:#090d14}
*{box-sizing:border-box}body{margin:0;padding:32px 18px;display:grid;place-items:center;min-height:100vh}
.window{width:min(860px,100%);display:grid;grid-template-columns:35% 65%;border:1px solid #41404a;border-radius:14px;overflow:hidden;background:#11151d}
aside{position:relative;min-height:570px;background:linear-gradient(0deg,#10131cf2,transparent 75%),url('/portal.jpg') center/cover}
.brand{font-weight:600;font-size:23px;color:#f2d49b;display:block;padding:26px;text-decoration:none}.brand small{display:block;font:11px/1.5 Segoe UI,sans-serif;margin-top:7px;color:#eee0c5}
.hero{position:absolute;bottom:34px;left:24px;right:20px}.hero span{font-size:12px;color:#e2b866}.hero h2{font:500 29px/1.2 Bahnschrift,Segoe UI,sans-serif}
section{padding:34px}.compact{padding:0;margin-bottom:36px;font-size:15px}h1{font:500 29px/1.2 Bahnschrift,Segoe UI,sans-serif;margin:0 0 18px}
p{font-size:14px;line-height:1.6;color:#adb6c5;margin:0 0 20px}label{display:block;font-size:13px;margin:18px 0 8px}
input:not([type=hidden]){width:100%;height:45px;background:#191f2b;border:1px solid #455064;border-radius:6px;color:#eff0f4;padding:10px 12px;font:16px Segoe UI,sans-serif}
button{width:100%;min-height:45px;margin-top:24px;border:1px solid #ebcb8a;border-radius:6px;background:linear-gradient(#e2c17e,#d1a653);color:#17130b;font:600 14px Segoe UI,sans-serif;padding:12px}
.quiet{background:transparent;color:#bbc2cf;border-color:#455064;margin-top:10px}.secondary{display:block;text-align:center;color:#d3b77c;margin-top:22px;font-size:13px}
:focus-visible{outline:2px solid #f3ce80;outline-offset:4px}button{cursor:pointer}a:hover{color:#f4d9a4}
.error{background:#3b2426;padding:12px;color:#ffc2bc;border-radius:6px}.code{text-align:center;font:500 28px/1.4 Consolas,monospace;letter-spacing:3px;color:#e2b866;padding:16px;background:#1b202a;margin-bottom:22px}
@media(max-width:580px){.window{grid-template-columns:1fr}aside{min-height:145px}.hero{display:none}.brand{padding:22px}section{padding:25px}.compact{padding:0}}