.cart-preview-trigger{border:1px solid var(--ink);padding:10px 14px;background:var(--paper);color:var(--ink);font:inherit;white-space:nowrap;cursor:pointer}
.cart-usd-reference{display:block;margin-top:5px;font-size:12px;font-weight:400;color:var(--muted);line-height:1.4}.cart-lines article>b{text-align:right}.cart-preview-dialog footer .cart-usd-reference{color:inherit;opacity:.8}
.cart-preview-dialog{box-sizing:border-box;width:min(850px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:24px;border:1px solid var(--line);overflow:auto;background:var(--paper)}
.cart-preview-dialog header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:1px solid var(--line);padding-bottom:12px}.cart-preview-dialog h2{margin:6px 0}.cart-preview-dialog header small{color:var(--muted);font-size:11px}.cart-preview-dialog header button{border:0;background:transparent;font-size:28px;cursor:pointer}
.cart-product-head{display:flex;gap:16px;align-items:center;margin:18px 0}.cart-product-head img{width:90px;height:90px;object-fit:contain}.cart-product-head h3{margin:0}.cart-tier-picker{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.cart-tier-picker button{border:1px solid var(--line);background:transparent;padding:16px;text-align:left;font:inherit;cursor:pointer}.cart-tier-picker button.active{border-color:var(--ink);background:#e7eee7}.cart-tier-picker b{display:block;margin-top:8px}
#cart-color-list{display:grid;gap:8px}#cart-color-list[hidden],#cart-random-note[hidden]{display:none}#cart-color-list label{display:flex;justify-content:space-between;align-items:center;padding:10px;border-bottom:1px solid var(--line)}#cart-color-list small{display:block;color:var(--muted);font-size:11px}.cart-preview-dialog input{width:85px;padding:10px;border:1px solid var(--line);font:inherit;background:#fff}.cart-mix label{display:flex;gap:20px;align-items:center;margin-top:12px}
.cart-choice-total,.cart-preview-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 0;padding:16px 0;border-top:1px solid var(--line)}.cart-choice-total b{font-size:22px}.cart-primary{padding:13px 18px;border:1px solid var(--ink);background:var(--ink);color:#fff;font:inherit;cursor:pointer}.cart-primary:disabled{opacity:.45}.cart-preview-notice{color:var(--muted);font-size:13px;line-height:1.5}#cart-choice-error{color:#9b3027}
.cart-lines article{display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}.cart-lines article img{width:80px;height:80px;object-fit:contain}.cart-lines h3{margin:0;font-size:17px}.cart-lines p{margin:7px 0;font-size:13px}.cart-line-actions{display:flex;gap:14px;margin-top:10px}.cart-line-actions button,#cart-back{background:transparent;border:0;text-decoration:underline;font:inherit;cursor:pointer}
@media(max-width:560px){.cart-preview-dialog{padding:16px}.cart-lines article{grid-template-columns:60px minmax(0,1fr)}.cart-lines article img{width:60px;height:60px}.cart-lines article>b{grid-column:2}.cart-preview-dialog footer{align-items:stretch;flex-direction:column}.cart-preview-trigger{padding:8px;font-size:12px}}
.cart-payment-qr{display:block;width:min(280px,100%);height:auto;margin:20px auto;background:#fff}.cart-preview-dialog #cart-payment-status{color:#a12b23}
#cart-color-list label{display:grid;grid-template-columns:58px minmax(0,1fr) 85px;gap:12px;align-items:center}.cart-color-thumbnail{display:grid;place-items:center;width:58px;height:58px;border:1px solid var(--line);background:#fff}.cart-color-thumbnail img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:560px){#cart-color-list label{grid-template-columns:46px minmax(0,1fr) 72px;gap:8px}.cart-color-thumbnail{width:46px;height:46px}#cart-color-list input{width:72px}}
.product-card .card-order:hover,.product-card .card-order:focus-visible{background:#e5eedf!important;color:#245c35!important;border-color:#245c35!important}
.product-card .card-order:hover span,.product-card .card-order:focus-visible span{color:#245c35!important}

/* Explicit colors prevent Safari's default blue button text. */
.cart-preview-dialog .cart-tier-picker button,
.cart-preview-dialog header button[data-close]{color:#245c35;-webkit-text-fill-color:#245c35}
.cart-preview-dialog .cart-tier-picker button>b{color:#000;-webkit-text-fill-color:#000}
.cart-preview-dialog .cart-tier-picker button .cart-usd-reference{color:var(--muted);-webkit-text-fill-color:var(--muted)}
.cart-preview-dialog header button[data-close]:focus:not(:focus-visible){outline:none}
.cart-preview-dialog header button[data-close]:focus-visible{outline:2px solid #245c35;outline-offset:2px}
.cart-preview-dialog .cart-line-actions button,
.cart-preview-dialog #cart-back,
.cart-preview-dialog button[data-pay]{color:#245c35;-webkit-text-fill-color:#245c35}
.cart-preview-dialog button[data-pay="wechat"]{background:#07c160;border-color:#07c160;color:#fff;-webkit-text-fill-color:#fff;font-weight:600}
.cart-preview-dialog button[data-pay="alipay"]{background:#1677ff;border-color:#1677ff;color:#fff;-webkit-text-fill-color:#fff;font-weight:600}
.cart-preview-dialog .cart-payment-methods{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:stretch}
.cart-payment-or{align-self:center;color:var(--muted);font-size:12px}
.cart-payment-actions{display:flex;align-items:center;gap:16px;margin-top:10px;flex-wrap:wrap}
@media(max-width:760px){
 .cart-preview-dialog:has(#cart-payment){padding:12px;max-height:calc(100dvh - 20px)}
 .cart-preview-dialog:has(#cart-payment) header{padding-bottom:6px}
 .cart-preview-dialog:has(#cart-payment) h2{font-size:22px;line-height:1.2;margin:3px 0}
 .cart-preview-dialog:has(#cart-payment) header small{font-size:10px}
 .cart-preview-dialog:has(#cart-payment)>p{margin:6px 0;font-size:12px}
 .cart-preview-dialog:has(#cart-payment) .cart-choice-total{margin-top:6px;padding:7px 0}
 .cart-preview-dialog:has(#cart-payment) .cart-choice-total b{font-size:20px}
 .cart-preview-dialog:has(#cart-payment)>h3{font-size:15px;margin:7px 0}
 .cart-preview-dialog .cart-payment-methods{margin:7px 0;gap:6px}
 .cart-preview-dialog .cart-payment-methods button{padding:10px 8px;font-size:13px}
 .cart-preview-dialog .cart-payment-qr{width:auto;max-width:70%;max-height:clamp(130px,28dvh,220px);object-fit:contain;margin:8px auto}
 #cart-payment>p{font-size:12px;line-height:1.3;margin:6px 0}
 #cart-payment-status:empty{display:none}
 .cart-payment-actions{flex-wrap:nowrap;justify-content:space-between;gap:10px;margin-top:8px}
 .cart-payment-actions button{font-size:13px}
 .cart-payment-actions .cart-primary{padding:11px 12px}
}
@media(min-width:761px){
 .cart-preview-dialog:has(#cart-payment){width:min(780px,calc(100vw - 24px));padding:16px 22px}
 .cart-preview-dialog:has(#cart-payment) header{padding-bottom:6px}
 .cart-preview-dialog:has(#cart-payment) h2{font-size:24px;margin:3px 0}
 .cart-preview-dialog:has(#cart-payment)>p{margin:6px 0;font-size:13px}
 .cart-preview-dialog:has(#cart-payment) .cart-choice-total{margin-top:8px;padding:8px 0}
 .cart-preview-dialog:has(#cart-payment)>h3{margin:8px 0;font-size:16px}
 .cart-preview-dialog .cart-payment-methods{margin:8px 0}
 .cart-preview-dialog .cart-payment-methods button{padding:10px 14px}
 .cart-preview-dialog .cart-payment-qr{width:auto;max-width:260px;max-height:clamp(140px,32vh,230px);margin:10px auto;object-fit:contain}
 #cart-payment>p{margin:6px 0;font-size:13px;line-height:1.35}
 #cart-payment-status:empty{display:none}
}
