/* ====== AGENDA / GALERIE ADMIN / FICHE ====== */
.calv-barre{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.calv-btn{background:none;border:1px solid rgba(233,233,238,.2);color:var(--argent-2);padding:8px 18px;border-radius:30px;font-family:'Montserrat',sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .3s}
.calv-btn:hover{border-color:var(--or)}
.calv-btn.actif{background:var(--grad-or);color:#1a1305;border-color:transparent}
.calm-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}
.calm-jn{text-align:center;font-size:.6rem;letter-spacing:.14em;color:var(--or);font-weight:700;padding:5px 0}
.calm-case{min-height:82px;border-radius:10px;background:#101015;border:1px solid rgba(233,233,238,.08);padding:7px 7px 6px;cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:border-color .2s;overflow:hidden}
.calm-case:hover{border-color:rgba(212,164,55,.6)}
.calm-case.passe{opacity:.4}
.calm-case .num{font-weight:700;font-size:.72rem;color:var(--argent-2)}
.calm-case.today{border-color:rgba(212,164,55,.7);background:rgba(212,164,55,.06)}
.calm-case.today .num{color:var(--or-clair)}
.calm-chip{font-size:.58rem;font-weight:600;padding:3px 7px;border-radius:6px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.calm-chip.reserve{background:rgba(212,164,55,.16);border:1px solid rgba(212,164,55,.45);color:var(--or-clair)}
.calm-chip.bloque{background:rgba(255,120,120,.12);border:1px solid rgba(255,120,120,.4);color:#ff9f9f}
.sem-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.sem-jour{background:#101015;border:1px solid rgba(233,233,238,.08);border-radius:12px;padding:12px 10px;min-height:150px;cursor:pointer;transition:border-color .2s}
.sem-jour:hover{border-color:rgba(212,164,55,.5)}
.sem-jour.today{border-color:rgba(212,164,55,.7);background:rgba(212,164,55,.05)}
.sem-jour h5{font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--argent-2);margin-bottom:4px;text-align:center}
.sem-jour .sem-num{text-align:center;font-size:1.15rem;font-weight:800;color:var(--argent);margin-bottom:8px}
.sem-jour.today .sem-num{color:var(--or-clair)}
.avenir-ligne{display:flex;gap:14px;align-items:flex-start;padding:12px 4px;border-bottom:1px dashed rgba(233,233,238,.08);cursor:pointer}
.avenir-ligne:hover{background:rgba(212,164,55,.04)}
.avenir-date{flex-shrink:0;width:86px;text-align:center;background:#101015;border:1px solid rgba(212,164,55,.3);border-radius:10px;padding:7px 4px}
.avenir-date b{display:block;font-size:1.2rem;color:var(--or-clair)}
.avenir-date span{font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--argent-2)}
@media(max-width:900px){.sem-grid{grid-template-columns:repeat(2,1fr)}.calm-case{min-height:64px}}
.cal-boite{max-width:520px;margin:0 auto}
.cal-tete{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.cal-tete b{font-size:.95rem;color:var(--argent)}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.cal-jour-nom{text-align:center;font-size:.6rem;letter-spacing:.12em;color:var(--or);font-weight:700;padding:4px 0}
.cal-case{
  height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px;
  background:#101015;border:1px solid rgba(233,233,238,.1);cursor:pointer;font-size:.78rem;font-weight:600;
  transition:all .2s;user-select:none;
}
.cal-case:hover{border-color:var(--or)}
.cal-case.reserve{background:rgba(212,164,55,.2);border-color:var(--or);color:var(--or-clair)}
.cal-case.bloque{background:rgba(255,120,120,.15);border-color:rgba(255,120,120,.5);color:#ff9f9f}
.cal-case.passe{opacity:.35}
.cal-legende{display:flex;gap:20px;flex-wrap:wrap;margin-top:16px;font-size:.75rem;color:var(--argent-2)}
.pastille-cal{display:inline-block;width:12px;height:12px;border-radius:4px;margin-right:6px;vertical-align:-1px;background:#101015;border:1px solid rgba(233,233,238,.2)}
.pastille-cal.reserve{background:rgba(212,164,55,.5);border-color:var(--or)}
.pastille-cal.bloque{background:rgba(255,120,120,.4);border-color:#ff9f9f}
.dispo{margin-top:8px;font-size:.78rem;padding:9px 13px;border-radius:10px;font-weight:500;display:flex;align-items:flex-start;text-align:left;line-height:1.5}
.dispo.oui{background:rgba(80,200,120,.1);border:1px solid rgba(80,200,120,.4);color:#7ee2a8}
.dispo.non{background:rgba(255,120,120,.1);border:1px solid rgba(255,120,120,.4);color:#ff9f9f}
.gal-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}
.gal-mini{background:#101015;border:1px solid rgba(233,233,238,.1);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.gal-mini img{width:100%;height:110px;object-fit:cover}
.gal-mini span{font-size:.7rem;padding:8px 10px 4px;color:var(--argent-2)}
.gal-mini button{margin:8px;align-self:flex-end}
input[type=file]{padding:10px;font-size:.75rem}
#deroule-apercu{background:#fff;color:#1c1c22;border-radius:12px;overflow:hidden;font-size:13px;line-height:1.6;box-shadow:0 20px 60px rgba(0,0,0,.5)}
#deroule-apercu .doc-bande{background:#0d0d11;color:#fff;padding:22px 28px;display:flex;justify-content:space-between;align-items:center}
#deroule-apercu .doc-bande svg{height:54px}
#deroule-apercu .doc-bande .doc-type b{color:#d4a437;letter-spacing:.15em;display:block}
#deroule-apercu .doc-bande .doc-type{text-align:right;font-size:.72rem;color:#bbb}
#deroule-apercu .doc-corps{padding:24px 30px}
#deroule-apercu .doc-pied{background:#0d0d11;color:#999;text-align:center;padding:12px;font-size:.66rem}
#deroule-apercu .doc-pied b{color:#d4a437}
.dr-ligne{display:flex;gap:16px;padding:10px 0;border-bottom:1px solid #eee9dc}
.dr-ligne .dr-h{flex-shrink:0;width:64px;font-weight:800;color:#9c7420}
.dr-ligne b{display:block;color:#1c1c22}
.dr-ligne p{color:#666;font-size:.78rem}
/* ---- Fiche de renseignements (overlay public) ---- */
#fiche-overlay{position:fixed;inset:0;z-index:2600;display:none;background:var(--noir);overflow-y:auto}
#fiche-overlay.actif{display:block}
.fiche-wrap{max-width:760px;margin:0 auto;padding:50px 5% 80px}
.fiche-wrap h2{text-transform:uppercase;font-size:1.5rem;text-align:center;margin:18px 0 6px}
.fiche-wrap .fiche-sous{text-align:center;font-size:.85rem;color:var(--argent-2);font-weight:300;margin-bottom:36px}
.fiche-sec{background:var(--noir-3);border:1px solid rgba(233,233,238,.09);border-radius:18px;padding:28px;margin-bottom:18px}
.fiche-sec h4{font-size:.75rem;letter-spacing:.25em;text-transform:uppercase;color:var(--or);margin-bottom:18px}
.fiche-fermer{position:fixed;top:18px;right:22px;background:var(--noir-3);border:1px solid rgba(212,164,55,.4);color:var(--argent);width:42px;height:42px;border-radius:50%;font-size:1.1rem;cursor:pointer;z-index:2601}
.coche-grille{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.coche-grille .opt-ligne{margin-bottom:0}
@media(max-width:640px){.coche-grille{grid-template-columns:1fr}}
/* ---- CRM clients ---- */
.cl-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin-bottom:20px}
.cl-carte{background:var(--noir-3);border:1px solid rgba(233,233,238,.09);border-radius:14px;padding:18px 20px;cursor:pointer;transition:all .3s}
.cl-carte:hover,.cl-carte.actif{border-color:rgba(212,164,55,.5);transform:translateY(-2px)}
.cl-carte b{color:var(--argent);font-size:.95rem;display:block}
.cl-carte .cl-meta{font-size:.72rem;color:var(--argent-2);margin-top:4px;line-height:1.6}
.cl-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.cl-tag{font-size:.6rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border-radius:20px;border:1px solid rgba(212,164,55,.4);color:var(--or-clair)}
.cl-tag.vert{border-color:rgba(80,200,120,.4);color:#7ee2a8}
.histo{list-style:none;margin-top:6px}
.histo li{display:flex;gap:12px;padding:9px 0;border-bottom:1px dashed rgba(233,233,238,.08);font-size:.82rem;font-weight:300}
.histo .h-date{flex-shrink:0;width:78px;color:var(--argent-2);font-size:.72rem;padding-top:2px}
.histo .h-type{flex-shrink:0;font-size:.6rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:14px;height:fit-content;border:1px solid rgba(233,233,238,.2);color:var(--argent-2)}
.histo .h-type.devis{border-color:rgba(212,164,55,.4);color:var(--or-clair)}
.histo .h-type.question{border-color:rgba(80,160,255,.4);color:#8fc2ff}
.histo .h-type.soiree{border-color:rgba(80,200,120,.4);color:#7ee2a8}
.dv-table{width:100%;border-collapse:collapse;font-size:.8rem}
.dv-table th{text-align:left;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--or);padding:8px 10px;border-bottom:1px solid rgba(212,164,55,.25)}
.dv-table td{padding:9px 10px;border-bottom:1px solid rgba(233,233,238,.07)}
.dv-table select{padding:6px 10px;font-size:.72rem;width:auto}
/* ---- Feuille de route ---- */
.fr-table{width:100%;border-collapse:collapse;font-size:.8rem}
.fr-table th{background:#0d0d11;color:#d4a437;text-align:left;padding:9px 10px;font-size:.62rem;letter-spacing:.12em;text-transform:uppercase}
.fr-table td{padding:10px;border-bottom:1px solid #eee9dc;vertical-align:top;color:#333}
.fr-table td b{color:#1c1c22}
.fr-table .fr-h{font-weight:800;color:#9c7420;white-space:nowrap;width:56px}
.fr-table .fr-m{color:#555;font-style:italic;width:26%}
.fr-table tr:nth-child(even) td{background:#faf8f2}
.fr-retenir{margin-top:18px;border:1px solid #e3d9bd;background:#faf6ea;border-radius:12px;padding:14px 18px;font-size:.78rem;color:#444}
.fr-retenir b{color:#9c7420;display:block;margin-bottom:6px}
.fr-retenir ul{margin-left:18px}
.fr-bas{display:grid;grid-template-columns:1fr 1.4fr;gap:16px;margin-top:18px;font-size:.76rem;color:#555}
.fr-bas>div{border:1px dashed #cfc9b8;border-radius:12px;padding:12px 16px}
.fr-merci{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:.95rem;color:#9c7420;display:flex;align-items:center;justify-content:center;text-align:center}
#dr-a-corps[contenteditable=true]:focus{outline:2px dashed rgba(212,164,55,.5);outline-offset:-2px}
/* ---- Impression du déroulé ---- */
@media print{
  body.impression-d > *:not(#admin){display:none !important}
  body.impression-d #admin{position:static;display:block;background:#fff}
  body.impression-d .adm-side{display:none !important}
  body.impression-d .adm-main > *:not(#vue-deroule){display:none !important}
  body.impression-d #vue-deroule{display:block !important}
  body.impression-d #vue-deroule > *:not(.gen-grid){display:none !important}
  body.impression-d .gen-grid{display:block}
  body.impression-d #deroule-form,body.impression-d .apercu-actions{display:none !important}
  body.impression-d .adm-main{padding:0;overflow:visible}
  body.impression-d #deroule-apercu{box-shadow:none;border-radius:0}
}
