/* Отдельная страница входа: её стили не подключаются к интерфейсу матчей. */
* { box-sizing: border-box; }
body { margin: 0; min-height: 100svh; padding: 24px; display: grid; place-items: center; background: #0b0f15; color: #e6ecf5; font: 15px/1.5 'Segoe UI', sans-serif; color-scheme: dark; }
.login-card { width: min(100%, 420px); padding: 30px; border: 1px solid #2b3549; border-radius: 16px; background: #151d2d; }
.brand { color: #a6b7ff; font-size: 12px; letter-spacing: 2px; }
h1 { margin: 16px 0 8px; font-size: 26px; font-weight: 500; }
p { color: #aab7ca; margin-bottom: 24px; }
label { display: block; margin: 14px 0 6px; }
input { width: 100%; min-width: 0; padding: 12px; border: 1px solid #40506b; border-radius: 7px; background: #0c1320; color: #fff; font: inherit; }
button { padding: 12px; cursor: pointer; border: 1px solid #40506b; border-radius: 7px; background: #202c41; color: #e6ecf5; font: inherit; }
.password-row { display: flex; gap: 8px; }
.submit { width: 100%; margin-top: 24px; background: #a6b7ff; border-color: #a6b7ff; color: #111829; font-weight: 600; }
:focus-visible { outline: 2px solid #c6d0ff; outline-offset: 3px; }
@media (max-width: 400px) { .login-card { padding: 22px; } body { padding: 16px; } }
