*{margin:0;padding:0;box-sizing:border-box;font-family:"Microsoft YaHei",sans-serif}
body{background:#f5f7fa;padding:15px}
.header{text-align:center;padding:20px 0}
.title{font-size:30px;margin-bottom:10px}
.desc{font-size:14px;color:#666}
.waterfall{column-count:4;column-gap:12px;max-width:1400px;margin:0 auto}
.card{break-inside:avoid;margin-bottom:12px;background:#fff;border-radius:10px;overflow:hidden;position:relative}
.card img{width:100%;display:block}
.download-btn{position:absolute;bottom:10px;right:10px;background:#ff69a6;color:#fff;border:none;border-radius:20px;padding:5px 10px;font-size:12px;cursor:pointer}
.loading{text-align:center;padding:20px;color:#666;display:none}
.preview-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.9);display:none;justify-content:center;align-items:center;z-index:9999}
.preview-img{max-width:90%;max-height:90vh}
.close-btn{position:absolute;top:20px;right:30px;color:#fff;font-size:40px;cursor:pointer}
.footer{text-align:center;padding:20px;margin-top:20px;border-top:1px solid #eee;color:#888}
@media (max-width:992px){.waterfall{column-count:3}}
@media (max-width:768px){.waterfall{column-count:2}}
@media (max-width:480px){.waterfall{column-count:1}}