/* _cgpjvvcv2 */
/* Reset and base */
*,
*::before,
*::after {box-sizing: border-box}
html, body {margin: 0;padding: 0}
html {-webkit-text-size-adjust: 100%}
body {color: #1a1a1a;background: #0b0d12;line-height: 1.6;font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, "Noto Sans CJK SC", sans-serif}
img {display: block;max-width: 100%}
a {color: inherit;text-decoration: none}

:root {--primary-600: #db2777;--ring: 0 0 0 3px rgba(236, 72, 153, 0.35);--radius: 14px;--card: #0f1320;--card-2: #0e1424;--bg-soft: #121625;--shadow: 0 10px 30px rgba(0,0,0,0.35);--primary-700: #be185d;--green: #22c55e;--text: #e6e9ef;--radius-sm: 10px;--muted: #9aa3b2;--primary: #ec4899;--ios: #7b7fff;--bg: #0b0d12;--android: #1db954}

.container {margin: 0 auto;width: min(1160px, calc(100% - 32px))}

.center {text-align: center}
.muted {color: var(--muted)}
.mini {font-size: 12px}
.sr-only {clip: rect(0,0,0,0);white-space: nowrap;height: 1px;padding: 0;border: 0;overflow: hidden;position: absolute;margin: -1px;width: 1px}

/* Header */
.site-header {z-index: 50;top: 0;position: sticky;background: rgba(11, 13, 18, 0.6);border-bottom: 1px solid rgba(255,255,255,0.06);backdrop-filter: saturate(180%) blur(10px)}
.header-inner {padding: 14px 0;display: flex;align-items: center;justify-content: space-between}
.brand {align-items: center;gap: 10px;color: var(--text);display: flex}
.logo {width: 32px;height: 32px}
.logo.small {width: 24px;height: 24px}
.brand-name {letter-spacing: 0.5px;font-weight: 600}
.nav {gap: 18px;display: flex}
.nav a {color: var(--muted);border-radius: 8px;padding: 8px 10px}
.nav a:hover {color: var(--text);background: rgba(255,255,255,0.04)}
.nav-toggle {align-items: center;display: none;width: 36px;padding: 0;cursor: pointer;gap: 4px;height: 32px;background: rgba(17, 24, 39, 0.8);border: 1px solid rgba(255,255,255,0.12);justify-content: center;flex-direction: column;border-radius: 8px}
.nav-toggle span {transition: transform .16s ease, opacity .16s ease;border-radius: 999px;width: 18px;height: 2px;display: block;background: #e5e7eb}
body.nav-open .nav-toggle span:nth-child(1) {transform: translateY(6px) rotate(45deg)}
body.nav-open .nav-toggle span:nth-child(2) {opacity: 0}
body.nav-open .nav-toggle span:nth-child(3) {transform: translateY(-6px) rotate(-45deg)}

/* Hero */
.hero {background:
		radial-gradient(1200px 400px at 50% -100px, rgba(236, 72, 153, 0.15), transparent 60%),
		radial-gradient(700px 300px at 80% 20%, rgba(236, 72, 153, 0.12), transparent 70%);padding: 72px 0 32px}
.hero-inner {align-items: center;display: grid;grid-template-columns: 1.2fr 1fr;gap: 32px}
.hero-art {justify-content: flex-end;display: flex}
.hero-image {background-repeat: no-repeat;background-image: url('../img/tianxiang-app.jpg');aspect-ratio: 3 / 2;border: 1px solid rgba(255,255,255,0.08);max-width: 480px;width: 100%;box-shadow: var(--shadow);background-position: center;background-size: cover;border-radius: 26px}
.hero-copy {text-align: left}
.hero-copy h1 {color: var(--text);font-size: 40px;margin: 0 0 12px;line-height: 1.2}
.hero-copy p {margin: 0 0 18px;color: var(--muted)}
.cta {margin: 18px 0;flex-wrap: wrap;justify-content: flex-start;gap: 12px;display: flex}

.btn {user-select: none;background: #1b2237;color: var(--text);padding: 12px 18px;cursor: pointer;align-items: center;border-radius: 12px;transition: transform .12s ease, background .12s ease, color .12s ease, border-color .12s ease;border: 1px solid rgba(255,255,255,0.08);justify-content: center;display: inline-flex}
.btn:hover {background: #232a42;transform: translateY(-1px)}
.btn:active {transform: translateY(0)}
.btn-primary {border-color: transparent;background: linear-gradient(180deg, var(--primary), var(--primary-700))}
.btn-primary:hover {box-shadow: var(--ring);filter: brightness(1.03)}
.btn-ghost {border-color: rgba(255,255,255,0.16);background: transparent}
.btn-text {background: transparent;border: none;color: var(--primary);padding: 8px 6px}

.device-card {margin-left: auto;border-radius: 28px;background: linear-gradient(180deg, #0e1424, #0b1020);box-shadow: var(--shadow);border: 1px solid rgba(255,255,255,0.06);max-width: 360px;padding: 16px}
.device-screen {min-height: 260px;padding: 22px;border-radius: 22px;color: var(--text);background: radial-gradient(600px 240px at 50% -10%, rgba(236, 72, 153, 0.2), rgba(17, 21, 35, 1))}
.screen-title {margin-bottom: 12px;font-weight: 700}
.screen-points {padding-left: 18px;color: var(--muted);margin: 0}
.screen-points li {margin: 6px 0}

/* Download */
.download {padding: 40px 0}
.download h2, .games h2, .features h2, .guide h2, .faq h2 {margin: 0 0 16px;color: var(--text)}
.download-grid {gap: 18px;display: grid;grid-template-columns: repeat(3, minmax(0, 1fr))}
.card {border-radius: var(--radius);border: 1px solid rgba(255,255,255,0.06);color: var(--text);padding: 18px;background: linear-gradient(180deg, var(--card), var(--card-2))}
.card-head {align-items: center;justify-content: space-between;margin-bottom: 8px;display: flex}
.platform {gap: 10px;align-items: center;display: flex}
.badge {border-radius: 999px;color: #0a0d14;display: inline-flex;padding: 4px 8px;background: #cbd5e1;font-weight: 600;font-size: 12px;align-items: center}
.badge.android {background: var(--android)}
.badge.ios {background: var(--ios);color: #0a0d14}
.badge.qrcode {background: #ffd166}
.card-body .actions {margin-top: 12px;align-items: center;display: flex;gap: 10px}
.qr-card {display: grid;justify-items: center;gap: 12px}
.qr {background: #0f1320;border-radius: 12px;border: 1px solid rgba(255,255,255,0.06);width: 140px;height: 140px}

/* Games */
.games {padding: 16px 0 8px}
.game-grid {justify-content: center;flex-wrap: wrap;gap: 16px;display: flex}
.game-card {border-radius: 18px;padding: 11px 14px;column-gap: 12px;color: var(--text);grid-template-columns: 91px 1fr;box-shadow: var(--shadow);display: grid;width: 362px;height: 160px;background: linear-gradient(180deg, var(--card), var(--card-2));border: 1px solid rgba(255,255,255,0.06)}
.game-left {display: flex;justify-content: center;text-align: left;gap: 4px;align-items: flex-start;flex-direction: column}
.game-icon {width: 67px;object-fit: cover;box-shadow: 0 8px 18px rgba(15, 23, 42, 0.35);height: 67px;border-radius: 18px}
.game-title {font-weight: 700;margin-top: 4px;font-size: 14px}
.game-meta {color: var(--muted);font-size: 10px}
.game-count {font-size: 10px;margin-top: 4px;color: var(--muted)}
.game-download-btn {border-radius: 999px;min-width: 81px;box-shadow: 0 10px 18px rgba(37, 99, 235, 0.45);color: #ffffff;padding: 0;height: 37px;background: #0085ff;margin-top: 6px;font-weight: 600}
.game-right {align-items: center;justify-content: center;display: flex}
.game-right img {box-shadow: 0 10px 24px rgba(0,0,0,0.45);height: 133px;max-height: 100%;width: 236px;border-radius: 16px;max-width: 100%;object-fit: cover}

/* Features */
.features {padding: 16px 0 8px}
.feature-grid {gap: 16px;display: grid;grid-template-columns: repeat(4, minmax(0, 1fr))}
.f-item {color: var(--text);background: linear-gradient(180deg, var(--card), var(--card-2));padding: 16px;border: 1px solid rgba(255,255,255,0.06);border-radius: var(--radius)}
.f-item h3 {margin: 0 0 6px}
.f-item p {color: var(--muted);margin: 0}

/* Guide */
.guide {padding: 16px 0 8px}
.steps {display: grid;gap: 12px}
.step {color: var(--text);grid-template-columns: 32px 1fr;display: grid;background: linear-gradient(180deg, var(--card), var(--card-2));padding: 12px;border: 1px solid rgba(255,255,255,0.06);gap: 12px;border-radius: var(--radius)}
.step-index {font-weight: 700;border-radius: 10px;color: var(--text);background: #1f2a46;justify-content: center;align-items: center;display: inline-flex}
.step-body h4 {margin: 2px 0 6px}
.step-body p {color: var(--muted);margin: 2px 0}

/* FAQ */
.faq {padding: 16px 0 48px}
.faq-list details {padding: 10px 14px;border: 1px solid rgba(255,255,255,0.06);border-radius: var(--radius);background: linear-gradient(180deg, var(--card), var(--card-2));color: var(--text)}
.faq-list details + details {margin-top: 10px}
.faq-list summary {cursor: pointer}
.faq-list p {margin: 8px 0 0;color: var(--muted)}

/* Mobile Download Bar */
.mobile-download-bar {bottom: 16px;left: 16px;right: 16px;background: transparent;z-index: 100;display: none;padding: 0;position: fixed}
.mobile-download-inner {backdrop-filter: blur(20px) saturate(180%);border-radius: 16px;gap: 12px;justify-content: space-between;padding: 12px 16px;background: linear-gradient(180deg, var(--card), var(--card-2));border: 1px solid rgba(255,255,255,0.08);box-shadow: 0 8px 32px rgba(0,0,0,0.4), 0 2px 8px rgba(0,0,0,0.2);align-items: center;max-width: 100%;display: flex}
.mobile-download-left {display: flex;flex: 1;gap: 12px;min-width: 0;align-items: center}
.mobile-download-logo {width: 50px;height: 50px;border-radius: 12px;object-fit: cover;flex-shrink: 0}
.mobile-download-text {flex: 1;gap: 4px;min-width: 0;display: flex;flex-direction: column}
.mobile-download-title {font-weight: 700;font-size: 16px;color: var(--text);line-height: 1.2}
.mobile-download-desc {line-height: 1.3;color: var(--muted);font-size: 12px}
.mobile-download-btn {border: none;cursor: pointer;flex-shrink: 0;background: linear-gradient(180deg, var(--primary), var(--primary-700));box-shadow: 0 4px 12px rgba(236, 72, 153, 0.3);color: #ffffff;border-radius: 24px;padding: 10px 24px;transition: background 0.2s ease, transform 0.1s ease, box-shadow 0.2s ease;font-size: 14px;font-weight: 600;white-space: nowrap}
.mobile-download-btn:hover {filter: brightness(1.1);box-shadow: 0 6px 16px rgba(236, 72, 153, 0.4)}
.mobile-download-btn:active {transform: scale(0.98)}

/* Footer */
.site-footer {background: rgba(11, 13, 18, 0.6);padding: 32px 0 24px;border-top: 1px solid rgba(255,255,255,0.06)}
.footer-inner {justify-content: space-between;align-items: flex-start;display: flex;gap: 32px;color: var(--muted)}
.footer-left {display: flex;flex: 1;gap: 12px;flex-direction: column}
.footer-desc {max-width: 420px;margin: 0;line-height: 1.6}
.footer-copyright {white-space: nowrap;margin: 0;align-self: flex-end}

/* Modal */
.modal {display: none;position: fixed;inset: 0}
.modal[aria-hidden="false"] {display: block}
.modal-backdrop {backdrop-filter: blur(2px);inset: 0;position: absolute;background: rgba(0,0,0,0.6)}
.modal-dialog {padding: 16px;background: linear-gradient(180deg, var(--card), var(--card-2));border-radius: 18px;position: absolute;inset: 0;border: 1px solid rgba(255,255,255,0.08);height: auto;margin: auto;top: 10vh;width: min(92vw, 420px);color: var(--text)}
.modal-close {position: absolute;font-size: 22px;right: 8px;cursor: pointer;border: none;color: var(--muted);top: 6px;background: transparent}
.qr-large {display: block;border-radius: 14px;width: 260px;margin: 12px auto 0;border: 1px solid rgba(255,255,255,0.06);background: #0f1320;height: 260px}

/* Responsive */
@media (max-width: 980px) {.hero {
		padding-top: 24px}
	.hero-inner {display: flex;flex-direction: column;grid-template-columns: 1fr;gap: 24px}
	.hero-copy {order: 2;text-align: center}
	.hero-copy .cta {justify-content: center}
	.hero-art {order: 1;justify-content: center}
	.hero-image {margin: 0 auto}
	.device-card {margin: 8px auto 0}
	.download-grid {grid-template-columns: 1fr}
	.game-grid {grid-template-columns: 1fr}
	.feature-grid {grid-template-columns: 1fr 1fr}
	.footer-inner {align-items: flex-start;gap: 20px;flex-direction: column}
	.footer-left {width: 100%}
	.footer-copyright {align-self: flex-start}
}
@media (max-width: 768px) {.mobile-download-bar {
		display: block}
	.site-footer {padding-bottom: 76px}
}
@media (max-width: 520px) {.hero-copy h1 { font-size: 32px}
	.header-inner {padding: 10px 0}
	.nav-toggle {display: flex}
	.nav {background: rgba(15, 23, 42, 0.98);display: none;box-shadow: 0 18px 40px rgba(0,0,0,0.55);padding: 8px;flex-direction: column;right: 16px;position: absolute;gap: 4px;border: 1px solid rgba(255,255,255,0.08);z-index: 60;top: 54px;min-width: 150px;border-radius: 14px}
	.nav a {padding: 8px 10px;display: block}
	body.nav-open .nav {display: flex}
}



._ce7gkyfqe{}

._cka24v9e7{}

._czjuq51eo{}
