/* "Kinder & Erziehungsberechtigte" (O8) — the reply-form extension on the
   card page (mn-person / mn-reply, inside the RSVP builder form), the
   guardian's confirmation page (mn-landing) and the dashboard panel. The
   ap-* block is the shared look of the add-on panels (public/addons/lib/ap-panel.css, imported once below). */
@import url("/public/addons/lib/ap-panel.css?v=8f9bd15a"); /* the ap-* panel look, ONE copy */

/* ---- add-on specific ---- */
a.ap-entry.has-new { font-weight: 600; }
/* reply form (card page) */
.mn-person { display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: flex-end; margin: 6px 0 2px; padding: 8px 10px; border-left: 3px solid rgba(157,90,99,0.35); background: rgba(255,255,255,0.55); border-radius: 8px; }
.mn-person .rsvpb-q { margin: 0; }
.mn-person .mn-half input { width: 6.5em; }
.mn-person .rsvpb-check { flex: 1 1 100%; }
.mn-reply { display: flex; flex-direction: column; gap: 8px; margin: 10px 0; }
.mn-guardian, .mn-selfbox { border: 1px solid rgba(0,0,0,0.12); border-radius: 12px; padding: 8px 12px 12px; margin: 0; display: flex; flex-direction: column; gap: 6px; }
.mn-guardian legend { padding: 0 4px; }
.mn-locked { background: rgba(143,181,146,0.15); border-radius: 10px; padding: 8px 10px; }
/* guardian page */
.mn-card { max-width: 560px; }
.mn-lead, .mn-text { font-size: 15px; line-height: 1.55; color: var(--ink); }
.mn-h2 { font-size: 16px; color: var(--rose-2); margin: 14px 0 6px; }
.mn-list { margin: 0 0 10px 18px; padding: 0; line-height: 1.6; }
.mn-meta { font-size: 13px; color: var(--ink-soft); line-height: 1.5; }
.mn-form { display: flex; flex-direction: column; gap: 12px; margin-top: 14px; }
.mn-field { display: flex; flex-direction: column; gap: 4px; font-size: 13px; color: var(--ink-soft); }
.mn-field input { font: inherit; font-size: 15px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 10px; }
.mn-check { display: flex; gap: 8px; align-items: flex-start; font-size: 14px; line-height: 1.45; cursor: pointer; }
.mn-check input { margin-top: 3px; flex: none; }
.mn-err { color: #a33; font-size: 14px; }
.mn-link input { width: 100%; font: inherit; font-size: 13px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 10px; }
.mn-form .btn { width: 100%; }
/* dashboard panel */
.mn-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.mn-table th, .mn-table td { text-align: left; padding: 6px 8px; border-bottom: 1px solid var(--line); vertical-align: top; overflow-wrap: anywhere; }
.mn-table th { color: var(--ink-soft); font-weight: 600; }
.mn-no { color: #a33; font-weight: 600; }
@media (max-width: 640px) {
  .mn-table thead { display: none; }
  .mn-table tr { display: block; border-bottom: 1px solid var(--line); padding: 6px 0; }
  .mn-table td { display: block; border: 0; padding: 2px 0; }
  .mn-table td[data-l]::before { content: attr(data-l) ": "; color: var(--ink-soft); }
}
.mn-print { display: none; }
@media print {
  body.mn-printing > *:not(.mn-print) { display: none !important; }
  body.mn-printing .mn-print { display: block !important; color: #000; }
  .mn-print h1 { font-family: var(--serif); font-size: 18pt; margin: 0 0 5mm; }
  .mn-print table { width: 100%; border-collapse: collapse; font-size: 10pt; }
  .mn-print th, .mn-print td { border: 1px solid #999; padding: 1.5mm 2mm; text-align: left; }
}
