/* Miller Gadgets v1.233 — uploaded media replaces catalogue placeholders */
.mg-product-media-stage{display:grid;place-items:center;width:100%;min-height:clamp(280px,42vw,580px);overflow:hidden;border-radius:20px;background:linear-gradient(145deg,#fff,#f5f3f8)}
.mg-product-main-image,.mg-product-main-video{display:block;width:100%;height:100%;max-height:640px;object-fit:contain;background:transparent}
.mg-product-main-video{background:#09090b}
.mg-original-product-image[hidden]{display:none!important}
.mg-product-media-rail{display:flex!important;gap:10px!important;overflow-x:auto!important;padding:10px 2px 4px!important;scrollbar-width:thin}
.mg-product-media-thumb{position:relative;flex:0 0 86px!important;width:86px!important;height:70px!important;min-height:70px!important;padding:4px!important;overflow:hidden;border:1px solid rgba(59,52,87,.2)!important;border-radius:12px!important;background:#fff!important;cursor:pointer}
.mg-product-media-thumb.is-active{border-color:#3b3457!important;box-shadow:0 0 0 2px rgba(59,52,87,.18)!important}
.mg-product-media-thumb-asset{display:block;width:100%;height:100%;object-fit:contain;border-radius:8px}
.mg-media-type-badge{position:absolute;right:5px;bottom:5px;padding:2px 6px;border-radius:999px;background:rgba(17,9,51,.88);color:#fff;font-size:.62rem;font-weight:800;line-height:1.4}
.mg-product-media-caption{margin:8px 2px 0;color:var(--muted,#6b6573);font-size:.84rem;line-height:1.55}
.mg-card-media-video{display:block;width:100%;height:100%;object-fit:contain;background:#08080a}
.mg-card-has-uploaded-media img,.mg-card-has-uploaded-media video{filter:none!important}

.mg-global-promotion{display:flex;align-items:center;justify-content:center;gap:16px;width:100%;padding:10px clamp(16px,4vw,64px);background:#110933;color:#fff;text-decoration:none;text-align:center;position:relative;z-index:35}
.mg-global-promotion .mg-promotion-media{width:54px;height:38px;object-fit:contain;border-radius:7px}
.mg-global-promotion .mg-promotion-copy{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.mg-global-promotion h2{margin:0;font-family:Manrope,sans-serif;font-size:clamp(.86rem,1.5vw,1rem);line-height:1.3;color:inherit}
.mg-global-promotion p{margin:0;font-size:.82rem;color:rgba(255,255,255,.82)}
.mg-global-promotion .mg-promotion-cta{display:inline-flex;padding:6px 11px;border-radius:999px;background:#fc6501;color:#fff;font-size:.76rem;font-weight:800}

.mg-promotion-space{width:min(1480px,calc(100% - 32px));margin:clamp(22px,4vw,48px) auto}
.mg-promotion-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:18px}
.mg-promotion-card{position:relative;display:grid;min-width:0;overflow:hidden;border:1px solid rgba(59,52,87,.14);border-radius:22px;background:#fff;box-shadow:0 16px 45px rgba(17,9,51,.08);color:#110933;text-decoration:none}
.mg-promotion-card>.mg-promotion-media{width:100%;aspect-ratio:16/8.5;max-height:520px;object-fit:cover;background:#0d0c11}
.mg-promotion-card .mg-promotion-copy{display:grid;gap:9px;padding:clamp(18px,3vw,28px)}
.mg-promotion-card h2{margin:0;font-size:clamp(1.25rem,2.6vw,2rem);line-height:1.08}
.mg-promotion-card p{margin:0;color:#615a69;line-height:1.65}
.mg-promotion-cta{display:inline-flex;width:max-content;align-items:center;justify-content:center;margin-top:4px;padding:9px 14px;border-radius:999px;background:#3b3457;color:#fff;font-weight:800;font-size:.84rem}
.mg-promotion-card:hover{transform:translateY(-2px);box-shadow:0 20px 50px rgba(17,9,51,.12)}

.mg-dynamic-promotion-slide{position:relative!important;display:block!important;padding:0!important;background:#0d0c11!important}
.mg-dynamic-promotion-slide>.mg-promotion-media{display:block;width:100%;height:100%;aspect-ratio:2048/910;object-fit:cover}
.mg-dynamic-promotion-slide .mg-promotion-copy{position:absolute;left:clamp(18px,5vw,78px);bottom:clamp(18px,5vw,64px);max-width:min(650px,78%);padding:clamp(16px,3vw,28px);border:1px solid rgba(255,255,255,.24);border-radius:18px;background:rgba(17,9,51,.76);backdrop-filter:blur(12px);color:#fff}
.mg-dynamic-promotion-slide h2{margin:0;font-size:clamp(1.35rem,4vw,3.1rem);line-height:1.04;color:#fff}
.mg-dynamic-promotion-slide p{margin:8px 0 0;color:rgba(255,255,255,.86);line-height:1.55}
.mg-dynamic-promotion-slide .mg-promotion-cta{margin-top:14px;background:#fc6501}

html[data-theme="dark"] .mg-product-media-stage,html[data-theme="dark"] .mg-product-media-thumb,html[data-theme="dark"] .mg-promotion-card{background:#1b1b1d;border-color:rgba(255,255,255,.12)}
html[data-theme="dark"] .mg-product-media-thumb.is-active{border-color:#a89ec4!important;box-shadow:0 0 0 2px rgba(168,158,196,.2)!important}
html[data-theme="dark"] .mg-promotion-card{color:#f7f4fb}
html[data-theme="dark"] .mg-promotion-card p{color:#c7c1ce}

@media(max-width:720px){.mg-product-media-stage{min-height:270px;border-radius:16px}.mg-product-media-thumb{flex-basis:72px!important;width:72px!important;height:60px!important;min-height:60px!important}.mg-promotion-space{width:min(100% - 20px,1480px);margin:22px auto}.mg-dynamic-promotion-slide .mg-promotion-copy{left:12px;right:12px;bottom:12px;max-width:none;padding:14px}.mg-dynamic-promotion-slide>.mg-promotion-media{aspect-ratio:4/3}.mg-global-promotion{padding:9px 12px}.mg-global-promotion .mg-promotion-media{display:none}.mg-global-promotion p{display:none}}
@media(prefers-reduced-motion:reduce){.mg-promotion-card{transition:none!important}.mg-dynamic-promotion-slide video{animation:none!important}}


/* v1.233 hard replacement: a valid uploaded image/video is the only card visual. */
.mg-card-has-uploaded-media .product-image-link,
.mg-card-has-uploaded-media .store-feature-image,
.mg-card-media-stage-live {
  background: var(--mg220-card-stage, var(--surface, #f6f3fc)) !important;
  background-image: none !important;
  outline: none !important;
}
.mg-card-has-uploaded-media .product-image-link::before,
.mg-card-has-uploaded-media .product-image-link::after,
.mg-card-media-stage-live::before,
.mg-card-media-stage-live::after {
  content: none !important;
  display: none !important;
  background: none !important;
}
.mg-card-has-uploaded-media .product-image-link > img[src*="image-needed"],
.mg-card-has-uploaded-media .product-image-link > img:not([data-uploaded-product-media="true"]),
.mg-card-has-uploaded-media .product-image-link > video:not([data-uploaded-product-media="true"]) {
  display: none !important;
}
html[data-theme] body #storeGrid .mg-card-v220-link > .product-image-link > :is(.mg-card-media-image,.mg-card-media-video) {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  padding: clamp(10px, 2.5vw, 20px) !important;
  border-radius: 0 !important;
  object-fit: contain !important;
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
}
html[data-theme] body #storeGrid .mg-card-v220-link > .product-image-link > .mg-card-media-video {
  padding: 0 !important;
  background: #09090b !important;
}
html[data-theme="dark"] .mg-card-media-stage-live {
  background: var(--mg220-card-stage, #272233) !important;
}
html[data-theme] body #storeGrid .mg-card-v220-link > .product-image-link.mg-card-media-stage-live {
  background: var(--mg220-card-stage, var(--surface, #f6f3fc)) !important;
  background-image: none !important;
  box-shadow: none !important;
}
