.album-page{background:var(--bg)}
.al{max-width:1500px;margin:0 auto;padding:7rem clamp(1rem,4vw,3rem) 4rem}
.al-head{text-align:center;max-width:46rem;margin:0 auto 2.6rem}
.al-head h1{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(3.4rem,11vw,9rem);line-height:.9;margin:.6rem 0 1.2rem;color:var(--cream)}
.al-sub{color:var(--cream2);font-size:1.02rem;line-height:1.6}
.al-stats{margin-top:1rem;font-family:var(--hand);font-size:1.5rem;color:var(--gold)}
.al-actions{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap;margin-top:1.6rem}
.al-filters{position:sticky;top:3.6rem;z-index:20;display:flex;gap:.4rem;justify-content:center;flex-wrap:wrap;padding:.8rem 0;margin-bottom:1.6rem;background:linear-gradient(var(--bg) 70%,transparent)}
.al-filters button{padding:.6rem 1rem;border:1px solid var(--line);border-radius:999px;color:var(--cream2);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;transition:background .25s,color .25s,border-color .25s}
.al-filters button i{font-style:normal;color:var(--gold);margin-left:.25rem}
.al-filters button.on{background:var(--cream);color:var(--bg);border-color:var(--cream)}
.al-filters button.on i{color:var(--rust)}
.al-grid{columns:4 260px;column-gap:14px}
.ai{position:relative;break-inside:avoid;margin:0 0 14px;border-radius:6px;overflow:hidden;background:var(--bg2);cursor:zoom-in;border:1px solid var(--line)}
.ai img,.ai video{display:block;width:100%;height:auto}
.ai .tagk{position:absolute;top:.6rem;left:.6rem;background:rgba(29,28,26,.8);color:var(--cream);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;padding:.3rem .55rem;border-radius:3px}
.ai .meta{padding:.65rem .8rem;font-size:.8rem;color:var(--cream2);display:flex;justify-content:space-between;gap:.5rem;align-items:center}
.ai .meta b{color:var(--cream);font-weight:600}
.ai .dlb{flex:none;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;color:var(--cream);font-size:1rem;transition:background .2s}
.ai .dlb:hover{background:var(--rust);border-color:var(--rust)}
.ai .del{position:absolute;top:.4rem;right:.4rem}
.ai.voice{cursor:default;padding:1.1rem 1rem .4rem;background:linear-gradient(135deg,#2a1c17,#1f1d1b)}
.ai.voice .vh{display:flex;align-items:center;gap:.8rem}
.ai.voice .vp{width:46px;height:46px;border-radius:50%;background:var(--rust);color:var(--cream);display:grid;place-items:center;font-size:1rem;flex:none}
.ai.voice .vn{font-family:var(--display);text-transform:uppercase;font-size:1.25rem;color:var(--cream);line-height:1.1}
.ai.voice .vt{font-size:.72rem;color:var(--grey);letter-spacing:.1em;text-transform:uppercase}
.ai.voice audio{display:none}
.ai.voice .bars{display:flex;gap:3px;align-items:center;height:30px;margin:.8rem 0 0}
.ai.voice .bars i{flex:1;background:var(--gold);opacity:.5;border-radius:2px}
.ai.voice.playing .bars i{opacity:1;animation:eq 1s ease-in-out infinite alternate}
@keyframes eq{to{transform:scaleY(.35)}}
.ai.msg{cursor:default;background:var(--cream);color:#2a2622;padding:1.3rem 1.2rem 1rem;transform:rotate(var(--r,0deg));border:0;box-shadow:0 10px 26px rgba(0,0,0,.35)}
.ai.msg p{font-family:var(--hand);font-size:1.45rem;line-height:1.2}
.ai.msg .who{margin-top:.7rem;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#7a6a58}
.al-empty{text-align:center;color:var(--grey);padding:4rem 0;font-family:var(--hand);font-size:1.6rem}
.al-foot{text-align:center;padding:2.4rem 1rem 3rem;color:var(--grey);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;border-top:1px solid var(--line)}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:54px;height:54px;border-radius:50%;background:rgba(236,230,218,.08);color:var(--cream);font-size:2rem;line-height:1;z-index:2}
.lb-nav:hover{background:var(--rust)}
.lb-nav.prev{left:1rem}.lb-nav.next{right:1rem}
.lb-n{color:var(--grey);font-size:.78rem;letter-spacing:.12em}
@media (max-width:760px){.al{padding-top:5.4rem}.al-grid{columns:2 150px;column-gap:10px}.ai{margin-bottom:10px}.ai .meta{font-size:.72rem;padding:.5rem .6rem}.lb-nav{width:44px;height:44px;top:auto;bottom:4.6rem;transform:none}.al-filters{top:3.2rem}.al-filters button{padding:.5rem .75rem;font-size:.66rem}}
.ai .del{width:26px;height:26px;border-radius:50%;background:#000c;color:#fff;font-size:15px;display:none;z-index:3}body.admin .ai .del{display:block}
@media (max-width:760px){.ai.voice{padding:.8rem .7rem .3rem}.ai.voice .vh{gap:.5rem;flex-wrap:wrap}.ai.voice .vp{width:38px;height:38px}.ai.voice .vn{font-size:1rem}.ai.voice .vt{font-size:.6rem}}
