/* Hard Déco — V2-RC1.5.77 — surfaces secondaires compactes */
.compact-filter-line {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.compact-filter-line .list-page-tabs {
  flex: 1 1 auto;
  min-width: 0;
}

.compact-tool-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 34px;
  padding: 6px 10px;
  border: 1px solid var(--border, #d8dee9);
  border-radius: 9px;
  background: transparent;
  color: var(--muted, #687386);
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.compact-tool-button:hover { color: var(--text, #182033); background: var(--surface-2, #f5f7fa); }
.compact-tool-button svg { width: 16px; height: 16px; }

/* RC1.5.77 — les trois pages secondaires reprennent le titre plat des listes. */

.results-operations-page > .list-page-header h1,
.compact-operations-page > .operations-page-header h1 {
  margin: 0;
  font-size: clamp(1.3rem, 2vw, 1.65rem);
}

.results-operations-page > .list-page-controls {
  padding: 7px 10px;
}

.compact-operations-page .operations-page-actions { gap: 7px; }
.compact-operations-page .operations-page-actions button { min-height: 36px; }

.charges-page .charges-period-bar {
  min-height: 56px;
  padding: 8px 12px;
  gap: 12px;
}

.charges-page .charges-period-copy { gap: 1px; }
.charges-page .charges-period-copy > span { font-size: .72rem; }

.planning-page .planning-google-status {
  min-height: 46px;
  padding: 7px 11px;
  margin-bottom: 10px;
}

.planning-page .planning-google-status-icon { width: 30px; height: 30px; }

.archive-cleanup-header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
}

.archive-cleanup-header-actions [data-archive-selected] {
  min-height: 36px;
  white-space: nowrap;
}

.confirmation-modal .modal-confirm-msg {
  white-space: pre-line;
  color: var(--text, #182033);
  font-size: .98rem;
  line-height: 1.55;
}

.confirmation-modal.is-danger .modal-header .icon-wrap { color: var(--danger, #dc3545); }
.confirmation-modal.is-danger [data-action="confirm"] {
  background: var(--danger, #dc3545);
  border-color: var(--danger, #dc3545);
  color: #fff;
}

@media (max-width: 720px) {
  .compact-filter-line { align-items: stretch; }
  .compact-tool-button { width: 36px; flex: 0 0 36px; padding-inline: 0; }
  .compact-tool-button span { display: none; }

  #main-content .results-operations-page > .list-page-header,
  #main-content .planning-page > .operations-page-header,
  #main-content .charges-page > .operations-page-header {
    align-items: center;
    gap: 8px;
    padding-bottom: 7px;
  }

  .compact-operations-page .operations-page-actions button span { display: none; }
  .compact-operations-page .operations-page-actions button { padding-inline: 10px; }

  .charges-page .charges-period-bar { align-items: stretch; }
  .charges-page .charges-period-controls { width: 100%; }
  .charges-page .charges-period-select { flex: 1 1 auto; }

  .planning-page .planning-google-status-meta { display: none; }

  .archive-cleanup-header { align-items: flex-start; gap: 8px; }
  .archive-cleanup-title p { display: none; }
  .archive-cleanup-header-actions [data-archive-selected] span { display: none; }
  .archive-cleanup-header-actions [data-archive-selected] { width: 38px; padding-inline: 0; justify-content: center; }
}

/* Lot 11A-7.24 — confirmation compacte et filtres Devis sans chevauchement. */
@media (max-width: 960px) {
  .modal-backdrop:has(> .confirmation-modal) {
    align-items: center;
    justify-content: center;
    padding: 16px;
  }

  .modal.confirmation-modal,
  .modal.small.confirmation-modal {
    width: min(420px, 100%);
    height: auto;
    max-width: 420px;
    max-height: calc(100dvh - 32px);
    border-width: 1px;
    border-radius: 14px;
    box-shadow: var(--hd-modal-shadow, 0 24px 70px rgba(15, 23, 42, .28));
  }

  .confirmation-modal .modal-body {
    min-height: 0;
    flex: 0 1 auto;
    padding: 0 18px;
    overflow-y: auto;
  }

  .confirmation-modal .modal-confirm-msg {
    margin: 0;
    padding: 20px 0;
  }

  .confirmation-modal .modal-actions {
    position: static;
    flex: 0 0 auto;
  }
}

@media (max-width: 720px) {
  #main-content #page-devis .archive-filter-line {
    grid-template-columns: minmax(0, 1fr) 38px;
    column-gap: 6px;
  }

  #main-content #page-devis .archive-filter-line > .list-page-filter-scroll:first-child {
    grid-column: 1;
    min-width: 0;
    width: 100% !important;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }

  #main-content #page-devis .archive-filter-line > .list-page-filter-scroll:first-child::-webkit-scrollbar {
    display: none;
  }

  #main-content #page-devis .archive-filter-line > .archive-toolbar {
    grid-column: 2;
    position: relative;
    z-index: 2;
    width: 38px !important;
    min-width: 38px;
    margin-left: 0;
    background: var(--panel, #fff);
  }

  #main-content #page-devis .archive-toolbar button {
    width: 38px !important;
    min-width: 38px;
    min-height: 38px !important;
    padding: 0 !important;
  }
}
