/* Galerie albums-photos sur la page Photos / Vidéos (même charte que le site) */
.albums{scroll-margin-top:90px}
.alb-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 20px;margin:0 0 18px}
.alb-head h2{margin:0}
.alb-meta{margin:0;color:var(--soft);font-size:15px}
.alb-back{margin:0 0 10px;font-size:15px}
.alb-back a{text-decoration:none;font-weight:600}
.alb-note{color:var(--soft)}
.ph-card .label>span:first-child{display:flex;flex-direction:column;min-width:0}
.alb-n{font-family:var(--font);font-weight:500;font-size:13px;opacity:.85;margin-top:2px}

/* Album : mosaïque */
.alb-grid{columns:4 240px;column-gap:12px}
.alb-tile{position:relative;display:block;margin:0 0 12px;break-inside:avoid;border-radius:12px;overflow:hidden;background:#D6E2D9}
.alb-tile img:not(.alb-wm),.alb-tile video{display:block;width:100%;height:100%;object-fit:cover;border-radius:0;transition:transform .35s}
.alb-tile:hover img:not(.alb-wm){transform:scale(1.03)}
.alb-play{position:absolute;inset:0;margin:auto;width:58px;height:58px;border-radius:999px;background:rgba(20,51,38,.72);box-shadow:0 4px 18px rgba(0,0,0,.25)}
.alb-play::before{content:"";position:absolute;left:23px;top:18px;border-style:solid;border-width:11px 0 11px 17px;border-color:transparent transparent transparent #fff}
.alb-tile:hover .alb-play{background:var(--accent)}
.alb-wm{position:absolute;height:auto !important;max-width:none;object-fit:contain;pointer-events:none;border-radius:0}
.alb-wm-br{right:3%;bottom:3%}.alb-wm-bl{left:3%;bottom:3%}.alb-wm-tr{right:3%;top:3%}.alb-wm-tl{left:3%;top:3%}
.alb-wm-c{left:50%;top:50%;transform:translate(-50%,-50%)}
@media (max-width:640px){.alb-grid{columns:2;column-gap:8px}.alb-tile{margin-bottom:8px;border-radius:10px}.alb-play{width:44px;height:44px}.alb-play::before{left:17px;top:13px;border-width:9px 0 9px 14px}}

/* Visionneuse plein écran */
.alb-viewer{position:fixed;inset:0;z-index:400;background:rgba(10,20,15,.95);display:flex;align-items:center;justify-content:center}
.alb-viewer[hidden]{display:none}
.alb-stage{position:relative;max-width:calc(100vw - 140px);max-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center}
.alb-stage .alb-frame{position:relative;display:inline-block;line-height:0}
.alb-stage img.alb-full{display:block;max-width:calc(100vw - 140px);max-height:calc(100vh - 80px);width:auto;height:auto;border-radius:6px}
.alb-stage iframe,.alb-stage video{width:min(calc(100vw - 140px),calc((100vh - 80px) * 16 / 9));aspect-ratio:16/9;height:auto;border:0;border-radius:6px;background:#000}
.alb-stage video{aspect-ratio:auto;max-height:calc(100vh - 80px)}
.alb-viewer button{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;border-radius:999px;width:48px;height:48px;font-size:30px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.alb-viewer button:hover{background:var(--accent)}
.alb-x{top:16px;right:16px}
.alb-prev{left:16px;top:50%;transform:translateY(-50%)}
.alb-next{right:16px;top:50%;transform:translateY(-50%)}
.alb-count{position:absolute;bottom:14px;left:0;right:0;text-align:center;color:#cfdcd4;font-size:14px}
@media (max-width:640px){
  .alb-stage,.alb-stage img.alb-full{max-width:100vw;max-height:calc(100vh - 120px)}
  .alb-stage iframe,.alb-stage video{width:100vw}
  .alb-prev,.alb-next{top:auto;bottom:8px;transform:none}
  .alb-count{bottom:22px}
}

/* Recherche (mêmes champs que la galerie de l'appli) */
.albums .page-head{margin-bottom:4px}
.alb-total{margin:0 0 16px}
.alb-h{margin:28px 0 14px}
.alb-search{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:0 18px;margin:0 0 8px}
.alb-search summary{cursor:pointer;font-weight:700;padding:14px 0;color:var(--fir);list-style-position:inside}
.alb-filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px 14px;padding:4px 0 18px}
.alb-filters label{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:600;color:var(--muted)}
.alb-filters .f-wide{grid-column:span 2}
.alb-filters input,.alb-filters select{font:inherit;font-weight:400;font-size:15px;color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:9px 10px;min-height:44px;width:100%}
.alb-filters input:focus,.alb-filters select:focus{border-color:var(--fir);outline:none}
.alb-filters .f-actions{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap}
.alb-year{font-size:18px;margin:22px 0 10px;color:var(--fir)}
.alb-year span{font-family:var(--font);font-weight:500;font-size:14px;color:var(--soft);margin-left:6px}
@media (max-width:640px){.alb-filters{grid-template-columns:1fr 1fr}.alb-filters .f-wide{grid-column:1/-1}}
