/* Public website refresh. Loaded only by the landing, payment and documents pages. */
.site-refresh {
  --bg: #030614;
  --surface: #0b0c21;
  --surface-2: #111029;
  --line: rgba(174, 105, 246, .25);
  --line-soft: rgba(174, 105, 246, .12);
  --text: #f2efff;
  --muted: #a6a4bd;
  --dim: #8a88a4;
  --violet: #a23ff5;
  --blue: #7631d9;
  --gold: #cf98ff;
  background: radial-gradient(ellipse at 15% 14%, #24104488, transparent 38%),
    radial-gradient(ellipse at 90% 38%, #19153b66, transparent 35%), #030614;
}
.site-refresh::before {
  background-image: radial-gradient(circle, #b89bdd66 .7px, transparent 1px);
  background-size: 91px 113px;
  opacity: .28;
  mask-image: linear-gradient(#000, transparent 85%);
}
.site-refresh::after { display: none; }
.site-refresh .site-header {
  border-color: var(--line-soft);
  background: #030614eb;
}
.site-refresh .brand-logo { object-fit: contain; border-radius: 0; filter: drop-shadow(0 0 12px #9f36ed44); }
.brand-wordmark { width: 94px; height: 24px; object-fit: contain; }
.site-refresh .main-nav { font-weight: 600; }
.site-refresh .main-nav a { padding-block: 8px; }
.site-refresh .main-nav a:hover { color: #cf98ff; }
.site-refresh .portal-link,
.site-refresh .button-secondary {
  color: #e2baff;
  border-color: #8144ab80;
  background: #21133466;
}
.site-refresh .portal-link:hover,
.site-refresh .button-secondary:hover { background: #47206766; border-color: #b45fee; }
.site-refresh .lang-switch,
.site-refresh .billing-toggle { background: #100c20; border-color: var(--line); border-radius: 10px; }
.site-refresh .lang-button.is-active,
.site-refresh .billing-option.is-active { background: #7731bb; }
.site-refresh .hero {
  grid-template-columns: minmax(0, .96fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(32px, 5vw, 72px);
  padding-block: 58px 52px;
}
.site-refresh .hero h1 { font-size: clamp(38px, 4.1vw, 56px); line-height: 1.08; letter-spacing: -.035em; }
.site-refresh h2 { font-size: clamp(30px, 3.1vw, 44px); line-height: 1.14; letter-spacing: -.025em; }
.site-refresh .eyebrow { color: #c987ff; font-size: 11px; letter-spacing: .12em; line-height: 1.7; font-weight: 700; }
.site-refresh .hero-lead { color: #aca9c1; font-size: 17px; line-height: 1.7; }
.site-refresh .hero-list { gap: 11px; }
.site-refresh .hero-list li { font-size: 14px; font-weight: 600; color: #ded9ee; }
.site-refresh .hero-list li::before { border-color: #b665f2; }
.site-refresh .hero-list .hero-trial { color: #37dfb1; }
.site-refresh .system-note { font-size: 12px; line-height: 1.7; }
.site-refresh .showcase { min-height: 610px; width: 100%; }
.site-refresh .showcase::before {
  inset: 12% 0 4%; height: auto;
  border: 0; border-radius: 50%; transform: none;
  background: radial-gradient(ellipse, #6829be33, transparent 68%);
}
.site-refresh .shot { animation: none; border-color: #68418480; box-shadow: 0 24px 72px #0008, 0 0 48px #782cbd12; }
.site-refresh .shot-desktop { top: 0; left: 0; width: 67%; height: auto; aspect-ratio: 380 / 632; border-radius: 9px; }
.site-refresh .shot-phone { top: auto; right: 0; bottom: 0; width: 35%; height: auto; aspect-ratio: 720 / 1280; border: 5px solid #171324; border-radius: 25px; }
.site-refresh .shot img { height: auto; object-fit: contain; }
.site-refresh .shot-fallback { min-height: 340px; }
.site-refresh .button { min-height: 46px; border-radius: 11px; font-weight: 700; }
.site-refresh .button-primary {
  background: linear-gradient(135deg, #ae4cfa, #7625d9);
  border-color: #cf99ff55;
  box-shadow: inset 0 1px #e4bcff33, 0 8px 28px #7826c82b;
}
.site-refresh .button-primary:hover { box-shadow: inset 0 1px #efdcff55, 0 10px 36px #9f3bfa44; }
.site-refresh .platform-chip,
.site-refresh .platform-icon { color: #b197d0; border-color: var(--line-soft); background: #120c2399; }
.site-refresh .install-strip { border-color: var(--line); border-radius: 14px; background: var(--line-soft); }
.site-refresh .install-strip div { background: #090b1e; padding: 22px; }
.site-refresh .install-strip span { color: #ba7ceb; letter-spacing: .08em; font-size: 10px; }
.site-refresh .install-strip strong { font-size: 15px; font-weight: 600; }
.site-refresh .plan-card,
.site-refresh .download-consent,
.site-refresh .download-tile,
.site-refresh .legal-list details,
.site-refresh .checkout-panel,
.site-refresh .telegram-auth-card {
  border-color: var(--line); border-radius: 14px;
  background: linear-gradient(130deg, #141026aa, #080b1eee);
  box-shadow: none;
}
.site-refresh .plan-card { padding: 22px 18px; }
.site-refresh .plan-card::before { background: radial-gradient(ellipse at 0 0, #7c30c72b, transparent 65%); }
.site-refresh .plan-card.is-selected,
.site-refresh .plan-card:hover,
.site-refresh .payment-plan.is-selected {
  border-color: #ba6afa; background: linear-gradient(130deg, #321345, #140e29);
  box-shadow: inset 0 1px #c994fa33, 0 0 24px #913ae014;
}
.site-refresh .plan-card.is-selected::after {
  content: ''; position: absolute; top: 0; left: 18px; width: 26px; height: 3px; background: #c774ff;
}
.site-refresh .plan-card.is-yearly .plan-price strong { color: #dbb5ff; text-shadow: none; }
.site-refresh .plan-discount,
.site-refresh .year-discount { color: #57e5bb; border-color: #37c39a44; background: #12392d66; box-shadow: none; }
.site-refresh .download-tile:hover { border-color: #b269e8; background: #211234; }
.site-refresh .download-platform { color: #c5a2e5; }
.site-refresh .legal-list summary { font-weight: 600; }
.site-refresh .cookie-banner { background: #0c0a1df5; border-color: #694481; border-radius: 16px; }
.site-refresh .site-footer { border-color: var(--line-soft); background: #02051199; }
.site-refresh .payment-plan { border-color: var(--line); background: #0c0c21; border-radius: 10px; }
.site-refresh .summary-grid { border-color: var(--line); background: #151026; }
.site-refresh input:not([type=checkbox]) { border-color: #69438180; background: #050817; }
.site-refresh input[type=checkbox] { accent-color: #a447f4; }
.site-refresh :is(a, button, input, summary, [tabindex]):focus-visible { outline: 2px solid #d7a3ff; outline-offset: 4px; }
.site-refresh [id] { scroll-margin-top: 140px; }
@media (max-width: 1080px) {
  .site-refresh .hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px; }
  .site-refresh .showcase { min-height: 510px; }
  .site-refresh .hero h1 { font-size: 40px; }
}
@media (max-width: 760px) {
  .site-refresh .site-header { gap: 10px; }
  .site-refresh .brand { gap: 8px; }
  .site-refresh .brand-logo { width: 30px; height: 30px; }
  .site-refresh .brand-wordmark { width: 72px; height: 20px; }
  .site-refresh .header-actions { gap: 6px; }
  .site-refresh .lang-button { min-width: 29px; min-height: 30px; }
  .site-refresh .portal-link { padding-inline: 9px; max-width: 30vw; }
  .site-refresh .main-nav { gap: 24px; font-size: 12px; }
  .site-refresh .hero { gap: 36px; padding-block: 36px 32px; }
  .site-refresh .hero h1 { font-size: clamp(34px, 8vw, 46px); max-width: 560px; }
  .site-refresh .hero-lead { font-size: 15px; }
  .site-refresh .hero-actions { grid-template-columns: 1fr 1fr; }
  .site-refresh .showcase { width: min(100%, 520px); min-height: 0; aspect-ratio: 1 / 1.2; }
  .site-refresh .shot-phone { border-width: 4px; border-radius: 22px; }
  .site-refresh .install-strip div { padding: 18px 20px; }
  .site-refresh .compact-section { padding-block: 44px; }
}
@media (max-width: 360px) {
  .site-refresh .brand-wordmark { width: 57px; }
  .site-refresh .main-nav { gap: 18px; }
  .site-refresh .button { padding-inline: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  html:has(.site-refresh) { scroll-behavior: auto; }
  .site-refresh *, .site-refresh *::before, .site-refresh *::after { transition: none !important; animation: none !important; }
}
