/* KraamMarkt aanmeldformulier */
#kmd-form-wrap { max-width: 820px; margin: 0 auto; font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }
.kmd-section { background: #fff; border: 1px solid #e5e7eb; border-radius: 10px; padding: 24px; margin-bottom: 18px; }
.kmd-section h3 { margin: 0 0 18px; font-size: 16px; color: #1a1a2e; border-bottom: 1px solid #e5e7eb; padding-bottom: 10px; }
.kmd-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 14px; }
.kmd-row:last-child { margin-bottom: 0; }
.kmd-col { display: flex; flex-direction: column; gap: 4px; }
.kmd-col-wide { grid-column: span 1; flex: 2; }
.kmd-col-small { flex: 1; }
.kmd-col label { font-size: 13px; font-weight: 600; color: #374151; }
.kmd-col input, .kmd-col select { padding: 10px 12px; border: 1px solid #d1d5db; border-radius: 7px; font-size: 14px; width: 100%; transition: border .15s; }
.kmd-col input:focus, .kmd-col select:focus { outline: none; border-color: #c084b8; box-shadow: 0 0 0 3px rgba(192,132,184,.12); }
.req { color: #ef4444; }
.kmd-doc-info { color: #6b7280; font-size: 13px; margin: 0 0 14px; }
.kmd-doc-row { display: flex; align-items: flex-start; gap: 16px; padding: 12px 0; border-bottom: 1px solid #f3f4f6; }
.kmd-doc-row:last-child { border-bottom: none; }
.kmd-doc-label { font-weight: 600; font-size: 14px; min-width: 180px; padding-top: 6px; }
.kmd-doc-controls { display: flex; flex-direction: column; gap: 8px; flex: 1; }
.kmd-file-input { padding: 6px; border: 1px dashed #d1d5db; border-radius: 6px; font-size: 13px; }
.kmd-later-lbl { display: flex; align-items: center; gap: 6px; font-size: 13px; color: #6b7280; cursor: pointer; }
.kmd-later-lbl input { width: auto; accent-color: #c084b8; }
.kmd-file-input.kmd-disabled { opacity: .4; pointer-events: none; }
.kmd-check-label { display: flex; gap: 10px; font-size: 14px; cursor: pointer; align-items: flex-start; }
.kmd-check-label input { margin-top: 3px; accent-color: #c084b8; flex-shrink: 0; }
.kmd-errors { background: #fef2f2; border: 1px solid #fecaca; border-radius: 8px; padding: 14px 18px; }
.kmd-errors li { color: #991b1b; font-size: 14px; margin-bottom: 4px; }
.kmd-submit-wrap { display: flex; justify-content: flex-end; margin-top: 6px; }
#kmd-submit { background: #c084b8; color: #fff; border: none; padding: 14px 36px; border-radius: 9px; font-size: 16px; font-weight: 700; cursor: pointer; transition: background .2s; }
#kmd-submit:hover { background: #a065a0; }
#kmd-submit:disabled { opacity: .6; cursor: default; }
.kmd-success-box { text-align: center; padding: 60px 40px; background: #f0fdf4; border: 1px solid #bbf7d0; border-radius: 12px; }
.kmd-success-icon { font-size: 52px; color: #10b981; margin-bottom: 16px; }
.kmd-success-box h3 { color: #065f46; font-size: 22px; margin: 0 0 8px; }
@media(max-width:600px){
    .kmd-row { grid-template-columns: 1fr; }
    .kmd-doc-row { flex-direction: column; }
}
