.network-banner[data-v-da4ba85d]{border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:var(--shadow-sm);color:var(--color-gold-dark);max-width:750px;padding:calc(8px + var(--safe-top)) 12px 8px;width:100%;z-index:calc(var(--z-toast) - 1);background:#fff7ed;border:1px solid #f973163d;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;display:grid;position:fixed;top:0;left:50%;transform:translate(-50%)}.network-banner span[data-v-da4ba85d]{font-size:var(--font-xs);line-height:1.45}.network-banner button[data-v-da4ba85d]{background:var(--color-bg-white);border-radius:var(--radius-full);color:var(--color-gold-dark);font-size:var(--font-xs);font-weight:var(--font-weight-semibold);border:1px solid #b7791f52;min-height:44px;padding:0 10px}.tab-plan .tab-icon[data-v-da4ba85d],.tab-plan.router-link-active .tab-icon[data-v-da4ba85d]{color:var(--color-primary)}.error-boundary[data-v-9a4304d7]{background:var(--color-bg-page);color:var(--color-text-primary);min-height:100vh;padding:calc(24px + var(--safe-top)) 20px calc(24px + var(--safe-bottom));align-items:center;display:flex}.error-panel[data-v-9a4304d7]{text-align:center;max-width:420px;margin:0 auto}.error-mark[data-v-9a4304d7]{border-radius:var(--radius-full);color:var(--color-primary);background:#e04b4b1a;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:18px;display:inline-flex}.error-panel h1[data-v-9a4304d7]{color:var(--color-text-title);font-size:var(--font-xl);margin:0 0 10px}.error-panel p[data-v-9a4304d7]{color:var(--color-text-secondary);font-size:var(--font-sm);margin:0;line-height:1.7}.error-actions[data-v-9a4304d7]{grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;display:grid}.primary-action[data-v-9a4304d7],.secondary-action[data-v-9a4304d7]{border-radius:var(--radius-full);font-size:var(--font-sm);font-weight:var(--font-weight-semibold);justify-content:center;align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.primary-action[data-v-9a4304d7]{background:var(--color-primary);color:#fff;border:0}.secondary-action[data-v-9a4304d7]{background:var(--color-bg-white);border:1px solid var(--color-border);color:var(--color-text-primary)}:root{--color-primary:#d92d3a;--color-primary-light:#fee3e2;--color-primary-dark:#9f1d2a;--color-primary-bg:#d92d3a17;--color-bg-cream:#fff5eb;--color-gold:#a86b13;--color-gold-dark:#7a4b0b;--color-gold-bg:#a86b131c;--color-jade:#11715f;--color-jade-bg:#0f766e14;--color-orange:#f97316;--color-orange-bg:#f9731614;--color-blue:#3b82f6;--color-blue-bg:#3b82f614;--color-green:#22c55e;--color-green-bg:#22c55e14;--color-purple:#8b5cf6;--color-purple-bg:#8b5cf614;--color-bg-page:#f5f0ea;--color-bg-white:#fff;--color-bg-card:#fff;--color-bg-glass:#fffffff2;--color-bg-glass-strong:#fff;--color-bg-hover:#00000008;--color-bg-gray:#f9fafb;--color-bg-grey:#f9fafb;--color-text-title:#241d18;--color-text-body:#64564d;--color-text-secondary:#64564d;--color-text-tip:#95877e;--color-text-white:#fff;--color-text-primary:#ef4444;--color-text-orange:#f97316;--color-border:#3c2d231b;--color-border-light:#3c2d2312;--color-border-primary:#d92d3a3d;--color-success:#22c55e;--color-warning:#f97316;--color-error:#ef4444;--color-danger:#ef4444;--color-info:#3b82f6;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-2xl:32px;--radius-full:9999px;--font-xs:11px;--font-sm:13px;--font-base:15px;--font-md:17px;--font-lg:20px;--font-xl:24px;--font-2xl:32px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.3;--line-height-normal:1.5;--line-height-relaxed:1.7;--shadow-sm:0 8px 22px #3c2d230f;--shadow-md:0 14px 34px #3c2d2317;--shadow-lg:0 22px 52px #3c2d2324;--ease-out:cubic-bezier(.22, 1, .36, 1);--z-normal:1;--z-sticky:10;--z-fixed:100;--z-modal:1000;--z-toast:2000;--tabbar-height:64px;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px)}*{-webkit-tap-highlight-color:transparent}*,:before,:after{box-sizing:border-box}html{color:var(--color-text-title);background:var(--color-bg-page);font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,system-ui,-apple-system,sans-serif;font-size:var(--font-base);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant-numeric:tabular-nums}body{background:linear-gradient(180deg, #d92d3a0a, transparent 220px), linear-gradient(90deg, #3c2d2305 1px, transparent 1px), linear-gradient(0deg, #3c2d2304 1px, transparent 1px), var(--color-bg-page);background-size:auto,36px 36px,36px 36px,auto;min-height:100vh;margin:0;padding:0;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button{cursor:pointer;font:inherit;color:inherit;touch-action:manipulation;background:0 0;border:0;padding:0}button:disabled{cursor:not-allowed;opacity:.55}input,textarea,select{font:inherit;color:var(--color-text-title);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-white);min-height:44px;transition:border-color .2s var(--ease-out), box-shadow .2s var(--ease-out), background .2s var(--ease-out);outline:none;width:100%;padding:12px 16px;line-height:1.35}input:focus,textarea:focus,select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #e23a451f}input::placeholder,textarea::placeholder{color:var(--color-text-tip)}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);margin:0}p{margin:0}.app-shell{background:radial-gradient(circle at 18% 0%, #d92d3a11, transparent 30%), radial-gradient(circle at 92% 6%, #a86b1312, transparent 24%), linear-gradient(180deg, #fff8f2 0, var(--color-bg-page) 240px);min-height:100vh;padding-bottom:0;position:relative}.app-shell--with-tabbar{padding-bottom:calc(var(--tabbar-height) + var(--safe-bottom))}.route-view{min-width:0;display:block}.page-fade-enter-active,.page-fade-leave-active{transition:opacity .18s var(--ease-out), transform .18s var(--ease-out)}.page-fade-enter-from{opacity:0;transform:translateY(8px)}.page-fade-leave-to{opacity:0;transform:translateY(-4px)}.tabbar{border-top:1px solid var(--color-border-light);max-width:750px;padding-bottom:var(--safe-bottom);z-index:var(--z-fixed);height:calc(var(--tabbar-height) + var(--safe-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;grid-template-columns:repeat(5,1fr);align-items:center;margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 30px #3c2d2317}.tabbar a{color:var(--color-text-tip);font-size:10px;font-weight:var(--font-weight-medium);min-height:54px;transition:color .25s var(--ease-out), transform .25s var(--ease-out);flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:8px 0 6px;text-decoration:none;display:flex;position:relative}.tabbar a .tab-icon{transition:color .25s var(--ease-out), transform .25s var(--ease-out)}.tabbar a.router-link-active{color:var(--color-primary)}.tabbar a.router-link-active:before{background:linear-gradient(90deg, var(--color-primary), var(--color-gold));border-radius:var(--radius-full);content:"";width:18px;height:3px;position:absolute;top:5px;left:50%;transform:translate(-50%)}.tabbar a.router-link-active .tab-icon{transform:scale(1.1)}.page{background:0 0;max-width:750px;min-height:100vh;margin:0 auto}.page-gray,.page-with-header,.utility-page,.legal-page,.reviews-page,.recommend-page,.after-sale-page,.review-create-page,.plan-page{background:linear-gradient(180deg, #fff7edeb 0%, transparent 260px), var(--color-bg-page)}.page-white{background:var(--color-bg-white)}.page-with-header{padding-top:0}.page-header{z-index:var(--z-sticky);height:48px;padding:0 var(--spacing-md);border-bottom:1px solid var(--color-border-light);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;align-items:center;display:flex;position:sticky;top:0;box-shadow:0 8px 22px #3c2d230b}.page-header .back-btn{width:44px;height:44px;color:var(--color-text-title);border-radius:var(--radius-full);transition:background .2s var(--ease-out), color .2s var(--ease-out), transform .2s var(--ease-out);background:0 0;justify-content:center;align-items:center;display:flex}.page-header .back-btn:active{background:var(--color-bg-hover)}.page-header .header-title{text-align:center;font-size:var(--font-md);font-weight:var(--font-weight-semibold);color:var(--color-text-title);flex:1}.page-header .header-right{text-align:right;min-width:44px}.btn{justify-content:center;align-items:center;gap:var(--spacing-sm);border-radius:var(--radius-full);font-weight:var(--font-weight-semibold);min-height:44px;transition:background .2s var(--ease-out), border-color .2s var(--ease-out), color .2s var(--ease-out), transform .2s var(--ease-out), box-shadow .2s var(--ease-out);cursor:pointer;white-space:nowrap;border:none;display:inline-flex}.btn:active{opacity:.9;transform:scale(.97)}.btn-primary{background:linear-gradient(135deg, var(--color-primary), #f05a3b);color:var(--color-text-white);box-shadow:0 10px 22px #e23a4533}.btn-primary:disabled{cursor:not-allowed;background:#fca5a5;transform:none}.btn-outline{border:1.5px solid var(--color-border);color:var(--color-text-body);background:var(--color-bg-white)}.btn-ghost{color:var(--color-text-body);background:var(--color-bg-gray)}.btn-sm{font-size:var(--font-sm);padding:6px 14px}.btn-md{font-size:var(--font-base);padding:10px 20px}.btn-lg{font-size:var(--font-md);padding:12px 28px}.btn-block{width:100%}.card{background:var(--color-bg-card);border-radius:var(--radius-md);border:1px solid var(--color-border-light);padding:var(--spacing-md);box-shadow:var(--shadow-sm);transition:border-color .2s var(--ease-out), box-shadow .2s var(--ease-out), transform .2s var(--ease-out)}.card,.address-card,.cart-card,.combo-card,.favorite-card,.hot-card,.history-card,.invoice-card,.items-card,.legal-card,.notification-item,.order-card,.pickup-card,.product-card,.profile-card,.review-card,.service-card,.settings-card,.summary-card{contain:paint;content-visibility:auto;contain-intrinsic-size:auto 220px;border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm);background:linear-gradient(180deg, #fffffffa, #fffbf6fa), var(--color-bg-card)}.card-hover:active{box-shadow:var(--shadow-md);transform:translateY(-1px)}.tag{border-radius:var(--radius-sm);font-size:var(--font-xs);font-weight:var(--font-weight-medium);align-items:center;padding:2px 8px;display:inline-flex}.tag-primary{background:var(--color-primary-bg);color:var(--color-primary)}.tag-orange{background:var(--color-orange-bg);color:var(--color-orange)}.tag-hot{background:var(--color-primary-bg);color:var(--color-primary)}.tag-gold{background:var(--color-gold-bg);color:var(--color-gold-dark)}.section{padding:var(--spacing-md)}.section-header{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.section-title{font-size:var(--font-lg);font-weight:var(--font-weight-bold);color:var(--color-text-title);letter-spacing:0}.section-more{color:var(--color-text-tip);font-size:var(--font-sm);align-items:center;gap:2px;min-height:44px;padding:0 2px;display:inline-flex}.scroll-x{gap:var(--spacing-md);-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:var(--spacing-sm);padding-left:var(--spacing-md);padding-right:var(--spacing-md);margin-left:calc(-1 * var(--spacing-md));margin-right:calc(-1 * var(--spacing-md));display:flex;overflow-x:auto}.scroll-x::-webkit-scrollbar{display:none}.grid-2{gap:var(--spacing-sm);grid-template-columns:repeat(2,1fr);display:grid}.grid-3{gap:var(--spacing-sm);grid-template-columns:repeat(3,1fr);display:grid}.grid-4{gap:var(--spacing-sm);grid-template-columns:repeat(4,1fr);display:grid}.grid-5{gap:var(--spacing-sm);grid-template-columns:repeat(5,1fr);display:grid}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.flex-center{justify-content:center;align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.text-primary{color:var(--color-primary)}.text-orange{color:var(--color-orange)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.text-tip{color:var(--color-text-tip)}.text-body{color:var(--color-text-body)}.text-center{text-align:center}.text-right{text-align:right}.font-xs{font-size:var(--font-xs)}.font-sm{font-size:var(--font-sm)}.font-base{font-size:var(--font-base)}.font-md{font-size:var(--font-md)}.font-lg{font-size:var(--font-lg)}.font-xl{font-size:var(--font-xl)}.font-bold{font-weight:var(--font-weight-bold)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-serif{font-family:Noto Serif SC,Songti SC,SimSun,serif;font-weight:var(--font-weight-bold)}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ellipsis-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.px-md{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.py-md{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.price{color:var(--color-primary);font-weight:var(--font-weight-bold)}.price-symbol{font-size:.8em}.price-original{color:var(--color-text-tip);font-size:var(--font-xs);margin-left:4px;text-decoration:line-through}.divider{background:var(--color-border-light);height:1px;margin:var(--spacing-sm) 0}.toast-container{bottom:calc(var(--tabbar-height) + var(--safe-bottom) + 18px);z-index:var(--z-toast);align-items:center;gap:var(--spacing-sm);pointer-events:none;flex-direction:column;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast-item{color:var(--color-text-white);border-radius:var(--radius-lg);font-size:var(--font-base);text-align:center;pointer-events:auto;background:#000c;width:max-content;max-width:min(320px,100vw - 48px);padding:12px 24px;animation:.3s toast-in}@keyframes toast-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.loading-spinner{border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:20px;height:20px;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 50%,#f3f4f6 75%) 0 0/200% 100%;animation:1.5s ease-in-out infinite skeleton-loading}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.search-bar{background:var(--color-bg-white);border-radius:var(--radius-full);padding:10px var(--spacing-md);align-items:center;gap:var(--spacing-sm);border:1px solid var(--color-border-light);min-height:44px;box-shadow:var(--shadow-sm);display:flex}.search-bar input{font-size:var(--font-sm);box-shadow:none;background:0 0;border:none;flex:1;padding:0}.search-bar input:focus{box-shadow:none}.qty-selector{background:var(--color-bg-gray);border-radius:var(--radius-full);align-items:center;min-height:44px;padding:3px;display:inline-flex;overflow:hidden}.qty-selector button{width:44px;height:44px;color:var(--color-text-body);transition:background .2s var(--ease-out), color .2s var(--ease-out), transform .2s var(--ease-out);border-radius:var(--radius-full);background:0 0;justify-content:center;align-items:center;display:flex}.qty-selector button:active{background:var(--color-bg-hover);color:var(--color-primary)}.qty-selector button:disabled{color:var(--color-text-tip);cursor:not-allowed}.qty-selector .qty-value{text-align:center;min-width:36px;font-size:var(--font-sm);font-weight:var(--font-weight-medium)}.checkbox{width:44px;height:44px;transition:background .2s var(--ease-out), border-color .2s var(--ease-out), box-shadow .2s var(--ease-out);cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.checkbox:before{background:var(--color-bg-white);border:2px solid var(--color-border);content:"";height:24px;transition:background .2s var(--ease-out), border-color .2s var(--ease-out), box-shadow .2s var(--ease-out);border-radius:50%;width:24px}.checkbox.checked:before{background:var(--color-primary);border-color:var(--color-primary)}.checkbox.checked:after{content:"";border:2px solid #fff;border-top:none;border-left:none;width:5px;height:8px;transform:rotate(45deg)translateY(-1px)}.badge{position:relative}.badge[data-count]:after{content:attr(data-count);background:var(--color-primary);color:#fff;min-width:16px;height:16px;font-size:9px;font-weight:var(--font-weight-bold);border-radius:8px;justify-content:center;align-items:center;padding:0 4px;display:flex;position:absolute;top:-4px;right:-4px}.fade-enter-active,.fade-leave-active{transition:opacity .2s}.fade-enter-from,.fade-leave-to{opacity:0}.safe-bottom{padding-bottom:var(--safe-bottom)}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.red-header{background:linear-gradient(135deg, #ef3f45 0%, var(--color-primary) 58%, var(--color-primary-dark) 100%);color:var(--color-text-white);padding:var(--spacing-md);padding-top:calc(var(--spacing-md) + var(--safe-top));border-radius:0 0 var(--radius-2xl) var(--radius-2xl);box-shadow:0 14px 34px #9f1d2a33}.menu-item{padding:14px var(--spacing-md);background:var(--color-bg-white);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;transition:background .2s;display:flex}.menu-item:last-child{border-bottom:none}.menu-item:active{background:var(--color-bg-gray)}.menu-item-left{align-items:center;gap:var(--spacing-sm);display:flex}.menu-item-icon{justify-content:center;align-items:center;width:20px;height:20px;display:flex}.menu-item-text{font-size:var(--font-sm);color:var(--color-text-title);font-weight:var(--font-weight-medium)}.menu-item-sub{font-size:var(--font-xs);color:var(--color-text-tip);margin-top:2px}.menu-item-badge{font-size:var(--font-xs);color:var(--color-primary);background:var(--color-primary-bg);border-radius:var(--radius-sm);padding:2px 8px}.option-card{padding:var(--spacing-md);border:2px solid var(--color-border-light);border-radius:var(--radius-lg);background:var(--color-bg-white);transition:background .2s var(--ease-out), border-color .2s var(--ease-out), box-shadow .2s var(--ease-out), transform .2s var(--ease-out);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;width:100%;display:flex}.option-card:active{border-color:var(--color-border-primary)}.option-card.selected{border-color:var(--color-primary);background:var(--color-primary-bg)}.option-card-left{align-items:center;gap:var(--spacing-sm);display:flex}.option-card-label{font-size:var(--font-base);font-weight:var(--font-weight-semibold);color:var(--color-text-title)}.option-card.selected .option-card-label{color:var(--color-primary)}.option-card-desc{font-size:var(--font-xs);color:var(--color-text-tip);background:var(--color-bg-gray);border-radius:var(--radius-sm);padding:2px 8px}.progress-bar{background:var(--color-bg-gray);border-radius:3px;height:6px;overflow:hidden}.progress-fill{background:var(--color-primary);border-radius:3px;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}::selection{background:var(--color-primary-light);color:var(--color-primary-dark)}:focus-visible{outline-offset:2px;outline:3px solid #e23a4547}.press-effect{position:relative;overflow:hidden}.press-effect:after{content:"";opacity:0;transition:opacity .35s var(--ease-out), transform .5s var(--ease-out);pointer-events:none;background:radial-gradient(circle,#ef44441f 0%,#0000 70%);position:absolute;inset:0;transform:scale(1.5)}.press-effect:active:after{opacity:1;transition:opacity .15s,transform .25s;transform:scale(1)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-shimmer{background:linear-gradient(90deg,#f3f4f6 25%,#e8e9eb 50%,#f3f4f6 75%) 0 0/200% 100%;animation:1.8s ease-in-out infinite shimmer}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.animate-fade-in-up{animation:.45s cubic-bezier(.22,1,.36,1) both fadeInUp}.animate-fade-in{animation:.35s both fadeIn}.animate-scale-in{animation:.35s cubic-bezier(.22,1,.36,1) both scaleIn}.stagger-1{animation-delay:50ms}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}@keyframes bounceSubtle{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.bounce-subtle{animation:2s ease-in-out infinite bounceSubtle}@keyframes pulseRing{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 10px #ef444400}to{box-shadow:0 0 #ef444400}}.pulse-ring{animation:2s infinite pulseRing}@keyframes countUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.count-up{animation:.4s cubic-bezier(.22,1,.36,1) both countUp}.card-shine{position:relative;overflow:hidden}.card-shine:before{content:"";pointer-events:none;background:linear-gradient(to bottom right,#fff0 0% 40%,#ffffff0f 50%,#fff0 60% 100%);width:200%;height:200%;transition:transform .6s;position:absolute;top:-50%;left:-50%;transform:rotate(30deg)}.card-shine:active:before{transform:rotate(30deg)translate(60%)translateY(20%)}.gradient-text{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-gold) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.safe-area-bottom{padding-bottom:calc(var(--spacing-md) + var(--safe-bottom))}.app-bottom-inset{padding-bottom:calc(var(--tabbar-height) + var(--safe-bottom) + var(--spacing-xl))}.bottom-bar,.checkout-bar,.submit-bar{width:100%;max-width:750px;transform:translate(-50%);left:50%!important;right:auto!important}.bottom-bar,.submit-bar{bottom:calc(var(--tabbar-height) + var(--safe-bottom))!important}.bottom-spacer{height:calc(88px + var(--tabbar-height) + var(--safe-bottom))!important}.modal-content,.drawer,.action-modal{max-width:min(750px,100vw)}.page{width:min(100%,750px)}.page-with-header,.utility-page,.legal-page,.reviews-page,.recommend-page,.after-sale-page,.review-create-page,.plan-page{padding-bottom:calc(var(--tabbar-height) + var(--safe-bottom) + 18px)}.page-header{padding-top:var(--safe-top);height:calc(48px + var(--safe-top))}.page-header .header-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.section{padding-inline:clamp(14px,4vw,20px)}.section+.section{padding-top:8px}.section-kicker{color:var(--color-gold-dark);font-size:var(--font-xs);font-weight:var(--font-weight-bold);margin-bottom:2px}.section-head,.compact-head,.modal-header{justify-content:space-between;align-items:center;gap:var(--spacing-sm);display:flex}.section-head h3,.compact-head h3,.modal-header h3{color:var(--color-text-title);font-size:var(--font-md);line-height:var(--line-height-tight);margin:0}.card,.address-card,.cart-card,.combo-card,.favorite-card,.history-card,.invoice-card,.items-card,.legal-card,.notification-item,.order-card,.pickup-card,.profile-card,.review-card,.service-card,.settings-card,.summary-card,.plans-card,.design-item,.notice-summary,.price-card,.remark-card,.info-card,.logistics-card,.logistics-timeline-card{border-radius:var(--radius-lg)}.error-card,.address-error-card{background:linear-gradient(180deg, #fffffffa, #fef2f2f0), var(--color-bg-card);color:var(--color-error);border-color:#ef44443d}.error-card p,.address-error-card p{color:var(--color-text-body)}.form-group,.input-group,.form-row{min-width:0}.form-group label,.form-row>span,.input-label{color:var(--color-text-body);font-size:var(--font-sm);font-weight:var(--font-weight-semibold)}.modal-overlay{z-index:var(--z-modal);padding:16px 12px calc(16px + var(--safe-bottom));background:#241d1875;place-items:end center;display:grid;position:fixed;inset:0}.modal-content{border:1px solid var(--color-border-light);border-radius:var(--radius-xl) var(--radius-xl) var(--radius-md) var(--radius-md);background:var(--color-bg-white);width:min(100%,720px);max-height:min(82vh,720px);box-shadow:var(--shadow-lg);overflow:auto}.modal-header{z-index:1;border-bottom:1px solid var(--color-border-light);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;padding:14px 16px;position:sticky;top:0}.modal-close{border-radius:var(--radius-full);background:var(--color-bg-gray);width:44px;height:44px;color:var(--color-text-body);justify-content:center;align-items:center;font-size:24px;line-height:1;display:inline-flex}.btn-gold{background:linear-gradient(135deg, var(--color-gold), #d99027);color:var(--color-text-white);box-shadow:0 10px 22px #a86b1333}.btn-outline:active,.btn-ghost:active,.section-more:active,.menu-item:active,.option-card:active{background:var(--color-primary-bg)}.bottom-bar,.checkout-bar,.submit-bar{border-top:1px solid var(--color-border-light);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;box-shadow:0 -14px 34px #3c2d231a}.grid-2,.grid-3,.grid-4,.grid-5,.grid-2>*,.grid-3>*,.grid-4>*,.grid-5>*{min-width:0}.status-pending_payment,.status-pending_production,.status-in_production,.status-generating{color:var(--color-warning)}.status-shipped,.status-completed,.status-refunded,.status-success,.status-issued{color:var(--color-success)}.status-cancelled,.status-failed,.status-rejected{color:var(--color-error)}@media (width>=751px){.tabbar,.bottom-bar,.checkout-bar,.submit-bar{border-inline:1px solid var(--color-border-light)}.page{box-shadow:0 0 0 1px #3c2d230b}}@media (width<=420px){:root{--font-2xl:28px;--font-xl:22px}.grid-5{gap:6px}.btn-lg{padding-inline:18px}.product-bottom,.section-header{align-items:flex-start}.product-bottom{flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.page-fade-enter-from,.page-fade-leave-to{opacity:1;transform:none}}
