/* Responsive layout overrides for narrow screens.
   Keep visual theme/colors from existing styles; change only structure/usability. */

@media (max-width: 1100px) {
  .container {
    max-width: 100%;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }

  .navbar .container {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 0.5rem;
  }

  .navbar .d-flex.gap-2 {
    width: 100%;
    flex-wrap: wrap;
    gap: 0.35rem !important;
  }

  .app-nav-link {
    font-size: 0.95rem !important;
    padding: 0.35rem 0.45rem !important;
    line-height: 1.2;
  }

  .app-nav-user {
    width: 100%;
    font-size: 0.8rem;
    margin-top: 0.2rem;
    margin-bottom: 0.2rem;
  }

  .card {
    margin-bottom: 0.75rem;
  }

  .card-body {
    padding: 0.75rem;
  }

  .table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .table th,
  .table td {
    white-space: nowrap;
    font-size: 0.88rem;
    vertical-align: middle;
  }

  .row.g-2 > [class*="col-"],
  .row.g-3 > [class*="col-"] {
    width: 100%;
  }

  .btn,
  .form-control,
  .form-select,
  textarea {
    min-height: 42px;
    font-size: 0.95rem;
  }

  textarea {
    min-height: 120px;
  }

  .btn-group,
  .btn-group-vertical,
  .d-flex.gap-2 {
    flex-wrap: wrap;
  }

  .btn-group .btn,
  .d-flex.gap-2 > .btn {
    flex: 1 1 auto;
    min-width: 140px;
  }
}

@media (max-width: 768px) {
  .container.my-4 {
    margin-top: 0.75rem !important;
    margin-bottom: 0.75rem !important;
  }

  .app-brand {
    flex-wrap: wrap;
    gap: 0.35rem;
  }

  .app-brand-text {
    font-size: 1rem;
  }

  .app-logo-img {
    width: 36px !important;
    height: 36px !important;
  }

  h1.h4,
  .h4 {
    font-size: 1.1rem;
  }

  .card-header {
    font-size: 1rem !important;
    padding: 0.55rem 0.7rem;
  }

  .table th,
  .table td {
    font-size: 0.82rem;
    padding: 0.4rem 0.45rem;
  }

  .btn,
  .form-control,
  .form-select {
    width: 100%;
  }

  .dropdown-menu {
    width: min(94vw, 420px);
  }
}
