@media (max-width: 860px) {
  .mobile-toggle {
    display: flex;
  }
  .sidebar {
    transform: translateX(-105%);
    box-shadow: 14px 0 40px rgba(30, 24, 68, 0.12);
  }
  .sidebar.open {
    transform: translateX(0);
  }
  .overlay {
    position: fixed;
    z-index: 10;
    inset: var(--topbar) 0 0;
    display: block;
    background: rgba(25, 22, 43, 0.25);
    opacity: 0;
    pointer-events: none;
    transition: 0.25s ease;
  }
  .overlay.show {
    opacity: 1;
    pointer-events: auto;
  }
  .main {
    margin-left: 0;
    padding-left: 24px;
    padding-right: 24px;
  }
  .filter-bar {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 560px) {
  .topbar {
    padding: 0 14px;
    gap: 10px;
  }
  .brand-logo {
    width: 39px;
    height: 39px;
    margin-right: 8px;
  }
  .brand-name {
    font-size: 13.5px;
  }
  .brand-subtitle {
    font-size: 7.8px;
  }
  .profile-copy {
    display: none;
  }
  .profile {
    width: 44px;
    padding: 4px;
  }
  .profile-menu {
    right: -2px;
  }
  .main {
    padding: calc(var(--topbar) + 28px) 18px 28px;
  }
  .filter-bar {
    grid-template-columns: 1fr;
  }
  .date-range-popover {
    left: 0;
    right: auto;
    width: min(340px, calc(100vw - 36px));
    grid-template-columns: 1fr;
  }
  .table-footer {
    align-items: flex-start;
    flex-direction: column;
  }
  .role-toolbar {
    align-items: stretch;
    flex-direction: column;
  }
  .role-search {
    width: 100%;
  }
  .table-footer-actions {
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .page-heading-row {
    gap: 12px;
  }
  .page-heading-row > .primary-button .button-label {
    display: none;
  }
  .page-heading-row > .primary-button {
    width: 42px;
    padding: 0;
    flex: none;
  }
  .dialog-body {
    grid-template-columns: 1fr;
  }
  .form-field.full {
    grid-column: auto;
  }
}

@media (max-width: 1050px) {
  .product-filter-bar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .order-detail-item {
    flex-basis: calc(50% - 40px);
  }
}

@media (max-width: 700px) {
  .domain-grid {
    grid-template-columns: 1fr;
  }
  .domain-tools select {
    width: 100%;
  }
  .domain-stat {
    min-width: 140px;
  }
  .product-filter-bar {
    grid-template-columns: 1fr;
  }
  .order-detail-grid {
    gap: 20px;
  }
  .order-detail-item {
    flex-basis: 100%;
    min-width: 0;
  }
  .order-total-box {
    width: 100%;
  }
}

@media print {
  body * {
    visibility: hidden;
  }
  .invoice-preview,
  .invoice-preview * {
    visibility: visible;
  }
  .invoice-preview {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    border: 0;
  }
}
