/* Version 3: eine Arbeitsfläche pro Aufgabe. Jede Layoutregel gehört nur
   diesem Modus; die beiden vorhandenen Ansichten behalten ihre Anordnung. */
#v3-nav { display: none; }
#assistent-einstieg, #chat-kopf .assistent-anruf,
.v3-chat-logo, .v3-assistent-willkommen { display: none; }
body.version3 #text-einstieg,
body.version3 #ptt-bereich,
body.version3 #chat-griff,
body.version3 #tabbar .tab-mitte { display: none; }
body.version3 #tabbar { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.arbeitskopf { display: contents; }
body.version3 .arbeitskopf {
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 16px; padding: 12px 24px;
  background: var(--flaeche); border-bottom: 1px solid var(--rahmen);
}
body.version3 #topbar {
  position: static; flex: 1 1 320px; min-width: 0; padding: 0; border: 0;
}
body.version3 .topbar-info { flex-wrap: wrap; gap: 4px 12px; overflow-wrap: anywhere; }
body.version3 #assistent-einstieg {
  position: static; flex: 0 0 auto; margin-left: auto;
  display: flex; align-items: stretch; border-radius: 28px;
  background: var(--primaer); color: #fff;
}
body.version3 #assistent-einstieg button {
  min-height: 48px; border: 0; background: transparent; color: inherit;
  padding: 12px 18px; font: 600 .95rem var(--schrift); cursor: pointer;
}
body.version3 #assistent-schreiben { display: flex; align-items: center; gap: 10px; border-radius: 28px 0 0 28px; }
.assistent-logo { width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; }
body.version3 #assistent-einstieg .assistent-anruf { border-left: 1px solid #ffffff50; border-radius: 0 28px 28px 0; }
body.version3 #assistent-einstieg button:hover { background: #ffffff18; }
body.version3 #chat-kopf .assistent-anruf {
  display: block; margin-left: auto; min-height: 44px;
  padding: 10px 14px; border: 1px solid var(--rahmen); border-radius: 12px;
  background: var(--flaeche); color: var(--text); font: 600 .88rem var(--schrift);
}
body.version3 #chat-kopf .assistent-anruf[aria-pressed="true"] {
  background: var(--primaer-hell); color: var(--primaer-tief); border-color: var(--primaer-hell);
}
body.version3.chat-offen #assistent-einstieg,
body.version3.detail-offen #assistent-einstieg { display: none; }
body.version3.ansicht-mobil .arbeitskopf { padding: 12px 16px; }
body.version3.ansicht-mobil.chat-offen .arbeitskopf,
body.version3.ansicht-mobil.detail-offen .arbeitskopf { display: none; }
body.version3.assistent-im-gespraech #chat-faden .chat-fuss-zeile { display: none; }
.assistent-gespraechsleiste { display: none; }
body.version3.assistent-im-gespraech:not(.chat-offen) .assistent-gespraechsleiste {
  position: fixed; z-index: 120; left: 12px; right: 12px;
  bottom: calc(12px + env(safe-area-inset-bottom, 0px));
  display: flex; align-items: center; gap: 8px; padding: 8px 12px;
  border: 1px solid var(--rahmen); border-radius: 14px;
  background: var(--flaeche); color: var(--text); box-shadow: 0 4px 18px #0003;
}
.assistent-gespraechsstatus { flex: 1; min-width: 0; font-size: .82rem; line-height: 1.4; }
.assistent-gespraechsleiste button { flex: 0 0 auto; min-height: 44px; }
body.version3.assistent-im-gespraech.ansicht-desktop:not(.chat-offen) .assistent-gespraechsleiste { left: auto; max-width: 520px; }
body.version3.assistent-im-gespraech:not(.chat-offen) #assistent-einstieg { display: none; }
body.version3.assistent-im-gespraech:not(.chat-offen) #chat-griff { display: none; }
body.version3 #chat-tipp-hinweis { font-size: .85rem; }
.oberflaechen-auswahl { padding: 12px 16px; display: grid; gap: 8px; }
.oberflaechen-auswahl select { width: 100%; min-height: 44px; }

body.version3 #werk-nav { display: none; }
body.version3 #v3-nav {
  display: flex;
  flex-direction: column;
  flex: 0 0 224px;
  width: 224px;
  height: 100dvh;
  position: sticky;
  top: 0;
  padding: 24px 16px 16px;
  overflow-y: auto;
  background: var(--spalte);
  color: var(--spalte-text);
}
.v3-marke { display: flex; align-items: center; gap: 10px; font-size: .98rem; font-weight: 800; line-height: 1.4; }
.v3-betrieb { margin: 0; padding: 8px 4px 16px; font-size: .85rem; opacity: .8; overflow-wrap: anywhere; }
.v3-hauptziele { display: grid; gap: 16px; margin-top: 20px; }
.v3-nav-gruppe { display: grid; gap: 2px; }
.v3-nav-gruppentitel { margin: 0 0 4px; padding: 0 12px; font-size: .75rem; font-weight: 600; line-height: 1.4; opacity: .65; }
.v3-nav-fuss { margin-top: auto; display: grid; gap: 4px; padding-top: 20px; }
.v3-version { padding: 8px 12px 0; font-size: .75rem; opacity: .7; }
body.version3 #v3-nav .nav-btn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 48px;
  padding: 12px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: inherit;
  text-align: left;
  font: 500 .96rem var(--schrift);
}
body.version3 #v3-nav .nav-btn:hover { background: rgba(255,255,255,.06); }
body.version3 #v3-nav .nav-btn.aktiv { background: rgba(255,255,255,.1); color: #fff; font-weight: 800; }
body.version3 #v3-nav .nav-btn.aktiv::before { display: none; }
body.version3 #v3-nav .v3-suche { border: 1px solid rgba(255,255,255,.2); color: var(--spalte-text); }
body.version3 #content { max-width: 1440px; margin-inline: auto; width: 100%; padding: 40px 40px 96px; }
body.version3 #content > .view { max-width: 1120px; margin-inline: auto; }
body.version3 #content > #view-werk-v3-planung { max-width: none; }
/* Die Fachseiten teilen den Rhythmus der Hauptorte. Werkzeugleisten bilden
   eigene Gruppen; ihr letzter Knopf darf nicht am folgenden Inhalt kleben. */
body.version3 { --abschnitt-abstand: var(--abstand-8); }
body.version3 #content > .view { min-width: 0; }
body.version3 #content > .view > :is(h1, h2):first-child {
  font-size: clamp(1.75rem, 2.4vw, 2.2rem);
  line-height: 1.2;
  letter-spacing: -.025em;
  margin: 0 0 var(--abstand-3);
}
body.version3 #content > .view > :is(h1, h2) + .hinweis {
  margin: 0 0 var(--abschnitt-abstand);
}
body.version3 #content > .view > :is(.formular-zeile, .zeile-aktionen, .filter-zeile, .filterzeile) {
  align-items: center;
  gap: var(--abstand-3);
  margin: 0 0 var(--abstand-6);
}
body.version3 #content > .view > .tab-zeile:not([hidden]) {
  display: flex;
  flex-wrap: wrap;
  gap: var(--abstand-2);
  margin: 0 0 var(--abstand-6);
}
body.version3 #content > .view > h3 {
  margin: var(--abschnitt-abstand) 0 var(--abstand-4);
}
body.version3 #werk-rueck {
  width: calc(100% - 80px);
  max-width: 1120px;
  min-height: 44px;
  margin: var(--abstand-4) auto 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
body.version3 #werk-rueck:hover { color: var(--text); }
body.version3 #werk-rueck:not(.versteckt) + #content { padding-top: var(--abstand-6); }
body.version3 #werbung-kacheln,
body.version3 #nb-karten .karten {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr));
  gap: var(--abstand-4);
  margin: 0 0 var(--abstand-6);
}
body.version3 #werbung-kacheln .kachel,
body.version3 #nb-karten .karte {
  min-width: 0;
  padding: var(--karten-polster);
  display: flex;
  flex-direction: column;
  gap: var(--abstand-2);
  overflow-wrap: anywhere;
}
body.version3 #werbung-kacheln .kachel-zahl { color: var(--text); }
body.version3 #nb-karten .hinweis { margin: 0; }
body.version3 #view-nachbetreuung [id^="nb-tab-"] > .hinweis { margin: 0 0 var(--abstand-4); }
body.version3 #view-nachbetreuung [id^="nb-tab-"] > .anlegen { margin-top: var(--abstand-6); }
body.version3 #view-board .board-tafel { gap: var(--abstand-4); align-items: stretch; }
body.version3 #view-board .board-spalte { padding: var(--abstand-4); flex: 1 0 260px; }
body.version3 #view-board .board-spalte-kopf { gap: var(--abstand-2); margin-bottom: var(--abstand-4); }
body.version3 #view-board .board-spalte-kopf b { min-width: 0; overflow-wrap: anywhere; }
body.version3 #view-board .board-karte { padding: var(--abstand-4); gap: var(--abstand-3); margin-bottom: var(--abstand-3); }
body.version3 #view-board .board-karte-titel { overflow-wrap: anywhere; }
body.version3 #view-board .werk-mini { min-height: 36px; }
body.version3 .werk-zustaendig-klein { width: 220px; max-width: 100%; min-height: 44px; padding: 8px 12px; }
body.version3 .tabelle .werk-zustaendig-klein { max-width: none; }
body.version3 #werk-anschalten,
body.version3 #werk-anschalten-mobil { display: none; }
body.version3 #view-menue > .karte { max-width: 760px; }
body.version3 #view-menue select[data-oberflaeche] { width: 100%; max-width: 420px; min-height: 48px; margin-top: 8px; }
body.version3 #content h1 { font-size: clamp(1.75rem, 2.4vw, 2.2rem); letter-spacing: -.025em; }
.v3-seitenkopf { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 20px; margin-bottom: 32px; }
body.version3 .v3-seitenkopf h1 { margin: 0; }
.v3-seitenkopf .hinweis { margin: 10px 0 0; }
.v3-kontext { color: var(--gedaempft); font-size: .9rem; margin: 0 0 10px; }
.v3-start-abschnitte { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 32px; align-items: start; }
.v3-start-abschnitte > section { min-width: 0; background: var(--flaeche); padding: 28px; border-radius: 12px; }
.v3-abschnittskopf { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
body.version3 .v3-abschnittskopf h2 { margin: 0; font-size: 1.15rem; }
.v3-anzahl { font: .85rem var(--mono); color: var(--gedaempft); }
.v3-tagesliste { display: grid; gap: 12px; min-width: 0; }
body.version3 #v3-freigaben .werk-freigabe-zeile { border: 0; border-radius: 0; border-bottom: 1px solid var(--rahmen); padding: 16px 0; }
body.version3 #v3-heute .tagesplan-zeile { box-shadow: none; border: 0; border-radius: 0; border-bottom: 1px solid var(--rahmen); padding: 16px 0; margin: 0; }
body.version3 #v3-heute .aufgabe-knopf { background: transparent; color: var(--text); border: 1px solid var(--rahmen-stark); }
body.version3 #v3-heute .aufgabe-satz { overflow-wrap: anywhere; }
body.version3 #v3-heute .tagesplan-zeit { font-family: var(--mono); }
.v3-textweg { display: inline-flex; align-items: center; min-height: 44px; padding: 10px 0; margin-top: 16px; border: 0; background: transparent; color: var(--primaer-tief); font: 600 .92rem var(--schrift); text-align: left; }
body.version3 #v3-planung-inhalt { display: grid; gap: 32px; }
body.version3 #v3-planung-inhalt .werk-planung { margin: 0; }
body.version3 #v3-planung-inhalt .werk-dashboard-ueberblick { margin-top: 0; }
.v3-bereiche-kopf { align-items: center; gap: 16px; margin-bottom: 24px; }
.v3-ansichtwahl { display: grid; gap: 5px; flex: 0 0 auto; }
.v3-ansichtwahl label { color: var(--gedaempft); font-size: .78rem; font-weight: 500; }
.v3-ansichtwahl select { min-height: 44px; padding: 8px 30px 8px 12px; margin: 0; font: 600 .88rem var(--schrift); background-color: var(--flaeche); }
.v3-symbol { width: 22px; height: 22px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.v3-suchfeld { position: relative; width: min(100%, 640px); margin-bottom: 28px; }
.v3-suchfeld > svg { position: absolute; top: 50%; left: 16px; transform: translateY(-50%); color: var(--gedaempft); pointer-events: none; }
body.version3 #v3-bereichssuche { width: 100%; margin: 0; min-height: 54px; padding-left: 48px; border-radius: 14px; background: var(--flaeche); }
.v3-bereichsliste { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; align-items: start; }
body.version3 .v3-bereichsgruppe h2 { font-size: .88rem; font-weight: 600; color: var(--text-weich); margin: 0 0 12px; padding-left: 4px; }
.v3-bereichswege { display: grid; padding: 4px 16px; border: 1px solid var(--rahmen); border-radius: 18px; background: var(--flaeche); }
.v3-bereichsweg { min-height: 68px; display: grid; grid-template-columns: 38px minmax(0,1fr) 16px; align-items: center; gap: 14px; padding: 12px 0; background: transparent; border: 0; border-bottom: 1px solid var(--rahmen); border-radius: 0; color: var(--text); font: 500 .96rem var(--schrift); text-align: left; overflow-wrap: anywhere; }
.v3-bereichsweg:last-child { border-bottom: 0; }
.v3-bereichsikon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 11px; background: var(--sand); color: var(--text-weich); }
.v3-bereichsweg:hover { color: var(--primaer-tief); }
.v3-bereichsweg:hover .v3-bereichsikon { background: var(--primaer-hell); color: var(--primaer-tief); }
.v3-weg-pfeil { color: var(--gedaempft); font: 400 1.4rem var(--schrift); text-align: right; }

/* V3 hat einen eigenen Gesprächsraum; die alte schmale Einschubform gehört
   weiterhin zu Klassisch und Werkakte. Kopf und Eingabe schrumpfen nicht. */
body.version3 #chat-faden { overflow: hidden; border-color: var(--rahmen); box-shadow: 0 16px 48px #1f1d1b26; }
body.version3.ansicht-desktop #chat-faden { width: min(40vw, 440px); }
body.version3 #chat-kopf { flex: 0 0 auto; gap: 10px; min-height: 76px; padding: 14px 16px; color: var(--text); }
body.version3 .v3-chat-logo { display: block; flex: 0 0 36px; width: 36px; height: 36px; padding: 6px; border-radius: 11px; color: var(--primaer-tief); background: var(--primaer-hell); }
body.version3 #chat-kopf strong { font-size: 1rem; }
body.version3 #chat-zu { flex: 0 0 44px; width: 44px; height: 44px; min-height: 44px; padding: 0; border: 0; border-radius: 12px; background: var(--sand); color: var(--text-weich); }
body.version3 .v3-assistent-willkommen { flex: 1 1 auto; display: flex; flex-direction: column; justify-content: center; gap: 12px; padding: 28px; }
body.version3 .v3-assistent-willkommen p { margin: 0; color: var(--gedaempft); font-size: .94rem; line-height: 1.6; }
body.version3 .v3-assistent-willkommen .v3-assistent-frage { max-width: 260px; color: var(--text); font-size: 1.65rem; font-weight: 700; letter-spacing: -.03em; line-height: 1.2; }
body.version3 #chat-faden:has(#chat-verlauf > *) .v3-assistent-willkommen,
body.version3 #chat-faden:has(#chat-verlauf > *) #chat-tipp-hinweis { display: none; }
body.version3 #chat-verlauf { min-height: 0; padding: 16px; gap: 14px; }
body.version3 #chat-verlauf:empty { flex: 0 0 0; padding: 0; }
body.version3 #chat-verlauf .chat-eintrag { font-size: .94rem; line-height: 1.5; border-radius: 16px; }
body.version3 #chat-fuss { flex: 0 0 auto; padding: 14px 16px; background: var(--flaeche); }
body.version3 #chat-status { line-height: 1.4; font-size: .82rem; color: var(--text-weich); margin-bottom: 10px; }
body.version3 #chat-status:empty { display: none; }
body.version3.assistent-im-gespraech #chat-status { color: var(--primaer-tief); }
body.version3 #chat-tipp-hinweis { margin: 0 0 12px; font-size: .8rem; line-height: 1.45; }
body.version3 .chat-tippen-zeile { align-items: end; gap: 8px; margin: 0 0 10px; }
body.version3 #chat-tippen { border-radius: 14px; min-height: 48px; padding: 12px 14px; background: var(--sand); border-color: var(--sand); line-height: 1.35; }
body.version3 #chat-tippen:focus { background: var(--flaeche); border-color: var(--primaer); }
body.version3 #chat-tippen-senden { flex: 0 0 48px; width: 48px; height: 48px; padding: 0; border-radius: 14px; font-size: 1.5rem; }
body.version3 #chat-antwort { min-height: 44px; border: 1px solid var(--rahmen-stark); border-radius: 12px; background: var(--flaeche); font: 600 .88rem var(--schrift); }
body.version3 #chat-antwort.erwartet { background: var(--primaer); border-color: var(--primaer); color: #fff; }
body.version3 #chat-abbrechen { flex: 0 0 44px; min-width: 44px; min-height: 44px; padding: 0; border: 1px solid var(--rahmen); border-radius: 12px; background: var(--sand); color: var(--text-weich); }
body.version3 #chat-neu-chip { bottom: 132px; }

body.version3.ansicht-mobil #tabbar { display: grid; padding-top: 8px; box-shadow: 0 -4px 16px #1f1d1b06; }
body.version3 #tabbar .tab-eintrag { gap: 3px; color: var(--gedaempft); font-weight: 500; }
body.version3 #tabbar .tab-ikon { display: grid; place-items: center; width: 46px; height: 30px; border-radius: 10px; }
body.version3 #tabbar .tab-eintrag.aktiv { color: var(--primaer-tief); font-weight: 700; }
body.version3 #tabbar .tab-eintrag.aktiv .tab-ikon { background: var(--primaer-hell); }
body.version3.ansicht-mobil #chat-faden {
  --v3-chat-abstand: calc(84px + env(safe-area-inset-bottom, 0px));
  left: max(12px, calc((100% - 640px) / 2));
  right: max(12px, calc((100% - 640px) / 2));
  bottom: calc(var(--tastatur-h) + var(--v3-chat-abstand));
  width: auto;
  height: min(600px, calc(var(--sichtbarer-bereich-h, 100vh) - var(--v3-chat-abstand) - 16px));
  min-height: 0; max-height: none;
  padding: 0; border: 1px solid var(--rahmen); border-radius: 24px;
  transform: translateY(24px);
}
body.version3.ansicht-mobil.chat-offen #chat-faden { transform: translateY(0); }
body.version3.ansicht-mobil.tastatur-offen #chat-faden { --v3-chat-abstand: 8px; }
body.version3.ansicht-mobil.tastatur-offen.chat-offen #tabbar { visibility: hidden; }
body.version3.ansicht-mobil.tastatur-offen #chat-tipp-hinweis,
body.version3.ansicht-mobil.tastatur-offen .v3-assistent-willkommen { display: none; }
body.version3.ansicht-mobil.tastatur-offen #chat-verlauf:empty { flex: 1 1 auto; }
body.version3.ansicht-mobil #chat-fuss { max-height: calc(100% - 76px); overflow-y: auto; }
body.version3.ansicht-mobil #chat-tippen {
  max-height: min(120px, max(72px, calc(var(--sichtbarer-bereich-h, 100vh) * .25)));
}

/* Die Telefonie blendet ihre alten Reiter per hidden aus. Deren Flex-Regel
   darf sie in der dritten Ansicht nicht wieder sichtbar machen. */
body.version3 #view-telefon > [hidden] { display: none; }

/* Die vollständige Liste und die Akte belegen dieselbe Arbeitsfläche. */
body.version3 #view-werk-vorgaenge .werk-zweispalt { display: block; }
body.version3 #view-werk-vorgaenge .werk-spalte-links { position: static; max-height: none; }
body.version3 #view-werk-vorgaenge .werk-spalte-rechts { display: none; }
body.version3 #view-werk-vorgaenge #werk-tageszettel { display: none; }
body.version3 #view-werk-vorgaenge .werk-stufen-mobil { display: grid; grid-template-columns: minmax(0,1fr); max-width: 360px; margin-bottom: 24px; position: relative; }
body.version3 #view-werk-vorgaenge .werk-stufe-wechsel { display: none; }
body.version3 #view-werk-vorgaenge .werk-stufen-auswahl { position: absolute; top: 56px; left: 0; right: 0; z-index: 10; grid-template-columns: 1fr; }
body.version3 #view-werk-vorgaenge.werk-detail-offen > .werk-stufen-mobil,
body.version3 #view-werk-vorgaenge.werk-detail-offen .werk-spalte-links { display: none; }
body.version3 #view-werk-vorgaenge.werk-detail-offen .werk-spalte-rechts { display: block; border: 0; padding: 0; max-height: none; }
body.version3 #view-werk-vorgaenge .werk-vorgang-zurueck { display: inline-flex; background: transparent; border: 0; color: var(--text-weich); padding: 0; min-height: 44px; margin-bottom: 20px; font: 500 .92rem var(--schrift); }
body.version3 #werk-vorgang { background: var(--flaeche); border-radius: 12px; padding: 28px; }
body.version3 #werk-vorgang .werk-akte-kopf h2 { margin-top: 0; }
body.version3 #werk-vorgang > .werk-jetzt { margin-top: 24px; background: var(--sand); border: 0; }
body.version3 #werk-vorgang > .werk-fachwege { margin-top: 24px; }
body.version3 #werk-vorgang .werk-klappe .werk-wege { padding-top: 16px; border-top: 1px solid var(--rahmen); }
body.version3 #werk-vorgang .werk-stamm-zelle { background: transparent; border: 0; padding: 0; }
body.version3 #werk-vorgang .werk-stationsmarke { background: var(--sand); color: var(--text-weich); }
body.version3 #werk-vorgang > .werk-freigaben-vorgang,
body.version3 #werk-vorgang > .werk-merker { margin-top: 24px; }
body.version3 #werk-vorgang .werk-kette-box { margin: 0; padding: 16px 0; border: 0; background: transparent; }
body.version3 #werk-vorgang .werk-kette-satz { min-height: 44px; cursor: pointer; font-size: .92rem; color: var(--text-weich); margin: 0; }
.v3-aktenreiter { display: flex; gap: 24px; margin-top: 32px; border-bottom: 1px solid var(--rahmen); overflow-x: auto; }
.v3-aktenreiter-knopf { flex: 0 0 auto; min-height: 48px; padding: 12px 0; border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: transparent; color: var(--gedaempft); font: 500 .94rem var(--schrift); }
.v3-aktenreiter-knopf[aria-selected="true"] { border-bottom-color: var(--primaer); color: var(--text); font-weight: 800; }
body.version3 #werk-vorgang .v3-akteninhalt { padding-top: 28px; margin: 0; }
body.version3 #werk-vorgang .v3-akteninhalt > * + * { margin-top: 24px; }
body.version3 #werk-vorgang .v3-akteninhalt[hidden] { display: none; }
body.version3 #werk-vorgang .v3-akteninhalt > .werk-stamm,
body.version3 #werk-vorgang .v3-akteninhalt > .werk-verlauf { margin-top: 0; }

/* Die drei vorhandenen Einstellungsebenen gelten hier auch am Computer. */
body.version3 #view-werk-werkstatt .werk-einst-zweispalt { display: block; }
body.version3 #view-werk-werkstatt .werk-regale { grid-template-columns: 1fr; max-width: 760px; }
body.version3 #view-werk-werkstatt:not([data-einst-ebene="regale"]) #werk-regale { display: none; }
body.version3 #view-werk-werkstatt[data-einst-ebene="liste"] .werk-einst-ziel { display: none; }
body.version3 #view-werk-werkstatt[data-einst-ebene="formular"] .werk-einst-einleitung,
body.version3 #view-werk-werkstatt[data-einst-ebene="formular"] .werk-verweise { display: none; }
body.version3 #view-werk-werkstatt[data-einst-ebene="formular"] .werk-einst-ziel { display: block; margin-top: 0; }
body.version3 #view-werk-werkstatt .werk-einst-zurueck { display: inline-flex; min-height: 44px; align-items: center; margin: 0 0 16px; padding: 0; border: 0; background: transparent; color: var(--text-weich); font: 500 .92rem var(--schrift); }
body.version3 #view-werk-werkstatt .werk-verweise { max-width: 760px; }
body.version3 #view-werk-werkstatt .werk-einst-ziel { max-width: 960px; }
body.version3 #view-werk-werkstatt .werk-regal { text-align: left; padding: 24px; }

@media (max-width: 1100px) {
  body.version3 #content { padding-inline: 24px; }
  body.version3 #werk-rueck { width: calc(100% - 48px); }
  .v3-start-abschnitte { grid-template-columns: 1fr; }
}
body.version3.ansicht-mobil #v3-nav,
body.version3.ansicht-mobil #werk-nav { display: none; }
body.version3.ansicht-mobil #content { padding: 24px 16px var(--werk-unterkante); }
body.version3.ansicht-mobil { --abschnitt-abstand: var(--abstand-6); }
body.version3.ansicht-mobil #werk-rueck { width: calc(100% - 32px); }
body.version3.ansicht-mobil #view-werbung .formular-zeile {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
}
body.version3.ansicht-mobil #view-werbung .formular-zeile input { width: 100%; }
body.version3.ansicht-mobil #view-werbung .formular-zeile button { grid-column: 1 / -1; }
body.version3.ansicht-mobil #view-board .werk-mini { min-height: 48px; }
@media (max-width: 600px) {
  body.version3.ansicht-mobil #nb-karten .karten { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.version3.ansicht-mobil #nb-karten .karte { padding: var(--abstand-4); }
  body.version3.ansicht-mobil #nb-karten .karte:first-child { grid-column: 1 / -1; }
}
body.version3.ansicht-mobil #werk-vorgang { padding: 20px; }
body.version3.ansicht-mobil .v3-start-abschnitte { gap: 24px; }
body.version3.ansicht-mobil .v3-start-abschnitte > section { padding: 20px; }
body.version3.ansicht-mobil .v3-bereichsliste { grid-template-columns: 1fr; gap: 24px; }
body.version3.ansicht-mobil .v3-bereiche-kopf { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px; }
body.version3.ansicht-mobil .v3-bereiche-kopf .hinweis { font-size: .86rem; max-width: 220px; line-height: 1.5; }
body.version3.ansicht-mobil .v3-ansichtwahl { max-width: 140px; }
body.version3.ansicht-mobil .v3-ansichtwahl select { width: 100%; font-size: .82rem; }
body.version3.ansicht-mobil .v3-aktenreiter { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px 16px; overflow: visible; }
body.version3 :is(button, input, select, summary):focus-visible { outline: 2px solid var(--primaer); outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) {
  body.version3 *, body.version3 *::before, body.version3 *::after { scroll-behavior: auto; }
  body.version3 #chat-faden { transition: none; }
}
@media (max-height: 480px) {
  body.version3.ansicht-mobil #chat-faden { --v3-chat-abstand: 8px; }
  body.version3.ansicht-mobil.chat-offen #tabbar { visibility: hidden; }
  body.version3.ansicht-mobil #chat-tipp-hinweis,
  body.version3.ansicht-mobil .v3-assistent-willkommen { display: none; }
  body.version3.ansicht-mobil #chat-verlauf:empty { flex: 1 1 auto; }
}
@media (max-width: 360px) {
  body.version3.ansicht-mobil #chat-kopf { gap: 8px; padding: 12px; min-height: 68px; }
  body.version3.ansicht-mobil .v3-chat-logo { flex-basis: 32px; width: 32px; height: 32px; }
  body.version3.ansicht-mobil #chat-kopf strong { font-size: .94rem; }
  body.version3.ansicht-mobil #chat-kopf .assistent-anruf { padding-inline: 10px; }
}

/* Zahlen gehören zum Filter, der Ergebnisumfang steht darunter. */
.werk-chip-zahl { display: inline-block; min-width: 2.2ch; text-align: center; font-variant-numeric: tabular-nums; }
.werk-ergebniszahl { margin: 0 0 24px; }
.werk-weitere { margin: 24px 0; }

/* Ein Feld bleibt mit seiner Beschriftung zusammen, auch wenn eine Leiste
   umbricht. Die klassischen Oberflächen behalten ihre bisherige Anordnung. */
.ui-feld { display: contents; }
body.version3 #content .ui-feld {
  display: flex; flex-direction: column; gap: var(--abstand-2);
  min-width: 0; flex: 1 1 180px;
}
body.version3 #content .ui-feld > label[for] {
  display: block; margin: 0; color: var(--gedaempft); font-size: .875rem;
  line-height: 1.45;
}
body.version3 #content .ui-feld .hilfe-zeichen { margin-left: 4px; }
body.version3 #content .aktionszeile {
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--abstand-3);
  margin: var(--abstand-4) 0 var(--abstand-6);
}
body.version3 #content .tabelle td .status { white-space: nowrap; overflow-wrap: normal; }
body.version3 #lead-list .tabelle td:nth-child(2) { min-width: 190px; }
body.version3 #view-dateien #datei-suche { flex: none; min-width: 0; }
body.version3 #view-dateien .datei-suche { align-items: end; gap: var(--abstand-3); }
body.version3 #content :is(.filter-zeile, .filterzeile, .datei-suche) > button { min-height: 48px; }
body.version3 #content .ui-feld > :is(input, select, textarea) {
  width: 100%; min-width: 0; max-width: 100%; min-height: 48px;
  flex: 0 0 auto; margin: 0;
}
body.version3 #content .ui-feld:has(> :is(input, select, textarea).versteckt),
body.version3 #content .ui-feld:has(> :is(input, select, textarea)[hidden]) { display: none; }
body.version3 #content :is(.filter-zeile, .filterzeile, .formular-zeile, .knopf-reihe, .diktat-zeile):has(> .ui-feld) {
  display: flex; flex-wrap: wrap; align-items: end; gap: var(--abstand-4);
}
body.version3 #content .formular:has(> .ui-feld) {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  align-items: end; gap: var(--abstand-6);
}
body.version3 #content .formular > :is(.ui-feld:has(textarea), .diktat-zeile, .feldgruppe, .check-zeile, .hinweis, button) {
  grid-column: 1 / -1;
}
body.version3 #content :is(.karte, .feldgruppe) > .ui-feld { margin-bottom: var(--abstand-4); }
body.version3 #content .feldgruppe > summary { margin-bottom: var(--abstand-4); }
body.version3 #content :is(input[type="file"], .mail-vorlagen-layout, .mail-vorlagen-liste, .mail-vorlage-wahl) {
  min-width: 0; max-width: 100%;
}
body.version3 #content .mail-vorlage-titel { overflow-wrap: anywhere; }
body.version3 #content #view-einstellungen :is(.karte, .einst-gruppe, strong) { overflow-wrap: anywhere; }
@media (max-width: 900px) {
  body.version3 #content .mail-vorlagen-layout { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) {
  body.version3 #content .ui-feld { flex-basis: 100%; }
  body.version3 #content .formular:has(> .ui-feld) { gap: var(--abstand-4); }
}
