html[lang="en"] .app-copy h1 { font-size: clamp(32px, 3.7vw, 52px); line-height: 1.2; letter-spacing: -1.2px; overflow-wrap: break-word; }
html[lang="fa"] .app-copy h1 { font-size: clamp(30px, 3.5vw, 48px); line-height: 1.65; letter-spacing: 0; }
.app-hero { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 45px; }
figure.app-art { margin: 0; padding-bottom: 48px; }
figure.app-art .app-art-caption { inset-inline: 0; padding-inline: 12px; font-family: inherit; font-size: 12px; line-height: 1.7; letter-spacing: 0; }
.app-updated { color: var(--muted); font-size: 12px; margin: 18px 0 24px; }
.app-copy .download-options { grid-template-columns: minmax(0, 1fr); gap: 12px; }
.app-inline-download { grid-template-columns: minmax(0, 1fr); margin-block: 24px; }
.download-options .button { width: 100%; min-height: 45px; border: 1px solid transparent; border-radius: 999px; padding: 11px 19px; font-size: 13px; line-height: 1.5; font-weight: 700; gap: 0; white-space: normal; text-align: center; }
.download-options .download-apk { background: linear-gradient(110deg, #d91e38, #ff4051); border-color: #ff6270; box-shadow: 0 8px 24px #d91e3826; }
.download-options .download-apk:hover { background: linear-gradient(110deg, #ed2943, #ff5867); }
.download-options .download-ios { background: #50515b; border-color: #676874; color: #fff; }
.download-options .download-ios:hover { background: #62636e; }
.button.apk-downloading,
.button.apk-downloading:hover {
  position: relative;
  padding-inline: 40px;
  background: #178342;
  color: #fff;
}
.button.apk-downloading::after {
  content: '';
  position: absolute;
  right: 12px;
  top: calc(50% - 9px);
  width: 18px;
  height: 18px;
  border: 2px solid #ffffff66;
  border-top-color: #fff;
  border-radius: 50%;
  animation: apk-download-spin 700ms linear infinite;
}
@keyframes apk-download-spin {
  to { transform: rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
  .button.apk-downloading::after { animation: none; }
}
.app-guide { max-width: 960px; padding-bottom: 24px; }
.app-guide > section { padding-block: 32px; border-top: 1px solid var(--line); }
.app-guide h2 { font-size: clamp(23px, 3vw, 32px); line-height: 1.4; margin: 0 0 20px; }
.app-guide p, .app-guide li { color: var(--muted); font-size: 16px; line-height: 1.9; }
.app-guide p { margin: 16px 0; }
.app-guide strong { color: var(--ink); }
.app-guide ol, .app-guide ul { padding-inline-start: 24px; }
.app-guide li { padding-inline-start: 6px; margin-block: 10px; }
.app-guide li::marker { color: var(--gold); font-weight: 700; }
.app-table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 12px; margin-block: 24px; }
.app-table-wrap:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }
.app-guide table { width: 100%; min-width: 580px; border-collapse: collapse; text-align: start; font-size: 16px; }
.app-guide th, .app-guide td { padding: 16px 18px; border-bottom: 1px solid var(--line); }
.app-guide thead { background: #21151e; color: var(--ink); }
.app-guide tbody th { font-weight: 500; color: var(--ink); }
.app-guide td { color: var(--muted); }
.app-guide tbody tr:last-child > * { border-bottom: 0; }
.app-guide .app-warning { border-inline-start: 3px solid var(--gold); padding: 18px 22px; border-radius: 0 8px 8px 0; background: #ff405108; }
.app-faq summary { min-height: 56px; gap: 20px; font-size: 16px; }
html[lang="en"] .app-guide .app-faq details p { padding: 0 28px 8px 0; }
html[lang="fa"] .app-guide .app-faq details p { padding: 0 0 8px 28px; }
html[lang="fa"] .app-guide ol { list-style-type: persian; }
html[lang="fa"] .app-guide .app-warning { border-radius: 8px 0 0 8px; }
.app-guide > .app-final-cta { padding: 28px; border: 1px solid var(--line); border-radius: 14px; background: #21151e; }
.app-final-cta .button { min-height: 56px; border-radius: 999px; white-space: normal; text-align: center; }
html[lang="en"] .app-intro,
html[lang="en"] .app-guide p,
html[lang="en"] .app-guide li,
html[lang="en"] .app-faq summary { font-size: 16px; line-height: 1.85; }
html[lang="en"] .app-guide table { font-size: 16px; }
html[lang="en"] .app-updated,
html[lang="en"] .app-copy .browser-link { font-size: 14px; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@media (max-width: 760px) {
  .app-hero { display: flex; flex-direction: column; align-items: stretch; gap: 16px; padding-top: 16px; }
  .app-copy { display: contents; }
  .app-copy > .eyebrow { order: -5; }
  .app-copy > h1 { order: -4; }
  .app-copy .download-options { order: -3; margin-bottom: 0; }
  .app-copy > .eyebrow { margin-top: 0; }
  .app-intro { max-width: none; }
  .app-art { order: -2; min-height: 470px; }
  .app-guide > section { padding-block: 26px; }
  .app-guide p, .app-guide li { font-size: 16px; }
  .app-guide th, .app-guide td { padding: 13px 14px; }
  .app-table-wrap { overflow: visible; border: 0; border-radius: 0; }
  .app-guide table { display: block; min-width: 0; width: 100%; }
  .app-guide thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .app-guide tbody { display: grid; gap: 14px; }
  .app-guide tbody tr { display: grid; min-width: 0; border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
  .app-guide tbody th { display: block; background: #21151e; font-weight: 700; }
  .app-guide tbody td { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; overflow-wrap: anywhere; }
  .app-guide tbody td::before { content: attr(data-label); color: var(--ink); font-weight: 600; }
}
