.auth-pagina{min-height:100dvh;padding:32px 16px calc(32px + env(safe-area-inset-bottom,0px));background:var(--surface-app);flex-direction:column;justify-content:center;align-items:center;gap:24px;display:flex}.auth-kaart-kop{align-items:center;gap:10px;display:flex}.auth-kaart-kop-vlak{border-radius:var(--radius-icon);background:var(--kd-blue-900);width:32px;height:32px;color:var(--kd-blue-200);font:700 14px var(--font-heading);flex:none;justify-content:center;align-items:center;display:flex}.auth-kaart-kop-naam{font:600 15px/1.2 var(--font-heading);color:var(--text-heading);letter-spacing:var(--track-snug)}.auth-kaart{border-radius:var(--radius-panel);background:var(--surface-card);width:100%;max-width:400px;box-shadow:var(--shadow-overlay);animation:kd-enter var(--dur-card) var(--ease-out);flex-direction:column;gap:20px;padding:32px 28px;display:flex}.auth-titel{font:600 22px/1.25 var(--font-heading);color:var(--text-heading);letter-spacing:var(--track-tight);margin:0}.auth-subtitel{font:var(--type-body-sm);color:var(--text-muted);margin:6px 0 0}.auth-formulier{flex-direction:column;gap:14px;display:flex}.form-row{flex-direction:column;gap:6px;display:flex}.form-row label{font:600 12px var(--font-heading);color:var(--kd-ink-700)}.input{width:100%;font:inherit;border:1px solid var(--line-default);border-radius:var(--radius-field);background:var(--surface-app);color:var(--text-body);transition:border-color var(--dur-control) ease, box-shadow var(--dur-control) ease;padding:11px 12px;font-size:16px}.input:hover{box-shadow:var(--hover-ring)}.input:focus{border-color:var(--kd-blue-400);box-shadow:var(--focus-ring);outline:none}.input-fout{border-color:var(--kd-red-600)}.veld-fout{font:var(--type-meta);color:var(--kd-red-600)}.btn{font:600 14px var(--font-heading);border-radius:var(--radius-control);cursor:pointer;transition:background var(--dur-control) ease, color var(--dur-control) ease;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:13px 16px;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--action-primary);color:var(--text-on-dark)}.btn-primary:hover:not(:disabled){background:var(--action-primary-hover);color:var(--kd-blue-900)}.btn-secundair{color:var(--action-primary);border-color:var(--action-primary);background:0 0}.btn-secundair:hover:not(:disabled){background:var(--kd-blue-200)}.auth-melding{font:var(--type-body-sm);border-radius:var(--radius-card);border:1px solid #0000;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.auth-melding svg{flex:none;margin-top:1px}.auth-melding-fout{border-color:var(--kd-red-600);background:var(--kd-red-50);color:var(--kd-red-600)}.auth-melding-succes{border-color:var(--kd-green-600);background:var(--kd-green-50);color:var(--kd-green-600)}.auth-links{font:var(--type-body-sm);justify-content:space-between;display:flex}.auth-links a{color:var(--text-link);text-decoration:none}.auth-links a:hover{color:var(--kd-blue-900);text-decoration:underline}.auth-link{color:var(--text-link);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;text-decoration:none}.auth-link:hover{color:var(--kd-blue-900)}.auth-link-terug{color:var(--text-link);cursor:pointer;background:0 0;border:0;align-self:center;padding:0;font-size:13px;text-decoration:none}.auth-link-terug:hover{color:var(--kd-blue-900)}.auth-otp-uitleg{font:var(--type-body-sm);color:var(--text-muted);text-align:center}.auth-qr{justify-content:center;padding:8px 0;display:flex}.auth-qr img{border-radius:var(--radius-icon);border:1px solid var(--line-default);width:176px;height:176px}.auth-geheim-rij{border:1px solid var(--line-default);border-radius:var(--radius-field);background:var(--surface-sunken);align-items:center;gap:8px;padding:10px 12px;display:flex}.auth-geheim-tekst{min-width:0;font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-body);word-break:break-all;flex:1;font-size:13px}.auth-geheim-kopieer{color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex:none;padding:4px;display:flex}.auth-geheim-kopieer:hover{color:var(--text-heading)}.auth-footer{border-top:1px solid var(--line-default);font:var(--type-meta);color:var(--text-faint);flex-wrap:wrap;gap:16px;padding-top:4px;display:flex}.auth-footer a{color:var(--text-faint);margin-left:auto}.auth-footer a:hover{color:var(--text-link)}.auth-footer a+a{margin-left:0}.auth-shell{background:var(--surface-app);grid-template-columns:repeat(auto-fit,minmax(340px,1fr));min-height:100dvh;display:grid}.auth-hero{background:var(--surface-hero);color:var(--text-on-dark);flex-direction:column;justify-content:center;gap:32px;min-height:420px;padding:48px 44px;display:flex}.auth-hero-merk{align-items:center;gap:12px;display:flex}.auth-hero-merk-vlak{border-radius:var(--radius-icon);background:var(--kd-blue-200);width:38px;height:38px;color:var(--kd-blue-900);font:700 16px var(--font-heading);flex:none;justify-content:center;align-items:center;display:flex}.auth-hero-merk-logo{border-radius:var(--radius-icon);object-fit:cover;background:#fff;flex:none;width:38px;height:38px}.auth-hero-naam{font:600 16px/1.2 var(--font-heading);letter-spacing:var(--track-snug)}.auth-hero-tagline{color:var(--kd-blue-200);font-size:12px}.auth-hero h1{font:600 30px/1.25 var(--font-heading);letter-spacing:var(--track-tight);max-width:420px;margin:0}.auth-hero p{font:var(--type-body-sm);color:var(--text-on-dark-muted);max-width:420px;margin:14px 0 0}.auth-panel{justify-content:center;align-items:center;padding:48px 28px;display:flex}.auth-panel-inner{width:100%;max-width:400px;animation:kd-enter var(--dur-card) var(--ease-out);flex-direction:column;gap:20px;display:flex}.auth-scheiding{align-items:center;gap:14px;display:flex}.auth-scheiding-lijn{background:var(--line-default);flex:1;height:1px}.auth-scheiding-tekst{font:var(--type-meta);color:var(--text-faint)}.auth-ms-knop{border:1px solid var(--line-default);border-radius:var(--radius-control);background:var(--surface-sunken);width:100%;color:var(--text-default);font:600 14px var(--font-heading);cursor:pointer;transition:border-color var(--dur-control) var(--ease-out);justify-content:center;align-items:center;gap:12px;padding:13px 16px;display:flex}.auth-ms-knop:hover:not(:disabled){border-color:var(--line-strong,var(--line-default))}.auth-ms-knop:disabled{cursor:not-allowed;color:var(--text-faint)}.auth-ms-logo{flex:none;grid-template-rows:repeat(2,9px);grid-template-columns:repeat(2,9px);gap:2px;display:grid}.auth-ms-logo span:first-child{background:#f25022}.auth-ms-logo span:nth-child(2){background:#7fba00}.auth-ms-logo span:nth-child(3){background:#00a4ef}.auth-ms-logo span:nth-child(4){background:#ffb900}.checkbox-rij{align-items:center;gap:10px;display:flex}.checkbox-label{font:var(--type-body-sm);color:var(--kd-ink-700);cursor:pointer}
