.duilinkShop{max-width:1040px;margin:0 auto;}
.shopIntro{max-width:720px;margin:12px 0 28px;}
.shopIntro h1{font-size:clamp(30px,5vw,48px);line-height:1.1;letter-spacing:-.035em;margin:12px 0;}
.shopIntro p,.shopNote{color:var(--dui-muted);line-height:1.6;}
.shopTag{display:inline-block;border:1px solid var(--dui-border);border-radius:999px;padding:5px 11px;font-size:12px;font-weight:700;}
.shopGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0;}
.duilinkShop .shopProduct{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--dui-border);border-radius:18px;background:var(--dui-surface);padding:18px;}
.shopProduct.isFeatured{border-color:var(--dui-accent);box-shadow:0 12px 30px rgba(15,23,42,.09);}
.shopProduct .shopMedia{display:grid;place-items:center;aspect-ratio:16/10;border-radius:12px;overflow:hidden;background:var(--dui-surface-2);margin-bottom:18px;}
.shopMedia>img{width:100%;height:100%;object-fit:contain;}
.shopProduct h2{margin:12px 0 8px;font-size:26px;}
.shopProduct p{line-height:1.5;}
.shopPrice{font-size:32px;font-weight:800;letter-spacing:-.035em;margin:12px 0 0;}
.shopProduct .shopFine{font-size:13px;color:var(--dui-muted);margin:6px 0 16px;}
.shopProduct .shopAction{margin-top:auto;padding-top:16px;}
.shopAction .btn{width:100%;box-sizing:border-box;text-align:center;}
.shopProduct.isBasic{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:12px 28px;padding:24px;}
.isBasic .shopAction{min-width:200px;align-self:center;}
.shopNotice{padding:12px 16px;border:1px solid var(--dui-border);border-radius:12px;background:var(--dui-surface-2);}
.shopOrders{border-top:1px solid var(--dui-border);padding-top:20px;margin-top:28px;}
.shopOrders summary{cursor:pointer;font-weight:700;padding:12px 0;}
.shopOrders li{padding:6px 0;}
@media(max-width:680px){.shopGrid{grid-template-columns:1fr;}.shopProduct.isBasic{display:flex;}.isBasic .shopAction{align-self:stretch;}.shopIntro{margin-bottom:20px;}}
/* The preview has its own image geometry, unaffected by offer thumbnail rules. */
[data-custom-preview] .goldCardPhoto{object-fit:cover;background:transparent;}
[data-custom-preview] .goldCardLogo{width:auto;height:auto;background:transparent;}

.shopIntroCompact{max-width:820px;margin-bottom:18px}.shopIntroCompact h1{font-size:clamp(2rem,5vw,3.6rem)}
.shopModeBadge{display:inline-flex;margin:0 0 16px;padding:6px 10px;border-radius:999px;background:#fff7ed;color:#9a3412;font-size:.74rem;font-weight:800}
.cartShell,.ordersShell{overflow:hidden;border:1px solid var(--dui-border);border-radius:24px;background:var(--dui-surface);box-shadow:0 20px 55px rgba(15,23,42,.08)}
.cartHeading{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;padding:22px 24px;border-bottom:1px solid var(--dui-border)}.cartHeading h2{margin:10px 0 4px;font-size:clamp(1.45rem,3vw,2rem)}.cartHeading p{margin:0}.cartOrdersLink{font-weight:800;text-decoration:none;white-space:nowrap}
.cartItems{display:grid}.cartItem{display:grid;grid-template-columns:minmax(180px,270px) 1fr;gap:22px;padding:22px 24px;border-bottom:1px solid var(--dui-border)}.cartItemMedia{display:grid;place-items:center;align-self:start;aspect-ratio:1400/788;overflow:hidden;border-radius:15px;background:#080808}.cartItemMedia>img{width:100%;height:100%;object-fit:cover}.cartItemMedia .goldCardScene{width:100%;margin:0;padding:0;border-radius:15px}.cartItemInfo{display:grid;align-content:start;gap:12px;min-width:0}.cartItemTitle{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.cartItemTitle h3{margin:8px 0 0;font-size:1.4rem}.cartItemTitle>strong{font-size:1.2rem;white-space:nowrap}.cartDesignState{margin:0;font-size:.88rem}.cartItemControls{display:flex;justify-content:space-between;gap:14px;align-items:end;margin-top:auto}.cartQuantityForm{display:flex;gap:9px;align-items:end}.cartQuantityForm label{margin:0;font-size:.76rem;text-transform:uppercase;letter-spacing:.04em}.cartQuantityForm input{width:72px;margin-top:5px;padding:.55rem;text-align:center}.cartQuantityForm .btn{min-height:38px;margin:0;padding:7px 12px}.shopInline{display:inline}.shopTextButton{margin:0;padding:8px;border:0;background:none;color:#9f2525;font:inherit;font-size:.84rem;font-weight:800;cursor:pointer}
.cartFooter{display:flex;justify-content:space-between;gap:24px;align-items:end;padding:24px;background:var(--dui-surface-2)}.cartTotal{display:grid;gap:2px}.cartTotal span{color:var(--dui-muted);font-size:.82rem;font-weight:800;text-transform:uppercase}.cartTotal strong{font-size:clamp(1.8rem,4vw,2.5rem);letter-spacing:-.04em}.cartTotal small{color:var(--dui-muted)}.cartActions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.cartActions form{margin:0}.cartActions .btn{margin:0}
.cartEmpty{padding:clamp(28px,6vw,64px);text-align:center}.cartEmpty h2,.cartEmpty h3{margin:14px 0 8px}.cartEmpty p{max-width:540px;margin:0 auto 22px}.cartEmpty .cartActions{justify-content:center}
.ordersList{display:grid}.orderRow{display:flex;justify-content:space-between;gap:24px;padding:18px 24px;border-bottom:1px solid var(--dui-border);color:inherit;text-decoration:none;transition:background .15s ease}.orderRow:hover{background:var(--dui-surface-2)}.orderRow span{display:grid;gap:4px}.orderRow span:last-child{text-align:right}.orderRow small{color:var(--dui-muted)}
@media(max-width:700px){.cartHeading{display:grid}.cartOrdersLink{justify-self:start}.cartItem{grid-template-columns:1fr;padding:18px}.cartItemMedia{max-width:100%}.cartItemControls,.cartFooter{display:grid}.cartQuantityForm{display:grid;grid-template-columns:1fr auto}.cartQuantityForm label{display:grid}.cartActions{display:grid;width:100%}.cartActions .btn,.cartActions form,.cartActions button{width:100%}.orderRow{gap:12px;padding:16px}.orderRow small{font-size:.73rem}}

.resumePaymentForm{margin:18px 0}.resumePaymentForm .btn{min-width:min(100%,280px);margin:0}
.purchasedOrders{margin-bottom:24px}.orderPaymentStatus{border-color:var(--dui-accent);margin:8px 0 24px}.orderPaymentStatus h2{margin:4px 0 8px}.newPurchaseCart{margin-top:24px}.newPurchaseCart>summary{padding:18px;border:1px solid var(--dui-border);border-radius:12px;cursor:pointer;font-weight:800}.newPurchaseCart[open]>summary{margin-bottom:16px}.cartItemTitle>strong{white-space:normal}.cartTotal strong{font-size:clamp(1.25rem,3vw,2rem)}
