/* CI 2026.01 - Anmeldeseiten SecureLearn (Plan T5). Feinschliff in T21. */
:root {
  --bg: #f4f7fc; --card: #ffffff; --accent: #0c4da2; --accent-cyan: #26bdef;
  --text: #111111; --text-2: #555555; --border: #d0daea; --danger: #c0392b; --success: #1a7a5e;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html { font-size: 16px; }
body { font-family: 'Manrope', Arial, sans-serif; background: var(--bg); color: var(--text);
       min-height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 1.5rem; }
main { background: var(--card); width: 100%; max-width: 440px; padding: 2.25rem 2rem; border-radius: 12px;
       border: 1px solid var(--border); box-shadow: 0 12px 40px rgba(12, 77, 162, 0.10); }
.brand { font-weight: 800; color: var(--accent); margin-bottom: 1.25rem; letter-spacing: -0.02em; }
.brand span { color: var(--accent-cyan); }
h1 { font-size: 1.5rem; line-height: 1.25; margin-bottom: 0.75rem; letter-spacing: -0.02em; }
p { color: var(--text-2); line-height: 1.55; margin-bottom: 1rem; }
label { display: block; font-weight: 600; margin-bottom: 0.4rem; }
input[type=email], input[type=text] { width: 100%; font: inherit; font-size: 1.05rem; padding: 0.75rem 0.9rem;
       border: 1px solid var(--border); border-radius: 8px; margin-bottom: 1rem; }
input:focus-visible, button:focus-visible { outline: 3px solid var(--accent-cyan); outline-offset: 2px; }
button { width: 100%; font: inherit; font-weight: 700; font-size: 1.05rem; padding: 0.8rem 1rem; border: 0;
         border-radius: 8px; background: var(--accent); color: #fff; cursor: pointer; }
button:hover { background: #0a4289; }
button[disabled] { opacity: 0.6; cursor: wait; }
.msg { margin-top: 1rem; padding: 0.75rem 0.9rem; border-radius: 8px; line-height: 1.5; }
.msg.ok { background: #e8f5f0; color: var(--success); }
.msg.err { background: #fdecea; color: var(--danger); }
.hidden { display: none; }
a { color: var(--accent); font-weight: 600; }
footer { margin-top: 1.5rem; font-size: 0.8rem; color: #888888; }
