/* login.css | Versie 1.0 -- 2026-09-23 | Verplaatst uit inline <style> in login.html (CSP-opschoning, geen 'unsafe-inline' meer nodig voor style-src) -- opmaak ongewijzigd overgenomen */
* { box-sizing: border-box; }
body {
  margin: 0; min-height: 100vh; display: flex; align-items: center; justify-content: center;
  background: #f2f2f2; font-family: 'Segoe UI', system-ui, sans-serif; color: #1b1b1b;
}
.kaart {
  width: 100%; max-width: 440px; background: #ffffff; padding: 44px 44px 36px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.15); margin: 20px;
}
.ms-logo { display: flex; align-items: center; gap: 10px; margin-bottom: 28px; }
.ms-logo .vierkanten { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; gap: 2px; width: 22px; height: 22px; }
.ms-logo .vierkanten span { display: block; }
.ms-logo .v1 { background: #f25022; }
.ms-logo .v2 { background: #7fba00; }
.ms-logo .v3 { background: #00a4ef; }
.ms-logo .v4 { background: #ffb900; }
.ms-logo .wordmark { font-size: 21px; color: #5e5e5e; }
h1 { font-size: 24px; font-weight: 600; margin: 0 0 8px; }
.subtitel { font-size: 15px; color: #1b1b1b; margin: 0 0 24px; }
.subtitel strong { font-weight: 600; }
label { display: block; font-size: 15px; margin-bottom: 4px; }
input[type="email"], input[type="text"], input[type="password"] {
  width: 100%; padding: 8px 1px; border: none; border-bottom: 1px solid #666666;
  font-size: 15px; font-family: inherit; margin-bottom: 4px; background: transparent;
}
input[type="email"]:focus, input[type="text"]:focus, input[type="password"]:focus {
  outline: none; border-bottom: 2px solid #0067b8; margin-bottom: 3px;
}
.stap { display: none; }
.stap.actief { display: block; }
.veld-fout { color: #a80000; font-size: 13px; margin: 8px 0 0; min-height: 16px; }
.knoppenrij { display: flex; justify-content: flex-end; margin-top: 28px; gap: 8px; }
button {
  font-family: inherit; font-size: 15px; padding: 9px 26px; border-radius: 2px; cursor: pointer;
}
.knop-volgende, .knop-aanmelden {
  background: #0067b8; color: #ffffff; border: 1px solid #0067b8;
}
.knop-volgende:hover, .knop-aanmelden:hover { background: #005a9e; }
.knop-terug { background: transparent; border: 1px solid transparent; color: #1b1b1b; }
.knop-terug:hover { text-decoration: underline; }
.disclaimer {
  margin-top: 28px; padding-top: 16px; border-top: 1px solid #ececec;
  font-size: 12px; color: #999999; line-height: 1.5;
}
