/* Shared screen layout. Keep the MSE header and existing print styles. */
@media screen {
  :root { --page-gutter: clamp(12px, 2vw, 48px); }
  main.production-main { width: 100%; max-width: none; padding-inline: var(--page-gutter); }
  .header-conteudo { padding-inline: var(--page-gutter); }
  .workspace, .conduit-workspace {
    grid-template-columns: minmax(0, 1fr) clamp(280px, 20vw, 380px);
    gap: clamp(12px, 1.25vw, 24px);
    align-items: start;
  }
  .workspace > *, .conduit-workspace > *, .two-columns > *,
  .stage-cards > *, .conduit-kpis > *, .file-grid > * { min-width: 0; }
  .stage-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .stage-title { white-space: normal; }
  .stage-icon, .step { flex-shrink: 0; }
  .map-viewport, .conduit-map-wrap { height: clamp(360px, 62vh, 1400px); height: clamp(360px, 62dvh, 1400px); }
  .map-toolbar, .card-heading, .section-title, .table-filters,
  .conduit-picker, .production-actions { flex-wrap: wrap; }
  .search, .card-heading > div, .header-brand > div, .filter,
  .conduit-grid-controls label { min-width: 0; }
  .map-toolbar .search { flex: 1 1 140px; }
  .map-toolbar .search input { width: 100%; }
  .filterbar { column-gap: clamp(12px, 1.5vw, 25px); row-gap: 14px; }
  .filter select { max-width: 100%; }
  .production-actions { gap: 8px; }
  .tabs > button { flex-shrink: 0; }
  .tabs { overscroll-behavior-x: contain; }
  .two-columns { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
  .file-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 310px), 1fr)); }
  .file-image, .dwg-preview { height: clamp(200px, 18vw, 320px); }
  .file-body h3, .file-body p, .detail-card, .notice, .conduit-notice,
  .conduit-foot, .audit-list, .header-title { overflow-wrap: anywhere; }
  .file-meta, .conduit-foot { flex-wrap: wrap; }
  .table-wrap { max-width: calc(100% + 48px); overscroll-behavior-x: contain; }
  .conduit-picker > select { flex: 1 1 180px; max-width: 100%; }
  .conduit-grid-controls label { flex-wrap: wrap; }
  .conduit-tools > select { max-width: 100%; }
  .map-date { max-width: calc(100% - 70px); flex-wrap: wrap; }
  .map-note { max-width: calc(100% - 85px); }
  .conduit-map-wrap .map-note { max-width: calc(100% - 32px); }
  dialog { max-height: calc(100dvh - 24px); overflow: auto; overscroll-behavior: contain; }
  dialog form, .form-two > * { min-width: 0; }
  .form-field input, .form-field select, .form-field textarea { width: 100%; max-width: 100%; }
  .modal-footer { flex-wrap: wrap; }
  .expanded { inset: clamp(8px, 1.5vw, 20px); overflow: auto; }
  .expanded .map-viewport { height: auto; min-height: 120px; }
}

@media screen and (max-width: 1100px) {
  .stage-cards, .conduit-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .two-columns { grid-template-columns: minmax(0, 1fr); }
  .map-toolbar { gap: 10px; }
  .stage-title { font-size: 12px; }
  .stage-foot { font-size: 10px; }
  .conduit-grid-controls > span { margin-left: 0; }
}

@media screen and (max-width: 960px) {
  .workspace, .conduit-workspace { grid-template-columns: minmax(0, 1fr); }
  .detail-card { width: 100%; }
  .production-actions { flex: 1 1 100%; margin-left: 0; }
  .production-actions .button { flex: 1; }
  .map-viewport, .conduit-map-wrap { height: clamp(320px, 58dvh, 720px); }
}

@media screen and (max-width: 768px) {
  .stage-cards { grid-template-columns: minmax(0, 1fr); }
  .table-wrap { max-width: calc(100% + 36px); }
  .conduit-picker > select { width: 100%; min-width: 0; }
  .conduit-grid-controls select { max-width: 100%; }
  .conduit-tools .search { min-width: 0; }
  .conduit-tools > select { min-width: 0; max-width: 100%; flex: 1 1 140px; }
  .header-brand { width: 100%; }
  .header-title { font-size: clamp(15px, 3.8vw, 20px); }
  .header-kicker { font-size: 9px; }
  .map-navigation button { width: 40px; height: 40px; }
  .map-date { max-width: calc(100% - 65px); }
  .conduit-map-wrap .map-date { max-width: calc(100% - 65px); }
  .button, .tabs > button, .conduit-picker select, .conduit-tools select,
  .conduit-grid-controls select, .map-toolbar select { min-height: 40px; }
  .file-image, .dwg-preview { height: 230px; }
}

@media screen and (max-width: 480px) {
  .filterbar > .filter { flex: 1 1 100%; }
  .filter + .filter { border-left: 0; padding-left: 0; }
  .filter select { height: 36px; }
  .stage-card { grid-template-columns: minmax(0, 1fr) auto; gap: 6px 10px; }
  .stage-title { font-size: 11px; }
  .stage-value { font-size: 22px; }
  .stage-foot { flex-wrap: wrap; font-size: 9px; }
  .conduit-kpis { gap: 8px; }
  .conduit-kpis article { padding: 12px; }
  .conduit-intro h2 > span { display: inline-block; margin: 6px 0 0; }
  .conduit-grid-controls label { width: 100%; justify-content: space-between; }
  .conduit-grid-controls label:has(input) { justify-content: flex-start; }
  .conduit-grid-controls select { flex: 1; min-width: 0; }
  .conduit-picker > select { flex-basis: 100%; }
  .form-two, #conduit-form .form-two { grid-template-columns: minmax(0, 1fr); }
  .modal-footer > span { flex-basis: 100%; max-width: none; }
  .modal-footer .button { flex: 1 1 100%; }
  .comparison { grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr) 36px; gap: 8px; }
  .chart-legend { justify-content: flex-start; }
  .history-chart { gap: 6%; padding-inline: 0; }
  .week-group { min-width: 0; }
  .insight-strip > div { min-width: 0; flex: 1; }
}
