/* معرض الصور */
.album-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin:28px 0 40px; }
.album-card { background:#fff; border:1px solid var(--line); border-radius:12px; overflow:hidden; transition:box-shadow .18s, transform .18s; }
.album-card:hover { box-shadow:0 8px 24px rgba(10,34,64,.1); transform:translateY(-2px); }
.album-card .cover { height:170px; background-size:cover; background-position:center; background-color:var(--paper-2); position:relative; }
.album-card .cover .ph { display:flex;align-items:center;justify-content:center;height:100%;color:var(--gold); }
.album-card .cover .count { position:absolute; bottom:10px; inset-inline-end:10px; background:rgba(10,34,64,.85); color:#fff; font-size:12px; font-weight:600; padding:3px 10px; border-radius:20px; display:flex; align-items:center; gap:5px; }
.album-card .b { padding:16px 18px; }
.album-card h3 { margin:0 0 6px; font-size:16px; font-weight:700; color:var(--navy); }
.album-card .date { font-size:12.5px; color:var(--ink-mute); }

.album-intro { margin:26px 0; padding:20px 24px; background:#fff; border:1px solid var(--line); border-radius:12px; border-inline-start:4px solid var(--gold); }
.album-intro .ed { font-size:13.5px; color:var(--gold); font-weight:700; margin-bottom:8px; }
.album-intro p { margin:0; font-size:15px; color:var(--ink-soft); line-height:1.9; }

.photo-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin:24px 0 40px; }
.photo { aspect-ratio:1; background-size:cover; background-position:center; background-color:var(--paper-2); border-radius:10px; cursor:pointer; transition:transform .15s, box-shadow .15s; }
.photo:hover { transform:scale(1.02); box-shadow:0 6px 18px rgba(10,34,64,.15); }

/* Lightbox */
.lightbox { position:fixed; inset:0; background:rgba(8,20,38,.94); z-index:9999; display:none; align-items:center; justify-content:center; }
.lightbox.on { display:flex; }
.lightbox img { max-width:88vw; max-height:86vh; border-radius:8px; box-shadow:0 10px 50px rgba(0,0,0,.5); }
.lb-close { position:absolute; top:20px; inset-inline-end:26px; background:none; border:0; color:#fff; font-size:40px; cursor:pointer; line-height:1; }
.lb-nav { position:absolute; top:50%; transform:translateY(-50%); background:rgba(255,255,255,.12); border:0; color:#fff; width:52px; height:52px; border-radius:50%; font-size:30px; cursor:pointer; }
.lb-nav:hover { background:var(--gold); color:var(--navy); }
.lb-prev { inset-inline-end:26px; } .lb-next { inset-inline-start:26px; }
.lb-counter { position:absolute; bottom:22px; left:50%; transform:translateX(-50%); color:#fff; font-size:14px; background:rgba(0,0,0,.4); padding:5px 16px; border-radius:20px; }
@media (max-width:800px){ .album-grid, .photo-grid { grid-template-columns:repeat(2,1fr); } }
