/* fonctions/agenda/agenda-v2.css — agenda v2 : barre des vues et des filtres, À traiter, Semaine, Année,
   Par personne, pastilles du mois (échéance bleue, relance ambre, retard rouge), glisser-déposer.
   Chargé juste après agenda-moderne.css (voir index.html) ; le téléphone garde son agenda (telephone.css). */
:root{--ag2-echeance:#6c9ef8;--ag2-relance:var(--remind);--ag2-retard:var(--danger);}

/* ---------- Barre : vues, compteur de retards, filtres ---------- */
#agendaView .agenda-nav-btn[hidden],#agendaView .agenda-today-btn[hidden]{display:none;}
.agenda-vues button{display:inline-flex;align-items:center;gap:calc(5px * var(--ui-scale-factor));}
.agenda-nb-retards{min-width:calc(15px * var(--ui-scale-factor));padding:0 calc(4px * var(--ui-scale-factor));border-radius:calc(8px * var(--ui-scale-factor));background:color-mix(in srgb,var(--ag2-retard) 30%,var(--surface));border:calc(1px * var(--ui-scale-factor)) solid color-mix(in srgb,var(--ag2-retard) 70%,transparent);color:#ffd2cd;font-size:calc(8.5px * var(--ui-scale-factor));font-weight:750;line-height:calc(13px * var(--ui-scale-factor));text-align:center;}
.agenda-nb-retards[hidden]{display:none;}
.agenda-filtres{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:calc(6px * var(--ui-scale-factor));flex-shrink:0;}
.agenda-filtre,.agenda-interrupteur{display:inline-flex;align-items:center;gap:calc(5px * var(--ui-scale-factor));padding:calc(3.5px * var(--ui-scale-factor)) calc(9px * var(--ui-scale-factor));border-radius:calc(12px * var(--ui-scale-factor));border:calc(1px * var(--ui-scale-factor)) solid var(--border);background:var(--surface-2);color:var(--text);font:600 calc(9.5px * var(--ui-scale-factor)) system-ui,sans-serif;cursor:pointer;}
.agenda-filtre[hidden]{display:none;}
.agenda-filtre[aria-pressed="false"]{color:var(--text-faint);background:transparent;border-style:dashed;}
.agenda-filtre[aria-pressed="false"] .ag2-point{opacity:.35;}
.agenda-filtre:hover,.agenda-interrupteur:hover{border-color:var(--text-faint);}
.agenda-tableau{padding:calc(3.5px * var(--ui-scale-factor)) calc(6px * var(--ui-scale-factor));border-radius:calc(6px * var(--ui-scale-factor));border:calc(1px * var(--ui-scale-factor)) solid var(--border);background:var(--surface-2);color:var(--text);font:600 calc(9.5px * var(--ui-scale-factor)) system-ui,sans-serif;max-width:calc(200px * var(--ui-scale-factor));}
.agenda-tableau[hidden]{display:none;}
.agenda-interrupteur-i{position:relative;width:calc(22px * var(--ui-scale-factor));height:calc(12px * var(--ui-scale-factor));border-radius:calc(6px * var(--ui-scale-factor));background:var(--surface-3);border:calc(1px * var(--ui-scale-factor)) solid var(--border);transition:background .15s ease;}
.agenda-interrupteur-i::after{content:'';position:absolute;top:calc(1px * var(--ui-scale-factor));left:calc(1px * var(--ui-scale-factor));width:round(calc(8px * var(--ui-scale-factor)),1px);height:round(calc(8px * var(--ui-scale-factor)),1px);border-radius:50%;background:var(--text-dim);transition:transform .15s ease;}
.agenda-interrupteur[aria-checked="true"] .agenda-interrupteur-i{background:var(--accent);border-color:var(--accent);}
.agenda-interrupteur[aria-checked="true"] .agenda-interrupteur-i::after{background:#fff;transform:translateX(calc(10px * var(--ui-scale-factor)));}
.agenda-legend[hidden]{display:none;}
.ag2-point{display:inline-block;flex-shrink:0;width:round(calc(6px * var(--ui-scale-factor)),1px);height:round(calc(6px * var(--ui-scale-factor)),1px);border-radius:50%;background:var(--ag2-echeance);}
.ag2-point.relance,.relance > .ag2-point,.relance .ag2-point{background:var(--ag2-relance);}
.retard > .ag2-point,.retard .ag2-point{background:var(--ag2-retard);}
.fait > .ag2-point,.fait .ag2-point{background:var(--text-faint);}

/* ---------- Zone des vues ---------- */
.agenda-canvas.ag2-canvas{display:block;overflow:auto;}
.ag2-vide{padding:calc(4px * var(--ui-scale-factor)) calc(2px * var(--ui-scale-factor));color:var(--text-faint);font-size:calc(9.5px * var(--ui-scale-factor));}
.ag2-aide{margin:calc(6px * var(--ui-scale-factor)) 0 0;color:var(--text-faint);font-size:calc(8.5px * var(--ui-scale-factor));line-height:1.4;}
.ag2-accueil{max-width:calc(420px * var(--ui-scale-factor));margin:calc(40px * var(--ui-scale-factor)) auto;text-align:center;color:var(--text-dim);font-size:calc(10.5px * var(--ui-scale-factor));line-height:1.5;}
.ag2-accueil b{display:block;color:var(--text);font-size:calc(14px * var(--ui-scale-factor));margin-bottom:calc(6px * var(--ui-scale-factor));}
.search-dim{opacity:.32;filter:saturate(.55);}
.ag2-survol{outline:calc(2px * var(--ui-scale-factor)) dashed var(--accent);outline-offset:calc(-2px * var(--ui-scale-factor));background-color:color-mix(in srgb,var(--accent) 10%,var(--surface)) !important;}
.ag2-tenu{opacity:.45;}

/* ---------- Boutons et états ---------- */
.ag2-btn{display:inline-flex;align-items:center;gap:calc(3px * var(--ui-scale-factor));padding:calc(2.5px * var(--ui-scale-factor)) calc(7px * var(--ui-scale-factor));border-radius:calc(5px * var(--ui-scale-factor));border:calc(1px * var(--ui-scale-factor)) solid var(--border);background:var(--surface-2);color:var(--text);font:650 calc(8.5px * var(--ui-scale-factor)) system-ui,sans-serif;white-space:nowrap;cursor:pointer;}
.ag2-btn:hover{border-color:var(--text-faint);background:var(--surface-3);}
.ag2-btn.fantome{background:transparent;color:var(--text-dim);}
.ag2-btn.fantome:hover{color:var(--text);}
.ag2-etat{display:inline-flex;align-items:center;gap:calc(3px * var(--ui-scale-factor));padding:calc(1.5px * var(--ui-scale-factor)) calc(6px * var(--ui-scale-factor));border-radius:calc(8px * var(--ui-scale-factor));font-size:calc(8px * var(--ui-scale-factor));font-weight:700;white-space:nowrap;}
.ag2-etat::before{content:'';width:round(calc(5px * var(--ui-scale-factor)),1px);height:round(calc(5px * var(--ui-scale-factor)),1px);border-radius:50%;background:currentColor;}
.ag2-etat.echeance{background:color-mix(in srgb,var(--ag2-echeance) 18%,var(--surface));color:#b9d0ff;}
.ag2-etat.relance{background:color-mix(in srgb,var(--ag2-relance) 18%,var(--surface));color:#f5d99a;}
.ag2-etat.retard{background:color-mix(in srgb,var(--ag2-retard) 24%,var(--surface));color:#ffc2bb;}
.ag2-etat.fait,.ag2-etat.sans{background:var(--surface-2);color:var(--text-faint);}
.ag2-etat.fait::before,.ag2-etat.sans::before{display:none;}

/* ---------- Lignes (À traiter, panneau du jour) ---------- */
.ag2-ligne{position:relative;display:grid;grid-template-columns:calc(4px * var(--ui-scale-factor)) minmax(0,1fr) auto;align-items:center;gap:calc(8px * var(--ui-scale-factor));padding:calc(6px * var(--ui-scale-factor)) calc(7px * var(--ui-scale-factor)) calc(6px * var(--ui-scale-factor)) calc(6px * var(--ui-scale-factor));margin-bottom:calc(4px * var(--ui-scale-factor));border-radius:calc(7px * var(--ui-scale-factor));background:var(--surface);border:calc(1px * var(--ui-scale-factor)) solid var(--border-soft);cursor:pointer;}
.ag2-ligne:hover{border-color:var(--border);background:color-mix(in srgb,var(--surface) 88%,#fff);}
.ag2-ligne:focus-visible{outline:calc(2px * var(--ui-scale-factor)) solid var(--accent);}
.ag2-barre{align-self:stretch;border-radius:calc(2px * var(--ui-scale-factor));background:var(--c,var(--border));}
.ag2-texte{min-width:0;display:flex;flex-direction:column;gap:calc(1.5px * var(--ui-scale-factor));}
.ag2-texte b{font-size:calc(10.5px * var(--ui-scale-factor));font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ag2-texte span{font-size:calc(8.5px * var(--ui-scale-factor));color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ag2-actions{display:flex;align-items:center;gap:calc(4px * var(--ui-scale-factor));}
.ag2-ligne.fait .ag2-texte b{text-decoration:line-through;color:var(--text-dim);}
.ag2-ligne.retard{border-color:color-mix(in srgb,var(--ag2-retard) 40%,var(--border-soft));}
.ag2-traiter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(16px * var(--ui-scale-factor));align-items:start;}
.ag2-col{min-width:0;}
.ag2-groupe{margin-bottom:calc(12px * var(--ui-scale-factor));border-radius:calc(8px * var(--ui-scale-factor));}
.ag2-groupe h3{display:flex;align-items:center;gap:calc(6px * var(--ui-scale-factor));margin:0 0 calc(6px * var(--ui-scale-factor));font-size:calc(9px * var(--ui-scale-factor));font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);}
.ag2-groupe h3 .n{padding:0 calc(5px * var(--ui-scale-factor));border-radius:calc(7px * var(--ui-scale-factor));background:var(--surface-3);color:var(--text);letter-spacing:0;}
.ag2-groupe.retard h3{color:#ff9d93;}
.ag2-groupe.retard h3 .n{background:color-mix(in srgb,var(--ag2-retard) 35%,var(--surface));}
.ag2-groupe.auj h3{color:var(--text);}
.ag2-groupe h3 .ag2-tout{margin-left:auto;text-transform:none;letter-spacing:0;font-weight:650;}
.ag2-panneau-lignes .ag2-ligne{grid-template-columns:calc(4px * var(--ui-scale-factor)) minmax(0,1fr);}
.ag2-panneau-lignes .ag2-actions{grid-column:2;flex-wrap:wrap;}

/* ---------- Semaine ---------- */
.ag2-bandeau-retard{display:flex;align-items:center;gap:calc(8px * var(--ui-scale-factor));margin-bottom:calc(8px * var(--ui-scale-factor));padding:calc(6px * var(--ui-scale-factor)) calc(10px * var(--ui-scale-factor));border-radius:calc(7px * var(--ui-scale-factor));background:color-mix(in srgb,var(--ag2-retard) 16%,var(--surface));border:calc(1px * var(--ui-scale-factor)) solid color-mix(in srgb,var(--ag2-retard) 45%,transparent);font-size:calc(9.5px * var(--ui-scale-factor));}
.ag2-bandeau-retard b{color:#ffb4ab;}
.ag2-bandeau-retard .ag2-btn{margin-left:auto;}
.ag2-semaine{display:grid;grid-template-columns:repeat(7,minmax(calc(96px * var(--ui-scale-factor)),1fr)) minmax(calc(110px * var(--ui-scale-factor)),.9fr);gap:calc(6px * var(--ui-scale-factor));min-height:calc(100% - 4px);}
.ag2-jour{position:relative;display:flex;flex-direction:column;min-width:0;min-height:calc(260px * var(--ui-scale-factor));border-radius:calc(8px * var(--ui-scale-factor));background:var(--surface);border:calc(1px * var(--ui-scale-factor)) solid var(--border-soft);overflow:hidden;}
.ag2-jour::before,.ag2-p-case::before{content:'';position:absolute;left:0;right:0;top:0;height:calc(4px * var(--ui-scale-factor));background:linear-gradient(90deg,var(--am-c,transparent) 0 50%,var(--pm-c,transparent) 50% 100%);}
.ag2-jour.we{background:color-mix(in srgb,var(--surface) 82%,#000);}
.ag2-jour.auj{border-color:var(--accent);box-shadow:0 0 0 calc(1px * var(--ui-scale-factor)) var(--accent);}
.ag2-jour.sansdate{background:transparent;border-style:dashed;}
.ag2-jour-tete{display:flex;align-items:baseline;gap:calc(5px * var(--ui-scale-factor));padding:calc(8px * var(--ui-scale-factor)) calc(7px * var(--ui-scale-factor)) calc(5px * var(--ui-scale-factor));}
.ag2-jour-tete b{font-size:calc(14px * var(--ui-scale-factor));font-weight:750;}
.ag2-jour-tete b.petit{font-size:calc(10px * var(--ui-scale-factor));}
.ag2-jour-tete span{min-width:0;font-size:calc(8.5px * var(--ui-scale-factor));color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ag2-jour-tete .n{margin-left:auto;color:var(--text-faint);font-weight:700;}
.ag2-nb-retard{font-style:normal;font-size:calc(8px * var(--ui-scale-factor));font-weight:750;color:#ffb4ab;}
.ag2-nb-retard::before{content:'● ';}
.ag2-ajout{flex-shrink:0;width:calc(17px * var(--ui-scale-factor));height:calc(17px * var(--ui-scale-factor));padding:0;border:0;border-radius:calc(4px * var(--ui-scale-factor));background:transparent;color:var(--text-faint);font-size:calc(13px * var(--ui-scale-factor));line-height:1;opacity:0;cursor:pointer;}
.ag2-jour:hover .ag2-ajout,.ag2-ajout:focus-visible{opacity:1;}
.ag2-ajout:hover{background:var(--surface-3);color:var(--text);}
.ag2-jour-corps{flex:1;display:flex;flex-direction:column;gap:calc(4px * var(--ui-scale-factor));padding:0 calc(5px * var(--ui-scale-factor)) calc(6px * var(--ui-scale-factor));overflow-y:auto;}
.ag2-puce{display:flex;flex-direction:column;gap:calc(1.5px * var(--ui-scale-factor));padding:calc(4px * var(--ui-scale-factor)) calc(6px * var(--ui-scale-factor)) calc(4px * var(--ui-scale-factor)) calc(8px * var(--ui-scale-factor));border-radius:calc(5px * var(--ui-scale-factor));background:var(--surface-2);border:calc(1px * var(--ui-scale-factor)) solid var(--border-soft);border-left:calc(3px * var(--ui-scale-factor)) solid var(--c,var(--border));cursor:grab;}
.ag2-puce:hover{border-color:var(--border);border-left-color:var(--c,var(--border));}
.ag2-puce b{font-size:calc(9.5px * var(--ui-scale-factor));font-weight:650;line-height:1.25;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.ag2-puce span{display:flex;align-items:center;gap:calc(4px * var(--ui-scale-factor));font-size:calc(8px * var(--ui-scale-factor));color:var(--text-dim);}
.ag2-puce.retard span{color:#ffb4ab;}
.ag2-puce.fait b{text-decoration:line-through;color:var(--text-dim);}

/* ---------- Mois : pastilles et retards ---------- */
.agenda-chip .ag2-point{width:round(calc(5px * var(--ui-scale-factor)),1px);height:round(calc(5px * var(--ui-scale-factor)),1px);}
.agenda-chip{cursor:grab;}
.agenda-chip.retard{border-color:color-mix(in srgb,var(--ag2-retard) 45%,var(--border-soft));}
.agenda-chip.fait .agenda-chip-title{text-decoration:line-through;color:var(--text-dim);}
.ag2-nb-retard-mois{font-size:calc(8px * var(--ui-scale-factor));font-weight:750;color:#ffb4ab;white-space:nowrap;}
.ag2-nb-retard-mois::before{content:'● ';}

/* ---------- Année ---------- */
.ag2-annee{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:calc(8px * var(--ui-scale-factor)) calc(12px * var(--ui-scale-factor));}
.ag2-mm{padding:calc(6px * var(--ui-scale-factor)) calc(8px * var(--ui-scale-factor));border-radius:calc(8px * var(--ui-scale-factor));background:var(--surface);border:calc(1px * var(--ui-scale-factor)) solid var(--border-soft);}
.ag2-mm-tete{display:flex;align-items:baseline;justify-content:space-between;gap:calc(6px * var(--ui-scale-factor));width:100%;padding:0 0 calc(5px * var(--ui-scale-factor));border:0;background:none;color:var(--text);text-align:left;cursor:pointer;}
.ag2-mm-tete b{font-size:calc(11px * var(--ui-scale-factor));}
.ag2-mm-tete span{font-size:calc(8px * var(--ui-scale-factor));color:var(--text-dim);}
.ag2-mm-tete em{font-style:normal;color:#ffb4ab;}
.ag2-mm-tete:hover b{text-decoration:underline;}
.ag2-mm-jours{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:calc(1.5px * var(--ui-scale-factor));}
.ag2-dow{font-size:calc(7px * var(--ui-scale-factor));color:var(--text-faint);text-align:center;}
.ag2-j{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;height:calc(17px * var(--ui-scale-factor));padding:calc(2px * var(--ui-scale-factor)) 0 0;border:0;border-radius:calc(3px * var(--ui-scale-factor));background:var(--surface-2);color:var(--text-dim);font:600 calc(7.5px * var(--ui-scale-factor)) system-ui,sans-serif;line-height:1.1;cursor:pointer;}
.ag2-j.vide{background:none;cursor:default;}
.ag2-j.we{color:var(--text-faint);}
.ag2-j:hover{background:var(--surface-3);color:var(--text);}
.ag2-j.auj{box-shadow:0 0 0 calc(1.5px * var(--ui-scale-factor)) var(--accent);color:var(--text);}
.ag2-annee.rythme .ag2-j{background-image:linear-gradient(135deg,color-mix(in srgb,var(--am-c,transparent) 45%,transparent) 0 50%,color-mix(in srgb,var(--pm-c,transparent) 45%,transparent) 50% 100%);}
.ag2-points{position:absolute;left:0;right:0;bottom:calc(1.5px * var(--ui-scale-factor));display:flex;justify-content:center;gap:calc(1.5px * var(--ui-scale-factor));}
.ag2-points i{width:round(calc(3.5px * var(--ui-scale-factor)),1px);height:round(calc(3.5px * var(--ui-scale-factor)),1px);border-radius:50%;background:var(--ag2-echeance);}
.ag2-points i.relance{background:var(--ag2-relance);}
.ag2-points i.retard{background:var(--ag2-retard);}
.ag2-charge{height:calc(3px * var(--ui-scale-factor));margin-top:calc(6px * var(--ui-scale-factor));border-radius:calc(2px * var(--ui-scale-factor));background:var(--surface-2);overflow:hidden;}
.ag2-charge i{display:block;height:100%;background:var(--accent);}

/* ---------- Par personne ---------- */
.ag2-personnes{display:grid;grid-template-columns:minmax(calc(130px * var(--ui-scale-factor)),.9fr) repeat(7,minmax(calc(90px * var(--ui-scale-factor)),1fr));gap:calc(4px * var(--ui-scale-factor));}
.ag2-p-coin{font-size:calc(9px * var(--ui-scale-factor));color:var(--text-faint);align-self:end;padding:0 calc(4px * var(--ui-scale-factor)) calc(4px * var(--ui-scale-factor));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ag2-p-ent{padding:calc(4px * var(--ui-scale-factor));font-size:calc(9px * var(--ui-scale-factor));font-weight:700;color:var(--text-dim);text-align:center;}
.ag2-p-ent.auj{color:var(--accent);}
.ag2-p-qui{display:flex;align-items:center;gap:calc(6px * var(--ui-scale-factor));padding:calc(6px * var(--ui-scale-factor));border-radius:calc(7px * var(--ui-scale-factor));background:var(--surface);border:calc(1px * var(--ui-scale-factor)) solid var(--border-soft);font-size:calc(10px * var(--ui-scale-factor));font-weight:650;}
.ag2-p-qui span{display:flex;flex-direction:column;min-width:0;}
.ag2-p-qui small{font-size:calc(8px * var(--ui-scale-factor));font-weight:500;color:var(--text-faint);}
.ag2-p-case{position:relative;display:flex;flex-direction:column;gap:calc(3px * var(--ui-scale-factor));min-height:calc(56px * var(--ui-scale-factor));padding:calc(6px * var(--ui-scale-factor)) calc(4px * var(--ui-scale-factor)) calc(4px * var(--ui-scale-factor));border-radius:calc(7px * var(--ui-scale-factor));background:var(--surface);border:calc(1px * var(--ui-scale-factor)) solid var(--border-soft);}
.ag2-p-case.we{background:color-mix(in srgb,var(--surface) 82%,#000);}
.ag2-p-case.auj{border-color:color-mix(in srgb,var(--accent) 60%,var(--border-soft));}

/* ---------- Écrans moyens ---------- */
@media (max-width:1180px){
 .ag2-annee{grid-template-columns:repeat(3,minmax(0,1fr));}
 .ag2-traiter{grid-template-columns:1fr;}
}
@media (max-width:900px){
 .ag2-annee{grid-template-columns:repeat(2,minmax(0,1fr));}
 .agenda-filtres{justify-content:flex-start;}
}
/* Téléphone : son propre agenda (fonctions/telephone/agenda-vue-telephone.js), sans cette barre. */
html.mode-telephone #agendaFiltres{display:none !important;}
/* Agenda du téléphone (telephone/agenda-vue-telephone.js) : compteur de retards sur l'onglet, filtres. */
.tel-ag-nb-retard{display:inline-block;min-width:20px;margin-left:6px;padding:0 6px;border-radius:10px;background:color-mix(in srgb,var(--ag2-retard) 35%,var(--surface));color:#ffd2cd;font-size:12px;font-weight:750;line-height:20px;text-align:center;vertical-align:1px;}
.tel-ag-filtres{display:flex;gap:8px;margin:10px 0 2px;}
.tel-ag-filtre{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 14px;border-radius:18px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font:600 14px/1 inherit;font-family:inherit;cursor:pointer;}
.tel-ag-filtre i{width:9px;height:9px;border-radius:50%;background:var(--ag2-echeance);}
.tel-ag-filtre i.ambre{background:var(--ag2-relance);}
.tel-ag-filtre[aria-pressed="false"]{background:transparent;border-style:dashed;color:var(--text-faint);}
.tel-ag-filtre[aria-pressed="false"] i{opacity:.35;}
