.app-header[data-v-45c5c967]{z-index:200;background:#fff;transition:box-shadow .25s;position:fixed;top:0;left:0;right:0}.app-header.is-scrolled[data-v-45c5c967]{box-shadow:0 4px 20px #7c3aed14}.header-bar[data-v-45c5c967]{height:var(--header-h);border-bottom:1px solid #0000;transition:border-color .25s}.app-header.is-scrolled .header-bar[data-v-45c5c967]{border-bottom-color:#7c3aed14}.header-inner[data-v-45c5c967]{height:var(--header-h);max-width:var(--max-w);align-items:center;gap:16px;margin:0 auto;padding:0 16px;display:flex}@media (width>=768px){.header-inner[data-v-45c5c967]{gap:24px;padding:0 24px}}.mobile-left[data-v-45c5c967],.mobile-right[data-v-45c5c967]{flex:none;align-items:center;width:44px;display:flex}.mobile-left[data-v-45c5c967]{justify-content:flex-start}.mobile-right[data-v-45c5c967]{justify-content:flex-end}.logo[data-v-45c5c967]{flex-shrink:0;align-items:center;gap:8px;display:flex}.logo--mobile[data-v-45c5c967]{flex:auto;justify-content:center;min-width:0}@media (width>=768px){.logo--mobile[data-v-45c5c967]{flex:none;justify-content:flex-start}}.logo-mark[data-v-45c5c967]{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.logo-text[data-v-45c5c967]{letter-spacing:.5px;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:20px;font-weight:800}@media (width<=767px){.logo-text[data-v-45c5c967]{font-size:18px}}.menu-btn[data-v-45c5c967]{color:#1a1a2e;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;transition:background .15s;display:inline-flex}.menu-btn[data-v-45c5c967]:active{background:#f5f3ff}.nav[data-v-45c5c967]{flex-shrink:0;align-items:center;gap:4px;display:flex}.nav-link[data-v-45c5c967]{color:#4b5563;border-radius:10px;padding:8px 14px;font-size:15px;font-weight:500;transition:color .2s,background .2s;position:relative}.nav-link[data-v-45c5c967]:hover{color:#7c3aed;background:#faf5ff}.nav-link--active[data-v-45c5c967]{color:#7c3aed;background:#faf5ff;font-weight:600}.nav-link--active[data-v-45c5c967]:after{content:"";background:linear-gradient(90deg,#7c3aed,#a855f7);border-radius:2px;height:2px;position:absolute;bottom:-2px;left:14px;right:14px}.search[data-v-45c5c967]{background:#faf5ff;border:1px solid #0000;border-radius:999px;flex:auto;align-items:center;gap:8px;min-width:0;max-width:360px;height:40px;padding:0 14px;transition:border-color .2s,background .2s,box-shadow .2s;display:flex}.search[data-v-45c5c967]:focus-within{background:#fff;border-color:#c4b5fd;box-shadow:0 0 0 4px #7c3aed1a}.search-icon[data-v-45c5c967]{color:#7c3aed;flex-shrink:0;display:inline-flex}.search-input[data-v-45c5c967]{color:#1a1a2e;background:0 0;flex:1;min-width:0;font-size:14px}.search-input[data-v-45c5c967]::placeholder{color:#9ca3af}.header-right[data-v-45c5c967]{flex-shrink:0;align-items:center;gap:8px;display:flex}.icon-btn[data-v-45c5c967]{color:#1a1a2e;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:inline-flex;position:relative}.icon-btn[data-v-45c5c967]:hover{color:#7c3aed;background:#faf5ff}.icon-btn[data-v-45c5c967]:active{transform:scale(.95)}.cart-badge[data-v-45c5c967]{color:#fff;text-align:center;background:linear-gradient(135deg,#ef4444,#f97316);border-radius:9px;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;line-height:18px;position:absolute;top:4px;right:2px;box-shadow:0 2px 6px #ef444459}.user-dd[data-v-45c5c967]{position:relative}.user-btn[data-v-45c5c967]{color:#1a1a2e;border-radius:999px;align-items:center;gap:6px;height:40px;padding:0 12px;transition:background .2s;display:inline-flex}.user-btn[data-v-45c5c967]:hover{background:#faf5ff}.avatar[data-v-45c5c967]{color:#fff;background:linear-gradient(135deg,#7c3aed,#a855f7);border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.user-name[data-v-45c5c967]{text-overflow:ellipsis;white-space:nowrap;max-width:100px;font-size:14px;font-weight:500;overflow:hidden}.dd-menu[data-v-45c5c967]{background:#fff;border-radius:14px;min-width:180px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px #1118271f,0 0 0 1px #7c3aed0f}.dd-item[data-v-45c5c967]{color:#1a1a2e;text-align:left;border-radius:10px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:14px;transition:background .15s,color .15s;display:flex}.dd-item[data-v-45c5c967]:hover{color:#7c3aed;background:#faf5ff}.dd-logout[data-v-45c5c967]{color:#ef4444}.dd-logout[data-v-45c5c967]:hover{color:#ef4444;background:#fef2f2}.dd-divider[data-v-45c5c967]{background:#f3f4f6;height:1px;margin:4px 0}.dd-enter-active[data-v-45c5c967],.dd-leave-active[data-v-45c5c967]{transition:opacity .15s,transform .15s}.dd-enter-from[data-v-45c5c967],.dd-leave-to[data-v-45c5c967]{opacity:0;transform:translateY(-6px)}.btn-ghost[data-v-45c5c967]{color:#4b5563;border-radius:10px;align-items:center;height:36px;padding:0 14px;font-size:14px;font-weight:500;transition:background .15s,color .15s;display:inline-flex}.btn-ghost[data-v-45c5c967]:hover{color:#7c3aed;background:#faf5ff}.btn-grad[data-v-45c5c967]{color:#fff;background:linear-gradient(135deg,#7c3aed,#a855f7);border-radius:10px;justify-content:center;align-items:center;height:36px;padding:0 16px;font-size:14px;font-weight:600;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 4px 12px #7c3aed4d}.btn-grad[data-v-45c5c967]:hover{transform:translateY(-1px);box-shadow:0 6px 16px #7c3aed66}.btn-block[data-v-45c5c967]{width:100%}.mobile-search[data-v-45c5c967],.mobile-search.is-visible[data-v-45c5c967]{display:none}.drawer-mask[data-v-45c5c967]{z-index:199;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#11182766;position:fixed;inset:0}.drawer[data-v-45c5c967]{z-index:200;background:#fff;flex-direction:column;width:78%;max-width:320px;display:flex;position:fixed;top:0;bottom:0;left:0;box-shadow:4px 0 24px #0000001a}.drawer-head[data-v-45c5c967]{background:linear-gradient(135deg,#ede9fe 0%,#f5f3ff 100%);border-bottom:1px solid #7c3aed14;padding:28px 24px 20px}.drawer-sub[data-v-45c5c967]{color:#6b7280;margin-top:12px;font-size:13px}.drawer-nav[data-v-45c5c967]{flex:1;padding:12px;overflow-y:auto}.drawer-link[data-v-45c5c967]{color:#1a1a2e;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;font-size:15px;font-weight:500;transition:background .15s,color .15s;display:flex}.drawer-link[data-v-45c5c967]:hover,.drawer-link.router-link-active[data-v-45c5c967]{color:#7c3aed;background:#faf5ff}.dl-ico[data-v-45c5c967]{color:#7c3aed;background:#faf5ff;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.dl-badge[data-v-45c5c967]{color:#fff;background:linear-gradient(135deg,#ef4444,#f97316);border-radius:10px;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:700}.drawer-foot[data-v-45c5c967]{padding:16px 20px calc(20px + env(safe-area-inset-bottom,0px));border-top:1px solid #f3f4f6}.btn-outline[data-v-45c5c967]{color:#1a1a2e;background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;width:100%;height:44px;font-size:14px;font-weight:600;transition:background .15s}.btn-outline[data-v-45c5c967]:hover{background:#faf5ff}.drawer-enter-active[data-v-45c5c967],.drawer-leave-active[data-v-45c5c967]{transition:transform .28s cubic-bezier(.22,1,.36,1)}.drawer-enter-from[data-v-45c5c967],.drawer-leave-to[data-v-45c5c967]{transform:translate(-100%)}.mask-enter-active[data-v-45c5c967],.mask-leave-active[data-v-45c5c967]{transition:opacity .25s}.mask-enter-from[data-v-45c5c967],.mask-leave-to[data-v-45c5c967]{opacity:0}.app-footer[data-v-2942f494]{color:#4b5563;background:#faf8ff;border-top:1px solid #7c3aed14;margin-top:48px;padding:40px 0 24px}@media (width<=767px){.app-footer[data-v-2942f494]{padding:24px 0 16px;padding-bottom:calc(var(--tabbar-h) + 16px + env(safe-area-inset-bottom,0px));margin-top:32px}}.footer-grid[data-v-2942f494]{grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:48px;padding-bottom:32px;display:grid}@media (width<=1199px){.footer-grid[data-v-2942f494]{gap:28px}}.col-title[data-v-2942f494]{color:#1a1a2e;margin-bottom:16px;font-size:14px;font-weight:600;position:relative}.col-title[data-v-2942f494]:after{content:"";background:linear-gradient(90deg,#7c3aed,#a855f7);border-radius:2px;width:16px;height:2px;margin-top:6px;display:block}.col ul[data-v-2942f494]{flex-direction:column;gap:10px;display:flex}.col li a[data-v-2942f494]{color:#6b7280;font-size:13px;transition:color .15s}.col li a[data-v-2942f494]:hover{color:#7c3aed}.brand[data-v-2942f494]{align-items:center;gap:8px;display:flex}.brand-mark[data-v-2942f494]{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.brand-name[data-v-2942f494]{letter-spacing:.5px;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:18px;font-weight:800}.brand-desc[data-v-2942f494]{color:#6b7280;max-width:280px;margin-top:14px;font-size:13px;line-height:1.7}.social[data-v-2942f494]{gap:8px;margin-top:18px;display:flex}.social-btn[data-v-2942f494]{color:#7c3aed;background:#fff;border:1px solid #7c3aed1f;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;transition:all .2s;display:inline-flex}.social-btn[data-v-2942f494]:hover{color:#fff;background:#7c3aed;transform:translateY(-2px);box-shadow:0 4px 12px #7c3aed4d}.contact[data-v-2942f494]{gap:14px!important}.contact li[data-v-2942f494]{align-items:flex-start;gap:10px;display:flex}.ck-ico[data-v-2942f494]{color:#7c3aed;background:linear-gradient(135deg,#ede9fe,#f5f3ff);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.ck-label[data-v-2942f494]{color:#9ca3af;font-size:11px;display:block}.ck-value[data-v-2942f494]{color:#1a1a2e;margin-top:2px;font-size:13px;font-weight:500;display:block}.footer-simple[data-v-2942f494]{text-align:center;padding-bottom:20px}.footer-simple .brand[data-v-2942f494]{justify-content:center}.tag[data-v-2942f494]{color:#9ca3af;letter-spacing:1px;margin-top:10px;font-size:12px}.footer-bottom[data-v-2942f494]{color:#9ca3af;border-top:1px solid #7c3aed14;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:20px;font-size:12px;display:flex}@media (width<=767px){.footer-bottom[data-v-2942f494]{text-align:center;flex-direction:column;gap:4px;padding-top:16px}}.tabbar[data-v-d665d53d]{height:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);z-index:150;-webkit-backdrop-filter:saturate(180%)blur(10px);backdrop-filter:saturate(180%)blur(10px);background:#fff;border-top:1px solid #7c3aed14;justify-content:space-around;align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #7c3aed0f}@media (width>=768px){.tabbar[data-v-d665d53d]{display:none}}.tab-item[data-v-d665d53d]{color:#9ca3af;-webkit-tap-highlight-color:transparent;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;height:100%;font-size:10px;font-weight:500;transition:color .2s;display:flex;position:relative}.tab-item[data-v-d665d53d]:active{transform:scale(.96)}.tab-item[data-v-d665d53d]>*{transition:transform .2s}.tab-icon[data-v-d665d53d]{border-radius:8px;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.tab-item--active[data-v-d665d53d]{color:#7c3aed}.tab-item--active .tab-icon[data-v-d665d53d]{background:linear-gradient(135deg,#f5f3ff,#ede9fe);transform:translateY(-2px)}.tab-item--active .tab-label[data-v-d665d53d]{font-weight:600}.tab-label[data-v-d665d53d]{letter-spacing:.2px;font-size:10px;line-height:1.2}.tab-badge[data-v-d665d53d]{color:#fff;text-align:center;background:linear-gradient(135deg,#ef4444,#f97316);border-radius:8px;min-width:16px;height:16px;margin-left:14px;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:4px;left:50%;box-shadow:0 2px 6px #ef444459}.back-to-top[data-v-66dda846]{background:var(--primary);color:#fff;z-index:999;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:transform .2s,opacity .2s;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 4px 12px #7c3aed59}.back-to-top[data-v-66dda846]:hover{transform:translateY(-2px);box-shadow:0 6px 16px #7c3aed73}.back-to-top[data-v-66dda846]:active{transform:scale(.93)}@media (width<=767px){.back-to-top[data-v-66dda846]{bottom:calc(var(--tabbar-h) + 16px + env(safe-area-inset-bottom,0px));width:40px;height:40px;right:16px}}.fade-enter-active[data-v-66dda846],.fade-leave-active[data-v-66dda846]{transition:opacity .25s}.fade-enter-from[data-v-66dda846],.fade-leave-to[data-v-66dda846]{opacity:0}.fade-enter-active,.fade-leave-active{transition:opacity .2s}.fade-enter-from,.fade-leave-to{opacity:0}.main-content[data-v-7f9a939f]{padding-top:var(--header-h);min-height:calc(100vh - var(--header-h))}@media (width<=767px){.main-content[data-v-7f9a939f]{padding-bottom:var(--tabbar-h)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-tap-highlight-color:transparent;font-size:16px}body{color:#1a1a2e;-webkit-font-smoothing:antialiased;background:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{cursor:pointer;font:inherit;background:0 0;border:none}input,textarea{font:inherit;border:none;outline:none}ul,ol{list-style:none}:root{--primary:#7c3aed;--primary-light:#a78bfa;--primary-dark:#6d28d9;--primary-bg:#faf5ff;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--info:#6b7280;--text:#1a1a2e;--text-secondary:#666;--text-muted:#999;--border:#e5e7eb;--bg:#f5f7fa;--card:#fff;--shadow:0 2px 8px #0000000f;--shadow-lg:0 8px 24px #0000001a;--radius:12px;--radius-sm:8px;--radius-lg:16px;--header-h:60px;--tabbar-h:56px;--max-w:1200px}.container{max-width:var(--max-w);margin:0 auto;padding:0 16px}@media (width>=768px){.container{padding:0 24px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.fade-in-up{animation:.4s both fadeInUp}.price{color:var(--danger);font-variant-numeric:tabular-nums;font-weight:700}.price-original{color:var(--text-muted);font-size:.85em;text-decoration:line-through}.btn{border-radius:var(--radius);justify-content:center;align-items:center;gap:6px;padding:10px 24px;font-weight:600;transition:all .2s;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);color:#fff;box-shadow:0 4px 12px #7c3aed4d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 16px #7c3aed66}.btn-outline{border:1.5px solid var(--primary);color:var(--primary);background:#fff}.btn-outline:hover{background:var(--primary-bg)}.btn-block{width:100%;display:flex}.btn-sm{padding:6px 16px;font-size:13px}.btn-lg{padding:14px 32px;font-size:16px}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.empty{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.empty-icon{margin-bottom:16px;font-size:48px}.empty-text{font-size:14px}.loading-spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:24px;height:24px;animation:.6s linear infinite spin}.badge{background:var(--danger);color:#fff;text-align:center;border-radius:8px;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:-4px;right:-4px}@media (width<=767px){.hide-mobile{display:none!important}}@media (width>=768px){.hide-desktop{display:none!important}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}
