/* Onglet Planning de la page admin. Reprend la charte de l'admin (fond crème, Cormorant, Inter, angles droits). */
.onglets { max-width:980px; margin:0 auto; padding:18px 16px 0; display:flex; gap:0; border-bottom:1px solid var(--border); }
.onglets button { background:none; border:0; border-bottom:2px solid transparent; margin-bottom:-1px; padding:10px 16px;
  font-family:inherit; font-size:12px; letter-spacing:2px; text-transform:uppercase; font-weight:500; color:var(--muted); cursor:pointer; }
.onglets button[aria-selected="true"] { color:var(--dark); border-bottom-color:var(--dark); }

.pl { --rouge:#a04430; --rouge-bg:#f9ece8; --vert:#3d6b4f; --vert-bg:#e8efe9; --attente:#8b6a1e; --attente-bg:#f5eedd; --bleu:#3e5a80; }
.pl-haut { display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:12px 20px; }
.pl-haut h2 { border:0; padding:0; margin:0; font-size:34px; line-height:1; }
.pl-vues { display:flex; flex-wrap:wrap; border:1px solid var(--border); background:#fff; }
.pl-vues button { background:none; border:0; padding:7px 14px; font-family:inherit; font-size:13px; color:var(--muted); cursor:pointer; }
.pl-vues button[aria-pressed="true"] { background:var(--dark); color:var(--bg); }
.pl-resume { display:flex; flex-wrap:wrap; gap:6px 18px; font-size:14px; color:var(--muted); margin-top:14px; }
.pl-resume b { color:var(--dark); font-weight:500; font-variant-numeric:tabular-nums; }
.pl-resume .alerte b { color:var(--rouge); }
.pl-prochain { font-size:14px; color:var(--muted); margin-top:4px; }
.pl-prochain strong { color:var(--dark); font-weight:500; }

.pl-planche { margin-top:18px; border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding:14px 0; }
.pl-mois-bande { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:4px; }
.pl-cell { display:flex; flex-direction:column; align-items:center; gap:7px; background:none; border:0; padding:4px 0; cursor:pointer; font-family:inherit; }
.pl-cell:hover { background:var(--bg); }
.pl-cell[disabled] { cursor:default; background:none; }
.pl-cell .n { font-size:11px; color:var(--dark); font-variant-numeric:tabular-nums; }
.pl-images { display:flex; flex-direction:column-reverse; gap:3px; min-height:70px; }
.pl-img { width:20px; height:13px; background:var(--dark); }
.pl-img.hs { background:var(--rouge); }
.pl-img.att { background:transparent; border:1.5px dashed var(--muted); }
.pl-img.att.hs { border-color:var(--rouge); }
.pl-img.ev { background:var(--gold); width:14px; height:8px; margin:0 auto; }
.pl-img.passe { opacity:.35; }
.pl-cell .m { font-size:10px; letter-spacing:1px; text-transform:uppercase; color:var(--muted); text-align:center; line-height:1.3; }
.pl-cell .m small { display:block; font-size:9px; letter-spacing:0; opacity:.8; }

.pl-barre { display:flex; flex-wrap:wrap; gap:10px 16px; align-items:center; justify-content:space-between; margin-top:16px; }
.pl-legende { display:flex; flex-wrap:wrap; gap:6px 16px; font-size:12.5px; color:var(--muted); }
.pl-legende span { display:inline-flex; align-items:center; gap:6px; }
.pl-legende i { width:12px; height:12px; border:1px solid var(--border); background:#fff; display:inline-block; }
.pl-legende i.hs { background:var(--rouge-bg); border-color:var(--rouge); }
.pl-legende i.att { border:1.5px dashed var(--attente); }
.pl-legende i.ev { border-style:dashed; }
.pl-barre .actions { gap:8px; }
.pl .btn { margin-top:0; }

.pl-mois { margin-top:30px; }
.pl-mois-t { display:flex; align-items:baseline; justify-content:space-between; gap:12px; border-bottom:1px solid var(--dark); padding-bottom:6px; }
.pl-mois-t h3 { font-family:'Cormorant Garamond',Georgia,serif; font-weight:600; font-size:26px; color:var(--dark); text-transform:capitalize; line-height:1.1; }
.pl-mois-t span { font-size:12px; color:var(--muted); }
.pl-liste { list-style:none; }
.pl-ligne { border-bottom:1px solid var(--border); }
.pl-ligne.passe .pl-l { opacity:.55; }
.pl-l { display:grid; grid-template-columns:60px minmax(0,1fr) auto; gap:16px; align-items:start; width:100%; text-align:left;
  background:none; border:0; padding:14px 4px; cursor:pointer; font-family:inherit; color:inherit; }
.pl-l:hover { background:var(--bg); }
.pl-date { display:flex; flex-direction:column; align-items:center; gap:2px; border:1px solid var(--border); background:#fff; padding:6px 0 7px; }
.pl-date .d { font-family:'Cormorant Garamond',Georgia,serif; font-weight:600; font-size:28px; line-height:1; color:var(--dark); }
.pl-date .j { font-size:10px; letter-spacing:1.5px; text-transform:uppercase; color:var(--muted); }
.pl-ligne.hs .pl-date { background:var(--rouge-bg); border-color:var(--rouge); }
.pl-ligne.hs .pl-date .d, .pl-ligne.hs .pl-date .j { color:var(--rouge); }
.pl-ligne.hs .pl-date .j { font-weight:500; }
.pl-ligne.k-evenement .pl-date, .pl-ligne.k-seance .pl-date { border-style:dashed; }
.pl-corps { display:flex; flex-direction:column; gap:3px; min-width:0; }
.pl-titre { font-weight:500; font-size:16px; color:var(--dark); line-height:1.3; display:flex; flex-wrap:wrap; gap:4px 8px; align-items:baseline; }
.pl-type { font-size:10px; letter-spacing:1.5px; text-transform:uppercase; color:var(--accent); }
.pl-meta { font-size:13.5px; color:var(--muted); overflow-wrap:anywhere; }
.pl-note { font-size:13px; color:var(--muted); font-style:italic; overflow-wrap:anywhere; }
.pl-flags { display:flex; flex-wrap:wrap; gap:6px; margin-top:4px; }
.pl-flag { font-size:12px; padding:2px 8px; background:var(--rouge-bg); color:var(--rouge); }
.pl-flag.att { background:var(--attente-bg); color:var(--attente); }
.pl-cote { display:flex; flex-direction:column; align-items:flex-end; gap:5px; text-align:right; }
.pl-statut { font-size:10.5px; letter-spacing:1px; text-transform:uppercase; font-weight:500; padding:3px 9px; white-space:nowrap; border:1px solid transparent; }
.st-signe, .st-reserve { background:var(--vert-bg); color:var(--vert); }
.st-envoye { background:var(--attente-bg); color:var(--attente); }
.st-a_confirmer { border:1px dashed var(--attente); color:var(--attente); }
.st-discussion { border:1px dashed var(--bleu); color:var(--bleu); }
.st-annule { border:1px solid #999; color:#999; text-decoration:line-through; }
.st-evenement { border:1px solid var(--gold); color:var(--accent); }
.pl-prix { font-size:13px; color:var(--dark); font-variant-numeric:tabular-nums; }
.pl-j { font-size:11.5px; color:var(--muted); font-variant-numeric:tabular-nums; }
.pl.sans-montants .pl-prix, .pl.sans-montants .montant { display:none !important; }

.pl-fiche { padding:4px 4px 22px 80px; }
.pl-faits { display:flex; flex-wrap:wrap; gap:6px 18px; font-size:13px; color:var(--muted); }
.pl-faits b { color:var(--dark); font-weight:500; }
.pl-liens { display:flex; flex-wrap:wrap; gap:8px 16px; font-size:13.5px; margin-top:10px; align-items:center; }
.pl-liens a { color:var(--accent); }
.pl-fiche .grille2 { margin-top:4px; }
.pl-fiche textarea { width:100%; min-height:64px; padding:10px 12px; border:1px solid var(--border); font-size:15px; font-family:inherit; color:var(--dark); background:var(--bg); resize:vertical; }
.pl-fiche textarea:focus { outline:none; border-color:var(--gold); background:#fff; }
.pl-fiche-actions { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-top:16px; }
.pl-msg { font-size:13px; color:var(--muted); }
.pl-msg.err { color:var(--rouge); }
.pl-nouveau { margin-top:20px; border:1px solid var(--gold); background:var(--bg); padding:20px; }
.pl-nouveau .pl-fiche { padding:0; }
.pl-nouveau h3 { font-family:'Cormorant Garamond',Georgia,serif; font-weight:600; font-size:24px; color:var(--dark); }
.pl-etat { margin-top:24px; padding:34px 16px; text-align:center; color:var(--muted); font-size:14px; border:1px dashed var(--border); }
.pl-etat strong { display:block; font-family:'Cormorant Garamond',Georgia,serif; font-weight:600; font-size:24px; color:var(--dark); margin-bottom:4px; }

@media (max-width:640px) {
  .pl-haut h2 { font-size:30px; }
  .pl-l { grid-template-columns:52px minmax(0,1fr); gap:12px; }
  .pl-cote { grid-column:2; flex-direction:row; flex-wrap:wrap; align-items:center; justify-content:flex-start; gap:8px; }
  .pl-fiche { padding:4px 0 18px; }
  .pl-mois-bande { gap:2px; }
  .pl-img { width:15px; height:11px; }
  .pl-img.ev { width:11px; height:7px; }
  .pl-cell .m { font-size:9px; letter-spacing:0; }
}
