/*
 * Espaces privés prudhommes.org — couche de présentation unifiée.
 *
 * Cette feuille ne contient que les composants des routes /mon-compte et
 * /admin. Les pages publiques et les écrans d'authentification conservent
 * leurs propres styles afin d'éviter les régressions croisées.
 */

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] {
  --workspace-bg: #f3f7fc;
  --workspace-panel: #fff;
  --workspace-soft: #f7f9fc;
  --workspace-line: #cfdae8;
  --workspace-line-strong: #adc0d6;
  --workspace-ink: #061b42;
  --workspace-muted: #526781;
  --workspace-blue: #155bd7;
  --workspace-blue-dark: #08245a;
  --workspace-blue-soft: #edf4ff;
  --workspace-green: #087f67;
  --workspace-green-soft: #edf9f5;
  --workspace-amber: #8a6000;
  --workspace-amber-soft: #fff8e6;
  --workspace-red: #a5302d;
  --workspace-red-soft: #fff2f1;
  --workspace-radius: 16px;
  --workspace-radius-sm: 11px;
  --workspace-shadow: 0 12px 32px rgba(8, 31, 68, .055);
  background: var(--workspace-bg);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] main {
  padding: 28px clamp(16px, 2.8vw, 44px) 72px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-page, .admin-page) {
  width: min(100%, 1480px);
  min-width: 0;
  display: grid;
  gap: 18px;
  margin-inline: auto;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-page, .admin-page) > :where(*) {
  min-width: 0;
}

/* Navigation privée : robuste en largeur réduite, sans barre persistante. */
body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-nav, .admin-nav) {
  width: 100%;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 5px;
  margin: 0 0 2px;
  padding: 8px;
  overflow-x: auto;
  border: 1px solid var(--workspace-line);
  border-radius: var(--workspace-radius);
  background: #fff;
  box-shadow: 0 6px 20px rgba(8, 31, 68, .04);
  scrollbar-width: none;
  overscroll-behavior-inline: contain;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-nav, .admin-nav)::-webkit-scrollbar {
  display: none;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-nav, .admin-nav) a {
  flex: 0 0 auto;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 14px;
  border: 1px solid transparent;
  border-radius: 10px;
  color: var(--workspace-ink);
  font-size: .88rem;
  font-weight: 750;
  line-height: 1.15;
  text-decoration: none;
  white-space: nowrap;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-nav, .admin-nav) a:is(:hover, :focus-visible) {
  border-color: #c6d6e9;
  background: #f5f8fc;
  text-decoration: none;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-nav, .admin-nav) a[aria-current="page"] {
  border-color: var(--workspace-blue-dark);
  background: var(--workspace-blue-dark);
  color: #fff;
}

/* En-têtes et introduction de page. */
body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-page, .admin-page) > h1 {
  max-width: 26ch;
  margin: 4px 0 -7px;
  color: var(--workspace-ink);
  font-size: clamp(2.25rem, 4vw, 3.5rem);
  line-height: 1.02;
  letter-spacing: -.04em;
  text-wrap: balance;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-lead, .account-note, .admin-page-head p, .admin-hero p) {
  color: var(--workspace-muted);
  line-height: 1.5;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.admin-page-head, .account-dashboard-hero, .admin-hero, .favorite-library-hero) {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 22px;
  margin: 0;
  padding: clamp(20px, 2.6vw, 30px);
  border: 1px solid var(--workspace-line);
  border-radius: var(--workspace-radius);
  background: linear-gradient(135deg, #fff 0%, #f3f7fe 100%);
  box-shadow: var(--workspace-shadow);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.admin-page-head, .account-dashboard-hero, .admin-hero, .favorite-library-hero) :is(h1, h2, p) {
  max-width: 76ch;
  margin: 0;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.admin-page-head, .account-dashboard-hero, .admin-hero, .favorite-library-hero) :is(h1, h2) {
  color: var(--workspace-ink);
  font-size: clamp(1.8rem, 3vw, 2.55rem);
  line-height: 1.06;
  letter-spacing: -.025em;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .kicker {
  display: block;
  margin-bottom: 6px;
  color: var(--workspace-blue);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

/* Panneaux, formulaires et actions communs. */
body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(
  .account-panel,
  .account-form,
  .admin-quality-section,
  .seo-pilot-panel,
  .admin-newsletter-section,
  .managed-page-admin-card,
  .favorite-decision-card,
  .watch-card,
  .admin-ticket-card,
  .enrichment-review-card
) {
  min-width: 0;
  border: 1px solid var(--workspace-line);
  border-radius: var(--workspace-radius);
  background: var(--workspace-panel);
  box-shadow: var(--workspace-shadow);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(
  .account-panel,
  .account-form,
  .admin-quality-section,
  .seo-pilot-panel,
  .admin-newsletter-section
) {
  padding: clamp(18px, 2.2vw, 26px);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-panel, .account-form) :is(h2, h3),
body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.admin-quality-section, .seo-pilot-panel) :is(h2, h3) {
  margin: 0 0 8px;
  color: var(--workspace-ink);
  line-height: 1.15;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-form, .inline-form, .favorite-filter-bar, .admin-ticket-filters, .admin-guide-filters) {
  min-width: 0;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-form, .inline-form, .favorite-filter-bar, .admin-ticket-filters, .admin-guide-filters) label {
  min-width: 0;
  display: grid;
  gap: 6px;
  color: var(--workspace-ink);
  font-size: .86rem;
  font-weight: 750;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-form, .inline-form, .favorite-filter-bar, .admin-ticket-filters, .admin-guide-filters) :is(input, select, textarea) {
  width: 100%;
  max-width: 100%;
  min-height: 48px;
  padding: 10px 13px;
  border: 1px solid var(--workspace-line-strong);
  border-radius: var(--workspace-radius-sm);
  background: #fff;
  color: var(--workspace-ink);
  font: inherit;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] textarea {
  min-height: 132px;
  resize: vertical;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(input, select, textarea):focus-visible {
  outline: 3px solid rgba(21, 91, 215, .2);
  outline-offset: 1px;
  border-color: var(--workspace-blue);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.form-grid, .admin-audit-filters, .admin-ticket-filters, .admin-guide-filters) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .form-grid > label:has(textarea),
body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .form-grid > fieldset {
  grid-column: 1 / -1;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-actions, .button-row, .inline-form) {
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(
  .account-actions a,
  .account-actions button,
  .button-row a,
  .button-row button,
  .inline-form button,
  a.primary-action,
  a.secondary-button,
  button[type="submit"]
) {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 14px;
  border: 1px solid var(--workspace-line-strong);
  border-radius: 10px;
  background: #fff;
  color: var(--workspace-ink);
  font-weight: 750;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(
  .account-actions .primary-action,
  a.primary-action,
  button[type="submit"]:not(.danger-button)
) {
  border-color: var(--workspace-blue);
  background: var(--workspace-blue);
  color: #fff;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.danger-button, .account-danger-details button) {
  border-color: #e7aaa7;
  background: var(--workspace-red-soft);
  color: var(--workspace-red);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .account-message {
  margin: 0;
  padding: 13px 15px;
  border: 1px solid #b9d0f2;
  border-radius: 11px;
  background: var(--workspace-blue-soft);
  color: var(--workspace-ink);
  line-height: 1.45;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .account-message.is-warn {
  border-color: #e6c876;
  background: var(--workspace-amber-soft);
  color: #584000;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .account-message.is-error {
  border-color: #e8aaa7;
  background: var(--workspace-red-soft);
  color: #7a2421;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.status-pill, .admin-status-badge, .admin-ticket-status, .form-status) {
  width: fit-content;
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  border: 1px solid #bfd0e6;
  border-radius: 999px;
  background: #f5f8fc;
  color: var(--workspace-muted);
  font-size: .76rem;
  font-weight: 800;
  line-height: 1.1;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.is-ok, .is-sent, .is-active) > :is(.status-pill, .admin-status-badge),
body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.status-pill.is-ok, .admin-status-badge.is-sent, .admin-ticket-status.is-open) {
  border-color: #9bd2c1;
  background: var(--workspace-green-soft);
  color: #08614f;
}

/* Tableau de bord membre et administration. */
body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-dashboard-grid, .admin-kpis, .admin-quality-kpis, .seo-pilot-kpis) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 12px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-dashboard-card, .admin-kpi, .seo-pilot-kpi) {
  min-width: 0;
  min-height: 118px;
  display: grid;
  align-content: center;
  gap: 6px;
  padding: 18px;
  border: 1px solid var(--workspace-line);
  border-radius: 14px;
  background: #fff;
  color: var(--workspace-ink);
  text-decoration: none;
  box-shadow: 0 7px 22px rgba(8, 31, 68, .04);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-dashboard-card, .admin-kpi, .seo-pilot-kpi) strong {
  font-size: clamp(1.35rem, 2.2vw, 2rem);
  line-height: 1.05;
  overflow-wrap: anywhere;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-dashboard-card, .admin-kpi, .seo-pilot-kpi) :is(span, small) {
  color: var(--workspace-muted);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.admin-status-grid, .admin-quality-grid, .seo-pilot-grid, .quality-grid) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

/* Favoris : filtre compact et cartes de décision exploitables. */
body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-filter-bar {
  display: grid;
  grid-template-columns: minmax(260px, 1.7fr) minmax(190px, .8fr) minmax(210px, .8fr) auto;
  align-items: end;
  gap: 12px;
  padding: 18px;
  border: 1px solid var(--workspace-line);
  border-radius: var(--workspace-radius);
  background: #fff;
  box-shadow: var(--workspace-shadow);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] :is(.favorite-results-head, .favorite-library-count) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: var(--workspace-muted);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-decision-list {
  display: grid;
  gap: 14px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-decision-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  padding: 20px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-decision-card > header {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 12px 18px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-decision-card :is(h2, h3, p) {
  margin: 0;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-decision-card :is(h2, h3) {
  color: var(--workspace-ink);
  font-size: 1.16rem;
  line-height: 1.28;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] :is(.favorite-card-kicker, .favorite-summary) {
  color: var(--workspace-muted);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-read-link {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 13px;
  border: 1px solid var(--workspace-line-strong);
  border-radius: 10px;
  background: #fff;
  font-weight: 750;
  text-decoration: none;
  white-space: nowrap;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] :is(.favorite-theme-list, .favorite-note-actions) {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-theme-list > span {
  padding: 5px 9px;
  border: 1px solid #c9d9ef;
  border-radius: 999px;
  background: var(--workspace-blue-soft);
  color: var(--workspace-blue-dark);
  font-size: .78rem;
  font-weight: 700;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-note-heading {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-note-heading > span:last-child {
  min-width: 0;
  display: grid;
  gap: 2px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-note-panel {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 10px;
  padding: 15px;
  border: 1px solid #cbd9ea;
  border-radius: 12px;
  background: var(--workspace-soft);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-empty-state {
  padding: 28px;
  border: 1px dashed var(--workspace-line-strong);
  border-radius: var(--workspace-radius);
  background: #fff;
  text-align: center;
}

/* Veilles, demandes et fils de discussion. */
body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.watch-list, .admin-ticket-list, .enrichment-review-list, .managed-page-admin-list) {
  display: grid;
  gap: 12px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.watch-card, .admin-ticket-card, .managed-page-admin-card, .enrichment-review-card) {
  padding: 18px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .watch-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px 18px;
  align-items: start;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .watch-card :is(h2, h3, p) {
  margin: 0;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.ticket-thread, .admin-ticket-open) {
  min-width: 0;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .ticket-thread {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid var(--workspace-line);
  border-radius: var(--workspace-radius);
  background: #fff;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .ticket-thread > article,
body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .ticket-thread > div {
  max-width: 86ch;
  padding: 14px 16px;
  border-radius: 12px;
  background: var(--workspace-soft);
}

/* Tickets administrateur : triage lisible. */
body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-filters {
  display: grid;
  grid-template-columns: minmax(220px, 360px) max-content;
  align-items: end;
  gap: 12px;
  padding: 18px;
  border: 1px solid var(--workspace-line);
  border-radius: var(--workspace-radius);
  background: #fff;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="admin-tickets"] .admin-ticket-title {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 18px;
  padding: clamp(22px, 3vw, 34px);
  border: 1px solid var(--workspace-line);
  border-radius: var(--workspace-radius);
  background: linear-gradient(135deg, #fff 0%, #f4f8fd 100%);
  box-shadow: var(--workspace-shadow);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="admin-tickets"] .admin-ticket-title :is(h1, p) {
  margin: 0;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="admin-tickets"] .admin-ticket-title h1 {
  margin-block: 5px 8px;
  font-size: clamp(2rem, 3vw, 2.8rem);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="admin-tickets"] .admin-ticket-count {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  padding: 9px 12px;
  border: 1px solid #c9d9ef;
  border-radius: 999px;
  background: #fff;
  white-space: nowrap;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-card {
  display: grid;
  grid-template-columns: 90px minmax(240px, 1fr) minmax(180px, auto) minmax(140px, 180px);
  align-items: center;
  gap: 14px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-card > header {
  display: grid;
  justify-items: start;
  gap: 7px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-card :is(h2, p, footer) {
  margin: 0;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-title {
  min-width: 0;
  color: var(--workspace-ink);
  font-size: 1.05rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-meta {
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 5px 12px;
  color: var(--workspace-muted);
  font-size: .84rem;
  overflow-wrap: anywhere;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-card footer {
  display: grid;
  justify-items: end;
  gap: 7px;
  text-align: right;
}

/* Tableaux et pagination. */
body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.admin-table-wrap, .seo-pilot-table-wrap) {
  width: 100%;
  max-width: 100%;
  overflow: auto;
  border: 1px solid var(--workspace-line);
  border-radius: 12px;
  background: #fff;
  overscroll-behavior-inline: contain;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.admin-table, .seo-pilot-table-wrap table) {
  width: 100%;
  min-width: 720px;
  border-collapse: collapse;
  font-size: .88rem;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.admin-table, .seo-pilot-table-wrap table) :is(th, td) {
  padding: 11px 12px;
  border-bottom: 1px solid #e0e8f1;
  text-align: left;
  vertical-align: top;
  overflow-wrap: anywhere;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.admin-table, .seo-pilot-table-wrap table) th {
  background: #f4f7fb;
  color: var(--workspace-muted);
  font-size: .76rem;
  letter-spacing: .02em;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .account-pagination {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 10px;
  margin-top: 14px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .account-pagination > :last-child {
  justify-self: end;
}

/* Éditeurs et écrans métier complexes. */
body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(
  .admin-guide-form,
  .managed-page-form,
  .admin-newsletter-form,
  .permission-editor,
  .watch-builder
) {
  min-width: 0;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(
  .admin-guide-editor-page,
  .managed-page-editor,
  .enrichment-review-page
) {
  align-items: start;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(
  .admin-guide-preview,
  .managed-page-preview,
  .admin-mail-preview,
  .watch-live-preview,
  .watch-account-preview
) {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--workspace-line);
  border-radius: var(--workspace-radius);
  background: #fff;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.admin-guide-history, .managed-page-history) {
  display: grid;
  gap: 9px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.managed-page-revision, .registration-option-row) {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 14px;
  border: 1px solid #d8e2ed;
  border-radius: 12px;
  background: var(--workspace-soft);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.managed-page-admin-meta, .registration-option-meta, .admin-newsletter-actions) {
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.registration-option-groups, .registration-option-list) {
  display: grid;
  gap: 14px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .registration-option-form {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) 110px repeat(2, minmax(150px, auto)) auto;
  align-items: end;
  gap: 10px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .enrichment-review-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(340px, .8fr);
  align-items: start;
  gap: 16px;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .enrichment-source-text {
  max-height: 72vh;
  padding: 16px;
  overflow: auto;
  border: 1px solid var(--workspace-line);
  border-radius: 12px;
  background: #fff;
  white-space: pre-wrap;
  line-height: 1.55;
}

/* Profil, sécurité et double authentification. */
body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-profile"] > main,
body[data-vnext-page="member-security"] > main {
  max-width: none;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-profile"] .account-form {
  width: min(100%, 900px);
}

body[data-vnext-page="member-security"] .account-page {
  width: min(100%, 1180px);
}

body[data-vnext-page="member-security"] .account-security-hero {
  padding: clamp(22px, 3vw, 32px);
  border: 1px solid var(--workspace-line);
  border-radius: var(--workspace-radius);
  background: linear-gradient(135deg, #fff 0%, #f1f6ff 100%);
  box-shadow: var(--workspace-shadow);
}

body[data-vnext-page="member-security"] .account-security-hero :is(h1, p) {
  margin: 0;
}

body[data-vnext-page="member-security"] .account-security-hero h1 {
  color: var(--workspace-ink);
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.02;
  letter-spacing: -.035em;
}

body[data-vnext-page="member-security"] .account-security-hero p {
  max-width: 68ch;
  margin-top: 9px;
  color: var(--workspace-muted);
  line-height: 1.5;
}

body[data-vnext-page="member-security"] .account-page > .account-panel {
  display: grid;
  gap: 20px;
  padding: clamp(20px, 2.8vw, 30px);
  border-top-width: 3px;
}

body[data-vnext-page="member-security"] .security-panel-heading {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  gap: 14px;
}

body[data-vnext-page="member-security"] .security-panel-heading :is(h2, p) {
  margin: 0;
}

body[data-vnext-page="member-security"] .security-panel-heading h2 {
  color: var(--workspace-ink);
  font-size: clamp(1.45rem, 2.5vw, 1.9rem);
  line-height: 1.1;
}

body[data-vnext-page="member-security"] .security-panel-heading p {
  margin-top: 5px;
  color: var(--workspace-muted);
}

body[data-vnext-page="member-security"] .security-panel-index {
  width: 38px;
  height: 38px;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #bed0e8;
  border-radius: 11px;
  background: var(--workspace-blue-soft);
  color: var(--workspace-blue-dark);
  font-weight: 850;
}

body[data-vnext-page="member-security"] .security-password-panel > .account-form.is-narrow {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: end;
  gap: 14px;
  padding: 18px;
  border: 1px solid var(--workspace-line);
  background: var(--workspace-soft);
  box-shadow: none;
}

body[data-vnext-page="member-security"] .security-password-panel > .account-form.is-narrow > button {
  grid-column: 1 / -1;
  width: fit-content;
}

body[data-vnext-page="member-security"] .security-totp-panel .totp-panel {
  width: 100%;
  gap: 18px;
  padding: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

body[data-vnext-page="member-security"] .totp-status {
  width: fit-content;
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0;
  padding: 6px 11px;
  border: 1px solid var(--workspace-line);
  border-radius: 999px;
  background: var(--workspace-soft);
  color: var(--workspace-ink);
}

body[data-vnext-page="member-security"] .totp-status > span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #8393a7;
}

body[data-vnext-page="member-security"] .totp-status.is-active {
  border-color: #a9d9cc;
  background: var(--workspace-green-soft);
  color: #075e4d;
}

body[data-vnext-page="member-security"] .totp-status.is-active > span {
  background: var(--workspace-green);
}

body[data-vnext-page="member-security"] .totp-status.is-pending {
  border-color: #e4ca83;
  background: var(--workspace-amber-soft);
  color: #654700;
}

body[data-vnext-page="member-security"] .totp-status.is-pending > span {
  background: #bd8300;
}

body[data-vnext-page="member-security"] .totp-steps {
  grid-template-columns: minmax(0, 1.3fr) repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
}

body[data-vnext-page="member-security"] .totp-steps > li {
  min-width: 0;
  padding: 18px;
  border-color: var(--workspace-line);
  background: var(--workspace-soft);
}

body[data-vnext-page="member-security"] .totp-steps > li h3 {
  margin: 0 0 7px;
  font-size: 1.02rem;
}

body[data-vnext-page="member-security"] .totp-steps > li p {
  margin: 0 0 12px;
  color: var(--workspace-muted);
}

body[data-vnext-page="member-security"] .totp-qr-code {
  width: min(190px, 100%);
  margin: 14px auto;
}

body[data-vnext-page="member-security"] .totp-secret-box {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  margin-top: 10px;
}

body[data-vnext-page="member-security"] .security-totp-panel .totp-panel > .account-form.is-narrow {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: end;
  gap: 14px;
  padding: 18px;
  border: 1px solid var(--workspace-line);
  background: var(--workspace-soft);
  box-shadow: none;
}

body[data-vnext-page="member-security"] .security-totp-panel .totp-panel > .account-form.is-narrow > button {
  grid-column: 1 / -1;
  width: fit-content;
}

body[data-vnext-page="member-security"] .security-totp-panel .totp-panel > .inline-form {
  justify-content: flex-end;
  padding-top: 2px;
}

body[data-vnext-page="member-security"] .security-totp-panel .totp-panel > .inline-form button {
  border-color: var(--workspace-line-strong);
  background: #fff;
  color: var(--workspace-ink);
}

body[data-vnext-page="member-security"] .security-session-panel {
  grid-template-columns: minmax(280px, .75fr) minmax(0, 1.25fr);
  align-items: center;
}

body[data-vnext-page="member-security"] .security-session-panel > .account-note {
  margin: 0;
  padding: 16px 18px;
  border: 1px solid var(--workspace-line);
  border-radius: 12px;
  background: var(--workspace-soft);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.totp-panel, .recovery-codes-panel, .danger-panel, .account-danger-details) {
  display: grid;
  gap: 14px;
  padding: 18px;
  border: 1px solid var(--workspace-line);
  border-radius: var(--workspace-radius);
  background: #fff;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.danger-panel, .account-danger-details) {
  border-color: #efc0bd;
  background: #fff8f7;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .totp-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding: 0;
  list-style: none;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .totp-steps > li {
  padding: 14px;
  border: 1px solid #d8e2ed;
  border-radius: 12px;
  background: var(--workspace-soft);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .totp-qr-code {
  width: min(224px, 100%);
  height: auto;
  padding: 8px;
  border: 1px solid var(--workspace-line);
  border-radius: 12px;
  background: #fff;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .recovery-code-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 0;
  list-style: none;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .recovery-code-list li {
  padding: 9px 11px;
  border: 1px solid #d8e2ed;
  border-radius: 9px;
  background: var(--workspace-soft);
  text-align: center;
}

/* Tableau de bord membre : profil compact, lisible et directement modifiable. */
body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-profile-panel {
  grid-column: 1 / -1;
  display: grid;
  gap: 18px;
  padding: 0;
  overflow: hidden;
  border-top: 3px solid var(--workspace-blue);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-profile-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 21px 24px 0;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-panel-kicker {
  display: block;
  margin-bottom: 5px;
  color: var(--workspace-blue);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-profile-heading h2 {
  margin: 0;
  font-size: clamp(1.45rem, 2vw, 1.8rem);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-panel-edit-link {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 14px;
  border: 1px solid var(--workspace-line-strong);
  border-radius: 10px;
  background: #fff;
  color: var(--workspace-blue);
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-panel-edit-link:hover {
  border-color: var(--workspace-blue);
  background: var(--workspace-blue-soft);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-facts {
  display: grid;
  grid-template-columns: 132px minmax(180px, 1fr) 132px minmax(180px, 1fr);
  gap: 1px;
  margin: 0;
  padding: 1px;
  border-top: 1px solid var(--workspace-line);
  background: var(--workspace-line);
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-facts :is(dt, dd) {
  min-width: 0;
  min-height: 58px;
  display: flex;
  align-items: center;
  margin: 0;
  padding: 12px 15px;
  background: #fff;
  overflow-wrap: anywhere;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-facts dt {
  color: var(--workspace-muted);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .055em;
  text-transform: uppercase;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-facts dd {
  color: var(--workspace-ink);
  font-size: .95rem;
  font-weight: 700;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-facts dd.is-empty {
  color: var(--workspace-muted);
  font-style: italic;
  font-weight: 550;
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-status-value::before {
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  margin-right: 8px;
  border-radius: 50%;
  background: #8090a3;
  content: "";
}

body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-status-value.is-active::before {
  background: #128567;
  box-shadow: 0 0 0 4px rgba(18, 133, 103, .11);
}

@media (max-width: 1100px) {
  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.admin-page-head, .account-dashboard-hero, .admin-hero, .favorite-library-hero) {
    grid-template-columns: minmax(0, 1fr);
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-filter-bar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-decision-card,
  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .enrichment-review-workspace {
    grid-template-columns: minmax(0, 1fr);
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-card {
    grid-template-columns: 90px minmax(0, 1fr) minmax(150px, auto);
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-card footer {
    grid-column: 2 / -1;
    grid-row: 2;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .registration-option-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] main {
    padding: 14px 10px 56px;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-page, .admin-page) {
    gap: 13px;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-nav, .admin-nav) {
    margin-inline: 0;
    padding: 6px;
    border-radius: 13px;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-nav, .admin-nav) a {
    min-height: 40px;
    padding: 8px 11px;
    font-size: .82rem;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-page, .admin-page) > h1 {
    margin-top: 2px;
    font-size: 2.15rem;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.admin-page-head, .account-dashboard-hero, .admin-hero, .favorite-library-hero) {
    gap: 14px;
    padding: 18px;
    border-radius: 14px;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.form-grid, .admin-audit-filters, .admin-guide-filters, .admin-status-grid, .admin-quality-grid, .seo-pilot-grid, .quality-grid) {
    grid-template-columns: minmax(0, 1fr);
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-filter-bar,
  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-filters {
    grid-template-columns: minmax(0, 1fr);
    padding: 14px;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-card {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-card footer {
    grid-column: 1 / -1;
    justify-items: start;
    text-align: left;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .watch-card,
  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.managed-page-revision, .registration-option-row) {
    grid-template-columns: minmax(0, 1fr);
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-decision-card > header {
    grid-template-columns: minmax(0, 1fr);
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-favorites"] .favorite-read-link {
    width: 100%;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="admin-tickets"] .admin-ticket-title,
  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-filters,
  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-card {
    grid-template-columns: minmax(0, 1fr);
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-card footer {
    grid-column: auto;
    grid-row: auto;
    grid-template-columns: minmax(0, 1fr) auto;
    justify-items: start;
    text-align: left;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page^="admin-ticket"] .admin-ticket-card footer .admin-ticket-open {
    justify-self: end;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .registration-option-form,
  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .totp-steps,
  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .recovery-code-list {
    grid-template-columns: minmax(0, 1fr);
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] .account-pagination {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    font-size: .84rem;
  }

  body[data-vnext-page="member-security"] .security-password-panel > .account-form.is-narrow,
  body[data-vnext-page="member-security"] .security-totp-panel .totp-panel > .account-form.is-narrow,
  body[data-vnext-page="member-security"] .security-session-panel {
    grid-template-columns: minmax(0, 1fr);
  }

  body[data-vnext-page="member-security"] .totp-steps {
    grid-template-columns: minmax(0, 1fr);
  }

  body[data-vnext-page="member-security"] .security-totp-panel .totp-panel > .account-form.is-narrow > button {
    grid-column: auto;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-facts {
    grid-template-columns: 118px minmax(0, 1fr);
  }
}

@media (max-width: 430px) {
  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-panel, .account-form, .admin-quality-section, .seo-pilot-panel, .admin-newsletter-section) {
    padding: 15px;
    border-radius: 13px;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-actions, .button-row) > :is(a, button) {
    width: 100%;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] :is(.account-dashboard-grid, .admin-kpis, .admin-quality-kpis, .seo-pilot-kpis) {
    grid-template-columns: minmax(0, 1fr);
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-profile-panel {
    padding: 0;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-profile-heading {
    align-items: stretch;
    flex-direction: column;
    padding: 17px 15px 0;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-panel-edit-link {
    width: 100%;
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-facts {
    grid-template-columns: 96px minmax(0, 1fr);
  }

  body[data-professional-ui][data-design-system="harmony-v1"][data-vnext-page="member-dashboard"] .account-facts :is(dt, dd) {
    min-height: 54px;
    padding: 10px;
  }

  body[data-vnext-page="member-security"] .account-security-hero,
  body[data-vnext-page="member-security"] .account-page > .account-panel {
    padding: 17px 15px;
  }

  body[data-vnext-page="member-security"] .security-panel-heading {
    gap: 10px;
  }

  body[data-vnext-page="member-security"] .security-password-panel > .account-form.is-narrow,
  body[data-vnext-page="member-security"] .security-totp-panel .totp-panel > .account-form.is-narrow {
    padding: 14px;
  }

  body[data-vnext-page="member-security"] .security-password-panel > .account-form.is-narrow > button,
  body[data-vnext-page="member-security"] .security-totp-panel .totp-panel > .account-form.is-narrow > button,
  body[data-vnext-page="member-security"] .security-totp-panel .totp-panel > .inline-form button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] *,
  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] *::before,
  body[data-professional-ui][data-design-system="harmony-v1"][data-page-family="workspace"] *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }
}
