:root { color-scheme: dark; }
* { box-sizing: border-box; }
html, body { height: 100%; margin: 0; }
body { background: #0b0f14; color: #eef2f7; font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; display: grid; place-items: center; padding: 16px; }
.box { width: 100%; max-width: 380px; background: #131a22; border: 1px solid #243040; border-radius: 14px; padding: 28px 22px 24px; text-align: center; }
.logo { border-radius: 14px; }
h1 { margin: 14px 0 4px; font-size: 22px; }
.sub { margin: 0 0 18px; color: #8c97a4; font-size: 15px; }
form { text-align: left; }
label { display: block; font-size: 13px; color: #8c97a4; margin-bottom: 6px; }
input { width: 100%; height: 48px; padding: 0 14px; font-size: 18px; /* 16px or more: the phone does not zoom in */ border-radius: 10px; border: 1px solid #2f3d50; background: #0b0f14; color: #eef2f7; }
input:focus { outline: 2px solid #2962ff; border-color: #2962ff; }
button { width: 100%; height: 48px; margin-top: 14px; border: 0; border-radius: 10px; background: #2962ff; color: #fff; font-size: 17px; font-weight: 600; cursor: pointer; }
button:disabled { opacity: 0.6; cursor: default; }
.msg { min-height: 22px; margin: 12px 0 0; font-size: 14px; color: #ef5350; text-align: center; }
.hidden-user { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
