/* ═══════════════════════════════════════════════════════════════════════════
   Elevora CRM — agenda-vues.css  [V27] 09/10/2026, document 2 de Célian, étape 6
   Ce que l'étape 6 ajoute au calendrier (js/30-calendrier.js) : le titre libre d'un rendez-vous (§15),
   les onglets de vues enregistrées et leur panneau de réglages (§1), le calendrier des agents (§20).
   Couleurs en jetons uniquement (deux thèmes), hauteurs de commande en --cmd-h.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── §15 : le titre d'un rendez-vous ─────────────────────────────────────────── */
.ag-fen-creer .ag-f-titre-champ.ag-titre-vide{color:var(--text3)}
.ag-fen-creer .ag-f-titre-champ{cursor:text}
.ag-fen-creer .ag-f-titre-champ:hover{border-bottom-color:var(--text3)}
.ag-fen-creer .ag-f-titre-alerte{margin:4px 0 0;font-size:13px;line-height:1.45;color:var(--amber)}
.ag-fen-creer .ag-f-titre-alerte:empty{display:none}
.ag-fen-creer .ag-f-titre-auto{margin-top:6px}
.ag-fen-creer .ag-f-titre-auto[hidden]{display:none}
/* Rendez-vous rapide (js/66) : le titre du récapitulatif devient un champ, sans changer d'allure. */
.rdv-titre-champ{display:block;width:100%;border:0;border-bottom:1px dashed transparent;background:transparent;padding:0 0 2px;font:inherit;font-size:16.5px;font-weight:700;color:var(--text);line-height:1.35;outline:none;cursor:text}
.rdv-titre-champ:hover{border-bottom-color:var(--border-input)}
.rdv-titre-champ:focus{border-bottom:1px solid var(--accent)}
.rdv-titre-note{margin:2px 0 0;font-size:12.5px;line-height:1.4;color:var(--text2)}
.rdv-titre-note:empty{display:none}
.rdv-titre-note .btn{margin-left:6px}
.rdv-titre-alerte{color:var(--amber)}

/* ── §20 : « Ne plus afficher » dans la fenêtre « Prévenir les invités du changement ? » ────────── */
.ag-prev-plus{display:flex;align-items:center;gap:10px;margin-top:12px;min-height:32px;font-size:13.5px;color:var(--text);cursor:pointer}
.ag-prev-plus input{width:18px;height:18px;accent-color:var(--accent);flex-shrink:0;margin:0}
@media (pointer:coarse){.ag-prev-plus{min-height:44px}}

/* ── §20 : le calendrier dans l'espace partenaire (SON agenda Google) ─────────────────────────────────────
   Le menu d'un agent est réduit à Pipeline et Mes relevés (css/elevora.css) : le Calendrier s'y ajoute, sauf tant que le
   contrat n'est pas signé (l'espace se limite alors à l'écran de signature). Ce qui est propre à l'équipe disparaît de
   son agenda : réunion avec un membre, pages de réservation, utilisation du temps, et « Créer » se limite à l'événement. */
body.espace-agent .nav-group-body > #nav-calendrier.nav-i:not(#ag-_):not(#ag-__){display:flex!important}
body.espace-agent.ea-contrat-bloque .nav-group-body > #nav-calendrier.nav-i:not(#ag-_):not(#ag-__){display:none!important}
body.espace-agent #ag-rail .ag-reunion,
body.espace-agent #ag-rail details:has(#ag-pages),
body.espace-agent #ag-rail details:has(#ag-utilisation),
body.espace-agent #ag-menu-creer [role="menuitem"]:not(:first-child),
body.espace-agent #cal-ctx-menu [onclick*="'tache'"],
body.espace-agent #cal-ctx-menu [onclick*="'absence'"],
body.espace-agent #cal-ctx-menu [onclick*="'lieu'"],
body.espace-agent #rdv-tb-btn{display:none!important}
/* Les calendriers des agents (administrateurs) : la même case que les agendas du rail. */
.ag-agents .ag-rail-note{margin:0 0 6px}
.agt-cal-liste{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:6px}
.agt-cal-ligne{display:flex;flex-wrap:wrap;gap:4px 12px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--rs);background:var(--bg2)}
.agt-cal-quand{font-weight:600;color:var(--text);min-width:12em}
.agt-cal-titre{color:var(--text2)}

/* ── §1 : les onglets de vues enregistrées (classes de la page Tâches, .tk-*) et leur panneau ─────────────── */
.ag-vues{display:block;min-width:0;padding:0 2px}
.ag-vues .tk-onglets{margin-bottom:6px}
.ag-vues .tk-onglets-defil{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.ag-vues .tk-onglet{scroll-snap-align:start}
.ag-vues .tk-onglet-marque svg{display:block}
.ag-vues .tk-onglet-options{display:inline-flex;align-items:center;justify-content:center}
.ag-vues-pastilles{margin:0 0 8px}
.ag-vues-pastilles-t{display:inline-flex;color:var(--text2);margin-right:2px}
.ag-vues-etat{margin:0 0 8px;font-size:13px;color:var(--text2)}
/* Le tiroir de js/57 (_tpFenetre), ouvert à droite : le calendrier reste visible derrière, filtré en direct. */
.tk-ov--droite{justify-content:flex-end;align-items:stretch;padding:0;background:rgba(10,8,18,.28)}
/* Exception au voile commun (css/elevora.css, flou + fond sombre) : ce panneau sert à voir l'effet des filtres EN DIRECT
   sur le calendrier, qui doit rester lisible derrière. Fond léger, pas de flou. */
body>#ag-vue-reglages-ov.tk-ov--droite:not(#ag-_):not(#ag-__){background:rgba(10,8,18,.16)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.tk-ov--droite .tk-tiroir{border-left:1px solid var(--border2);border-right:0;border-radius:16px 0 0 16px;animation-name:ag-tiroir-droite}
@keyframes ag-tiroir-droite{from{transform:translateX(24px);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.tk-ov--droite .tk-tiroir{animation:none}}
.ag-vue-panneau{display:grid;gap:14px}
.ag-vue-champ{border:0;margin:0;padding:0;min-width:0;display:grid;gap:6px}
.ag-vue-legende{font-size:13px;font-weight:700;color:var(--text);padding:0}
.ag-vue-aide{margin:0;font-size:13px;line-height:1.5;color:var(--text2)}
.ag-vue-aide-inline{color:var(--text2);font-weight:400}
.ag-vue-valeurs{max-height:none}
.ag-vue-etat{margin:0;padding:8px 10px;border-radius:var(--rs);background:var(--bg3);font-size:13px;color:var(--text2)}
.ag-vue-etat--modif{background:var(--amber-bg);color:var(--amber);font-weight:600}
.ag-vue-actions{flex-wrap:wrap;width:100%}
@media (max-width:560px){
  .ag-vues .tk-onglet{min-height:44px}
  .ag-vues .tk-onglet-plus span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
  .ag-vues .tk-onglet-plus,.ag-vues .tk-onglet-options{min-width:44px;min-height:44px;justify-content:center}
  .tk-ov--droite .tk-tiroir{max-width:100%!important;border-radius:0}
  .ag-vue-panneau .tk-pop-choix{min-height:44px;align-items:center}
}

/* [V38] 15/10/2026 — Paramètres → Agendas (js/30d) : identifiants Google des agendas, audit des titres existants. Aucune animation. */
.agr-ligne{margin-bottom:var(--s3,12px)}
.agr-ligne .fi{max-width:560px;width:100%}
.agr-etat{font-size:var(--fs-min,12.5px);line-height:1.45;margin:4px 0 0;color:var(--text2)}
.agr-etat.agr-ok{color:var(--green)}
.agr-etat.agr-attente{color:var(--amber)}
.agr-sous-t{font-size:13.5px;font-weight:700;color:var(--text);margin:var(--s4,16px) 0 var(--s2,8px)}
.agr-fenetre{align-items:flex-end;flex-wrap:wrap}
.agr-resultat{margin-top:var(--s3,12px)}
.agr-bilan{font-size:14px;line-height:1.5;color:var(--text);margin:0 0 var(--s3,12px)}
.agr-defile{overflow-x:auto;margin-bottom:var(--s3,12px)}
.agr-table{border-collapse:collapse;width:100%;font-size:13.5px}
.agr-table th,.agr-table td{padding:6px 10px;text-align:left;vertical-align:top;border-bottom:1px solid var(--border);overflow-wrap:anywhere}
.agr-table thead th{color:var(--text2);font-weight:600}
.agr-apercu td:nth-child(3),.agr-apercu td:nth-child(4){min-width:200px}
.agr-aucun{color:var(--text3)}
.agr-progres{font-size:13.5px;color:var(--text2);margin:var(--s2,8px) 0 0}
