/* V2 shop-preview / checkout-preview proportions, adapted to V1's live controls.
   Loaded only by the four commerce pages; review presentation is independent. */
.oc-modern {--oc-paper:#f8f7f4;--oc-panel:#fff;--oc-text:#1f1f1d;--oc-muted:#5d5b55;--oc-line:#e1dfd7;background:var(--oc-paper);color:var(--oc-text);}
.oc-modern main {background:var(--oc-paper);color:var(--oc-text);font:16px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif;}
.oc-modern main .container {width:100%;max-width:1120px;padding-inline:22px;margin-inline:auto;}
.oc-modern main h1 {font-size:clamp(28px,4vw,45px);letter-spacing:-.04em;line-height:1.15;font-weight:850;margin:10px 0 5px;color:var(--oc-text);}
.oc-modern main :is(h2,h3,strong,label) {color:var(--oc-text);}
.oc-modern main :is(.store-helper,.store-conversation-intro,.store-commerce-heading p,.store-cart-line-copy p,.store-product-choice-status,.store-small-print) {color:var(--oc-muted);}
.oc-modern .store-hero {padding:28px 0 18px;background:var(--oc-paper);color:var(--oc-text);border:0;}
.oc-modern .store-hero-inner {display:block;min-height:0;}
.oc-modern .store-hero h1 {color:var(--oc-text);font-weight:850;}
.oc-modern .store-hero p {max-width:80ch;margin:12px 0 0;color:var(--oc-muted);font-size:16px;line-height:1.55;}
.oc-modern main :is(.eyebrow,.kicker) {color:#735400;font-size:11px;font-weight:850;letter-spacing:.08em;}
.oc-modern .store-section {background:var(--oc-paper);padding:12px 0 70px;}
.oc-modern .store-commerce-section {padding:28px 0 70px;}
.oc-modern .store-commerce-heading {display:block;margin-bottom:21px;}
.oc-modern .store-commerce-heading p {margin:10px 0 0;max-width:80ch;font-size:15px;}
.oc-modern .store-product-picker {padding:0;border:0;background:transparent;box-shadow:none;}
.oc-modern .store-catalog-heading {margin-bottom:18px;}
.oc-modern .store-catalog-heading h2 {font-size:21px;letter-spacing:-.02em;}
.oc-modern .store-product-choices {display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;align-items:stretch;}
.oc-modern .store-product-choice {display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--oc-line);border-radius:12px;background:var(--oc-panel);box-shadow:0 8px 24px #00000009;transform:none;}
.oc-modern .store-product-choice.is-selected {border-color:#a26b00;box-shadow:0 0 0 1px #a26b00;}
.oc-modern .store-product-choice-view {display:flex;flex-direction:column;flex:1;padding:0;background:transparent;text-align:left;color:var(--oc-text);border:0;}
.oc-modern .store-product-choice-art {display:grid;place-items:center;min-height:180px;height:180px;padding:12px;background:#fff;border-bottom:1px solid var(--oc-line);border-radius:0;}
.oc-modern .store-product-choice-image {width:100%;height:100%;max-height:156px;object-fit:contain;transform:none;box-shadow:none;border:0;border-radius:0;filter:none;background:#fff;}
.oc-modern .store-product-choice-body {display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:16px;}
.oc-modern .store-product-choice-name {font-size:1.12rem;line-height:1.25;letter-spacing:-.02em;}
.oc-modern .store-product-choice-price {font-size:1.6rem;line-height:1.2;font-weight:850;color:var(--oc-text);}
.oc-modern .store-product-choice-status {font-size:.8rem;}
.oc-modern .store-product-choice-summary {font-size:.86rem;line-height:1.4;color:var(--oc-muted);font-weight:500;}
.oc-modern .store-product-card-add {width:calc(100% - 32px);min-height:44px;margin:0 16px 16px;padding:10px 12px;background:#fecc13;color:#171100;border:0;border-radius:10px;font-weight:850;font-size:.9rem;}
.oc-modern main .btn {min-height:48px;padding:12px 19px;border-radius:10px;font-size:15px;font-weight:850;line-height:1.45;white-space:normal;}
.oc-modern main .btn-accent {background:#fecc13;color:#171100;border:1px solid #fecc13;}
.oc-modern main .btn-outline {background:var(--oc-panel);color:var(--oc-text);border:1px solid var(--oc-line);}
.oc-modern main button:disabled {opacity:.6;cursor:not-allowed;}
.oc-modern .store-product-main {border:1px solid var(--oc-line);border-radius:16px;background:var(--oc-panel);box-shadow:0 8px 24px #00000009;}
.oc-modern .store-product-copy {padding:25px;color:var(--oc-text);}
.oc-modern .store-product-copy h2 {font-size:clamp(24px,3vw,34px);letter-spacing:-.03em;}
/* The product dialog is a sibling of main, so it needs its own label scope. */
.oc-modern #store-product-detail .kicker {color:#735400;}
html[data-theme=dark] .oc-modern #store-product-detail .kicker {color:#fecc13;}
.oc-modern .store-product-visual {background:#fff;border-radius:16px 0 0 16px;}
.oc-modern .store-product-warning,.oc-modern .store-stock-card,.oc-modern .store-product-expectations {background:var(--oc-paper);color:var(--oc-text);border-color:var(--oc-line);}
.oc-modern .store-cart-layout,.oc-modern .store-checkout-page-grid {grid-template-columns:minmax(0,1fr) 340px;gap:20px;}
.oc-modern :is(.store-cart-list,.store-cart-summary-card,.store-checkout-page-card) {background:var(--oc-panel);border:1px solid var(--oc-line);border-radius:16px;box-shadow:0 8px 24px #00000009;color:var(--oc-text);}
.oc-modern :is(.store-cart-summary-card,.store-checkout-page-card),.oc-modern.checkout-conversation-page .store-checkout-conversation .store-checkout-page-card {padding:23px 25px;}
.oc-modern .store-cart-summary-card {position:sticky;top:112px;padding:21px;}
.oc-modern :is(.store-cart-summary-card h2,.store-checkout-page-card h2),.oc-modern.checkout-conversation-page .store-checkout-page-card h2 {font-size:21px;letter-spacing:-.02em;margin:0 0 17px;}
.oc-modern .store-cart-line {padding:23px 25px;border-color:var(--oc-line);gap:16px;}
.oc-modern .store-mini-box {width:58px;height:58px;background:#161616;color:#fecc13;border:0;border-radius:9px;}
.oc-modern .store-cart-line-main {grid-template-columns:58px minmax(0,1fr);}
.oc-modern .store-cart-line-copy h2,.oc-modern .store-cart-line-total {color:var(--oc-text);}
.oc-modern .store-cart-line-actions {flex-wrap:wrap;margin-top:14px;}
.oc-modern .store-cart-qty :is(button,input) {min-height:44px;background:var(--oc-panel);color:var(--oc-text);border-color:var(--oc-line);}
.oc-modern .store-summary-row {border-color:var(--oc-line);gap:14px;align-items:baseline;font-size:13px;padding:11px 0;}
.oc-modern .store-summary-row strong {text-align:right;}
.oc-modern .store-summary-row.is-total {font-size:16px;}
.oc-modern .store-hold-note {border-radius:11px;font-size:13px;}
.oc-modern main .store-hold-note strong,.oc-modern main .store-compact-warning strong {color:#40371e;}
.oc-modern.checkout-conversation-page .store-checkout-conversation {border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible;}
.oc-modern.checkout-conversation-page .store-checkout-conversation .store-checkout-page-card {border:1px solid var(--oc-line);border-radius:16px;background:var(--oc-panel);box-shadow:0 8px 24px #00000009;}
.oc-modern.checkout-conversation-page .store-checkout-conversation .store-checkout-page-card + .store-checkout-page-card {margin-top:13px;border-top:1px solid var(--oc-line);}
.oc-modern .store-empty-cart {padding:32px 25px;max-width:760px;}
.oc-modern .store-empty-cart h2 {font-size:23px;letter-spacing:-.02em;}
.oc-modern .store-empty-cart p {color:var(--oc-muted);}
.oc-modern .store-checkout-page-card .review-field :is(input,select),.oc-modern .store-shipping-select {width:100%;min-height:48px;padding:10px 12px;border:1.5px solid var(--oc-line);border-radius:9px;background:var(--oc-panel);color:var(--oc-text);font:inherit;}
.oc-modern .store-checkout-page-card .review-field label,.oc-modern .store-shipping-select-field label {font-size:13px;font-weight:750;margin-bottom:6px;}
.oc-modern .store-conversation-intro {font-size:13px;line-height:1.55;}
.oc-modern .store-optional-actions {gap:10px 14px;}
.oc-modern :is(.store-optional-button,.store-edit-cart-link) {min-height:36px;display:inline-flex;align-items:center;}
.oc-modern .store-conversation-question {border-color:var(--oc-line);}
.oc-modern :is(.store-optional-button,.store-edit-cart-link,.store-product-expectations summary) {color:#735400;}
.oc-modern .store-consent-row {padding:12px;background:#fff9e6;border:1px solid #edda9b;border-radius:11px;color:#34312a;line-height:1.6;}
.oc-modern .store-consent-row :is(span,strong,a) {color:#34312a;}
.oc-modern .store-consent-row a {text-decoration:underline;}
.oc-modern.checkout-conversation-page #checkout-rates-card[hidden],.oc-modern.checkout-conversation-page #checkout-pay-card[hidden] {display:none!important;}
.oc-modern main :is(input[type=checkbox],input[type=radio]) {accent-color:#967200;}
.oc-modern .store-order-summary {background:var(--oc-panel);color:var(--oc-text);}
.oc-modern .store-order-summary>div {border-color:var(--oc-line);}
.oc-modern main :is(a,button,input,select,summary):focus-visible {outline:3px solid #976600;outline-offset:3px;}
html[data-theme=dark] .oc-modern {--oc-paper:#181818;--oc-panel:#242424;--oc-text:#f7f3e9;--oc-muted:#d2cec4;--oc-line:#55524b;}
html[data-theme=dark] .oc-modern :is(.store-section,.store-hero) {background:var(--oc-paper);}
html[data-theme=dark] .oc-modern main :is(.eyebrow,.kicker,.store-optional-button,.store-edit-cart-link,.store-product-expectations summary) {color:#fecc13;}
html[data-theme=dark] .oc-modern main .btn-accent {color:#171100;}
html[data-theme=dark] .oc-modern main .store-compact-warning strong {color:#f7f3e9;}
html[data-theme=dark] .oc-modern main .store-hold-note strong,html[data-theme=dark] .oc-modern main .store-hold-note span {color:#f7f3e9;}
html[data-theme=dark] .oc-modern .store-product-warning :is(strong,span),html[data-theme=dark] .oc-modern .store-product-expectations :is(span,small,li) {color:var(--oc-text);}
@media(max-width:860px){.oc-modern .store-cart-layout,.oc-modern .store-checkout-page-grid{grid-template-columns:minmax(0,1fr)}.oc-modern .store-cart-summary-card{position:static}}
@media(max-width:760px){.oc-modern main .container{padding-inline:16px}.oc-modern .store-hero{padding:21px 0 12px}.oc-modern .store-commerce-section{padding:21px 0 50px}.oc-modern .store-hero p,.oc-modern .store-commerce-heading p{font-size:13px}.oc-modern :is(.store-cart-summary-card,.store-checkout-page-card),.oc-modern.checkout-conversation-page .store-checkout-conversation .store-checkout-page-card{padding:17px 15px}.oc-modern .store-cart-line{padding:17px 15px}.oc-modern .store-product-copy{padding:20px}.oc-modern .store-product-visual{border-radius:16px 16px 0 0}.oc-modern .store-cart-line{grid-template-columns:minmax(0,1fr)}.oc-modern .store-cart-line-total{text-align:left}.oc-modern .store-checkout-page-card h2{font-size:19px}.oc-modern .store-hold-note{align-items:flex-start;flex-wrap:wrap}}
@media(max-width:600px){.oc-modern .store-product-choices{grid-template-columns:minmax(0,1fr);gap:12px}.oc-modern .store-product-choice{display:grid;grid-template-columns:32% minmax(0,1fr);grid-template-rows:auto auto}.oc-modern .store-product-choice-view{display:grid;grid-column:1/-1;grid-template-columns:32% minmax(0,1fr);cursor:pointer}.oc-modern .store-product-choice-art{grid-column:1;grid-row:auto;min-height:132px;height:100%;padding:8px;border-bottom:0;border-right:1px solid var(--oc-line)}.oc-modern .store-product-choice-image{height:auto;max-height:132px}.oc-modern .store-product-choice-body{grid-column:2;padding:13px 12px 10px;gap:5px}.oc-modern .store-product-choice-name{font-size:1rem;line-height:1.2}.oc-modern .store-product-choice-price{font-size:1.4rem}.oc-modern .store-product-choice-summary{display:block;max-width:100%;overflow:hidden;color:var(--oc-muted);font-size:.78rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.oc-modern .store-product-card-add{grid-column:2;width:calc(100% - 24px);min-height:44px;margin:0 12px 12px}.oc-modern .store-product-choice:has(.store-product-choice-view:focus-visible){outline:3px solid #976600;outline-offset:3px}}
@media(max-width:350px){.oc-modern .store-checkout-contact-grid,.oc-modern .store-checkout-address-row{grid-template-columns:minmax(0,1fr)}.oc-modern .store-checkout-address-row .store-city-field{grid-column:auto}.oc-modern .store-summary-row{flex-wrap:wrap}.oc-modern .store-cart-line-main{grid-template-columns:44px minmax(0,1fr)}.oc-modern .store-mini-box{width:44px;height:44px}}
