:root{--shop-yellow:#f2c14e;--shop-yellow-strong:#e7ae2a;--shop-yellow-soft:#f2c14e33;--shop-yellow-text:#9a6b00;--shop-ink:#282621;--shop-shadow:0 10px 28px #9a6b0038;--shop-panel-shadow:0 30px 80px #28262138;--shop-radius:16px;--shop-radius-sm:12px;--shop-spring:cubic-bezier(.34, 1.56, .64, 1);--shop-ease:cubic-bezier(.16, 1, .3, 1);--shop-drawer:cubic-bezier(.32, .72, 0, 1)}.dark{--shop-yellow:#e9b949;--shop-yellow-strong:#f2c75f;--shop-yellow-soft:#e9b94926;--shop-yellow-text:#f0c96a;--shop-ink:#24231f;--shop-shadow:0 10px 28px #00000061;--shop-panel-shadow:0 30px 80px #00000080}.shop-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.shop-primary,.shop-secondary{min-height:50px;font:inherit;white-space:nowrap;cursor:pointer;transition:transform .35s var(--shop-spring), background-color .25s, box-shadow .25s, color .25s;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 24px;font-size:16px;font-weight:600;display:inline-flex}.shop-primary{background:var(--shop-yellow);color:var(--shop-ink);box-shadow:var(--shop-shadow);border:0}.shop-primary:hover{background:var(--shop-yellow-strong);transform:translateY(-2px)}.shop-secondary{border:1px solid var(--foreground);color:var(--foreground);background:0 0}.shop-secondary:hover{background:var(--surface);transform:translateY(-2px)}.shop-secondary.is-added{background:var(--foreground);color:var(--background)}.shop-primary:active,.shop-secondary:active{transition-duration:80ms;transform:scale(.97)}:is(.shop-primary:focus-visible,.shop-secondary:focus-visible,.shop-icon-button:focus-visible,.shop-chip-button:focus-visible,.shop-text-button:focus-visible,.shop-fab:focus-visible){outline:2px solid var(--foreground);outline-offset:3px}.shop-icon-button{background:var(--muted);width:40px;height:40px;color:var(--foreground);cursor:pointer;transition:transform .3s var(--shop-spring), background-color .2s;border:0;border-radius:999px;place-items:center;display:grid}.shop-icon-button:hover{background:var(--surface);transform:rotate(90deg)}.shop-chip-button{border:1px solid var(--border);background:var(--background);min-height:36px;color:var(--foreground);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:14px;display:inline-flex}.shop-chip-button:disabled{opacity:.45;cursor:not-allowed}.shop-text-button{color:var(--muted-foreground);font:inherit;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;padding:8px 4px;font-size:14px;text-decoration:underline}.shop-text-button:hover{color:var(--foreground)}@keyframes shop-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes shop-shimmer{to{background-position:-200% 0}}.shop-shell{width:min(1180px,100% - 48px);color:var(--foreground);margin:32px auto 120px}.shop-shell .accent{color:var(--shop-yellow-text)}.shop-hero{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:64px;padding:24px 0 88px;display:grid}.shop-hero-copy>*{animation:shop-rise .9s var(--shop-ease) both}.shop-hero-copy>:nth-child(2){animation-delay:80ms}.shop-hero-copy>:nth-child(3){animation-delay:.16s}.shop-hero h1{font-family:var(--font-book);letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(40px,5vw,66px);font-weight:400;line-height:1.14}.shop-hero h1 em{padding-bottom:4px;font-style:italic}.shop-hero-copy p{max-width:30em;color:var(--muted-foreground);margin:24px 0 0;font-size:18px;line-height:1.8}.shop-hero-actions{margin-top:36px}.shop-hero-media{margin:0 24px 24px 40px;position:relative}.shop-hero-main{aspect-ratio:4/5;object-fit:cover;border-radius:var(--shop-radius);background:var(--muted);width:100%;box-shadow:var(--shadow-float);animation:shop-hero-reveal 1.1s var(--shop-ease) .1s both;display:block}.shop-hero-detail{aspect-ratio:3/4;object-fit:cover;border:6px solid var(--background);border-radius:var(--shop-radius);background:var(--muted);width:38%;box-shadow:var(--shadow-float);animation:shop-pop .9s var(--shop-spring) .55s both;position:absolute;bottom:-24px;left:-40px;rotate:-5deg}@keyframes shop-hero-reveal{0%{opacity:0;clip-path:inset(18% 0 0 0 round var(--shop-radius));transform:scale(1.04)}to{opacity:1;clip-path:inset(0 0 0 0 round var(--shop-radius));transform:none}}@keyframes shop-pop{0%{opacity:0;transform:translateY(40px)scale(.8)}to{opacity:1;transform:none}}.shop-catalog{padding-top:72px}.shop-catalog-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px;display:flex}.shop-catalog-head h2,.shop-howto h2,.product-highlights h2,.product-more h2{font-family:var(--font-book);letter-spacing:-.01em;margin:0;font-size:30px;font-weight:400;line-height:1.3}.shop-filters{scrollbar-width:none;border:0;gap:8px;min-width:0;margin:-4px;padding:4px;display:flex;overflow-x:auto}.shop-filters button{border:1px solid var(--border);min-height:40px;color:var(--foreground);font:inherit;cursor:pointer;transition:background-color .25s, color .25s, border-color .25s, transform .3s var(--shop-spring);background:0 0;border-radius:999px;flex:none;align-items:center;gap:8px;padding:0 16px;font-size:15px;display:inline-flex}.shop-filters button span{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;font-size:12px}.shop-filters button:hover{border-color:var(--foreground)}.shop-filters button:active{transform:scale(.95)}.shop-filters button[aria-pressed=true]{border-color:var(--foreground);background:var(--foreground);color:var(--background)}.shop-filters button[aria-pressed=true] span{color:var(--shop-yellow)}.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px;margin:0;padding:0;list-style:none;display:grid}.shop-grid>li{min-width:0;animation:shop-rise .8s var(--shop-ease) both;animation-delay:calc(var(--i) * 70ms + .1s);display:flex}.shop-grid>li.is-featured{grid-area:span 2/span 2}.shop-grid>li.is-featured.is-short{grid-row:auto}.shop-grid>li.is-solo{grid-area:auto/1/auto/-1}.shop-grid>li.is-wide-2{grid-column:span 2}.shop-grid>li.is-wide-3{grid-column:1/-1}html.shop-sorting .shop-grid>li{view-transition-name:var(--card-vt);view-transition-class:shop-card;animation:none}html.shop-sorting .shop-grid [data-vt]{view-transition-name:none}::view-transition-group(.shop-card){animation-duration:.55s;animation-timing-function:var(--shop-ease)}.shop-card{width:100%;color:inherit;flex-direction:column;text-decoration:none;display:flex}.shop-card-media{aspect-ratio:3/4;border-radius:var(--shop-radius);background:linear-gradient(100deg, var(--muted) 30%, var(--surface) 50%, var(--muted) 70%) 0 0 / 200% 100%;animation:1.6s linear infinite shop-shimmer;display:block;position:relative;overflow:hidden}.is-featured .shop-card-media,.is-wide-2 .shop-card-media{aspect-ratio:auto;flex:1;min-height:360px}.is-solo .shop-card-media,.is-wide-3 .shop-card-media{aspect-ratio:21/9;flex:none;min-height:0}.shop-card-media img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--shop-ease), opacity .6s var(--shop-ease);position:absolute;inset:0}.shop-card-alt{opacity:0}.shop-card:hover .shop-card-media img{transform:scale(1.045)}.shop-card:hover .shop-card-alt{opacity:1}.shop-card-copy{gap:6px;padding:18px 2px 0;display:grid}.shop-card-meta{color:var(--muted-foreground);font-size:13px}.shop-card-copy strong{font-family:var(--font-book);font-size:21px;font-weight:400;line-height:1.35}.is-featured .shop-card-copy strong{font-size:28px}.shop-card-copy small{-webkit-line-clamp:2;color:var(--muted-foreground);-webkit-box-orient:vertical;font-size:15px;line-height:1.6;display:-webkit-box;overflow:hidden}.shop-card-foot{justify-content:space-between;align-items:center;margin-top:6px;display:flex}.shop-card-foot em{font-variant-numeric:tabular-nums;font-size:16px;font-style:normal;font-weight:600}.shop-card-foot svg{transition:transform .4s var(--shop-spring)}.shop-card:hover .shop-card-foot svg{transform:translate(3px,-3px)}.shop-card:focus-visible{outline:none}.shop-card:focus-visible .shop-card-media{outline:2px solid var(--foreground);outline-offset:4px}.shop-sample-tag{z-index:1;background:var(--shop-ink);color:var(--shop-yellow);border-radius:999px;padding:4px 10px;font-size:12px;position:absolute;top:14px;left:14px}.shop-howto{margin-bottom:72px;padding-top:104px}.shop-howto ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin:36px 0 0;padding:0;list-style:none;display:grid;position:relative}.shop-howto ol:before{content:"";border-top:1px dashed var(--border);height:0;position:absolute;top:26px;left:26px;right:26px}.shop-howto li{align-content:start;gap:10px;display:grid;position:relative}.shop-howto-icon{border:1px solid var(--border);background:var(--background);width:52px;height:52px;color:var(--foreground);transition:background-color .3s, transform .4s var(--shop-spring);border-radius:999px;place-items:center;margin-bottom:8px;display:grid}.shop-howto li:hover .shop-howto-icon{background:var(--shop-yellow);color:var(--shop-ink);border-color:#0000;transform:translateY(-4px)rotate(-6deg)}.shop-howto strong{font-size:18px;font-weight:600}.shop-howto p{max-width:22em;color:var(--muted-foreground);margin:0;font-size:15px;line-height:1.7}.shop-empty{text-align:center;color:var(--muted-foreground);animation:shop-rise .6s var(--shop-ease) both;justify-items:center;gap:8px;padding:48px 24px;display:grid}.shop-empty svg{color:var(--shop-yellow-text);margin-bottom:8px;animation:3.2s ease-in-out 2 shop-float}.shop-empty p,.shop-empty h2{color:var(--foreground);margin:0;font-size:18px;font-weight:600}.shop-empty.is-page{border:1px dashed var(--border);border-radius:var(--shop-radius);margin-top:72px;padding:72px 24px}.shop-empty.is-page h2{font-family:var(--font-book);font-size:28px;font-weight:400}@keyframes shop-float{50%{transform:translateY(-8px)}}.shop-fab{left:max(20px, env(safe-area-inset-left));bottom:max(20px, env(safe-area-inset-bottom));z-index:40;background:var(--shop-yellow);height:52px;color:var(--shop-ink);box-shadow:var(--shop-shadow), inset 0 1px 0 #ffffff73;font:inherit;cursor:pointer;translate:var(--mx,0) var(--my,0);transition:translate .35s var(--shop-spring), background-color .2s;animation:shop-fab-rise .9s var(--shop-spring) .35s both;view-transition-name:shop-cart;border:0;border-radius:999px;align-items:center;gap:8px;padding:0 10px 0 6px;font-size:15px;font-weight:700;display:inline-flex;position:fixed}.shop-fab:hover{background:var(--shop-yellow-strong)}.shop-fab:active{scale:.95}.shop-fab-icon{background:var(--shop-ink);width:40px;height:40px;color:var(--shop-yellow);border-radius:999px;place-items:center;display:grid}.shop-fab-icon svg{transform-origin:50% 90%;animation:8s ease-in-out 3s 2 shop-cart-nudge}.shop-fab-badge{background:var(--background);min-width:24px;height:24px;color:var(--shop-ink);font-family:var(--font-geist-mono), monospace;border-radius:999px;place-items:center;padding:0 7px;font-size:12px;font-weight:600;display:grid}.dark .shop-fab-badge{background:var(--shop-ink);color:var(--shop-yellow)}::view-transition-group(shop-cart){z-index:11;animation:none}@keyframes shop-fab-rise{0%{opacity:0;transform:translateY(90px)scale(.6)}to{opacity:1;transform:none}}@keyframes shop-cart-nudge{0%,10%,to{transform:none}2%{transform:rotate(-14deg)translate(-1px)}4%{transform:rotate(10deg)translate(1px)}6%{transform:rotate(-6deg)}8%{transform:rotate(3deg)}}.shop-fly{z-index:60;pointer-events:none;position:fixed}.shop-fly>*{object-fit:cover;border:3px solid var(--shop-yellow);width:100%;height:100%;box-shadow:var(--shop-shadow);border-radius:50%;display:block}.shop-sheet,.shop-dialog{max-width:none;max-height:none;color:var(--foreground);transition:display .5s allow-discrete, overlay .5s allow-discrete;background:0 0;border:0;margin:0;padding:0}.shop-sheet{width:100%;height:100%}.shop-sheet::backdrop{-webkit-backdrop-filter:blur();backdrop-filter:blur();transition:background-color .45s, backdrop-filter .45s, display .5s allow-discrete, overlay .5s allow-discrete;background:#24221e00}.shop-dialog::backdrop{-webkit-backdrop-filter:blur();backdrop-filter:blur();transition:background-color .45s, backdrop-filter .45s, display .5s allow-discrete, overlay .5s allow-discrete;background:#24221e00}.shop-sheet[open]::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#24221e6b}.shop-dialog[open]::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#24221e6b}@starting-style{.shop-sheet[open]::backdrop{-webkit-backdrop-filter:blur();backdrop-filter:blur();background:#24221e00}.shop-dialog[open]::backdrop{-webkit-backdrop-filter:blur();backdrop-filter:blur();background:#24221e00}}.shop-sheet-panel{border:1px solid var(--border);background:var(--background);width:min(440px,100% - 32px);box-shadow:var(--shop-panel-shadow);transition:transform .55s var(--shop-drawer);border-radius:24px;flex-direction:column;display:flex;position:fixed;top:16px;bottom:16px;left:16px;overflow:hidden;transform:translate(-112%)}.shop-sheet[open] .shop-sheet-panel{transform:none}@starting-style{.shop-sheet[open] .shop-sheet-panel{transform:translate(-112%)}}.shop-sheet-panel.is-dragging{transition:none}.shop-sheet-grip{display:none}.shop-sheet-head{justify-content:space-between;align-items:center;padding:22px 22px 12px;display:flex}.shop-sheet-head h2{font-family:var(--font-book);margin:0;font-size:26px;font-weight:400}.shop-tabs{border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;margin:0 22px;display:grid;position:relative}.shop-tabs button{min-height:48px;color:var(--muted-foreground);font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;font-size:15px;transition:color .2s;display:inline-flex}.shop-tabs button[aria-selected=true]{color:var(--foreground);font-weight:600}.shop-tabs button span{background:var(--muted);min-width:22px;font-family:var(--font-geist-mono), monospace;border-radius:999px;padding:1px 7px;font-size:12px;font-weight:500}.shop-tabs button[aria-selected=true] span{background:var(--shop-yellow);color:var(--shop-ink)}.shop-tabs-ink{background:var(--foreground);width:50%;height:2px;transition:transform .45s var(--shop-spring);border-radius:2px;position:absolute;bottom:-1px;left:0}.shop-tabs-ink[data-tab=wish]{transform:translate(100%)}.shop-sheet-list{overscroll-behavior:contain;flex:1;margin:0;padding:10px 12px 20px;list-style:none;overflow-y:auto}.shop-sheet-list>li{animation:shop-rise .55s var(--shop-ease) both;animation-delay:calc(var(--i) * 45ms + .12s)}.shop-sheet-item,.shop-wish-item{border-radius:var(--shop-radius);color:inherit;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:14px;padding:10px;text-decoration:none;transition:background-color .2s;display:grid}.shop-sheet-item:hover{background:var(--muted)}.shop-sheet-item:focus-visible{outline:2px solid var(--foreground);outline-offset:-2px}.shop-sheet-thumb{border-radius:var(--shop-radius-sm);background:var(--muted);width:76px;height:76px;display:block;overflow:hidden}.shop-sheet-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--shop-ease)}.shop-sheet-item:hover .shop-sheet-thumb img{transform:scale(1.08)}.shop-sheet-copy{gap:3px;min-width:0;display:grid}.shop-sheet-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:600;overflow:hidden}.shop-sheet-copy small{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.shop-sheet-copy em{font-variant-numeric:tabular-nums;font-size:14px;font-style:normal;font-weight:600}.shop-sheet-go{background:var(--shop-yellow);color:var(--shop-ink);transition:transform .35s var(--shop-spring);border-radius:999px;align-items:center;gap:2px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.shop-sheet-item:hover .shop-sheet-go{transform:translate(-3px)}.shop-wish{flex-direction:column;flex:1;min-height:0;display:flex}.shop-wish-foot{border-top:1px solid var(--border);background:var(--background);justify-content:space-between;align-items:center;gap:12px;padding:14px 22px 22px;display:flex}.shop-stepper{border:1px solid var(--border);background:var(--background);border-radius:999px;align-items:center;display:inline-flex}.shop-stepper button{width:32px;height:32px;color:var(--foreground);cursor:pointer;transition:background-color .2s, transform .25s var(--shop-spring);background:0 0;border:0;border-radius:999px;place-items:center;display:grid}.shop-stepper button:hover:not(:disabled){background:var(--muted)}.shop-stepper button:active:not(:disabled){transform:scale(.85)}.shop-stepper button:disabled{opacity:.35;cursor:not-allowed}.shop-stepper output{text-align:center;min-width:24px;font-family:var(--font-geist-mono), monospace;font-size:14px}.shop-stepper.is-large button{width:42px;height:42px}.shop-stepper.is-large output{min-width:36px;font-size:16px}.shop-dialog{width:100%;height:100%;inset:0}.shop-dialog[open]{place-items:center;display:grid}.wechat-order-inner{border:1px solid var(--border);background:var(--background);width:min(600px,100% - 32px);max-height:calc(100dvh - 32px);box-shadow:var(--shop-panel-shadow);opacity:0;transition:opacity .35s var(--shop-ease), transform .5s var(--shop-spring);border-radius:24px;padding:24px;overflow-y:auto;transform:translateY(24px)scale(.96)}.shop-dialog[open] .wechat-order-inner{opacity:1;transform:none}@starting-style{.shop-dialog[open] .wechat-order-inner{opacity:0;transform:translateY(24px)scale(.96)}}.wechat-order header{align-items:center;gap:12px;margin-bottom:22px;display:flex}.wechat-order h2{font-family:var(--font-book);flex:1;margin:0;font-size:24px;font-weight:400}.wechat-order-icon{background:var(--shop-yellow);width:40px;height:40px;color:var(--shop-ink);border-radius:999px;place-items:center;display:grid}.wechat-order-body{grid-template-columns:188px minmax(0,1fr);gap:24px;display:grid}.wechat-qr{align-content:start;gap:10px;margin:0;display:grid}.wechat-qr img,.wechat-qr-empty{aspect-ratio:1;border-radius:var(--shop-radius-sm);width:100%}.wechat-qr img{object-fit:contain;background:#fffdf8}.wechat-qr-empty{border:1px dashed var(--muted-foreground);color:var(--muted-foreground);place-items:center;font-size:14px;display:grid}.wechat-qr figcaption{color:var(--muted-foreground);text-align:center;font-size:13px}.wechat-order-steps{align-content:start;gap:8px;min-width:0;display:grid}.wechat-order-label{color:var(--muted-foreground);margin:6px 0 0;font-size:13px}.wechat-id-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.wechat-id-row strong{font-family:var(--font-geist-mono), monospace;overflow-wrap:anywhere;font-size:17px;font-weight:500}.wechat-order-message{border-radius:var(--shop-radius-sm);background:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;margin:0 0 8px;padding:14px 16px;font-family:inherit;font-size:15px;line-height:1.7}.wechat-order-hint{color:var(--muted-foreground);margin:4px 0 0;font-size:13px;line-height:1.6}.product-layout{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:start;gap:64px;display:grid}.product-gallery{min-width:0;animation:shop-rise .8s var(--shop-ease) both}.product-stage{border-radius:var(--shop-radius);background:var(--muted);position:relative;overflow:hidden}.product-track{touch-action:pan-y pinch-zoom;display:flex}.product-slide{flex:0 0 100%;min-width:0;margin:0;overflow:hidden}.product-slide img{aspect-ratio:4/5;object-fit:cover;width:100%;transition:transform .9s var(--shop-ease);display:block;transform:scale(1.03)}.product-slide.is-current img{transform:none}.product-thumbs{scrollbar-width:none;gap:10px;margin-top:14px;padding:4px;display:flex;overflow-x:auto}.product-thumbs button{border-radius:var(--shop-radius-sm);background:var(--muted);opacity:.5;cursor:pointer;outline-offset:2px;width:68px;height:84px;transition:opacity .25s, outline-color .25s, transform .35s var(--shop-spring);border:0;outline:2px solid #0000;flex:none;padding:0;overflow:hidden}.product-thumbs button:hover{opacity:.85;transform:translateY(-2px)}.product-thumbs button[aria-selected=true]{opacity:1;outline-color:var(--foreground)}.product-thumbs img{object-fit:cover;width:100%;height:100%}.product-info{padding-top:8px;position:sticky;top:104px}.product-info>*{animation:shop-rise .8s var(--shop-ease) both}.product-info>:nth-child(2){animation-delay:60ms}.product-info>:nth-child(3){animation-delay:.12s}.product-info>:nth-child(4){animation-delay:.18s}.product-category{color:var(--shop-yellow-text);margin:0 0 12px;font-size:14px;font-weight:600}.product-info h1{font-family:var(--font-book);letter-spacing:-.015em;margin:0;font-size:clamp(32px,3.4vw,46px);font-weight:400;line-height:1.2}.product-tagline{color:var(--muted-foreground);margin:14px 0 0;font-size:17px;line-height:1.7}.product-buy{border-top:1px solid var(--border);margin-top:28px;padding-top:28px}.product-price{align-items:baseline;gap:12px;min-height:48px;display:flex}.product-price small{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:14px}.rolling-price{font-variant-numeric:tabular-nums;align-items:flex-end;font-size:40px;font-weight:600;line-height:1.1;display:inline-flex}.rolling-price.is-quote{font-family:var(--font-book);font-size:30px;font-weight:400}.rolling-currency{margin-right:4px;font-size:.55em;line-height:1.6}.rolling-digit{height:1.1em;display:inline-block;overflow:hidden}.rolling-digit>span{transition:transform .7s var(--shop-spring);display:block}.rolling-digit>span>span{height:1.1em;display:block}.product-option{border:0;min-width:0;margin:26px 0 0;padding:0}.product-option legend{color:var(--muted-foreground);gap:10px;margin-bottom:12px;padding:0;font-size:14px;display:flex}.product-option legend span{color:var(--foreground);font-weight:600}.swatches,.size-pills{flex-wrap:wrap;gap:10px;display:flex}.swatch,.size-pill{cursor:pointer;position:relative}.swatch input,.size-pill input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.swatch>span:first-of-type{outline-offset:3px;width:38px;height:38px;transition:outline-color .2s, transform .4s var(--shop-spring);border-radius:999px;outline:2px solid #0000;display:block;box-shadow:inset 0 0 0 1px #28262129}.swatch:hover>span:first-of-type{transform:scale(1.08)}.swatch input:checked+span{outline-color:var(--foreground);transform:scale(1.1)}.swatch input:focus-visible+span{outline-color:var(--shop-yellow-text)}.size-pill span{border:1px solid var(--border);border-radius:999px;align-items:center;min-height:42px;padding:0 18px;font-size:15px;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.size-pill:hover span{border-color:var(--foreground)}.size-pill input:checked+span{border-color:var(--foreground);background:var(--foreground);color:var(--background);animation:shop-pill-pop .45s var(--shop-spring)}.size-pill input:focus-visible+span{outline:2px solid var(--shop-yellow-text);outline-offset:3px}@keyframes shop-pill-pop{40%{transform:scale(1.08)}}.product-actions{grid-template-columns:1fr 1fr;gap:12px;margin-top:32px;display:grid}.product-actions>button{width:100%;min-height:54px}.product-note{color:var(--muted-foreground);margin:14px 0 0;font-size:13px}.product-highlights{padding-top:96px}.product-highlights dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:28px 0 0;display:grid}.product-highlights dl>div{border:1px solid var(--border);border-radius:var(--shop-radius);background:var(--card);transition:transform .45s var(--shop-spring), border-color .25s;padding:24px}.product-highlights dl>div:hover{border-color:var(--shop-yellow);transform:translateY(-3px)}.product-highlights dt{font-size:17px;font-weight:600}.product-highlights dd{color:var(--muted-foreground);margin:8px 0 0;font-size:15px;line-height:1.75}@supports (animation-timeline:view()){.product-highlights dl>div,.product-more a{animation:linear both shop-rise;animation-timeline:view();animation-range:entry entry 60%}}.product-more{padding:96px 0 72px}.product-more>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:28px;display:grid}.product-more a{color:inherit;grid-template-columns:1fr auto;gap:12px 8px;text-decoration:none;display:grid}.product-more img{aspect-ratio:3/4;object-fit:cover;border-radius:var(--shop-radius);background:var(--muted);width:100%;transition:transform .6s var(--shop-ease);grid-column:1/-1}.product-more a:hover img{transform:translateY(-4px)}.product-more span{gap:2px;min-width:0;display:grid}.product-more strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.product-more small{color:var(--muted-foreground);font-size:13px}@media (max-width:900px){.shop-hero{grid-template-columns:1fr;gap:48px;padding-bottom:64px}.shop-hero-media{width:min(420px,82%);margin:0 0 24px auto}.product-layout{grid-template-columns:1fr;gap:32px}.product-info{position:static}}@media (max-width:760px){.shop-shell{width:calc(100% - 32px);margin-top:20px}.shop-hero{padding-top:8px}.shop-hero-copy p{font-size:16px}.shop-hero-detail{width:40%;left:-18px}.shop-catalog{padding-top:48px}.shop-catalog-head{flex-direction:column;align-items:flex-start;gap:16px}.shop-filters{width:calc(100% + 8px)}.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}.shop-grid>li.is-featured{grid-row:auto}.shop-grid>li.is-wide-2,.shop-grid>li.is-wide-3{grid-column:auto}.shop-grid>li.is-odd-last{grid-column:1/-1}.is-featured .shop-card-media,.is-odd-last .shop-card-media{aspect-ratio:4/3;flex:none;min-height:0}.is-wide-2:not(.is-odd-last) .shop-card-media,.is-wide-3:not(.is-odd-last) .shop-card-media{aspect-ratio:3/4;flex:none}.shop-card-copy{padding-top:12px}.shop-card-copy strong{font-size:17px}.is-featured .shop-card-copy strong{font-size:22px}.shop-card-copy small{font-size:13px}.shop-howto{padding-top:72px}.shop-howto ol{grid-template-columns:1fr;gap:28px}.shop-howto ol:before{border-top:0;border-left:1px dashed var(--border);height:auto;inset:26px auto 26px 26px}.shop-howto li{grid-template-columns:52px 1fr;gap:4px 16px}.shop-howto-icon{grid-row:span 2;margin:0}.shop-fab{height:48px;left:max(16px, env(safe-area-inset-left));bottom:max(16px, env(safe-area-inset-bottom))}.shop-fab-icon{width:36px;height:36px}.shop-sheet-panel{width:100%;max-height:84dvh;padding-bottom:env(safe-area-inset-bottom);border-width:1px 0 0;border-radius:24px 24px 0 0;inset:auto 0 0;transform:translateY(105%)}@starting-style{.shop-sheet[open] .shop-sheet-panel{transform:translateY(105%)}}.shop-sheet-grip{cursor:grab;touch-action:none;place-items:center;height:26px;display:grid}.shop-sheet-grip span{background:var(--border);border-radius:999px;width:44px;height:5px}.shop-sheet-head{padding-top:4px}.shop-dialog[open]{place-items:end center}.wechat-order-inner{width:100%;max-height:90dvh;padding-bottom:max(24px, env(safe-area-inset-bottom));border-radius:24px 24px 0 0;transform:translateY(100%)}@starting-style{.shop-dialog[open] .wechat-order-inner{opacity:0;transform:translateY(100%)}}.wechat-order-body{grid-template-columns:1fr}.wechat-qr{justify-self:center;width:168px}.rolling-price{font-size:34px}.product-highlights{padding-top:64px}.product-highlights dl{grid-template-columns:1fr}.product-more{padding-top:64px}.product-more>div{scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:-16px;padding-right:16px;display:flex;overflow-x:auto}.product-more a{scroll-snap-align:start;flex:0 0 44%}}@media (max-width:380px){.product-actions{grid-template-columns:1fr}}@media (hover:none){.shop-card:hover .shop-card-alt{opacity:0}.shop-card:hover .shop-card-media img{transform:none}}@media (prefers-reduced-motion:reduce){.shop-card-media{animation:none}.shop-fab{translate:none}}
