.social-proof { padding-bottom: 30px; }
.rating-summary { color: #ffd166; font: 700 18px Orbitron; }
.top-products { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; margin-top: 24px; }
.top-product { border: 1px solid var(--line); background: linear-gradient(145deg, #101e32, #09111e); border-radius: 13px; padding: 16px; transition: transform .2s, border-color .2s, box-shadow .2s; }
.top-product:hover { transform: translateY(-3px) scale(1.01); border-color: #39b9ff75; box-shadow: 0 12px 30px #0008, 0 0 24px #1ba8ff1c; }
.top-rank { color: var(--cyan); font: 700 12px Orbitron; }
.top-product h3 { font: 700 14px/1.35 Orbitron; min-height: 38px; }
.stars { color: #ffd166; letter-spacing: 2px; }
.review-list { display: grid; gap: 12px; margin-top: 18px; min-width: 0; }
.review { min-width: 0; border: 1px solid var(--line); background: #091423; border-radius: 12px; padding: 16px; }
.review-head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; min-width: 0; }
.review p { color: #bfd0e3; margin: 8px 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.review small { color: var(--muted); }
.status.updated { color: #67d8ff; border-color: #3fbfff66; background: #12344a; }
.status.testing { color: #ffd166; border-color: #ffd16666; background: #3b3217; }
.status.updating { color: var(--orange); border-color: #ffad4266; background: #3d2f17; }
.status.product-status { position: static; white-space: nowrap; margin-left: auto; }
.product-state-text.online { color: var(--green); }
.product-state-text.updated { color: #67d8ff; }
.product-state-text.testing, .product-state-text.updating { color: var(--orange); }
.product-state-text.offline { color: var(--red); }
.product-state-text.unknown { color: var(--muted); }
.modal-top .product-status + .close-button { margin-left: 0; }
.notice p { margin: 7px 0 0; }
.product-overview { margin: 16px 0; }
.product-description { display: block; color: #c4d6e8; font-size: 17px; overflow-wrap: anywhere; }
.product-description-line { display: block; overflow-wrap: anywhere; }
.product-description-line strong { color: #f4f9ff; font-weight: 800; }
.product-description-heading { display: block; margin-top: 12px; color: #f4f9ff; font: 750 16px/1.35 Orbitron; letter-spacing: .015em; }
.product-description-heading:first-child { margin-top: 0; }
.product-description-gap { display: block; height: 8px; }
.product-media-modal { width: min(920px, calc(100% - 28px)); }
.product-media { margin-bottom: 18px; }
.product-media-tabs { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 11px; }
.product-media-tab { appearance: none; border: 1px solid #315676; border-radius: 10px; background: rgba(7, 17, 31, .78); color: #bdd2e7; padding: 9px 13px; font: inherit; font-weight: 700; cursor: pointer; transition: border-color .18s ease, box-shadow .18s ease, color .18s ease, transform .18s ease; }
.product-media-tab span { color: #72d9ff; margin-left: 4px; }
.product-media-tab:hover { border-color: #30bfff; color: #fff; transform: translateY(-1px); }
.product-media-tab.active { border-color: #37c7ff; color: #fff; background: linear-gradient(135deg, rgba(13, 99, 165, .66), rgba(74, 76, 210, .48)); box-shadow: 0 0 0 1px rgba(55, 199, 255, .2), 0 0 18px rgba(33, 174, 255, .25); }
.product-media-panel[hidden] { display: none; }
.product-gallery { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(210px, 72%); gap: 10px; overflow-x: auto; padding: 3px 2px 10px; scroll-snap-type: x mandatory; }
.gallery-item { display: grid; place-items: center; min-height: 145px; padding: 8px; overflow: hidden; border: 1px solid #315676; border-radius: 12px; background: #030912; cursor: zoom-in; scroll-snap-align: start; transition: border-color .2s ease, box-shadow .2s ease; }
.gallery-item img { display: block; width: 100%; height: 240px; object-fit: contain; }
.gallery-item:hover { border-color: #39b9ff; box-shadow: 0 0 18px #1ba8ff2b; }
.product-video-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.product-video-item { overflow: hidden; border: 1px solid #315676; border-radius: 12px; background: rgba(7, 17, 31, .82); }
.product-video-frame { aspect-ratio: 16 / 9; background: #030912; }
.product-video-frame iframe, .product-video-frame video { display: block; width: 100%; height: 100%; border: 0; object-fit: contain; }
.product-video-open { display: block; width: 100%; border: 0; border-top: 1px solid #315676; padding: 9px 11px; background: #0b1a2c; color: #76d8ff; font: 700 14px Rajdhani; text-align: left; cursor: pointer; }
.product-video-open:hover { color: #fff; background: #12304e; }
.media-lightbox { width: min(1180px, calc(100% - 28px)); max-width: 1180px; }
.media-lightbox-content { padding: 18px; }
.media-lightbox-content .modal-top { align-items: center; margin-bottom: 12px; }
.media-lightbox-content .modal-top h2 { margin: 0; font-size: clamp(16px, 2vw, 24px); }
.media-lightbox-image, .media-lightbox-video { display: block; width: 100%; max-height: 82vh; object-fit: contain; border: 1px solid #315676; border-radius: 12px; background: #020711; }
.media-lightbox-frame { display: block; width: 100%; aspect-ratio: 16 / 9; max-height: 82vh; border: 1px solid #315676; border-radius: 12px; background: #020711; }
.feature-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px 18px; padding-left: 20px; color: #9fdfff; }
@media (max-width: 620px) { .feature-list, .product-video-gallery { grid-template-columns: 1fr; } .product-gallery { grid-auto-columns: 88%; } .gallery-item img { height: 190px; } .product-media-tab { flex: 1 1 auto; } }
.review-meta { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 9px; }
.review-media { display: block; width: 100%; max-width: 100%; margin-top: 12px; overflow: hidden; border: 1px solid #315676; border-radius: 10px; background: #050b14; }
.review-media img, .review-media video { display: block; width: 100%; max-width: 100%; max-height: 520px; object-fit: contain; }
.review-media-image { padding: 0; color: inherit; cursor: zoom-in; }
.review-media-image img { transition: transform .2s ease; }
.review-media-image:hover img { transform: scale(1.015); }
.review-range { display: block; margin-top: 3px; }
.review-pagination { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 7px; margin-top: 4px; }
.review-page-gap { color: var(--muted); padding: 0 2px; }
.review-modal { width: min(980px, calc(100% - 28px)); max-width: 980px; overflow-x: hidden; }
.review-modal .modal-content { max-height: min(88vh, 920px); overflow-y: auto; overflow-x: hidden; }
.review-modal .review-head .stars { white-space: nowrap; }
.checkbox-field { display: flex; align-items: flex-start; gap: 10px; border: 1px solid #9b6b28; background: #2a2111; padding: 13px 14px; border-radius: 10px; color: #ffd38c; }
.checkbox-field input { width: 18px; height: 18px; margin: 3px 0 0; accent-color: var(--blue); flex: 0 0 auto; }
.mobile-category-picker{display:none;color:var(--muted);font-weight:700}.mobile-category-picker select{display:block;width:100%;margin-top:6px;border:1px solid #39b9ff;background:#081728;color:#fff;border-radius:11px;padding:12px;font:700 16px Rajdhani;box-shadow:0 0 18px #1ba8ff22}
@media(max-width:760px){.category-tabs{display:none}.mobile-category-picker{display:block;position:sticky;top:8px;z-index:7;padding:8px;background:#06101dde;border-radius:12px;backdrop-filter:blur(12px)}.catalog-grid{grid-template-columns:1fr}.site-header nav{max-width:100%;overflow-x:auto;white-space:nowrap}}

.top-product-actionable { cursor: pointer; }
.top-product-actionable:focus-visible { outline: 2px solid var(--cyan); outline-offset: 3px; }
.top-product-buy { width: 100%; margin-top: 14px; pointer-events: none; }

.hero { display: grid; grid-template-columns: minmax(0, .82fr) minmax(430px, 1.18fr); align-items: center; gap: clamp(35px, 5vw, 90px); }
.hero-copy { position: relative; z-index: 2; min-width: 0; }
.hero-launcher { position: relative; z-index: 2; margin: 0; border: 1px solid #3dbbff75; border-radius: 18px; padding: 8px; background: linear-gradient(145deg, #13263bd9, #070d18ed); box-shadow: 0 28px 80px #000b, 0 0 18px #27b5ff6b, 0 0 65px #285dff35; transform: perspective(1200px) rotateY(-3deg) rotateX(1deg); transition: transform .35s ease, box-shadow .35s ease; }
.hero-launcher::before { content: ""; position: absolute; inset: -24px; z-index: -1; border-radius: 30px; background: radial-gradient(ellipse at center, #2c9eff42, transparent 68%); filter: blur(20px); }
.hero-launcher:hover { transform: perspective(1200px) rotateY(0) rotateX(0) translateY(-4px); box-shadow: 0 32px 90px #000c, 0 0 24px #3bc7ff8a, 0 0 80px #4c56ff47; }
.hero-launcher img { display: block; width: 100%; height: auto; border-radius: 11px; }

@media (max-width: 1100px) {
  .hero { grid-template-columns: 1fr; padding-top: 72px; }
  .hero-launcher { width: min(900px, 100%); transform: none; }
}

@media (max-width: 760px) {
  .hero { gap: 36px; }
  .hero-launcher { padding: 4px; border-radius: 12px; }
}
/* Compact storefront surface used by the signed VexOS Launcher WebView. */
body.launcher-mode .hero,
body.launcher-mode .social-proof,
body.launcher-mode .site-header nav {
  display: none;
}

body.launcher-mode .site-header {
  min-height: 76px;
  padding-block: 10px;
}

body.launcher-mode main {
  padding-top: 82px;
}

body.launcher-mode .catalog-section {
  padding-top: 20px;
}

body.launcher-mode .catalog-section .section-heading {
  margin-bottom: 18px;
}
.crypto-quote-copy {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0.7rem 0;
}
.product-description .discord-text-line,.product-description .discord-heading,.product-description .discord-subtext,.product-description .discord-list-item,.product-description .discord-quote{display:block}.product-description .discord-empty-line{height:.55em}.product-description .discord-heading{margin:.55em 0 .25em;color:#f4f8ff;font-weight:800;line-height:1.2}.product-description .discord-heading-1{font-size:1.45em}.product-description .discord-heading-2{font-size:1.25em}.product-description .discord-heading-3{font-size:1.1em}.product-description .discord-list-item{display:grid;grid-template-columns:1.35em minmax(0,1fr);padding-left:calc(.35em + var(--discord-list-depth,0)*1.2em)}.product-description .discord-quote{margin:.25em 0;padding:.3em .7em;border-left:4px solid #b5bac1;background:#3f4147;color:#f2f3f5}.product-description .discord-quote+.discord-quote{margin-top:-.25em}.product-description .discord-subtext{color:var(--muted);font-size:.86em}.product-description .discord-code-block{position:relative;display:block;max-width:100%;overflow:auto;white-space:pre-wrap;border:1px solid #315676;background:#020914;border-radius:8px;padding:12px}.product-description .discord-code-language{display:block;margin:-4px 0 8px;color:#7fa0bd;font-size:11px;text-transform:uppercase}.product-description .discord-spoiler{border:0;border-radius:3px;padding:0 .18em;background:#17191c;color:transparent;cursor:pointer;font:inherit}.product-description .discord-spoiler.revealed{background:#2b2d31;color:inherit}

/* Payment data includes intentionally unbroken IDs, keys, addresses, and TXIDs. */
#checkoutDialog {
  max-width: calc(100vw - 20px);
  max-height: calc(100vh - 20px);
  max-height: calc(100dvh - 20px);
  overflow-x: hidden;
  overflow-y: auto;
}
#checkoutDialogBody,
#checkoutDialog .modal-content,
#checkoutDialog .modal-top,
#checkoutDialog .modal-top > div,
#checkoutDialog .summary,
#checkoutDialog .payment-tabs,
#checkoutDialog #paymentBody,
#checkoutDialog .notice,
#checkoutDialog .field {
  min-width: 0;
  max-width: 100%;
}
#checkoutDialog .modal-content { overflow-x: hidden; }
#checkoutDialog .modal-top .eyebrow {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}
#checkoutDialog .modal-top .close-button { flex: 0 0 auto; }
#checkoutDialog .summary > *,
#checkoutDialog .notice,
#checkoutDialog .field,
#checkoutDialog .key-box,
#checkoutDialog .address {
  overflow-wrap: anywhere;
  min-width: 0;
}
#checkoutDialog input,
#checkoutDialog select,
#checkoutDialog button,
#checkoutDialog a { max-width: 100%; }
#checkoutDialog .payment-tabs { flex-wrap: wrap; }

@media (max-width: 620px) {
  #checkoutDialog {
    width: calc(100vw - 16px);
    max-width: calc(100vw - 16px);
    margin-inline: auto;
  }
  #checkoutDialog .modal-content { padding: 18px 14px; }
  #checkoutDialog .modal-top { gap: 10px; }
  #checkoutDialog .modal-top h2 {
    font-size: clamp(22px, 7vw, 29px);
    overflow-wrap: anywhere;
  }
  #checkoutDialog .summary {
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 13px;
  }
  #checkoutDialog .summary strong:last-child { font-size: 16px; }
  #checkoutDialog .payment-tabs .tab { flex: 1 1 auto; }
}
