/* Phase 113: shared responsive system repair for admin and authenticated members */
html, body { max-width: 100%; overflow-x: hidden; }
body.workspace-experience { min-width: 0; }
body.workspace-experience main,
body.workspace-experience #main-content { min-width: 0; width: 100%; }
body.workspace-experience main > * { min-width: 0; }
body.workspace-experience :is(.dashboard-experience,.workspace-shell,.event-editor,.profile-editor,.notifications-shell,.verification-section,.admin-review-layout,.admin-discovery-layout,.distribution-shell,.communication-history-main) {
  max-width: 1540px;
  box-sizing: border-box;
}
body.workspace-experience :is(input,select,textarea,button,.button) { max-width: 100%; }
body.workspace-experience :is(.dashboard-hero,.dashboard-hero-compact,.dx-hero,.admin-today,.workspace-toolbar,.editor-card,.publish-card,.danger-card,.dx-card,.dx-metric) {
  min-width: 0;
}

/* Header and workspace context: never let navigation push the page wider than the viewport. */
body.workspace-experience .premium-site-header { min-width: 0; }
body.workspace-experience .premium-site-header > * { min-width: 0; }
body.workspace-experience .premium-workspace-context { min-width: 0; }
body.workspace-experience .premium-workspace-context > div { min-width: 0; max-width: 100%; overflow: hidden; }
body.workspace-experience .premium-workspace-context-links { min-width: 0; max-width: 100%; overflow-x: auto; }
body.workspace-experience .premium-workspace-context-links a { flex: 0 0 auto; }
body.workspace-experience .premium-site-nav { max-width: 100vw; }
body.workspace-experience .premium-site-nav a,
body.workspace-experience .premium-site-nav button { min-width: 0; overflow-wrap: anywhere; }

/* Shared page rhythm and cards. */
body.workspace-experience .workspace-shell,
body.workspace-experience .profile-editor,
body.workspace-experience .verification-section,
body.workspace-experience .notifications-shell,
body.workspace-experience .admin-review-layout,
body.workspace-experience .distribution-shell,
body.workspace-experience .communication-history-main {
  width: min(100% - 32px, 1540px);
  margin-right: auto;
  margin-left: auto;
}
body.workspace-experience .workspace-shell { padding-right: 0; padding-left: 0; }
body.workspace-experience :is(.editor-card,.publish-card,.danger-card,.moderation-card,.history-card,.review-preview-card,.notification-card,.dashboard-panel,.metric-card,.dx-card,.dx-metric) {
  overflow-wrap: anywhere;
}
body.workspace-experience :is(.dx-card,.dx-metric,.editor-card,.publish-card,.danger-card) img { max-width: 100%; height: auto; }

/* Dashboard and administrator overview grids. */
body.workspace-experience .dashboard-experience { width: min(100% - 32px, 1580px); }
body.workspace-experience .dx-hero { grid-template-columns: minmax(0, 1fr) minmax(260px, 340px); }
body.workspace-experience .dx-metrics-six { grid-template-columns: repeat(3, minmax(0, 1fr)); }
body.workspace-experience .dx-bento { grid-template-columns: repeat(12, minmax(0, 1fr)); }
body.workspace-experience .dx-card { grid-column: span 6; }
body.workspace-experience .dx-card.dx-span-4,
body.workspace-experience .dx-card.dx-span-5,
body.workspace-experience .dx-card.dx-span-7,
body.workspace-experience .dx-card.dx-span-8 { grid-column: span 6; }
body.workspace-experience .dx-action-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
body.workspace-experience .dx-table-wrap,
body.workspace-experience .table-wrap,
body.workspace-experience .admin-ticket-order-table { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
body.workspace-experience .dx-table,
body.workspace-experience .data-table { min-width: 620px; }
body.workspace-experience .admin-today { min-width: 0; }
body.workspace-experience .admin-global-search { min-width: 0; }
body.workspace-experience .admin-global-search > div { min-width: 0; }

/* Event lists, queues and admin tables keep their columns inside their cards. */
body.workspace-experience .admin-event-list { min-width: 0; }
body.workspace-experience .admin-event-row { grid-template-columns: 92px minmax(0, 1fr) minmax(150px, .55fr) 28px; }
body.workspace-experience .admin-event-main,
body.workspace-experience .admin-event-side { min-width: 0; }
body.workspace-experience .admin-event-main h2,
body.workspace-experience .admin-event-main p,
body.workspace-experience .admin-event-side strong,
body.workspace-experience .admin-event-side span { overflow-wrap: anywhere; }
body.workspace-experience .status-tabs { max-width: 100%; }
body.workspace-experience .admin-search { width: min(100%, 720px); }

/* All authenticated forms use the same field sizing and never overflow cards. */
body.workspace-experience :is(.form-grid,.external-import-grid,.member-control-grid,.website-control-grid,.ticketing-stat-grid,.upload-grid,.profile-media-grid) {
  min-width: 0;
}
body.workspace-experience .form-grid > *,
body.workspace-experience .external-import-grid > *,
body.workspace-experience .member-control-grid > *,
body.workspace-experience .website-control-grid > * { min-width: 0; }
body.workspace-experience .form-field input,
body.workspace-experience .form-field select,
body.workspace-experience .form-field textarea,
body.workspace-experience .external-import-card input,
body.workspace-experience .external-import-card select,
body.workspace-experience .external-import-card textarea {
  max-width: 100%;
  box-sizing: border-box;
}
body.workspace-experience .button-row,
body.workspace-experience .dx-hero-actions,
body.workspace-experience .management-actions,
body.workspace-experience .distribution-actions,
body.workspace-experience .feature-control-actions {
  min-width: 0;
  flex-wrap: wrap;
}
body.workspace-experience .map-picker,
body.workspace-experience .map-picker-controls,
body.workspace-experience .media-editor,
body.workspace-experience .external-gallery-manager { min-width: 0; max-width: 100%; }
body.workspace-experience .map-picker iframe { max-width: 100%; }

/* Mid-width screens: collapse sidebars before they become cramped. */
@media (max-width: 1080px) {
  body.workspace-experience .premium-workspace-context > div { padding-right: 16px; padding-left: 16px; }
  body.workspace-experience .dx-hero { grid-template-columns: 1fr; }
  body.workspace-experience .dx-hero-pulse { max-width: 560px; }
  body.workspace-experience .dx-card,
  body.workspace-experience .dx-card.dx-span-4,
  body.workspace-experience .dx-card.dx-span-5,
  body.workspace-experience .dx-card.dx-span-7,
  body.workspace-experience .dx-card.dx-span-8 { grid-column: span 12; }
  body.workspace-experience .dx-metrics-six { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.workspace-experience .event-editor,
  body.workspace-experience .profile-editor,
  body.workspace-experience .verification-review-layout,
  body.workspace-experience .admin-review-layout { grid-template-columns: 1fr; }
  body.workspace-experience .editor-sidebar,
  body.workspace-experience .profile-sidebar,
  body.workspace-experience .moderation-sidebar { position: static; }
  body.workspace-experience .admin-event-row { grid-template-columns: 88px minmax(0, 1fr) 28px; }
  body.workspace-experience .admin-event-side { display: none; }
}

/* Tablet and phone: predictable stacked layouts, safe nav and no horizontal clipping. */
@media (max-width: 760px) {
  body.workspace-experience .premium-workspace-context { position: relative; top: 0; }
  body.workspace-experience .premium-site-header.is-scrolled + .premium-workspace-context { top: 0; }
  body.workspace-experience .premium-workspace-context > div { min-height: 48px; padding: 0 12px; }
  body.workspace-experience .workspace-shell,
  body.workspace-experience .profile-editor,
  body.workspace-experience .verification-section,
  body.workspace-experience .notifications-shell,
  body.workspace-experience .admin-review-layout,
  body.workspace-experience .distribution-shell,
  body.workspace-experience .communication-history-main,
  body.workspace-experience .dashboard-experience {
    width: calc(100% - 24px);
    padding-right: 0;
    padding-left: 0;
  }
  body.workspace-experience .dashboard-experience { padding-top: 14px; padding-bottom: 54px; }
  body.workspace-experience .dx-hero { gap: 20px; padding: 26px 20px; border-radius: 22px; }
  body.workspace-experience .dx-hero h1 { max-width: 100%; font-size: clamp(2.25rem, 11vw, 3.7rem); }
  body.workspace-experience .dx-hero-actions,
  body.workspace-experience .dx-hero-actions .button { width: 100%; }
  body.workspace-experience .dx-metrics-six { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  body.workspace-experience .dx-action-grid,
  body.workspace-experience .dx-action-grid-admin,
  body.workspace-experience .dx-action-grid-member { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.workspace-experience .dx-card { padding: 18px; border-radius: 19px; }
  body.workspace-experience .dx-card-heading { gap: 10px; }
  body.workspace-experience .dx-card-heading > a { max-width: 42px; overflow: hidden; }
  body.workspace-experience .admin-today { grid-template-columns: 1fr; gap: 16px; margin-bottom: 14px; padding: 19px; }
  body.workspace-experience .admin-global-search > div,
  body.workspace-experience .admin-search { display: grid; grid-template-columns: 1fr; width: 100%; }
  body.workspace-experience .admin-global-search button,
  body.workspace-experience .admin-search button { width: 100%; }
  body.workspace-experience .status-tabs { flex-wrap: nowrap; margin-right: -12px; margin-left: -12px; padding-right: 12px; padding-left: 12px; overflow-x: auto; scrollbar-width: none; }
  body.workspace-experience .status-tabs::-webkit-scrollbar { display: none; }
  body.workspace-experience .status-tabs a { flex: 0 0 auto; }
  body.workspace-experience .admin-event-row { grid-template-columns: 70px minmax(0, 1fr); gap: 11px; padding: 10px; }
  body.workspace-experience .admin-event-thumb { min-height: 75px; }
  body.workspace-experience .admin-event-side,
  body.workspace-experience .admin-event-row .row-arrow { display: none; }
  body.workspace-experience :is(.form-grid,.external-import-grid,.member-control-grid,.website-control-grid,.ticketing-stat-grid,.upload-grid,.profile-media-grid) { grid-template-columns: 1fr; }
  body.workspace-experience .form-field-full { grid-column: auto; }
  body.workspace-experience .button-row { display: grid; grid-template-columns: 1fr; }
  body.workspace-experience .button-row .button { width: 100%; }
  body.workspace-experience .map-picker-controls { display: grid; grid-template-columns: 1fr; }
  body.workspace-experience .map-picker-controls .button { width: 100%; }
  body.workspace-experience .event-gallery-grid,
  body.workspace-experience .gallery-preview,
  body.workspace-experience .existing-gallery,
  body.workspace-experience .review-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.workspace-experience .premium-site-nav { right: 10px; left: 10px; width: auto; max-height: calc(100dvh - 82px); overflow-y: auto; }
  body.workspace-experience .table-wrap,
  body.workspace-experience .dx-table-wrap { margin-right: 0; margin-left: 0; }
}
@media (max-width: 430px) {
  body.workspace-experience .dx-metrics-six { grid-template-columns: 1fr; }
  body.workspace-experience .dx-action-grid,
  body.workspace-experience .dx-action-grid-admin,
  body.workspace-experience .dx-action-grid-member { grid-template-columns: 1fr; }
  body.workspace-experience .dx-card { padding: 16px; }
  body.workspace-experience .event-gallery-grid,
  body.workspace-experience .gallery-preview,
  body.workspace-experience .existing-gallery,
  body.workspace-experience .review-gallery { grid-template-columns: 1fr; }
}

/* Reduced motion prevents layout shifts during dashboard reveal. */
@media (prefers-reduced-motion: reduce) {
  body.workspace-experience .dx-metric,
  body.workspace-experience .dx-card { opacity: 1; transform: none; transition: none; }
}
