.product-page .store-main{width:min(1280px,calc(100% - 48px));padding-top:44px}
.product-page .breadcrumbs{margin-bottom:26px;font-size:11px;line-height:1.5}
.product-page .breadcrumbs a{color:var(--muted)}
.product-page .breadcrumbs a:hover{color:var(--text)}

.product-page .product-detail{column-gap:64px}
.product-page .product-gallery-shell{min-width:0}
.product-page .product-gallery{position:relative;top:auto;aspect-ratio:1;border-radius:24px;border-color:color-mix(in srgb,var(--line) 82%,transparent);background:linear-gradient(145deg,#1c1d21,#101114);box-shadow:0 24px 70px rgba(0,0,0,.24)}
.product-page .product-gallery img{padding:22px;object-fit:contain}
.product-page .product-media-protected{left:18px;bottom:16px;padding:7px 10px;font-size:9px}
.product-page .detail-info{padding-top:6px}
.product-page .detail-category{display:block;margin-bottom:12px;font-size:12px;letter-spacing:.14em}
.product-page .detail-info h1{font-size:clamp(44px,4.5vw,64px)!important;line-height:1.02;letter-spacing:-.055em}
.product-page .detail-price-row{margin:24px 0 20px}
.product-page .detail-price-row .detail-price{font-size:38px!important;line-height:1.1}
.product-page .detail-price-row del{font-size:17px}
.product-page .detail-price-row>span{padding:7px 10px;font-size:10px}
.product-page .detail-description{max-width:650px;font-size:15px!important;line-height:1.75!important}
.product-page .product-stock-status{margin-top:20px;padding:10px 14px;font-size:11px}
.product-page .product-region-panel{margin:18px 0;padding:17px 18px;border-radius:15px}
.product-page .product-region-panel b{font-size:10px}
.product-page .product-region-panel p{font-size:12px}
.product-page .delivery-points{margin:18px 0 0;gap:10px}
.product-page .delivery-points div{min-height:52px;display:flex;align-items:center;padding:15px 16px!important;border-radius:13px!important;font-size:11px}

.product-page .game-topup-detail{grid-template-columns:minmax(390px,.92fr) minmax(0,1.08fr);gap:32px 64px!important}
.product-page .game-topup-detail>.product-gallery-shell{grid-column:1;grid-row:auto;position:relative;top:auto}
.product-page .game-topup-detail .product-gallery{aspect-ratio:4/3}
.product-page .game-topup-detail>.detail-info{display:block;grid-column:2}
.product-page .product-topup-form{grid-column:1/-1;margin-top:0;padding:32px;border:1px solid color-mix(in srgb,var(--line) 86%,transparent);border-radius:24px;background:linear-gradient(150deg,color-mix(in srgb,var(--red) 5%,var(--surface)),var(--surface) 42%);box-shadow:0 24px 70px rgba(0,0,0,.16)}
.product-page .game-topup-detail>.product-alert-panel{grid-column:1/-1;margin-top:0}
.topup-trust-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:24px}
.topup-trust-row span{display:flex;align-items:center;min-height:46px;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:color-mix(in srgb,var(--bg) 62%,var(--surface));font-size:11px;font-weight:750}
.topup-workspace-intro{display:flex;align-items:flex-start;gap:16px;margin-bottom:4px}
.topup-workspace-intro>span{flex:0 0 auto;margin-top:3px;padding:7px 9px;border-radius:8px;background:var(--red);color:#fff;font-size:9px;font-weight:900;letter-spacing:.08em}
.topup-workspace-intro h2{font-size:25px;letter-spacing:-.03em}
.topup-workspace-intro p{margin:6px 0 0;color:var(--muted);font-size:12px}
.product-page .topup-package-selector{gap:18px}
.product-page .topup-package-selector>legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.product-page .game-topup-detail .topup-package-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.product-page .topup-package{border-radius:16px;background:color-mix(in srgb,var(--bg) 68%,var(--surface));box-shadow:0 8px 25px rgba(0,0,0,.08)}
.product-page .topup-package:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(0,0,0,.16)}
.product-page .topup-package.selected{background:color-mix(in srgb,var(--red) 10%,var(--surface));box-shadow:0 0 0 2px color-mix(in srgb,var(--red) 16%,transparent),0 16px 34px rgba(0,0,0,.18)}
.product-page .topup-package>label{min-height:168px;padding:18px;gap:12px;cursor:pointer}
.product-page .topup-package input[data-package-select]{top:15px;right:15px;width:20px;height:20px}
.product-page .topup-package img{width:44px;height:44px;border-radius:11px}
.product-page .topup-package label>span{padding-right:28px}
.product-page .topup-package b{font-size:14px;line-height:1.35}
.product-page .topup-package small{margin-top:6px;font-size:10px;line-height:1.45}
.product-page .topup-package em{margin-top:9px;font-size:9px;line-height:1.45}
.product-page .topup-package label>strong{font-size:20px;line-height:1.2}
.product-page .topup-package label>strong del{display:inline;margin-left:7px;font-size:10px}
.product-page .topup-package>i{left:18px;bottom:9px;font-size:9px}

.product-page .topup-dynamic-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:24px;border-radius:18px}
.product-page .topup-fields-heading{margin-bottom:6px}
.product-page .topup-fields-heading span{font-size:9px}
.product-page .topup-fields-heading b{font-size:19px}
.product-page .topup-customer-field>span{font-size:12px}
.product-page .topup-customer-field input,.product-page .topup-customer-field select,.product-page .topup-customer-field textarea{min-height:52px;padding:14px 15px;border-radius:11px;font-size:14px}
.product-page .topup-customer-field small{font-size:10px}
.product-page .topup-important-notice{padding:15px 16px;border-radius:12px;font-size:11px!important}
.product-page .topup-important-notice input{width:18px!important;height:18px}
.product-page .topup-selection-tray{gap:15px;padding:24px;border-radius:18px}
.product-page .topup-selection-tray>div:first-child>span{font-size:9px}
.product-page .topup-selection-tray>div:first-child>b{font-size:12px}
.product-page .topup-tray-line{padding:14px 0;font-size:13px}
.product-page .topup-quantity button{width:34px;height:34px;font-size:16px}
.product-page .topup-tray-line>strong{min-width:90px;font-size:14px}
.product-page .topup-selection-tray footer{padding-top:16px;font-size:14px}
.product-page .topup-selection-tray footer strong{font-size:27px}
.product-page .product-buy-actions{gap:14px;margin-top:2px}
.product-page .product-buy-actions .button{min-height:56px;border-radius:12px;font-size:15px}
.product-page .product-cart-status{font-size:12px}
.product-page .product-alert-panel{padding:28px;border-radius:20px}

@media(max-width:1050px){
  .product-page .game-topup-detail{grid-template-columns:minmax(330px,.85fr) minmax(0,1.15fr);gap:28px 38px!important}
  .product-page .game-topup-detail .topup-package-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .product-page .store-main{width:min(100% - 32px,760px)}
  .product-page .game-topup-detail{display:grid;grid-template-columns:1fr;gap:26px!important}
  .product-page .game-topup-detail>.product-gallery-shell,.product-page .game-topup-detail>.detail-info,.product-page .product-topup-form,.product-page .game-topup-detail>.product-alert-panel{grid-column:1}
  .product-page .game-topup-detail>.product-gallery-shell{position:relative;top:auto;margin-bottom:0}
  .product-page .product-topup-form{padding:24px}
  .topup-trust-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-page .detail-info h1{font-size:44px!important}
}
@media(max-width:600px){
  .product-page .store-main{width:calc(100% - 24px);padding-top:24px}
  .product-page .breadcrumbs{margin-bottom:17px;font-size:10px}
  .product-page .product-gallery{border-radius:18px}
  .product-page .game-topup-detail .product-gallery{aspect-ratio:16/10}
  .product-page .product-gallery img{padding:12px}
  .product-page .detail-info{padding-top:24px}
  .product-page .detail-info h1{font-size:36px!important}
  .product-page .detail-price-row .detail-price{font-size:30px!important}
  .product-page .detail-description{font-size:14px!important}
  .product-page .product-topup-form{margin-top:0;padding:16px;border-radius:18px}
  .topup-workspace-intro{gap:11px}
  .topup-workspace-intro h2{font-size:21px}
  .topup-workspace-intro p{font-size:11px}
  .product-page .game-topup-detail .topup-package-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .product-page .topup-package>label{min-height:145px;padding:13px}
  .product-page .topup-package input[data-package-select]{top:11px;right:11px;width:18px;height:18px}
  .product-page .topup-package b{font-size:12px}
  .product-page .topup-package small{font-size:9px}
  .product-page .topup-package em{font-size:8px}
  .product-page .topup-package label>strong{font-size:17px}
  .product-page .topup-dynamic-fields{grid-template-columns:1fr;padding:17px}
  .product-page .topup-fields-heading b{font-size:16px}
  .product-page .topup-selection-tray{padding:17px}
  .product-page .product-buy-actions{grid-template-columns:1fr}
  .topup-trust-row{gap:8px;margin-bottom:19px}.topup-trust-row span{min-height:42px;padding:10px;font-size:9px}
}

/* Give game-package inventory its own row; it must never share price space. */
.product-page .topup-package{display:grid;grid-template-rows:minmax(0,1fr) auto}
.product-page .topup-package>label{min-height:168px;padding-bottom:18px}
.product-page .topup-package label>strong{padding-right:0;align-self:end}
.product-page .topup-package>i{position:static;display:block;max-width:none;padding:8px 18px;border-top:1px solid var(--line);background:color-mix(in srgb,#f0a840 8%,transparent);color:#f0a840;font-size:9px;line-height:1.35;text-align:left}
.product-page .topup-package.sold-out>i{color:#ff746d;background:color-mix(in srgb,#ff746d 8%,transparent)}
@media(max-width:600px){.product-page .topup-package>label{min-height:142px}.product-page .topup-package>i{padding:7px 13px;font-size:8px}}
