/* New shopping flow surfaces. Existing sections, typography and animations are retained. */
.supherb-stash { position:fixed;inset:0 0 0 auto;margin:0;width:min(500px,100%);height:100%;height:100dvh;max-height:100dvh;max-width:100%;border:0;border-radius:24px 0 0 24px;padding:0;background:#fff;color:#171717;font:16px/1.5 "Nunito Sans",sans-serif;box-shadow:-16px 0 64px #0002;overflow:hidden; }
.supherb-stash[open]{display:flex;flex-direction:column;animation:supherb-stash-enter .3s ease-out;}
.supherb-stash::backdrop{background:#0007;}
body:has(.supherb-stash[open]){overflow:hidden;}
.supherb-stash-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:1px solid #eee;gap:12px;flex-shrink:0;}
.supherb-stash h2{font:400 26px/1.25 "SUPHERB Product Reference",serif;text-transform:uppercase;margin:0;}
.supherb-stash h2 span{font:16px "Nunito Sans",sans-serif;}
.supherb-stash [data-stash-close]{min-width:44px;min-height:44px;cursor:pointer;}
.supherb-stash-header button{font-size:32px;border:1px solid #ddd;border-radius:50%;line-height:1;}
.supherb-stash-status{padding:0 24px;margin:0;flex-shrink:0;}
.supherb-stash-status:not(:empty){padding-top:14px;padding-bottom:14px;}
.supherb-stash-status[data-error]{color:#a52012;background:#fff1ef;}
.supherb-stash-items{overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0;padding:0 24px;}
.supherb-stash-item{display:grid;grid-template-columns:80px minmax(0,1fr);gap:16px;padding:20px 0;border-bottom:1px solid #eee;}
.supherb-stash-item img{width:80px;height:100px;object-fit:contain;background:#fafafa;border-radius:10px;}
.supherb-stash-item h3{font:400 16px/1.5 "SUPHERB Product Reference",serif;margin:0 0 6px;text-transform:uppercase;}
.supherb-stash-item small{display:block;font-size:12px;color:#666;overflow-wrap:anywhere;}
.supherb-stash-item strong{display:block;color:#ed8800;font-family:Platypi,serif;margin:8px 0;}
.supherb-stash-quantity{display:flex;flex-wrap:wrap;align-items:center;gap:4px;}
.supherb-stash-quantity button{min-width:44px;min-height:44px;border:1px solid #eee;border-radius:50%;cursor:pointer;font-size:20px;}
.supherb-stash-quantity output{min-width:32px;text-align:center;}
.supherb-stash-quantity button:last-child{font-size:13px;border:0;border-radius:0;margin-left:auto;text-decoration:underline;}
.supherb-stash-footer{padding:20px 24px max(20px,env(safe-area-inset-bottom));border-top:1px solid #eee;flex-shrink:0;background:#fafafa;}
.supherb-stash-total{display:flex;justify-content:space-between;gap:16px;font-size:20px;}
.supherb-stash-footer p{font-size:13px;color:#666;margin:10px 0 18px;}
.supherb-flow-button,.supherb-buy-now{display:block;text-align:center;width:100%;padding:16px 24px;border-radius:999px;font:700 16px/1.5 "SUPHERB Product Reference",serif;text-transform:uppercase;letter-spacing:.025em;cursor:pointer;}
.supherb-flow-button{background:#171717;color:#fff;}
.supherb-buy-now{background:#fff;color:#171717;border:1px solid #171717;margin-top:12px;clear:both;}
.supherb-buy-now:disabled{opacity:.5;cursor:not-allowed;}
.supherb-stash-cart-link{display:block;text-align:center;text-decoration:underline;font-size:14px;margin:14px auto 0;}
.supherb-stash-empty{padding:36px 0;text-align:center;}
.supherb-stash-empty p{margin-bottom:24px;}
.supherb-store-steps{margin:0 0 36px;font:14px/1.5 "Nunito Sans",sans-serif;}
.supherb-store-steps ol{display:flex;justify-content:center;gap:32px;padding:0;list-style:none;}
.supherb-store-steps li{display:flex;align-items:center;gap:10px;color:#777;}
.supherb-store-steps li span{border:1px solid #ddd;border-radius:50%;min-width:28px;height:28px;text-align:center;line-height:26px;}
.supherb-store-steps [aria-current]{color:#171717;font-weight:700;}
.supherb-store-steps [aria-current] span{background:#171717;color:#fff;border-color:#171717;}
.supherb-stash button:focus-visible,.supherb-stash a:focus-visible,.supherb-buy-now:focus-visible{outline:2px solid #ed8800;outline-offset:3px;}
@keyframes supherb-stash-enter{from{transform:translateX(100%)}to{transform:translateX(0)}}
@media(max-width:767px){.supherb-stash{border-radius:20px 0 0 20px;}.supherb-stash h2{font-size:23px;}.supherb-stash-header{padding:18px 20px;}.supherb-store-steps ol{gap:12px;}.supherb-store-steps li{flex-direction:column;gap:6px;text-align:center;font-size:12px;flex:1;}}
@media(prefers-reduced-motion:reduce){.supherb-stash[open]{animation:none;}}
body.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:36px;align-items:start;font:16px/1.65 "Nunito Sans",sans-serif;margin-top:40px;}
body.woocommerce-checkout #customer_details{width:100%;min-width:0;}
body.woocommerce-checkout #customer_details .col-1,body.woocommerce-checkout #customer_details .col-2{float:none;width:100%;}
body.woocommerce-checkout .woocommerce h3{font:400 22px/1.4 "SUPHERB Product Reference",serif;text-transform:uppercase;margin-bottom:22px;}
body.woocommerce-checkout .woocommerce .form-row{margin-bottom:16px;padding:0;}
body.woocommerce-checkout .woocommerce .form-row label{font:14px/1.5 "Nunito Sans",sans-serif;text-transform:none;margin-bottom:8px;}
body.woocommerce-checkout .woocommerce .form-row input.input-text,body.woocommerce-checkout .woocommerce .form-row textarea,body.woocommerce-checkout .woocommerce .form-row select{padding:14px 18px;background:#f8f8f8;border:1px solid #ddd;border-radius:24px;min-height:48px;width:100%;box-sizing:border-box;}
body.woocommerce-checkout .woocommerce .form-row textarea{border-radius:18px;min-height:110px;}
body.woocommerce-checkout .select2-container .select2-selection--single{background:#f8f8f8;border-color:#ddd;border-radius:24px;min-height:50px;padding:10px;}
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{top:12px;right:12px;}
.supherb-checkout-summary{min-width:0;background:#fafafa;border:1px solid #eee;border-radius:22px;padding:24px;position:sticky;top:120px;}
body.woocommerce-checkout #order_review{float:none;width:100%;}
body.woocommerce-checkout .woocommerce table.shop_table{border:0;box-shadow:none;table-layout:fixed;overflow-wrap:anywhere;}
body.woocommerce-checkout #payment{background:transparent;border-radius:16px;}
body.woocommerce-checkout #payment div.payment_box{background:#f0f0f0;border-radius:12px;}
body.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#f0f0f0;}
body.woocommerce-checkout #payment .payment_methods,body.woocommerce-checkout #payment .place-order{padding:16px 0;}
body.woocommerce-checkout .woocommerce #place_order{float:none;width:100%;}
body.woocommerce-checkout form.checkout>.woocommerce-NoticeGroup{grid-column:1/-1;}
@media(max-width:900px){body.woocommerce-checkout form.checkout{grid-template-columns:minmax(0,1fr);gap:28px;}.supherb-checkout-summary{position:static;padding:20px;}}
body.woocommerce-checkout .woocommerce form .form-row input#supherb_adult{appearance:auto;-webkit-appearance:checkbox;display:inline-block;width:20px;height:20px;min-height:20px;margin:0 8px 0 0;padding:0;vertical-align:middle;accent-color:#171717;}
