/* Main Vatan Connect theme. Layout and interaction rules remain in the base styles. */
.theme-violet {
  --ink: #271c47;
  --muted: #726b82;
  --accent: #7450d4;
  --accent-deep: #603cbd;
  --soft: #f7f5fc;
  --border: #e8e3f1;
  --radius: 17px;
  color: var(--ink);
  background: #fff;
}
.theme-violet ::selection { color: #24154b; background: #d8c8ff; }
.theme-violet :focus-visible { outline-color: #8b69df; }
.theme-violet .button { box-shadow: 0 7px 20px #55329d1a; }
.theme-violet .button:hover { box-shadow: 0 9px 24px #55329d30; }
.theme-violet .button-dark { background: #352451; }
.theme-violet .button-dark:hover { background: #24154b; }
.theme-violet .button-white { color: #603cbd; background: #fff; }
.theme-violet .button-white:hover { color: #51319f; background: #f3edff; }

/* The deep hero and its waves carry the same palette as the personal account. */
.theme-violet .hero-shell { background: #24154b; color: #fff; }
.theme-violet .hero-shell::before {
  background: radial-gradient(ellipse at 72% 26%, #8258c51f, transparent 52%);
}
.theme-violet .header-inner { border-color: #ffffff1c; }
.theme-violet .header .brand { color: #fff; }
.theme-violet .navigation > a:not(.button) { color: #e8e0f5; }
.theme-violet .navigation > a:not(.button):hover { color: #c9b2ff; }
.theme-violet .nav-cta { background: #7450d4; box-shadow: none; }
.theme-violet .nav-cta:hover { background: #865fe5; }
.theme-violet .hero { padding-bottom: 84px; }
.theme-violet .hero h1 em { color: #bca0ff; }
.theme-violet .hero .eyebrow { color: #c6abff; }
.theme-violet .hero-description { color: #d1c7e1; }
.theme-violet .hero-notes { color: #c7bbda; }
.theme-violet .hero-notes .icon { color: #bca0ff; }
.theme-violet .hero .status-dot { background: #66f2d5; box-shadow: 0 0 0 5px #66f2d511; }
.theme-violet .hero .text-link { color: #eee7fa; }
.theme-violet .hero .text-link:hover { color: #c9b2ff; }
.theme-violet .hero .button:hover { background: #865fe5; }
.theme-violet .hero-visual { padding-block: 35px 45px; }
.theme-violet .hero-art { width: 110%; margin-left: -2%; }
.theme-violet .hero-art .hero-image { filter: drop-shadow(0 20px 35px #13092030); }
/* motion.js still manages effects; the violet illustration is a single asset. */
.theme-violet .art-layers { display: none; }
.theme-violet .art-ready .hero-image { opacity: 1; }
.theme-violet .visual-orbit { border-color: #b795ed26; background: transparent; }
.theme-violet .orbit-two { background: #b591ff06; }
.theme-violet .visual-plus { color: #cfa6ff; }
.theme-violet .visual-label {
  background: #372356;
  border-color: #b99ce33b;
  color: #cfc0e3;
  box-shadow: 0 15px 35px #140a3033;
}
.theme-violet .visual-label strong { color: #fff; }
.theme-violet .visual-label > .icon { color: #c5aaff; }
.theme-violet .visual-label .label-dot { background: #66f2d5; }
.theme-violet .visual-caption { color: #b4a2cd; }
.theme-violet .platform-strip { border-color: #ffffff1c; color: #c7bbda; padding-bottom: 94px; }
.theme-violet .platform-strip a { color: #e8dff7; }
.theme-violet .platform-strip a:hover { color: #c6abff; }
.hero-waves, .hero-wave { position: absolute; left: 0; width: 100%; pointer-events: none; }
.hero-waves { bottom: 34px; height: 510px; z-index: 0; }
.hero-wave { bottom: -1px; height: 78px; z-index: 1; }

/* Light surfaces keep longer copy, forms and installation instructions clear. */
.theme-violet .feature-icon, .theme-violet .device-big-icon { background: #efe9fb; }
.theme-violet .card-number { color: #9d91b2; }
.theme-violet .everyday-section {
  background: radial-gradient(ellipse at 15% 45%, #eee6ff, transparent 55%), var(--soft);
}
.theme-violet .everyday-visual img { filter: drop-shadow(0 14px 30px #5a388313); }
.theme-violet .image-note { box-shadow: 0 6px 24px #49306806; }
.theme-violet .device-picker { background: #fff; box-shadow: 0 15px 45px #49306808; }
.theme-violet .device-tabs { background: var(--soft); border-color: var(--border); }
.theme-violet .device-tabs button { background: transparent; }
.theme-violet .device-tabs button[aria-selected="true"] { background: #efe8fc; color: #603cbd; border-color: #cbb9ed; }
.theme-violet .device-tabs button:hover { color: #603cbd; background: #eee7fa; }
.theme-violet .device-tabs button:focus-visible { outline-color: #8b69df; }
.theme-violet .device-badge { color: #73589c; }
.theme-violet .install-command { background: #f4f0fb; border-color: var(--border); color: #44315e; }
.theme-violet .native-options { border-color: var(--border); }
.theme-violet .access-card { box-shadow: 0 16px 46px #49306809; }
.theme-violet .access-price strong { color: #603cbd; }
.theme-violet .referral-panel {
  background: linear-gradient(125deg, #f0eafa, #fbf9ff);
  border-color: #e2d7f2;
}
.theme-violet .referral-reward { border-color: #e1d6f0; box-shadow: 0 15px 45px #5831910a; }
.theme-violet .referral-steps, .theme-violet .referral-steps li > span { border-color: #ded2ef; }
.theme-violet .steps li:not(:last-child)::after { border-color: #c8b7df; }
.theme-violet .step-number { box-shadow: 0 5px 18px #59339606; }
.theme-violet .faq-symbol { color: #8c69c5; background: #f2ecfc; }
.theme-violet .faq-list details[open] { background: #faf8fe; }
.theme-violet .final-cta { background: #24154b; }
.theme-violet .final-cta .eyebrow { color: #bca0ff; }
.theme-violet .final-cta p:not(.eyebrow) { color: #d1c7e1; }
.theme-violet .cta-ring { border-color: #bca0ff25; }
.theme-violet .footer { color: var(--ink); }
.theme-violet .footer-top, .theme-violet .footer-bottom { border-color: var(--border); }
.theme-violet .legal-documents { color: var(--muted); }
.theme-violet .legal-documents a:hover { color: var(--accent-deep); }
.theme-violet .guide-dialog { border-color: var(--border); box-shadow: 0 30px 100px #24154b55; }
.theme-violet .guide-dialog::backdrop { background: #1d103dad; }
.theme-violet .guide-dialog select { background: #f7f5fc; }
.theme-violet .dialog-close { color: #6d5a87; }
.theme-violet .motion-toggle { border-color: #e1d8ee; box-shadow: 0 5px 24px #24154b12; }

/* Support uses the same controls on the landing, legal page and account. */
.theme-violet .vatan-support {
  --support-blue: #7450d4;
  --support-ink: #271c47;
  --support-muted: #726b82;
}
.theme-violet .vatan-support button:focus-visible,
.theme-violet .vatan-support a:focus-visible,
.theme-violet .vatan-support [tabindex]:focus-visible { outline-color: #b69bec; }
.theme-violet .vatan-support__launcher {
  border-color: #8864df;
  box-shadow: 0 8px 30px #54329e37, 0 2px 5px #24154b12;
}
.theme-violet .vatan-support__launcher:hover { background: #603cbd; box-shadow: 0 10px 35px #54329e4a; }
.theme-violet .vatan-support__panel { border-color: #e8e3f1; box-shadow: 0 18px 70px #24154b24, 0 3px 12px #24154b0a; }
.theme-violet .vatan-support__header, .theme-violet .vatan-support__form { border-color: #e8e3f1; }
.theme-violet .vatan-support__header { background: #24154b; border-bottom-color: #bca0ff26; }
.theme-violet .vatan-support__heading h2 { color: #fff; }
.theme-violet .vatan-support__heading p { color: #cfc1e6; }
.theme-violet .vatan-support__avatar { color: #bca0ff; background: #bca0ff1a; border-color: #bca0ff33; }
.theme-violet .vatan-support__close { color: #d8c9e8; }
.theme-violet .vatan-support__close:hover { color: #fff; background: #ffffff14; }
.theme-violet .vatan-support__history { background: #f9f6ff; scrollbar-color: #d8cbea transparent; }
.theme-violet .vatan-support__eyebrow { color: #7957a4; }
.theme-violet .vatan-support__message { border-color: #e8e3f1; }
.theme-violet .vatan-support__message.is-visitor { background: #efe6fb; border-color: #e2d5f2; }
.theme-violet .vatan-support__author { color: #72558e; }
.theme-violet .vatan-support__meta { color: #6f607e; }
.theme-violet .vatan-support__message.is-failed { border-color: #edc9c9; }
.theme-violet .vatan-support__message.is-failed .vatan-support__meta { color: #9c3434; }
.theme-violet .vatan-support__retry { color: #603cbd; }
.theme-violet .vatan-support__notice:not(.is-error) { background: #f1ecf9; color: #72558e; border-color: #e8dff2; }
.theme-violet .vatan-support__composer { background: #fcfbff; border-color: #e2d9ee; }
.theme-violet .vatan-support__composer:focus-within { border-color: #ad8de5; box-shadow: 0 0 0 3px #7450d411; }
.theme-violet .vatan-support__composer textarea::placeholder { color: #82758e; }
.theme-violet .vatan-support__composer textarea[readonly] { color: #82758e; }
.theme-violet .vatan-support__send:hover:enabled { background: #603cbd; }
.theme-violet .vatan-support__send:disabled { background: #eee8f5; color: #9b8aaf; }
.theme-violet .vatan-support__hint, .theme-violet .vatan-support__privacy { color: #726b82; }
.theme-violet .vatan-support__privacy a { color: #73539b; }

/* Requisites share the violet header and light reading surface. */
.theme-requisites { background: #f7f5fc; overflow-x: clip; }
.theme-requisites a { color: #603cbd; }
.theme-requisites a:hover { color: #4f2e9d; }
.theme-requisites .header { position: relative; isolation: isolate; }
.theme-requisites .header::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: calc((100% - 100vw) / 2);
  top: 0;
  bottom: 0;
  width: 100vw;
  background: #24154b;
}
.theme-requisites .brand { display: inline-flex; }
.theme-requisites .brand img { width: 220px; height: auto; max-width: 100%; }
.theme-requisites .home-link { color: #d3bfff; }
.theme-requisites .home-link:hover { color: #fff; }
.theme-requisites main { padding-top: 42px; }
.theme-requisites .eyebrow { color: #7450d4; }
.theme-requisites .intro, .theme-requisites dt, .theme-requisites footer { color: #726b82; }
.theme-requisites .card { border-color: #e8e3f1; box-shadow: 0 16px 48px #24154b08; }
.theme-requisites .detail + .detail, .theme-requisites footer { border-color: #e8e3f1; }
.theme-requisites .button { color: #fff; background: #7450d4; }
.theme-requisites .button:hover { color: #fff; background: #603cbd; }

@media (max-width: 900px) {
  .theme-violet .menu-toggle { color: #eee7fa; border-color: #ffffff30; background: #ffffff05; }
  .theme-violet .navigation { background: #302052; border-color: #674888; box-shadow: 0 14px 40px #13092040; }
  .theme-violet .navigation > a:not(.button):hover { background: #ffffff08; }
  .theme-violet .hero { padding-bottom: 65px; }
  .theme-violet .hero-visual { padding-block: 20px 36px; }
  .theme-violet .hero-art { width: 108%; }
  .theme-violet .platform-strip { padding-bottom: 80px; }
  .hero-waves { height: 460px; }
  .hero-wave { height: 64px; }
}
@media (max-width: 640px) {
  .theme-violet .hero { padding-bottom: 28px; }
  .theme-violet .hero-visual { padding-block: 16px 33px; }
  .theme-violet .hero-art { width: 100%; margin-left: 0; }
  .theme-violet .platform-strip { padding-bottom: 65px; }
  .hero-waves { height: 540px; bottom: 15px; width: 180%; left: -40%; }
  .hero-wave { height: 46px; }
  .theme-requisites main { padding-top: 28px; }
  .theme-requisites .brand img { width: 190px; }
}
@media print {
  .theme-violet, .theme-violet .hero-shell, .theme-violet .final-cta { color: #111; background: #fff; }
  .hero-waves, .hero-wave, .theme-requisites .header::before { display: none; }
  .theme-violet .hero h1 em, .theme-violet .hero-description, .theme-violet .hero-notes,
  .theme-violet .hero .eyebrow, .theme-violet .final-cta p:not(.eyebrow), .theme-violet .final-cta .eyebrow { color: #333; }
  .theme-violet .header .brand img { content: url("logo.svg?v=20261109-violet"); }
}
