@media (max-width: 768px) {
  .dvc-portal__header { flex-direction: column; }
  .dvc-portal__header .dvc-button { width: 100%; }
  .dvc-case-grid { grid-template-columns: 1fr; }
  .dvc-case-card__actions { flex-direction: column; }
  .dvc-case-card__actions .dvc-button { width: 100%; }
  .dvc-meta-list > div { flex-direction: column; gap: 0.2rem; }
  .dvc-meta-list dd { text-align: left; }
}

@media (max-width: 390px) {
  .dvc-portal { padding-inline: 0.75rem; }
  .dvc-card,
  .dvc-case-card { padding: 1rem; }
  .dvc-button { width: 100%; }
}

@supports (padding: max(0px)) {
  .dvc-portal { padding-left: max(1rem, env(safe-area-inset-left)); padding-right: max(1rem, env(safe-area-inset-right)); }
}

@media (prefers-reduced-motion: reduce) {
  .dvc-button { transition: none; }
}
