/* v16 — gaya Gojek: hijau, super-app, minimal */

:root {
  --brand: #00AA13;
  --brand-dark: #00880D;
  --pad: 0.427rem;
  --bottom-bar: 1.92rem;
  --layout-max: var(--layout-max-px, 540px);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
* { scrollbar-width: none; -ms-overflow-style: none; }
*::-webkit-scrollbar { display: none; width: 0; height: 0; }
body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  background: #f7f7f7; color: #1a1a1a;
  padding-bottom: calc(var(--bottom-bar) + env(safe-area-inset-bottom, 0));
}
.page { max-width: var(--layout-max); margin: 0 auto; background: #fff; min-height: 100vh; }

.gojek-head {
  display: flex; align-items: center; gap: 0.213rem;
  padding: calc(0.32rem + env(safe-area-inset-top, 0)) var(--pad) 0.32rem;
  background: var(--brand); color: #fff;
}
.gojek-head span:first-of-type { flex: 1; font-weight: 700; font-size: 0.427rem; }
.gojek-badge {
  font-size: 0.293rem; background: rgba(255,255,255,0.25);
  padding: 0.053rem 0.213rem; border-radius: 0.107rem;
}

.gojek-hero {
  padding: 0.533rem var(--pad) 0.427rem;
  text-align: center;
}
.gojek-hero h1 {
  font-size: 0.64rem; font-weight: 800; line-height: 1.15;
  color: var(--brand-dark);
}
.gojek-hero > p { font-size: 0.373rem; color: #666; margin: 0.213rem 0 0.373rem; }
.hero-icon {
  width: 1.493rem; height: 1.493rem; border-radius: 0.373rem;
  margin: 0.213rem auto;
}
.btn-gojek {
  width: 100%; max-width: 8.533rem; height: 1.12rem; margin-top: 0.32rem;
  border: none; border-radius: 999px;
  background: var(--brand); color: #fff;
  font-size: 0.427rem; font-weight: 700;
}
.meta { font-size: 0.32rem; color: #999; margin-top: 0.267rem; }

.gojek-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.213rem;
  padding: 0 var(--pad) 0.427rem;
}
.gojek-grid div {
  text-align: center; padding: 0.32rem 0.107rem;
  background: #f0fdf2; border-radius: 0.267rem;
}
.gojek-grid .ico { font-size: 0.533rem; display: block; margin-bottom: 0.107rem; }
.gojek-grid b { font-size: 0.347rem; display: block; color: var(--brand-dark); }
.gojek-grid p { font-size: 0.293rem; color: #666; margin-top: 0.053rem; }

.shots { padding: 0 var(--pad) 0.32rem; }
.shots h2 { font-size: 0.4rem; font-weight: 700; margin-bottom: 0.267rem; }
.screenshots { display: flex; gap: 0.213rem; overflow-x: auto; }
.screenshot { flex-shrink: 0; width: 3.467rem; border-radius: 0.213rem; cursor: pointer; }
.hint { font-size: 0.32rem; color: #888; text-align: center; padding: 0 var(--pad) 0.373rem; }

.preview-lightbox { position: fixed; inset: 0; z-index: 300; background: rgba(0,0,0,0.9); display: none; flex-direction: column; }
.preview-lightbox.is-open { display: flex; }
body.preview-open { overflow: hidden; }
.preview-lightbox-close {
  position: absolute; top: calc(0.32rem + env(safe-area-inset-top,0)); right: var(--pad);
  width: 0.853rem; height: 0.853rem; border: none; border-radius: 50%;
  background: var(--brand); color: #fff; font-size: 0.587rem;
}
.preview-lightbox-stage { flex: 1; position: relative; overflow: hidden; }
.preview-lightbox-track { display: flex; height: 100%; transition: transform 0.28s ease-out; }
.preview-lightbox-slide { flex: 0 0 100%; display: flex; align-items: center; justify-content: center; padding: 1rem var(--pad) var(--bottom-bar); }
.preview-lightbox-slide img { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 0.213rem; }
.preview-lightbox-pager { position: absolute; left: 50%; bottom: calc(1.067rem + env(safe-area-inset-bottom,0)); transform: translateX(-50%); color: #fff; font-size: 0.373rem; }

.bottom {
  position: fixed; left: 50%; transform: translateX(-50%); bottom: 0; z-index: 100;
  width: 100%; max-width: var(--layout-max); height: var(--bottom-bar);
  padding: 0 var(--pad); padding-bottom: env(safe-area-inset-bottom, 0);
  background: #fff; border-top: 1px solid #eee;
  display: flex; align-items: center; justify-content: center;
}
.btn-get {
  width: 100%; max-width: 9.147rem; height: 1.28rem; border: none; border-radius: 999px;
  background: var(--brand); color: #fff; font-size: 0.453rem; font-weight: 700;
}
.btn-get:disabled { background: #ccc; }

/* 截图 PNG 已含手机边框 — 关闭 CSS 假机壳/描边 */

.device-frame,
.tvlk-frame,
.mnt-frame,
.sky-frame,
.aur-frame,
.cor-frame,
.ind-frame,
.snd-frame,
.arc-frame,
.fus-frame,
.sh-frame,
.com-frame,
.urg-frame,
.drk-frame,
.frs-frame {
  background: transparent !important;
  padding: 0 !important;
  box-shadow: none !important;
  border: none !important;
  border-radius: 0 !important;
}

.device-frame::before {
  display: none !important;
}

.tvlk-phone-shell,
.mnt-phone-shell,
.sky-phone-shell,
.cor-phone-shell,
.aur-phone-shell {
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  border-radius: 0 !important;
}

.gallery-track .screenshot,
.gallery-track .device-frame img,
.device-frame .screenshot,
.screenshots > .screenshot,
.tvlk-frame img,
.mnt-frame img,
.sky-frame img,
.tvlk-phone-shell img,
.mnt-phone-shell img,
.sky-phone-shell img,
.cor-phone-shell img {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  border-radius: 0 !important;
}

.preview-lightbox-slide img {
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

