.anga-calendrier{--anga-accent:var(--ast-global-color-0,#8a5a44);--anga-texte:var(--ast-global-color-2,#333);--anga-bordure:#e6e0d8;--anga-fond:#faf8f5;text-transform:none;color:var(--anga-texte)}
.anga-aide{margin:0 0 1rem;font-size:.95rem;opacity:.85}
.anga-vide{padding:1.5rem;background:var(--anga-fond);border-radius:8px}
.anga-legende{list-style:none;margin:0 0 2.5rem;padding:0;display:flex;flex-wrap:wrap;gap:.5rem .5rem;font-size:.88rem}
.anga-legende__item{display:inline-flex;align-items:center;white-space:nowrap;padding:.32rem .65rem .32rem .5rem;border-radius:6px;border-left:5px solid var(--anga-c);background:var(--anga-cbg);font-weight:600;color:var(--anga-texte)}
.anga-legende__item::before{content:"";display:inline-block;width:.9em;height:.9em;border-radius:3px;background:var(--anga-c);margin-right:.4em;flex:none}
.anga-c0{--anga-c:#c96f4e;--anga-cbg:#f9e8e1}
.anga-c1{--anga-c:#5d8a66;--anga-cbg:#e5f0e7}
.anga-c2{--anga-c:#4f7ba6;--anga-cbg:#e3ecf5}
.anga-c3{--anga-c:#b8862b;--anga-cbg:#f8efd9}
.anga-c4{--anga-c:#8a5b9e;--anga-cbg:#efe6f3}
.anga-c5{--anga-c:#3f8f8a;--anga-cbg:#dff0ee}
/* Couleurs fixes par type de cours */
.anga-c-bleu-poudre{--anga-c:#6f9fc8;--anga-cbg:#dceaf6}
.anga-c-rouge{--anga-c:#c0392b;--anga-cbg:#f7dedb}
.anga-c-mauve{--anga-c:#8a5b9e;--anga-cbg:#efe6f3}
.anga-c-vert{--anga-c:#5d8a66;--anga-cbg:#e5f0e7}
.anga-c-jaune{--anga-c:#d9b830;--anga-cbg:#faf3cf}
.anga-mois{margin:0 0 3rem}
.anga-mois__titre{margin:0 0 1rem;font-size:1.4rem;letter-spacing:2px;text-transform:none}
.anga-grille{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.anga-entete{font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;text-align:center;padding:.6rem 0;background:#fff;border:1px solid var(--anga-bordure);border-radius:6px;color:var(--anga-accent)}
.anga-jour{min-height:120px;border:1px solid var(--anga-bordure);border-radius:6px;padding:.3rem .35rem .35rem;background:#fff;display:flex;flex-direction:column;gap:0;min-width:0}
.anga-jour--vide{background:#fff}
.anga-jour--passe{background:var(--anga-fond);opacity:.6}
.anga-num{font-size:.85rem;font-weight:600;width:1.7em;height:1.7em;display:inline-flex;align-items:center;justify-content:center;align-self:flex-end;border-radius:999px}
.anga-jour--aujourdhui .anga-num{background:var(--anga-accent);color:#fff}
.anga-seance{all:unset;box-sizing:border-box;cursor:pointer;display:block;width:100%;font-size:.78rem;line-height:1.25;padding:.3rem .4rem;border-radius:4px;border-left:3px solid var(--anga-c);background:var(--anga-cbg);color:var(--anga-texte);overflow-wrap:anywhere}
.anga-seance:hover,.anga-seance:focus-visible{outline:2px solid var(--anga-c);outline-offset:1px}
.anga-seance__heure{font-weight:700}
.anga-seance--complet{opacity:.6}
.anga-seance__etat{display:block;font-size:.7rem;font-weight:700;color:#a33;margin-top:.15rem}
.anga-date-longue{display:none}
@media (max-width:700px){
  .anga-grille{display:block}
  .anga-entete,.anga-jour{display:none}
  .anga-jour--a-seances{display:flex;margin-bottom:.6rem;min-height:0}
  .anga-jour--a-seances .anga-num{display:none}
  .anga-date-longue{display:block;font-weight:600;font-size:.9rem;margin-bottom:.2rem}
  .anga-seance{font-size:.9rem;padding:.5rem .6rem}
  .anga-tiers:not(.anga-tiers--occupe){display:none}
  .anga-tiers{border-top:0;min-height:0;padding:.2rem 0}
}
.anga-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:1rem}
.anga-modal[hidden]{display:none}
.anga-modal__fond{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.anga-modal__boite{position:relative;background:#fff;color:var(--anga-texte);border-radius:10px;max-width:520px;width:100%;padding:2rem;box-shadow:0 20px 60px rgba(0,0,0,.25);max-height:90vh;overflow:auto}
.anga-modal__fermer{all:unset;position:absolute;top:.5rem;right:.9rem;font-size:1.8rem;line-height:1;cursor:pointer;padding:.25rem}
.anga-modal__fermer:focus-visible{outline:2px solid var(--anga-accent)}
.anga-modal h3{margin:0 0 .75rem;padding-right:2rem;text-transform:none;font-size:1.3rem}
.anga-modal__quand{font-weight:600;margin:0 0 .3rem}
.anga-modal__prix,.anga-modal__places{margin:0 0 .3rem}
.anga-modal__places--complet{color:#a33;font-weight:600}
.anga-modal__extrait{margin:1rem 0 0;font-size:.95rem}
.anga-modal__actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem}
.anga-btn{display:inline-block;padding:.65rem 1.2rem;border-radius:4px;border:2px solid var(--anga-accent);color:var(--anga-accent);text-decoration:none;font-weight:600;font-size:.95rem;line-height:1.2}
.anga-btn--principal{background:var(--anga-accent);color:#fff}
.anga-btn--principal:hover{color:#fff;opacity:.9}
.anga-btn--inactif{opacity:.5;pointer-events:none;cursor:default}
.anga-btn[hidden]{display:none}
.anga-modal__session{margin:0 0 .5rem;font-size:.92rem;opacity:.85}
.anga-modal__session[hidden],.anga-modal__note[hidden]{display:none}
.anga-modal__note{margin:0 0 .8rem;font-size:.95rem;font-weight:700}
.anga-prix-note{font-weight:400;font-size:.9em;opacity:.8}
.anga-seance__partie{display:inline-block;font-size:.68rem;font-weight:700;padding:0 .3em;border-radius:3px;background:var(--anga-c);color:#fff;vertical-align:.05em}
.anga-modal__quand[hidden],.anga-modal__prix[hidden],.anga-modal__places[hidden]{display:none}
/* Tiers de la journée dans chaque case : matin / après-midi / soir */
.anga-tiers{flex:1 1 1.7rem;padding:.15rem 0;border-top:1px dashed var(--anga-bordure);display:flex;flex-direction:column;gap:.2rem;justify-content:center}
.anga-jour--vide .anga-tiers{display:none}
.anga-seance{padding:.25rem .35rem}
/* Légende cliquable (filtre par type) */
.anga-legende li{margin:0;padding:0}
.anga-legende button.anga-legende__item{cursor:pointer;font:inherit;font-size:.88rem;line-height:1.2;text-transform:none;letter-spacing:0;font-weight:500;border:1px solid transparent;border-left-width:5px}
.anga-legende button.anga-legende__item:hover{border-color:var(--anga-c)}
.anga-legende button.anga-legende__item.is-actif{font-weight:700;border-color:var(--anga-c);box-shadow:0 2px 6px rgba(0,0,0,.15)}
.anga-legende button.anga-legende__item.is-actif::after{content:"✓";margin-left:.45em;font-weight:700;color:var(--anga-c)}
.anga-legende__item--tous{--anga-c:var(--anga-accent);--anga-cbg:#f3ede6}
.anga-legende__item--tous::before{display:none}
.anga-seance[hidden]{display:none}
.anga-jour--filtre{opacity:.45}
@media (max-width:700px){.anga-jour--a-seances.anga-jour--filtre{display:none}}
.anga-suite{margin:0 0 2rem;padding:1rem 1.2rem;background:var(--anga-fond);border-radius:8px;text-transform:none}
