/* ============================================================================
   Thème d'interface « Prepress » — brief du 09/10/2026
   ----------------------------------------------------------------------------
   « Le contenu au centre, les outils au bon moment. »

   Même principe que theme-wordpress.css : une feuille ADDITIVE, chargée après
   Vite, qui habille le balisage existant sans le déplacer (le JS de l'éditeur
   cible ses nœuds par identifiant). Chargée UNIQUEMENT quand
   App\Support\InterfaceTheme::current() === 'prepress'.

   Identité (brief §27) :
     charbon      #1F2629  navigation
     surfaces     #FFFFFF  cartes ; #F5F4F1 gris chaud du fond
     turquoise    #3E8A95  action (échelle --color-brick-* remappée)
     l'orange appartient aux CRÉATIONS, pas à l'interface.

   Piège connu (cf. thème WordPress) : un sélecteur préfixé `html.pp-theme`
   bat les utilitaires Tailwind (0,1,0). Une règle `display` sur un élément
   que le JS masque par `.hidden` s'écrit `:not(.hidden)`.
   ========================================================================== */

:root {
    --pp-nav-w: 232px;
    --pp-charbon: #1F2629;
    --pp-charbon-2: #2A3337;
    --pp-charbon-3: #34404A;
    --pp-bg: #F5F4F1;
    --pp-surface: #FFFFFF;
    --pp-border: #E3E1DC;
    --pp-border-strong: #CFCCC4;
    --pp-text: #1F2629;
    --pp-muted: #66727A;
    --pp-accent: #3E8A95;
    --pp-accent-hover: #326E77;
    --pp-accent-soft: #EDF6F7;
    --pp-focus: 0 0 0 3px rgba(62, 138, 149, .35);
    --pp-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
    /* Étage de la coquille : au-dessus du contenu, SOUS les modales (z-50 et
       plus) — même raisonnement que --wp-z-menu. */
    --pp-z-nav: 40;
}

/* Échelle « brique » → turquoise (Account::brickScale('#3E8A95')). Tout ce que
   Prepress teinte en brique suit. Spécificité (0,1,1) : bat le :root du
   <style id="pr-ui-color"> de la couleur par compte, comme le thème
   WordPress — le thème Prepress porte sa propre identité. */
html.pp-theme {
    --color-brick-50:#EDF6F7;  --color-brick-100:#D5EBEE; --color-brick-200:#ADD7DD;
    --color-brick-300:#82C2CB; --color-brick-400:#5AAEBB; --color-brick-500:#42929E;
    --color-brick-600:#3E8A95; --color-brick-700:#326E77; --color-brick-800:#285A61;
    --color-brick-900:#20484E; --color-brick-950:#163236;
}

/* ─── Fondations ─────────────────────────────────────────────────────────── */

html.pp-theme,
html.pp-theme body {
    font-family: var(--pp-font);
    color: var(--pp-text);
    background: var(--pp-bg) !important;
    -webkit-font-smoothing: antialiased;
}

/* Le corps est décalé à droite du menu. */
html.pp-theme body.pp-shell {
    padding-left: var(--pp-nav-w);
    min-height: 100vh;
}

/* L'en-tête noir et la barre d'onglets mobile des autres thèmes cèdent la
   place au menu latéral. `adjustMainHeight` (editor.js) lit la hauteur du
   premier <header> : masqué, il vaut 0 — exactement le cas du thème WP. */
html.pp-theme body.pp-shell > header,
html.pp-theme body.pp-shell > .gtabbar,
html.pp-theme body.pp-shell > #mobileDrawer,
html.pp-theme body.pp-shell > #mobileDrawerBackdrop,
html.pp-theme body.pp-shell #pwaInstallBar { display: none !important; }

/* Ivoire Prepress → gris chaud ; brique foncée #333333 → charbon. Classes
   arbitraires Tailwind, remappées une fois (même méthode que Gris/WP). */
html.pp-theme .bg-\[\#F6F2EB\] { background-color: var(--pp-bg) !important; }
html.pp-theme .bg-\[\#333333\] { background-color: var(--pp-charbon) !important; }
html.pp-theme .text-\[\#333333\] { color: var(--pp-charbon) !important; }

/* Focus visible partout (brief §27 : clavier, focus visible). */
html.pp-theme :focus-visible {
    outline: none;
    box-shadow: var(--pp-focus) !important;
    border-radius: 6px;
}

/* ─── Menu latéral ───────────────────────────────────────────────────────── */

#ppSidebar {
    position: fixed;
    top: 0; left: 0; bottom: 0;
    width: var(--pp-nav-w);
    z-index: var(--pp-z-nav);
    display: flex;
    flex-direction: column;
    background: var(--pp-charbon);
    color: #E6EAEC;
    font: 500 14px/1.3 var(--pp-font);
    padding: 14px 10px 12px;
    /* Pas d'overflow ici : il couperait le menu du site, qui déborde à
       droite. Le défilement, si l'écran est très bas, est porté par .pp-nav-bottom. */
}
@media (max-height: 640px) { .pp-nav-bottom { overflow-y: auto; min-height: 0; } }

#ppSidebar .material-symbols-outlined {
    font-size: 20px;
    font-variation-settings: 'FILL' 0, 'wght' 350, 'GRAD' 0, 'opsz' 24;
}

/* Le site */
.pp-site { position: relative; margin-bottom: 18px; }
.pp-site-btn {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: #fff;
    cursor: pointer;
    text-align: left;
    font: inherit;
}
.pp-site-btn:hover, .pp-site-btn[aria-expanded="true"] { background: var(--pp-charbon-2); }
.pp-site-logo {
    flex: none;
    width: 30px; height: 30px;
    border-radius: 50%;
    display: grid; place-items: center;
    background: linear-gradient(135deg, #5AAEBB, #3E8A95 55%, #285A61);
    color: #fff;
    font-weight: 700;
    font-size: 14px;
}
.pp-site-name { flex: 1; min-width: 0; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pp-site-chevron { color: #8C989F; font-size: 18px !important; }

/* Menu du site : tiroir à droite (20/10/2026) — habillage de .pp-tiroir. Au-dessus
   du menu principal en tiroir (z-index 70, sous 1024 px). */
.pp-site-voile { z-index: 80; }
.pp-site-tiroir { z-index: 81; width: 380px; }
.pp-site-tiroir .pp-tiroir-tete { align-items: center; padding: 18px 16px 14px 18px; border-bottom: 1px solid var(--pp-border); }
.pp-site-tiroir-id { display: flex; align-items: center; gap: 12px; min-width: 0; }
.pp-site-tiroir-id > div { min-width: 0; }
.pp-site-tiroir-id h2 { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pp-site-tiroir-id p { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pp-site-tiroir .pp-site-logo { width: 40px; height: 40px; font-size: 16px; flex: none; }
.pp-site-tiroir-fermer { flex: none; width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid var(--pp-border); border-radius: 9px; background: #fff; color: var(--pp-text); cursor: pointer; }
.pp-site-tiroir-fermer:hover { background: var(--pp-bg); }
.pp-site-tiroir .pp-tiroir-corps { padding: 10px 10px 16px; }
.pp-site-tiroir .pp-tiroir-pied { padding: 8px 10px; }
.pp-site-menu { font-size: 14px; }
.pp-site-filtre { display: flex; align-items: center; gap: 8px; margin: 6px 4px 6px; padding: 0 10px; height: 38px;
    border: 1px solid var(--pp-border); border-radius: 9px; background: var(--pp-bg); }
.pp-site-filtre input { flex: 1; min-width: 0; border: 0 !important; outline: none; background: transparent; font: inherit; box-shadow: none !important; padding: 0; }
.pp-site-list form[hidden] { display: none; }
.pp-site-menu a,
.pp-site-menu button {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--pp-text) !important;
    text-decoration: none;
    font: inherit;
    font-weight: 500;
    cursor: pointer;
    text-align: left;
}
.pp-site-menu a:hover,
.pp-site-menu button:hover { background: var(--pp-bg); }
.pp-site-menu .is-current { color: var(--pp-accent) !important; font-weight: 600; }
.pp-site-menu .material-symbols-outlined { font-size: 18px !important; color: var(--pp-muted); }
.pp-site-menu form { margin: 0; }
.pp-site-menu-sep { height: 1px; background: var(--pp-border); margin: 6px 4px; }
.pp-site-menu-label { margin: 4px 10px 2px; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--pp-muted); }
.pp-truncate { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* Pastille de synchronisation : rouge quand le plugin signale un changement
   (classe posée par partials/site-sync). */
#ppSidebar #wpSyncBtn .wp-sync-dot { display: none; width: 8px; height: 8px; border-radius: 50%; background: #D63638; margin-left: auto; }
#ppSidebar #wpSyncBtn.is-pending .wp-sync-dot { display: inline-block; }
#ppSidebar #wpSyncBtn.is-busy .material-symbols-outlined { animation: pp-spin 1s linear infinite; }
@keyframes pp-spin { to { transform: rotate(360deg); } }
#ppSidebar #wpSyncNote:not([hidden]) {
    margin: 6px 4px 0;
    padding: 8px 10px;
    border-radius: 8px;
    background: var(--pp-charbon-2);
    color: #E6EAEC;
    font-size: 12px;
}
#ppSidebar #wpSyncNote ul { margin: 0; padding: 0; list-style: none; }

/* Entrées */
.pp-nav { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.pp-nav-bottom { margin-top: auto; padding-top: 12px; border-top: 1px solid var(--pp-charbon-3); }
.pp-nav-item {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 9px 10px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #D3DADD !important;
    text-decoration: none !important;
    font: inherit;
    cursor: pointer;
    text-align: left;
}
.pp-nav-item:hover { background: var(--pp-charbon-2); color: #fff !important; }
.pp-nav-item.is-current { background: var(--pp-accent); color: #fff !important; }
.pp-nav-item.is-current .material-symbols-outlined { color: #fff; }
.pp-nav-label { flex: 1; min-width: 0; }
.pp-count {
    min-width: 22px;
    padding: 1px 7px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    color: #fff;
    font-size: 11.5px;
    font-weight: 600;
    text-align: center;
}
.pp-count.is-alert { background: #D63638; }
.pp-dot { width: 7px; height: 7px; border-radius: 50%; background: #E0A33A; }
.pp-nav-chevron { font-size: 18px !important; transition: transform .25s cubic-bezier(.4, 0, .2, 1); }
.pp-nav-group.is-open .pp-nav-chevron { transform: rotate(90deg); }

.pp-sub { list-style: none; margin: 0; padding: 0 0 0 31px; display: none; }
.pp-nav-group.is-open .pp-sub { display: block; margin: 2px 0 6px; }
/* Ouverture / fermeture en douceur (20/10/2026) : ppToggleGroup mesure la hauteur
   réelle et la fait glisser ; .is-anime tient le sous-menu affiché le temps du geste. */
.pp-sub.is-anime { display: block; overflow: hidden; transition: height .28s cubic-bezier(.4, 0, .2, 1), opacity .22s ease, margin .28s cubic-bezier(.4, 0, .2, 1); }
@media (prefers-reduced-motion: reduce) { .pp-sub.is-anime, .pp-nav-chevron { transition: none; } }
.pp-sub a {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    border-radius: 7px;
    color: #AEB8BD !important;
    text-decoration: none !important;
    font-size: 13px;
}
.pp-sub a:hover { color: #fff !important; background: var(--pp-charbon-2); }
.pp-sub a.is-current { color: #fff !important; background: var(--pp-charbon-3); font-weight: 600; }
.pp-sub .pp-count { margin-left: auto; }
.pp-sub-sep { height: 1px; background: var(--pp-charbon-3); margin: 6px 10px; }
.pp-sub a.pp-sub-secondary { color: #8C989F !important; font-size: 12.5px; }

/* Barre mobile et tiroir (< 1024 px) */
#ppMobileBar, #ppDrawerBackdrop { display: none; }

@media (max-width: 1023px) {
    html.pp-theme body.pp-shell { padding-left: 0; padding-top: 52px; }
    #ppMobileBar {
        position: fixed; top: 0; left: 0; right: 0; height: 52px;
        z-index: var(--pp-z-nav);
        display: flex; align-items: center; gap: 10px;
        padding: 0 16px;
        background: var(--pp-charbon);
        color: #fff;
        font: 600 15px var(--pp-font);
    }
    #ppMobileBar .pp-burger {
        display: grid; place-items: center;
        width: 40px; height: 40px;
        border: 0; border-radius: 8px;
        background: transparent; color: #fff; cursor: pointer;
    }
    .pp-mobile-site { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    #ppSidebar {
        transform: translateX(-100%);
        transition: transform .22s ease-out;
        z-index: 70;
    }
    body.pp-drawer-open #ppSidebar { transform: none; box-shadow: 0 0 40px rgba(0, 0, 0, .35); }
    #ppDrawerBackdrop:not([hidden]) { display: block; position: fixed; inset: 0; z-index: 69; background: rgba(17, 24, 28, .45); }
    /* Cibles tactiles confortables. */
    .pp-nav-item, .pp-sub a, .pp-site-menu a, .pp-site-menu button { min-height: 44px; }
}

/* ─── Fenêtre « Synchroniser » (partials/site-sync) ─────────────────────── */

html.pp-theme .wp-sync-dialog {
    max-width: 460px;
    width: calc(100vw - 32px);
    border: 0;
    border-radius: 14px;
    padding: 22px 24px;
    box-shadow: 0 24px 60px rgba(17, 24, 28, .3);
    font: 14px/1.55 var(--pp-font);
    color: var(--pp-text);
}
html.pp-theme .wp-sync-dialog::backdrop { background: rgba(17, 24, 28, .45); }
html.pp-theme .wp-sync-dialog h2 { display: flex; align-items: center; gap: 8px; margin: 0 0 10px; font-size: 17px; font-weight: 700; }
html.pp-theme .wp-sync-dialog p { margin: 0 0 10px; }
html.pp-theme .wp-sync-dialog .wp-sync-dialog-sub,
html.pp-theme .wp-sync-dialog .wp-sync-dialog-label { color: var(--pp-muted); font-size: 13px; }
html.pp-theme .wp-sync-dialog-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 16px; }
html.pp-theme .wp-sync-dialog-actions button {
    padding: 8px 16px; border-radius: 9px; font: 600 13.5px var(--pp-font); cursor: pointer;
    border: 1px solid var(--pp-border-strong); background: #fff; color: var(--pp-text);
}
html.pp-theme .wp-sync-dialog-actions .wp-sync-dialog-ok { background: var(--pp-accent); border-color: var(--pp-accent); color: #fff; }
html.pp-theme .wp-sync-dialog-actions .wp-sync-dialog-ok:hover { background: var(--pp-accent-hover); }

/* Bandeau d'aperçu de thème : il ne doit pas masquer le pied du menu. */
html.pp-theme #pr-theme-preview { left: var(--pp-nav-w) !important; }
@media (max-width: 1023px) { html.pp-theme #pr-theme-preview { left: 0 !important; } }

/* ─── Publications (dashboard) ───────────────────────────────────────────── */

/* La colonne beige des types et filtres disparaît : le type et le statut
   deviennent des filtres de la barre de recherche (brief §08, §11). Son
   bouton d'ouverture mobile (tune) n'a donc plus d'objet. */
html.pp-theme #dashSidebar,
html.pp-theme #dashSidebarBackdrop { display: none !important; }
html.pp-theme button[aria-label="Filtres"].lg\:hidden { display: none !important; }
html.pp-theme body.pp-shell main { height: auto !important; min-height: 100vh; }
html.pp-theme body.pp-shell main > section { background: var(--pp-bg) !important; }

html.pp-theme .pp-dash-sub { margin: 2px 0 0; font-size: 15px; color: var(--pp-muted); }

/* Barre : recherche + filtres sur une ligne, repliés en colonne au mobile. */
html.pp-theme .pp-dash-filters { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
html.pp-theme .pp-dash-filters > div { flex: 1 1 260px; order: -1; height: 42px !important; border-radius: 10px !important; border: 1px solid var(--pp-border); box-shadow: none !important; }
html.pp-theme .pp-select select {
    height: 42px;
    padding: 0 34px 0 12px;
    border: 1px solid var(--pp-border);
    border-radius: 10px;
    background-color: #fff;
    font: 500 13.5px var(--pp-font);
    color: var(--pp-text);
    cursor: pointer;
}
html.pp-theme .pp-select select:hover { border-color: var(--pp-border-strong); }
@media (max-width: 640px) {
    html.pp-theme .pp-dash-filters .pp-select { flex: 1 1 45%; }
    html.pp-theme .pp-select select { width: 100%; }
}

/* Bouton d'action principal : turquoise (une action dominante par contexte). */
html.pp-theme button[onclick*="newConversionModal"].bg-\[\#333333\] {
    background: var(--pp-accent) !important;
    box-shadow: none !important;
    border-radius: 10px !important;
}
html.pp-theme button[onclick*="newConversionModal"].bg-\[\#333333\]:hover { background: var(--pp-accent-hover) !important; }

/* Tableau : surfaces blanches, bord fin, sans ombre lourde. */
html.pp-theme #convListZone table { font-size: 13.5px; }

/* ─── Éditeur (conversion/show) ──────────────────────────────────────────── */

/* La colonne centrale est un enfant flex : sans min-width: 0, elle garde la
   largeur de sa barre d'outils et pousse la page au-delà de l'écran une fois
   le menu latéral de 232 px ajouté. */
html.pp-theme #conversionMain { width: 100%; }
html.pp-theme #conversionMain > section { min-width: 0; background: var(--pp-bg) !important; }
html.pp-theme body.pp-shell #desktopTabBar { min-width: 0; }

/* L'éditeur occupe l'écran : la barre noire de 58 px a disparu. */
html.pp-theme .conversion-main-layout { height: 100vh !important; min-height: 0 !important; }
@media (max-width: 1023px) { html.pp-theme .conversion-main-layout { height: calc(100vh - 52px) !important; } }
/* L'interface flottante de TinyMCE ne doit passer que devant l'éditeur. */
html.pp-theme .tox.tox-tinymce-aux { z-index: 35 !important; }

/* Barre de tête : l'ancienne barre d'onglets, devenue blanche ; ses onglets
   historiques sont masqués (ils restent dans le DOM, editor.js les écoute). */
html.pp-theme #desktopTabBar {
    background: var(--pp-surface) !important;
    border-bottom: 1px solid var(--pp-border);
    box-shadow: none !important;
    height: 56px !important;
    padding: 0 20px !important;
    gap: 12px !important;
    font-family: var(--pp-font) !important;
    overflow: visible !important;
}
html.pp-theme #desktopTabBar > .tab-btn,
html.pp-theme #desktopTabBar > .tab-pub-btn { display: none !important; }
html.pp-theme #topSaveStatus { color: var(--pp-muted) !important; }
html.pp-theme #topSaveBtn {
    background: #fff !important;
    color: var(--pp-text) !important;
    border: 1px solid var(--pp-border-strong) !important;
    height: 36px !important;
    font-weight: 600 !important;
}
html.pp-theme #topSaveBtn:hover { background: var(--pp-bg) !important; }

.pp-crumb { display: flex; align-items: center; gap: 8px; min-width: 0; font-size: 14px; color: var(--pp-muted); white-space: nowrap; }
.pp-crumb a { color: var(--pp-text) !important; font-weight: 600; text-decoration: none; }
.pp-crumb a:hover { text-decoration: underline; }

/* Boutons du thème */
.pp-btn {
    display: inline-flex; align-items: center; gap: 6px;
    height: 36px; padding: 0 14px;
    border-radius: 10px;
    border: 1px solid transparent;
    font: 600 13.5px/1 var(--pp-font);
    text-decoration: none !important;
    white-space: nowrap;
    cursor: pointer;
    flex-shrink: 0;
}
.pp-btn[hidden] { display: none !important; }
.pp-btn .material-symbols-outlined { font-size: 18px; }
.pp-btn-primary { background: var(--pp-accent); color: #fff !important; }
.pp-btn-primary:hover { background: var(--pp-accent-hover); }
/* L'ACTION PRINCIPALE d'un écran, partout la même couleur (A-035, A-017) :
   les boutons noirs codés écran par écran (Génération IA, Planifier une
   diffusion, Mon profil, Sites, Chat, Diffusion) prennent l'accent du thème.
   Sous les autres thèmes, la classe n'a aucun effet. */
html.pp-theme .pp-action-principale { background: var(--pp-accent) !important; border-color: var(--pp-accent) !important; color: #fff !important; }
html.pp-theme .pp-action-principale:hover { background: var(--pp-accent-hover) !important; border-color: var(--pp-accent-hover) !important; }

/* Intertitres de la colonne de l'éditeur (A-037) : le balisage commun aux
   trois thèmes les écrit en capitales espacées (Catégories, Auteur, Présence…).
   Le thème Prepress les met à la casse et au corps de ses autres intertitres
   (« Autour de cet article », « Dates de diffusion » : .pp-autour-titre). */
html.pp-theme #sidebarLeft .uppercase.tracking-wider { text-transform: none !important; letter-spacing: normal !important; font-size: 14px !important; font-weight: 700 !important; }
html.pp-theme #sidebarLeft .uppercase.tracking-wider:not(#publicationStateTitle) { color: #1F2629 !important; }
.pp-btn-ghost { background: #fff; color: var(--pp-text) !important; border-color: var(--pp-border-strong); }
.pp-btn-ghost:hover { background: var(--pp-bg); }
.pp-btn-soft { background: var(--pp-accent-soft); color: var(--pp-accent-hover) !important; border-color: #CFE5E8; }
.pp-btn-soft:hover { background: #E1F0F2; }
.pp-btn-link { background: transparent; color: var(--pp-accent-hover) !important; padding: 0 8px; }
.pp-btn-link:hover { text-decoration: underline !important; }
.pp-btn:disabled { opacity: .6; cursor: progress; }
.pp-spin { animation: pp-spin 1s linear infinite; }
.pp-btn-mini {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 3px 9px; border-radius: 7px;
    border: 1px solid var(--pp-border);
    background: #fff; color: var(--pp-text) !important;
    font: 600 12px var(--pp-font); text-decoration: none !important;
}
.pp-btn-mini:hover { background: var(--pp-bg); }
.pp-btn-mini .material-symbols-outlined { font-size: 15px; }

/* Onglets Texte / Visuel / Diffusion */
#ppTabs {
    display: flex; align-items: flex-end; gap: 4px;
    padding: 0 24px;
    background: var(--pp-bg);
    border-bottom: 1px solid var(--pp-border);
    flex-shrink: 0;
    overflow-x: auto;
}
#ppTabs button {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 12px 12px 10px;
    border: 0; border-bottom: 2px solid transparent;
    background: transparent;
    font: 600 14px var(--pp-font);
    color: var(--pp-muted);
    cursor: pointer;
    white-space: nowrap;
}
#ppTabs button:hover { color: var(--pp-text); }
#ppTabs button.is-active { color: var(--pp-accent-hover); border-bottom-color: var(--pp-accent); }
#ppTabs .pp-tabs-sep { flex: 1; }
#ppTabs .pp-subtab { font-size: 13px; font-weight: 500; }
#ppTabs .pp-subtab .material-symbols-outlined { font-size: 17px; }
.pp-done { width: 6px; height: 6px; border-radius: 50%; background: #2F9E6B; }

/* Volet à DROITE (ordre CSS, pas de déplacement DOM — même règle que le
   thème WordPress). */
html.pp-theme #conversionMain { align-items: stretch; }
html.pp-theme #conversionMain > section { order: 1; }
html.pp-theme #sidebarLeft.sidebar-left {
    order: 2;
    width: 320px !important;
    min-width: 320px;
    background: var(--pp-bg) !important;
    box-shadow: none !important;
    border-left: 1px solid var(--pp-border);
}
html.pp-theme #sidebarLeft.sidebar-left.collab-expanded,
html.pp-theme #sidebarLeft.sidebar-left.assistant-expanded { width: 320px !important; min-width: 320px !important; }
html.pp-theme #editorOverlay { display: none !important; }
html.pp-theme #sidebar-apercu { padding: 16px !important; gap: 14px !important; }
html.pp-theme #sidebar-apercu > * { opacity: 1 !important; }
@media (max-width: 1279px) {
    html.pp-theme #sidebarLeft.sidebar-left,
    html.pp-theme #sidebarLeft.sidebar-left.collab-expanded { width: 280px !important; min-width: 280px !important; }
}

/* « Autour de cet article » */
.pp-autour {
    background: var(--pp-surface);
    border: 1px solid var(--pp-border);
    border-radius: 12px;
    padding: 14px;
    font-family: var(--pp-font);
}
.pp-autour-titre { margin: 0 0 10px; font-size: 14px; font-weight: 700; color: var(--pp-text); }
.pp-autour-bloc + .pp-autour-bloc { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--pp-border); }
.pp-autour-tete { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; font-size: 13px; font-weight: 600; }
.pp-autour-image { display: block; width: 100%; height: auto; border-radius: 8px; background: var(--pp-bg); }
.pp-autour-vide { margin: 0; font-size: 12.5px; color: var(--pp-muted); }
.pp-autour-vide a { color: var(--pp-accent-hover) !important; }
.pp-autour-lien {
    width: 100%; margin-top: 12px;
    display: flex; align-items: center; justify-content: center; gap: 4px;
    padding: 7px; border-radius: 8px;
    border: 1px dashed #B9D8DC; background: var(--pp-accent-soft);
    color: var(--pp-accent-hover); font: 600 12.5px var(--pp-font); cursor: pointer;
}
.pp-autour-lien .material-symbols-outlined { font-size: 16px; }
a.pp-autour-lien { box-sizing: border-box; text-decoration: none !important; }
.pp-canaux { list-style: none; margin: 0; padding: 0; }
.pp-canaux button {
    width: 100%; display: flex; align-items: center; gap: 9px;
    padding: 7px 4px; border: 0; background: transparent;
    font: 500 13px var(--pp-font); color: var(--pp-text); cursor: pointer; text-align: left;
    border-radius: 6px;
}
.pp-canaux button:hover { background: var(--pp-bg); }
.pp-canaux svg, .pp-canal-ico { color: var(--pp-muted); font-size: 17px !important; }
.pp-canal-nom { flex: 0 0 auto; }
.pp-canal-etat { flex: 1; min-width: 0; text-align: right; font-size: 12px; color: var(--pp-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pp-canal-etat::before { content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 50%; margin-right: 5px; background: #A7B0B5; vertical-align: 1px; }
.pp-canal-etat.is-ok { color: #1E7A50; }
.pp-canal-etat.is-ok::before { background: #2F9E6B; }
.pp-canal-etat.is-draft::before { background: #E0A33A; }
.pp-canal-chevron { font-size: 16px !important; color: #A7B0B5; }
/* Dates de diffusion (colonne, 16/10/2026) : le canal, puis sa date dessous. */
.pp-dates { list-style: none; margin: 0; padding: 0; }
.pp-dates li.pp-dates-sep { margin-top: 6px; padding-top: 6px; border-top: 1px solid var(--pp-border); }
.pp-dates button {
    width: 100%; display: flex; align-items: flex-start; gap: 9px;
    padding: 7px 4px; border: 0; background: transparent; border-radius: 6px;
    font: 500 13px var(--pp-font); color: var(--pp-text); cursor: pointer; text-align: left;
}
.pp-dates button:hover { background: var(--pp-bg); }
.pp-dates button > svg, .pp-dates .pp-canal-ico { flex: none; margin-top: 1px; color: var(--pp-muted); font-size: 17px !important; }
.pp-dates-txt { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.pp-dates-nom { font-weight: 600; }
.pp-dates-quand { font-size: 12px; line-height: 1.4; color: var(--pp-muted); }
.pp-dates-quand::before { content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 50%; margin-right: 5px; background: #A7B0B5; vertical-align: 1px; }
.pp-dates-quand.is-ok { color: #1E7A50; }
.pp-dates-quand.is-ok::before { background: #2F9E6B; }
.pp-dates-quand.is-draft::before { background: #E0A33A; }

/* Onglet Visuel */
.pp-visuel { font-family: var(--pp-font); }
.pp-visuel-tete { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.pp-visuel-tete h2 { margin: 0; font-size: 18px; font-weight: 700; }
.pp-visuel-grille { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 16px; }
@media (max-width: 1100px) { .pp-visuel-grille { grid-template-columns: 1fr; } }
.pp-carte { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--pp-border); border-radius: 12px; padding: 14px; gap: 12px; }
.pp-carte-tete { display: flex; align-items: center; justify-content: space-between; }
.pp-carte-tete h3 { margin: 0; font-size: 14.5px; font-weight: 700; }
.pp-badge { font-size: 11.5px; font-weight: 600; color: var(--pp-muted); background: var(--pp-bg); border: 1px solid var(--pp-border); border-radius: 999px; padding: 2px 9px; }
.pp-visuel-image { width: 100%; max-height: 420px; object-fit: contain; background: var(--pp-bg); border-radius: 8px; }
.pp-visuel-vide { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; min-height: 180px; padding: 20px; text-align: center; background: var(--pp-bg); border-radius: 8px; color: var(--pp-muted); font-size: 13.5px; }
.pp-visuel-vide p { margin: 0; }
.pp-visuel-vide .material-symbols-outlined { font-size: 34px; color: #A7B0B5; }
/* L'espace gris de l'affiche mène au Poster maker (13/10/2026). */
a.pp-visuel-vide-lien { text-decoration: none; cursor: pointer; transition: background-color .2s ease, color .2s ease, box-shadow .2s ease; }
a.pp-visuel-vide-lien:hover { background: #EAEAE7; color: var(--pp-ink, #1F2328); box-shadow: inset 0 0 0 1px #CFCFCC; }
a.pp-visuel-vide-lien:focus-visible { outline: 2px solid var(--pp-ink, #1F2328); outline-offset: 2px; }
.pp-carte-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.pp-carte-actions .pp-btn { max-width: 100%; }
.pp-aide { display: flex; align-items: center; gap: 6px; margin: 14px 0 0; font-size: 12.5px; color: var(--pp-muted); }
.pp-aide .material-symbols-outlined { font-size: 16px; }
.pp-visuel-vide .pp-aide { margin: 0; }

/* Menu déroulant natif (<details>) — « Créer un visuel » */
.pp-menu { position: relative; }
.pp-menu > summary { list-style: none; }
.pp-menu > summary::-webkit-details-marker { display: none; }
.pp-menu-liste {
    position: absolute; right: 0; top: calc(100% + 4px); z-index: 30;
    min-width: 260px; padding: 6px;
    background: #fff; border: 1px solid var(--pp-border); border-radius: 12px;
    box-shadow: 0 16px 40px rgba(17, 24, 28, .18);
}
.pp-menu-liste a, .pp-menu-liste button {
    width: 100%; display: flex; align-items: center; gap: 10px;
    padding: 8px 10px; border: 0; border-radius: 8px; background: transparent;
    color: var(--pp-text) !important; text-decoration: none !important;
    font: 500 13.5px var(--pp-font); cursor: pointer; text-align: left;
}
.pp-menu-liste a:hover, .pp-menu-liste button:hover { background: var(--pp-bg); }
.pp-menu-liste .material-symbols-outlined { font-size: 18px; color: var(--pp-muted); }

/* L'onglet caché du volet Visuel du thème */
.pp-hidden-tab { display: none !important; }

/* Mobile : la barre de tête se replie (le fil d'Ariane et l'état d'abord). */
@media (max-width: 767px) {
    html.pp-theme #desktopTabBar { height: auto !important; flex-wrap: wrap; padding: 8px 12px !important; }
    #ppTabs { padding: 0 8px; }
    .pp-crumb { display: none; }
}

/* ─── Panneau « Performance » (liste) ────────────────────────────────────── */

/* Le tiroir historique reste dans le DOM (son bouton « vérifier » sert au
   panneau), mais il ne s'ouvre plus : le panneau le remplace. */
html.pp-theme tr.gsc-detail { display: none !important; }
html.pp-theme .gsc-chevron { display: none !important; }
html.pp-theme tr.conv-item.pp-perf-ligne { background: var(--pp-accent-soft) !important; }

.pp-perf {
    position: fixed; top: 0; right: 0; bottom: 0;
    width: 360px; max-width: 100vw;
    z-index: 45;
    display: flex; flex-direction: column;
    background: #fff;
    border-left: 1px solid var(--pp-border);
    box-shadow: -12px 0 32px rgba(17, 24, 28, .10);
    font-family: var(--pp-font);
    color: var(--pp-text);
    /* Glissement depuis la droite (Gérald, 09/10/2026 : ouverture et
       fermeture « smooth »). Le panneau reste dans le flux de rendu ; c'est
       la classe .is-ouvert qui l'amène à l'écran. visibility suit avec un
       délai à la fermeture, pour que le focus clavier ne s'y perde pas. */
    transform: translateX(100%);
    visibility: hidden;
    transition: transform .32s cubic-bezier(.22, .61, .36, 1), box-shadow .32s ease, visibility 0s linear .32s;
}
.pp-perf.is-ouvert {
    transform: none;
    visibility: visible;
    transition: transform .32s cubic-bezier(.22, .61, .36, 1), box-shadow .32s ease, visibility 0s;
}
.pp-perf:not(.is-ouvert) { box-shadow: none; }
/* Le contenu change d'article ou d'onglet : fondu court, sans saut. */
.pp-perf-corps, .pp-perf-article { transition: opacity .16s ease; }
.pp-perf.is-change .pp-perf-corps, .pp-perf.is-change .pp-perf-article { opacity: 0; }
/* La liste se resserre en même temps que le panneau arrive. */
@media (min-width: 1280px) {
    html.pp-theme body.pp-shell main > section { transition: padding-right .32s cubic-bezier(.22, .61, .36, 1); }
    body.pp-perf-ouvert main > section { padding-right: 380px !important; }
}
@media (prefers-reduced-motion: reduce) {
    .pp-perf, .pp-perf.is-ouvert, .pp-perf-corps, .pp-perf-article,
    html.pp-theme body.pp-shell main > section { transition: none !important; }
}
.pp-perf-tete { display: flex; align-items: center; justify-content: space-between; padding: 16px 18px 8px; }
.pp-perf-tete h2 { margin: 0; font-size: 17px; font-weight: 700; }
.pp-perf-fermer { display: grid; place-items: center; width: 34px; height: 34px; border: 0; border-radius: 8px; background: transparent; color: var(--pp-muted); cursor: pointer; }
.pp-perf-fermer:hover { background: var(--pp-bg); }
.pp-perf-article { display: flex; align-items: center; gap: 10px; padding: 4px 18px 12px; }
.pp-perf-article img { width: 52px; height: 52px; object-fit: cover; border-radius: 8px; flex: none; }
.pp-perf-article p { margin: 0; font-weight: 600; font-size: 14px; line-height: 1.35; }
.pp-perf-onglets { display: flex; gap: 4px; padding: 0 18px; border-bottom: 1px solid var(--pp-border); }
.pp-perf-onglets button { padding: 9px 10px; border: 0; border-bottom: 2px solid transparent; background: transparent; font: 600 13.5px var(--pp-font); color: var(--pp-muted); cursor: pointer; }
.pp-perf-onglets button.is-active { color: var(--pp-accent-hover); border-bottom-color: var(--pp-accent); }
.pp-perf-corps { flex: 1; overflow-y: auto; padding: 4px 18px 12px; }
.pp-perf-corps section { padding: 14px 0; border-bottom: 1px solid var(--pp-border); }
.pp-perf-corps section:last-child { border-bottom: 0; }
.pp-perf-corps h3 { display: flex; justify-content: space-between; gap: 8px; margin: 0 0 10px; font-size: 13px; font-weight: 700; }
.pp-perf-corps h3 span { font-weight: 500; color: var(--pp-muted); font-size: 12px; }
.pp-perf-tuiles { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.pp-perf-tuiles-1 { grid-template-columns: 1fr; margin-top: 8px; }
.pp-perf-tuile { border: 1px solid var(--pp-border); border-radius: 10px; padding: 10px 12px; }
.pp-perf-tuile strong { display: block; font-size: 20px; font-weight: 700; line-height: 1.2; }
.pp-perf-tuile span { font-size: 12px; color: var(--pp-muted); }
.pp-perf-index { display: flex; align-items: flex-start; gap: 10px; }
.pp-perf-index strong { display: block; font-size: 13.5px; }
.pp-perf-index small { display: block; margin-top: 2px; font-size: 12px; color: var(--pp-muted); line-height: 1.4; }
.pp-perf-pastille { flex: none; width: 10px; height: 10px; margin-top: 4px; border-radius: 50%; background: #A7B0B5; }
.pp-perf-index[data-ton="ok"] .pp-perf-pastille { background: #2F9E6B; }
.pp-perf-index[data-ton="alerte"] .pp-perf-pastille { background: #E0A33A; }
.pp-perf-verif { margin-top: 10px; height: 32px; }
.pp-perf-vide { margin: 0; font-size: 13px; color: var(--pp-muted); }
.pp-perf-liste { list-style: none; margin: 0; padding: 0; }
.pp-perf-liste li { display: flex; justify-content: space-between; padding: 5px 0; font-size: 13px; }
.pp-perf-aide { margin: 8px 0 0; font-size: 11.5px; color: var(--pp-muted); }
.pp-perf-pied { display: flex; flex-direction: column; gap: 8px; padding: 14px 18px 16px; border-top: 1px solid var(--pp-border); }
.pp-perf-action { justify-content: center; }
.pp-perf-lien { display: inline-flex; align-items: center; gap: 6px; justify-content: center; font-size: 13px; font-weight: 600; color: var(--pp-accent-hover) !important; text-decoration: none !important; }
.pp-perf-lien:hover { text-decoration: underline !important; }
.pp-perf-lien .material-symbols-outlined { font-size: 17px; }
.pp-perf-pied small { text-align: center; font-size: 11.5px; color: var(--pp-muted); }

/* ─── Vue SEO ────────────────────────────────────────────────────────────── */

html.pp-theme .pp-vues { display: flex; gap: 4px; margin: 0 0 12px; border-bottom: 1px solid var(--pp-border); }
html.pp-theme .pp-vues button { padding: 8px 12px; border: 0; border-bottom: 2px solid transparent; background: transparent; font: 600 14px var(--pp-font); color: var(--pp-muted); cursor: pointer; margin-bottom: -1px; }
html.pp-theme .pp-vues button.is-active { color: var(--pp-accent-hover); border-bottom-color: var(--pp-accent); }

#ppSeoVue { display: none; }
body.pp-vue-seo #ppSeoVue { display: block; }
body.pp-vue-seo #convListZone,
body.pp-vue-seo #bulkBar { display: none !important; }

.pp-seo-table { width: 100%; border-collapse: separate; border-spacing: 0; background: #fff; border: 1px solid var(--pp-border); border-radius: 12px; overflow: hidden; font: 13.5px var(--pp-font); }
.pp-seo-table th { text-align: left; padding: 0; background: #FAFAF8; border-bottom: 1px solid var(--pp-border); }
.pp-seo-table th button { display: flex; align-items: center; gap: 4px; width: 100%; padding: 11px 12px; border: 0; background: transparent; font: 600 12px var(--pp-font); color: var(--pp-muted); cursor: pointer; text-align: left; }
.pp-seo-table th button .material-symbols-outlined { font-size: 15px; }
.pp-seo-table td { padding: 10px 12px; border-bottom: 1px solid #EFEDE8; vertical-align: middle; white-space: nowrap; }
.pp-seo-table td:first-child { white-space: normal; }
.pp-seo-table tbody tr { cursor: pointer; }
.pp-seo-table tbody tr:hover { background: var(--pp-accent-soft); }
.pp-seo-table tbody tr:last-child td { border-bottom: 0; }
.pp-seo-pub { display: flex; align-items: center; gap: 10px; min-width: 220px; }
.pp-seo-pub img, .pp-seo-vignette { width: 44px; height: 44px; object-fit: cover; border-radius: 7px; flex: none; background: var(--pp-bg); }
.pp-seo-pub span { font-weight: 600; }
.pp-seo-idx { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; }
.pp-seo-idx::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #A7B0B5; }
.pp-seo-idx[data-ton="ok"]::before { background: #2F9E6B; }
.pp-seo-idx[data-ton="alerte"]::before { background: #E0A33A; }
.pp-seo-maj { color: var(--pp-muted); }
.pp-seo-vide { text-align: center; color: var(--pp-muted); padding: 28px !important; }
@media (max-width: 900px) { #ppSeoVue { overflow-x: auto; } }

/* ─── Diffusion (éditeur) — refonte du 12/10/2026 ──────────────────────────
   Brief « Diffusion et calendrier » : une page d'ensemble pleine largeur,
   MONOCHROME (blanc, gris, noir ; les images gardent leurs couleurs), et un
   panneau latéral contextuel (#ppDifVolet posé à droite par #ppDif.is-modale).
   Couleur fonctionnelle discrète pour les seuls états, toujours doublée d'un
   texte. Jetons locaux : la refonte ne touche pas l'accent du reste du thème. */
.pp-dif {
    --ppd-encre: #111315; --ppd-texte: #2A2D30; --ppd-muet: #6B6F73; --ppd-filet: #E4E4E2;
    --ppd-filet-fort: #CFCFCC; --ppd-fond: #F6F6F5; --ppd-surface: #FFFFFF;
    --ppd-ok: #2E7D4F; --ppd-attention: #A86A00; --ppd-alerte: #B3261E;
    font-family: var(--pp-font); color: var(--ppd-texte);
}
/* La colonne de l'éditeur (max-w-5xl, faite pour le texte) s'efface. */
#editorScroll > .max-w-5xl:has(#tab-social:not(.hidden) #ppDif) { max-width: 1440px; }
/* LA COLONNE DE DROITE RESTE EN DIFFUSION (16/10/2026, Gérald) : rangée
   (règle du 12/10), elle élargissait la zone centrale et décalait les onglets
   et l'en-tête au passage Éditeur/Référencement → Diffusion. Les trois
   onglets ont désormais la même mise en page ; la Collaboration est dans la
   colonne, comme ailleurs (le tiroir ppCollab ne sert plus). */
html.pp-theme.pp-collab-ouvert #sidebarLeft.sidebar-left {
    position: fixed !important; top: 0; right: 0; bottom: 0; z-index: 46;
    width: 380px !important; min-width: 0 !important; max-width: 100vw;
    box-shadow: -16px 0 40px rgba(17, 19, 21, .16) !important; animation: ppd-glisse .28s cubic-bezier(.22, .61, .36, 1);
}
@keyframes ppd-glisse { from { transform: translateX(100%); } to { transform: none; } }
#ppTabs .pp-subtab-collab { display: none; }
@media (max-width: 1023px) { html.pp-theme #ppTabs .pp-subtab-collab { display: none !important; } }
/* L'action principale de la barre de tête, en noir dans Diffusion. */
html.pp-theme[data-pp-groupe="diffusion"] #ppPublish { background: #111315; }
html.pp-theme[data-pp-groupe="diffusion"] #ppPublish:hover { background: #2A2D30; }
html.pp-theme[data-pp-groupe="diffusion"] #ppTabs button.is-active { color: #111315; border-bottom-color: #111315; }

/* Le panneau historique des réseaux ne vit que dans le panneau latéral. */
#ppDif:not(.is-modale) .pp-dif-volet { display: none; }
#ppDif:not([data-canal="wordpress"]) .pp-dif-wp,
#ppDif:not([data-canal="email"]) .pp-dif-email,
#ppDif:not([data-canal="qualite"]) .pp-dif-qualite,
#ppDif:not([data-canal="parametres"]) .pp-dif-params { display: none; }
#ppDif:is([data-canal="wordpress"], [data-canal="email"], [data-canal="newsletter"], [data-canal="qualite"], [data-canal="parametres"], [data-canal="general"]) .pp-dif-reseaux { display: none; }
#ppDif #socialCardsGrid { grid-template-columns: 1fr !important; }
#ppDif #socToggleAllBtn { display: none !important; }
#ppDif .soc-head { cursor: default; }

.pp-cache { display: none !important; }
/* Lignes du tiroir « Ajouter un canal » (_pp-canal-ajout). */
.pp-dif-logo { display: grid; place-items: center; width: 22px; flex: none; }
.pp-dif-txt { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.pp-dif-txt strong { font-size: 13.5px; font-weight: 600; }
.pp-dif-txt small { font-size: 12px; color: var(--pp-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* ── Page d'ensemble ── */
.ppd { display: grid; gap: 28px; padding-bottom: 40px; }
#ppGenLignes { display: grid; gap: 28px; min-height: 480px; }

/* États : un point + un texte, jamais la couleur seule. */
.ppd-statut { display: inline-flex; align-items: center; gap: 6px; margin: 0; font-size: 13px; color: var(--ppd-muet); }
.ppd-point { width: 8px; height: 8px; flex: none; border-radius: 50%; border: 1.5px solid #9A9EA2; background: transparent; }
.ppd-statut.is-publie .ppd-point { border-color: var(--ppd-ok); background: var(--ppd-ok); }
.ppd-statut.is-publie { color: var(--ppd-ok); }
.ppd-statut.is-prevu .ppd-point { border-color: var(--ppd-encre); background: #9A9EA2; }
.ppd-statut.is-pret .ppd-point { border-color: var(--ppd-encre); background: var(--ppd-encre); }
.ppd-statut.is-attention .ppd-point { border-color: var(--ppd-attention); background: var(--ppd-attention); }
.ppd-statut.is-attention { color: var(--ppd-attention); }

.ppd-bloc { background: var(--ppd-surface); border: 1px solid var(--ppd-filet); border-radius: 12px; }
.ppd-section { display: grid; gap: 12px; }
.ppd-section-tete { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.ppd-section-tete h2 { margin: 0; font-size: 22px; font-weight: 800; letter-spacing: -.01em; color: var(--ppd-encre); }
.ppd-section-actions { display: flex; gap: 8px; flex-wrap: wrap; }

.ppd-btn { display: inline-flex; align-items: center; gap: 6px; height: 36px; padding: 0 14px; border: 1px solid var(--ppd-filet-fort); border-radius: 9px; background: var(--ppd-surface); color: var(--ppd-encre) !important; font: 600 13.5px/1 var(--pp-font); text-decoration: none !important; cursor: pointer; white-space: nowrap; }
.ppd-btn:hover { background: var(--ppd-fond); }
.ppd-btn .material-symbols-outlined { font-size: 18px; }
.ppd-btn-texte { border-color: transparent; background: transparent; }
.ppd-btn-petit { height: 32px; padding: 0 12px; font-size: 13px; }
.ppd-lien { border: 0; background: none; padding: 4px 2px; color: var(--ppd-encre); font: 600 13.5px var(--pp-font); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.ppd-lien:hover { color: #000; }
.ppd-btn:focus-visible, .ppd-lien:focus-visible, .ppd-carte-action:focus-visible, .ppd-autre:focus-visible,
.ppd-point-qualite:focus-visible, .ppd-icone:focus-visible { outline: 2px solid var(--ppd-encre); outline-offset: 2px; box-shadow: none; }
.ppd-muet { color: var(--ppd-muet); }

/* Bilan qualité */
.ppd-qualite { padding: 16px 20px; display: grid; gap: 14px; }
.ppd-qualite-tete { display: grid; grid-template-columns: minmax(180px, auto) minmax(0, 1fr) auto; align-items: center; gap: 20px; }
.ppd-qualite-tete :is(h2, h3) { margin: 0; font-size: 16px; font-weight: 700; color: var(--ppd-encre); }
.ppd-qualite-tete p { margin: 2px 0 0; font-size: 13px; color: var(--ppd-muet); }
.ppd-segments { display: flex; gap: 6px; max-width: 460px; }
.ppd-segments span { flex: 1; height: 6px; border-radius: 3px; background: #E6E6E4; }
.ppd-segments span.is-ok { background: var(--ppd-encre); }
.ppd-points { display: flex; flex-wrap: wrap; gap: 8px; min-height: 40px; }
.ppd-point-qualite { display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 14px; border: 1px solid var(--ppd-filet); border-radius: 9px; background: var(--ppd-surface); color: var(--ppd-texte); font: 500 13.5px var(--pp-font); cursor: pointer; }
.ppd-point-qualite:hover { border-color: var(--ppd-filet-fort); background: var(--ppd-fond); }
.ppd-point-qualite .material-symbols-outlined { font-size: 17px; color: var(--ppd-muet); }
.ppd-point-qualite.is-fail .material-symbols-outlined { color: var(--ppd-alerte); }
.ppd-point-qualite.is-warn .material-symbols-outlined { color: var(--ppd-attention); }
.ppd-point-qualite.is-plus { font-weight: 700; }
.ppd-qualite-ok { margin: 0; align-self: center; font-size: 13.5px; color: var(--ppd-ok); font-weight: 600; }

/* Destinations */
.ppd-cartes { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 14px; }
@media (min-width: 1280px) { .ppd-cartes { grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); } }
.ppd-carte { position: relative; display: flex; flex-direction: column; gap: 8px; min-width: 0; padding: 14px; background: var(--ppd-surface); border: 1px solid var(--ppd-filet); border-radius: 12px; transition: border-color .15s; }
.ppd-carte:hover { border-color: var(--ppd-filet-fort); }
.ppd-carte > header { display: flex; align-items: center; gap: 9px; }
.ppd-carte h3 { margin: 0; font-size: 15px; font-weight: 700; color: var(--ppd-encre); }
.ppd-carte-logo { display: grid; place-items: center; width: 22px; color: var(--ppd-encre); }
.ppd-carte-logo svg { width: 19px; height: 19px; }
.ppd-carte-logo .material-symbols-outlined { font-size: 21px; }
.ppd-compte { display: flex; align-items: center; gap: 5px; margin: 0; font-size: 12.5px; color: var(--ppd-attention); }
.ppd-compte .material-symbols-outlined { font-size: 15px; }
.ppd-apercu { flex: 1; display: flex; flex-direction: column; gap: 7px; min-height: 150px; padding: 10px; border: 1px solid #EFEFED; border-radius: 9px; background: #FBFBFA; overflow: hidden; }
.ppd-apercu img { display: block; width: 100%; object-fit: cover; border-radius: 6px; background: #EDEDEB; }
.ppd-apercu.is-carre img { aspect-ratio: 1 / 1 !important; }
.ppd-ig { position: relative; overflow: hidden; aspect-ratio: 1 / 1; border-radius: 6px; background: #EDEDEB; }
.ppd-ig img { border-radius: 0; }
.ppd-apercu-titre { font-size: 13px; font-weight: 700; line-height: 1.35; color: var(--ppd-encre); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ppd-apercu-texte { font-size: 12.5px; line-height: 1.45; color: var(--ppd-texte); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ppd-apercu-vide { font-style: normal; font-size: 12px; color: var(--ppd-muet); }
.ppd-squelette-img { display: block; width: 100%; aspect-ratio: 16 / 9; border-radius: 6px; background: #EDEDEB; }
.ppd-squelette-ligne { display: block; height: 8px; border-radius: 4px; background: #E8E8E6; }
.ppd-squelette-ligne.is-courte { width: 60%; }
.ppd-nl-tete { display: flex; justify-content: space-between; padding-bottom: 6px; border-bottom: 1px solid #E8E8E6; }
.ppd-nl-tete span { width: 34%; height: 7px; border-radius: 4px; background: #E2E2E0; }
.ppd-nl-tete span + span { width: 22%; }
.ppd-carte-action { display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 36px; border: 1px solid var(--ppd-filet-fort); border-radius: 9px; background: var(--ppd-surface); color: var(--ppd-encre); font: 600 13.5px var(--pp-font); cursor: pointer; }
.ppd-carte-action .material-symbols-outlined { font-size: 17px; }
/* Toute la carte ouvre le détail ; le bouton reste la seule cible clavier. */
.ppd-carte-action::after { content: ""; position: absolute; inset: 0; border-radius: 12px; }
.ppd-carte:hover .ppd-carte-action { background: var(--ppd-fond); }
/* WordPress : la carte (bouton plein cadre) ouvre le détail, « Publier /
   Mettre à jour » reste au-dessus et publie. */
.ppd-carte-ouvrir { position: absolute; inset: 0; z-index: 0; border: 0; border-radius: 12px; background: none; cursor: pointer; }
.ppd-carte-ouvrir:focus-visible { outline: 2px solid var(--ppd-encre); outline-offset: 2px; }
.ppd-carte-action.is-publier { position: relative; z-index: 1; background: var(--ppd-encre); border-color: var(--ppd-encre); color: #fff; }
.ppd-carte-action.is-publier::after { content: none; }
.ppd-carte:hover .ppd-carte-action.is-publier, .ppd-carte-action.is-publier:hover { background: #2A2D30; }
/* Détail WordPress : le média en tête. */
.pp-dif-wp-media { margin: 0 0 14px; border-radius: 10px; overflow: hidden; background: #EDEDEB; }
.pp-dif-wp-media img, .pp-dif-wp-media video, .pp-dif-wp-media iframe { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border: 0; }
.pp-dif-wp-titre { margin: 0 0 6px; font-size: 16px; font-weight: 700; line-height: 1.35; color: var(--ppd-encre); }
.pp-dif-wp-extrait { margin: 0 0 14px; font-size: 13px; line-height: 1.5; color: var(--ppd-texte); }
.pp-dif-wp dd a { color: var(--ppd-encre); overflow-wrap: anywhere; }

/* Action principale de Diffusion : la couleur d'action du thème (A-035). */
.ppd-btn-noir { background: var(--pp-accent); border-color: var(--pp-accent); color: #fff !important; }
.ppd-btn-noir:hover { background: var(--pp-accent-hover); }
/* Planifier les réseaux : le formulaire s'ouvre en place, sous le bouton. */
.ppd-planif { display: grid; gap: 10px; margin-top: 10px; padding: 12px; border: 1px solid var(--ppd-filet); border-radius: 10px; background: var(--ppd-fond); }
.ppd-planif[hidden] { display: none; }
.ppd-planif-date { display: grid; gap: 4px; font-size: 12.5px; font-weight: 600; color: var(--ppd-encre); }
.ppd-planif input[type="datetime-local"] { height: 38px; padding: 0 10px; border: 1px solid var(--ppd-filet-fort); border-radius: 8px; background: #fff; font: 14px var(--pp-font); color: var(--ppd-encre); max-width: 260px; }
.ppd-planif fieldset { margin: 0; padding: 0; border: 0; display: flex; flex-wrap: wrap; gap: 6px 14px; }
.ppd-planif legend { width: 100%; margin-bottom: 4px; font-size: 12.5px; font-weight: 600; color: var(--ppd-encre); }
.ppd-planif fieldset label { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; cursor: pointer; }
.ppd-planif fieldset label.is-off { opacity: .55; cursor: not-allowed; }
.ppd-planif fieldset small { color: var(--ppd-muet); }
.ppd-planif input[type="checkbox"] { accent-color: var(--ppd-encre); }
.ppd-planif-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.ppd-planif-actions .ppd-btn { margin-top: 0 !important; }
.ppd-erreur { margin: 0; font-size: 12.5px; color: var(--ppd-alerte); }
.ppd-erreur[hidden] { display: none; }

/* Paramètres de publication */
.ppd-params { margin: 0; display: grid; grid-template-columns: 1fr 1fr; padding: 4px 20px; }
.ppd-params > div { display: grid; grid-template-columns: 190px minmax(0, 1fr); align-items: center; gap: 12px; min-height: 54px; padding: 8px 0; border-bottom: 1px solid #EFEFED; }
.ppd-params > div:nth-child(odd):not(.is-large) { padding-right: 24px; }
.ppd-params > div:nth-child(even) { padding-left: 24px; border-left: 1px solid #EFEFED; }
.ppd-params > div.is-large { grid-column: 1 / -1; padding-left: 0; border-left: 0; border-bottom: 0; }
.ppd-params dt { display: flex; align-items: center; gap: 12px; font-size: 14px; font-weight: 600; color: var(--ppd-encre); }
.ppd-params dt .material-symbols-outlined { font-size: 21px; }
.ppd-params dd { margin: 0; font-size: 14px; color: var(--ppd-muet); min-width: 0; overflow-wrap: anywhere; }
.ppd-url { display: flex; align-items: center; gap: 6px; }
.ppd-url > span:first-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ppd-icone { display: inline-grid; place-items: center; flex: none; width: 32px; height: 32px; border: 0; border-radius: 8px; background: none; color: var(--ppd-encre) !important; cursor: pointer; }
.ppd-icone:hover { background: var(--ppd-fond); }
.ppd-icone .material-symbols-outlined { font-size: 18px; }

/* ── Panneau latéral contextuel ── */
.pp-gen-modale-tete { display: none; }
.pp-gen-voile { position: fixed; inset: var(--ppd-haut, 0px) 0 0 0; z-index: 45; background: rgba(17, 19, 21, .32); opacity: 0; transition: opacity .24s ease; }
.pp-gen-voile.is-ouvert { opacity: 1; }
#ppDif.is-modale .pp-dif-volet {
    position: fixed; z-index: 46; top: var(--ppd-haut, 0px); right: 0; bottom: 0;
    width: min(520px, 100vw); overflow: auto; overscroll-behavior: contain;
    padding: 0 20px 24px; background: var(--ppd-fond); border-left: 1px solid var(--ppd-filet);
    box-shadow: -18px 0 40px rgba(17, 19, 21, .14);
    translate: 100% 0; transition: translate .3s cubic-bezier(.22, .61, .36, 1);
}
/* Pas de translate au repos (ouvert) : le panneau contient des fenêtres en position fixe. */
#ppDif.is-modale.is-modale-ouverte .pp-dif-volet { translate: none; }
#ppDif.is-modale .pp-gen-modale-tete { display: flex; align-items: center; gap: 10px; position: sticky; top: 0; z-index: 2; margin: 0 -20px 16px; padding: 14px 20px; background: var(--ppd-surface); border-bottom: 1px solid var(--ppd-filet); }
.pp-gen-modale-tete h3 { margin: 0; font-size: 17px; font-weight: 700; color: var(--ppd-encre); }
.pp-gen-x { margin-left: auto; display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--ppd-filet); border-radius: 9px; background: var(--ppd-surface); color: var(--ppd-encre); cursor: pointer; }
.pp-gen-x:hover { background: var(--ppd-fond); }
.pp-gen-x:focus-visible { outline: 2px solid var(--ppd-encre); outline-offset: 2px; }
html.pp-gen-sans-defil #editorScroll { overflow: hidden !important; }
@media (max-width: 640px) {
    #ppDif.is-modale .pp-dif-volet { width: 100vw; border-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
    .pp-gen-voile, #ppDif.is-modale .pp-dif-volet, html.pp-theme.pp-collab-ouvert #sidebarLeft.sidebar-left { transition: none; animation: none; }
}
.pp-dif-flash { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; padding: 10px 12px; border-radius: 10px; background: #fff; border: 1px solid var(--ppd-filet); color: var(--ppd-ok); font-size: 13.5px; }
.pp-dif-flash .material-symbols-outlined { font-size: 18px; }
.pp-dif-intro { margin: 0 0 14px; font-size: 13px; line-height: 1.5; color: var(--ppd-muet); }
.pp-dif-ico { font-size: 20px !important; color: var(--ppd-encre); flex: none; }
.pp-dif-wp, .pp-dif-email, .pp-dif-params, .pp-dif-qualite { background: var(--ppd-surface); border: 1px solid var(--ppd-filet); border-radius: 12px; padding: 18px; }
.pp-dif-wp header, .pp-dif-email > header { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.pp-dif-wp header > div, .pp-dif-email > header > div { flex: 1; min-width: 0; }
.pp-dif-wp h3, .pp-dif-email h3 { margin: 0; font-size: 16px; font-weight: 700; color: var(--ppd-encre); }
.pp-dif-wp header p, .pp-dif-email > header p { margin: 2px 0 0; font-size: 12.5px; color: var(--ppd-muet); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pp-dif-wp dl { margin: 0 0 14px; display: grid; gap: 6px; }
.pp-dif-wp dl div { display: flex; gap: 12px; font-size: 13.5px; }
.pp-dif-wp dt { width: 120px; flex: none; color: var(--ppd-muet); }
.pp-dif-wp dd { margin: 0; font-weight: 600; }
.pp-dif-wp-actions { display: flex; flex-wrap: wrap; gap: 8px; }
/* L'adresse : un champ d'une ligne qui défile, cliquable (13/10/2026). */
.pp-dif-wp dl { grid-template-columns: minmax(0, 1fr); }
.pp-dif-wp dl div { min-width: 0; }
.pp-dif-wp dd.pp-dif-wp-adresse-dd { flex: 1; min-width: 0; }
.pp-dif-wp dl div:has(> .pp-dif-wp-adresse-dd) { align-items: center; }
.pp-dif-wp a.pp-dif-wp-adresse {
  display: block; overflow-x: auto; white-space: nowrap; overflow-wrap: normal; scrollbar-width: thin;
  padding: 6px 10px; border: 1px solid var(--ppd-filet); border-radius: 8px; background: var(--ppd-fond, #fff);
  font-weight: 500; text-decoration: none; color: var(--ppd-encre);
}
.pp-dif-wp a.pp-dif-wp-adresse:hover { border-color: var(--ppd-encre); text-decoration: underline; }
.pp-dif-email-vide p { margin: 0 0 14px; font-size: 13.5px; line-height: 1.55; color: var(--ppd-muet); }

/* Bilan qualité complet */
.pp-gen-pf { list-style: none; margin: 0; padding: 0; display: grid; }
.pp-gen-pf > li { display: grid; grid-template-columns: 26px minmax(0, 1fr) auto; grid-template-areas: "ico nom etat" "ico det det" "ico act act"; column-gap: 10px; row-gap: 2px; padding: 12px 6px; border-top: 1px solid #EFEFED; border-radius: 8px; font-size: 13.5px; transition: background-color .3s; }
.pp-gen-pf > li:first-child { border-top: 0; }
.pp-gen-pf > li.is-cible { background: #F1F1EF; }
.pp-gen-pf > li:focus { outline: none; }
.pp-gen-pf-ico { grid-area: ico; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; font-size: 15px !important; background: #EFEFED; color: var(--ppd-muet); }
.pp-gen-pf > li.is-pass .pp-gen-pf-ico { background: #E8F3EC; color: var(--ppd-ok); }
.pp-gen-pf > li.is-warn .pp-gen-pf-ico { background: #FBF1DF; color: var(--ppd-attention); }
.pp-gen-pf > li.is-fail .pp-gen-pf-ico { background: #F9E7E5; color: var(--ppd-alerte); }
.pp-gen-pf-nom { grid-area: nom; font-weight: 600; color: var(--ppd-encre); }
.pp-gen-pf-etat { grid-area: etat; font-size: 12.5px; font-weight: 600; color: var(--ppd-muet); }
.pp-gen-pf > li.is-pass .pp-gen-pf-etat { color: var(--ppd-ok); }
.pp-gen-pf > li.is-warn .pp-gen-pf-etat { color: var(--ppd-attention); }
.pp-gen-pf > li.is-fail .pp-gen-pf-etat { color: var(--ppd-alerte); }
.pp-gen-pf-detail { grid-area: det; color: var(--ppd-muet); line-height: 1.45; }
.pp-gen-pf > li > .pp-gen-mod { grid-area: act; justify-self: start; margin-top: 6px; }

/* Paramètres (panneau) : lignes + champs prêtés de la colonne. */
.pp-gen-dl { margin: 0 0 6px; display: grid; }
.pp-gen-dl > div { display: grid; grid-template-columns: 130px minmax(0, 1fr) auto; gap: 12px; align-items: center; min-height: 46px; padding: 5px 0; border-top: 1px solid #EFEFED; font-size: 13.5px; }
.pp-gen-dl > div:first-child { border-top: 0; }
.pp-gen-dl dt { color: var(--ppd-muet); }
.pp-gen-dl dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
.pp-gen-dl dd.is-vide { color: var(--ppd-muet); font-weight: 400; }
.pp-dif-params-corps { display: grid; gap: 12px; margin-top: 8px; }
.pp-dif-params-corps:empty { display: none; }
.pp-dif-params-corps #taxonomySection { margin: 0 !important; }
.pp-dif-params-corps .max-h-48 { max-height: 320px; }

.pp-gen-mod { display: inline-flex; align-items: center; gap: 5px; flex: none; height: 32px; padding: 0 12px; border: 1px solid var(--ppd-filet-fort, #CFCFCC); border-radius: 8px; background: #fff; color: #111315; font: 600 13px/1 var(--pp-font); cursor: pointer; transition: background-color .15s; }
.pp-gen-mod:hover { background: #F6F6F5; }
.pp-gen-mod:focus-visible { outline: 2px solid #111315; outline-offset: 2px; }
.pp-gen-mod .material-symbols-outlined { font-size: 16px; }
.pp-gen-mod.is-busy, .ppd-btn.is-busy { pointer-events: none; opacity: .7; }
.pp-gen-mod.is-busy .material-symbols-outlined, .ppd-btn.is-busy .material-symbols-outlined { animation: pp-gen-tourne 1s linear infinite; }
@keyframes pp-gen-tourne { to { transform: rotate(360deg); } }

@media (max-width: 1100px) {
    .ppd-params { grid-template-columns: 1fr; }
    .ppd-params > div:nth-child(n) { padding-left: 0; padding-right: 0; border-left: 0; }
    .ppd-qualite-tete { grid-template-columns: 1fr auto; }
    .ppd-segments { grid-column: 1 / -1; grid-row: 2; max-width: none; }
}
@media (max-width: 640px) {
    .ppd-cartes { grid-template-columns: 1fr; }
    .ppd-apercu { min-height: 0; }
    .ppd-params > div { grid-template-columns: 1fr; gap: 4px; }
}

/* Fenêtre de choix des réseaux (« Rédiger les posts », social-panel.js) :
   ses styles vivent dans la feuille du thème WordPress — reprise ici aux
   couleurs Prepress. */
.social-bulk-modal { position: fixed; inset: 0; z-index: 100001; display: flex; align-items: center; justify-content: center; padding: 16px; background: rgba(31, 38, 41, .45); font-family: var(--pp-font); }
.social-bulk-card { width: min(460px, 100%); max-height: 90vh; display: flex; flex-direction: column; background: #fff; color: var(--pp-text); border-radius: 14px; box-shadow: 0 24px 60px -18px rgba(0, 0, 0, .45); overflow: hidden; }
.social-bulk-head { display: flex; align-items: center; gap: 10px; padding: 14px 18px; border-bottom: 1px solid var(--pp-border); }
.social-bulk-head > .material-symbols-outlined { color: var(--pp-accent); font-size: 22px; }
.social-bulk-head h3 { margin: 0; font-size: 16px; font-weight: 700; }
.social-bulk-x { margin-left: auto; border: 0; background: none; cursor: pointer; color: var(--pp-muted); display: inline-flex; padding: 2px; }
.social-bulk-x:hover { color: var(--pp-text); }
.social-bulk-body { padding: 14px 18px 6px; overflow: auto; }
.social-bulk-intro { margin: 0 0 12px; font-size: 13px; line-height: 1.5; color: var(--pp-muted); }
.social-bulk-toggle { display: flex; align-items: center; gap: 8px; margin: 0 0 10px; padding: 8px 10px; border-radius: 8px; background: var(--pp-bg); font-size: 13px; font-weight: 600; cursor: pointer; }
.social-bulk-list { list-style: none; margin: 0; padding: 0; border: 1px solid var(--pp-border); border-radius: 10px; overflow: hidden; }
.social-bulk-list li + li { border-top: 1px solid #F0EEEA; }
.social-bulk-list label { display: flex; align-items: center; gap: 10px; padding: 9px 12px; cursor: pointer; font-size: 14px; }
.social-bulk-list li:not(.is-off) label:hover { background: var(--pp-bg); }
.social-bulk-list li.is-off label { cursor: default; opacity: .5; }
.social-bulk-list input, .social-bulk-toggle input { accent-color: var(--pp-accent); color: var(--pp-accent); }
.social-bulk-ico { flex: none; width: 26px; height: 26px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: #fff; }
.social-bulk-ico svg { width: 14px; height: 14px; }
.social-bulk-nom { font-weight: 600; }
.social-bulk-etat { margin-left: auto; font-size: 12px; color: var(--pp-muted); white-space: nowrap; }
.social-bulk-etat.is-deja { color: #1E7A50; }
.social-bulk-warn { margin: 10px 0 0; padding: 8px 10px; border-radius: 8px; background: #FDF4E3; border: 1px solid #F2D9A8; font-size: 12px; line-height: 1.5; color: #8A5A0B; }
.social-bulk-warn[hidden] { display: none; }
.social-bulk-foot { display: flex; justify-content: flex-end; gap: 8px; padding: 12px 18px; margin-top: 12px; border-top: 1px solid var(--pp-border); background: var(--pp-bg); }
.social-bulk-btn { height: 34px; border: 1px solid var(--pp-border-strong); background: #fff; color: var(--pp-text); border-radius: 8px; padding: 0 14px; font: 600 13px/1 var(--pp-font); cursor: pointer; }
.social-bulk-btn.is-primary { background: var(--pp-accent); border-color: var(--pp-accent); color: #fff; }
.social-bulk-btn.is-primary:hover:not(:disabled) { background: var(--pp-accent-hover); }
.social-bulk-btn:disabled { opacity: .5; cursor: default; }
/* ─── Diffusion — maquette du 15/10/2026 ───────────────────────────────────
   Page : WordPress | Réseaux sociaux (lignes), puis E-mail | Newsletter,
   bandeau Calendrier. Panneau d'un réseau : zones soc-z-* de la carte
   historique RÉORDONNÉES (Contenu / Aperçu, texte, visuel, lien, quand,
   pied collant). Rien de tout cela ne touche la fenêtre encadrée par
   WordPress, qui n'a ni #ppDif ni les zones du thème. */
.ppd-haut { display: grid; grid-template-columns: minmax(220px, 260px) minmax(0, 1fr); gap: 16px; align-items: stretch; }
.ppd-bas { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr) minmax(300px, 1.5fr); gap: 16px; align-items: stretch; }
/* Qualité, à droite de la Newsletter : titre et lien, la barre dessous,
   puis les points à revoir. */
.ppd-bas .ppd-qualite { align-content: start; padding: 16px; gap: 12px; }
.ppd-bas .ppd-qualite-tete { grid-template-columns: minmax(0, 1fr) auto; gap: 10px 12px; }
.ppd-bas .ppd-qualite-tete h3 { font-size: 15px; }
.ppd-bas .ppd-segments { grid-column: 1 / -1; max-width: none; }
.ppd-bas .ppd-points { min-height: 0; gap: 6px; }
.ppd-bas .ppd-point-qualite { height: 34px; padding: 0 11px; font-size: 13px; }
.ppd-section > .ppd-haut + .ppd-bas { margin-top: 4px; }

/* WordPress */
.ppd-wp { gap: 10px; padding: 18px; }
.ppd-wp > :not(.ppd-carte-ouvrir) { position: relative; z-index: 1; pointer-events: none; }
.ppd-wp .ppd-wp-actions { pointer-events: auto; margin-top: auto; display: grid; gap: 8px; }
.ppd-wp .ppd-wp-actions .ppd-btn { justify-content: center; width: 100%; }
/* « Non publié » sous le bouton de publication (20/10/2026) : un constat, pas un bouton. */
.ppd-wp .ppd-wp-nonpublie { display: flex; align-items: center; justify-content: center; gap: 6px; height: 36px; margin: 0; border: 1px dashed var(--ppd-filet-fort); border-radius: 9px; color: var(--pp-muted); font: 500 13.5px/1 var(--pp-font); }
.ppd-wp .ppd-wp-nonpublie .material-symbols-outlined { font-size: 17px; }
.ppd-wp-media { margin-top: 4px; border-radius: 6px; overflow: hidden; background: #EDEDEB; }
.ppd-wp-media img, .ppd-wp-media .ppd-squelette-img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 0; }
.ppd-wp-titre { margin: 0; font-size: 15px; font-weight: 600; line-height: 1.4; color: var(--ppd-encre); }

/* Réseaux sociaux */
.ppd-rs { display: flex; flex-direction: column; min-width: 0; }
.ppd-rs-tete { display: flex; align-items: center; gap: 14px; padding: 18px 18px 14px; }
.ppd-rs-tete > div { flex: 1; min-width: 0; }
.ppd-rs-tete h3 { margin: 0; font-size: 17px; font-weight: 700; color: var(--ppd-encre); }
.ppd-rs-tete p { margin: 2px 0 0; font-size: 13px; color: var(--ppd-muet); }
.ppd-rs-ico { font-size: 24px !important; color: var(--ppd-encre); }
.ppd-rs-tout { display: flex; align-items: center; gap: 14px; padding: 12px 18px; border-top: 1px solid var(--ppd-filet); font-size: 13.5px; font-weight: 600; color: var(--ppd-encre); cursor: pointer; }
.ppd-rs input[type="checkbox"] { width: 18px; height: 18px; margin: 0; accent-color: var(--ppd-encre); cursor: pointer; }
.ppd-rs input[type="checkbox"]:disabled { cursor: not-allowed; opacity: .45; }
.ppd-rs-liste { list-style: none; margin: 0; padding: 0; }
.ppd-rs-ligne {
    display: grid; grid-template-columns: 22px 24px minmax(80px, 120px) minmax(0, 1fr) minmax(96px, auto) auto;
    align-items: center; gap: 14px; min-height: 52px; padding: 6px 18px;
    border-top: 1px solid #EFEFED; transition: background-color .15s;
}
.ppd-rs-ligne:hover { background: #FAFAF9; }
.ppd-rs-ligne.is-choisi { background: #F5F4F1; }
.ppd-rs-case { display: grid; place-items: center; }
.ppd-rs-nom { font-size: 14.5px; font-weight: 600; color: var(--ppd-encre); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ppd-rs-texte { min-width: 0; font-size: 13px; color: var(--ppd-muet); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ppd-rs-texte.is-vide { color: #9A9EA2; }
.ppd-rs-ligne .ppd-statut { white-space: nowrap; font-size: 12.5px; }
.ppd-rs-modifier .material-symbols-outlined { font-size: 16px !important; }
.ppd-rs-pied { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 10px; margin-top: auto; padding: 12px 18px; border-top: 1px solid var(--ppd-filet); }
.ppd-rs-aide { flex: 1; min-width: 160px; margin: 0; font-size: 12.5px; color: var(--ppd-muet); }
.ppd-btn:disabled { opacity: .4; cursor: not-allowed; }
.ppd-btn-noir:disabled { background: var(--pp-accent); }
.ppd-rs .ppd-planif { margin: 0 18px 16px; }
.ppd-quand-note { margin: 0; font-size: 12.5px; color: var(--ppd-muet); }
#ppRsProgrammer[aria-expanded="true"] { background: var(--ppd-fond); border-color: var(--ppd-encre); }

/* E-mail au client, Newsletter */
.ppd-mini { padding: 16px; gap: 10px; }

/* Calendrier de diffusion */
.ppd-cal { display: flex; align-items: center; gap: 16px; padding: 16px 20px; }
.ppd-cal-ico { font-size: 28px !important; color: var(--ppd-encre); flex: none; }
.ppd-cal-txt { flex: 1; min-width: 0; }
.ppd-cal-txt h2 { margin: 0; font-size: 16px; font-weight: 700; color: var(--ppd-encre); }
.ppd-cal-txt p { margin: 2px 0 0; font-size: 13px; color: var(--ppd-muet); }

@media (max-width: 1100px) {
    .ppd-haut { grid-template-columns: 1fr; }
    .ppd-wp { display: grid; grid-template-columns: 200px minmax(0, 1fr); grid-template-areas: "media tete" "media statut" "media titre" "media actions"; column-gap: 18px; align-content: start; }
    .ppd-wp > header { grid-area: tete; } .ppd-wp > .ppd-statut { grid-area: statut; }
    .ppd-wp > .ppd-wp-media { grid-area: media; align-self: start; } .ppd-wp > .ppd-wp-titre { grid-area: titre; }
    .ppd-wp > .ppd-wp-actions { grid-area: actions; grid-auto-flow: column; justify-content: start; }
    .ppd-wp .ppd-wp-actions .ppd-btn { width: auto; }
}
@media (max-width: 1100px) {
    .ppd-bas { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ppd-bas .ppd-qualite { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
    .ppd-rs-ligne { grid-template-columns: 22px 24px minmax(0, 1fr) auto; grid-template-areas: "case logo nom act" "case logo statut act"; row-gap: 0; padding-block: 10px; }
    .ppd-rs-case { grid-area: case; } .ppd-rs-ligne > .ppd-carte-logo { grid-area: logo; }
    .ppd-rs-nom { grid-area: nom; } .ppd-rs-ligne > .ppd-statut { grid-area: statut; } .ppd-rs-modifier { grid-area: act; }
    .ppd-rs-texte { display: none; }
    .ppd-rs-tete { flex-wrap: wrap; }
    .ppd-wp { display: flex; }
    .ppd-bas { grid-template-columns: 1fr; }
    .ppd-cal { flex-wrap: wrap; }
}

/* ── Panneau d'un réseau ── */
.pp-gen-logo { display: grid; place-items: center; width: 28px; flex: none; color: var(--ppd-encre); }
.pp-gen-logo[hidden] { display: none; }
.pp-gen-logo svg { width: 24px; height: 24px; }
.pp-gen-logo .material-symbols-outlined { font-size: 24px; }
.pp-gen-titres { flex: 1; min-width: 0; }
#ppGenModaleSous { margin: 1px 0 0; font-size: 12.5px; color: var(--ppd-muet); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#ppGenModaleSous[hidden] { display: none; }
#ppDif[data-type="reseau"].is-modale .pp-dif-volet { background: var(--ppd-surface); padding-bottom: 0; }
#ppDif[data-type="reseau"] .pp-gen-modale-tete { border-bottom: 0 !important; padding-top: 18px !important; margin-bottom: 4px !important; }
#ppDif[data-type="reseau"] .pp-dif-flash { margin-top: 8px; }

/* La carte devient le contenu du panneau : sans cadre, sans poignée. */
#ppDif .soc-card { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: transparent !important; overflow: visible !important; }
#ppDif .soc-card > .soc-head { display: none; }
/* L'en-tête global du panneau historique (titre, Générer les posts IA) :
   la page d'ensemble porte déjà « Rédiger les N textes ». */
#ppDif .soc-entete { display: none !important; }
#ppDif #socialCardsGrid > *, #ppDif .soc-card { min-width: 0; }
#ppDif .soc-card .soc-body, #ppDif .soc-card .soc-body-inner { overflow: visible; }
#ppDif .soc-card .soc-body { grid-template-columns: minmax(0, 1fr); }
#ppDif .soc-card .soc-body-inner { display: flex; flex-direction: column; min-width: 0; }
#ppDif .soc-body-inner > [class*="soc-z-"] { padding-left: 0 !important; padding-right: 0 !important; }
#ppDif .soc-z-perso { order: 1; }
#ppDif .soc-z-libelle-texte { order: 2; }
/* Canal Citykomi (contrat à plusieurs canaux) : la première décision du
   panneau, au-dessus du texte — même rang que « Texte de la publication ». */
#ppDif .soc-z-canal { order: 1; margin-bottom: 26px; padding-top: 0 !important; }
#ppDif .soc-z-cktitre { order: 1; margin-bottom: 26px; padding-top: 0 !important; }
#ppDif .ck-titre-tete { margin-bottom: 10px; }
#ppDif .ck-titre-tete .ck-canal-lib { margin-bottom: 0; }
#ppDif .ck-titre-compte { font-size: 13px; color: var(--ppd-muet); }
#ppDif [data-ck-titre] { height: 46px; padding: 0 14px; border: 1px solid var(--ppd-filet-fort); border-radius: 10px; background: var(--ppd-surface); font: 400 15px var(--pp-font); color: var(--ppd-texte); }
#ppDif [data-ck-titre]:focus { outline: none; border-color: var(--ppd-encre); box-shadow: 0 0 0 3px rgba(17, 19, 21, .08); }
#ppDif .ck-canal-lib { margin-bottom: 10px; font-size: 15px; font-weight: 700; color: var(--ppd-encre); }
#ppDif .ck-canal select { height: 46px; padding: 0 14px; border: 1px solid var(--ppd-filet-fort); border-radius: 10px; background-color: var(--ppd-surface); font: 500 15px var(--pp-font); color: var(--ppd-encre); cursor: pointer; }
#ppDif .ck-canal select:focus { outline: none; border-color: var(--ppd-encre); box-shadow: 0 0 0 3px rgba(17, 19, 21, .08); }
#ppDif .soc-z-apercu { order: 3; }
#ppDif .soc-z-texte { order: 4; }
#ppDif .soc-z-pied { order: 5; }
#ppDif .soc-z-libelle-visuel { order: 6; }
#ppDif .soc-z-image { order: 7; }
#ppDif .soc-z-visuel-actions { order: 8; }
#ppDif .soc-z-lien { order: 9; }
#ppDif .soc-z-quand { order: 10; }
#ppDif .soc-z-publie { order: 11; }
#ppDif .soc-z-action { order: 12; }
#ppDif .soc-z-titre, #ppDif .soc-z-igdl, #ppDif [data-social-online-hint] { display: none !important; }

.pp-rs-titre { margin: 0 0 12px; font-size: 16px; font-weight: 500; color: var(--ppd-encre); }
.pp-rs-onglets { display: flex; gap: 6px; margin-bottom: 22px; border-bottom: 1px solid var(--ppd-filet); }
.pp-rs-onglets button { margin-bottom: -1px; padding: 9px 14px; border: 0; border-bottom: 2px solid transparent; background: none; font: 600 14px var(--pp-font); color: var(--ppd-muet); cursor: pointer; }
.pp-rs-onglets button[aria-selected="true"] { color: var(--ppd-encre); border-bottom-color: var(--ppd-encre); }
.pp-rs-onglets button:focus-visible { outline: 2px solid var(--ppd-encre); outline-offset: -2px; }
.pp-rs-libelle { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
.pp-rs-libelle h4, .pp-rs-bloc h4 { margin: 0; font-size: 15px; font-weight: 700; color: var(--ppd-encre); }
.soc-z-libelle-visuel { margin-top: 10px; }
.pp-rs-reformuler { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border: 1px solid var(--ppd-filet-fort); border-radius: 8px; background: #fff; font: 600 13px var(--pp-font); color: var(--ppd-encre); cursor: pointer; }
.pp-rs-reformuler:hover { background: var(--ppd-fond); }
.pp-rs-reformuler .material-symbols-outlined { font-size: 16px; }
#ppDif .soc-z-texte > div:last-child { padding: 0 0 6px !important; }
#ppDif .social-post-text { min-height: 170px; padding: 14px 16px; border: 1px solid var(--ppd-filet-fort); border-radius: 10px; background: #fff; font-size: 14px !important; line-height: 1.6 !important; color: var(--ppd-texte) !important; }
#ppDif .social-post-text:focus { outline: 2px solid var(--ppd-encre); outline-offset: -1px; }
#ppDif .soc-z-pied { padding-bottom: 12px !important; }
#ppDif .soc-z-pied button[onclick^="regeneratePost"] { display: none; }
#ppDif .soc-z-pied > p { order: 2; margin-left: auto; font-size: 12px; color: var(--ppd-muet); }
#ppDif .soc-z-image { padding-top: 0 !important; padding-bottom: 10px !important; }
#ppDif .soc-z-image > div { border-radius: 8px; }
.pp-rs-visuel-actions { display: flex; gap: 22px; }
.pp-rs-visuel-actions button { display: inline-flex; align-items: center; gap: 6px; padding: 4px 0; border: 0; background: none; font: 600 13.5px var(--pp-font); color: var(--ppd-encre); cursor: pointer; }
.pp-rs-visuel-actions button:hover { text-decoration: underline; text-underline-offset: 3px; }
.pp-rs-visuel-actions .material-symbols-outlined { font-size: 18px; }
.pp-rs-bloc { margin-top: 24px; }
.pp-rs-bloc > h4 { margin-bottom: 10px; }
.pp-rs-lien { display: flex; align-items: center; gap: 10px; height: 44px; padding: 0 12px; border: 1px solid var(--ppd-filet-fort); border-radius: 10px; color: var(--ppd-encre); font-size: 14px; }
.pp-rs-lien > .material-symbols-outlined { font-size: 19px; color: var(--ppd-muet); }
.pp-rs-lien-url { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pp-rs-lien a { display: grid; place-items: center; color: var(--ppd-encre); }
.pp-rs-lien a .material-symbols-outlined { font-size: 19px; }
.pp-rs-note { margin: 6px 0 0; font-size: 12px; color: var(--ppd-muet); }

/* Aperçu */
.pp-rs-apercu { display: none; }
#ppDif [data-pp-vue="apercu"] .soc-body-inner > .pp-rs-apercu { display: grid; gap: 12px; padding: 14px !important; border: 1px solid var(--ppd-filet); border-radius: 12px; }
#ppDif [data-pp-vue="apercu"] :is(.soc-z-libelle-texte, .soc-z-texte, .soc-z-pied, .soc-z-libelle-visuel, .soc-z-image, .soc-z-visuel-actions, .soc-z-lien, .soc-z-quand) { display: none !important; }
.pp-rs-ap-tete { display: flex; align-items: center; gap: 10px; }
.pp-rs-ap-tete strong { display: block; font-size: 14px; color: var(--ppd-encre); }
.pp-rs-ap-tete small { font-size: 12px; color: var(--ppd-muet); }
.pp-rs-ap-avatar { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: var(--ppd-encre); color: #fff; font-weight: 700; }
.pp-rs-ap-texte { margin: 0; font-size: 14px; line-height: 1.55; white-space: pre-line; color: var(--ppd-texte); }
.pp-rs-ap-texte.is-vide { color: var(--ppd-muet); }
.pp-rs-apercu img { display: block; width: 100%; object-fit: cover; border-radius: 8px; }
.pp-rs-ap-lien { display: grid; gap: 2px; padding: 10px 12px; border-radius: 8px; background: var(--ppd-fond); }
.pp-rs-ap-lien small { font-size: 11.5px; text-transform: uppercase; letter-spacing: .04em; color: var(--ppd-muet); }
.pp-rs-ap-lien strong { font-size: 13.5px; color: var(--ppd-encre); }

/* Quand publier ? */
.pp-quand { margin: 24px 0 0; padding: 0; border: 0; min-width: 0; font-family: var(--pp-font); transition: opacity .15s; }
.pp-quand.is-busy { opacity: .55; pointer-events: none; }
.pp-quand legend { float: left; width: 100%; padding: 0; margin-bottom: 10px; }
.pp-quand-segments { clear: both; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2px; padding: 4px; border: 1px solid var(--ppd-filet); border-radius: 10px; background: #F1F1EF; }
.pp-quand-segments label { position: relative; display: block; cursor: pointer; }
.pp-quand-segments input { position: absolute; opacity: 0; pointer-events: none; }
.pp-quand-segments span { display: grid; place-items: center; height: 38px; padding: 0 6px; border-radius: 7px; font-size: 13.5px; font-weight: 500; color: var(--ppd-muet); text-align: center; transition: background-color .15s, color .15s; }
.pp-quand-segments label:hover span { color: var(--ppd-encre); }
.pp-quand-segments input:checked + span { background: #fff; color: var(--ppd-encre); font-weight: 600; box-shadow: 0 1px 2px rgba(17, 19, 21, .12); }
.pp-quand-segments input:focus-visible + span { outline: 2px solid var(--ppd-encre); outline-offset: 1px; }
.pp-quand-segments label.is-off { cursor: not-allowed; opacity: .45; }
.pp-quand-note { margin: 8px 0 0; font-size: 12px; line-height: 1.45; color: var(--ppd-muet); }
.pp-quand [data-pp-note] { display: none; }
.pp-quand[data-mode="maintenant"] [data-pp-note="maintenant"],
.pp-quand[data-mode="avec"] [data-pp-note="avec"] { display: block; }
.pp-quand[data-mode="programmer"] [data-pp-note="programmer"] { display: grid; gap: 8px; margin-top: 12px; }
.pp-quand-planif label { display: grid; gap: 4px; font-size: 12.5px; font-weight: 600; color: var(--ppd-encre); }
.pp-quand-planif input { height: 38px; padding: 0 10px; border: 1px solid var(--ppd-filet-fort); border-radius: 8px; background: #fff; font: 14px var(--pp-font); color: var(--ppd-encre); }
.pp-quand-planif .pp-gen-mod { height: 38px; }
.pp-quand-planif .pp-quand-note, .pp-quand-etat { grid-column: 1 / -1; margin: 0; }
.pp-quand-etat { display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--ppd-encre); }
.pp-quand-etat .material-symbols-outlined { font-size: 17px; }
.pp-quand .ppd-erreur { margin-top: 8px; }

/* Pied collant : l'état de l'enregistrement et l'action du réseau. */
#ppDif .soc-body-inner > .soc-z-action { position: sticky; bottom: 0; z-index: 3; margin: 28px -20px 0; padding: 12px 20px 18px !important; background: var(--ppd-surface); border-top: 1px solid var(--ppd-filet); }
#ppDif .soc-z-action button.w-full { height: 48px; border-radius: 10px !important; background-color: var(--ppd-encre) !important; box-shadow: none !important; font-size: 15px !important; }
#ppDif .soc-z-action button.w-full:hover:not(:disabled) { background-color: #2A2D30 !important; opacity: 1; }
/* L'ancienne fenêtre de partage Facebook reste un geste second. */
#ppDif .soc-z-action button[onclick="openFacebookShare()"] { height: 40px; margin-top: 8px; background: #fff !important; color: var(--ppd-encre) !important; border: 1px solid var(--ppd-filet-fort) !important; font-size: 13px !important; }
#ppDif .soc-z-action button[onclick="openFacebookShare()"] * { color: inherit !important; }
#ppDif .soc-z-action > p:not(.pp-rs-enregistre) { margin-top: 6px; }
/* Publication réussie : l'annonce en tête du panneau (15/10/2026). */
.pp-rs-succes { display: flex; align-items: center; gap: 12px; margin: 0 0 18px; padding: 14px 14px 14px 16px; border: 1px solid #BFE3CE; border-radius: 12px; background: linear-gradient(135deg, #EEF8F2, #E3F3EA); box-shadow: 0 6px 18px -10px rgba(46, 125, 79, .45); }
.pp-rs-succes[hidden] { display: none; }

/* ── Voile « Publication déjà faite » (_pp-deja-publie) — 22/10/2026 ──
   Tout canal déjà paru : le panneau est grisé, la phrase au centre de l'écran
   (sticky), « Republier » lève le voile en fondu (ppDejaRepublier). */
#ppDif .soc-body-inner { position: relative; }
.pp-deja { position: absolute; inset: -6px -20px 0; z-index: 6; background: rgba(246, 246, 245, .8); -webkit-backdrop-filter: grayscale(1) blur(2px); backdrop-filter: grayscale(1) blur(2px); transition: opacity .45s ease, visibility 0s linear 0s; }
.pp-deja.is-leve { opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .45s ease, visibility 0s linear .45s; }
.pp-deja-centre { position: sticky; top: 30vh; display: grid; justify-items: center; gap: 10px; padding: 24px; text-align: center; }
.pp-deja-logo { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; background: var(--ppd-surface); border: 1px solid var(--ppd-filet); color: var(--ppd-encre); box-shadow: 0 8px 24px -14px rgba(17, 19, 21, .35); }
.pp-deja-logo svg { width: 30px; height: 30px; }
.pp-deja-titre { margin: 4px 0 0; font-size: 16px; font-weight: 700; color: var(--ppd-encre); }
.pp-deja-date { margin: -4px 0 0; font-size: 13px; color: var(--ppd-muet); }
.pp-deja-voir { display: inline-flex; align-items: center; gap: 6px; height: 40px; margin-top: 4px; padding: 0 18px; border: 1px solid var(--ppd-filet-fort); border-radius: 10px; background: var(--ppd-surface); color: var(--ppd-encre); font: 600 14px var(--pp-font); text-decoration: none; }
.pp-deja-voir:hover { background: var(--ppd-fond); border-color: var(--ppd-encre); }
.pp-deja-voir:focus-visible { outline: 2px solid var(--ppd-encre); outline-offset: 3px; }
.pp-deja-voir .material-symbols-outlined { font-size: 17px; }
.pp-deja-btn { display: inline-flex; align-items: center; gap: 6px; height: 42px; margin-top: 6px; padding: 0 20px; border: 0; border-radius: 10px; background: var(--ppd-encre); color: #fff; font: 600 14px var(--pp-font); cursor: pointer; }
.pp-deja-btn:hover { background: #2A2D30; }
.pp-deja-btn:focus-visible { outline: 2px solid var(--ppd-encre); outline-offset: 3px; }
.pp-deja-btn .material-symbols-outlined { font-size: 18px; }
.pp-deja[hidden] { display: none; }
.pp-deja.is-entree { animation: ppDejaEntree .45s ease; }
@keyframes ppDejaEntree { from { opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .pp-deja, .pp-deja.is-leve { transition: none; } .pp-deja.is-entree { animation: none; } }

/* ── Canal assisté (Citykomi, PanneauPocket) dans le panneau — 22/10/2026 ──
   La carte pleine largeur à deux colonnes s'écrasait dans le panneau (titre
   et message à un mot par ligne). Une colonne, des champs encadrés, le pied
   collant : même grammaire que les panneaux des réseaux. */
#ppDif .ac-pp-only { display: revert; }
#ppDif .ac-card :is(.ac-lib-classique, .ac-mini-lib, .ac-drop-lib, .ac-steps, .ac-btn-ghost, .ac-gauge svg) { display: none !important; }
#ppDif .ac-card .soc-body-inner { gap: 0; }
.ac-pp-intro { display: flex !important; align-items: center; gap: 6px; margin: 2px 0 22px; font-size: 13px; color: var(--ppd-muet); }
.ac-pp-intro .material-symbols-outlined { font-size: 16px; }
/* Les deux colonnes se fondent en une seule liste, dans l'ordre de la
   maquette : titre, message, visuel, PDF, lien, dates. */
#ppDif .ac-grid { display: flex; flex-direction: column; gap: 24px; }
#ppDif .ac-col { display: contents; }
#ppDif .ac-col-main > .ac-field:first-child { order: 1; }
#ppDif .ac-field-msg { order: 2; }
#ppDif .ac-col-side > .ac-field:first-child { order: 3; }
#ppDif .ac-field-pdf { order: 4; }
#ppDif .ac-pp-titre { order: 5; }
#ppDif .ac-box-lien { order: 6; }
#ppDif [data-social-credit-line] { order: 7; }
#ppDif .ac-col-side .ac-box { order: 8; }
#ppDif .ac-card .ac-label { font-size: 15px; font-weight: 700; letter-spacing: 0; text-transform: none; color: var(--ppd-encre); }
#ppDif .ac-field { gap: 10px; }
#ppDif .ac-field-head { min-height: 24px; }
#ppDif .ac-count, #ppDif .ac-gauge, #ppDif .ac-gauge * { font-family: var(--pp-font) !important; }
#ppDif .ac-count { font-size: 13px; color: var(--ppd-muet); }
#ppDif .ac-mini { color: var(--ppd-encre); font: 600 13.5px var(--pp-font); }
#ppDif .ac-mini .material-symbols-outlined { font-size: 18px; }
#ppDif .ac-mini:hover { color: var(--ppd-encre); opacity: .7; }
#ppDif .ac-field-tools .ac-mini { color: var(--ppd-muet); }
#ppDif :is(.ac-title, .ac-msg) { margin: 0; padding: 13px 14px; border: 1px solid var(--ppd-filet-fort); border-radius: 10px; font-size: 15px; font-weight: 400; line-height: 1.55; color: var(--ppd-texte); }
#ppDif :is(.ac-title, .ac-msg):focus { outline: none; border-color: var(--ppd-encre); box-shadow: 0 0 0 3px rgba(17, 19, 21, .08); }
#ppDif .ac-title { min-height: 64px; }
#ppDif .ac-msg { min-height: 140px; }
/* Message : « Régénérer » en face du libellé, le compteur sous le champ. */
#ppDif .ac-field-msg { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 10px; row-gap: 10px; }
#ppDif .ac-field-msg > .ac-field-head { display: contents; }
#ppDif .ac-field-msg > .ac-field-head > span:first-child { grid-row: 1; grid-column: 1; align-self: center; }
#ppDif .ac-field-msg .ac-pp-regen { grid-row: 1; grid-column: 2; }
#ppDif .ac-field-msg > .ac-msg { grid-row: 2; grid-column: 1 / -1; }
#ppDif .ac-field-msg :is(.ac-gauge, .ac-count) { grid-row: 3; grid-column: 1 / -1; justify-self: end; margin-top: -4px; }
#ppDif .ac-gauge { gap: 4px; }
#ppDif .ac-gauge :is(.ac-gauge-n, .ac-gauge-max) { font-size: 13px; font-weight: 400; letter-spacing: 0; color: var(--ppd-muet); }
#ppDif .ac-gauge.is-over :is(.ac-gauge-n, .ac-gauge-max) { color: var(--ppd-alerte); font-weight: 600; }
.ac-pp-regen { display: inline-flex !important; align-items: center; gap: 6px; padding: 2px 0; border: 0; background: none; font: 600 14px var(--pp-font); color: var(--ppd-encre); cursor: pointer; }
.ac-pp-regen:hover:not(:disabled) { opacity: .7; }
.ac-pp-regen:disabled { opacity: .45; cursor: progress; }
.ac-pp-regen .material-symbols-outlined { font-size: 18px; }
/* Lien de l'article : un champ, et la copie en bout. */
.ac-pp-titre { margin-bottom: -14px; font-size: 15px; font-weight: 700; color: var(--ppd-encre); }
#ppDif .ac-col-main .ac-box { gap: 10px; height: 44px; padding: 0 0 0 12px; border: 1px solid var(--ppd-filet-fort); border-radius: 10px; background: var(--ppd-surface); }
#ppDif .ac-col-main .ac-box .ac-box-ico { font-size: 20px !important; color: var(--ppd-texte); }
#ppDif .ac-col-main .ac-box .ac-label { display: none; }
#ppDif .ac-col-main .ac-box .ac-mono { font: 400 14px var(--pp-font); color: var(--ppd-texte); }
#ppDif .ac-col-main .ac-box .ac-mini { align-self: stretch; justify-content: center; width: 44px; border-left: 1px solid var(--ppd-filet-fort); }
#ppDif .ac-box-lien .ac-warn { font-size: 13px; }
/* Visuel : la vignette et sa fiche côte à côte. */
#ppDif .ac-visual { display: grid; grid-template-columns: 172px minmax(0, 1fr); align-items: center; gap: 14px; padding: 10px; border: 1px solid var(--ppd-filet); border-radius: 12px; }
#ppDif .ac-visual-img img { height: 92px; border-radius: 8px; }
#ppDif .ac-visual-veil { border-radius: 8px; }
#ppDif .ac-visual-foot { flex-direction: column; align-items: flex-start; gap: 6px; padding: 0; }
.ac-pp-visuel-titre { font-size: 14px; font-weight: 600; color: var(--ppd-encre); }
#ppDif .ac-visual-foot .ac-mono { font: 400 13px var(--pp-font); color: var(--ppd-muet); letter-spacing: 0; }
#ppDif .ac-visual-foot .ac-mini { margin-top: 4px; }
#ppDif .ac-note-warn { font-size: 13px; }
/* Document PDF : un cadre en pointillé, facultatif dit à côté du titre. */
#ppDif .ac-field-pdf { gap: 12px; padding: 14px 16px; border: 1px dashed var(--ppd-filet-fort); border-radius: 12px; }
#ppDif .ac-field-pdf .ac-field-head { justify-content: flex-start; }
#ppDif .ac-field-pdf .ac-label { font-size: 14px; }
#ppDif .ac-opt { font-size: 12.5px; color: var(--ppd-muet); }
#ppDif .ac-drop { gap: 12px; padding: 0; border: 0; background: none; }
#ppDif .ac-drop > .material-symbols-outlined { font-size: 22px; color: var(--ppd-muet); }
.ac-drop-court { flex: 1; min-width: 0; font-size: 13.5px; color: var(--ppd-muet); }
.ac-drop-biblio { display: inline-flex !important; align-items: center; gap: 4px; font-size: 13.5px; font-weight: 600; color: var(--ppd-encre); text-decoration: none; }
.ac-drop-biblio:hover { text-decoration: underline; text-underline-offset: 3px; }
.ac-drop-biblio .material-symbols-outlined { font-size: 16px; }
#ppDif .ac-pdf { border: 1px solid var(--ppd-filet-fort); border-radius: 10px; background: var(--ppd-surface); }
/* Dates : des lignes, séparées d'un filet. */
#ppDif .ac-col-side .ac-box { gap: 14px; padding: 16px 0 0; border: 0; border-top: 1px solid var(--ppd-filet); border-radius: 0; background: none; }
#ppDif .ac-col-side .ac-box-ico { font-size: 24px !important; color: var(--ppd-encre); }
#ppDif .ac-col-side .ac-box .ac-label { font-size: 14px; font-weight: 600; }
#ppDif .ac-col-side .ac-box-val { font-size: 14px; color: var(--ppd-muet); }
#ppDif .ac-col-side .ac-box .ac-mini-lib { display: inline !important; }
/* Lien du message publié : sous les pièces, avant le pied. */
#ppDif .ac-published { margin-top: 24px; padding: 0; border: 0; }
#ppDif .ac-published .ac-label { font-size: 14px; }
#ppDif .ac-input { height: 44px; border: 1px solid var(--ppd-filet-fort); border-radius: 10px; font-size: 14px; }
/* Pied collant : Ouvrir, puis les deux copies. */
#ppDif .ac-actions { position: sticky; bottom: 0; z-index: 3; order: 99; margin: 28px -20px 0; padding: 12px 20px 18px; background: var(--ppd-surface); border-top: 1px solid var(--ppd-filet); }
#ppDif .ac-actions-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
#ppDif .ac-btn { justify-content: center; height: 46px; border: 1px solid var(--ppd-filet-fort); border-radius: 10px; background: var(--ppd-surface); color: var(--ppd-encre); font: 600 14px var(--pp-font); }
#ppDif .ac-btn:hover:not(:disabled) { border-color: var(--ppd-encre); color: var(--ppd-encre); background: var(--ppd-fond); }
#ppDif .ac-btn .material-symbols-outlined { font-size: 19px; }
#ppDif .ac-btn-primary { grid-column: 1 / -1; height: 48px; border-color: var(--ppd-encre); background: var(--ppd-encre); color: #fff; font-size: 15px; }
#ppDif .ac-btn-primary:hover:not(:disabled) { background: #2A2D30; color: #fff; }
.pp-rs-succes.is-entree { animation: pp-rs-succes-entree .45s cubic-bezier(.22, .61, .36, 1) both; }
@keyframes pp-rs-succes-entree { from { opacity: 0; transform: translateY(-8px) scale(.98); } }
.pp-rs-succes-ico { display: grid; place-items: center; flex: none; width: 36px; height: 36px; border-radius: 50%; background: var(--ppd-ok); color: #fff; box-shadow: 0 0 0 4px rgba(46, 125, 79, .14); }
.pp-rs-succes-ico .material-symbols-outlined { font-size: 21px; font-weight: 700; }
.pp-rs-succes-txt { flex: 1; min-width: 0; display: grid; gap: 1px; }
.pp-rs-succes-txt strong { font-size: 15px; font-weight: 700; color: #17482D; }
.pp-rs-succes-txt span { font-size: 12.5px; color: #3E6B52; }
.pp-rs-succes-lien { display: inline-flex; align-items: center; gap: 4px; flex: none; height: 34px; padding: 0 12px; border-radius: 8px; background: var(--ppd-ok); color: #fff !important; font: 600 13px var(--pp-font); text-decoration: none !important; }
.pp-rs-succes-lien:hover { background: #256B42; }
.pp-rs-succes-lien[hidden] { display: none; }
.pp-rs-succes-lien .material-symbols-outlined { font-size: 16px; }
.pp-rs-succes-x { display: grid; place-items: center; flex: none; width: 28px; height: 28px; border: 0; border-radius: 7px; background: none; color: #3E6B52; cursor: pointer; }
.pp-rs-succes-x:hover { background: rgba(46, 125, 79, .12); }
.pp-rs-succes-x .material-symbols-outlined { font-size: 18px; }
@media (prefers-reduced-motion: reduce) { .pp-rs-succes.is-entree { animation: none; } }

/* Le bouton du pied suit « Quand publier ? » : Publier (Maintenant) OU Enregistrer. */
#ppDif .soc-z-action [hidden] { display: none !important; }
.pp-rs-enregistrer { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 0 16px; border: 0; color: #fff; font-weight: 600; cursor: pointer; }
.pp-rs-enregistrer .material-symbols-outlined { font-size: 18px; }
.pp-rs-enregistrer:disabled { opacity: .4; cursor: not-allowed; }
.pp-rs-enregistrer.is-publishing { opacity: .6; pointer-events: none; }
.pp-rs-enregistre { display: flex; align-items: center; gap: 6px; margin: 0 0 10px; font-size: 12.5px; color: var(--ppd-muet); }
.pp-rs-enregistre .material-symbols-outlined { font-size: 16px; }
.pp-rs-enregistre[data-etat="encours"] .material-symbols-outlined { animation: pp-gen-tourne 1s linear infinite; }
.pp-rs-enregistre[data-etat="echec"] { color: var(--ppd-alerte); }
#ppDif .soc-z-publie { border-top: 0 !important; margin-top: 18px; padding-top: 0 !important; }
@media (prefers-reduced-motion: reduce) { .ppd-rs-ligne, .pp-quand-segments span { transition: none; } }

/* Repère visuel sur la carte Planification quand « Programmer » y mène. */
#scheduleCard.pp-repere { box-shadow: 0 0 0 3px rgba(62, 138, 149, .45) !important; transition: box-shadow .3s; }

/* ─── Tiroir latéral générique (Ajouter un canal) ───────────────────────── */

.pp-voile {
    position: fixed; inset: 0; z-index: 46;
    background: rgba(17, 24, 28, .35);
    opacity: 0; visibility: hidden;
    transition: opacity .28s ease, visibility 0s linear .28s;
}
.pp-voile.is-ouvert { opacity: 1; visibility: visible; transition: opacity .28s ease, visibility 0s; }
.pp-tiroir {
    position: fixed; top: 0; right: 0; bottom: 0; z-index: 47;
    width: 420px; max-width: 100vw;
    display: flex; flex-direction: column;
    background: #fff; border-left: 1px solid var(--pp-border);
    box-shadow: -16px 0 40px rgba(17, 24, 28, .16);
    font-family: var(--pp-font); color: var(--pp-text);
    transform: translateX(100%); visibility: hidden;
    transition: transform .32s cubic-bezier(.22, .61, .36, 1), visibility 0s linear .32s;
}
.pp-tiroir.is-ouvert { transform: none; visibility: visible; transition: transform .32s cubic-bezier(.22, .61, .36, 1), visibility 0s; }
@media (prefers-reduced-motion: reduce) { .pp-tiroir, .pp-tiroir.is-ouvert, .pp-voile, .pp-voile.is-ouvert { transition: none !important; } }
.pp-tiroir-tete { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 18px 18px 10px; }
.pp-tiroir-tete h2 { margin: 0; font-size: 18px; font-weight: 700; }
.pp-tiroir-tete p { margin: 4px 0 0; font-size: 13px; color: var(--pp-muted); }
.pp-tiroir-corps { flex: 1; overflow-y: auto; padding: 4px 18px 16px; }
.pp-tiroir-corps h3 { margin: 16px 0 8px; font-size: 13px; font-weight: 700; }
.pp-tiroir-pied { padding: 14px 18px; border-top: 1px solid var(--pp-border); }
.pp-ajout-liste { list-style: none; margin: 0; padding: 0; border: 1px solid var(--pp-border); border-radius: 12px; overflow: hidden; }
.pp-ajout-liste li { display: flex; align-items: center; gap: 10px; padding: 10px 12px; }
.pp-ajout-liste li + li { border-top: 1px solid var(--pp-border); }
.pp-ajout-action { flex: none; display: flex; align-items: center; }
.pp-ajout-action .pp-btn { height: 32px; padding: 0 12px; font-size: 13px; }
.pp-ajout-action form { margin: 0; }
.pp-ajout-etat[data-ton="ok"] { color: #1E7A50; }
.pp-ajout-etat[data-ton="alerte"] { color: #9A5B00; }
.pp-ajout-note { font-size: 11.5px; color: var(--pp-muted); }
.pp-ajout-instance { display: flex; gap: 6px; }
.pp-ajout-instance input { width: 120px; height: 32px; padding: 0 8px; border: 1px solid var(--pp-border); border-radius: 8px; font: 12.5px ui-monospace, monospace; }

/* ─── Nouvelle publication & import Word ─────────────────────────────────── */

html.pp-theme .pp-nouvelle > summary { height: 44px; padding: 0 16px; font-size: 14px; }
html.pp-theme .pp-nouvelle .pp-menu-liste { min-width: 280px; }
html.pp-theme .pp-import-modele { padding: 14px; border: 1px solid var(--pp-border); border-radius: 12px; background: #FAFAF8; font-family: var(--pp-font); }
html.pp-theme .pp-import-modele-tete { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 8px; }
html.pp-theme .pp-import-modele-tete label { font-size: 13.5px; font-weight: 700; color: var(--pp-text); }
html.pp-theme .pp-import-modele-tete a { font-size: 13px; font-weight: 600; color: var(--pp-accent-hover) !important; }
html.pp-theme .pp-import-modele select { width: 100%; height: 42px; padding: 0 12px; border: 1px solid var(--pp-border-strong); border-radius: 10px; background: #fff; font: 500 14px var(--pp-font); }
html.pp-theme .pp-import-modele-desc { margin: 8px 0 0; font-size: 12.5px; line-height: 1.45; color: var(--pp-muted); }
html.pp-theme .pp-import-modele-desc:empty { display: none; }

/* ─── Bibliothèque ───────────────────────────────────────────────────────── */

html.pp-theme .pp-biblio-tete { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 14px; font-family: var(--pp-font); }
html.pp-theme .pp-biblio-tete h1 { margin: 0; font-size: 28px; font-weight: 800; letter-spacing: -.01em; }
html.pp-theme .pp-biblio-tete p { margin: 2px 0 0; font-size: 15px; color: var(--pp-muted); }
.pp-autour-affiche { aspect-ratio: auto !important; max-height: 260px; object-fit: contain !important; margin-bottom: 6px; }
.pp-visuel-affiche { max-height: 360px; }

/* ─── Règles automatiques ───────────────────────────────────────────────── */

html.pp-theme body:not(.pp-regles-avance) #ppScenario { display: none; }
.pp-regles { font-family: var(--pp-font); max-width: 980px; }
.pp-regles-tete { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.pp-regles-tete h1 { margin: 0; font-size: 28px; font-weight: 800; letter-spacing: -.01em; }
.pp-regles-tete p { margin: 2px 0 0; font-size: 15px; color: var(--pp-muted); }
.pp-regles section { display: flex; flex-direction: column; gap: 10px; }
.pp-regles section[hidden] { display: none; }
.pp-regle { display: flex; align-items: flex-start; gap: 14px; padding: 16px; background: #fff; border: 1px solid var(--pp-border); border-radius: 12px; }
.pp-regle-ico { display: grid; place-items: center; width: 40px; height: 40px; flex: none; border-radius: 50%; background: var(--pp-accent-soft); color: var(--pp-accent-hover); font-size: 20px !important; }
.pp-regle-corps { flex: 1; min-width: 0; }
.pp-regle-corps h2 { margin: 0 0 4px; font-size: 15.5px; font-weight: 700; }
.pp-regle-corps p { margin: 2px 0; font-size: 13.5px; color: var(--pp-text); }
.pp-regle-corps strong { font-weight: 600; color: var(--pp-muted); margin-right: 4px; }
.pp-regle-der { color: var(--pp-muted) !important; font-size: 12.5px !important; margin-top: 6px !important; }
.pp-regle-err { color: #9A3B2E; }
/* Règles archivées (audit AU-009) : repliées sous la liste, en retrait. */
.pp-regles-archives { margin-top: 8px; }
.pp-regles-archives > summary { cursor: pointer; font-size: 13.5px; font-weight: 600; color: var(--pp-muted); padding: 6px 0; }
.pp-regles-archives[open] > summary { margin-bottom: 8px; }
.pp-regles-archives .pp-regle + .pp-regle { margin-top: 10px; }
.pp-regle-archivee { background: transparent; }
.pp-regle-archivee .pp-regle-ico { background: var(--pp-border); color: var(--pp-muted); }
@media (max-width: 767px) { .pp-regle-archivee { flex-wrap: wrap; } .pp-regle-archivee form { width: 100%; } }
/* Interrupteur accessible : une vraie case à cocher, dessinée. */
.pp-interrupteur { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; flex: none; }
.pp-interrupteur input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.pp-interrupteur span { width: 38px; height: 22px; border-radius: 999px; background: #CBD2D6; position: relative; transition: background-color .2s ease; }
.pp-interrupteur span::after { content: ""; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: #fff; box-shadow: 0 1px 2px rgba(0,0,0,.2); transition: transform .2s ease; }
.pp-interrupteur input:checked + span { background: var(--pp-accent); }
.pp-interrupteur input:checked + span::after { transform: translateX(16px); }
.pp-interrupteur input:focus-visible + span { box-shadow: var(--pp-focus); }
.pp-interrupteur em { font-style: normal; font-size: 13px; font-weight: 600; min-width: 64px; }

/* ─── Réglages ───────────────────────────────────────────────────────────── */

/* La colonne d'onglets de la page : claire et compacte (maquette 22). */
html.pp-theme #settingsSidebar {
    width: 240px !important; min-width: 240px !important;
    background: transparent !important; box-shadow: none !important;
    padding: 24px 0 0 16px;
}
html.pp-theme #settingsSidebar > div:first-child { display: none; }   /* « Réglages / Prepress Editor » */
html.pp-theme #settingsSidebar > div:last-child { display: none; }    /* « v2.0 » */
html.pp-theme #settingsSidebar nav { background: #fff; border: 1px solid var(--pp-border); border-radius: 12px; padding: 6px !important; }
html.pp-theme #settingsSidebar .sidebar-tab {
    color: var(--pp-text) !important; border-radius: 8px !important; padding: 9px 10px !important;
    font-family: var(--pp-font); font-weight: 500 !important; font-size: 13.5px !important;
}
html.pp-theme #settingsSidebar .sidebar-tab .material-symbols-outlined { color: var(--pp-muted) !important; font-size: 19px !important; }
html.pp-theme #settingsSidebar .sidebar-tab:hover { background: var(--pp-bg) !important; color: var(--pp-text) !important; }
html.pp-theme #settingsSidebar .sidebar-tab.active { background: var(--pp-accent-soft) !important; color: var(--pp-accent-hover) !important; font-weight: 600 !important; }
html.pp-theme #settingsSidebar .sidebar-tab.active .material-symbols-outlined { color: var(--pp-accent-hover) !important; }
html.pp-theme #settingsSidebar .tab-badge { background: var(--pp-bg) !important; color: var(--pp-muted) !important; }
.pp-reglages-liens { margin-top: 10px; padding: 6px; background: #fff; border: 1px solid var(--pp-border); border-radius: 12px; display: flex; flex-direction: column; }
.pp-reglages-liens a { display: flex; align-items: center; gap: 10px; padding: 9px 10px; border-radius: 8px; color: var(--pp-text) !important; text-decoration: none !important; font: 500 13.5px var(--pp-font); }
.pp-reglages-liens a:hover { background: var(--pp-bg); }
.pp-reglages-liens .material-symbols-outlined { font-size: 19px; color: var(--pp-muted); }
.pp-reglages-liens a.is-actif { background: var(--pp-accent-soft); color: var(--pp-accent-hover) !important; font-weight: 600; }
.pp-reglages-liens a.is-actif .material-symbols-outlined { color: var(--pp-accent-hover); }
/* Règles automatiques, rangée sous Réglages : même largeur utile que les réglages. */
.pp-automatisation-contenu { max-width: 1040px; }

.pp-reglages-tete { margin: 0 0 18px; font-family: var(--pp-font); }
.pp-reglages-tete h1 { margin: 0; font-size: 28px; font-weight: 800; letter-spacing: -.01em; }
.pp-reglages-tete p { margin: 2px 0 0; font-size: 15px; color: var(--pp-muted); }
.pp-reglages-grille { display: grid; grid-template-columns: minmax(0, 1fr) 260px; gap: 20px; align-items: start; }
.pp-reglages-grille > #settingsContent { max-width: none !important; }
@media (max-width: 1279px) { .pp-reglages-grille { grid-template-columns: minmax(0, 1fr); } .pp-reglages-aide { display: none; } }
.pp-reglages-aide { position: sticky; top: 20px; background: #fff; border: 1px solid var(--pp-border); border-radius: 12px; padding: 14px; font-family: var(--pp-font); }
.pp-reglages-aide h2 { display: flex; align-items: center; gap: 6px; margin: 0 0 10px; font-size: 14px; font-weight: 700; }
.pp-reglages-aide h2 .material-symbols-outlined { font-size: 18px; color: var(--pp-muted); }
.pp-reglages-aide div { padding: 10px 0; border-top: 1px solid var(--pp-border); }
.pp-reglages-aide strong { font-size: 13px; }
.pp-reglages-aide p { margin: 3px 0 0; font-size: 12.5px; color: var(--pp-muted); line-height: 1.45; }
.pp-reglages-aide a { color: var(--pp-accent-hover) !important; font-weight: 600; }
.pp-portee { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; font: 13px/1.5 var(--pp-font); color: var(--pp-muted); }

/* Cartes des Réglages : surfaces blanches, filet fin, sans dégradé ni ombre
   (brief §27 : une hiérarchie stable plutôt qu'une accumulation de cartes). */
html.pp-theme .settings-card { border-radius: 12px !important; border-color: var(--pp-border) !important; box-shadow: none !important; }
html.pp-theme .settings-card:hover { box-shadow: none !important; }
html.pp-theme .settings-card > div:first-child[class*="bg-gradient"] { background: #fff !important; }
html.pp-theme #settingsContent h2.text-xl { font-family: var(--pp-font); font-size: 20px !important; }
/* Boutons d'enregistrement noirs (#333) → turquoise : l'action principale. */
html.pp-theme #settingsContent button[type="submit"].bg-\[\#333333\] { background: var(--pp-accent) !important; }
html.pp-theme #messagingSwitch.sw-on, html.pp-theme #ccSenderSwitch.sw-on, html.pp-theme .ac-switch.sw-on { background: var(--pp-accent) !important; }
html.pp-theme #settingsSidebar nav { flex: none !important; }
/* Sous 1024 px, le menu principal est un tiroir : la colonne d'onglets
   passe AU-DESSUS du contenu, en une rangée qui défile — en colonne de
   240 px, elle poussait les réglages hors de l'écran (+268 px à 390 px). */
@media (max-width: 1023px) {
    html.pp-theme #settingsShell { flex-direction: column; }
    html.pp-theme #settingsSidebar { width: auto !important; min-width: 0 !important; padding: 16px 16px 0 !important; }
    html.pp-theme #settingsSidebar nav,
    html.pp-theme #settingsSidebar .pp-reglages-liens { flex-direction: row; overflow-x: auto; scrollbar-width: none; }
    html.pp-theme #settingsSidebar nav { display: flex; gap: 2px; }
    html.pp-theme #settingsSidebar .sidebar-tab,
    html.pp-theme #settingsSidebar .pp-reglages-liens a { width: auto !important; flex: none; white-space: nowrap; }
    html.pp-theme #settingsSidebar .tab-badge { margin-left: 6px !important; }
}
.pp-cle { display: flex; gap: 8px; align-items: center; }
.pp-cle input { flex: 1; }
.pp-cle .pp-btn { height: 46px; }

/* ─── Image et affiche cliquables (onglet Visuel, colonne « Autour ») ─────
   Clic = l'outil (Prepress Studio / Poster maker). Survol fluide : la photo
   grossit légèrement dans son cadre, une ombre la soulève, un voile annonce
   l'outil. Le focus clavier montre la même chose. */
.pp-ouvrir {
    position: relative; display: block; overflow: hidden;
    border-radius: 8px; cursor: pointer;
    transition: box-shadow .3s cubic-bezier(.22, .61, .36, 1), transform .3s cubic-bezier(.22, .61, .36, 1);
}
.pp-ouvrir img { display: block; transition: transform .45s cubic-bezier(.22, .61, .36, 1), filter .3s ease; }
.pp-ouvrir-voile {
    position: absolute; inset: 0; display: flex; align-items: flex-end; justify-content: center;
    padding: 12px; background: linear-gradient(to top, rgba(17, 24, 28, .55), rgba(17, 24, 28, 0) 55%);
    opacity: 0; transition: opacity .3s ease;
}
.pp-ouvrir-voile > span {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 6px 12px; border-radius: 999px;
    background: rgba(255, 255, 255, .94); color: var(--pp-text);
    font: 600 12.5px var(--pp-font);
    transform: translateY(6px); transition: transform .3s cubic-bezier(.22, .61, .36, 1);
}
.pp-ouvrir-voile .material-symbols-outlined { font-size: 16px; color: var(--pp-accent-hover); }
.pp-ouvrir:hover, .pp-ouvrir:focus-visible { box-shadow: 0 10px 28px rgba(17, 24, 28, .18); transform: translateY(-2px); }
.pp-ouvrir:hover img, .pp-ouvrir:focus-visible img { transform: scale(1.03); }
.pp-ouvrir:hover .pp-ouvrir-voile, .pp-ouvrir:focus-visible .pp-ouvrir-voile { opacity: 1; }
.pp-ouvrir:hover .pp-ouvrir-voile > span, .pp-ouvrir:focus-visible .pp-ouvrir-voile > span { transform: none; }
/* Dans la colonne étroite : le libellé se fait plus petit. */
.pp-autour .pp-ouvrir-voile > span { padding: 4px 10px; font-size: 11.5px; }
.pp-autour .pp-ouvrir { margin-bottom: 6px; }
.pp-autour .pp-ouvrir .pp-autour-affiche { margin-bottom: 0; }
@media (prefers-reduced-motion: reduce) {
    .pp-ouvrir, .pp-ouvrir img, .pp-ouvrir-voile, .pp-ouvrir-voile > span { transition: none !important; }
    .pp-ouvrir:hover, .pp-ouvrir:hover img { transform: none; }
}

/* Colonne de droite de l'éditeur : ni capture d'écran ni liens Online / Admin
   (Gérald, 09/10/2026). Masqués et non retirés : editor.js met encore la
   capture à jour en place (updateScreenshotInPlace) ; « Aperçu », en haut,
   ouvre déjà l'article en ligne. */
html.pp-theme #screenshotBlock,
html.pp-theme #screenshotPlaceholder,
html.pp-theme #sidebar-apercu [data-wp-box="links"] { display: none !important; }

/* ─── Transitions entre pages (View Transitions, 09/10/2026) ──────────────
   Changer de page fait un fondu court au lieu d'un écran blanc, et le menu
   charbon ne bouge pas : il porte son propre nom de transition, sans
   animation. Les deux pages doivent être sous le thème (même feuille).
   Navigateurs sans prise en charge : navigation ordinaire, rien ne casse. */
@view-transition { navigation: auto; }
#ppSidebar { view-transition-name: pp-menu; }
::view-transition-group(pp-menu),
::view-transition-old(pp-menu),
::view-transition-new(pp-menu) { animation: none; }
::view-transition-old(root) { animation: pp-vt-sortie .16s ease both; }
::view-transition-new(root) { animation: pp-vt-entree .24s cubic-bezier(.22, .61, .36, 1) both; }
@keyframes pp-vt-sortie { to { opacity: 0; } }
@keyframes pp-vt-entree { from { opacity: 0; transform: translateY(4px); } }
@media (prefers-reduced-motion: reduce) {
    @view-transition { navigation: none; }
}

/* Changement de panneau dans l'éditeur (09/10/2026) : onglets Fonctions /
   Collab. de la colonne de droite, et canal choisi dans Diffusion. */
html.pp-theme #sidebarLeft .sidebar-tab-content:not(.hidden),
#ppDif .pp-dif-wp,
#ppDifReseaux [data-social-card] { animation: pp-panneau-entree .24s cubic-bezier(.22, .61, .36, 1) both; }
@keyframes pp-panneau-entree { from { opacity: 0; transform: translateX(8px); } }
@media (prefers-reduced-motion: reduce) {
    html.pp-theme #sidebarLeft .sidebar-tab-content:not(.hidden), #ppDif .pp-dif-wp, #ppDifReseaux [data-social-card] { animation: none; }
}

/* Utilisation du site, sous Réglages (menu charbon). */
.pp-conso { list-style: none; margin: 8px 0 4px; padding: 10px 10px 4px; border-top: 1px solid var(--pp-charbon-3); }
.pp-conso-titre { display: block; margin-bottom: 8px; font-size: 11px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: #8C989F !important; text-decoration: none !important; }
.pp-conso-titre:hover { color: #fff !important; }
.pp-conso-ligne { margin-bottom: 8px; }
.pp-conso-tete { display: flex; justify-content: space-between; font-size: 12px; color: #D3DADD; }
.pp-conso-tete span:last-child { font-variant-numeric: tabular-nums; color: #AEB8BD; }
.pp-conso-ligne.is-orange .pp-conso-tete span:last-child { color: #E0A33A; }
.pp-conso-ligne.is-rouge .pp-conso-tete span:last-child { color: #F0776B; }
.pp-conso-barre { display: block; height: 4px; margin-top: 4px; border-radius: 99px; background: var(--pp-charbon-3); overflow: hidden; }
.pp-conso-barre > span { display: block; height: 100%; border-radius: inherit; background: #2F9E6B; transition: width .4s cubic-bezier(.22, .61, .36, 1); }
.pp-conso-ligne.is-orange .pp-conso-barre > span { background: #E0A33A; }
.pp-conso-ligne.is-rouge .pp-conso-barre > span { background: #D63638; }

/* ─── Fenêtre de publication (maquette du 09/10/2026) ──────────────────────
   Même balisage, mêmes identifiants : la feuille réorganise l'existant.
   « Avant la mise à jour » et « Visibilité » sont toujours ouverts ; seule
   la Diffusion (absente de la maquette, conservée) reste un volet repliable. */
#publishModal.pp-pm #pmCard { max-width: 720px !important; background: #fff !important; border-color: var(--pp-border) !important; border-radius: 16px !important; font-family: var(--pp-font); }
#publishModal.pp-pm #pmHeader, #publishModal.pp-pm #pmFooter { background: #fff !important; border-color: var(--pp-border) !important; padding: 18px 24px !important; }
#publishModal.pp-pm #pmHeader > .pm-h-title, #publishModal.pp-pm #pmHeader > .pm-h-host, #publishModal.pp-pm #pmHeader > .pm-h-badge { display: none !important; }
.pp-pm-logo { display: grid; place-items: center; width: 44px; height: 44px; flex: none; border-radius: 10px; background: #EAF3F8; color: #21759B; }
.pp-pm-titres { flex: 1; min-width: 0; }
.pp-pm-titre { font-size: 19px; font-weight: 700; color: var(--pp-text); line-height: 1.25; }
.pp-pm-sous { margin-top: 2px; font-size: 13px; color: var(--pp-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pp-pm-etat { font-weight: 600; }
.pp-pm-etat::before { content: ""; display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 5px; vertical-align: 1px; }
.pp-pm-etat.is-ok { color: #1E7A50; } .pp-pm-etat.is-ok::before { background: #2F9E6B; }
.pp-pm-etat.is-warn { color: #9A5B00; } .pp-pm-etat.is-warn::before { background: #E0A33A; }

/* Sections : « Avant… » et « Visibilité » ouverts, en-têtes en simples titres. */
#publishModal.pp-pm .pm-acc[data-acc="preflight"] > .pm-acc-body,
#publishModal.pp-pm .pm-acc[data-acc="mode"] > .pm-acc-body { grid-template-rows: 1fr !important; }
#publishModal.pp-pm .pm-acc[data-acc="preflight"] > .pm-acc-body > .pm-acc-body-inner,
#publishModal.pp-pm .pm-acc[data-acc="mode"] > .pm-acc-body > .pm-acc-body-inner { padding: 0 24px 18px !important; }
#publishModal.pp-pm .pm-acc[data-acc="preflight"] > .pm-acc-head,
#publishModal.pp-pm .pm-acc[data-acc="mode"] > .pm-acc-head { pointer-events: none; padding: 18px 24px 10px !important; }
#publishModal.pp-pm .pm-acc[data-acc="preflight"] .pm-acc-chevron, #publishModal.pp-pm .pm-acc[data-acc="mode"] .pm-acc-chevron,
#publishModal.pp-pm #pmPreflightTrack, #publishModal.pp-pm #pmPreflightCount, #publishModal.pp-pm #pmModeResume,
#publishModal.pp-pm .pm-acc[data-acc="preflight"] .pm-acc-fill, #publishModal.pp-pm .pm-acc[data-acc="mode"] .pm-acc-fill { display: none !important; }
#publishModal.pp-pm .pm-acc-title { font-family: var(--pp-font) !important; font-size: 17px !important; font-weight: 700 !important; color: var(--pp-text) !important; letter-spacing: 0 !important; text-transform: none !important; }
#publishModal.pp-pm .pm-acc { border-color: var(--pp-border) !important; }
.pp-pm-badge { margin-left: 10px; padding: 3px 10px; border-radius: 999px; background: #FDF4E3; border: 1px solid #F2D9A8; color: #8A5A0B; font-size: 12.5px; font-weight: 600; }
.pp-pm-badge.is-ok { background: #E9F6EF; border-color: #BFE3CE; color: #1E5E3F; }

/* Les contrôles : seuls ceux à revoir, en lignes larges. */
#publishModal.pp-pm .pm-check-item {
    display: grid !important; grid-template-columns: 34px 1fr auto; grid-template-areas: "ico nom act" "ico det act";
    column-gap: 14px; align-items: center; padding: 12px 0 !important; border-bottom: 1px solid #EFEDE8 !important;
}
#publishModal.pp-pm .pm-check-item:has(.pm-badge-pass) { display: none !important; }
#publishModal.pp-pm.pp-pm-tout .pm-check-item:has(.pm-badge-pass) { display: grid !important; }
#publishModal.pp-pm .pm-check-icon { grid-area: ico; width: 30px !important; height: 30px !important; border-radius: 50% !important; }
#publishModal.pp-pm .pm-check-label { grid-area: nom; font-size: 15px !important; font-weight: 600 !important; color: var(--pp-text) !important; }
#publishModal.pp-pm .pm-check-detail { grid-area: det; font-size: 13px !important; color: var(--pp-muted) !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: none !important; text-align: left !important; }
#publishModal.pp-pm .pm-check-fix { grid-area: act; min-width: 112px; height: 38px; padding: 0 14px !important; border: 1px solid var(--pp-border-strong) !important; border-radius: 9px !important; background: #fff !important; color: var(--pp-accent-hover) !important; font: 600 13.5px var(--pp-font) !important; }
#publishModal.pp-pm .pm-check-fix:hover { background: var(--pp-accent-soft) !important; }
.pp-pm-valides { display: flex; align-items: center; gap: 12px; padding: 14px 0 2px; font-size: 14px; font-weight: 600; color: #1E7A50; }
.pp-pm-valides[hidden] { display: none; }
.pp-pm-valides-ico { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #E9F6EF; color: #2F9E6B; margin-left: 2px; }
#ppPmVoirTout { margin-left: auto; border: 0; background: none; color: var(--pp-accent-hover); font: 600 13.5px var(--pp-font); text-decoration: underline; cursor: pointer; }

/* Visibilité : deux cartes côte à côte, l'explication dessous. */
#publishModal.pp-pm #pmAccMode .pm-acc-body-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
#publishModal.pp-pm .pm-mode-card { margin: 0 !important; align-items: center !important; padding: 14px 16px !important; border: 1px solid var(--pp-border-strong) !important; border-radius: 10px !important; background: #fff !important; flex-direction: row-reverse; }
#publishModal.pp-pm .pm-mode-card:has(input:checked) { border-color: var(--pp-accent) !important; background: var(--pp-accent-soft) !important; box-shadow: 0 0 0 1px var(--pp-accent) inset; }
#publishModal.pp-pm .pm-mode-card:has(input:checked) .pm-radio-ring { border-color: var(--pp-accent) !important; }
#publishModal.pp-pm .pm-mode-card:has(input:checked) .pm-radio-dot { background: var(--pp-accent) !important; }
#publishModal.pp-pm .pm-mode-card:has(input:checked) .pm-mode-icon { color: var(--pp-accent-hover) !important; }
#publishModal.pp-pm .pm-mode-desc { display: none !important; }
#publishModal.pp-pm .pm-mode-nom { font-size: 15px !important; font-weight: 500 !important; }
.pp-pm-mode-aide { grid-column: 1 / -1; margin: 2px 0 0; font-size: 13px; color: var(--pp-muted); }
@media (max-width: 560px) { #publishModal.pp-pm #pmAccMode .pm-acc-body-inner { grid-template-columns: 1fr; } }

/* Pied : Autres actions à gauche, Annuler et l'action principale à droite. */
#publishModal.pp-pm #pmFooter { gap: 12px !important; }
.pp-pm-autres { order: -1; }
.pp-pm-autres > summary { height: 44px; padding: 0 14px; }
.pp-pm-autres > summary .material-symbols-outlined { font-size: 18px; }
.pp-pm-autres .pp-menu-liste { top: auto; bottom: calc(100% + 6px); left: 0; right: auto; }
.pp-pm-autres .pp-menu-liste > button { justify-content: flex-start !important; border: 0 !important; background: transparent !important; box-shadow: none !important; width: 100%; height: auto !important; padding: 9px 10px !important; border-radius: 8px !important; font: 500 13.5px var(--pp-font) !important; color: var(--pp-text) !important; }
.pp-pm-autres .pp-menu-liste > button:hover { background: var(--pp-bg) !important; }
.pp-pm-autres .pp-menu-liste > #pmUnpublishBtn { color: #B3261E !important; }
#publishModal.pp-pm #pmConfirmBtn { background: var(--pp-accent) !important; border-color: var(--pp-accent) !important; height: 46px; padding: 0 22px !important; border-radius: 10px !important; font: 600 15px var(--pp-font) !important; }
#publishModal.pp-pm #pmConfirmBtn:hover { background: var(--pp-accent-hover) !important; }
/* Lignes resserrées : la fenêtre tient sans défiler sur un écran de portable. */
#publishModal.pp-pm .pm-check-item { padding: 9px 0 !important; row-gap: 1px; }
#publishModal.pp-pm .pm-check-label, #publishModal.pp-pm .pm-check-detail { line-height: 1.35 !important; }
#publishModal.pp-pm .pm-acc[data-acc="preflight"] > .pm-acc-head,
#publishModal.pp-pm .pm-acc[data-acc="mode"] > .pm-acc-head { padding: 16px 24px 6px !important; }

/* ─── Créations autonomes : Accueil, Images, Posters (15/10/2026) ──────────
   Même identité que le reste du thème : fond gris chaud, cartes blanches,
   accent turquoise pour l'action. Pas de nouvelle variable. */
html.pp-theme .pp-crea { max-width: 1360px; margin: 0 auto; padding: 28px 32px 48px; font-family: var(--pp-font); color: var(--pp-text); }
html.pp-theme .pp-crea-tete { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 22px; flex-wrap: wrap; }
html.pp-theme .pp-crea-tete h1 { margin: 0; display: flex; align-items: center; gap: 8px; font-size: 28px; font-weight: 800; letter-spacing: -.01em; }
html.pp-theme .pp-crea-tete p { margin: 3px 0 0; font-size: 14.5px; color: var(--pp-muted); }
html.pp-theme .pp-crea-tete-actions { display: flex; gap: 8px; flex-wrap: wrap; }
html.pp-theme .pp-crea-retour { display: inline-flex; align-items: center; gap: 4px; font-size: 13px; font-weight: 600; color: var(--pp-muted) !important; text-decoration: none !important; margin-bottom: 4px; }
html.pp-theme .pp-crea-retour:hover { color: var(--pp-text) !important; }
html.pp-theme .pp-crea-retour .material-symbols-outlined { font-size: 17px; }
html.pp-theme .pp-crea-compte { margin-left: 4px; font-size: 12px; color: var(--pp-muted); background: var(--pp-bg); border-radius: 999px; padding: 1px 7px; }
html.pp-theme .pp-crea-h2 { margin: 0 0 14px; font-size: 22px; font-weight: 800; letter-spacing: -.01em; }

html.pp-theme .pp-crea-recherche { display: flex; align-items: center; gap: 8px; height: 40px; padding: 0 12px; min-width: 280px; background: #fff; border: 1px solid var(--pp-border); border-radius: 10px; margin: 0; }
html.pp-theme .pp-crea-recherche:focus-within { border-color: var(--pp-accent); box-shadow: var(--pp-focus); }
html.pp-theme .pp-crea-recherche .material-symbols-outlined { font-size: 20px; color: var(--pp-muted); }
html.pp-theme .pp-crea-recherche input { flex: 1; min-width: 0; border: 0 !important; outline: 0; background: transparent; font: 14px var(--pp-font); box-shadow: none !important; padding: 0; }
html.pp-theme .pp-crea-recherche-large { max-width: 520px; margin-bottom: 20px; }
html.pp-theme .pp-crea-recherche-flex { flex: 1; min-width: 200px; }

/* Les trois entrées de l'accueil, de même importance. */
html.pp-theme .pp-crea-entrees { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-bottom: 30px; }
html.pp-theme .pp-crea-entree { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--pp-border); border-radius: 14px; padding: 14px 14px 22px; color: var(--pp-text) !important; text-decoration: none !important; transition: border-color .16s ease, box-shadow .16s ease; }
html.pp-theme .pp-crea-entree:hover { border-color: var(--pp-border-strong); box-shadow: 0 6px 20px rgba(31, 38, 41, .08); }
html.pp-theme .pp-crea-entree:focus-visible { outline: 0; box-shadow: var(--pp-focus); }
html.pp-theme .pp-crea-entree-img { display: block; aspect-ratio: 3 / 2; border-radius: 8px; background: var(--pp-bg); overflow: hidden; margin-bottom: 18px; }
html.pp-theme .pp-crea-entree-img img { display: block; width: 100%; height: 100%; object-fit: cover; }
html.pp-theme .pp-crea-entree-titre { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0 2px 6px; font-size: 20px; font-weight: 700; letter-spacing: -.01em; }
html.pp-theme .pp-crea-entree-titre .material-symbols-outlined { font-size: 24px; color: var(--pp-muted); transition: transform .16s ease, color .16s ease; }
html.pp-theme .pp-crea-entree:hover .pp-crea-entree-titre .material-symbols-outlined { color: var(--pp-text); transform: translateX(3px); }
html.pp-theme .pp-crea-entree-desc { margin: 0 2px; font: 16px Georgia, "Times New Roman", serif; color: var(--pp-muted); }

html.pp-theme .pp-crea-alerte { display: flex; align-items: center; gap: 10px; padding: 13px 18px; margin-bottom: 26px; border-radius: 12px; background: #FFF1F2; border: 1px solid #FECDD3; color: #BE123C !important; text-decoration: none !important; font-size: 14px; }
html.pp-theme .pp-crea-alerte .material-symbols-outlined { font-size: 20px; }
html.pp-theme .pp-crea-alerte-lien { margin-left: auto; display: inline-flex; align-items: center; gap: 4px; font-weight: 600; white-space: nowrap; }
html.pp-theme .pp-crea-alerte:hover .pp-crea-alerte-lien { text-decoration: underline; }
html.pp-theme .pp-crea-alerte:focus-visible { outline: 0; box-shadow: var(--pp-focus); }

html.pp-theme .pp-crea-section { margin-top: 8px; }
html.pp-theme .pp-crea-section-tete { display: flex; align-items: baseline; gap: 12px; }
html.pp-theme .pp-crea-filtres-ligne { display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--pp-border); margin-bottom: 16px; }
html.pp-theme .pp-crea-filtres { display: flex; gap: 4px; }
html.pp-theme .pp-crea-filtres button { border: 0; background: none; padding: 9px 14px; font: 600 13.5px var(--pp-font); color: var(--pp-muted); border-bottom: 2px solid transparent; margin-bottom: -1px; cursor: pointer; }
html.pp-theme .pp-crea-filtres button:hover { color: var(--pp-text); }
html.pp-theme .pp-crea-filtres button.is-active { color: var(--pp-accent-hover); border-bottom-color: var(--pp-accent); }
/* Les mêmes onglets en liens (Visuels / Retirés, B-009). */
html.pp-theme .pp-crea-filtres a { padding: 9px 14px; font: 600 13.5px var(--pp-font); color: var(--pp-muted); border-bottom: 2px solid transparent; margin-bottom: -1px; text-decoration: none; }
html.pp-theme .pp-crea-filtres a:hover { color: var(--pp-text); }
html.pp-theme .pp-crea-filtres a.is-active { color: var(--pp-accent-hover); border-bottom-color: var(--pp-accent); }
html.pp-theme .pp-crea-filtres button:focus-visible { outline: 0; box-shadow: var(--pp-focus); border-radius: 6px; }
html.pp-theme .pp-crea-filtres { position: relative; }
html.pp-theme .pp-crea-filtres button { transition: color .2s ease; }
html.pp-theme .pp-crea-filtres.a-trait button.is-active { border-bottom-color: transparent; }
html.pp-theme .pp-crea-filtres-trait { position: absolute; left: 0; bottom: -1px; height: 2px; width: 0; background: var(--pp-accent); border-radius: 2px; pointer-events: none; }
html.pp-theme .pp-crea-filtres.is-pret .pp-crea-filtres-trait { transition: transform .28s cubic-bezier(.4, 0, .2, 1), width .28s cubic-bezier(.4, 0, .2, 1); }
html.pp-theme .pp-crea-grille { transition: opacity .14s ease; }
html.pp-theme .pp-crea-grille.is-sortie { opacity: 0; }
html.pp-theme .pp-cc.is-entree { animation: pp-crea-carte .26s cubic-bezier(.2, 0, .2, 1) both; }
@keyframes pp-crea-carte { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
    html.pp-theme .pp-crea-filtres-trait, html.pp-theme .pp-crea-grille { transition: none !important; }
    html.pp-theme .pp-cc.is-entree { animation: none; }
}
html.pp-theme .pp-crea-toutvoir { display: inline-flex; align-items: center; gap: 4px; font-size: 13.5px; font-weight: 600; color: var(--pp-muted) !important; text-decoration: none !important; }
html.pp-theme .pp-crea-toutvoir:hover { color: var(--pp-text) !important; }
html.pp-theme .pp-crea-toutvoir .material-symbols-outlined { font-size: 18px; }

/* Cartes de création (grilles). */
html.pp-theme .pp-crea-grille { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; align-content: start; } /* le plancher posé au changement de filtre ne doit pas étirer les rangées */
html.pp-theme .pp-cc { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--pp-border); border-radius: 12px; overflow: visible; min-width: 0; }
html.pp-theme .pp-cc[hidden] { display: none; }
html.pp-theme .pp-cc-lien { display: block; padding: 8px 8px 0; text-decoration: none !important; border-radius: 12px 12px 0 0; }
html.pp-theme .pp-cc-lien:focus-visible { outline: 0; box-shadow: var(--pp-focus); }
html.pp-theme .pp-cc-img { position: relative; display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 3; border-radius: 8px; overflow: hidden; background: var(--pp-bg); }
html.pp-theme .pp-cc-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
html.pp-theme .pp-cc-img.is-poster img { object-fit: contain; }
html.pp-theme .pp-cc:hover .pp-cc-img img { transform: scale(1.02); }
html.pp-theme .pp-cc-vide { font-size: 38px; color: var(--pp-muted); opacity: .55; }
/* Vidéo à la une : la pastille Lecture, centrée sur l'image. */
html.pp-theme .pp-cc-play { position: absolute; top: 50%; left: 50%; width: 52px; height: 52px; margin: -26px 0 0 -26px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.94); color: var(--pp-text, #1d1b19); box-shadow: 0 2px 10px rgba(0,0,0,.25); pointer-events: none; }
html.pp-theme .pp-cc-play svg { margin-left: 3px; }
html.pp-theme .pp-cc-lie { position: absolute; top: 8px; right: 8px; display: inline-flex; align-items: center; gap: 4px; padding: 3px 9px; border-radius: 999px; background: rgba(255,255,255,.94); font-size: 11.5px; font-weight: 600; color: var(--pp-text); box-shadow: 0 1px 3px rgba(0,0,0,.12); }
html.pp-theme .pp-cc-lie .material-symbols-outlined { font-size: 14px; }
/* Sur un poster (affiché entier, centré), la pastille complète recouvrait son
   titre : réduite à son pictogramme, elle tient dans la marge latérale. */
html.pp-theme .pp-cc-img.is-poster .pp-cc-lie { padding: 5px; }
html.pp-theme .pp-cc-img.is-poster .pp-cc-lie-txt { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
html.pp-theme .pp-cc-pied { display: flex; flex-direction: column; gap: 4px; padding: 10px 12px 12px; min-width: 0; }
html.pp-theme .pp-cc-type { align-self: flex-start; display: inline-flex; align-items: center; gap: 4px; padding: 2px 9px; border-radius: 999px; background: var(--pp-bg); border: 1px solid var(--pp-border); font-size: 11.5px; font-weight: 600; color: var(--pp-muted); }
html.pp-theme .pp-cc-type .material-symbols-outlined { font-size: 14px; }
html.pp-theme .pp-cc-ligne { display: flex; align-items: center; gap: 4px; min-width: 0; }
html.pp-theme .pp-cc-titre { flex: 1; min-width: 0; font-size: 14.5px; font-weight: 700; color: var(--pp-text) !important; text-decoration: none !important; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html.pp-theme .pp-cc-titre:hover { text-decoration: underline !important; }
html.pp-theme .pp-cc-date { font-size: 12.5px; color: var(--pp-muted); }
html.pp-theme .pp-cc-etat { color: var(--pp-muted); }
html.pp-theme .pp-cc-menu { flex: none; }
html.pp-theme .pp-cc-plus { display: flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 7px; cursor: pointer; color: var(--pp-muted); }
html.pp-theme .pp-cc-plus:hover, html.pp-theme .pp-cc-menu[open] .pp-cc-plus { background: var(--pp-bg); color: var(--pp-text); }
html.pp-theme .pp-cc-plus:focus-visible { outline: 0; box-shadow: var(--pp-focus); }
html.pp-theme .pp-cc-menu .pp-menu-liste { right: 0; left: auto; min-width: 230px; z-index: 30; }

html.pp-theme .pp-crea-vide { text-align: center; padding: 48px 20px; background: #fff; border: 1px dashed var(--pp-border-strong); border-radius: 12px; color: var(--pp-muted); }
html.pp-theme .pp-crea-vide .material-symbols-outlined { font-size: 40px; opacity: .6; }
html.pp-theme .pp-crea-vide p { margin: 6px 0; font-size: 14px; }
html.pp-theme .pp-crea-vide strong { color: var(--pp-text); }
html.pp-theme .pp-crea-vide-filtre, html.pp-theme .pp-crea-etat { margin: 14px 0; font-size: 14px; color: var(--pp-muted); }
html.pp-theme .pp-crea-note { display: flex; align-items: center; gap: 8px; margin-top: 22px; padding: 12px 16px; border-radius: 10px; background: #fff; border: 1px solid var(--pp-border); font-size: 13.5px; color: var(--pp-muted); }
html.pp-theme .pp-crea-note .material-symbols-outlined { font-size: 19px; }

/* Galerie des modèles. */
html.pp-theme .pp-crea-source { display: flex; align-items: center; gap: 16px; padding: 14px 18px; margin-bottom: 18px; background: #fff; border: 1px solid var(--pp-border); border-radius: 12px; }
html.pp-theme .pp-crea-source-icone { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background: var(--pp-bg); font-size: 22px; color: var(--pp-text); flex: none; }
html.pp-theme .pp-crea-source-vignette { width: 56px; height: 44px; object-fit: cover; border-radius: 6px; flex: none; }
html.pp-theme .pp-crea-source-texte { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
html.pp-theme .pp-crea-source-texte strong { font-size: 15px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html.pp-theme .pp-crea-source-texte span { font-size: 13.5px; color: var(--pp-muted); }
html.pp-theme .pp-crea-source-actions { display: flex; gap: 6px; flex: none; }
html.pp-theme .pp-crea-galerie-filtres { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; flex-wrap: wrap; }
html.pp-theme .pp-crea-nombre { margin-left: auto; font-size: 13.5px; color: var(--pp-muted); }
html.pp-theme .pp-crea-galerie { display: grid; grid-template-columns: repeat(auto-fill, minmax(176px, 1fr)); gap: 12px; }
html.pp-theme .pp-crea-galerie.is-paysage { grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); }
html.pp-theme .pp-modele { display: flex; flex-direction: column; gap: 8px; padding: 6px 6px 10px; background: #fff; border: 1px solid var(--pp-border); border-radius: 10px; color: var(--pp-text) !important; text-decoration: none !important; transition: border-color .15s, box-shadow .15s; }
html.pp-theme .pp-modele:hover, html.pp-theme .pp-modele:focus-visible { border-color: var(--pp-accent); box-shadow: 0 0 0 1px var(--pp-accent); outline: 0; }
html.pp-theme .pp-modele-img { position: relative; display: block; aspect-ratio: 1414 / 2000; border-radius: 6px; overflow: hidden; background: var(--pp-bg); }
html.pp-theme .is-paysage .pp-modele-img { aspect-ratio: 2000 / 1414; }
html.pp-theme .pp-modele-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
html.pp-theme .pp-modele-nom { padding: 0 4px; font-size: 13.5px; font-weight: 600; }
html.pp-theme .pp-modele-utiliser { position: absolute; left: 8px; right: 8px; bottom: 8px; display: flex; align-items: center; justify-content: center; gap: 4px; height: 34px; border-radius: 8px; background: var(--pp-accent); color: #fff; font-size: 13px; font-weight: 600; opacity: 0; transform: translateY(4px); transition: opacity .15s, transform .15s; }
html.pp-theme .pp-modele-utiliser .material-symbols-outlined { font-size: 16px; }
html.pp-theme .pp-modele:hover .pp-modele-utiliser, html.pp-theme .pp-modele:focus-visible .pp-modele-utiliser { opacity: 1; transform: none; }
html.pp-theme .pp-modele-site { position: absolute; top: 8px; left: 8px; padding: 2px 8px; border-radius: 999px; background: rgba(255,255,255,.94); font-size: 11px; font-weight: 600; box-shadow: 0 1px 3px rgba(0,0,0,.12); }
html.pp-theme .pp-modele.is-attente .pp-modele-img { background: linear-gradient(90deg, var(--pp-bg) 0%, #ECEAE5 50%, var(--pp-bg) 100%); background-size: 200% 100%; animation: pp-crea-lueur 1.4s ease-in-out infinite; }
@keyframes pp-crea-lueur { from { background-position: 100% 0; } to { background-position: -100% 0; } }
@media (prefers-reduced-motion: reduce) { html.pp-theme .pp-modele.is-attente .pp-modele-img { animation: none; } html.pp-theme .pp-cc-img img, html.pp-theme .pp-modele-utiliser { transition: none; } }

/* Fenêtres (renommer, choisir une publication). */
html.pp-theme .pp-crea-dialog { width: min(440px, calc(100vw - 32px)); border: 0; border-radius: 14px; padding: 22px; box-shadow: 0 24px 60px rgba(0,0,0,.25); font-family: var(--pp-font); color: var(--pp-text); }
html.pp-theme .pp-crea-dialog-large { width: min(620px, calc(100vw - 32px)); }
/* AU MILIEU DE L'ÉCRAN (16/10/2026) : le `margin: 0` général de Tailwind
   annule le centrage natif d'un <dialog> ouvert en modale. */
html.pp-theme .pp-crea-dialog[open] { position: fixed; inset: 0; margin: auto; height: fit-content; max-height: calc(100dvh - 32px); overflow: auto; }
html.pp-theme .pp-crea-dialog::backdrop { background: rgba(31,38,41,.45); }
html.pp-theme .pp-crea-dialog h2 { margin: 0 0 14px; font-size: 18px; font-weight: 800; }
html.pp-theme .pp-crea-champ { display: flex; flex-direction: column; gap: 6px; font-size: 13px; font-weight: 600; }
html.pp-theme .pp-crea-champ input { height: 40px; padding: 0 12px; border: 1px solid var(--pp-border-strong); border-radius: 9px; font: 14px var(--pp-font); }
html.pp-theme .pp-crea-erreur { color: #B91C1C; font-size: 13px; margin: 8px 0 0; }
html.pp-theme .pp-crea-dialog-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 18px; }
html.pp-theme .pp-crea-choix { list-style: none; margin: 12px 0 0; padding: 0; max-height: 52vh; overflow-y: auto; border: 1px solid var(--pp-border); border-radius: 10px; }
html.pp-theme .pp-crea-choix:empty { display: none; }
html.pp-theme .pp-crea-choix li + li { border-top: 1px solid var(--pp-border); }
html.pp-theme .pp-crea-choix button { display: flex; align-items: center; gap: 12px; width: 100%; padding: 9px 12px; border: 0; background: none; text-align: left; cursor: pointer; font: 14px var(--pp-font); color: var(--pp-text); }
html.pp-theme .pp-crea-choix button:hover, html.pp-theme .pp-crea-choix button:focus-visible { background: var(--pp-accent-soft); outline: 0; }
html.pp-theme .pp-crea-choix img, html.pp-theme .pp-crea-choix .material-symbols-outlined { width: 48px; height: 36px; object-fit: cover; border-radius: 5px; flex: none; background: var(--pp-bg); display: flex; align-items: center; justify-content: center; color: var(--pp-muted); }
html.pp-theme .pp-crea-choix span { display: flex; flex-direction: column; min-width: 0; }
html.pp-theme .pp-crea-choix strong { font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html.pp-theme .pp-crea-choix small { color: var(--pp-muted); font-size: 12px; }

/* Onglet Visuel de la publication : créations liées et images du contenu. */
html.pp-theme .pp-liees { display: flex; flex-direction: column; gap: 8px; }
html.pp-theme .pp-liees-ligne { display: flex; align-items: center; gap: 10px; padding: 8px; border: 1px solid var(--pp-border); border-radius: 10px; background: #fff; }
html.pp-theme .pp-liees-ligne img, html.pp-theme .pp-liees-ligne .pp-liees-vide { width: 52px; height: 52px; object-fit: cover; border-radius: 6px; flex: none; background: var(--pp-bg); display: flex; align-items: center; justify-content: center; color: var(--pp-muted); }
/* La vignette ENTIÈRE (16/10/2026) : un poster ne se rogne pas en carré —
   largeur fixe, hauteur à ses proportions (portrait plus haut, paysage plus bas). */
html.pp-theme .pp-liees-ligne img { height: auto; max-height: 96px; object-fit: contain; background: transparent; box-shadow: 0 0 0 1px var(--pp-border); }
/* Un poster est une feuille : coins à peine adoucis (16/10/2026). */
html.pp-theme .pp-liees-ligne[data-cle^="poster:"] img { border-radius: 2px; }
html.pp-theme .pp-liees-texte { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
html.pp-theme .pp-liees-texte small { font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--pp-muted); }
html.pp-theme .pp-liees-texte a { font-size: 14px; font-weight: 600; color: var(--pp-text) !important; text-decoration: none !important; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html.pp-theme .pp-liees-texte a:hover { text-decoration: underline !important; }
html.pp-theme .pp-liees-texte span { font-size: 12.5px; color: var(--pp-muted); }
/* PAGE DES LIENS (16/10/2026) : l'élément à gauche, ses liens à droite. */
html.pp-theme .pp-liens-corps { display: grid; grid-template-columns: minmax(240px, 320px) 1fr; gap: 24px; align-items: start; }
html.pp-theme .pp-liens-centre { position: sticky; top: 24px; display: flex; flex-direction: column; gap: 8px; padding: 14px; border: 1px solid var(--pp-border); border-radius: 14px; background: #fff; }
html.pp-theme .pp-liens-centre-img { display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 3; border-radius: 10px; overflow: hidden; background: var(--pp-bg); color: var(--pp-muted); }
html.pp-theme .pp-liens-centre-img img { width: 100%; height: 100%; object-fit: contain; }
html.pp-theme .pp-liens-centre-img .material-symbols-outlined { font-size: 40px; }
html.pp-theme .pp-liens-centre .pp-cc-type { align-self: flex-start; }
html.pp-theme .pp-liens-centre h2 { margin: 0; font-size: 18px; line-height: 1.3; overflow-wrap: anywhere; }
html.pp-theme .pp-liens-centre p { margin: 0; font-size: 12.5px; color: var(--pp-muted); }
html.pp-theme .pp-liens-centre .pp-btn { align-self: flex-start; }
html.pp-theme .pp-liens-autour { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
html.pp-theme .pp-liens-suivre { padding: 6px; }
@media (max-width: 860px) {
    html.pp-theme .pp-liens-corps { grid-template-columns: 1fr; }
    html.pp-theme .pp-liens-centre { position: static; }
}
html.pp-theme .pp-contenu-images { display: grid; grid-template-columns: repeat(auto-fill, minmax(84px, 1fr)); gap: 8px; }
html.pp-theme .pp-contenu-images img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 6px; background: var(--pp-bg); border: 1px solid var(--pp-border); }

@media (max-width: 1100px) {
    html.pp-theme .pp-crea-entrees { grid-template-columns: 1fr; }
    html.pp-theme .pp-crea-entree { display: grid; grid-template-columns: 160px 1fr; grid-template-rows: auto auto 1fr; column-gap: 14px; }
    html.pp-theme .pp-crea-entree-img { grid-row: 1 / span 3; margin: 0; aspect-ratio: 4 / 3; }
    html.pp-theme .pp-crea-entree p { margin-bottom: 10px; }
    html.pp-theme .pp-crea-entree-btn { justify-self: start; }
}
@media (max-width: 640px) {
    html.pp-theme .pp-crea { padding: 18px 16px 40px; }
    html.pp-theme .pp-crea-tete h1 { font-size: 24px; }
    html.pp-theme .pp-crea-recherche { min-width: 0; width: 100%; }
    html.pp-theme .pp-crea-tete > form { width: 100%; }
    html.pp-theme .pp-crea-entree { grid-template-columns: 1fr; }
    html.pp-theme .pp-crea-entree-img { grid-row: auto; margin-bottom: 10px; aspect-ratio: 16 / 9; }
    html.pp-theme .pp-crea-filtres-ligne { overflow-x: auto; }
    html.pp-theme .pp-crea-grille { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
    html.pp-theme .pp-crea-galerie { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    html.pp-theme .pp-crea-galerie.is-paysage { grid-template-columns: 1fr; }
    html.pp-theme .pp-crea-source { flex-wrap: wrap; }
    html.pp-theme .pp-crea-source-actions { width: 100%; }
    html.pp-theme .pp-crea-alerte { flex-wrap: wrap; }
    html.pp-theme .pp-crea-alerte-lien { margin-left: 30px; }
}
html.pp-theme .pp-crea [hidden], html.pp-theme .pp-liees [hidden] { display: none !important; }
html.pp-theme .pp-modele-origine { padding: 0 4px; margin-top: -6px; font-size: 12px; color: var(--pp-muted); }
html.pp-theme #ppvLiees .pp-carte-actions .pp-btn { white-space: normal; height: auto; min-height: 36px; padding-top: 7px; padding-bottom: 7px; text-align: left; line-height: 1.3; }

/* Éditeur : le bloc « Planification » de la colonne est retiré (15/10/2026) —
   la planification se gère dans Diffusion. Masqué, pas démonté (show.blade
   rend sa fenêtre à <body>). */
html.pp-theme #scheduleCard { display: none !important; }

/* Galerie des posters épurée (15/10/2026, Gérald) : l'aperçu seul, angles
   droits, sans cadre de carte ni légende. */
html.pp-theme .pp-modele { padding: 0; gap: 0; border: 0; border-radius: 0; background: transparent; box-shadow: 0 1px 3px rgba(17, 24, 28, .12); }
html.pp-theme .pp-modele:hover, html.pp-theme .pp-modele:focus-visible { box-shadow: 0 0 0 2px var(--pp-accent), 0 6px 18px rgba(17, 24, 28, .16); border-radius: 0; }
html.pp-theme .pp-modele-img { border-radius: 0; }
html.pp-theme .pp-modele-utiliser { border-radius: 0; left: 0; right: 0; bottom: 0; height: 38px; }
html.pp-theme .pp-crea-galerie { gap: 16px; }

/* Éditeur : TROIS ONGLETS CENTRÉS et bien visibles (15/10/2026) — Éditeur,
   Diffusion, Référencement ; les accès secondaires restent à droite. */
html.pp-theme #ppTabs { display: grid; grid-template-columns: 1fr auto 1fr; align-items: end; }
html.pp-theme #ppTabs .pp-tabs-centre { display: flex; gap: 6px; justify-content: center; }
html.pp-theme #ppTabs .pp-tabs-droite { display: flex; gap: 4px; justify-content: flex-end; align-items: flex-end; }
html.pp-theme #ppTabs .pp-tabs-centre button { padding: 14px 22px 11px; font-size: 15.5px; font-weight: 700; border-bottom-width: 3px; }
@media (max-width: 760px) {
    html.pp-theme #ppTabs { display: flex; }
    html.pp-theme #ppTabs .pp-tabs-gauche { display: none; }
    html.pp-theme #ppTabs .pp-tabs-centre button { padding: 12px 12px 9px; font-size: 14px; }
}

/* ─── Liste des publications sur mobile (A-038) ─────────────────────────────
   Sous 640 px, le tableau (840 px) défilait en cachette dans sa carte : statut
   coupé, titres de deux mots. Chaque ligne devient une fiche — vignette et
   titre, puis statut et publication, la date, puis les actions. L'en-tête
   garde « tout sélectionner » et les tris par titre et par date. */
@media (max-width: 640px) {
    html.pp-theme .pp-liste-pubs { min-width: 0 !important; display: block; }
    html.pp-theme .pp-liste-pubs thead,
    html.pp-theme .pp-liste-pubs tbody { display: block; }
    html.pp-theme .pp-liste-pubs thead tr { display: flex; align-items: center; gap: 14px; padding: 4px 12px; }
    html.pp-theme .pp-liste-pubs thead th { display: none; padding: 8px 0 !important; width: auto !important; }
    html.pp-theme .pp-liste-pubs thead th.c-sel,
    html.pp-theme .pp-liste-pubs thead th.c-titre,
    html.pp-theme .pp-liste-pubs thead th.c-date { display: block; }
    html.pp-theme .pp-liste-pubs tr.conv-item {
        display: grid; grid-template-columns: 22px 56px max-content max-content minmax(0, 1fr);
        column-gap: 10px; row-gap: 8px; padding: 14px 12px; align-items: center;
    }
    html.pp-theme .pp-liste-pubs tr.conv-item > td { display: block; padding: 0 !important; }
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-sel { grid-column: 1; grid-row: 1; align-self: start; padding-top: 2px !important; }
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-vignette { grid-column: 2; grid-row: 1 / span 3; align-self: start; }
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-vignette img { width: 56px !important; height: 56px !important; min-width: 56px !important; }
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-titre { grid-column: 3 / -1; grid-row: 1; }
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-titre p { max-width: none !important; }
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-statut { grid-column: 3; grid-row: 2; }
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-pub { grid-column: 4; grid-row: 2; }
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-date { grid-column: 3 / -1; grid-row: 3; }
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-date p { display: inline; margin-right: 6px; }
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-sync { grid-column: 2; grid-row: 4; justify-self: center; }
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-actions { grid-column: 3 / -1; grid-row: 4; }
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-gsc,
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-cat,
    html.pp-theme .pp-liste-pubs tr.conv-item > td.c-visites { display: none; }
}
