:root {
    color-scheme: light;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background: #f4f5fb;
    color: #292b31;
}

* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: #f4f5fb; }
.container { min-height: 100vh; display: grid; place-items: center; padding: 24px; }
.card { width: min(720px, 100%); padding: 32px; background: #fff; border: 1px solid #e1e3ea; border-radius: 16px; box-shadow: 0 12px 32px rgba(41, 43, 49, .08); }
.eyebrow { margin: 0 0 8px; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #5f6673; }
h1 { margin: 0 0 12px; font-size: clamp(28px, 5vw, 42px); line-height: 1.1; }
p { color: #5f6673; }
.button { display: inline-block; margin-top: 12px; padding: 10px 16px; border-radius: 10px; background: #292b31; color: #fff; text-decoration: none; font-weight: 600; }
.button:focus-visible { outline: 3px solid #8aa8ff; outline-offset: 2px; }

/* --- Auth (login / access) --- */
.card-narrow { width: min(420px, 100%); }
.alert { margin: 16px 0 4px; padding: 12px 14px; border-radius: 10px; font-size: 14px; }
.alert-error { background: #fdecec; color: #a12622; border: 1px solid #f5c2c0; }
.alert-info { background: #eaf1ff; color: #274690; border: 1px solid #c5d6ff; }
.field { display: block; margin: 14px 0; }
.field-label { display: block; margin-bottom: 6px; font-size: 13px; font-weight: 600; color: #3c4049; }
.field-input { width: 100%; padding: 10px 12px; border: 1px solid #d3d6de; border-radius: 10px; font-size: 15px; background: #fff; color: #292b31; }
.field-input:focus-visible { outline: 3px solid #8aa8ff; outline-offset: 1px; border-color: #8aa8ff; }
.button-block { display: block; width: 100%; text-align: center; border: 0; cursor: pointer; font-size: 15px; margin-top: 8px; }
