.store-body [hidden]{display:none!important}

.store-body .public{padding-top:24px}.store-body h1{font-size:clamp(24px,2.2vw,28px);letter-spacing:-.02em;line-height:1.3;font-weight:600}



.header-cart{display:flex;align-items:center;gap:12px;min-height:44px;color:var(--app-text)}.header-cart:hover{text-decoration:none}.cart-icon{position:relative;font-size:24px;padding:8px 4px}.cart-badge{position:absolute;top:0;right:-8px;min-width:19px;height:19px;padding:0 5px;background:var(--app-primary);color:var(--app-on-action);border-radius:12px;font:600 11px/19px var(--app-font-sans);text-align:center}
.market-heading{display:flex;align-items:center;gap:16px;margin:20px 0 28px}.market-heading h1{margin-bottom:10px}.market-layout{display:grid;grid-template-columns:224px minmax(0,1fr);gap:32px;align-items:start}.market-sidebar{border:0;min-width:0}.market-sidebar>summary{display:none}.market-sidebar-content{padding:0}.market-categories{display:flex;flex-direction:column;gap:3px;padding-bottom:24px;border-bottom:1px solid var(--app-border)}.market-categories h2{font-size:16px;letter-spacing:0;margin:0 0 12px}.market-categories a{display:flex;justify-content:space-between;align-items:baseline;gap:8px;border-radius:12px;min-height:44px;padding:10px 12px 10px calc(12px + var(--category-depth,0)*12px);color:var(--app-text);font-size:14px;line-height:1.4}.market-categories a:hover{background:var(--app-hover);text-decoration:none}.market-categories a.selected{background:var(--app-selected-bg);color:var(--app-link);font-weight:600}
.market-sidebar fieldset{margin:24px 0 0;padding:0;border:0;min-width:0}.market-sidebar legend{font-weight:600;font-size:14px;margin-bottom:12px}.price-range{display:grid;grid-template-columns:1fr 1fr;gap:12px}.price-range label{font-size:12px;color:var(--app-muted);margin-bottom:5px}.price-range input{padding:8px 10px;font-size:14px;border-radius:12px;min-width:0}.market-sidebar .stock-filter{font-size:14px;margin:20px 0;cursor:pointer}.market-sidebar .button{width:100%}.filter-reset{display:block;font-size:13px;text-align:center;margin-top:12px;padding:8px}
.market-results{min-width:0}.market-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.market-chips a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;background:var(--app-surface-alt);border:0;border-radius:9999px;color:var(--app-text);font-size:14px;line-height:1.5}.market-chips a:hover{background:var(--app-hover);text-decoration:none}.market-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;min-height:44px}.market-sort{display:flex;align-items:center;gap:4px;margin-left:auto;min-width:0;flex-shrink:0}
.market-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 16px}.market-card{padding:0;background:transparent;border:0;border-radius:16px;display:flex;flex-direction:column;min-width:0;transition:none}.market-card:hover,.market-card:focus-within{background:transparent}.market-card .artwork{aspect-ratio:1;margin:0;padding:0;border-radius:16px;background:var(--app-surface-alt)}.market-card .artwork img{mix-blend-mode:normal;border-radius:inherit}.market-card .image-placeholder{font-size:38px;opacity:.4}.market-card-info{padding:16px 12px 12px;display:flex;flex-direction:column;flex:1;min-width:0}.market-card .price{font-size:17px;margin:auto 0 14px;line-height:1.35;white-space:normal;letter-spacing:-.4px}.market-card .price-request{font-size:14px;font-weight:500;min-height:26px;color:var(--app-muted)}.market-card h3{font-size:15px;line-height:1.35;height:2.7em;min-height:2.7em;margin:0 0 8px;overflow-wrap:anywhere}.stock-available{color:var(--app-success)}.buy-button,.product-more{width:100%}.market-card .button{font-size:13px;padding:10px;gap:7px}.purchase-controls{min-height:44px}.purchase-controls [data-in-cart]{width:100%}.market-card [data-in-cart]{gap:4px;justify-content:center}.quantity-form{margin:0}.quantity-stepper{display:inline-flex;align-items:center;border:1px solid var(--app-field-border);border-radius:12px;background:var(--app-field);overflow:hidden;height:44px}.quantity-stepper button{height:42px;width:40px;flex-shrink:0;border:0;background:none;color:var(--app-text);cursor:pointer;font-size:12px}.quantity-stepper button:hover{background:var(--app-hover)}.quantity-stepper button:disabled{opacity:.65;cursor:not-allowed}.quantity-stepper input{border:0;border-radius:0;background:none;padding:6px 0;min-height:42px;width:40px;min-width:0;text-align:center;font-size:14px;appearance:textfield;-moz-appearance:textfield}.quantity-stepper input::-webkit-inner-spin-button,.quantity-stepper input::-webkit-outer-spin-button{appearance:none;margin:0}.quantity-stepper input:focus{outline-offset:-3px}.quantity-stepper button:focus-visible{outline-offset:-3px}.purchase-controls .quantity-form,.purchase-controls .quantity-stepper{width:100%}.purchase-controls .quantity-stepper input{flex:1}.store-enhanced [data-cart-fallback]{display:none}.purchase-controls [data-buy-form]{display:flex;margin:0}.purchase-controls .quantity-form{display:flex;flex-wrap:wrap;gap:8px}.purchase-controls .buy-button{height:44px;min-height:44px;line-height:22px}.market-continuation{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;min-height:44px;margin:24px 0}.market-continuation p{margin:0;font-size:14px}.market-continuation[aria-busy=true]{cursor:progress}.page-button{display:grid;place-items:center;min-width:44px;min-height:44px;border-radius:12px;color:var(--app-text);font-size:14px}.page-button.selected{background:var(--app-selected-bg);color:var(--app-selected-text);font-weight:600}.page-button:hover{text-decoration:none;background:var(--app-hover)}.page-button.selected:hover{background:var(--app-hover)}
.store-body .breadcrumbs{margin-bottom:18px}
.order-progress{margin:0 0 28px}.order-progress ol{display:flex;gap:24px;list-style:none;margin:0;padding:0}.order-progress li{color:var(--app-muted)}.order-step{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px}.order-progress button.order-step{border:0;padding:0;background:none;color:inherit;font:inherit;font-size:14px;cursor:pointer}.order-progress button.order-step:hover{color:var(--app-link)}.order-step-marker{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:var(--app-surface-alt);font-size:14px}.order-step-marker .fas{font-size:12px}.order-progress .is-current{color:var(--app-text);font-weight:500}.order-progress .is-current .order-step-marker{background:var(--app-selected-bg);color:var(--app-link)}.order-progress .is-complete .order-step-marker{color:var(--app-success)}
@media(max-width:600px){.order-progress ol{gap:8px;justify-content:space-between}.order-step{flex-direction:column;gap:4px}.order-progress{margin-bottom:24px}}
.basket-heading{padding:12px 0 28px;gap:20px}.basket-heading h1{margin:0}.basket-heading h1 span{font-size:22px;font-weight:400;margin-left:8px}.basket-heading>a{font-size:14px}.order-flow{max-width:960px;margin-inline:auto}.marketplace-cart{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:start}.marketplace-cart>section{min-width:0}.basket-panel{padding:20px 24px}.basket-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--app-border);padding-bottom:12px}.basket-panel-heading h2{font-size:18px;margin:0}.basket-panel-heading .text-button{font-size:12px;color:var(--app-muted)}.basket-line,.cart-line.basket-line{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:20px;align-items:start;padding:24px 0;border-bottom:1px solid var(--app-border)}.basket-line:last-child{border-bottom:0}.basket-image{display:grid;place-items:center;width:90px;height:90px;background:var(--app-surface-alt);border-radius:10px;padding:8px}.basket-image img,.cart-line .basket-image img{width:100%;height:100%;object-fit:contain}.basket-title{font-size:15px;font-weight:500;color:var(--app-text);overflow-wrap:anywhere}.basket-description p{margin:6px 0 14px}.basket-price{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:16px}.basket-price strong{font-size:17px;white-space:nowrap}.basket-price .text-button{min-width:44px;min-height:44px;color:var(--app-muted)}.basket-price .text-button:hover{color:var(--app-danger);background:var(--app-danger-bg);border-radius:8px}.basket-total-row{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:14px;margin:16px 0}.cart-total{background:var(--app-surface-alt)}.basket-checkout-summary{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:8px}.basket-checkout-summary h2{font-size:20px;margin:0}.basket-checkout-summary .price{font-size:24px;margin:0;white-space:nowrap}.order-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px;margin-top:24px}.order-actions>form{margin:0}.order-actions .button{min-width:220px}
.cart-drawer{position:fixed;inset:0 0 0 auto;margin:0;border:0;border-left:1px solid var(--app-border);height:100dvh;max-height:100dvh;width:480px;max-width:100%;padding:0;background:var(--app-bg);color:var(--app-text)}.cart-drawer[open]{display:flex;flex-direction:column}.cart-drawer::backdrop{background:rgb(0 0 0/.38)}body:has(.cart-drawer[open]){overflow:hidden}.drawer-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;border-bottom:1px solid var(--app-border)}.drawer-heading h2{margin:0;font-size:22px}.drawer-heading h2 span{margin-left:8px;font-weight:400;font-size:18px}.drawer-content{flex:1;overflow:auto;padding:0 24px;overscroll-behavior:contain}.drawer-footer{padding:16px 24px 24px;border-top:1px solid var(--app-border);background:var(--app-surface)}.drawer-footer .button{width:100%}.drawer-footer .basket-total-row{margin:0 0 16px;font-size:18px}.cart-drawer .basket-line{grid-template-columns:64px minmax(0,1fr) auto;gap:12px}.cart-drawer .basket-image{width:64px;height:64px}.cart-drawer .basket-title{font-size:13px}.cart-drawer .basket-price strong{font-size:13px}.cart-drawer .basket-description .small{font-size:13px}.cart-drawer .basket-price{gap:20px}.cart-drawer .quantity-stepper button{width:36px}.cart-drawer .quantity-stepper input{width:36px}
.market-loading .market-grid,.market-loading .market-continuation{opacity:.55;pointer-events:none}.market-loading .market-search button i{animation:market-search-pulse 800ms ease-in-out infinite alternate}@keyframes market-search-pulse{to{opacity:.3}}
@media(min-width:901px){.market-sidebar:not([open])>.market-sidebar-content{display:block}}
@media(max-width:1200px){.market-layout{grid-template-columns:200px minmax(0,1fr);gap:24px}.market-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.basket-line,.cart-line.basket-line{grid-template-columns:70px minmax(0,1fr) auto;gap:14px}.basket-image{width:70px;height:70px}.basket-price strong{font-size:15px}}
@media(max-width:900px){.market-layout{grid-template-columns:minmax(0,1fr);gap:20px}.market-sidebar{border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface)}.market-sidebar>summary{display:flex;gap:12px;align-items:center;cursor:pointer;padding:13px 16px;font-size:14px;list-style:none}.market-sidebar>summary::-webkit-details-marker{display:none}.market-sidebar>summary>i:last-child{margin-left:auto}.market-sidebar-content{padding:0 16px 20px}.market-categories{display:grid;grid-template-columns:1fr 1fr;padding-top:12px}.market-categories h2{grid-column:1/-1}.market-sidebar .price-range{max-width:400px}.market-sidebar .button{width:auto}.filter-reset{display:inline-block;margin:0 0 0 16px}.market-heading{margin-bottom:20px}.market-chips{margin-bottom:16px}.basket-panel{padding:16px}.basket-line,.cart-line.basket-line{grid-template-columns:64px minmax(0,1fr);gap:14px}.basket-price{grid-column:2;flex-direction:row;align-items:center;justify-content:space-between;gap:8px}.cart-drawer .basket-price{grid-column:auto;flex-direction:column;align-items:flex-end}}
@media(max-width:600px){.store-body .public{padding-top:16px}.store-body h1{font-size:24px;letter-spacing:-.02em}.market-heading{margin:16px 0 20px}.market-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}.market-chips a{flex-shrink:0;max-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.market-toolbar{gap:8px;flex-wrap:wrap;margin-bottom:16px}.market-sort{width:auto}.market-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.market-card{padding:0;border-radius:16px}.market-card .artwork{aspect-ratio:1;padding:0;border-radius:12px}.market-card-info{padding:12px 8px 8px}.market-card .price{font-size:15px;min-height:22px}.market-card .price-request{font-size:13px}.market-card h3{font-size:14px;height:2.7em;min-height:2.7em}.market-card .button{font-size:13px;padding:10px 6px}.market-card .quantity-stepper button{width:34px}.market-card .quantity-stepper input{width:30px;font-size:16px}.price-range input,.market-continuation .button{font-size:12px;padding:10px}.marketplace-cart .cart-total{padding:20px}.order-actions .button,.order-actions>form,.order-actions>noscript{width:100%;min-width:0}.basket-heading{display:flex;flex-wrap:wrap;gap:12px;padding:8px 0 24px}.basket-panel-heading h2{font-size:16px}.basket-panel-heading .text-button{font-size:13px}.basket-title{font-size:14px}.basket-line,.cart-line.basket-line{grid-template-columns:64px minmax(0,1fr)}.basket-image{width:64px;height:64px}.cart-drawer .basket-line{grid-template-columns:56px minmax(0,1fr);gap:12px}.cart-drawer .basket-image{width:56px;height:56px}.cart-drawer .basket-price{grid-column:2;flex-direction:row;align-items:center;gap:12px;justify-content:space-between}.drawer-heading,.drawer-footer{padding:16px}.drawer-content{padding:0 16px}}
.market-search{display:flex;align-items:center;min-width:0;flex:1;max-width:440px;background:var(--app-field);border:1px solid var(--app-field-border);border-radius:12px}.market-search input{background:transparent;border:0;min-height:42px;min-width:0;font-size:14px;padding:8px 12px}.market-search .icon-button{flex-shrink:0;font-size:16px;min-width:44px;height:42px;min-height:42px;color:var(--app-muted)}.market-search:focus-within{outline:2px solid var(--app-focus);outline-offset:2px}.market-search input:focus{outline:none}@media(max-width:600px){.market-search{flex-basis:100%;max-width:100%}.market-search input,.price-range input,.quantity-stepper input{font-size:16px}.market-sort{margin-top:4px}}

/* Product photos: controls are siblings of the detail link, never nested in it. */
.market-card-media{position:relative;min-width:0}
.card-slider-ready [data-card-photo-link]{touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-drag:none}
.card-slider-controls{position:absolute;inset:0;pointer-events:none}
.card-slider-arrow,.card-slider-dot{pointer-events:auto;border:0;color:var(--app-text);cursor:pointer;display:grid;place-items:center;padding:0}
.card-slider-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:12px;background:var(--app-surface);font-size:12px;transition:opacity 140ms ease,background-color 140ms ease}
.card-slider-prev{left:4px}.card-slider-next{right:4px}
.card-slider-arrow:hover{background:var(--app-hover)}
.card-slider-dots{position:absolute;bottom:6px;left:50%;transform:translateX(-50%);display:flex;padding:0 4px;border-radius:12px;background:var(--app-surface)}
.card-slider-dot{width:24px;height:24px;background:transparent;border-radius:6px}
.card-slider-dot span{width:5px;height:5px;border-radius:50%;background:var(--app-muted);opacity:.45;transition:width 140ms ease,opacity 140ms ease}
.card-slider-dot[aria-pressed=true] span{width:14px;border-radius:3px;opacity:1;background:var(--app-text)}
.market-card-media img:not([hidden]){animation:card-photo-appear 160ms ease}
@keyframes card-photo-appear{from{opacity:.4}to{opacity:1}}
@media(hover:hover) and (pointer:fine){.card-slider-arrow{opacity:0;pointer-events:none}.market-card-media:hover .card-slider-arrow,.market-card-media:focus-within .card-slider-arrow{opacity:1;pointer-events:auto}}
@media(prefers-reduced-motion:reduce){.market-card,.card-slider-arrow,.card-slider-dot span{transition:none}.market-card-media img:not([hidden]){animation:none}}

.quick-view-button{position:absolute;left:12px;right:12px;bottom:38px;z-index:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px;border-radius:12px;background:color-mix(in srgb,var(--app-surface) 78%,transparent);backdrop-filter:blur(8px);color:var(--app-text);font-size:13px;font-weight:500;transition:opacity 140ms ease,background-color 140ms ease}
.quick-view-button:hover{background:color-mix(in srgb,var(--app-surface) 90%,transparent);text-decoration:none}
.market-card-media:not(:has(.card-slider-controls)) .quick-view-button{bottom:12px}
@media(hover:hover) and (pointer:fine){.quick-view-button{opacity:0;pointer-events:none}.market-card:hover .quick-view-button,.market-card:focus-within .quick-view-button{opacity:1;pointer-events:auto}}
.quick-view{width:min(1080px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);border:0;border-radius:16px;padding:0;background:var(--app-bg);color:var(--app-text);overflow:hidden}
.quick-view[open]{display:flex;flex-direction:column}.quick-view::backdrop{background:rgb(0 0 0/.4)}body:has(.quick-view[open]){overflow:hidden}
.quick-view-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;border-bottom:1px solid var(--app-border);flex-shrink:0}.quick-view-heading h2{font-size:16px;margin:0;font-weight:500;color:var(--app-muted)}
.quick-view-body{overflow-y:auto;overscroll-behavior:contain;padding:0 28px 24px;min-height:160px}.quick-view-status{padding:36px 0;text-align:center;color:var(--app-muted)}
.quick-view-footer{padding:12px 28px;border-top:1px solid var(--app-border);flex-shrink:0}.quick-view-footer a{display:inline-flex;align-items:center;gap:8px;min-height:32px}
@media(max-width:600px){.quick-view-button{left:8px;right:8px;font-size:12px;gap:8px}.quick-view{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:16px}.quick-view-heading{padding:8px 16px}.quick-view-body{padding:0 16px 16px}.quick-view-footer{padding:8px 16px}}
@media(prefers-reduced-motion:reduce){.quick-view-button{transition:none}.market-loading .market-search button i{animation:none}}

.market-sort-option{position:relative;display:grid;place-items:center;width:44px;height:44px;margin:0;border:0;border-radius:12px;color:var(--app-muted);cursor:pointer;font-size:16px;transition:background-color 140ms ease,color 140ms ease}
.market-sort-option:hover{background:color-mix(in srgb,var(--app-surface-alt) 60%,transparent);color:var(--app-text)}
.market-sort-option:has(input:checked){background:var(--app-surface-alt);color:var(--app-text)}
.market-sort-option:has(input:focus-visible){outline:2px solid var(--app-focus);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.market-sort-option{transition:none}}

.market-attribute-values{display:flex;flex-direction:column;gap:4px;max-height:264px;overflow-y:auto;padding:4px;overscroll-behavior:contain}
.market-sidebar .market-attribute-option{margin:0;min-height:44px;padding:8px;gap:12px;cursor:pointer;font-size:14px;line-height:1.5;border-radius:12px;border:1px solid transparent}
.market-attribute-option input[type=checkbox]{flex:none;width:18px;height:18px;margin:0;accent-color:var(--app-focus)}
.market-attribute-option span{min-width:0;overflow-wrap:anywhere}
.market-attribute-option:has(input:checked){background:var(--app-selected-bg);color:var(--app-link);border-color:var(--app-focus)}
.market-attribute-option:has(input:focus-visible){outline:2px solid var(--app-focus);outline-offset:2px}
.market-attribute-option input:focus{outline:none}
.market-sidebar .market-attribute-filter+.button{margin-top:24px}

.category-chip-image{width:40px;height:40px;object-fit:contain;border-radius:8px;flex-shrink:0}
.category-heading-image{width:72px;height:72px;object-fit:contain;border-radius:12px;flex-shrink:0}

.prose--plain-text { white-space: pre-line; }
/* Match mobile photo-tap preview behavior, including touch tablets. */
@media(max-width:767px),(pointer:coarse){
    .market-card-media .quick-view-button,
    .market-card-media:not(:has(.card-slider-controls)) .quick-view-button{
        top:8px;right:8px;bottom:auto;left:auto;width:44px;height:44px;min-height:44px;
        padding:0;border-radius:50%;font-size:16px;gap:0;opacity:1;pointer-events:auto;
    }
    .quick-view-button .quick-view-label{display:none}
}
