/* Q4 Listing-Zentrale: eigene Oberfläche und eigene Farbe. */
:root{color-scheme:light dark;--karte:#fff;--tinte:#20251f;--tinte-2:#596154;--linie:#d9dfd5;--linie-stark:#b9c7b4;--marke-rahmen:#d9ae87;--aktion:#974508;--aktion-hover:#713306;--aktion-text:#fff;--link:#8a400b;--auswahl:#fff0e2;--auswahl-text:#6d3206;--feldrand:#acb6a6;--neutral-flaeche:#f0f2ec;--amber:#ab7912;--amber-flaeche:#fff5d7;--amber-text:#674b07;--rot-text:#ab3021;--radius-feld:9px;--radius-karte:16px}
*{box-sizing:border-box}body{margin:0;background:#f3f4ef;color:var(--tinte);font:15px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}h1,h2,h3,h4,p{margin:0}button,input,select,textarea{font:inherit}a{color:var(--link)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #da883b;outline-offset:3px}[hidden]{display:none!important}.nur-lese{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.nur-lese:focus{clip-path:none;width:auto;height:auto;padding:8px;background:var(--karte);z-index:100}
@media(prefers-color-scheme:dark){:root{--karte:#20241e;--tinte:#edf0e8;--tinte-2:#b1bcaa;--linie:#3b4335;--linie-stark:#64725a;--marke-rahmen:#916343;--aktion:#e99a58;--aktion-hover:#f5b27b;--aktion-text:#281b10;--link:#edab75;--auswahl:#3c2a19;--auswahl-text:#f8d3b2;--feldrand:#77866c;--neutral-flaeche:#2b3224;--amber:#d6ac45;--amber-flaeche:#423719;--amber-text:#efdaa0;--rot-text:#f49b8e}body{background:#161b13}}
/* Geschützte Q4-Zentrale, eigene Listing-Marke und Farbrollen. */
.q4-zentrale { overflow-y: auto; }
.q4-kopfleiste { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 32px; border-bottom: 1px solid var(--linie); background: var(--karte); color: var(--link); font-size: 13px; }
.q4-kopfleiste a, .q4-fuss a { text-decoration: none; }
.q4-kopfleiste a:hover, .q4-fuss a:hover { text-decoration: underline; text-underline-offset: 3px; }
.q4-seite { max-width: 1184px; margin: 0 auto; padding: 36px 32px 108px; }
.q4-titel { display: flex; align-items: center; gap: 16px; }
.q4-zeichen { display: grid; place-items: center; width: 64px; height: 64px; border-radius: var(--radius-karte); background: var(--aktion); color: var(--aktion-text); font-size: 26px; font-weight: 600; }
.q4-titel h1 { font-size: 30px; line-height: 1.25; }
.q4-ueber { color: var(--tinte-2); font-size: 12px; margin-bottom: 5px; }
.q4-einleitung { max-width: 72ch; color: var(--tinte-2); margin-top: 16px; font-size: 16px; }
.q4-quellenstand { margin-top: 24px; padding: 12px 16px; border: 1px solid var(--linie-stark); border-radius: var(--radius-feld); color: var(--tinte-2); font-size: 12px; }
.q4-quellenstand p { margin-top: 4px; }
.q4-auswahl { margin-top: 24px; }
.q4-auswahl > label { display: block; font-size: 13px; font-weight: 600; margin-bottom: 8px; }
.q4-auswahl > div { display: flex; gap: 12px; align-items: center; max-width: 700px; }
.q4-auswahl select { flex: 1; min-width: 0; min-height: 44px; padding: 8px 12px; border: 1px solid var(--feldrand); border-radius: var(--radius-feld); background: var(--karte); color: var(--tinte); }
.q4-knopf { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; padding: 10px 16px; background: var(--aktion); color: var(--aktion-text); border: 1px solid var(--aktion); border-radius: var(--radius-feld); font-weight: 600; cursor: pointer; text-decoration: none; }
.q4-knopf:hover { background: var(--aktion-hover); }
.q4-knopf.q4-zweit { background: var(--karte); color: var(--link); border-color: var(--marke-rahmen); }
.q4-knopf.q4-zweit:hover { background: var(--auswahl); }
.q4-arbeitsraum { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 24px; margin-top: 24px; align-items: start; }
.q4-karte { background: var(--karte); border: 1px solid var(--linie); border-radius: var(--radius-karte); padding: 24px; }
.q4-karte h2 { font-size: 21px; line-height: 1.35; }
.q4-karte h3 { font-size: 14px; margin-top: 22px; }
.q4-projekttext, .q4-beratung > p { margin-top: 12px; color: var(--tinte-2); line-height: 1.6; }
.q4-status { display: inline-block; margin-top: 12px; padding: 5px 10px; border-radius: 20px; background: var(--auswahl); color: var(--auswahl-text); font-size: 12px; }
.q4-aktuell > .q4-knopf, .q4-beratung > .q4-knopf { margin-top: 20px; }
.q4-beratung { background: var(--auswahl); border-color: var(--marke-rahmen); }
.q4-beratung > .q4-unter { font-size: 12px; margin-top: 16px; }
.q4-termine { display: flex; flex-wrap: wrap; gap: 16px 32px; margin: 18px 0 0; }
.q4-termine dt { color: var(--tinte-2); font-size: 12px; }
.q4-termine dd { margin: 2px 0 0; font-weight: 600; font-variant-numeric: tabular-nums; }
.q4-schritte { padding-left: 22px; margin: 12px 0 0; }
.q4-schritte li + li { margin-top: 10px; }
.q4-schritte p { font-size: 13px; color: var(--tinte-2); margin-top: 4px; }
.q4-schrittstatus { color: var(--tinte-2); font-size: 12px; margin-left: 8px; }
.q4-uebersicht { margin-top: 24px; }
.q4-tabellenrahmen { overflow-x: auto; margin-top: 12px; }
.q4-tabellenrahmen table { width: 100%; border-collapse: collapse; text-align: left; font-size: 14px; }
.q4-tabellenrahmen caption { color: var(--tinte-2); font-size: 12px; text-align: left; margin-bottom: 12px; }
.q4-tabellenrahmen th { color: var(--tinte-2); font-size: 12px; font-weight: 500; }
.q4-tabellenrahmen th, .q4-tabellenrahmen td { padding: 12px 14px; border-bottom: 1px solid var(--linie); vertical-align: top; }
.q4-tabellenrahmen th:first-child, .q4-tabellenrahmen td:first-child { padding-left: 0; }
.q4-tabellenrahmen tr:last-child td { border-bottom: 0; }
.q4-tabellenrahmen td a { color: var(--link); text-underline-offset: 3px; font-weight: 500; }
.q4-id { white-space: nowrap; font-variant-numeric: tabular-nums; }
.q4-ausgewaehlt { background: var(--auswahl); }
.q4-unter { color: var(--tinte-2); font-size: 12px; margin-top: 6px; overflow-wrap: anywhere; }
.q4-hinweis { margin-top: 16px; padding: 12px 16px; background: var(--amber-flaeche); color: var(--amber-text); border-left: 3px solid var(--amber); font-size: 13px; }
.q4-fuss { margin-top: 24px; color: var(--tinte-2); font-size: 12px; line-height: 1.6; }
.q4-fuss a { color: var(--link); }
.q4-fuss p { margin-top: 6px; }
@media (max-width: 760px) {
  .q4-kopfleiste { padding: 12px 16px; gap: 20px; align-items: flex-start; }
  .q4-kopfleiste a:last-child { text-align: right; }
  .q4-seite { padding: 24px 16px 104px; }
  .q4-titel h1 { font-size: 25px; }
  .q4-zeichen { width: 52px; height: 52px; font-size: 22px; flex: none; }
  .q4-auswahl > div { flex-wrap: wrap; }
  .q4-auswahl select { flex-basis: 100%; font-size: 16px; }
  .q4-arbeitsraum { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .q4-karte { padding: 18px; }
  .q4-tabellenrahmen table { min-width: 590px; }
  .q4-tabellenrahmen th, .q4-tabellenrahmen td { padding: 10px; }
  .q4-zentrale .assistent-oeffnen { bottom: calc(14px + env(safe-area-inset-bottom)); }
  .q4-zentrale .assistent-fenster { bottom: calc(8px + env(safe-area-inset-bottom)); height: min(760px, calc(100dvh - 24px - env(safe-area-inset-bottom) - env(safe-area-inset-top))); }
}
@media print {
  .q4-knopf, .q4-auswahl, .q4-kopfleiste { display: none !important; }
  .q4-seite { max-width: none; padding: 0; }
  .q4-arbeitsraum { display: block; }
  .q4-beratung { display: none; }
}

.q4-sync-kopf { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.q4-sync-kopf .q4-knopf { min-height:36px; padding:6px 12px; font-size:12px; }
.q4-sync-zeiten { display:flex; flex-wrap:wrap; gap:12px 32px; margin:12px 0; }
.q4-sync-zeiten dt { font-size:11px; }
.q4-sync-zeiten dd { margin:2px 0 0; color:var(--tinte); font-variant-numeric:tabular-nums; }
.q4-quellen-details { margin-top:8px; }
.q4-quellen-details summary { cursor:pointer; }
[data-q4-vormerk] { width:20px; height:20px; cursor:pointer; }

.q4-kopfleiste nav{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.q4-kopfleiste nav form{margin:0}.q4-kopfleiste nav button{border:0;background:none;color:var(--link);cursor:pointer;padding:0}.q4-marke{font-weight:750}.q4-draftauswahl{margin-top:24px}.q4-draftauswahl label{display:block;margin-top:14px;font-size:13px}.q4-draftauswahl select{width:100%;max-width:740px;border:1px solid var(--feldrand);border-radius:var(--radius-feld);padding:9px 12px;background:var(--karte);color:var(--tinte)}.q4-entwurf{margin-top:24px}.q4-entwurfsprachen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:18px}.q4-entwurf h3{margin-top:0}.q4-entwurf h4{font-size:16px;margin-top:14px}.q4-entwurftext{white-space:pre-wrap;margin:12px 0;line-height:1.65}.q4-entwurfsprache{min-width:0;overflow-wrap:anywhere}.q4-entwurfsprache button{margin-top:14px}.q4-entwurf details{margin:24px 0 18px}.q4-entwurf summary{cursor:pointer;font-weight:600}.q4-entwurf li{margin:8px 0}.q4-entwurfnote{font-size:12px;margin-top:5px;color:var(--tinte-2)}.q4-login{width:min(500px,100%);margin:10vh auto;padding:28px}.q4-login h1{font-size:27px;margin:18px 0 10px}.q4-login form{margin-top:26px}.q4-login label{display:block;margin-bottom:8px}.q4-login input{display:block;width:100%;padding:11px 13px;margin-bottom:16px;border:1px solid var(--feldrand);border-radius:var(--radius-feld);background:var(--karte);color:var(--tinte)}
@media(max-width:760px){.q4-entwurfsprachen{grid-template-columns:minmax(0,1fr)}.q4-kopfleiste{flex-wrap:wrap}.q4-kopfleiste nav{gap:12px}.q4-tabellenrahmen table{min-width:650px}}
