.cover.has-img:after{opacity:1;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.28))}@media (min-width:900px){.cover{height:clamp(220px,24vw,300px)}}.shop-info{border-radius:18px;padding:20px 22px;gap:14px;box-shadow:0 1px 2px rgba(16,24,20,.05),0 12px 32px -14px rgba(16,24,20,.22)}.shop-info .h1{font-size:clamp(22px,2.6vw,28px);font-weight:800;letter-spacing:-.02em;line-height:1.15}.shop-info .meta{gap:6px 14px;font-size:13.5px;color:var(--ink-2)}.shop-info .meta .chip{height:24px;font-size:12px}.facts{gap:6px 16px;padding-top:12px;border-top:1px solid var(--line)}.shop-info .facts>*,.shop-info .facts>span:first-child{height:auto;border:0;padding:0;background:none;border-radius:0;font-size:13px;color:var(--ink-2)}.shop-info .facts>* svg{color:var(--accent)}.shop-info .facts a{background:none;color:var(--accent);font-weight:700}.shop-info .seg{margin-top:2px}.cat-bar{background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.tab{height:36px;padding:0 14px;border:1px solid transparent;background:transparent;color:var(--muted);font-weight:650}.tab:hover{color:var(--ink);background:var(--surface)}.cat-bar .tab[aria-current=true]{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.cat-bar .tab[aria-current=true]:after,.tab .cat-dot{display:none}.menu-sec{padding-top:26px}.menu-sec h2{display:flex;align-items:baseline;gap:10px;font-size:20px;font-weight:800;letter-spacing:-.01em;margin-bottom:10px}.menu-sec h2 small{font-size:13px;font-weight:600;color:var(--muted)}.menu-sec h2 .cat-dot{display:none}.menu-list.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (min-width:640px){.menu-list.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}.p-card{display:flex;flex-direction:column;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;padding:0;transition:transform .15s,box-shadow .15s,border-color .15s}.p-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px -16px rgba(16,24,20,.35);border-color:var(--line-strong)}.p-card:disabled{cursor:not-allowed}.p-card:disabled .p-body,.p-card:disabled .p-img{opacity:.55}.p-img{position:relative;aspect-ratio:1;display:block;background:var(--surface-2)}.p-img .art{width:100%;height:100%;border-radius:0}.p-img .art img{object-fit:cover}.p-best{position:absolute;left:8px;top:8px;display:inline-flex;align-items:center;gap:3px;height:22px;padding:0 8px;border-radius:999px;background:rgba(15,20,18,.78);color:#fff;font-size:11px;font-weight:700;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.p-best svg{color:#fdba74}.p-img .qty-badge{position:absolute;right:8px;top:8px}.p-img .sold-tag{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.p-body{display:flex;flex-direction:column;gap:3px;padding:10px 12px 12px;flex:1 1}.p-body .name{font-weight:700;font-size:14.5px;line-height:1.3;color:var(--ink);-webkit-line-clamp:2}.p-body .desc,.p-body .name{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.p-body .desc{font-size:12.5px;color:var(--muted);-webkit-line-clamp:1}.p-foot{margin-top:auto;padding-top:8px;display:flex;align-items:center;justify-content:space-between;gap:8px}.p-foot .price{font-weight:800;font-size:15px;white-space:nowrap}.p-add{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);flex:none;transition:transform .12s}.p-card:hover .p-add{transform:scale(1.08)}@media (max-width:420px){.p-body{padding:8px 10px 10px}.p-body .name{font-size:13.5px}.p-foot .price{font-size:14px}.p-add{width:30px;height:30px}}.item-row{padding:14px 0;gap:14px}.item-row .thumb{width:92px;height:92px}.item-row .thumb .art{border-radius:14px}.item-row .name{font-size:15px}.item-row .add-fab{width:32px;height:32px;right:-4px;bottom:-4px;background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.best-sec .section-head .h2{font-size:20px;font-weight:800;letter-spacing:-.01em}.mini-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;gap:0;transition:transform .15s,box-shadow .15s}.mini-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px -16px rgba(16,24,20,.35)}.mini-card .art,.mini-card .thumb .art{border-radius:0}.mini-card>b{padding:10px 12px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mini-card>.price{padding:4px 12px 12px}.mini-card .add-fab{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);width:32px;height:32px}.cart-panel{border-radius:18px;box-shadow:0 1px 2px rgba(16,24,20,.05),0 12px 32px -18px rgba(16,24,20,.25)}.cart-empty{padding:22px 8px;gap:6px}.cart-empty .bubble{width:48px;height:48px}@media (min-width:900px){.item-sheet{max-width:940px;height:min(720px,calc(100dvh - 64px))}.item-sheet .sheet-scroll{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.item-sheet .sheet-scroll>.art,.item-sheet .sheet-scroll>.pg{position:-webkit-sticky;position:sticky;top:0;height:min(640px,calc(100dvh - 150px));max-height:none;aspect-ratio:auto}.item-sheet .sheet-scroll>.pg .art,.item-sheet .sheet-scroll>.pg .pg-slide,.item-sheet .sheet-scroll>.pg .pg-track{height:100%;max-height:none;aspect-ratio:auto}.item-sheet .sheet-pad{padding:24px 24px 12px}.item-sheet .close-float{left:14px;right:auto}}.shop-foot{margin-top:32px;border-top:1px solid var(--line);background:var(--surface)}.shop-foot .container{flex-wrap:wrap;gap:14px 28px;padding-top:22px;padding-bottom:calc(110px + env(safe-area-inset-bottom))}.sf-shop,.shop-foot .container{display:flex;align-items:center}.sf-shop{gap:12px;min-width:0}.sf-shop .logo{width:40px;height:40px;flex:none}.sf-shop div{display:flex;flex-direction:column;min-width:0;font-size:13px;color:var(--muted)}.sf-shop b{color:var(--ink);font-size:14.5px}.sf-links{display:flex;gap:16px;flex-wrap:wrap}.sf-links a{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:650;color:var(--ink-2);text-decoration:none}.sf-links a svg{color:var(--accent)}.sf-by{flex-basis:100%;margin:0;font-size:12.5px;color:var(--muted)}.sf-by a{color:var(--ink-2);font-weight:650}@media (min-width:900px){.shop-foot .container{padding-bottom:36px}.sf-links{margin-left:auto}}