/* ------------------------------------------------------------------
   Facette · La pub des cabinets (pub-cabinets.js, 31/10/2026).
   Une liste ; un clic ouvre la période et les chiffres ; « Détail »
   pour le reste. Que des variables de styles.css ; vert = en cours,
   bleu = à nous, orange = en pause, gris = arrêté.
   ------------------------------------------------------------------ */

#vue-pubcab{
  --pc-vert:#2FD3A5;--pc-bleu:#6E9BFF;--pc-orange:#FFB054;--pc-gris:color-mix(in srgb,var(--texte) 30%,transparent);
  --pc-t-vert:#7DF0CD;--pc-t-bleu:#A9C2FF;--pc-t-orange:#FFC77D;--pc-t-rouge:#FF8FA6;
}
html[data-theme="clair"] #vue-pubcab{
  --pc-vert:#16A37C;--pc-bleu:#3D6CE8;--pc-orange:#EE8A12;
  --pc-t-vert:#0F6B50;--pc-t-bleu:#2A4FB8;--pc-t-orange:#9A4E00;--pc-t-rouge:#A81447;
}

#vue-pubcab .pc-tete{margin-top:8px}
#vue-pubcab .pc-titre{font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:-0.01em}
#vue-pubcab .pc-resume{color:var(--texte-doux);font-size:14.5px;margin-top:4px}
#vue-pubcab .pc-vide{margin-top:22px;padding:22px;text-align:center;border:1px dashed var(--trait-fort);border-radius:14px;color:var(--texte-doux)}
#vue-pubcab .pc-t-faible{color:var(--texte-faible);font-weight:500}

/* ---- la liste ---- */
#vue-pubcab .pc-liste{list-style:none;margin:18px 0 0;padding:0;max-width:900px;display:grid;gap:10px}
#vue-pubcab .pc-cabinet{border:1px solid var(--trait);border-radius:var(--rayon);background:var(--carte);overflow:hidden;transition:border-color .15s}
#vue-pubcab .pc-cabinet:hover,#vue-pubcab .pc-cabinet.pc-ouvert{border-color:var(--trait-fort)}
#vue-pubcab .pc-ligne{all:unset;box-sizing:border-box;width:100%;display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;padding:16px 18px;cursor:pointer}
#vue-pubcab .pc-ligne:focus-visible{outline:2px solid var(--violet);outline-offset:-2px;border-radius:var(--rayon)}
#vue-pubcab .pc-qui{flex:1 1 180px;display:flex;align-items:baseline;gap:4px 10px;flex-wrap:wrap}
#vue-pubcab .pc-qui b{font-family:var(--display);font-size:17px;font-weight:700;color:var(--texte)}
#vue-pubcab .pc-ville{font-size:13.5px;color:var(--texte-faible)}
#vue-pubcab .pc-badges{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
#vue-pubcab .pc-badges span{font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;border:1px solid var(--trait-fort);color:var(--texte-doux)}
#vue-pubcab .pc-etat{color:var(--pc-t-bleu)!important;border-color:color-mix(in srgb,var(--pc-bleu) 45%,transparent)!important}
#vue-pubcab .pc-e-active .pc-etat{color:var(--pc-t-vert)!important;border-color:color-mix(in srgb,var(--pc-vert) 45%,transparent)!important}
#vue-pubcab .pc-e-en_pause .pc-etat{color:var(--pc-t-orange)!important;border-color:color-mix(in srgb,var(--pc-orange) 45%,transparent)!important}
#vue-pubcab .pc-e-arretee .pc-etat{color:var(--texte-faible)!important}
#vue-pubcab .pc-res{font-size:14px;font-weight:600}
#vue-pubcab .pc-sep{color:var(--texte-faible);font-weight:400}
#vue-pubcab .pc-quand{font-size:12.5px;color:var(--texte-faible)}
#vue-pubcab .pc-fleche{width:9px;height:9px;border-right:2px solid var(--texte-faible);border-bottom:2px solid var(--texte-faible);transform:rotate(45deg);margin:0 4px 4px;transition:transform .2s}
#vue-pubcab .pc-ouvert .pc-fleche{transform:rotate(-135deg);margin-bottom:-4px}

/* ---- ouvert : période et chiffres ---- */
#vue-pubcab .pc-ouvre{display:none;padding:0 18px 16px}
#vue-pubcab .pc-ouvert .pc-ouvre{display:block}
#vue-pubcab .pc-periodes{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;padding-top:14px;border-top:1px solid var(--trait)}
#vue-pubcab .pc-sel-bloc{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
#vue-pubcab .pc-sel{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--texte-faible);font-weight:600}
#vue-pubcab select,#vue-pubcab input[type="date"]{font:inherit;font-size:13.5px;font-weight:600;color:var(--texte);background:var(--fond);border:1px solid var(--trait-fort);border-radius:999px;padding:6px 12px}
#vue-pubcab select:focus-visible,#vue-pubcab input:focus-visible{outline:2px solid var(--violet);outline-offset:2px}
#vue-pubcab .pc-libre{display:inline-flex;align-items:center;gap:6px}
#vue-pubcab input[type="date"]{padding:5px 10px;font-size:13px}
#vue-pubcab .pc-tableau{overflow-x:auto;margin-top:12px}
#vue-pubcab table{border-collapse:collapse;width:100%;max-width:560px;font-size:14.5px}
#vue-pubcab th,#vue-pubcab td{text-align:right;padding:7px 12px;border-bottom:1px solid var(--trait);white-space:nowrap}
#vue-pubcab th:first-child,#vue-pubcab td:first-child{text-align:left;color:var(--texte-doux);font-weight:500}
#vue-pubcab th{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--texte-faible)}
#vue-pubcab tr.pc-fort td{font-weight:800;color:var(--texte)}
#vue-pubcab tr.pc-fort td:first-child{font-weight:700}
#vue-pubcab .pc-plus{color:var(--pc-t-vert)}
#vue-pubcab .pc-moins{color:var(--pc-t-rouge)}
#vue-pubcab .pc-source{margin-top:10px;font-size:12.5px;color:var(--texte-faible)}

#vue-pubcab .pc-voir{all:unset;cursor:pointer;margin-top:14px;font-size:13px;font-weight:600;color:var(--texte-faible);text-decoration:underline;text-underline-offset:3px}
#vue-pubcab .pc-voir:hover{color:var(--texte)}
#vue-pubcab .pc-voir:focus-visible{outline:2px solid var(--violet);outline-offset:2px}

/* ---- le détail, sur demande ---- */
#vue-pubcab .pc-detail{margin-top:14px;padding-top:4px;border-top:1px dashed var(--trait-fort)}
#vue-pubcab .pc-s-titre{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--texte-faible);margin-top:14px;padding-bottom:4px}
#vue-pubcab .pc-courte{margin:0;padding:0 0 0 14px;font-size:13.5px;display:grid;gap:5px}
#vue-pubcab ul.pc-courte{list-style:none;padding:0}
#vue-pubcab ul.pc-courte li{padding-left:10px;border-left:3px solid var(--pc-bleu)}
#vue-pubcab ul.pc-courte li.pc-k-active{border-left-color:var(--pc-vert)}
#vue-pubcab ul.pc-courte li.pc-k-en_pause{border-left-color:var(--pc-orange)}
#vue-pubcab ul.pc-courte li.pc-k-supprimee{border-left-color:var(--pc-gris);color:var(--texte-faible)}
#vue-pubcab .pc-cles{display:grid;gap:8px;margin:14px 0 0;font-size:13.5px}
#vue-pubcab .pc-cles dt{display:inline;font-weight:700;color:var(--texte-faible)}
#vue-pubcab .pc-cles dt::after{content:" : "}
#vue-pubcab .pc-cles dd{display:inline;margin:0}
#vue-pubcab .pc-liens{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
#vue-pubcab .pc-liens a{font-size:13px;font-weight:600;padding:6px 12px;border:1px solid var(--trait-fort);border-radius:999px;text-decoration:none;color:var(--texte)}
#vue-pubcab .pc-liens a:hover{border-color:var(--violet)}
#vue-pubcab .pc-journal{margin:4px 0 0;padding-left:18px;font-size:13px;display:grid;gap:5px;color:var(--texte-doux)}
#vue-pubcab .pc-journal time{font-weight:700}
