/* Local purple-gaming direction. Product and authentication logic are unchanged. */
:root {
  --ink:#0e0a18; --surface:#1b1429; --muted:#b5a8c9; --lilac:#d8b5ff;
  --lime:#d6ff80; --dark-line:#352645; --motion-out:cubic-bezier(.16,1,.3,1);
  --accent-cyan:#67e8df; --accent-cyan-ink:#073632;
  --accent-pink:#ffa9d4; --accent-pink-ink:#49122d;
}
body { background:var(--ink); }
#store-view { overflow:clip; }
.preview-strip { background:#211330; color:#d9c5ef; border-bottom:1px solid #492463; }
.preview-strip button { color:#f2e5ff; border-color:#704990; }
.site-header { background:#100b1bcc; border-bottom:1px solid #33213f; }
.header-inner { min-height:96px; }
.brand b { letter-spacing:-.03em; font-size:22px; }
.brand img { border:1px solid #8b4aba; }
.desktop-nav { gap:32px; }
.desktop-nav a,.desktop-nav button { position:relative; }
.desktop-nav a::after,.desktop-nav button::after {
  content:''; position:absolute; inset-inline:20%; bottom:-5px; height:2px;
  background:var(--lilac); transform:scaleX(0); transition:transform 200ms var(--motion-out);
}
.desktop-nav a:hover::after,.desktop-nav button:hover::after { transform:scaleX(1); }
.login-trigger { border-color:#a55281; background:#3b1b33; color:#ffc4e2; border-radius:12px; }
.login-trigger:hover { background:#552345; color:#ffe0ef; }
.header-inner { gap:20px; }
.desktop-nav { gap:20px; }
.header-channel-link { display:inline-flex; flex:none; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:8px 13px; border:1px solid #377baa; border-radius:10px; background:#13283e; color:#8cd4ff; font-size:13px; font-weight:700; white-space:nowrap; }
.header-channel-link svg { width:20px; height:20px; fill:currentColor; }
.header-channel-link:hover { background:#1b3852; color:#c7eaff; }
.header-channel-link:focus-visible,.telegram-channel-link:focus-visible { outline:2px solid #8cd4ff; outline-offset:4px; }
.telegram-channel-link { width:88px; flex-basis:88px; }
.telegram-channel-caption { color:#8cd4ff; }
.footer-trust { flex-wrap:wrap; }
@media(max-width:1100px) {
  .header-inner { flex-wrap:wrap; gap:12px; padding-block:14px; }
  .desktop-nav { order:4; flex:1 0 100%; justify-content:center; }
}
@media(max-width:760px) {
  .header-channel-link { order:3; flex:1 0 100%; }
  .footer-trust { gap:14px; }
}
.hero {
  position:relative; isolation:isolate; overflow:visible; grid-template-columns:1.12fr 1fr;
  gap:64px; min-height:690px; padding-block:66px 82px;
}
.hero::before {
  content:''; position:absolute; z-index:-2; pointer-events:none; inset:-80px -22vw -40px;
  background:radial-gradient(ellipse at 23% 48%,#8537d746,transparent 46%),radial-gradient(ellipse at 78% 10%,#60268722,transparent 45%);
  animation:eagle-aura 7s ease-in-out infinite alternate paused;
}
.hero::after {
  content:''; position:absolute; z-index:-1; pointer-events:none; width:80%; height:1px; bottom:0; left:10%;
  background:linear-gradient(90deg,transparent,#b769f8,transparent); box-shadow:0 -10px 70px 6px #a954d329;
}
.hero-copy { position:relative; z-index:2; }
.hero-copy h1 { font-size:clamp(48px,5.1vw,76px); line-height:1.45; letter-spacing:-.035em; }
.hero-copy h1 span { color:#d6a4ff; text-shadow:0 5px 40px #a642ff40; }
.hero-copy>p { color:#bfb2d1; font-size:18px; margin-top:22px; }
.hero-actions { gap:24px; margin-top:32px; }
.hero-actions>.button { min-height:58px; padding-inline:30px; font-size:16px; }
.hero-actions .text-button { border:1px solid #42968e; border-radius:12px; background:#153633; color:#9af7eb; padding:10px 16px; }
.hero-actions .text-button:hover { background:#1b4944; text-decoration:none; }
.hero-locations { padding-top:24px; margin-top:30px; border-top:1px solid #3a284a; width:fit-content; max-width:100%; }
.hero-locations p { min-width:0; text-wrap:pretty; }
.hero-locations small { margin-top:3px; }
.flag-stack { gap:6px; }
.hero-locations .flag-stack { flex:none; align-items:center; letter-spacing:normal; }
.hero-locations .flag-group { display:inline-flex; align-items:center; gap:5px; }
.hero-locations .flag-count { padding:1px 5px; border-radius:4px; background:#352249; color:var(--lilac); font-size:12px; font-weight:700; line-height:20px; }
.flag-stack .country-flag { border:2px solid #352249; width:34px; height:26px; border-radius:5px; }
.hero-visual {
  position:relative; isolation:isolate; height:510px; width:100%; max-width:510px; justify-self:center;
  background:none; border:0; border-radius:0; overflow:visible; box-shadow:none; display:grid; place-items:center;
}
.mascot-frame {
  width:76%; position:relative; z-index:1; border-radius:28px; transform:rotate(-6deg); border:1px solid #d298ff;
  box-shadow:0 30px 95px -28px #ba36ff99,0 16px 35px #0007;
  animation:eagle-float 6s ease-in-out infinite alternate paused;
}
.mascot-art { border-radius:27px; width:100%; height:auto; max-height:none; }
.signal-orbit { position:absolute; pointer-events:none; border-radius:50%; width:104%; aspect-ratio:1; border:1px solid #9460c545; transform:rotate(-28deg) scaleY(.83); }
.orbit-outer::before {
  content:''; position:absolute; inset:-1px; border-radius:inherit; border:2px solid transparent;
  border-top-color:#cf8fff; border-right-color:#ae53e544; filter:drop-shadow(0 0 6px #ad40ff);
  animation:eagle-orbit 12s ease-in-out infinite paused;
}
.orbit-inner { width:119%; border-color:#62417c44; transform:rotate(24deg) scaleY(.72); }
.destination {
  position:absolute; z-index:3; display:flex; align-items:center; gap:11px; padding:11px 14px; min-width:150px;
  background:#231630; border:1px solid #75538d; border-radius:12px; box-shadow:0 10px 26px #0005; font-size:15px; font-weight:700;
}
.destination img { border-radius:4px; object-fit:cover; flex:none; }
.destination small { display:block; font-size:11px; letter-spacing:.06em; color:#bca5d1; font-weight:400; }
.destination-dot { width:6px; height:6px; border-radius:50%; background:#d6a4ff; margin-inline-start:8px; }
.destination-tr { top:37px; right:-3%; transform:rotate(4deg); }
.destination-de { left:-7%; top:46%; transform:rotate(-5deg); }
.destination-ae { right:0; bottom:42px; transform:rotate(3deg); }
.destination-other { left:-2%; top:35px; transform:rotate(-4deg); border-color:#4d8d95; }
.destination-globe { width:32px; height:32px; padding:3px; color:#85e5df; border:1px solid #478d90; border-radius:50%; background:#163a3e; }
.art-caption { position:absolute; bottom:-9px; left:4%; right:4%; background:none; border:0; padding:0; display:flex; align-items:center; justify-content:space-between; color:#d9c0ed; font-size:14px; }
.art-caption>span:last-child { font-size:12px; letter-spacing:.22em; color:#997da9; }
.hero.ambient-active::before,.hero.ambient-active .mascot-frame,.hero.ambient-active .orbit-outer::before,.hero.ambient-active .primary::after { animation-play-state:running; }
.button { position:relative; isolation:isolate; overflow:hidden; border-radius:12px; transition:transform 150ms var(--motion-out),background 180ms ease,border-color 180ms ease,color 180ms ease; }
.button:active:not(:disabled) { transform:scale(.96); }
.primary { background:#d6ff80; color:#17210c; box-shadow:0 7px 30px #bdf05425; }
.primary:hover { background:#e4ffa7; }
.button.primary::after,.button.purple::after,.plan-card>.button::after {
  content:''; position:absolute; inset:-30% -40%; pointer-events:none;
  background:linear-gradient(110deg,transparent 37%,#fff8 49%,transparent 61%); transform:translateX(-110%);
}
.hero .primary::after { animation:eagle-shine 4.5s var(--motion-out) infinite paused; }
.button .icon { transition:transform 180ms var(--motion-out); }
.store-section { background:#100c1b; color:#f8f2ff; padding-block:72px 68px; color-scheme:dark; }
.section-heading { align-items:end; margin-bottom:32px; }
.section-heading h2 { font-size:34px; }
.section-heading p { color:#ab9abc; margin-top:10px; font-size:15px; }
.section-stamp { color:#ad8ec5; font-size:10px; }
.category-tabs { gap:8px; padding:7px; border:1px solid #3a2c4e; border-radius:16px; background:#171020; margin-bottom:25px; }
.category-tabs button { margin:0; min-height:78px; border:1px solid transparent; border-radius:11px; color:#b4a1c6; transition:background 180ms ease,color 180ms ease; }
.category-tabs button[aria-selected=true] { background:#472467; color:#fff; border-color:#a15bcd; border-radius:11px; box-shadow:inset 0 1px 0 #be91db40; }
.category-tabs button:hover { background:#31203f; color:#fff; }
.category-tabs button[aria-selected=true]:hover { background:#512873; }
.category-tabs small { color:#bda3d1; }
.category-tabs button[aria-selected=true] .icon { color:#e5b7ff; }
.catalog-intro { color:#b7a7c8; font-size:13px; margin-block:24px; }
.plan-grid { gap:22px; }
.plan-card { padding:29px; color:#f6edff; background:#191222; border:1px solid #443052; border-radius:16px; overflow:hidden; transition:transform 220ms var(--motion-out),border-color 180ms ease; }
.plan-media { position:relative; z-index:1; display:block; width:100%; height:auto; aspect-ratio:auto; object-fit:contain; border-radius:12px; margin-bottom:22px; border:1px solid #9c69bc66; background:#100c1b; }
.plan-art { display:block; min-width:0; }
.trial-entry { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-block:0 24px; padding-block:14px; border-block:1px solid #443250; color:#d3c4df; font-size:14px; }
.trial-entry .button { min-height:48px; color:#94eddd; border-color:#548e86; }
.plan-card::before { content:''; position:absolute; pointer-events:none; inset:0 0 auto; height:160px; background:radial-gradient(ellipse at 90% 0,#8c38d126,transparent 65%); }
.plan-card::after { content:''; position:absolute; inset:0; pointer-events:none; border-radius:inherit; box-shadow:inset 0 0 0 1px #c579ff,inset 0 0 35px #b665f014; opacity:0; transition:opacity 180ms ease; }
.plan-card.featured { background:linear-gradient(155deg,#3a2052,#21132f 65%); border-color:#af70d6; }
.plan-title-row { position:relative; }
.plan-title-row h3 { color:#c5b1d8; font-size:15px; }
.plan-title-row .icon { color:#dca5ff; }
.plan-tag { background:#684287; color:#fff; border-radius:5px; padding:4px 9px; }
.plan-number { font-size:72px; margin-top:23px; letter-spacing:-.03em; }
.plan-number span { color:#c7b4d9; font-size:19px; letter-spacing:0; }
.dns-number { font-size:46px; min-height:83px; }
.plan-subtitle,.featured .plan-subtitle { color:#b8a1c9; }
.plan-features { color:#d3c4df; border-color:#443250; padding-block:23px; margin-block:24px; }
.plan-features .icon { color:#bb8dd6; }
.featured .plan-features { color:#e7d9f2; border-color:#634473; }
.plan-price strong { font-size:34px; }
.plan-price span { color:#bca7cc; }
.plan-card>.button { background:#352343; border:1px solid #6d4785; color:#f2dfff; min-height:52px; }
.plan-card>.button:hover { background:#4a2b60; }
.plan-card.featured>.button { background:#d6ff80; border-color:#d6ff80; color:#1a260a; }
.plan-card.featured>.button:hover { background:#e5ffab; }
.plan-card:first-child>.button { background:var(--accent-cyan); border-color:var(--accent-cyan); color:var(--accent-cyan-ink); }
.plan-card:first-child>.button:hover { background:#94f4ed; border-color:#94f4ed; }
.plan-card:last-child>.button { background:var(--accent-pink); border-color:var(--accent-pink); color:var(--accent-pink-ink); }
.plan-card:last-child>.button:hover { background:#ffc9e4; border-color:#ffc9e4; }
.plan-card:focus-within::after { opacity:1; }
.trial-link-row { color:#bba9ce; margin-top:31px; }
.trial-link-row button { color:#8cecdf; }
.trial-panel { color:#f3e6ff; background:#2d1b3c; border:1px solid #6c427f; }
.trial-panel small { color:#beaad1; }
.trial-icon { background:#48275e; color:#dcadff; }
.trial-panel .outline { color:#e9ccff; border-color:#9e6db6; }
.coming-soon { color:#f2e5ff; background:#21152e; border-color:#624575; }
.coming-soon p { color:#c1a9d3; }
.coming-soon .large-globe { color:#b888e2; }
.guide-section { padding-block:76px; border-color:#3a284b; gap:54px; }
.guide-intro h2,.faq-section h2 { font-size:32px; }
.steps { gap:24px; }
.steps li::before { font-size:27px; color:#d59aff; border-color:#5a3475; }
.steps b { color:#f1e5fb; }
.steps p { color:#b9a7c8; }
.faq-section { padding-block:76px; }
.faq-list { border-top:1px solid #443053; }
.faq-list details { border-color:#443053; }
.faq-list summary { padding-block:23px; }
.faq-list summary::after { transition:transform 180ms var(--motion-out); }
.faq-list details[open] summary { color:#e1b5ff; }
.faq-list details p { color:#bdacce; }
.site-footer { background:#09060f; border-color:#33203f; padding-top:36px; }
.footer-note { border-color:#33203f; }
.mobile-nav { background:#150d20f7; border-color:#70428b; }
.mobile-nav>a,.mobile-nav>button { color:#dcc3ef; }
dialog[open] { animation:eagle-dialog 230ms var(--motion-out); }
dialog[open]::backdrop { background:#07020fdb; animation:eagle-backdrop 180ms ease; }
@media (hover:hover) and (pointer:fine) {
  .button:hover:not(:disabled) { transform:translateY(-3px); }
  .button:hover .icon { transform:translateX(-3px); }
  .button.purple:hover::after,.plan-card>.button:hover::after { animation:eagle-sweep 650ms var(--motion-out); }
  .plan-card:hover { transform:translateY(-7px); border-color:#bc80e0; }
  .plan-card:hover::after { opacity:1; }
}
@keyframes eagle-aura { from { opacity:.6; transform:translateX(-22px); } to { opacity:1; transform:translateX(22px); } }
@keyframes eagle-float { from { transform:translateY(8px) rotate(-6deg); } to { transform:translateY(-8px) rotate(-3deg); } }
@keyframes eagle-orbit { 0% { transform:rotate(0); } 50% { transform:rotate(180deg); } 100% { transform:rotate(360deg); } }
@keyframes eagle-shine { 0%,60% { transform:translateX(-110%); } 90%,100% { transform:translateX(110%); } }
@keyframes eagle-sweep { to { transform:translateX(110%); } }
@keyframes eagle-dialog { from { opacity:.6; transform:translateY(12px) scale(.98); } to { opacity:1; transform:none; } }
@keyframes eagle-backdrop { from { opacity:0; } to { opacity:1; } }
@media (min-width:1600px) { .hero { gap:74px; } .hero-copy h1 { font-size:76px; } }
@media (max-width:1050px) {
  .hero { gap:35px; min-height:610px; } .hero-copy h1 { font-size:55px; }
  .hero-visual { height:440px; }
  .destination { min-width:126px; font-size:13px; padding:9px 11px; gap:8px; }
  .destination img { width:27px; height:19px; }
  .destination-de { left:-2%; } .destination-tr { right:0; top:40px; } .destination-ae { bottom:30px; }
  .hero-actions { gap:17px; flex-wrap:wrap; } .plan-card { padding:25px 20px; } .desktop-nav { gap:17px; }
}
@media (max-width:760px) {
  .preview-strip { padding-block:6px; } .header-inner { min-height:80px; } .brand b { font-size:18px; }
  .hero { grid-template-columns:1fr; padding-block:35px 34px; gap:35px; min-height:0; }
  .hero-copy { text-align:center; }
  .hero-copy h1 { font-size:clamp(36px,10.8vw,53px); line-height:1.48; }
  .hero-copy>p { font-size:15px; margin-top:15px; }
  .hero-actions { justify-content:center; gap:13px; margin-top:24px; }
  .hero-actions>.button { min-height:52px; padding-inline:20px; font-size:14px; }
  .hero-actions .text-button { font-size:13px; }
  .hero-locations { flex-direction:column; justify-content:center; gap:10px; width:100%; margin:22px auto 0; padding-top:18px; text-align:center; }
  .hero-visual { height:350px; max-width:400px; display:grid; grid-template-columns:none; }
  .mascot-frame { width:67%; border-radius:21px; }
  .mascot-art { border-radius:20px; grid-row:auto; object-fit:contain; max-height:none; }
  .signal-orbit { width:91%; } .orbit-inner { width:105%; }
  .destination { min-width:115px; font-size:12px; padding:8px 10px; gap:7px; }
  .destination small { font-size:11px; } .destination-dot { width:4px; height:4px; margin-inline-start:3px; }
  .destination img { width:25px; height:17px; }
  .destination-tr { top:14px; right:2%; } .destination-de { left:0; top:48%; } .destination-ae { bottom:30px; right:0; }
  .destination-other { top:14px; left:0; }
  .destination-globe { width:25px; height:25px; padding:2px; }
  .art-caption { bottom:-7px; flex-direction:row; font-size:12px; font-weight:400; grid-column:auto; grid-row:auto; }
  .art-caption>span:last-child { max-width:none; font-size:11px; }
  .store-section { padding-block:39px 38px; } .section-heading h2 { font-size:25px; } .section-heading p { font-size:14px; }
  .category-tabs { padding:5px; gap:4px; border-radius:13px; }
  .category-tabs button { min-height:78px; padding:10px 4px; gap:7px; }
  .category-tabs button>span:last-child { font-size:12px; } .category-tabs button[aria-selected=true] { border-radius:9px; }
  .catalog-intro { font-size:12px; margin-block:19px; } .plan-grid { gap:19px; }
  .plan-card { padding:23px 20px; column-gap:12px; }
  .plan-media { grid-column:1/-1; width:min(100%,300px); justify-self:center; margin-inline:auto; margin-bottom:18px; }
  .plan-art { grid-column:1/-1; width:min(100%,300px); justify-self:center; }
  .plan-number { font-size:53px; margin-top:18px; gap:6px; } .plan-number span { font-size:15px; }
  .dns-number { font-size:34px; min-height:64px; }
  .plan-features { border:0; padding:17px 0 0; margin:0; font-size:12px; gap:11px; }
  .plan-title-row h3 { font-size:14px; } .plan-tag { font-size:10px; }
  .plan-price { margin-top:24px; } .plan-price strong { font-size:25px; }
  .plan-card>.button { min-height:49px; margin-top:23px; font-size:12px; }
  .guide-section,.faq-section { padding-block:43px; } .guide-intro h2,.faq-section h2 { font-size:26px; }
  .steps { gap:29px; } .steps li::before { font-size:23px; } .faq-list summary { padding-block:20px; }
  .site-footer { padding-bottom:108px; }
}
@media (max-width:359px) {
  .hero-actions { gap:7px; } .hero-actions>.button { padding-inline:15px; } .hero-actions .text-button { font-size:12px; }
  .hero-visual { height:315px; } .destination { min-width:102px; padding-inline:8px; }
  .plan-card { padding-inline:16px; } .plan-price strong { font-size:22px; } .plan-number { font-size:46px; } .dns-number { font-size:31px; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation:none!important; transition:none!important; }
  .hero::before { transform:none; }
  .button:hover:not(:disabled),.button:active:not(:disabled),.plan-card:hover { transform:none; }
}
/* Trial selection inherits the storefront; no separate visual theme. */
.trial-panel .trial-content{width:100%;min-width:0}.trial-panel .trial-rule{max-width:68ch;margin-block:12px;color:#f8f3ff}.trial-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.trial-actions .button{min-height:48px}.trial-content .form-error:empty{display:none}.trial-content small{display:block;line-height:1.9}.trial-content [role=status]{margin-top:14px}
@media(max-width:560px){.trial-actions .button{width:100%}.trial-panel{padding:22px 18px}}
/* Account columns must shrink with the viewport, including classic scrollbars. */
.account-nav,.account-panel { min-width:0; }
@media(max-width:760px) {
  .account-grid { grid-template-columns:minmax(0,1fr); }
  .account-nav { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .account-nav button { min-width:0; white-space:normal; overflow-wrap:anywhere; }
}
