*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,Microsoft YaHei,sans-serif;background:#f5f5f5;color:#1a1a1a;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none;color:inherit}button{font:inherit}.card[data-v-1a7a2d55]{display:flex;flex-direction:column;background:#fff;border-radius:12px;overflow:hidden;cursor:pointer;box-shadow:0 1px 4px #0000000f;transition:transform .25s ease,box-shadow .25s ease;-webkit-tap-highlight-color:transparent}@media(hover:hover){.card[data-v-1a7a2d55]:hover{transform:translateY(-4px);box-shadow:0 12px 32px #00000024}.card:hover .card-overlay[data-v-1a7a2d55]{opacity:1}}.card-img-wrap[data-v-1a7a2d55]{position:relative;width:100%;background:#f0f0f0;overflow:hidden}.card-placeholder[data-v-1a7a2d55]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8,#f0f0f0 75%);background-size:200% 100%;animation:shimmer-1a7a2d55 1.5s infinite}@keyframes shimmer-1a7a2d55{0%{background-position:200% 0}to{background-position:-200% 0}}.card-error[data-v-1a7a2d55]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px 16px;color:#ccc;font-size:12px;background:#fafafa;min-height:120px}.card-img[data-v-1a7a2d55]{width:100%;height:auto;display:block;transition:transform .35s ease}.card:hover .card-img[data-v-1a7a2d55]{transform:scale(1.04)}.card-overlay[data-v-1a7a2d55]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.35) 0%,transparent 50%);display:flex;align-items:flex-end;justify-content:flex-end;padding:12px;opacity:0;transition:opacity .25s ease}@media(hover:none){.card-overlay[data-v-1a7a2d55]{opacity:1;background:linear-gradient(to top,rgba(0,0,0,.2) 0%,transparent 40%)}}.card-dl-btn[data-v-1a7a2d55]{width:36px;height:36px;border-radius:50%;background:#fffffff2;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#1a1a1a;box-shadow:0 2px 8px #0003;transition:background .2s,color .2s,transform .15s;-webkit-tap-highlight-color:transparent;text-decoration:none}.card-dl-btn[data-v-1a7a2d55]:hover{background:#ff2442;color:#fff;transform:scale(1.1)}.card-body[data-v-1a7a2d55]{padding:10px 12px 14px}.card-title[data-v-1a7a2d55]{font-size:13px;font-weight:600;color:#1a1a1a;line-height:1.4;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-tag[data-v-1a7a2d55]{display:inline-block;background:#fff0f2;color:#ff2442;font-size:11px;font-weight:500;padding:2px 8px;border-radius:20px}.viewer-overlay[data-v-20bea79b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.viewer-close[data-v-20bea79b]{position:fixed;top:16px;right:16px;width:40px;height:40px;border-radius:50%;background:#ffffff26;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1001;transition:background .2s;-webkit-tap-highlight-color:transparent}.viewer-close[data-v-20bea79b]:hover{background:#ffffff47}.viewer-card[data-v-20bea79b]{background:#fff;border-radius:16px;overflow:hidden;width:100%;max-width:480px;max-height:90vh;overflow-y:auto}.viewer-content[data-v-20bea79b]{display:flex;flex-direction:column}.viewer-media[data-v-20bea79b]{width:100%;background:#f5f5f5;display:flex;align-items:center;justify-content:center}.viewer-media img[data-v-20bea79b]{width:100%;height:auto;display:block;max-height:58vh;object-fit:contain}.viewer-error[data-v-20bea79b]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;color:#ccc;font-size:13px;background:#fafafa;min-height:200px;width:100%}.viewer-skeleton[data-v-20bea79b]{width:100%;min-height:220px;position:relative;background:#f0f0f0;overflow:hidden;display:flex;align-items:center;justify-content:center}.viewer-skeleton-shimmer[data-v-20bea79b]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8,#f0f0f0 75%);background-size:200% 100%;animation:viewer-shimmer-20bea79b 1.5s infinite}@keyframes viewer-shimmer-20bea79b{0%{background-position:200% 0}to{background-position:-200% 0}}.viewer-skeleton-icon[data-v-20bea79b]{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:16px}.viewer-spinner-wrap[data-v-20bea79b]{position:relative;width:80px;height:80px;display:flex;align-items:center;justify-content:center}.viewer-spinner[data-v-20bea79b]{position:relative;width:52px;height:52px;display:flex;align-items:center;justify-content:center}.vp-svg[data-v-20bea79b]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;transform:rotate(-90deg)}.vp-svg--spin[data-v-20bea79b]{animation:viewer-spin-20bea79b 1.1s linear infinite}@keyframes viewer-spin-20bea79b{0%{transform:rotate(-90deg)}to{transform:rotate(270deg)}}.vp-track[data-v-20bea79b]{fill:none;stroke:#00000014;stroke-width:3}.vp-arc[data-v-20bea79b]{fill:none;stroke:#ff2442;stroke-width:3;stroke-linecap:round;stroke-dasharray:138.23;stroke-dashoffset:138.23;transition:stroke-dashoffset .25s ease}.viewer-spinner-label[data-v-20bea79b]{position:relative;z-index:1;font-size:10px;font-weight:700;color:#b0b0b0;letter-spacing:.3px}.viewer-dots[data-v-20bea79b]{display:flex;align-items:center;gap:7px}.viewer-dots span[data-v-20bea79b]{display:block;width:7px;height:7px;border-radius:50%;background:#d8d8d8;animation:viewer-dot-wave-20bea79b 1.4s ease-in-out infinite}.viewer-dots span[data-v-20bea79b]:nth-child(1){animation-delay:0s}.viewer-dots span[data-v-20bea79b]:nth-child(2){animation-delay:.22s}.viewer-dots span[data-v-20bea79b]:nth-child(3){animation-delay:.44s}@keyframes viewer-dot-wave-20bea79b{0%,60%,to{transform:translateY(0) scale(.85);background:#d8d8d8}30%{transform:translateY(-6px) scale(1.15);background:#ff2442}}.viewer-info[data-v-20bea79b]{padding:20px;display:flex;flex-direction:column;gap:8px}.viewer-tag[data-v-20bea79b]{display:inline-block;background:#fff0f2;color:#ff2442;font-size:12px;font-weight:600;padding:3px 10px;border-radius:20px;align-self:flex-start}.viewer-title[data-v-20bea79b]{font-size:18px;font-weight:700;color:#1a1a1a;margin:0;line-height:1.4}.viewer-desc[data-v-20bea79b]{font-size:13px;color:#aaa;margin:0;line-height:1.6}.viewer-wechat-tip[data-v-20bea79b]{margin-top:4px;padding:12px 16px;background:#fff8e6;border-radius:8px;font-size:13px;color:#b8860b;text-align:center}.viewer-download-btn[data-v-20bea79b]{margin-top:4px;display:flex;align-items:center;justify-content:center;gap:8px;height:48px;background:#ff2442;color:#fff;border-radius:10px;font-size:15px;font-weight:600;text-decoration:none;transition:opacity .2s;-webkit-tap-highlight-color:transparent}.viewer-download-btn[data-v-20bea79b]:hover{opacity:.9}@media(orientation:landscape)and (max-height:600px){.viewer-card[data-v-20bea79b]{max-width:92vw;max-height:92vh;overflow:hidden}.viewer-content[data-v-20bea79b]{flex-direction:row;height:92vh}.viewer-media[data-v-20bea79b]{width:62%;flex-shrink:0;max-height:none}.viewer-media img[data-v-20bea79b]{max-height:92vh;height:100%;object-fit:contain}.viewer-info[data-v-20bea79b]{width:38%;overflow-y:auto;justify-content:center;padding:28px 20px}}.gallery-skeleton[data-v-51e83c9f]{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:12px 12px 60px}@media(min-width:768px){.gallery-skeleton[data-v-51e83c9f]{grid-template-columns:repeat(3,1fr);gap:14px;padding:16px 16px 60px}}@media(min-width:1200px){.gallery-skeleton[data-v-51e83c9f]{grid-template-columns:repeat(4,1fr);gap:16px;padding:20px 20px 80px}}.skeleton-card[data-v-51e83c9f]{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px #0000000f}.skeleton-img[data-v-51e83c9f]{width:100%;padding-top:130%;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 37%,#f0f0f0 63%);background-size:400% 100%;animation:shimmer-51e83c9f 1.4s ease infinite}.skeleton-body[data-v-51e83c9f]{padding:12px}.skeleton-line[data-v-51e83c9f]{background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 37%,#f0f0f0 63%);background-size:400% 100%;animation:shimmer-51e83c9f 1.4s ease infinite;border-radius:4px}.skeleton-line--title[data-v-51e83c9f]{height:14px;width:80%;margin-bottom:8px}.skeleton-line--tag[data-v-51e83c9f]{height:20px;width:50px;border-radius:10px}@keyframes shimmer-51e83c9f{0%{background-position:100% 50%}to{background-position:0 50%}}.section-head[data-v-8297a561]{max-width:1200px;margin:0 auto;padding:24px 16px 8px}.section-head h3[data-v-8297a561]{font-size:20px;font-weight:700;color:#1a1a1a;margin:0 0 4px}.section-head p[data-v-8297a561]{font-size:13px;color:#aaa;margin:0}.masonry[data-v-8297a561]{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:12px 16px 80px}@media(min-width:1200px){.masonry[data-v-8297a561]{grid-template-columns:repeat(4,1fr);gap:14px}}@media(max-width:480px){.masonry[data-v-8297a561]{grid-template-columns:repeat(2,1fr)}}.hero[data-v-3d9a6834]{background:url(/assets/bg-BLD2dje6.png) center/cover no-repeat;overflow:hidden;position:relative}.hero-inner[data-v-3d9a6834]{max-width:1200px;margin:0 auto;padding:0;display:flex;flex-direction:column;align-items:stretch}.hero-top[data-v-3d9a6834]{display:flex;align-items:flex-start;justify-content:space-between;width:100%;margin-bottom:32px;animation:hero-enter-3d9a6834 .6s cubic-bezier(.22,1,.36,1) .1s both}.hero-brand-jnj[data-v-3d9a6834]{height:52px;width:auto;margin-left:-15px}.hero-brand-right[data-v-3d9a6834]{height:36px;width:auto}.hero-title[data-v-3d9a6834]{font-size:28px;font-weight:400;color:#fff;margin:0 0 34px;line-height:1.3;letter-spacing:.12em;text-align:center;animation:hero-enter-3d9a6834 .6s cubic-bezier(.22,1,.36,1) .22s both}.hero-badge[data-v-3d9a6834]{display:block;height:51px;width:auto;margin-left:auto;margin-bottom:4px;animation:hero-enter-3d9a6834 .6s cubic-bezier(.22,1,.36,1) .36s both}@keyframes hero-enter-3d9a6834{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media(min-width:768px){.hero-inner[data-v-3d9a6834]{padding:0}.hero-top[data-v-3d9a6834]{margin-bottom:32px}.hero-brand-jnj[data-v-3d9a6834]{height:60px;margin-left:-20px}.hero-brand-right[data-v-3d9a6834]{height:40px}.hero-title[data-v-3d9a6834]{font-size:40px;margin-bottom:40px}.hero-badge[data-v-3d9a6834]{height:44px}}@media(min-width:1200px){.hero-inner[data-v-3d9a6834]{padding:0}.hero-brand-jnj[data-v-3d9a6834]{margin-left:-25px}.hero-title[data-v-3d9a6834]{font-size:48px;margin-bottom:40px}}@media(orientation:landscape)and (max-height:500px){.hero[data-v-3d9a6834]{display:none}}.brand-header[data-v-b227ef33]{background:#fff;border-bottom:1px solid rgba(0,0,0,.06);position:sticky;top:0;z-index:100;padding:0 16px}.brand-inner[data-v-b227ef33]{max-width:1400px;margin:0 auto;padding:12px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand-left[data-v-b227ef33]{display:flex;align-items:center;gap:12px;min-width:0}.brand-logo[data-v-b227ef33]{height:22px;width:auto;flex-shrink:0}.brand-divider[data-v-b227ef33]{width:1px;height:18px;background:#e0e0e0;flex-shrink:0}.brand-title[data-v-b227ef33]{font-size:15px;font-weight:600;color:#1a1a1a;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-desc[data-v-b227ef33]{font-size:12px;color:#bbb;margin:0 auto;max-width:1400px;padding:0 0 10px;display:none}@media(min-width:768px){.brand-desc[data-v-b227ef33]{display:block}.brand-logo[data-v-b227ef33]{height:26px}.brand-title[data-v-b227ef33]{font-size:17px}}.admin-skeleton[data-v-56aeae65]{padding:0}.stats-skeleton-grid[data-v-56aeae65]{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px}@media(min-width:768px){.stats-skeleton-grid[data-v-56aeae65]{grid-template-columns:repeat(3,1fr);gap:14px}}@media(min-width:1024px){.stats-skeleton-grid[data-v-56aeae65]{grid-template-columns:repeat(6,1fr)}}.stats-skeleton-card[data-v-56aeae65]{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000d}.sk-label[data-v-56aeae65]{height:12px;width:60%;border-radius:4px;margin-bottom:12px;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 37%,#f0f0f0 63%);background-size:400% 100%;animation:shimmer-56aeae65 1.4s ease infinite}.sk-value[data-v-56aeae65]{height:28px;width:50%;border-radius:4px;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 37%,#f0f0f0 63%);background-size:400% 100%;animation:shimmer-56aeae65 1.4s ease infinite}.table-skeleton[data-v-56aeae65]{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000d}.sk-table-head[data-v-56aeae65]{height:14px;width:30%;border-radius:4px;margin-bottom:20px;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 37%,#f0f0f0 63%);background-size:400% 100%;animation:shimmer-56aeae65 1.4s ease infinite}.sk-table-row[data-v-56aeae65]{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #f5f5f5}.sk-cell[data-v-56aeae65]{border-radius:4px;height:16px;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 37%,#f0f0f0 63%);background-size:400% 100%;animation:shimmer-56aeae65 1.4s ease infinite}.sk-cell--name[data-v-56aeae65]{flex:3}.sk-cell--tag[data-v-56aeae65]{flex:1.5;border-radius:10px}.sk-cell--num[data-v-56aeae65]{flex:1}@keyframes shimmer-56aeae65{0%{background-position:100% 50%}to{background-position:0 50%}}.admin-app[data-v-37f2a531]{min-height:100vh;background:#f5f5f5}.admin-layout[data-v-37f2a531]{max-width:1200px;margin:0 auto;padding:20px 16px 60px}.admin-toolbar[data-v-37f2a531]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.admin-update[data-v-37f2a531]{font-size:13px;color:#aaa}.admin-update strong[data-v-37f2a531]{color:#666}.logout-btn[data-v-37f2a531]{font-size:13px;color:#999;background:none;border:1px solid #e8e8e8;border-radius:20px;padding:6px 16px;cursor:pointer;transition:color .2s,border-color .2s}.logout-btn[data-v-37f2a531]:hover{color:#ff2442;border-color:#ff2442}.stats-grid[data-v-37f2a531]{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px}@media(min-width:768px){.stats-grid[data-v-37f2a531]{grid-template-columns:repeat(3,1fr);gap:14px}}@media(min-width:1024px){.stats-grid[data-v-37f2a531]{grid-template-columns:repeat(6,1fr)}}.stats-card[data-v-37f2a531]{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000a;transition:transform .2s}.stats-card[data-v-37f2a531]:hover{transform:translateY(-2px)}.stats-card--primary[data-v-37f2a531]{background:linear-gradient(135deg,#fff0f2,#ffe8ec);border:1px solid rgba(255,36,66,.1)}.stats-card-header[data-v-37f2a531]{display:flex;align-items:center;gap:6px;margin-bottom:10px}.stats-icon[data-v-37f2a531]{color:#ff2442;display:flex;align-items:center}.stats-label[data-v-37f2a531]{font-size:12px;color:#999;font-weight:500}.stats-value[data-v-37f2a531]{display:block;font-size:26px;font-weight:700;color:#1a1a1a;line-height:1}.stats-card--primary .stats-value[data-v-37f2a531]{color:#ff2442}.admin-board[data-v-37f2a531]{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000a}.admin-head[data-v-37f2a531]{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 16px;border-bottom:1px solid #f5f5f5;flex-wrap:wrap;gap:12px}.admin-head h3[data-v-37f2a531]{font-size:16px;font-weight:700;color:#1a1a1a;margin:0 0 4px}.admin-head p[data-v-37f2a531]{font-size:12px;color:#aaa;margin:0}.head-actions[data-v-37f2a531]{display:flex;gap:8px}.back-btn[data-v-37f2a531]{font-size:13px;color:#666;text-decoration:none;padding:7px 16px;border:1px solid #e8e8e8;border-radius:20px;white-space:nowrap;transition:color .2s,border-color .2s}.back-btn[data-v-37f2a531]:hover{color:#ff2442;border-color:#ff2442}.admin-empty[data-v-37f2a531]{padding:40px 20px;text-align:center;color:#aaa}.admin-table-wrap[data-v-37f2a531]{overflow-x:auto;display:block}.admin-table[data-v-37f2a531]{width:100%;border-collapse:collapse;font-size:14px}.admin-table thead tr[data-v-37f2a531]{background:#fafafa}.admin-table th[data-v-37f2a531]{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#aaa;white-space:nowrap}.admin-table td[data-v-37f2a531]{padding:14px 16px;border-top:1px solid #f5f5f5;color:#333}.admin-material[data-v-37f2a531]{display:flex;align-items:center;gap:10px}.admin-thumb[data-v-37f2a531]{width:48px;height:48px;object-fit:cover;border-radius:6px;flex-shrink:0;background:#f5f5f5}.admin-thumb--mobile[data-v-37f2a531]{width:36px;height:36px;border-radius:4px}.admin-material-info[data-v-37f2a531]{display:flex;align-items:center;gap:8px}.admin-rank[data-v-37f2a531]{font-size:12px;color:#ff2442;background:#fff0f2;padding:2px 8px;border-radius:6px;flex-shrink:0;font-weight:600}.item-tag[data-v-37f2a531]{display:inline-block;background:#f5f5f5;color:#666;font-size:11px;padding:2px 8px;border-radius:20px;white-space:nowrap}.admin-mobile-cards[data-v-37f2a531]{display:none}@media(max-width:767px){.admin-table-wrap[data-v-37f2a531]{display:none}.admin-mobile-cards[data-v-37f2a531]{display:flex;flex-direction:column;gap:10px;padding:12px}.mobile-card[data-v-37f2a531]{background:#fafafa;border-radius:10px;padding:14px}.mobile-card-head[data-v-37f2a531]{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.mobile-card-title[data-v-37f2a531]{flex:1;min-width:0;font-size:14px;color:#1a1a1a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-card-stats[data-v-37f2a531]{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.mobile-stat[data-v-37f2a531]{text-align:center}.mobile-stat-label[data-v-37f2a531]{display:block;font-size:11px;color:#aaa;margin-bottom:4px}.mobile-stat-value[data-v-37f2a531]{display:block;font-size:16px;font-weight:700;color:#1a1a1a}}.settings-bar[data-v-37f2a531]{padding:10px 20px;border-bottom:1px solid #f0f0f0;background:#fafafa}.toggle-label[data-v-37f2a531]{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#666;cursor:pointer;gap:12px}.toggle-switch[data-v-37f2a531]{position:relative;width:44px;height:24px;border-radius:12px;border:none;background:#ddd;cursor:pointer;transition:background .25s;flex-shrink:0;padding:0}.toggle-switch.on[data-v-37f2a531]{background:#ff2442}.toggle-knob[data-v-37f2a531]{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .25s}.toggle-switch.on .toggle-knob[data-v-37f2a531]{transform:translate(20px)}.filter-bar[data-v-37f2a531]{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid #f0f0f0;flex-wrap:wrap;gap:10px}.tab-group[data-v-37f2a531]{display:flex;gap:4px;background:#f5f5f5;border-radius:8px;padding:3px}.tab-btn[data-v-37f2a531]{font-size:13px;padding:6px 16px;border:none;border-radius:6px;background:transparent;color:#999;cursor:pointer;font-weight:500;transition:all .2s}.tab-btn.active[data-v-37f2a531]{background:#fff;color:#1a1a1a;box-shadow:0 1px 3px #00000014}.date-filter[data-v-37f2a531]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.date-input[data-v-37f2a531]{font-size:13px;padding:5px 10px;border:1px solid #e0e0e0;border-radius:6px;outline:none;color:#333;background:#fff}.date-input[data-v-37f2a531]:focus{border-color:#ff2442}.date-sep[data-v-37f2a531]{color:#ccc;font-size:13px}.filter-btn[data-v-37f2a531]{font-size:13px;padding:5px 14px;border:1px solid #FF2442;border-radius:6px;background:#ff2442;color:#fff;cursor:pointer;transition:opacity .2s}.filter-btn[data-v-37f2a531]:hover{opacity:.85}.filter-btn--reset[data-v-37f2a531]{background:#fff;color:#666;border-color:#e0e0e0}.filter-btn--reset[data-v-37f2a531]:hover{border-color:#ff2442;color:#ff2442}.trend-btn[data-v-37f2a531]{font-size:12px;padding:4px 12px;border:1px solid #e0e0e0;border-radius:6px;background:#fff;color:#666;cursor:pointer;white-space:nowrap;transition:all .2s}.trend-btn[data-v-37f2a531]:hover{border-color:#ff2442;color:#ff2442}.trend-btn--mobile[data-v-37f2a531]{margin-top:10px;width:100%;padding:8px}.admin-rank--archived[data-v-37f2a531]{background:#f5f5f5;color:#999}.td-date[data-v-37f2a531]{font-size:12px;color:#999;white-space:nowrap}.trend-overlay[data-v-37f2a531]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.trend-dialog[data-v-37f2a531]{background:#fff;border-radius:16px;width:100%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003}.trend-header[data-v-37f2a531]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 12px;border-bottom:1px solid #f0f0f0}.trend-header h3[data-v-37f2a531]{font-size:16px;font-weight:700;color:#1a1a1a;margin:0}.trend-close[data-v-37f2a531]{font-size:24px;background:none;border:none;color:#999;cursor:pointer;line-height:1;padding:0 4px}.trend-close[data-v-37f2a531]:hover{color:#ff2442}.trend-filter[data-v-37f2a531]{display:flex;align-items:center;gap:6px;padding:12px 24px;flex-wrap:wrap}.trend-loading[data-v-37f2a531]{padding:40px;text-align:center;color:#aaa;font-size:14px}.trend-body[data-v-37f2a531]{padding:0 24px 24px}.trend-canvas[data-v-37f2a531]{width:100%;height:260px;display:block}.trend-table-wrap[data-v-37f2a531]{margin-top:16px;max-height:240px;overflow-y:auto;border:1px solid #f0f0f0;border-radius:8px}.trend-table[data-v-37f2a531]{font-size:13px}.trend-table th[data-v-37f2a531],.trend-table td[data-v-37f2a531]{padding:8px 12px}.preview-overlay[data-v-37f2a531]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:2000;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.preview-dialog[data-v-37f2a531]{background:#fff;border-radius:16px;width:90%;max-width:480px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.preview-header[data-v-37f2a531]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f0f0f0;flex-shrink:0}.preview-title[data-v-37f2a531]{font-size:16px;font-weight:700;color:#1a1a1a;margin:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-close[data-v-37f2a531]{background:none;border:none;cursor:pointer;color:#999;padding:4px;flex-shrink:0;margin-left:12px;display:flex;align-items:center;justify-content:center}.preview-close[data-v-37f2a531]:hover{color:#ff2442}.preview-body[data-v-37f2a531]{overflow-y:auto;background:#f5f5f5;display:flex;align-items:center;justify-content:center}.preview-img[data-v-37f2a531]{width:100%;height:auto;display:block;max-height:70vh;object-fit:contain}.admin-title-link[data-v-37f2a531]{color:#1a1a1a;text-decoration:none;font-weight:600;cursor:pointer;transition:color .2s}.admin-title-link[data-v-37f2a531]:hover{color:#ff2442;text-decoration:underline}.login-page[data-v-4ac96f48]{min-height:100vh;background:#f5f5f5;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box}.login-card[data-v-4ac96f48]{background:#fff;border-radius:16px;padding:40px 32px;width:100%;max-width:380px;box-shadow:0 4px 24px #00000014;display:flex;flex-direction:column;align-items:center}.login-brand[data-v-4ac96f48]{display:flex;align-items:center;gap:8px;margin-bottom:24px}.login-brand-dot[data-v-4ac96f48]{width:10px;height:10px;border-radius:50%;background:#ff2442;display:inline-block}.login-brand-name[data-v-4ac96f48]{font-size:13px;color:#999}.login-title[data-v-4ac96f48]{font-size:24px;font-weight:700;color:#1a1a1a;margin:0 0 8px}.login-sub[data-v-4ac96f48]{font-size:14px;color:#aaa;margin:0 0 28px}.login-form[data-v-4ac96f48]{width:100%;display:flex;flex-direction:column;gap:12px}.login-input[data-v-4ac96f48]{width:100%;height:48px;border:1.5px solid #e8e8e8;border-radius:10px;padding:0 16px;font-size:15px;color:#1a1a1a;background:#fafafa;outline:none;box-sizing:border-box;transition:border-color .2s}.login-input[data-v-4ac96f48]:focus{border-color:#ff2442;background:#fff}.login-error[data-v-4ac96f48]{font-size:13px;color:#ff2442;margin:0;text-align:center}.login-btn[data-v-4ac96f48]{width:100%;height:48px;background:#ff2442;color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .2s}.login-btn[data-v-4ac96f48]:disabled{opacity:.5;cursor:not-allowed}.login-btn[data-v-4ac96f48]:not(:disabled):hover{opacity:.9}.login-back[data-v-4ac96f48]{margin-top:20px;font-size:13px;color:#aaa;text-decoration:none}.login-back[data-v-4ac96f48]:hover{color:#ff2442}.admin-app[data-v-1fc4b8ce]{min-height:100vh;background:#f5f5f5}.admin-layout[data-v-1fc4b8ce]{max-width:1000px;margin:0 auto;padding:20px 16px 60px}.admin-toolbar[data-v-1fc4b8ce]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}.admin-update[data-v-1fc4b8ce]{font-size:13px;color:#aaa}.admin-update strong[data-v-1fc4b8ce]{color:#666}.toolbar-actions[data-v-1fc4b8ce]{display:flex;gap:8px}.action-btn[data-v-1fc4b8ce]{font-size:13px;color:#666;background:#fff;border:1px solid #e0e0e0;border-radius:20px;padding:6px 16px;cursor:pointer;text-decoration:none;transition:color .2s,border-color .2s;white-space:nowrap}.action-btn[data-v-1fc4b8ce]:hover{color:#ff2442;border-color:#ff2442}.action-btn--primary[data-v-1fc4b8ce]{color:#fff;background:#ff2442;border-color:#ff2442}.action-btn--primary[data-v-1fc4b8ce]:hover{background:#e01e3a}.action-btn--primary[data-v-1fc4b8ce]:disabled{background:#ccc;border-color:#ccc;cursor:not-allowed}.admin-loading[data-v-1fc4b8ce],.admin-empty[data-v-1fc4b8ce]{text-align:center;padding:60px 20px;color:#aaa;font-size:14px}.materials-list[data-v-1fc4b8ce]{display:flex;flex-direction:column;gap:10px}.material-row[data-v-1fc4b8ce]{display:flex;align-items:center;gap:14px;background:#fff;border-radius:12px;padding:12px 16px;box-shadow:0 1px 4px #0000000a}.material-preview[data-v-1fc4b8ce]{width:64px;height:48px;border-radius:8px;overflow:hidden;flex-shrink:0;background:#f5f5f5}.material-preview img[data-v-1fc4b8ce]{width:100%;height:100%;object-fit:cover}.material-info[data-v-1fc4b8ce]{flex:1;min-width:0}.material-meta[data-v-1fc4b8ce]{display:flex;align-items:center;gap:8px;margin-bottom:4px}.material-tag[data-v-1fc4b8ce]{display:inline-block;background:#f0f0f0;color:#666;font-size:11px;padding:1px 8px;border-radius:10px}.material-id[data-v-1fc4b8ce]{font-size:11px;color:#ccc}.material-title[data-v-1fc4b8ce]{font-size:14px;color:#1a1a1a;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-desc[data-v-1fc4b8ce]{font-size:12px;color:#aaa;margin:2px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-actions[data-v-1fc4b8ce]{display:flex;align-items:center;gap:6px;flex-shrink:0}.sort-btn[data-v-1fc4b8ce]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#f5f5f5;border:none;border-radius:6px;cursor:pointer;color:#999;transition:color .2s,background .2s}.sort-btn[data-v-1fc4b8ce]:hover:not(:disabled){color:#333;background:#eee}.sort-btn[data-v-1fc4b8ce]:disabled{opacity:.3;cursor:not-allowed}.edit-btn[data-v-1fc4b8ce],.delete-btn[data-v-1fc4b8ce]{font-size:12px;padding:4px 12px;border:1px solid #e0e0e0;border-radius:6px;background:#fff;cursor:pointer;transition:color .2s,border-color .2s}.edit-btn[data-v-1fc4b8ce]{color:#666}.edit-btn[data-v-1fc4b8ce]:hover{color:#1890ff;border-color:#1890ff}.delete-btn[data-v-1fc4b8ce]{color:#999}.delete-btn[data-v-1fc4b8ce]:hover{color:#ff2442;border-color:#ff2442}.dialog-overlay[data-v-1fc4b8ce]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.dialog[data-v-1fc4b8ce]{background:#fff;border-radius:16px;padding:24px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto}.dialog-title[data-v-1fc4b8ce]{font-size:18px;font-weight:700;color:#1a1a1a;margin:0 0 20px}.form-group[data-v-1fc4b8ce]{margin-bottom:16px}.form-group label[data-v-1fc4b8ce]{display:block;font-size:13px;font-weight:600;color:#666;margin-bottom:6px}.form-group input[data-v-1fc4b8ce],.form-group textarea[data-v-1fc4b8ce]{width:100%;padding:8px 12px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;color:#1a1a1a;outline:none;transition:border-color .2s;box-sizing:border-box}.form-group input[data-v-1fc4b8ce]:focus,.form-group textarea[data-v-1fc4b8ce]:focus{border-color:#ff2442}.form-group textarea[data-v-1fc4b8ce]{resize:vertical}.upload-zone[data-v-1fc4b8ce]{border:2px dashed #e0e0e0;border-radius:10px;padding:24px;text-align:center;color:#aaa;cursor:pointer;transition:border-color .2s,color .2s}.upload-zone[data-v-1fc4b8ce]:hover{border-color:#ff2442;color:#ff2442}.upload-preview[data-v-1fc4b8ce]{position:relative;border-radius:10px;overflow:hidden;background:#f5f5f5}.upload-preview img[data-v-1fc4b8ce]{width:100%;max-height:160px;object-fit:contain}.upload-change[data-v-1fc4b8ce]{position:absolute;bottom:8px;right:8px;font-size:11px;color:#fff;background:#0009;border:none;border-radius:6px;padding:4px 10px;cursor:pointer}.dialog-footer[data-v-1fc4b8ce]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}@media(max-width:600px){.material-row[data-v-1fc4b8ce]{flex-wrap:wrap}.material-actions[data-v-1fc4b8ce]{width:100%;justify-content:flex-end;padding-top:8px;border-top:1px solid #f5f5f5}}
