.gallery-main{max-width:1180px;margin:auto;padding:70px 24px}.gallery-main h1{font-size:clamp(48px,8vw,100px);letter-spacing:-4px;line-height:1;margin:20px 0 24px}.gallery-main h1 span{background:linear-gradient(90deg,#ff1dcc,#7647ff,#00d9ff);background-clip:text;color:transparent}.intro{font-size:22px;color:#aaaabb;line-height:1.6}.back{font-size:12px;letter-spacing:1px}.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:42px 0 24px;flex-wrap:wrap}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{padding:12px 18px;border:1px solid #ffffff28;border-radius:24px;background:#ffffff08;color:#ccc;font:inherit;cursor:pointer}.filters button[aria-pressed=true]{background:#a533dc28;border-color:#e04bf0;color:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:24px}.gallery-card{border:1px solid #ffffff20;border-radius:18px;overflow:hidden;background:#11111b}.gallery-open{display:block;width:100%;padding:0;border:0;background:#0b0b15;cursor:zoom-in}.gallery-open img{display:block;width:100%;aspect-ratio:3/2;object-fit:contain}.gallery-info{padding:22px}.gallery-info h2{font-size:24px;margin:12px 0}.gallery-info p{color:#a4a4b4;line-height:1.6}.gallery-meta,#count{color:#9e9eaf;font-size:12px;letter-spacing:1px}.gallery-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.gallery-links button{color:inherit;font-family:inherit;cursor:pointer}.gallery-links .btn{padding:0 16px;font-size:10px;min-height:44px}button:focus-visible,a:focus-visible{outline:3px solid #00d8ff;outline-offset:4px}dialog{background:#101019;color:#fff;border:1px solid #ffffff35;border-radius:16px;padding:24px;max-width:min(1100px,94vw);max-height:94vh;overflow:auto}dialog::backdrop{background:#000d}#viewer-content img,#viewer-content video{display:block;max-width:100%;max-height:70vh;margin:auto}dialog h2{font-size:24px}.close{display:block;margin:0 0 12px auto;background:#ffffff15;color:white;border:1px solid #ffffff30;border-radius:50%;width:40px;height:40px;font-size:28px;cursor:pointer}[hidden]{display:none!important}@media(max-width:600px){.gallery-main{padding-top:42px}.gallery-main h1{letter-spacing:-2px}.intro{font-size:18px}.filters button{font-size:13px;padding:10px 14px}dialog{padding:16px}.nav{padding:0 20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
