/* Shop surfaces share the same public Sunset Signal contrast and warmth. */
body.shop-public { --shop-ink: #0F2749; --shop-muted: #526678; --shop-line: #E4CDB0; --shop-blue: #C8553D; --shop-bg: #F4E2C8; --shop-card: #FFFAF1; min-height: 100vh; background: radial-gradient(circle at 91% 3%, rgba(255,127,86,.18), transparent 28rem), #F4E2C8; color: #0F2749; }
body.shop-public .shop-header { background: rgba(255,250,241,.94); border-color: #E4CDB0; }
body.shop-public .shop-brand { display: inline-flex; align-items: center; gap: 10px; color: #0F2749 !important; }
body.shop-public .shop-brand::before { content: ""; display: block; width: 36px; height: 36px; border-radius: 50%; background: #0F2749 url('/branding/pocketpapi-sunset-signal-character-mark.png') center / 100% 100% no-repeat; }
body.shop-public .shop-header nav a { color: #B04430; }
body.shop-public .shop-cart-count { background: #FFE1D5; color: #B04430; }
body.shop-public .shop-hero { border-color: #E4CDB0; background: linear-gradient(135deg, #FFF0E6, #F8E8D2); }
body.shop-public .shop-kicker,
body.shop-public .shop-product-category { color: #B04430; }
body.shop-public .shop-hero p,
body.shop-public .shop-description,
body.shop-public .shop-stock,
body.shop-public .shop-form-note,
body.shop-public .shop-breadcrumb,
body.shop-public .shop-product-card-body .shop-price del { color: #526678; }
body.shop-public .shop-search input,
body.shop-public .shop-form input,
body.shop-public .shop-form select,
body.shop-public .shop-form textarea,
body.shop-public .shop-add-form input { border-color: #D8BB9A; background: #FFFAF1; color: #0F2749; }
body.shop-public .shop-search button,
body.shop-public .shop-form button,
body.shop-public .shop-actions button,
body.shop-public .shop-button { background: #FF7F56; color: #0F2749; }
body.shop-public .shop-search button:hover,
body.shop-public .shop-form button:hover,
body.shop-public .shop-actions button:hover,
body.shop-public .shop-button:hover { background: #E76643; }
body.shop-public .shop-product-card,
body.shop-public .shop-product-detail,
body.shop-public .shop-empty,
body.shop-public .shop-order-success,
body.shop-public .shop-summary,
body.shop-public .shop-cart-list { border-color: #E4CDB0; background: #FFFAF1; }
body.shop-public .shop-product-card img,
body.shop-public .shop-product-image img { background: #F8E8D2; }
body.shop-public .shop-product-card:hover { box-shadow: 0 14px 32px rgba(91,55,33,.12); }
body.shop-public .shop-button-secondary { background: #FFE1D5; color: #B04430; }
body.shop-public .shop-link-button { color: #B04430; }
body.shop-public .shop-alert { border-color: #E8B9A7; background: #FFF0E6; color: #7A3A2D; }
body.shop-public .shop-footer { color: #756F6A; }
body.shop-public .shop-footer a { color: #B04430; }

/* The public storefront uses the same shell as Help Center and the landing
   page. Keep the legacy shop stylesheet for field coverage, but let this
   layer own the visible storefront geometry and Sunset Signal surfaces. */
body.shop-public .public-doc-shell { width: min(100% - 48px, 1180px); margin-inline: auto; }
body.shop-public .public-doc-shell .public-doc-header { width: 100%; }
body.shop-public .shop-container { width: min(100% - 48px, 1180px); max-width: none; margin-inline: auto; padding: 66px 0 92px; }
body.shop-public .shop-container.shop-narrow { max-width: 900px; }
body.shop-public .shop-hero { border: 0; border-radius: 0; margin: 0; padding: 8px 0 52px; background: transparent; }
body.shop-public .shop-hero h1,
body.shop-public .shop-product-detail h1,
body.shop-public .shop-container > h1 { color: #0F2749; font-family: "Avenir Next", "SF Pro Display", "Segoe UI", sans-serif; font-weight: 800; letter-spacing: -.065em; }
body.shop-public .shop-hero h1 { font-size: clamp(2.7rem, 6vw, 5.2rem); line-height: .98; margin-bottom: 18px; }
body.shop-public .shop-hero p:not(.shop-kicker) { max-width: 690px; color: #526678; font-size: 1.05rem; line-height: 1.7; }
body.shop-public .shop-kicker,
body.shop-public .shop-product-category { color: #B04430; }
body.shop-public .shop-search { max-width: 650px; margin-top: 30px; }
body.shop-public .shop-search input,
body.shop-public .shop-form input,
body.shop-public .shop-form select,
body.shop-public .shop-form textarea,
body.shop-public .shop-add-form input { min-height: 46px; border-radius: 10px; border-color: #D8BB9A; background: #FFFAF1; box-shadow: 0 8px 20px rgba(91,55,33,.05); }
body.shop-public .shop-search button,
body.shop-public .shop-form button,
body.shop-public .shop-actions button,
body.shop-public .shop-button { border: 1px solid #FF7F56; border-radius: 10px; background: #FF7F56; color: #0F2749; font-weight: 800; box-shadow: 0 10px 22px rgba(200,85,61,.16); }
body.shop-public .shop-search button:hover,
body.shop-public .shop-form button:hover,
body.shop-public .shop-actions button:hover,
body.shop-public .shop-button:hover { background: #E76643; color: #0F2749; }
body.shop-public .shop-product-grid { gap: 18px; }
body.shop-public .shop-product-card { border-color: #E4CDB0; border-radius: 16px; background: rgba(255,250,241,.82); box-shadow: 0 10px 26px rgba(91,55,33,.06); }
body.shop-public .shop-product-card:hover { border-color: #FF7F56; box-shadow: 0 16px 34px rgba(91,55,33,.13); transform: translateY(-3px); }
body.shop-public .shop-product-card img,
body.shop-public .shop-product-image img { background: #F8E8D2; object-fit: contain; }
body.shop-public .shop-product-card-body { padding: 20px; }
body.shop-public .shop-product-card h2,
body.shop-public .shop-product-detail h1,
body.shop-public .shop-summary h2,
body.shop-public .shop-empty h2,
body.shop-public .shop-order-success h1 { color: #0F2749; }
body.shop-public .shop-card-meta { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 12px; }
body.shop-public .shop-card-meta span { padding: 4px 8px; border-radius: 999px; background: #FFE1D5; color: #B04430; font-size: .72rem; }
body.shop-public .shop-price { color: #0F2749; }
body.shop-public .shop-product-detail,
body.shop-public .shop-empty,
body.shop-public .shop-order-success,
body.shop-public .shop-summary,
body.shop-public .shop-cart-list { border-color: #E4CDB0; border-radius: 16px; background: rgba(255,250,241,.88); box-shadow: 0 12px 28px rgba(91,55,33,.07); }
body.shop-public .shop-product-detail { gap: 48px; padding: 26px; }
body.shop-public .shop-product-image img { border-radius: 13px; }
body.shop-public .shop-description,
body.shop-public .shop-stock,
body.shop-public .shop-form-note,
body.shop-public .shop-breadcrumb { color: #526678; }
body.shop-public .shop-specifications,
body.shop-public .shop-specifications div,
body.shop-public .shop-cart-row { border-color: #E4CDB0; }
body.shop-public .shop-link-button { color: #B04430; font-weight: 750; }
body.shop-public .shop-button-secondary { border-color: #E4CDB0; background: #FFE1D5; color: #B04430; box-shadow: none; }
body.shop-public .shop-button-secondary:hover { background: #FFD3C4; color: #B04430; }
body.shop-public .shop-alert { border-color: #E8B9A7; border-radius: 10px; background: #FFF0E6; color: #7A3A2D; }
body.shop-public .shop-footer { width: min(100% - 48px, 1180px); margin: 0 auto; justify-content: flex-start; flex-wrap: wrap; gap: 18px 24px; padding: 24px 0 40px; border-top: 1px solid #E4CDB0; }
body.shop-public .shop-footer span { margin-left: auto; }

@media (max-width: 820px) {
    body.shop-public .shop-container,
    body.shop-public .shop-footer { width: min(100% - 32px, 1180px); }
    body.shop-public .shop-container { padding-top: 44px; }
    body.shop-public .shop-hero { padding-bottom: 38px; }
    body.shop-public .shop-footer span { width: 100%; margin-left: 0; }
}
