*{box-sizing:border-box}
html,body{margin:0;background:#0c0c0a}
.tw-body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.tw-bar{position:fixed;top:12px;right:12px;z-index:200;display:flex;gap:8px}
.tw-btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:0;border-radius:100px;background:rgba(10,12,24,.72);color:#fff;font-size:12.5px;font-weight:600;line-height:1;font-family:inherit;cursor:pointer;text-decoration:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 10px rgba(0,0,0,.35);transition:background .2s}
.tw-btn:hover{background:#fff;color:#0a0c18}
.tw-empty{color:#fff;text-align:center;padding:40vh 20px 0}
@media(max-width:480px){.tw-btn span{display:none}.tw-btn{width:34px;padding:0;justify-content:center}}
.tw-h1{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.tw-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));grid-auto-rows:84px;grid-auto-flow:dense;gap:2px;width:100%;padding:2px;background:#0c0c0a}
.tw-f{display:block;overflow:hidden;position:relative;background:#1c1c18;cursor:zoom-in;opacity:0;transform:scale(.9);animation:tw-in .5s ease forwards}
.tw-f.w2{grid-column:span 2}.tw-f.h2{grid-row:span 2}
.tw-f img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease,filter .3s}
.tw-f:hover{z-index:2}
.tw-f:hover img{transform:scale(1.18);filter:brightness(1.1)}
@keyframes tw-in{to{opacity:1;transform:none}}
@media(max-width:760px){.tw-wall{grid-template-columns:repeat(auto-fill,minmax(62px,1fr));grid-auto-rows:62px}}
@media(prefers-reduced-motion:reduce){.tw-f{animation:none;opacity:1;transform:none}}
.tw-lb{position:fixed;inset:0;z-index:300;background:rgba(5,5,4,.94);display:flex;align-items:center;justify-content:center;padding:20px}
.tw-lb[hidden]{display:none}
.tw-lb img{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px}
.tw-x{position:absolute;top:12px;right:16px;background:none;border:0;color:#fff;font-size:42px;line-height:1;cursor:pointer}
.tw-cap{position:absolute;left:0;right:0;bottom:22px;margin:0;padding:0 20px;text-align:center;color:#fff;font-size:clamp(15px,2vw,20px);font-weight:600;letter-spacing:.01em;text-shadow:0 2px 12px rgba(0,0,0,.8),0 0 3px rgba(0,0,0,.6);pointer-events:none}
