@media (max-width: 720px) {
  .topbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 7px;
    padding: 8px 14px;
  }

  .topbar .brand {
    grid-column: 1;
    grid-row: 1;
  }

  .brand small {
    display: inline;
    color: var(--text-secondary);
    font-size: 11px;
  }

  .userbox {
    grid-column: 1;
    grid-row: 2;
    min-width: 0;
    gap: 5px;
    font-size: 12px;
    justify-content: flex-start;
  }

  .userbox .user-name {
    display: block;
    max-width: none;
    overflow: visible;
    white-space: nowrap;
  }

  .topbar .userbox button {
    min-height: 30px;
    padding: 4px 6px;
    font-size: 11px;
  }

  .project-switch {
    grid-column: 1;
    grid-row: 3;
    order: initial;
  }

  .page {
    padding-top: 16px;
  }

  .heading h1,
  .module-hero h1 {
    font-size: 25px;
  }

  button,
  .button {
    min-height: 40px;
    padding: 8px 10px;
    border-radius: 8px;
    font-size: 13px;
    line-height: 1.2;
  }

  .button-row,
  .actions {
    gap: 6px;
  }

  .panel,
  .metrics article,
  .module-hero {
    padding: 14px;
    border-radius: 12px;
  }

  .summary-register-heading {
    align-items: flex-start;
    margin-top: 10px;
  }

  .summary-register-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }

  .summary-register-actions output {
    grid-column: 1 / -1;
    width: auto !important;
    font-size: 13px;
  }

  .summary-register-actions .button {
    width: auto !important;
    min-width: 0;
    padding: 8px 7px;
    font-size: 12px;
  }

  .summary-quick-filters {
    gap: 6px;
    margin: 8px 0 12px;
  }

  .summary-quick-filters button {
    min-height: 36px;
    padding: 7px 9px;
    font-size: 12px;
  }

  .summary-selection-bar {
    gap: 6px;
    padding: 8px 10px;
    font-size: 12px;
  }
}
