/* JikeTune site additions: actual product identity over the wujidj.cn layout system. */
:root { --lime: #6fe7bc; }

/* Product preview: the embedded app frame already contains its real title bar. */
.product-window { transform: rotateY(-5deg) rotateX(1deg) rotateZ(-1deg); }
.product-window img { width: 100%; height: auto; }
.visual-chip .icon { color: var(--lime); }

/* Four compact membership cards follow the reference site's download-card rhythm. */
.plan-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.plan-card { min-height: 315px; padding: 25px 22px; }
.plan-card h3 { margin: 9px 0 3px; font-size: 20px; }
.plan-card .plan-price { margin: 8px 0 11px; color: #171a15; font-size: 28px; font-weight: 700; letter-spacing: -.04em; }
.plan-card .plan-price small { margin-left: 5px; color: #64685f; font-size: 11px; font-weight: 500; letter-spacing: 0; }
.plan-card p { max-width: 31em; color: #65695f; font-size: 11px; line-height: 1.8; }
.plan-card ul { margin: 16px 0 20px; padding-left: 17px; color: #42463e; font-size: 11px; line-height: 1.85; }
.plan-card .plan-state { margin-top: auto; color: #666a61; font-size: 10px; }
.plan-card .button { margin-top: 12px; }
.button-disabled, .button-disabled:disabled { cursor: not-allowed; opacity: .58; transform: none !important; box-shadow: none !important; }
.plan-card .button-disabled, .plan-card .button-disabled:disabled { background: transparent !important; border-color: #c9cdc1 !important; color: #4e564b !important; }
.plan-card.recommended { background: #d7f2e6; border-color: #b6e7d2; }
.plan-card.recommended .plan-price { color: #113f32; }
.membership-note { margin-top: 18px; padding: 15px 18px; border: 1px solid #d6d9d0; border-radius: 12px; color: #5e6258; font-size: 11px; line-height: 1.8; }

/* Give alternating feature rows enough text width to avoid stranded heading words. */
.feature-detail { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 52px; }
.feature-detail:nth-child(even) { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.feature-detail h2 { font-size: clamp(24px, 2vw, 28px); }
@media (max-width: 900px) {
  .feature-detail, .feature-detail:nth-child(even) { grid-template-columns: 1fr; gap: 26px; padding: 46px 0; }
  .feature-detail:nth-child(even) .feature-detail-image { order: initial; }
}

/* Verified local-build note, support articles, and changelog details. */
.build-note { display: inline-flex; align-items: center; gap: 8px; padding: 7px 12px; border: 1px solid #6fe7bc35; border-radius: 24px; background: #6fe7bc0d; color: var(--lime); font-size: 10px; letter-spacing: .04em; }
.release-pill .arrow { margin-left: 4px; }
.feature-detail-image img { width: 100%; height: auto; }
.feature-detail-copy .feature-tags span { white-space: nowrap; }
.feature-jump a { border: 1px solid var(--line); }
.feature-jump a:hover, .feature-jump a:focus-visible { border-color: #6fe7bc66; color: var(--lime); }
.faq-list details[open] summary { color: var(--lime); }
.docs-sidebar a.is-active { color: var(--lime); }
.docs-sidebar nav { max-height: 65vh; overflow: auto; }
.doc-section h3 { margin: 23px 0 8px; font-size: 16px; }
.doc-section p + p { margin-top: 12px; }
.doc-section ul, .doc-section ol { padding-left: 22px; color: #b2b7c8; font-size: 13px; line-height: 1.95; }
.doc-section li + li { margin-top: 6px; }
.notice a { color: var(--lime); text-decoration: underline; text-underline-offset: 3px; }

/* Keep long headings and plan cards balanced on tablet and mobile. */
@media (max-width: 1000px) {
  .plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .plan-card { min-height: 290px; }
}
@media (max-width: 780px) {
  .plan-grid { grid-template-columns: 1fr; }
  .plan-card { min-height: auto; }
  .feature-detail-image img { aspect-ratio: 16 / 10; object-fit: cover; }
  .membership-note { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .product-window { transform: none; }
}
.source-link.is-disabled { cursor: not-allowed; opacity: .5; }
.source-link.is-disabled:hover { border-color: var(--line); background: #ffffff03; }
.doc-section p, .doc-section li { color: #b2bbcc; }
.docs-sidebar a { color: #a7b0c2; }
.release-body ul { color: #acb5c8; }

/* 免费领取兑换码按钮：底色取自 hero 标题「体验」的绿色（--lime），形态与主按钮一致 */
/* 水平位置：缩进 157px（=「获取客户端」按钮宽 144px + 13px 间距），使其位于「探索核心功能」正下方 */
.hero-redeem { margin-top: 22px; margin-left: 157px; }
@media (max-width: 780px) {
  .hero-redeem { margin-left: 0; }
}
.button.button-redeem { background: var(--lime); border-color: #1a5c33; color: #f3f6ef; box-shadow: 4px 4px 0 #365a2720; }
.button.button-redeem:hover { background: #2c8f54; }
.sponsor-dialog { max-width: 420px; width: calc(100% - 32px); border: 1px solid #383d4e; border-radius: 22px; background: #10131e; color: var(--text); padding: 32px; box-shadow: 0 30px 100px #0008; overflow: hidden; }
.sponsor-dialog::backdrop { background: #01020bc7; backdrop-filter: blur(10px); }
.sponsor-dialog h2 { font-size: 25px; margin: 17px 0 12px; font-weight: 550; }
.sponsor-dialog>p:not(.eyebrow) { font-size: 12px; line-height: 1.8; color: var(--muted); }
.sponsor-qr { margin: 24px auto 18px; padding: 12px; width: fit-content; background: #fff; border-radius: 16px; box-shadow: 0 10px 40px #0006; }
.sponsor-qr img { width: 240px; height: 240px; border-radius: 8px; }
@media (max-width: 480px) {
  .sponsor-dialog { padding: 26px 20px; }
  .sponsor-qr img { width: 200px; height: 200px; }
}
