﻿/* ===== jilicola 钀藉湴椤?鈥?Google Play 椋庢牸 ===== */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;600;700&display=swap');

* { margin: 0; padding: 0; box-sizing: border-box; }

body {
  font-family: 'Roboto', sans-serif;
  background: #fff;
  color: #5f6368;
  -webkit-tap-highlight-color: transparent;
}

/* 椤甸潰 */
.gp-page {
  width: 100%;
  min-height: 100vh;
  min-height: 100dvh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding-bottom: env(safe-area-inset-bottom);
}

.gp-wrap {
  display: flex;
  flex-direction: column;
  gap: 5.067vw;
  margin: 0 auto;
  padding: 6vw 0;
  width: calc(100% - 12.267vw);
}

@media (min-width: 1024px) { .gp-wrap { zoom: .35; } }
@media (min-width: 1600px) { .gp-wrap { zoom: .245; } }

/* ===== 澶撮儴 ===== */
.gp-header {
  display: flex;
  gap: 6.133vw;
  align-items: center;
}

.gp-logo {
  width: 18.4vw;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 2.667vw;
}

.gp-header-info {
  flex: 1;
  overflow: hidden;
  font-size: 3.067vw;
  line-height: 4vw;
}

.gp-app-name { color: #000; font-size: 5.333vw; font-weight: 700; line-height: 1.4; }
.gp-app-sub { color: #01875f; font-size: 5.12vw; }
.gp-app-verify { font-size: 3.067vw; }

/* ===== 璇勫垎缁熻 ===== */
.gp-stats {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.gp-stat {
  flex: 1;
  text-align: center;
  font-size: 3.067vw;
  line-height: 4vw;
  position: relative;
}

.gp-stat:not(:last-child)::after {
  content: '';
  position: absolute;
  right: 0; top: 50%;
  transform: translateY(-50%);
  width: .267vw; height: 6.133vw;
  background: #e8eaed;
}

.gp-stat-val { color: #000; font-size: 3.6vw; font-weight: 600; line-height: 5.2vw; }

/* ===== 瀹夎鎸夐挳 ===== */
.gp-install-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: #01875f;
  border-radius: 2.133vw;
  color: #fff;
  font-size: 3.067vw;
  line-height: 4vw;
  min-height: 14.667vw;
  width: 100%;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  transition: background .15s ease;
}

.gp-install-btn:active { background: rgba(1,135,95,.85); }

.gp-install-btn::after {
  content: '';
  display: inline-block;
  position: absolute;
  left: 0; top: -24vw;
  width: 4vw; height: 100%;
  background-color: #fff;
  animation: shiny 5s ease-in-out infinite;
}

@keyframes shiny {
  0%   { opacity: 0; transform: scale(0) rotate(45deg); }
  80%  { opacity: .5; transform: scale(0) rotate(45deg); }
  81%  { opacity: 1; transform: scale(4) rotate(45deg); }
  100% { opacity: 0; transform: scale(50) rotate(45deg); }
}

.gp-install-title {
  display: flex;
  gap: 1.067vw;
  align-items: center;
  color: #ffe336;
}

.gp-install-title svg { width: 3.067vw; height: 4.133vw; }

/* ===== 瀹夎鐘舵€?===== */
.gp-status {
  min-height: 5vw;
  font-size: 2.8vw;
  color: #5f6368;
  text-align: center;
}

.gp-status.is-success { color: #01875f; }
.gp-status.is-warn { color: #f9a825; }

/* ===== 鍒嗕韩 ===== */
.gp-share {
  display: flex;
  justify-content: center;
  gap: 6.133vw;
}

.gp-share-item {
  display: flex;
  align-items: center;
  gap: 3.067vw;
  color: #01875f;
}

.gp-share-item svg { width: 6.133vw; height: 6.133vw; }

/* ===== 娈佃惤 ===== */
.gp-section {
  display: flex;
  flex-direction: column;
  gap: 3.067vw;
}

.gp-section-title {
  color: #202124;
  font-size: 4.613vw;
  font-weight: 700;
  line-height: 1.4;
}

.gp-text { line-height: 5.128vw; overflow-wrap: break-word; }

.gp-update { display: flex; flex-direction: column; gap: 2vw; margin-top: 2vw; }
.gp-update-label { color: #202124; font-weight: 700; }

/* ===== 瀹夊叏鏁版嵁 ===== */
.gp-safety {
  display: flex;
  flex-direction: column;
  gap: 4vw;
  border: .267vw solid #e5e7eb;
  border-radius: 2vw;
  padding: 6.4vw;
}

.gp-safety-item {
  display: flex;
  gap: 4vw;
  line-height: 5.128vw;
  align-items: flex-start;
}

.gp-safety-item svg { width: 4vw; height: 4vw; flex-shrink: 0; margin-top: .5vw; }
.gp-safety-item span { flex: 1; }

/* ===== 璁惧鏍囩 ===== */
.gp-device-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 2.533vw 4vw;
  margin-top: 2.533vw;
}

.gp-tag {
  display: flex;
  align-items: center;
  justify-content: center;
  border: .267vw solid #dadce0;
  border-radius: 3.845vw;
  height: 5.6vw;
  padding: 0 3.333vw;
  font-size: 3.067vw;
}

.gp-tag--active { background: #e6f3ef; color: #028760; }

/* ===== 璇勫垎 ===== */
.gp-rating {
  display: flex;
  gap: 6vw;
  align-items: center;
  margin-top: 3.067vw;
}

.gp-rating-big { color: #202124; font-size: 14.88vw; line-height: 18.667vw; }

.gp-rating-bars { flex: 1; display: flex; flex-direction: column; gap: 1.333vw; }

.gp-bar { display: flex; align-items: center; gap: 3.6vw; width: 100%; }
.gp-bar > span { font-size: 2.827vw; width: 2vw; text-align: right; }

.gp-bar-track { flex: 1; height: 2.267vw; background: #e3e3e3; border-radius: 1.539vw; min-width: 30vw; }
.gp-bar-fill { height: 100%; background: #028760; border-radius: 1.539vw; width: 0; animation: bar-fill 3s forwards; }

@keyframes bar-fill { from { width: 0; } to { width: var(--w); } }

.gp-rating-count { font-size: 3.067vw; line-height: 6.133vw; }

/* ===== 璇勪环 ===== */
.gp-reviews {
  display: flex;
  flex-direction: column;
  gap: 6.133vw;
  border-bottom: .267vw solid #dadce0;
  margin-top: 3.067vw;
  padding-bottom: 6vw;
}

.gp-review { display: flex; flex-direction: column; gap: 3.067vw; }

.gp-review-user { display: flex; align-items: center; gap: 3.067vw; }
.gp-review-user img { width: 8.133vw; aspect-ratio: 1; border-radius: 50%; object-fit: cover; }
.gp-review-user span { font-weight: 500; color: #202124; }

.gp-review-meta { display: flex; align-items: center; gap: 2vw; font-size: 3.067vw; color: #01875f; margin-top: .4vw; }
.gp-review-meta span { color: #5f6368; }

.gp-review p { line-height: 5.128vw; overflow-wrap: break-word; }

/* ===== 闅愯棌寮曞寮圭獥锛堜繚鐣欑粰 JS 鐢級 ===== */
.guide-modal { display: none; }
