/* Espace professionnel : application en façade */
.vr-app{
  --at:var(--turq,#3CC9CD); --atd:var(--turq-d,#1E9BA0); --atp:var(--turq-p,#EAFAFB);
  --al:var(--ligne,#E4E8E8); --ag:var(--gris,#6E7778); --agc:#9AA3A4; --an:var(--noir,#0E1213); --as:#F7F5F1;
  border:1px solid var(--al);background:#fff;color:var(--an);
  font-family:'DM Sans',system-ui,sans-serif;margin:0 0 40px;
}
.vr-app *{box-sizing:border-box}
.vr-app h2,.vr-app h3,.vr-app h4{font-family:'Outfit',sans-serif;font-weight:600;letter-spacing:-.02em;line-height:1.2;margin:0}

.vr-app-barre{display:flex;align-items:center;gap:14px;padding:14px 20px;border-bottom:1px solid var(--al);background:#fff}
.vr-app-barre h2{font-size:19px;flex:1}
.vr-app-burger{display:flex;flex-direction:column;gap:4px;background:none;border:1px solid var(--al);padding:9px 10px;cursor:pointer}
.vr-app-burger span{display:block;width:16px;height:1.5px;background:var(--an)}
.vr-app-user{display:flex;align-items:center;gap:10px}
.vr-avatar{width:34px;height:34px;background:var(--atp);color:var(--atd);display:flex;align-items:center;justify-content:center;font-family:'Outfit',sans-serif;font-size:12px;font-weight:600;flex:none}
.vr-app-nom{display:none;font-size:14px;font-weight:500}
.vr-app-sortie{font-size:12px;color:var(--ag);text-decoration:none;border-bottom:1px solid var(--al)}
.vr-app-sortie:hover{color:var(--atd)}

.vr-app-corps{display:grid;grid-template-columns:1fr}
.vr-app-nav{border-bottom:1px solid var(--al);background:var(--as);display:none}
.vr-app-nav.ouvert{display:block}
.vr-app-nav ul{list-style:none;margin:0;padding:8px 0}
.vr-app-nav a{display:flex;align-items:center;gap:11px;padding:11px 20px;font-size:14.5px;color:var(--an);text-decoration:none;border-left:3px solid transparent}
.vr-app-nav a svg{width:19px;height:19px;flex:none;color:var(--ag)}
.vr-app-nav a:hover{background:#fff}
.vr-app-nav a[aria-current]{background:#fff;border-left-color:var(--at);font-weight:600}
.vr-app-nav a[aria-current] svg{color:var(--atd)}
.vr-app-nav a em{margin-left:auto;font-style:normal;font-size:11px;font-family:'JetBrains Mono',monospace;background:var(--al);padding:2px 7px}
.vr-app-ajout,.vr-app-site{display:flex;align-items:center;gap:11px;padding:13px 20px;font-size:13.5px;text-decoration:none;color:var(--an);border-top:1px solid var(--al)}
.vr-app-ajout{color:var(--atd);font-weight:600}
.vr-app-ajout svg,.vr-app-site svg{width:17px;height:17px;flex:none}
.vr-app-site{color:var(--ag);font-size:13px}
.vr-app-vue{padding:24px 20px 34px;min-height:400px}

.vr-salut{font-family:'Outfit',sans-serif;font-size:20px;font-weight:500;margin:0 0 20px}
.vr-intro{color:var(--ag);font-size:14.5px;margin:0 0 18px}
.vr-kpis{display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:28px}
.vr-kpi{background:var(--as);padding:16px 18px}
.vr-kpi .l{display:block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ag);font-family:'Outfit',sans-serif;font-weight:500}
.vr-kpi .v{display:block;font-family:'Outfit',sans-serif;font-size:27px;font-weight:700;letter-spacing:-.03em;line-height:1.1;margin:7px 0 3px}
.vr-kpi .s{display:block;font-size:12px;color:var(--agc)}
.vr-kpi .s a{color:var(--atd)}

.vr-sect{margin-bottom:32px}
.vr-sect h3{font-size:16px;margin-bottom:14px;padding-bottom:9px;border-bottom:1px solid var(--al)}
.vr-alerte{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:13px 16px;margin-bottom:9px;font-size:14px;border-left:3px solid}
.vr-a-urgent{background:#FDF4E3;border-color:#C9962B;color:#6B4E0C}
.vr-a-info{background:var(--atp);border-color:var(--at);color:#0E5F63}
.vr-alerte .vr-btn{padding:9px 16px;font-size:11px}

.vr-cartes{display:grid;gap:16px;grid-template-columns:1fr}
.vr-carte{border:1px solid var(--al);padding:18px}
.vr-carte-h{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}
.vr-logo{width:46px;height:46px;flex:none;border:1px solid var(--al);background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}
.vr-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.vr-carte h4{font-size:16.5px;margin-bottom:7px}
.vr-badge{display:inline-block;font-family:'Outfit',sans-serif;font-size:9.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:4px 9px;margin-right:5px}
.vr-ok{background:#E9F7F0;color:#15603F}
.vr-attente{background:#FDF4E3;color:#7A5A10}
.vr-ko{background:#FDF2F2;color:#8A2222}
.vr-neutre{background:#F1F2F2;color:#50575e}
.vr-jauge-l{margin-bottom:14px}
.vr-jauge{height:7px;background:var(--al)}
.vr-jauge i{display:block;height:7px;background:var(--at)}
.vr-jauge-l span{display:block;font-size:12px;color:var(--ag);margin-top:6px}
.vr-chiffres{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--al);border:1px solid var(--al);margin-bottom:14px}
.vr-chiffres div{background:#fff;padding:11px 8px;text-align:center}
.vr-chiffres b{display:block;font-family:'Outfit',sans-serif;font-size:19px;font-weight:700;letter-spacing:-.02em}
.vr-chiffres span{display:block;font-size:11px;color:var(--agc);margin-top:2px}
.vr-carte-a{display:flex;gap:8px;flex-wrap:wrap}
.vr-carte-a .vr-btn{flex:1;min-width:130px}

.vr-table{width:100%;border-collapse:collapse;font-size:14px;border:1px solid var(--al)}
.vr-table th,.vr-table td{padding:10px 13px;text-align:left;border-bottom:1px solid var(--al)}
.vr-table th{font-family:'Outfit',sans-serif;font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ag);background:#FCFCFB}
.vr-table td:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}
.vr-table tr:last-child td{border-bottom:none}

.vr-ligne{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid #F0F2F2;font-size:14.5px}
.vr-ligne span{color:var(--ag)}
.vr-offres{display:grid;gap:12px;grid-template-columns:1fr;margin:18px 0}
.vr-offre{border:1px solid var(--al);padding:16px}
.vr-offre.actuelle{border:2px solid var(--at);background:var(--atp)}
.vr-offre b{display:block;font-family:'Outfit',sans-serif;font-size:16px;font-weight:600}
.vr-offre i{display:block;font-style:normal;font-size:14px;font-weight:600;color:var(--atd);margin:5px 0 7px}
.vr-offre small{display:block;font-size:12.5px;color:var(--ag);line-height:1.5;margin-bottom:11px}
.vr-offre .vr-btn{width:100%;padding:11px}

.vr-vide{text-align:center;padding:44px 20px;background:var(--as)}
.vr-vide h3{font-size:19px;border:none;padding:0;margin-bottom:9px}
.vr-vide p{color:var(--ag);max-width:46ch;margin:0 auto 20px;font-size:14.5px}
.vr-faq details{border:1px solid var(--al);margin-bottom:9px}
.vr-faq summary{padding:14px 16px;cursor:pointer;font-family:'Outfit',sans-serif;font-weight:500;font-size:14.5px}
.vr-faq details[open] summary{border-bottom:1px solid var(--al)}
.vr-faq p{padding:14px 16px;margin:0;font-size:14px;color:var(--ag)}
.vr-app-connexion{padding:56px 24px;text-align:center}
.vr-app-connexion h2{font-size:23px;margin-bottom:10px}
.vr-app-connexion p{color:var(--ag);margin-bottom:20px}

@media(min-width:700px){
  .vr-kpis{grid-template-columns:repeat(4,1fr)}
  .vr-cartes{grid-template-columns:repeat(2,1fr)}
  .vr-offres{grid-template-columns:repeat(3,1fr)}
  .vr-app-nom{display:inline}
}
@media(min-width:960px){
  .vr-app-corps{grid-template-columns:236px 1fr}
  .vr-app-nav{display:block;border-bottom:none;border-right:1px solid var(--al)}
  .vr-app-burger{display:none}
  .vr-app-vue{padding:28px 30px 40px}
}

/* ══════════ MISE EN PAGE GRAND ÉCRAN ══════════ */
/* L'application déborde volontairement du conteneur du thème : un
   formulaire de cent champs a besoin de largeur, pas d'une colonne de blog. */
.vr-app{width:100%}
@media(min-width:1240px){
  .vr-app{width:min(1320px, calc(100vw - 48px));margin-left:calc(50% - min(660px, calc(50vw - 24px)));
    margin-right:calc(50% - min(660px, calc(50vw - 24px)))}
}

/* Éditeur : sommaire collant à gauche du formulaire */
.vr-ed-layout{display:grid;grid-template-columns:1fr;gap:22px}
.vr-ed-somm{display:none}
.vr-somm-t{margin:0 0 12px;font-family:'Outfit',sans-serif;font-size:10.5px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;color:var(--ag)}
.vr-ed-somm ul{list-style:none;margin:0;padding:0}
.vr-ed-somm li{margin:0}
.vr-ed-somm a{display:flex;align-items:center;gap:10px;padding:9px 12px;font-size:13.5px;
  color:var(--ag);text-decoration:none;border-left:2px solid transparent;line-height:1.35}
.vr-ed-somm a:hover{color:var(--an);background:var(--as)}
.vr-ed-somm a.actif{color:var(--an);font-weight:500;border-left-color:var(--at);background:var(--atp)}
.vr-somm-e{width:7px;height:7px;flex:none;border-radius:50%;border:1.5px solid var(--agc);background:transparent}
.vr-somm-e.ok{background:var(--at);border-color:var(--at)}
.vr-somm-a{margin:14px 0 0;font-size:11.5px;color:var(--agc);line-height:1.5;padding:0 12px}

@media(min-width:1080px){
  .vr-ed-layout{grid-template-columns:210px minmax(0,1fr);gap:32px;align-items:start}
  .vr-ed-somm{display:block;position:sticky;top:24px}
}
@media(min-width:1400px){
  .vr-ed-layout{grid-template-columns:230px minmax(0,1fr)}
}

/* ══════════ MODÉRATION ══════════ */
.vr-nav-titre{margin:14px 0 4px;padding:12px 20px 0;border-top:1px solid var(--al);
  font-family:'Outfit',sans-serif;font-size:10px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--agc)}
.vr-app-nav a em.urgent{background:#FDF2F2;color:#8A2222;font-weight:600}
.vr-carte.vr-retard{border-left:3px solid #D63638}
.vr-ctrls{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:14px;padding:11px 0;
  border-top:1px solid #F0F2F2;border-bottom:1px solid #F0F2F2;font-size:12.5px;color:var(--ag)}
.vr-ctrl{display:flex;align-items:center;gap:6px}
.vr-ctrl b{color:var(--an)}
.vr-pt{width:8px;height:8px;border-radius:50%;flex:none;display:block}
.vr-pt.vr-ok{background:#2FA36B}
.vr-pt.vr-attente{background:#E0A32E}
.vr-pt.vr-ko{background:#D63638}

/* Écran de revue */
.vr-revue{display:grid;grid-template-columns:1fr;gap:20px;align-items:start}
.vr-revue .vr-ed-carte{margin-bottom:14px}
.vr-kv{display:grid;grid-template-columns:1fr;gap:0}
.vr-kv div{display:flex;justify-content:space-between;gap:14px;padding:9px 0;
  border-bottom:1px solid #F0F2F2;font-size:14px}
.vr-kv div span{color:var(--ag)}
.vr-kv div b{text-align:right;font-weight:500}
.vr-prive{font-style:normal;color:#D9622A;margin-left:4px;cursor:help}
.vr-histo{list-style:none;margin:0;padding:0;font-size:12.5px}
.vr-histo li{padding:9px 0;border-bottom:1px solid #F0F2F2}
.vr-histo li:last-child{border-bottom:none}
.vr-histo b{display:block;font-weight:500}
.vr-histo span{color:var(--agc);font-size:11.5px}
.vr-histo em{display:block;color:var(--ag);margin-top:3px}

/* Formulaire de décision en façade */
.vr-revue .vr-decision{display:block}
.vr-revue .vr-decision-l,.vr-revue .vr-decision-b{display:block}
.vr-revue .vr-decision select,.vr-revue .vr-decision input[type=text]{width:100%;margin-bottom:10px}
.vr-revue .vr-decision button{width:100%;margin-bottom:7px;padding:13px;border:1px solid var(--al);
  background:#fff;font:inherit;font-family:'Outfit',sans-serif;font-size:11px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:.15s}
.vr-revue .vr-decision button:hover{border-color:var(--an)}
.vr-revue .vr-decision button[value=valider]{background:var(--at);border-color:var(--at);color:#fff}
.vr-revue .vr-decision button[value=valider]:hover{background:var(--atd);border-color:var(--atd)}
.vr-revue .vr-decision button[value=rejeter]{color:#B32D2E;border-color:#E4C7C7}
.vr-revue .vr-decision button[value=rejeter]:hover{background:#B32D2E;color:#fff;border-color:#B32D2E}

@media(min-width:700px){.vr-kv{grid-template-columns:1fr 1fr;column-gap:28px}}
@media(min-width:1080px){.vr-revue{grid-template-columns:minmax(0,1fr) 300px;gap:26px}
  .vr-revue-side{position:sticky;top:24px}
  .vr-revue-side .vr-kv{grid-template-columns:1fr}}

/* Onglets et listes des vues d'administration */
.vr-onglets{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--al);margin-bottom:18px;scrollbar-width:none}
.vr-onglets a{padding:11px 14px;font-family:'Outfit',sans-serif;font-size:13px;color:var(--ag);
  text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent}
.vr-onglets a:hover{color:var(--an)}
.vr-onglets a.on{color:var(--an);font-weight:600;border-bottom-color:var(--at)}
.vr-liste{margin:0;padding-left:20px;font-size:14px;color:var(--ag);line-height:1.75}
.vr-liste li{margin-bottom:5px}
.vr-app-vue .vr-form{max-width:none;margin:0}
.vr-carte-etat{margin:0 0 14px;font-size:12.5px;color:var(--ag);line-height:1.5;
  background:var(--as);border-left:2px solid var(--al);padding:9px 12px}
/* Diagnostic de fiche */
.vr-diag{border:1px solid var(--al);background:#FCFCFB;margin-bottom:14px}
.vr-diag summary{padding:13px 16px;cursor:pointer;font-family:'Outfit',sans-serif;font-size:13.5px;font-weight:500}
.vr-diag[open] summary{border-bottom:1px solid var(--al)}
.vr-diag > *:not(summary){margin:14px 16px}
.vr-diag code{font-size:11.5px;background:#F1F2F2;padding:2px 6px}
