/* Layout adapters for native WooCommerce controls; the approved visual styles remain intact. */
.woocommerce form.rpbs-checkout-form{width:100%}.woocommerce form.rpbs-checkout-form .checkout-form{min-width:0}.woocommerce form.rpbs-checkout-form .form-row{margin:0;float:none;width:auto;padding:0;clear:none;min-width:0}.woocommerce form.rpbs-checkout-form .form-row-wide{grid-column:1/-1}.woocommerce form.rpbs-checkout-form .form-grid>p:after,.woocommerce form.rpbs-checkout-form .form-grid>p:before{display:none}.woocommerce form.rpbs-checkout-form label{display:block;margin-bottom:10px;font-weight:500;color:var(--paper);font-size:16px}.woocommerce form.rpbs-checkout-form .woocommerce-input-wrapper{display:block}.woocommerce form.rpbs-checkout-form .input-text,.woocommerce form.rpbs-checkout-form select,.woocommerce form.rpbs-checkout-form textarea{width:100%;min-height:54px;padding:13px 17px;background:#151515;border:1px solid var(--line);border-radius:6px;color:var(--paper);font:inherit;box-shadow:none}.woocommerce form.rpbs-checkout-form .select2-container{width:100%!important}.woocommerce form.rpbs-checkout-form .select2-container .select2-selection--single{height:54px;background:#151515;border:1px solid var(--line);border-radius:6px;padding:11px}.woocommerce form.rpbs-checkout-form .select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--paper)}.woocommerce form.rpbs-checkout-form .select2-selection__arrow{height:52px!important}.woocommerce form.rpbs-checkout-form .woocommerce-additional-fields{margin-top:24px}.woocommerce form.rpbs-checkout-form .woocommerce-additional-fields h3{font-family:inherit;font-size:16px;margin:0 0 16px}.woocommerce form.rpbs-checkout-form .woocommerce-account-fields{margin-top:24px}.woocommerce form.rpbs-checkout-form input[type=checkbox],.woocommerce form.rpbs-checkout-form input[type=radio]{width:auto;min-height:0;accent-color:var(--red)}.woocommerce form.rpbs-checkout-form .checkbox{font-size:14px;font-weight:400}.woocommerce form.rpbs-checkout-form #payment{background:transparent;border-radius:0}.woocommerce form.rpbs-checkout-form #payment ul.payment_methods{list-style:none;margin:0;padding:0 0 20px;border-bottom:1px solid var(--line)}.woocommerce form.rpbs-checkout-form #payment ul.payment_methods>li{padding:14px 0}.woocommerce form.rpbs-checkout-form #payment .payment_box{background:#1c1b1b;color:var(--paper);margin:12px 0 0;padding:18px;border-radius:8px}.woocommerce form.rpbs-checkout-form #payment .payment_box:before{border-bottom-color:#1c1b1b}.woocommerce form.rpbs-checkout-form #payment div.form-row{padding:20px 0 0}.woocommerce form.rpbs-checkout-form #place_order{width:100%;float:none;min-height:56px;background:var(--red);border:0;border-radius:6px;color:white;font:600 16px/1.4 'DM Sans',sans-serif;cursor:pointer;padding:17px 22px}.woocommerce form.rpbs-checkout-form .woocommerce-privacy-policy-text{font-size:14px;color:var(--muted);line-height:1.8;margin-bottom:18px}.woocommerce form.rpbs-checkout-form .woocommerce-terms-and-conditions-wrapper{margin-bottom:16px}.woocommerce form.rpbs-checkout-form .checkout-order-items>div>p{min-width:0}.woocommerce form.rpbs-checkout-form .checkout-order-items img{object-fit:cover}.woocommerce form.rpbs-checkout-form .checkout-order-items dl{margin:4px 0;font-size:14px}.woocommerce form.rpbs-checkout-form .checkout-order-items dt,.woocommerce form.rpbs-checkout-form .checkout-order-items dd{display:inline;margin:0 5px 0 0}.woocommerce form.rpbs-checkout-form .checkout-order-items dd p{display:inline}.rpbs-native .woocommerce-error,.rpbs-native .woocommerce-info,.rpbs-native .woocommerce-message{padding:18px 22px;background:#201a1b;border:1px solid #ffffff26;border-left:3px solid var(--red);border-radius:6px;color:var(--paper);font-size:16px;line-height:1.8;list-style:none;margin-bottom:24px}.rpbs-native .woocommerce-error::before,.rpbs-native .woocommerce-info::before,.rpbs-native .woocommerce-message::before{display:none}.rpbs-native .woocommerce-error a,.rpbs-native .woocommerce-info a{color:var(--paper);text-decoration:underline}.rpbs-native .woocommerce-form-login,.rpbs-native .woocommerce-form-register{padding:24px;border:1px solid var(--line);border-radius:14px;background:#171616}.rpbs-native .woocommerce-form-login input,.rpbs-native .woocommerce-form-register input{background:#151515;color:var(--paper);border:1px solid var(--line);padding:14px;border-radius:6px;font:inherit;max-width:100%}.rpbs-native .woocommerce-MyAccount-navigation{font-size:16px;line-height:2}.rpbs-native .woocommerce-MyAccount-navigation ul{list-style:none;padding:0}.rpbs-native .woocommerce-MyAccount-content{font-size:16px;line-height:1.8}.rpbs-page-content{font-size:16px;line-height:1.8;max-width:850px}.rpbs-page-content p{margin-bottom:20px}.rpbs-page-content h2,.rpbs-page-content h3{margin:30px 0 18px}.rpbs-native a.button,.rpbs-native button.button{font:600 16px/1.4 'DM Sans',sans-serif;background:var(--red);color:white;border-radius:6px;padding:14px 22px}.rpbs-saving{cursor:progress}.rpbs-saving #add-to-basket,.rpbs-saving #add-bundle{opacity:.65}.select2-dropdown{background:#1c1b1b;color:#f4f1eb;border-color:#ffffff30}.select2-results__option{font-size:16px}.select2-container--default .select2-search--dropdown .select2-search__field{background:#151515;color:#f4f1eb;border-color:#ffffff30}
@media(max-width:600px){.woocommerce form.rpbs-checkout-form .form-grid{grid-template-columns:1fr}.woocommerce form.rpbs-checkout-form .form-grid>p{grid-column:1/-1}.woocommerce form.rpbs-checkout-form .checkout-layout{gap:38px}.woocommerce form.rpbs-checkout-form .rpbs-checkout-summary{position:static}.rpbs-native .woocommerce-MyAccount-navigation,.rpbs-native .woocommerce-MyAccount-content{float:none;width:100%;margin-bottom:26px}}

/* Keep WooCommerce's button styles from exposing hover highlights outside controls. */
body.readable-site .button{position:relative;overflow:hidden;isolation:isolate}
body.readable-site .button::after{pointer-events:none}
body.readable-site .button.button-red{background:var(--red);color:#fff}
body.readable-site .button.button-red:hover{background:#f12637;color:#fff}
body.readable-site .button.button-light{background:var(--paper);color:#131313}
body.readable-site .button.button-light:hover{background:#fff;color:#131313}
body.readable-site .button.glass{background:linear-gradient(125deg,#ffffff18,#ffffff06 48%,#ffffff0f);background-color:#1a1a1aa3;color:var(--paper)}
body.readable-site .button:disabled::after{display:none}

/* A single checkout column with totals before payment, without the lower card. */
.woocommerce form.rpbs-checkout-form .checkout-layout{grid-template-columns:minmax(0,1fr);max-width:840px;margin-inline:auto}
.woocommerce form.rpbs-checkout-form .rpbs-checkout-totals{position:static;background:none;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;padding:20px 0;margin:22px 0 0;box-shadow:none}
.rpbs-checkout-totals dl{margin:0;display:grid;gap:14px}
.rpbs-checkout-totals dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:20px;font-size:16px}
.rpbs-checkout-totals dt,.rpbs-checkout-totals dd{margin:0}
.rpbs-checkout-totals .saving-line{color:#f4b6bd}
.rpbs-checkout-totals .total-line{border-top:1px solid var(--line);padding-top:17px;margin-top:3px;font-weight:700}
.rpbs-checkout-totals .total-line dd{font-size:23px}
.woocommerce form.rpbs-checkout-form .rp-checkout-security{display:flex;align-items:center;justify-content:center;gap:10px;margin:18px 0 0;font-size:14px;line-height:1.5;text-align:left}
.woocommerce form.rpbs-checkout-form .rp-checkout-security svg{display:block;flex:0 0 18px;width:18px;height:20px;margin:0;align-self:center}
.woocommerce form.rpbs-checkout-form .rp-checkout-security span{display:block;min-width:0}

/* Real WooPayments wallet buttons, integrated with the custom product and basket layout. */
.rpbs-native-wallet{width:100%;min-width:0;margin-top:18px}
.rpbs-native-wallet form.cart[hidden]{display:none!important}
.rpbs-native-wallet .wcpay-express-checkout-wrapper{margin:0;width:100%;min-width:0}
.rpbs-native-wallet #wcpay-express-checkout-element{width:100%;min-width:0}
body.readable-site #wcpay-express-checkout-element.is-ready{background:#fff;border:1px solid #fff;border-radius:8px;padding:7px}
.rpbs-native-wallet[aria-busy=true]{opacity:.55;pointer-events:none}
.rpbs-native-wallet:not(:has(#wcpay-express-checkout-element.is-ready)){margin-top:0}

/* Separate the bundle action from the offer choices, including native Woo button resets. */
body.readable-site .product-purchase .bundle-selector>.bundle-start{margin-top:16px}

/* Supporting pages share the Backstage store's typography and glass surfaces. */
.rpbs-support-page{padding-bottom:28px}
.rpbs-support-heading{margin-bottom:38px}
.rpbs-support-heading .eyebrow{margin-bottom:15px}
.rpbs-support-heading .store-intro{max-width:640px;margin-top:20px;font-size:17px;line-height:1.8}
.rpbs-support-layout{display:grid;grid-template-columns:minmax(230px,.72fr) minmax(0,1.8fr);gap:44px;align-items:start}
.rpbs-support-sidebar{position:sticky;top:124px;min-width:0}
.rpbs-support-nav{padding:24px;border-radius:16px;background:linear-gradient(135deg,#ffffff0e,#ffffff03 65%),#171515;border:1px solid #ffffff24}
.rpbs-support-nav .eyebrow{font-size:12px;letter-spacing:1.3px;margin-bottom:16px}
.rpbs-support-nav a{display:flex;justify-content:space-between;gap:15px;align-items:center;border-top:1px solid #ffffff17;padding:15px 0;color:#c5bfba;font-size:16px;line-height:1.5;transition:color .18s}
.rpbs-support-nav a:last-child{padding-bottom:0}
.rpbs-support-nav a>span{font-size:20px;line-height:1;color:#8e8580}
.rpbs-support-nav a[aria-current=page],.rpbs-support-nav a:hover{color:#fff}
.rpbs-support-nav a[aria-current=page]>span{color:var(--red)}
.rpbs-support-note{padding:30px 6px 0;min-width:0}
.rpbs-support-note .caption-record{display:inline-block;width:28px;height:28px;margin-bottom:16px;vertical-align:middle}
.rpbs-support-note h2{font-size:28px;line-height:1.1;margin:0 0 15px}
.rpbs-support-note p{font-size:15px;line-height:1.8;color:#bfb7b1;margin:0 0 14px}
.rpbs-support-note a{font-size:15px;line-height:1.7;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}
body.readable-site .rpbs-support-content{max-width:none;width:100%;min-width:0;margin:0;padding:clamp(24px,3.4vw,44px);border:1px solid #ffffff21;border-radius:18px;background:radial-gradient(ellipse at top right,#df25300b,transparent 55%),linear-gradient(135deg,#ffffff08,#ffffff02),#171616;color:#c8c1bb;font:400 16px/1.85 'DM Sans',sans-serif;overflow-wrap:anywhere}
body.readable-site .rpbs-support-content p{font:inherit;color:inherit;margin:0 0 20px}
body.readable-site .rpbs-support-content p:last-child{margin-bottom:0}
body.readable-site .rpbs-support-content strong{color:var(--paper);font-weight:600}
body.readable-site .rpbs-support-content h2,body.readable-site .rpbs-support-content h3{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:700;color:var(--paper);text-transform:uppercase;letter-spacing:0;line-height:1.1;margin:28px 0 18px}
body.readable-site .rpbs-support-content h2{font-size:34px}
body.readable-site .rpbs-support-content h3{font-size:27px}
body.readable-site .rpbs-support-content>h2{border-top:1px solid #ffffff1b;padding-top:28px}
body.readable-site .rpbs-support-content h2:first-child{margin-top:0}
body.readable-site .rpbs-support-content ul,body.readable-site .rpbs-support-content ol{padding-left:24px;margin:0 0 20px}
body.readable-site .rpbs-support-content li+li{margin-top:9px}
body.readable-site .rpbs-legal-content a{color:var(--paper);text-decoration:underline;text-decoration-color:#ed142980;text-underline-offset:4px}
body.readable-site .rpbs-contact-content .elementor{font:inherit;color:inherit}
body.readable-site .rpbs-contact-content .rpbs-contact-form-panel{padding:0;gap:24px;--gap:24px;--container-widget-width:100%;background:transparent}
body.readable-site .rpbs-contact-content .elementor-widget{width:100%;min-width:0;margin:0}
body.readable-site .rpbs-contact-content .elementor-heading-title{font:700 36px/1.05 'Barlow Condensed',Impact,sans-serif;color:var(--paper);margin:0;text-align:left;letter-spacing:0}
body.readable-site .rpbs-contact-content .elementor-form-fields-wrapper{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0}
body.readable-site .rpbs-contact-content .elementor-field-group{width:100%;min-width:0;padding:0;margin:0;grid-column:1/-1;align-content:start}
body.readable-site .rpbs-contact-content .elementor-field-group-name,body.readable-site .rpbs-contact-content .elementor-field-group-email{grid-column:auto}
body.readable-site .rpbs-contact-content .elementor-field-label{font:500 16px/1.5 'DM Sans',sans-serif;color:var(--paper);margin:0 0 9px;padding:0}
body.readable-site .rpbs-contact-content .elementor-field-textual{width:100%;max-width:100%;min-height:54px;border:1px solid #ffffff2b;border-radius:7px;background:#101010;color:#f4f1eb;padding:14px 15px;font:400 16px/1.5 'DM Sans',sans-serif;box-shadow:none;transition:border-color .18s,box-shadow .18s}
body.readable-site .rpbs-contact-content textarea.elementor-field-textual{min-height:170px;resize:vertical}
body.readable-site .rpbs-contact-content .elementor-field-textual:focus{border-color:var(--red);box-shadow:0 0 0 3px #ed14291a;outline:0}
body.readable-site .rpbs-contact-content .elementor-button{width:100%;min-height:54px;padding:16px 22px;border:0;border-radius:7px;background:var(--red);color:#fff;font:600 16px/1.4 'DM Sans',sans-serif;transition:background .18s}
body.readable-site .rpbs-contact-content .elementor-button:hover{background:#f12638}
body.readable-site .rpbs-contact-content .elementor-message{margin:18px 0 0;font:400 15px/1.7 'DM Sans',sans-serif;padding:14px 16px;border:1px solid #ffffff2b;border-radius:7px;color:var(--paper);background:#ffffff08}
body.readable-site .rpbs-contact-content .elementor-message-danger,body.readable-site .rpbs-contact-content .elementor-error{color:#ffb0b9}
/* Native account screens retain WooCommerce behavior inside matching surfaces. */
body.readable-site .rpbs-native .woocommerce-MyAccount-navigation{padding:24px;border:1px solid #ffffff24;border-radius:14px;background:linear-gradient(135deg,#ffffff0b,#ffffff02),#171616}
body.readable-site .rpbs-native .woocommerce-MyAccount-navigation ul{margin:0}
body.readable-site .rpbs-native .woocommerce-MyAccount-navigation li+li{border-top:1px solid #ffffff17}
body.readable-site .rpbs-native .woocommerce-MyAccount-navigation a{display:block;padding:10px 0;color:#c8c1bb;font-size:16px}
body.readable-site .rpbs-native .woocommerce-MyAccount-navigation .is-active a{color:#fff}
body.readable-site .rpbs-native .woocommerce-MyAccount-content{padding:26px;border:1px solid #ffffff21;border-radius:14px;background:#171616;min-width:0}
body.readable-site .rpbs-native .woocommerce-MyAccount-content p{margin:0 0 20px}
body.readable-site .rpbs-native .woocommerce-MyAccount-content .input-text,body.readable-site .rpbs-native .woocommerce-form-login .input-text,body.readable-site .rpbs-native .woocommerce-form-register .input-text{width:100%;min-height:52px;font:inherit;background:#101010;border:1px solid #ffffff2b;border-radius:7px;color:var(--paper);padding:13px 15px}
body.readable-site .rpbs-native .woocommerce-form-login label,body.readable-site .rpbs-native .woocommerce-form-register label,body.readable-site .rpbs-native .woocommerce-MyAccount-content label{font-size:16px;line-height:1.6;margin-bottom:8px;display:block}
body.readable-site .rpbs-native .woocommerce-form-login .form-row,body.readable-site .rpbs-native .woocommerce-form-register .form-row{margin-bottom:18px}
@media(max-width:900px){.rpbs-support-layout{grid-template-columns:220px minmax(0,1fr);gap:24px}.rpbs-support-nav{padding:20px}.rpbs-support-heading .store-title{font-size:clamp(46px,6.8vw,72px)}}
@media(max-width:700px){.rpbs-support-layout{display:flex;flex-direction:column;gap:24px}.rpbs-support-sidebar{display:contents}.rpbs-support-nav{position:static;width:100%;padding:18px 20px;display:flex;flex-wrap:wrap;gap:8px;border-radius:12px}.rpbs-support-nav .eyebrow{width:100%;margin:0 0 5px}.rpbs-support-nav a{justify-content:center;gap:0;padding:9px 12px!important;border:1px solid #ffffff24;border-radius:24px;font-size:14px;line-height:1.5}.rpbs-support-nav a>span{display:none}.rpbs-support-nav a[aria-current=page]{background:var(--paper);color:#111;border-color:var(--paper)}.rpbs-support-note{order:3;padding:6px 2px 0}.rpbs-support-note .caption-record{float:left;margin:0 12px 0 0}.rpbs-support-note h2{font-size:26px;margin-bottom:13px}.rpbs-support-note p{clear:both}.rpbs-support-heading{margin-bottom:27px}.rpbs-support-heading .store-title{font-size:clamp(46px,10vw,64px);line-height:1}.rpbs-support-heading .store-intro{font-size:16px;margin-top:17px}.rpbs-support-page{padding-bottom:12px}body.readable-site .rpbs-support-content{border-radius:13px;padding:24px 21px;font-size:16px}body.readable-site .rpbs-support-content h2{font-size:30px}body.readable-site .rpbs-contact-content .elementor-heading-title{font-size:32px}body.readable-site .rpbs-contact-content .elementor-form-fields-wrapper{grid-template-columns:1fr;gap:19px}body.readable-site .rpbs-contact-content .elementor-field-group{grid-column:1/-1}body.readable-site .rpbs-native .woocommerce-MyAccount-content{padding:22px 18px}.rpbs-support-nav a:focus-visible{outline-offset:3px}}

/* Mobile audit: larger touch areas, less repetition, and a shorter path to the posters. */
.responsive-bundle-terms>summary{display:none}
@media(max-width:600px){
 body.readable-site .header-actions{gap:0}
 body.readable-site .header-actions>button,body.readable-site .header-actions>a{width:44px;height:44px;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
 body.readable-site .header-actions .menu-toggle{left:3px}
 body.readable-site .round-button{width:44px;height:44px;min-width:44px;min-height:44px}
 body.readable-site .spotlight-controls button{width:36px;height:44px;min-width:36px;min-height:44px}
 body.readable-site .artist-chip,body.readable-site .builder-artist-picks button{min-height:44px}
 body.readable-site .artist-menu{max-height:calc(100dvh - 160px)}
 body.readable-site .artist-menu-close,body.readable-site .category-menu-close,body.readable-site #artists-close,body.readable-site #category-menu-close{min-width:44px;min-height:44px}
 body.readable-site .hero .scroll-note,body.readable-site .closing{display:none}
 body.readable-site .film-caption{display:none}
 body.readable-site .reviews-bottom>.small{display:none}
 body.readable-site .review-copy{min-height:0}
 body.readable-site .reviews-bottom{justify-content:flex-start}
 body.readable-site .breadcrumbs{flex-wrap:nowrap;white-space:nowrap;overflow-x:auto;max-width:100%;padding-bottom:5px;scrollbar-width:none;overscroll-behavior-x:contain}
 body.readable-site .breadcrumbs>*{flex:0 0 auto}
 body.readable-site .breadcrumbs::-webkit-scrollbar{display:none}
 body.readable-site .store-page:has(.shop-toolbar) .store-intro,body.readable-site .store-page:has(.basket-layout) .store-intro{display:none}
 body.readable-site .category-chips{flex-wrap:nowrap;overflow-x:auto;gap:8px;max-width:100%;padding-block:3px 8px;scrollbar-width:none;overscroll-behavior-x:contain}
 body.readable-site .category-chips>a{flex:0 0 auto;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
 body.readable-site .category-chips::-webkit-scrollbar{display:none}
 body.readable-site .shop-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:13px 10px}
 body.readable-site .shop-toolbar .collection-search{grid-column:1/-1;width:100%;min-width:0}
 body.readable-site .sort-label{min-width:0;max-width:100%;gap:6px}
 body.readable-site .sort-label select{font-size:16px;max-width:155px;min-height:44px}
 body.readable-site .shop-results-count{font-size:14px}
 body.readable-site .product-page .pg-gallery-top>span:first-child,body.readable-site .pg-gesture-hint{display:none}
 body.readable-site .pg-gallery-top{justify-content:flex-end;margin-bottom:9px}
 body.readable-site .product-purchase>.eyebrow,body.readable-site .product-one-liner,body.readable-site .product-price-main>span{display:none}
 body.readable-site .product-purchase>.product-trust{margin-top:17px;padding-top:17px;padding-bottom:0;gap:8px}
 body.readable-site .product-purchase>.product-trust span{display:none}
 body.readable-site .product-purchase>.product-trust strong{font-size:13px;line-height:1.45}
 body.readable-site .product-purchase>.product-trust svg{width:22px;height:22px}
 body.readable-site .quantity-control button{width:40px;min-width:40px;height:44px;min-height:44px}
 body.readable-site .quantity-control{min-height:46px}
 body.readable-site .quantity-control input,body.readable-site .quantity-control>span{font-size:16px;min-width:26px}
 body.readable-site .single-purchase{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px}
 body.readable-site .single-purchase>.button{min-width:0;min-height:48px;font-size:14px;padding:13px 9px}
 body.readable-site .bundle-option{position:relative}
 body.readable-site .responsive-bundle-terms{margin-top:16px;border-top:1px solid #ffffff21}
 body.readable-site .responsive-bundle-terms>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:12px 0;list-style:none;font-size:14px;line-height:1.5;cursor:pointer;color:var(--paper)}
 body.readable-site .responsive-bundle-terms>summary::-webkit-details-marker{display:none}
 body.readable-site .responsive-bundle-terms>summary>span{font-size:20px;color:var(--red);line-height:1}
 body.readable-site .responsive-bundle-terms[open]>summary>span{transform:rotate(45deg)}
 body.readable-site .responsive-bundle-terms .bundle-terms{margin:0;font-size:14px;line-height:1.8;padding-bottom:8px}
 body.readable-site .bundle-slot.empty{aspect-ratio:auto;height:80px;min-height:0;flex-direction:row;gap:12px;padding:12px}
 body.readable-site .bundle-slot.empty p{display:none}
 body.readable-site .bundle-slot.empty>span{font-size:26px}
 body.readable-site .bundle-builder .store-intro{font-size:15px;line-height:1.7}
 body.readable-site .builder-tier-tabs button{padding:12px 8px;min-height:68px}
 body.readable-site .builder-workspace{gap:24px}
 body.readable-site .builder-artist-picks{flex-wrap:nowrap;overflow-x:auto;gap:6px;scrollbar-width:none;padding-block:2px 5px}
 body.readable-site .builder-artist-picks button{flex:0 0 auto;font-size:13px;padding:8px 11px;white-space:nowrap}
 body.readable-site .bundle-slot.filled .icon-button{min-width:36px;min-height:36px;width:36px;height:36px}
 body.readable-site .help-layout{display:flex;flex-direction:column;gap:28px}
 body.readable-site .help-layout>.help-side{order:2;width:100%}
 body.readable-site .help-layout>.faq-list{order:1;width:100%}
 body.readable-site .faq-list summary{min-height:52px;gap:16px}
 body.readable-site .rpbs-support-nav{flex-wrap:nowrap;overflow-x:auto;padding:10px;gap:8px;scrollbar-width:none;overscroll-behavior-x:contain}
 body.readable-site .rpbs-support-nav .eyebrow{display:none}
 body.readable-site .rpbs-support-nav a{flex:0 0 auto;white-space:nowrap;min-height:44px;padding:10px 13px!important}
 body.readable-site .rpbs-support-note{display:none}
 body.readable-site .site-footer-links>a{min-height:44px}
 body.readable-site .store-toast{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));width:auto;max-width:none;font-size:14px;padding:14px}
}
@media(max-width:360px){
 body.readable-site .header>.logo{width:96px}
 body.readable-site .header .logo img{height:48px}
 body.readable-site .header-actions .menu-toggle{left:0}
 body.readable-site .hero-caption{padding:12px;gap:7px}
 body.readable-site .spotlight-controls{gap:0}
 body.readable-site .spotlight-controls button{width:30px;min-width:30px}
 body.readable-site #featured-caption{font-size:13px}
 body.readable-site .shop-toolbar{grid-template-columns:1fr}
 body.readable-site .shop-toolbar .collection-search{grid-column:1}
 body.readable-site .shop-results-count{display:none}
 body.readable-site .sort-label{justify-content:space-between;width:100%}
 body.readable-site .sort-label select{max-width:200px}
 body.readable-site .single-purchase{gap:7px}
 body.readable-site .single-purchase>.button{font-size:13px}
 body.readable-site .quantity-control button{width:36px;min-width:36px}
 body.readable-site .product-purchase>.product-trust strong{font-size:12px}
}

@media(max-width:600px){
 /* The empty selection has no purchase action yet: start with the actual posters. */
 body.readable-site .bundle-builder .builder-workspace>div:first-child:not(:has(.bundle-slot.filled)){display:none}
 body.readable-site .bundle-builder .store-intro{display:none}
 body.readable-site .pg-lightbox-arrow{width:44px;height:44px}
}

/* Short phone screens need room for the actual menu results. */
@media(max-height:500px) and (max-width:1000px){
 body.readable-site .announcement{display:none}
 body.readable-site .header-actions>button,body.readable-site .header-actions>a{width:44px;height:44px;min-width:44px;min-height:44px}
 body.readable-site .artist-menu,body.readable-site .category-menu{max-height:calc(100dvh - 125px);padding:14px 18px}
 body.readable-site .artist-menu{overflow:hidden}
 body.readable-site .artist-menu-heading{margin-bottom:10px;align-items:center;flex-shrink:0}
 body.readable-site .artist-menu-heading .eyebrow,body.readable-site .artist-popular,body.readable-site .artist-menu-footer{display:none}
 body.readable-site .artist-menu-heading h2{font-size:30px;line-height:1.1}
 body.readable-site .artist-menu-heading button{width:44px;height:44px;min-width:44px;min-height:44px}
 body.readable-site .artist-search-row{display:flex;gap:14px;align-items:center;margin-bottom:12px;flex-shrink:0}
 body.readable-site .artist-search-row label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
 body.readable-site .artist-search-row .text-link{font-size:14px;white-space:nowrap;display:flex;align-items:center;min-height:44px}
 body.readable-site .artist-results{min-height:60px;flex:1;overflow-y:auto}
 body.readable-site .category-menu{overflow-y:auto}
}

/* Keep bundle content inside its grid track, including horizontally scrolling artist filters. */
body.readable-site .builder-workspace>div{min-width:0;max-width:100%}
@media(max-width:800px){body.readable-site .builder-workspace{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){
 body.readable-site .bundle-ribbon>.eyebrow{text-align:center;justify-self:center}
 body.readable-site .bundle-builder .store-title{font-size:clamp(38px,10vw,46px);line-height:1.04}
 body.readable-site .bundle-builder .store-page-heading{margin-bottom:22px}
 body.readable-site .bundle-builder .store-page-heading>.eyebrow{display:none}
 body.readable-site .builder-tier-tabs{gap:8px;margin-bottom:24px}
 body.readable-site .builder-tier-tabs button{min-width:0;padding:10px 5px;min-height:66px}
 body.readable-site .builder-tier-tabs strong{font-size:14px;line-height:1.3}
 body.readable-site .builder-tier-tabs span{font-size:13px;line-height:1.4;margin-top:5px}
 body.readable-site .builder-picker .section-heading h2{font-size:30px}
 body.readable-site .builder-picker .collection-search{width:100%;min-width:0}
 body.readable-site .builder-picker .collection-search input{width:0;flex:1;min-width:0;font-size:16px}
 body.readable-site .builder-picker .collection-search button{flex-shrink:0;font-size:14px;min-height:44px}
 body.readable-site .builder-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}
 body.readable-site .builder-grid .pick-poster{min-height:44px;font-size:13px;padding:10px 6px}
 body.readable-site .builder-summary>.button{min-height:48px}
 body.readable-site .slot-size-label select{font-size:16px;min-height:40px;max-width:100%}
}

/* Bundle builder: stable product actions and an explicit phone review step. */
body.readable-site .builder-grid>.catalog-card{display:flex;flex-direction:column;align-self:stretch}
body.readable-site .builder-grid .product-link{display:flex;flex-direction:column;flex:1;min-width:0}
body.readable-site .builder-grid .product-art{flex-shrink:0;width:100%}
body.readable-site .builder-grid .product-meta{display:flex;flex-direction:column;flex:1}
body.readable-site .builder-grid .product-meta>div{display:flex;flex-direction:column;flex:1}
body.readable-site .builder-grid .product-price{margin-top:auto;padding-top:8px;flex-wrap:wrap}
body.readable-site .builder-grid .pick-poster{justify-content:center;margin-top:12px;transform:none}
body.readable-site .builder-grid .pick-poster:disabled{opacity:.5;cursor:default}
.builder-instructions{max-width:650px;margin:-8px 0 24px;color:var(--muted);font-size:16px;line-height:1.7}
.builder-selection-title{font-size:30px;margin:0 0 18px}
.builder-size-setting{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px;font-size:15px}
.builder-size-setting select{min-height:44px;font-size:16px;padding:9px 13px}
.builder-size-setting small{width:100%;font-size:14px;line-height:1.6;color:var(--muted)}
.builder-inline-status{font-size:14px;line-height:1.6;color:var(--paper);margin:0 0 16px}
.builder-inline-status:empty{display:none}
.builder-mobile-progress{display:none}
.builder-review{color:var(--paper);max-width:520px;width:calc(100% - 24px);max-height:80vh;max-height:80dvh;overflow-y:auto;overscroll-behavior:contain;padding:20px;border:1px solid #ffffff30;background:#181616;border-radius:18px}
.builder-review::backdrop{background:#000b;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.builder-review-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}
.builder-review-heading h2{font-size:32px;line-height:1.1;margin:0}
.builder-review-heading .icon-button{width:44px;height:44px;min-width:44px}
.builder-review .builder-selection-title{display:none}
@media(max-width:600px){
 body.readable-site .store-toast{transform:translateY(16px);box-sizing:border-box;gap:10px;overflow-wrap:anywhere}
 body.readable-site .store-toast.visible{transform:translateY(0)}
 body.readable-site .store-toast>span{max-width:none;min-width:0;flex:1}
 body.readable-site .store-toast svg{flex-shrink:0}
 body.readable-site .bundle-builder{padding-bottom:110px}
 body.readable-site .builder-instructions{font-size:15px;line-height:1.6;margin:-6px 0 22px}
 body.readable-site .builder-workspace>.builder-selection{display:none}
 body.readable-site .builder-review .builder-selection{display:block!important;max-width:100%;min-width:0}
 body.readable-site .builder-review .bundle-slots{display:flex;flex-direction:column;gap:12px}
 body.readable-site .builder-review .bundle-slot.empty{display:none}
 body.readable-site .builder-review .bundle-slot.filled{display:grid;grid-template-columns:65px minmax(0,1fr);min-height:116px;padding:12px;gap:12px;align-items:start}
 body.readable-site .builder-review .bundle-slot.filled>img{width:65px;height:90px;aspect-ratio:auto;object-fit:cover;border-radius:3px}
 body.readable-site .builder-review .bundle-slot.filled>div{padding:0 26px 0 0;min-width:0}
 body.readable-site .builder-review .bundle-slot strong{font-size:14px;line-height:1.4}
 body.readable-site .builder-review .bundle-slot>div>span{font-size:13px;line-height:1.5;overflow-wrap:anywhere}
 body.readable-site .builder-review .slot-size-label{flex-wrap:nowrap;font-size:14px;justify-content:flex-start;gap:10px}
 body.readable-site .builder-review .slot-size-label select{min-width:60px;max-width:100%;font-size:16px;min-height:40px}
 body.readable-site .builder-review .bundle-slot b{font-size:15px;margin-top:8px}
 body.readable-site .builder-review .bundle-slot>.icon-button{width:36px;height:36px;min-width:36px}
 body.readable-site .builder-mobile-progress{display:flex;position:fixed;z-index:90;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));padding:12px;gap:12px;align-items:center;border:1px solid #ffffff30;border-radius:14px;background:#242020ed;box-shadow:0 8px 30px #0008}
 body.readable-site #builder-progress-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
 body.readable-site #builder-progress-copy strong{font-size:14px;line-height:1.4}
 body.readable-site #builder-progress-copy span{font-size:13px;line-height:1.4;color:var(--muted)}
 body.readable-site .builder-mobile-progress>.button{padding:12px 14px;min-height:44px;font-size:14px;white-space:nowrap;justify-content:center}
 body.readable-site .builder-mobile-progress>.button:disabled{opacity:.45;cursor:default}
 body.readable-site .builder-review .builder-summary{padding:14px;gap:12px}
 body.readable-site .builder-review .builder-summary>div:first-child{min-width:0}
 body.readable-site .builder-review .builder-summary>.button{width:100%;margin:0;font-size:15px;min-height:48px;justify-content:center}
 body.readable-site .builder-review .responsive-bundle-terms{margin-bottom:0}
}

html:has(.builder-review[open]),body:has(.builder-review[open]){overflow:hidden}
body.readable-site .builder-review .builder-continue{width:100%;min-height:44px;justify-content:center;margin-top:16px;font-size:14px;border-radius:5px}
body.readable-site .builder-review .builder-continue[hidden]{display:none}

body.readable-site .builder-review-heading{position:sticky;top:-20px;z-index:2;background:#181616;margin:-20px -20px 20px;padding:16px 20px;border-bottom:1px solid #ffffff1a}
body.readable-site .builder-review .slot-size-label select{min-height:44px}

@media(max-width:600px){
 body:has(.bundle-builder) #os-tiktok-back{bottom:calc(104px + env(safe-area-inset-bottom))!important}
 body.readable-site:has(.bundle-builder) .store-toast{bottom:calc(104px + env(safe-area-inset-bottom))}
}

/* CookieRay presentation. Consent logic and saved choices belong to the plugin. */
body .cookieray-banner-root,
body .cookieray-prefs-root {
  font-family: inherit;
  color: #f4f0e9;
}

body .cookieray-banner-root .cookieray-banner,
body .cookieray-prefs-root .cookieray-prefs-modal {
  background: linear-gradient(135deg, #282526, #171617 70%);
  border: 1px solid #ffffff29;
  border-radius: 16px !important;
  color: #f4f0e9;
  font-family: inherit;
  box-shadow: 0 16px 48px #0009;
  overflow: auto;
  overscroll-behavior: contain;
}

body .cookieray-banner-root .cookieray-banner {
  top: auto;
  right: max(12px, env(safe-area-inset-right));
  bottom: max(12px, env(safe-area-inset-bottom));
  left: max(12px, env(safe-area-inset-left));
  width: auto;
  max-width: 900px;
  max-height: calc(100vh - 32px);
  max-height: calc(100dvh - 24px - env(safe-area-inset-bottom));
  margin-inline: auto;
  padding: 18px 20px;
  transform: translateY(12px);
}

body .cookieray-banner-root .cookieray-banner.cookieray-visible {
  transform: translateY(0);
}

body .cookieray-banner-root .cookieray-inner {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 22px;
}

.cookieray-banner-root .cookieray-header {
  flex: 1;
  min-width: 0;
}

body .cookieray-banner-root .cookieray-icon-tile {
  background: #e51c2c26 !important;
  color: #ff7a84 !important;
  border: 1px solid #e51c2c55;
}

body .cookieray-banner-root .cookieray-headline,
body .cookieray-prefs-root .cookieray-prefs-title {
  color: #f4f0e9 !important;
  font-family: inherit;
  font-size: 17px;
  line-height: 1.3;
}

body .cookieray-banner-root .cookieray-desc,
body .cookieray-prefs-root .cookieray-prefs-desc {
  margin-top: 4px;
  color: #d6ceca !important;
  font-size: 14px;
  line-height: 1.5;
}

body .cookieray-banner-root .cookieray-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 8px;
  flex: 0 0 380px;
}

body .cookieray-banner-root .cookieray-actions-row {
  display: contents;
}

/* Match the plugin's button reset, including its interaction-state specificity. */
body :is(.cookieray-banner-root, .cookieray-prefs-root) .cookieray-btn.cookieray-btn.cookieray-btn {
  min-height: 44px !important;
  min-width: 0 !important;
  padding: 9px 8px !important;
  border: 1px solid #ffffff36 !important;
  background: #ffffff09 !important;
  color: #f4f0e9 !important;
  box-shadow: none !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
  white-space: normal;
}

body :is(.cookieray-banner-root, .cookieray-prefs-root) .cookieray-btn.cookieray-btn.cookieray-btn:focus-visible {
  outline: 2px solid #ff7a84 !important;
  outline-offset: 2px !important;
}

body .cookieray-prefs-root .cookieray-btn.cookieray-btn.cookieray-btn-primary {
  background: #b62332 !important;
  border-color: #df4350 !important;
}

body .cookieray-prefs-root {
  align-items: flex-end;
  padding-bottom: max(12px, env(safe-area-inset-bottom));
}

body .cookieray-prefs-root .cookieray-prefs-modal {
  width: min(520px, calc(100% - 24px));
  padding: 20px;
  max-height: calc(100vh - 32px);
  max-height: calc(100dvh - 24px - env(safe-area-inset-bottom));
}

body .cookieray-prefs-root .cookieray-prefs-row,
body .cookieray-prefs-root .cookieray-prefs-actions {
  border-color: #ffffff24;
}

body .cookieray-prefs-root .cookieray-prefs-row-title { color: #f4f0e9; }
body .cookieray-prefs-root .cookieray-prefs-row-desc { color: #c6bcb8; }
body .cookieray-prefs-root .cookieray-slider { background: #6d6566; }
body .cookieray-prefs-root .cookieray-switch input:checked + .cookieray-slider { background: #d52b3d; }

@media (max-width: 800px) {
  body .cookieray-banner-root .cookieray-inner {
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
  }

  body .cookieray-banner-root .cookieray-actions { flex-basis: auto; }
}

@media (max-width: 480px) {
  body .cookieray-banner-root .cookieray-banner { padding: 14px; }
  body .cookieray-banner-root .cookieray-actions { gap: 6px; }
  body .cookieray-banner-root .cookieray-desc { font-size: 13px; }
  body .cookieray-banner-root .cookieray-btn.cookieray-btn.cookieray-btn { font-size: 12px !important; }
  body .cookieray-prefs-root .cookieray-prefs-actions .cookieray-btn { flex: 1 !important; }
}
