.visit-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--ui-space-2); padding: var(--ui-space-1); }
.visit-actions .button { min-height: calc(var(--ui-touch-min) + var(--ui-space-2)); }
/* Entspricht --ui-form-max; var() ist in Media-Queries nicht verfügbar. */
@media (max-width: 45rem) {
  .app-layout { grid-template-columns: minmax(0, 1fr); }
  .app-header, .main-content { padding: var(--ui-space-2); }
  .app-header { flex-wrap: nowrap; }
  .app-header .brand-link { flex-wrap: nowrap; gap: 0; padding: var(--ui-space-1); }
  .app-header .brand-link strong { display: none; }
  .menu-toggle:not([hidden]) { display: inline-flex; flex: 0 0 var(--ui-touch-min); min-width: var(--ui-touch-min); min-height: var(--ui-touch-min); padding: 0; }
  .button, label, legend, .main-nav { font-size: var(--ui-font-size-body); }
  .login-title { font-size: var(--ui-font-size-login-display-mobile); }
  .main-nav { padding: var(--ui-space-2); }
  .quick-grid { grid-template-columns: minmax(0, 1fr); }
  .quick-grid > .field { grid-row: auto; grid-template-rows: none; margin-bottom: var(--ui-space-3); }
  .panel { padding: var(--ui-space-2); }
  button, input, select, textarea, .main-nav a, .user-block a { min-width: var(--ui-touch-min); min-height: var(--ui-touch-min); }
  .user-block a { display: inline-flex; align-items: center; }
  .actions { gap: var(--ui-space-1); }
  .login-main { padding-top: var(--ui-space-3); }
}
