/* Mobile-first overrides */
@media (max-width: 768px) {
  .app-header {
    flex-wrap: wrap;
    padding: 10px 12px;
    gap: 8px;
  }

  .header-left {
    gap: 10px;
  }

  .header-logo {
    height: 28px;
  }

  .header-title {
    font-size: var(--font-size-md);
  }

  .header-subtitle {
    display: none;
  }

  .header-nav {
    order: 3;
    width: 100%;
    justify-content: center;
  }

  .header-kw {
    font-size: var(--font-size-sm);
    margin: 0 8px;
  }

  .nav-btn {
    padding: 6px 10px;
    font-size: var(--font-size-xs);
  }

  .grid-resource-header,
  .grid-resource-cell {
    min-width: 120px;
    font-size: var(--font-size-xs);
    padding: 4px 8px;
  }

  .shift-cell {
    min-width: 40px;
  }

  .weekend .shift-cell {
    min-width: 28px;
  }

  .assignment-chip {
    font-size: 10px;
    padding: 2px 4px;
  }

  /* Modal becomes bottom sheet on mobile */
  .modal-overlay {
    align-items: flex-end;
  }

  .modal {
    width: 100%;
    max-width: 100%;
    border-radius: var(--radius-lg) var(--radius-lg) 0 0;
    max-height: 85vh;
    padding: 20px 16px;
  }
}

@media (max-width: 480px) {
  .grid-resource-header,
  .grid-resource-cell {
    min-width: 100px;
    font-size: 10px;
  }

  .shift-cell {
    min-width: 36px;
  }
}
