.customerOnly .shopZoneToolbar{display:flex;align-items:center;margin:0 0 12px;gap:12px}
.customerOnly .shopZoneToolbar button{background:#fffdf8;border-color:#eddfcb;border-radius:999px;min-height:44px;font-size:12px}
.customerOnly .shopZoneToolbar button:last-child{margin-left:auto;color:#a56c3c}
.customerOnly .shopZoneHero{position:relative;isolation:isolate;overflow:hidden;padding:20px 18px;border-radius:22px;background:linear-gradient(120deg,#ffe8b7,#fff5da);margin-bottom:20px;min-height:138px;color:#7b4824}
.customerOnly .shopZoneHero.isActivities{background:linear-gradient(120deg,#ffe6d9,#fff0e8);color:#7e473b}
.customerOnly .shopZoneHero>span{display:inline-block;padding:4px 8px;background:#fff9;border-radius:99px;font-size:10px;letter-spacing:1px;color:#a5744d}
.customerOnly .shopZoneHero h3{font-size:22px;line-height:1.35;margin:9px 0 7px;max-width:75%;font-weight:850;letter-spacing:-.4px}
.customerOnly .shopZoneHero p{font-size:11px;line-height:1.7;margin:0;max-width:72%;color:#9a7856}
.customerOnly .shopZoneHero:after{content:'';position:absolute;z-index:-1;width:112px;height:90px;right:-3px;bottom:3px;background:url('/assets/brand/activity-ticket-20261009.svg') center/contain no-repeat;opacity:.9;transform:rotate(5deg)}
.customerOnly .shopZoneHero:not(.isActivities):after{background-image:url('/assets/brand/jx-good-times-food-v2-20261008.webp');width:106px;height:106px;right:-10px;bottom:-15px;border-radius:50%;background-size:cover;background-position:76% center;border:5px solid #fff5;transform:rotate(-9deg)}
.customerOnly .shopZoneHint{display:flex;align-items:center;gap:8px;margin:0 2px 12px;font-size:12px;line-height:1.7}
.customerOnly .shopZoneHint:before{content:'';width:4px;height:15px;background:#efb352;border-radius:99px;flex-shrink:0}
.customerOnly .shopZoneProducts{gap:14px}
.customerOnly .shopZoneProduct{grid-template-columns:108px minmax(0,1fr);gap:12px;padding:14px;background:#fffefb;border:1px solid #eee4d6;border-radius:22px;box-shadow:0 5px 18px #81541e08;align-items:center}
.customerOnly .shopZonePhoto{width:108px;height:112px;border-radius:16px;background:linear-gradient(145deg,#fff7e9,#fffdf8);display:grid;place-items:center}
.customerOnly .shopZonePhoto .foodPhotos{position:relative;background:transparent}
.customerOnly .shopZonePhoto .foodPhotos:not(.imageReady):not(.imageFailed):after{content:'图片加载中';position:absolute;inset:0;display:grid;place-items:center;font-size:11px;color:#ad9274;background:#fff8ee;pointer-events:none}
.customerOnly .shopZonePhoto .foodPlaceholder{padding:8px;font-size:11px;line-height:1.6;color:#a48b70}
.customerOnly .shopZoneProductCopy{display:grid;gap:6px;min-width:0;align-content:center}
.customerOnly .shopZoneProductTag{justify-self:start;font-size:10px;line-height:1.5;border-radius:6px;padding:3px 6px;background:#fff1d6;color:#a66b26}
.customerOnly .shopZoneProductName{font-size:15px;color:#4d3a2c;line-height:1.5;font-weight:800;min-height:24px}
.customerOnly .shopZoneProductDescription{font-size:11px;color:#a08a75;line-height:1.7;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.customerOnly .shopZoneProductPrice{margin-top:1px;padding-top:11px;border-top:1px solid #f4ece0;gap:10px}
.customerOnly .shopZoneAmount{font-size:21px;letter-spacing:-.5px;line-height:1.35}
.customerOnly .shopZoneActions .ghost{font-size:12px;background:#fff1df;border-color:#efd3ad;min-height:44px;padding:8px 14px}
.customerOnly .shopZoneCampaign{margin-bottom:24px;padding:0}
.customerOnly .shopZoneCampaignIntro{position:relative;overflow:hidden;border-radius:20px;border:1px solid #efdbc0;background:linear-gradient(135deg,#fff0db,#fff8ed);padding:18px;margin-bottom:14px;box-shadow:0 3px 14px #91582006}
.customerOnly .shopZoneCampaignIntro:before{content:'本店活动';display:inline-block;font-size:10px;color:#b57940;padding:3px 7px;border-radius:99px;background:#fff9;margin-bottom:8px}
.customerOnly .shopZoneCampaignIntro h3{font-size:18px;color:#6b4628;line-height:1.5;margin:0 0 8px;overflow-wrap:anywhere}
.customerOnly .shopZoneCampaignIntro>b{font-size:21px;line-height:1.5;color:#d66c35;margin:4px 0 8px}
.customerOnly .shopZoneCampaignIntro p{font-size:12px;color:#8d7058;line-height:1.8;margin:8px 0}
.customerOnly .shopZoneCampaignIntro small{font-size:10px;line-height:1.7;color:#a48a72;margin-top:12px}
.customerOnly .shopZoneEmpty{background:#fffdf8;border:1px dashed #e9d6bb;border-radius:24px;padding:30px 18px;margin:0 0 20px}
.customerOnly .shopZoneEmptyArt{display:block;width:112px;height:84px;object-fit:contain;margin:0 auto 16px}
.customerOnly .shopZoneEmpty>b{display:block;font-size:16px;color:#755239;line-height:1.6}
.customerOnly .shopZoneEmpty p{font-size:12px;line-height:1.9;max-width:260px;margin:10px auto 20px;color:#aa927b}
.customerOnly .shopZoneEmpty button{border-radius:999px;background:#ed903c;color:white;border-color:#ed903c;font-size:12px;padding:10px 20px}
@media(max-width:760px){.customerOnly #mobilePanel:has(#shopZoneBody) .mobilePageHead{padding:5px 2px 10px}.customerOnly #mobilePanel:has(#shopZoneBody) .mobilePageHead h2{font-size:24px;line-height:1.35;margin:4px 0}.customerOnly .shopZoneToolbar{top:100px;padding:8px 0;background:#fffaf2}.customerOnly .shopZoneProducts{grid-template-columns:minmax(0,1fr)}}
@media(max-width:360px){.customerOnly .shopZoneHero{padding:16px 14px;min-height:136px}.customerOnly .shopZoneHero h3{font-size:20px;max-width:74%}.customerOnly .shopZoneHero.isActivities:after{width:88px;height:66px;right:-3px;bottom:0}.customerOnly .shopZoneHero p{max-width:70%}.customerOnly .shopZoneProduct{grid-template-columns:90px minmax(0,1fr);padding:12px;gap:10px}.customerOnly .shopZonePhoto{width:90px;height:100px}.customerOnly .shopZoneProductName{font-size:14px}.customerOnly .shopZoneProductPrice{flex-wrap:wrap}.customerOnly .shopZoneAmount{font-size:20px}}
