/* V3.34: scoped storefront layout; existing Admin layout is preserved. */
body.storefront .wrap{width:min(1600px,calc(100% - 64px))}
body.storefront .season-banner{max-width:none}
body.storefront .showcase{gap:clamp(24px,4vw,72px);padding-top:32px;padding-bottom:32px}
body.storefront .showcase>img{height:clamp(300px,28vw,460px);object-fit:contain;background:#f0e9de}
body.storefront .showcase-copy{max-width:650px}
body.storefront .shop-assurance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:22px 0;border-bottom:1px solid var(--line);margin-top:12px}
.shop-assurance strong,.shop-assurance span,.shop-assurance a{display:block}
.shop-assurance strong{font-size:15px;margin-bottom:6px}.shop-assurance span,.shop-assurance a{font-size:14px;line-height:1.5}
body.storefront .product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
body.storefront .product-body{padding:18px}
body.storefront .product-image{height:280px}
body.storefront .product-card{min-width:0}
body.storefront .catalog-head{padding-top:32px}
body.storefront .floating-cart{position:fixed;right:24px;bottom:24px;z-index:25;background:var(--accent);color:white;border:2px solid white;border-radius:16px;padding:16px 20px;font:inherit;font-weight:800;box-shadow:0 6px 28px #0003;cursor:pointer}
body.storefront .drawer-card{width:min(520px,100%)}
.checkout-actions{position:sticky;bottom:-20px;background:white;padding:14px 0 20px;z-index:2;display:grid;gap:8px;border-top:1px solid var(--line)}
body.storefront section[id]{scroll-margin-top:20px}
.sign-card>img{cursor:zoom-in}
body.storefront footer{padding-bottom:100px}
.photo-dialog{width:min(1100px,96vw);height:min(850px,94vh);max-width:96vw;max-height:94vh;padding:0;border:1px solid #ddd;border-radius:18px;background:#fff;color:#17202a;box-shadow:0 12px 60px #0004}
.photo-dialog::backdrop{background:#111a}
.photo-tools{display:flex;align-items:center;gap:10px;padding:12px;border-bottom:1px solid #ddd;flex-wrap:wrap}
.photo-tools strong{flex:1;min-width:100px}.photo-tools button{cursor:pointer;padding:8px 12px;border:1px solid #ccc;background:white;border-radius:8px;font:inherit}
.photo-stage{height:calc(100% - 82px);overflow:auto;background:#f4f1eb;padding:16px}
.photo-stage img{display:block;max-width:none;object-fit:contain;margin:auto}
.admin-body img[data-photo-ready]{cursor:zoom-in}
@media(min-width:1800px){body.storefront .wrap{width:calc(100% - 112px);max-width:1920px}body.storefront .product-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1150px){body.storefront .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}body.storefront .shop-assurance{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){body.storefront .wrap{width:calc(100% - 32px)}body.storefront .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body.storefront .showcase{grid-template-columns:1fr}body.storefront .showcase>img{height:300px}}
@media(max-width:560px){body.storefront .wrap{width:calc(100% - 24px)}body.storefront .product-grid{grid-template-columns:1fr}body.storefront .shop-assurance{gap:18px 12px}.shop-assurance strong{font-size:14px}.shop-assurance span,.shop-assurance a{font-size:13px}body.storefront .floating-cart{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));text-align:center}body.storefront .showcase>img{height:260px}body.storefront .filters input,body.storefront .filters select{min-width:0;width:100%}.photo-tools{gap:6px}.photo-tools button{padding:8px}.photo-stage{height:calc(100% - 115px)}}
@media(prefers-reduced-motion:reduce){body.storefront *{scroll-behavior:auto!important}}
