:root{color-scheme:dark;font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;background:#101114;color:#e8e8eb}header{max-width:1400px;margin:auto;padding:28px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}h1{font-size:clamp(1.35rem,3vw,2rem);margin:0 0 6px}p{margin:0;color:#a8abb2}button{font:inherit;cursor:pointer}header button,.toolbar button{background:#292b32;border:1px solid #4b4d56;border-radius:8px;color:#eee;padding:10px 14px}.grid{max-width:1400px;margin:auto;padding:0 24px 36px;display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:14px}.tile{background:#1c1e23;border:1px solid #33353c;border-radius:10px;padding:8px;color:#d7d7dc;text-align:left;overflow:hidden}.tile:hover{border-color:#9a9ca8;background:#282a30}.tile img{width:100%;height:150px;object-fit:contain;background:#090a0c;border-radius:5px;display:block}.tile span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;margin:9px 2px 3px}#error{margin:24px;padding:16px;background:#502629;border-radius:8px}.viewer{position:fixed;inset:0;z-index:10;background:rgba(0,0,0,.97);display:flex;align-items:center;justify-content:center}.viewer[hidden]{display:none}.modal-open{overflow:hidden}.viewer img{max-width:calc(100vw - 110px);max-height:calc(100vh - 130px);object-fit:contain}.toolbar{position:absolute;top:0;left:0;right:0;padding:12px 18px;display:flex;align-items:center;gap:18px;background:#17181d}.toolbar a{color:#ddd;margin-left:auto}.arrow{position:absolute;top:50%;transform:translateY(-50%);background:#292b32b8;color:white;border:0;border-radius:8px;font-size:2rem;padding:12px}.left{left:10px}.right{right:10px}#filename{position:absolute;bottom:14px;text-align:center;max-width:95%;overflow-wrap:anywhere;color:#ddd}@media(max-width:600px){header{padding:18px 14px}.grid{padding:0 12px 24px;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.tile img{height:120px}.viewer img{max-width:calc(100vw - 68px)}.arrow{font-size:1.3rem;padding:8px}}
nav{font-size:.9rem;margin:5px 0}nav a{color:#b9c9ff}.albums{max-width:1400px;margin:0 auto 15px;padding:0 24px;display:flex;gap:12px;flex-wrap:wrap}.album{display:inline-block;padding:16px 22px;border:1px solid #454850;background:#24262c;border-radius:9px;color:#eee;text-decoration:none}.album:hover{background:#363941}main{padding-bottom:24px}
