/* ── Qualitimm: gemeinsame Rahmen- und Mobil-Korrekturen (16.10.2026) ───────────────────────────
   Jede Seite bringt ihr eigenes CSS mit, Kopfleiste, Raster und Tabellenrahmen sind in ueber 90 Seiten kopiert.
   Diese Datei wird in jeder Seite als LETZTES im <head> geladen und korrigiert die kopierten Muster an einer Stelle.
   Nur Layout (Breiten, Umbrueche, Abstaende), keine Farben, keine Inhalte. Seitenspezifisches steht in der Seite. */

/* Suchknopf: der Tastenhinweis "Strg+K" passt am PC in den Knopf (vorher feste 36 px Breite) */
@media (min-width: 641px) {
  .gs-btn { width: auto; min-width: 36px; padding: 0 0.5rem; gap: 0.3rem; }
}

/* Raster: Spalten duerfen schmaler werden als ihr laengster Inhalt. Sonst sprengt eine lange Zahl, Nummer oder ein
   langer Name das ganze Raster und damit die Seite (Grid-Blowout bei 1fr). */
[class*="grid"] > * { min-width: 0; }

/* Tabellenrahmen: breite Tabellen scrollen im Rahmen waagerecht, statt rechts abgeschnitten zu werden */
.table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }

/* Therapie-Plan, Werkzeugkasten: lange Telefon- und Zusatzangaben rechts duerfen umbrechen (sprengte auch am PC
   die Karte um 140 px) */
.tool-row2 { flex-wrap: wrap; }
.tool-row2 .r { white-space: normal; min-width: 0; overflow-wrap: anywhere; }

@media (max-width: 680px) {
  /* Kopfleiste: Logo, Suche, Benutzer und Menue passen nebeneinander */
  .navbar { padding-left: 0.85rem; padding-right: 0.85rem; gap: 0.5rem; }
  .navbar .nav-right { gap: 0.4rem; min-width: 0; }
  .navbar .user-chip-name, .navbar .user-chip-arrow, .navbar .nav-user { display: none; }
  .navbar .user-chip { padding: 0.2rem; gap: 0; }
  /* Aktionsknopf in der Kopfleiste doppelt den Knopf auf der Seite (z. B. "Neuer Kredit") */
  .navbar .nav-right > .btn-primary { display: none; }
  /* Kopfleisten nur mit Links (ohne Benutzermenue): bei Platzmangel innerhalb der Leiste wischen */
  .navbar .nav-right:not(:has(.user-menu)) { overflow-x: auto; scrollbar-width: none; flex-shrink: 1; }
  .navbar .nav-right:not(:has(.user-menu))::-webkit-scrollbar { display: none; }

  /* Detail- und Bearbeiten-Seiten: Zurueck, Bearbeiten, Loeschen stehen in der Kopfleiste. Das Logo macht dafuer
     Platz, die Knoepfe werden etwas kompakter und duerfen nie ueber den Rand laufen. */
  .navbar:has(.nav-actions) .nav-logo { display: none; }
  .navbar .nav-actions { gap: 0.35rem; min-width: 0; flex: 1; justify-content: space-between; }
  .navbar .nav-actions form { margin: 0; }
  .navbar .nav-actions a, .navbar .nav-actions button { padding: 0.45rem 0.7rem; font-size: 0.85rem; white-space: nowrap; }

  /* Lange Werte (Policennummern, Betraege, Dateinamen, E-Mail-Adressen) brechen um statt zu sprengen */
  .info-value, .stat-value, .doc-meta, .field-val, .kpi-value, .detail-value { overflow-wrap: anywhere; }
  /* Lange Ueberschriften in Kacheln ("SELBSTBETEILIGUNG") mit deutscher Silbentrennung statt mitten im Wort */
  .info-label, .stat-label, .kpi-label { hyphens: auto; -webkit-hyphens: auto; overflow-wrap: break-word; letter-spacing: 0.04em; }

  /* Reiterleisten: bei Platzmangel innerhalb der Leiste wischen (Arztberichte u. a.) */
  .tab-bar { overflow-x: auto; scrollbar-width: none; }
  .tab-bar::-webkit-scrollbar { display: none; }

  /* Einzelne Seiten (Messung 16.10.2026) */
  /* Kredit-Auswertung: Balkenzeilen und Monatszeilen teilen sich die Breite, Werte werden nicht mehr abgeschnitten */
  .ana-bar-label { min-width: 0; max-width: none; flex: 0 1 42%; }
  .ana-bar-val { min-width: 0; flex-shrink: 0; }
  details.month summary .m-name, details.month summary .m-val { min-width: 0; }
  .sim-form { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  /* Therapeuten: Umschalter der Ansicht wischt bei Platzmangel */
  .segview { max-width: 100%; overflow-x: auto; scrollbar-width: none; }
  .segview a, .segview span { flex-shrink: 0; }
  /* Zahnarzt PSI: Referenztabelle scrollt waagerecht */
  .ref-table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  /* Klinik-Seite: lange Begruendung neben dem Passt-Badge */
  .passt-line .why { flex: 1 1 14rem; min-width: 0; overflow-wrap: anywhere; }
  /* Weiterbildung, Auswertung: kleine Tabellen in den Abschnitten scrollen waagerecht */
  .a-section { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  /* Fixkosten, Monats-Heatmap: Zellen duerfen schmaler werden */
  .moti-heatmap > * { min-width: 0; }
  .moti-heat-cell { padding-left: 0.1rem; padding-right: 0.1rem; }
  /* Kommende Abbuchungen, Cookie-Seite: Tabellen scrollen bei Platzmangel waagerecht */
  .pay-table, .cookie-table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
}
