/* Self-Service auf Smartphones. Nur unterhalb 768 px wirksam – Desktop unverändert. */
@media (max-width: 768px) {
  html, body { overflow-x: hidden; }
  body { -webkit-text-size-adjust: 100%; }
  img, svg { max-width: 100%; }

  .ss-header-inner { height: auto; flex-wrap: wrap; padding: 8px 12px; gap: 8px 10px; }
  .ss-brand-sub { display: none; }
  .ss-spacer { flex: 1; }
  .ss-user > span:not(.ss-avatar) { display: none; }
  .ss-nav { order: 5; width: 100%; margin: 0; }
  .ss-nav a { flex: 1; text-align: center; padding: 8px 6px; }
  .ss-lang { display: flex !important; order: 6; width: 100%; justify-content: center; margin: 0; }

  .ss-main { margin: 16px auto; padding: 0 12px 40px; }
  .ss-h1 { font-size: 1.4rem; }
  .ss-sub { margin-bottom: 16px; }
  .ss-grid { gap: 12px; }
  .ss-grid > * { min-width: 0; }
  .ss-card { padding: 14px; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .ss-kpi-value { font-size: 26px; }
  .ss-lic { flex-wrap: wrap; min-width: 0; }
  .ss-lic code, .ss-lic small { overflow-wrap: anywhere; }
  table { font-size: 13px; }
  input:not([type=checkbox]):not([type=radio]), select, textarea { font-size: 16px; max-width: 100%; }
}
