/* Doctors page responsive layer. Desktop structure remains unchanged. */
.doctors-container { min-width: 0; overflow-x: clip; }
.doctors-container * { min-width: 0; }
.doctors-container img, .doctors-container svg { max-width: 100%; }
.doctors-container button, .doctors-container a, .doctors-container select, .doctors-container input { touch-action: manipulation; }
.doctors-container .page-header { gap: 16px; flex-wrap: wrap; }
.doctors-container .header-actions { flex-wrap: wrap; }
.doctors-container .header-actions > button,
.doctors-container .header-actions > .user-profile { min-height: 44px; }
.doctors-container .tabs-header { flex-wrap: wrap; gap: 8px; }
.doctors-container .tabs-tabs { overflow-x: auto; }
.doctors-container .tab-btn { min-height: 48px; white-space: nowrap; }
.doctors-container .view-toggle-btn { min-height: 44px; }
.doctors-container .filters-section { flex-wrap: wrap; }
.doctors-container .search-box { min-width: 240px; }
.doctors-container .filter-select,
.doctors-container .export-btn,
.doctors-container .print-btn { min-height: 44px; }
.doctors-container .table-container { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.doctors-container .doctors-table { min-width: 820px; }
.doctors-container .action-btn { width: 44px; height: 44px; }
.doctors-container .doctor-card-name { overflow-wrap: anywhere; white-space: normal; }
.doctors-container .doctor-card-details .row { flex-wrap: wrap; overflow-wrap: anywhere; }
.doctors-container .modal-overlay { padding: 12px; overflow-y: auto; align-items: flex-start; }
.doctors-container .modal-content,
.doctors-container .schedule-modal-content { width: min(100%, 720px); max-height: calc(100dvh - 24px); margin-block: 0; }
.doctors-container .modal-body { overflow-wrap: anywhere; }
.doctors-container .form-input,
.doctors-container .btn { min-height: 44px; max-width: 100%; }
.doctors-container .modal-footer { flex-wrap: wrap; }
.doctors-container .modal-footer > * { min-width: 120px; }
.doctors-container .schedule-grid { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); }
.doctors-container :focus-visible { outline: 3px solid var(--accent-soft, #dfe1ff); outline-offset: 3px; }

@media (max-width: 1024px) {
  .doctors-container { padding: 20px 16px !important; margin: -24px -16px !important; }
  .doctors-container > .stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .doctors-container .filters-section { align-items: stretch; }
  .doctors-container .search-box { flex: 1 1 100%; }
}

@media (max-width: 768px) {
  .doctors-container { padding: 16px 12px !important; margin: -16px -12px !important; }
  .doctors-container .page-header { flex-direction: column; align-items: stretch; margin-bottom: 20px; }
  .doctors-container .header-actions { width: 100%; justify-content: stretch; }
  .doctors-container .header-actions > * { flex: 1; justify-content: center; }
  .doctors-container > .stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
  .doctors-container .stat-card { padding: 16px !important; }
  .doctors-container .filters-section { padding: 14px !important; }
  .doctors-container .search-box,
  .doctors-container .filter-select,
  .doctors-container .export-btn,
  .doctors-container .print-btn { width: 100%; }
  .doctors-container .tabs-header { padding-inline: 12px; }
  .doctors-container .view-toggle { margin: 0 0 8px; width: 100%; }
  .doctors-container .view-toggle-btn { flex: 1; justify-content: center; }
  .doctors-container .cards-grid { grid-template-columns: minmax(0, 1fr); padding: 16px 14px; }
  .doctors-container .modal-footer { flex-direction: column-reverse; }
  .doctors-container .modal-footer > * { width: 100%; }
  .doctors-container .schedule-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 480px) {
  .doctors-container { padding-inline: 8px !important; margin-inline: -8px !important; }
  .doctors-container .page-title { font-size: 24px; }
  .doctors-container .header-actions { flex-direction: column; }
  .doctors-container .header-actions > * { width: 100%; }
  .doctors-container > .stats-grid { grid-template-columns: 1fr !important; }
  .doctors-container .tabs-header { padding-inline: 8px; }
  .doctors-container .tab-btn { padding-inline: 16px; }
  .doctors-container .schedule-grid { grid-template-columns: 1fr; }
  .doctors-container .modal-header, .doctors-container .modal-body { padding: 18px 16px; }
  .doctors-container .modal-footer { padding: 14px 16px; }
}

@media (prefers-reduced-motion: reduce) {
  .doctors-container *, .doctors-container *::before, .doctors-container *::after {
    animation-duration: .01ms !important; animation-iteration-count: 1 !important;
    scroll-behavior: auto !important; transition-duration: .01ms !important;
  }
}
