
.ma2{
display:flex;
flex-direction:row;
}

.ma2_m{
min-height:400px;
margin:5px 20px;
}

.ma2_r{
min-height:400px;
margin:5px 10px;
}

.ma_suche td{
height:25px;
}

.ma_suche_liste{
font-size:14px;
}
.ma_suche_liste td{
padding:5px;
}
.ma_suche_liste a, .ma_suche_liste a:visited{
font-weight:bold;
text-decoration:none;
color:darkgreen;
}
.ma_suche_liste a:hover{
font-weight:bold;
text-decoration:underline;
color:darkorange;
}



.telefonliste{
border-collapse:collapse;
border:1px solid black;
margin:0;
page-break-after: always;
}

.telefonliste td{
height:5.6mm;
font-weight:normal;
font-family:"Times New Roman",serif;
font-size:10pt;
border-bottom:1px solid black;
border-left:1px solid lightgray;
border-right:1px solid lightgray;
padding:0.5mm 0mm 0.5mm 1.5mm;
}
.telefonliste span{
display:block;
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}
.telefonliste .uschrift{
font-weight:bold;
height:5.0mm;
}
.telefonliste .links{
border-left:1px solid black;
}
.telefonliste .rechts{
border-right:1px solid black;
}
.telefonliste .td1, .telefonliste .td1 span{
width:35mm;
}
.telefonliste .td2, .telefonliste .td2 span{
width:30mm;
}
.telefonliste .td3, .telefonliste .td3 span{
width:30mm;
}
.telefonliste .td4, .telefonliste .td4 span{
width:30mm;
}
.telefonliste .td5, .telefonliste .td5 span{
width:30mm;
}
.telefonliste .tdjain, .telefonliste .tdjain span{
width:10mm;
}
.telefonliste .tdbem, .telefonliste .tdbem span{
width:40mm;
}
.telefonliste .tddatum, .telefonliste .tddatum span{
width:20mm;
}
.telefonliste .tdort, .telefonliste .tdort span{
width:20mm;
}


.geburtstagliste{
border-collapse:collapse;
border:1px solid black;
margin:0;
page-break-after: always;
}

.geburtstagliste td{
height:5.6mm;
font-weight:normal;
font-family:"Times New Roman",serif;
font-size:10pt;
border-bottom:1px solid black;
border-left:1px solid lightgray;
border-right:1px solid lightgray;
padding:0.5mm 0mm 0.5mm 1.5mm;
}
.geburtstagliste span{
display:block;
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}
.geburtstagliste .uschrift{
font-weight:bold;
height:5.0mm;
}
.geburtstagliste .links{
border-left:1px solid black;
}
.geburtstagliste .rechts{
border-right:1px solid black;
}
.geburtstagliste .td1, .geburtstagliste .td1 span{
width:20mm;
}
.geburtstagliste .td2, .geburtstagliste .td2 span{
width:10mm;
}
.geburtstagliste .td3, .geburtstagliste .td3 span{
width:45mm;
}
.geburtstagliste .td4, .geburtstagliste .td4 span{
width:45mm;
}
.geburtstagliste .td5, .geburtstagliste .td5 span{
width:30mm;
}


.liste_aktiv, .liste_inaktiv, .liste_ehemalig{
    width:80px;
    font-weight:bold;
}


.ehrenamt{
    border: 1px solid lightgray;
    margin: 0px;
    padding: 10px;
}

.ehrenamt_titel{
    color: darkorange;
    font-size: 10pt;
    font-weight: bold;
    font-style: italic;
}

.ehrenamt_titel .show{
    color: darkgreen;
    font-weight: normal;
}

.ehrenamt_titel .hide{
    color: darkblue;
    font-weight: normal;
}

#ehrenamt:target .ehrenamt_ausblenden{
    display: block;
}


#ehrenamt:not(:target) .hide,
#ehrenamt:target .show,
#ehrenamt:not(:target) .ehrenamt_ausblenden{
    display: none;
}


.schulung{
    border: 1px solid lightgray;
    margin: 0px;
    padding: 10px;
}

.schulung_titel{
    color: darkorange;
    font-size: 10pt;
    font-weight: bold;
    font-style: italic;
}

.schulung_titel .show{
    color: darkgreen;
    font-weight: normal;
}

.schulung_titel .hide{
    color: darkblue;
    font-weight: normal;
}

#schulung:target .schulung_ausblenden{
    display: block;
}


#schulung:not(:target) .hide,
#schulung:target .show,
#schulung:not(:target) .schulung_ausblenden{
    display: none;
}


@media print{
#    .telefonliste{
#	page-break-after:always;
#    }
}

/* ── aus legacy.css ── */
.ma_filter {
  display: flex; align-items: center; gap: 8px;
  padding: 6px 0 6px 0; flex-wrap: wrap;
}
.ma_filter input[type=text] { font-size: 10pt; padding: 2px 4px; width: 150px; }
.ma_filter select { font-size: 10pt; padding: 2px 4px; }

/* Spalten-Konfigurator */
.ma_konfig {
  background: #f8f8f8; border: 1px solid #ccc;
  padding: 8px 10px; margin-bottom: 6px; display: none;
}
.ma_konfig.open { display: block; }
#ma_konfig_zeilen { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 6px; }
.ma_konfig_zeile {
  display: flex; flex-direction: column; align-items: flex-start; gap: 3px;
  font-size: 10pt; border: 1px solid #ddd; padding: 4px 6px; background: white;
}
.ma_konfig_zeile input[type=text] { font-size: 10pt; padding: 2px 4px; width: 80px; }
.ma_konfig_zeile input[type=checkbox] { margin: 0; }
.ma_konfig_zeile .ma_kz_del { color: red; cursor: pointer; font-size: 11pt; border: none; background: none; padding: 0; align-self: flex-end; }
.ma_konfig_titel { font-weight: bold; color: darkorange; margin-bottom: 6px; font-size: 10pt; }
.ma_konfig_add { font-size: 10pt; margin-top: 4px; cursor: pointer; color: darkblue; border: 1px solid #bbb; background: white; padding: 2px 8px; }

.ma_liste { border-collapse: collapse; font-size: 11pt; }
.ma_liste th {
  background: #f0f0f0; border: 1px solid #bbb;
  padding: 4px 6px; text-align: left; font-size: 10.5pt; white-space: nowrap;
}
.ma_liste td { border: 1px solid #ddd; padding: 4px 6px; vertical-align: middle; }
.ma_liste tr:hover td { background: #fff8f0; cursor: pointer; }
.ma_name { font-weight: bold; }
.ma_status_9 td { color: #aaa; }
.ma_status_5 td { color: #888; font-style: italic; }
.ma_anzahl { font-size: 10pt; color: #999; padding: 3px 0 4px 0; }
.ma_konfig_btn { font-size: 10pt; padding: 2px 8px; cursor: pointer; border: 1px solid #bbb; background: white; color: darkblue; }
.ma_export_btn { font-size: 10pt; padding: 2px 8px; cursor: pointer; border: 1px solid #bbb; background: white; color: darkblue; }

/* Druckkopf (nur sichtbar beim Drucken) */
#ma_druck_kopf { display: none; font-size: 9pt; margin-bottom: 6mm; }
#ma_druck_kopf .dk_titel { font-size: 12pt; font-weight: bold; margin-bottom: 2mm; }
#ma_druck_kopf .dk_info  { color: #555; }

/* A4-Vorschaurahmen */
.ma_a4_wrap {
  background: #e8e8e8; padding: 12px; display: block;
  box-sizing: border-box;
}
.ma_a4_seite {
  background: white;
  box-shadow: 2px 2px 8px rgba(0,0,0,0.3);
  padding: 12mm;
  display: inline-block;
  width: 186mm;
  min-height: 60mm;
  box-sizing: border-box;
  overflow-x: visible;
  position: relative;
}
.ma_a4_seite.quer { width: 273mm; }
.ma_a4_seite .ma_liste { width: 100%; }
.ma_a4_seite.ueberlauf { outline: 2px solid red; }
.ma_a4_label {
  font-size: 7pt; color: #999; margin-bottom: 4px;
  display: flex; align-items: center; gap: 8px;
}
.ma_a4_label.rot { color: red; font-weight: bold; }

@media print {
  body > *, #app > * { display: none !important; }
  #app { display: block !important; }
  #ma_druck_bereich { display: block !important; position: fixed; top: 0; left: 0; width: 100%; }
  #ma_druck_kopf { display: block !important; }
  .ma_a4_wrap, .ma_a4_seite { background: white !important; box-shadow: none !important; padding: 0 !important; width: auto !important; }
  .ma_liste tr:hover td { background: white; }
  .ma_liste { font-size: 8pt; width: 100%; }
  .ma_liste th { background: #eee !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .ma_status_9 td { color: #999 !important; }
  .ma_a4_label { display: none !important; }

  /* Telefonliste Print-Container */
  body.ma_tfliste_drucke > * { display: none !important; }
  #ma_tfliste_print { display: block !important; margin: 0 !important; padding: 0 !important; }
  body.ma_tfliste_drucke .ma_a4_wrap:not(:first-of-type) { page-break-before: always; }
  body.ma_tfliste_drucke .ma_a4_seite { margin: 0 !important; }
  body.ma_tfliste_drucke table { font-size: 8pt !important; width: 100% !important; border-collapse: collapse !important; }
  body.ma_tfliste_drucke table thead { display: table-header-group; }
  body.ma_tfliste_drucke table th { background: #e65100 !important; color: white !important;
    -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  body.ma_tfliste_drucke table td, body.ma_tfliste_drucke table th { padding: 3px 6px !important; }

  /* Helfende-Listen (Urkunden) */
  body.ma_drucke_liste { margin: 0 !important; padding: 0 !important; }
  body.ma_drucke_liste > * { display: none !important; }
  body.ma_drucke_liste #ma_con_rechts { display: block !important; }
  body.ma_drucke_liste #ma_con_rechts > * { display: none !important; }
  body.ma_drucke_liste .ma_a4_wrap { display: block !important; margin: 0 !important; padding: 0 !important; width: 100% !important; }
  body.ma_drucke_liste .ue_seite { page-break-before: always; break-before: page; box-shadow: none !important; margin: 0 !important; padding: 0 !important; width: 100% !important; }
  body.ma_drucke_liste .ue_seite:first-child { page-break-before: avoid; break-before: avoid; }
  body.ma_drucke_liste .ue_wrap { background: white !important; padding: 0 !important; }
  body.ma_drucke_liste input[type=checkbox] { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  body.ma_drucke_liste input[type=text] { border: none !important; font-size: 8pt !important; }
  /* Querformat-Druck: Landscape-Breite */
  body.ma_quer_print .ma_a4_seite.quer { width: 279mm !important; margin: 0 !important; padding: 9mm !important; }
  body.ma_quer_print .ma_a4_seite { width: 279mm !important; }
}

/* ── Helfende Stammdaten-Formular ── */
#ma_detail { display: flex; gap: 20px; padding: 12px; }
.ma_seite_links  { flex: 1; min-width: 280px; display: flex; flex-direction: column; gap: 12px; }
.ma_seite_rechts { flex: 0 0 320px; display: flex; flex-direction: column; gap: 12px; }
.ma_block { border: 1px solid #ccc; border-radius: 4px; padding: 10px 12px; background: #fafafa; }
.ma_block_titel { font-weight: bold; color: #444; font-size: 12pt; margin-bottom: 8px; border-bottom: 1px solid #ddd; padding-bottom: 4px; }
.ma_formzeile { display: flex; align-items: center; gap: 6px; margin-bottom: 5px; }
.ma_formzeile label { font-size: 11pt; color: #555; min-width: 70px; text-align: right; flex-shrink: 0; }
.ma_inp { font-size: 11pt; padding: 3px 6px; border: 1px solid #bbb; border-radius: 3px; background: white; }
.ma_inp:focus { border-color: #4a90d9; outline: none; }
.ma_inp[type=date] { font-size: 11pt; }
.ma_cb_grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px 10px; }
.ma_cb { display: flex; align-items: center; gap: 4px; font-size: 11pt; cursor: pointer; white-space: nowrap; }
.ma_cb input[type=checkbox] { margin: 0; cursor: pointer; }
.ma_cb_stack { display: flex; flex-direction: column; gap: 4px; }
.ma_add_btn { font-size: 11pt; padding: 3px 10px; cursor: pointer; border: 1px solid #bbb; background: white; color: darkblue; border-radius: 3px; margin-top: 4px; }
.ma_add_btn:hover { background: #e8f0fe; }
.ma_del_btn { font-size: 11pt; padding: 2px 6px; cursor: pointer; border: 1px solid #e08080; background: #fff0f0; color: #c00; border-radius: 3px; line-height: 1; }
.ma_del_btn:hover { background: #fcd; }
.ma_k_icon { font-size: 13pt; }
.ma_k_tabelle { width: 100%; border-collapse: separate; border-spacing: 0 6px; font-size: 11pt; }
.ma_k_tabelle td { padding: 4px 5px; }
.ma_z_tabelle { width: 100%; border-collapse: separate; border-spacing: 0 8px; font-size: 11pt; }
.ma_z_tabelle td { padding: 4px 4px; vertical-align: middle; }
.ma_z_tabelle th { font-size: 10.5pt; color: #666; font-weight: normal; text-align: left; padding: 2px 4px; border-bottom: 1px solid #ddd; }
.ma_detail_titel { font-size: 13pt; font-weight: bold; color: #333; padding: 10px 12px 4px; border-bottom: 1px solid #ddd; margin-bottom: 0; }
.ma_detail_back { font-size: 11pt; padding: 4px 12px; cursor: pointer; border: 1px solid #bbb; background: white; color: #333; border-radius: 3px; margin: 8px 12px; }

/* ── Umsätze-Tabelle ── */
.u_tabelle { border-collapse: collapse; font-size: 11pt; width: 100%; border: 1px solid #bbb; }
.u_tabelle td, .u_tabelle th { vertical-align: middle; border-right: 1px solid #e8e8e8; border-bottom: 1px solid #e0e0e0; }
.u_tabelle td:last-child, .u_tabelle th:last-child { border-right: none; }
.u_tabelle tr:last-child td { border-bottom: none; }
.ut1  { padding: 4px 10px; white-space: nowrap; min-width: 60px; }
.ut2  { padding: 4px 10px; text-align: right; min-width: 95px; }
.ut3  { padding: 4px 10px; color: #555; }
.utzs { padding: 4px 10px; text-align: right; min-width: 95px; color: #444; }
.uted { padding: 3px 6px; white-space: nowrap; border-right: none; }
.u_daten:hover { background: #f5f5f0; }

/* ── Helfende Suche ── */
.ma_suche_form { display: flex; flex-direction: column; gap: 8px; padding: 10px 0; }
.ma_suche_result { margin-top: 12px; }
.ma_suche_result table { border-collapse: collapse; width: 100%; font-size: 11pt; }
.ma_suche_result th { font-size: 10.5pt; color: #666; font-weight: normal; text-align: left; padding: 4px 8px; border-bottom: 1px solid #ddd; }
.ma_suche_result td { padding: 5px 8px; border-bottom: 1px solid #eee; cursor: pointer; }
.ma_suche_result tr:hover td { background: #f0f4ff; }
.ma_detail_back:hover { background: #f0f0f0; }

@keyframes ma_flash_ok { 0% { background-color: #b6f0b6; } 100% { background-color: white; } }
@keyframes ma_flash_cb { 0%,30% { color: #1a8a1a; font-weight: bold; } 100% { color: inherit; font-weight: inherit; } }
.ma_inp.ma_saved { animation: ma_flash_ok 1s ease forwards; }
label.ma_cb.ma_saved { animation: ma_flash_cb 1s ease forwards; }


/* ── Bild fehlt Tabelle (Bild fehlt Liste kompakter machen) ── */
.ma_bf_tabelle {
  width: 350px;
  font-size: 9.5pt;
  border-collapse: collapse;
  margin-bottom: 15px;
}
.ma_bf_tabelle tr {
  border-bottom: 1px solid #eee;
}
.ma_bf_tabelle td {
  padding: 6px 0;
  vertical-align: middle;
}
.ma_bf_tabelle td.ma_bf_name {
  color: #111;
  font-weight: 500;
}
.ma_bf_tabelle td.ma_bf_vorname {
  color: #555;
}
.ma_bf_tabelle td.ma_bf_aktion {
  text-align: right;
}
.ma_bf_tabelle button {
  padding: 2px 7px;
  font-size: 8.5pt;
}
.ma_bf_titel {
  margin-top: 16px;
  margin-bottom: 6px;
  font-weight: bold;
  font-size: 10pt;
  color: #333;
}


/* Fotos nicht verwenden: Text fett drucken, wenn checked */
#maf_foto_verbot:checked + span {
  font-weight: bold !important;
}
