:root { color-scheme: light; }
.theme-toggle { display: inline-grid; place-items: center; width: 38px; height: 38px; flex-shrink: 0; padding: 0; border: 1px solid var(--line); border-radius: 50%; background: transparent; color: var(--ink); transition: background .25s,transform .25s; }
.theme-toggle:hover { background: #6c3bff12; transform: rotate(-12deg); }
.theme-toggle svg { width: 18px; height: 18px; }
.theme-sun { display: none; }
[data-theme=dark] .theme-moon { display: none; }
[data-theme=dark] .theme-sun { display: block; }
[data-theme=dark] {
  color-scheme: dark;
  --ink: #f4effc;
  --bg: #161222;
  --surface: #251e33;
  --muted: #b7acc7;
  --line: #3e324e;
  --violet: #b395ff;
  --coral: var(--violet);
}
[data-theme=dark] ::selection { background: #634295; color: #fff; }
[data-theme=dark] .site-header { background: #161222ed; }
[data-theme=dark] .header-contact,[data-theme=dark] .button-dark { background: #6c3bff; border-color: #8458ff; color: #fff; }
[data-theme=dark] .header-contact:hover,[data-theme=dark] .button-dark:hover { background: #8053ff; }
[data-theme=dark] .hero-shell { box-shadow: none; border: 1px solid #463254; }
[data-theme=dark] .idea-ribbon { background: #2d213e; border-color: #473457; }
[data-theme=dark] .ribbon-track span { color: #d3b8ef; }
[data-theme=dark] .ribbon-track svg { color: #ac80d5; }
[data-theme=dark] .section-label { color: #b39ecb; }
[data-theme=dark] .inline-link { color: #c4a2ff; border-color: #755995; }
[data-theme=dark] .craft-lilac { background: #2b203e; border-color: #463254; }
[data-theme=dark] .craft-mint { background: #1b302e; border-color: #2a4d46; }
[data-theme=dark] .craft-pink { background: #362334; border-color: #53364f; }
[data-theme=dark] .craft-card-top { color: #c4a8d6; }
[data-theme=dark] .craft-card p { color: #beafca; }
[data-theme=dark] .craft-mint .craft-card-top,[data-theme=dark] .craft-mint p { color: #a8c7bb; }
[data-theme=dark] .step-marker { background: #251d33; border-color: #53406a; color: #d5b9f5; }
[data-theme=dark] .process-step:nth-child(2) .step-marker { background: #3a2754; }
[data-theme=dark] .process-step:nth-child(3) .step-marker { background: #4b2944; }
[data-theme=dark] .process-step:nth-child(4) .step-marker { background: #25473e; border-color: #406a5e; }
[data-theme=dark] .journey-line > path:first-child { stroke: #3d2f50; }
[data-theme=dark] .apps-section { background: #201a2c; border-color: #382c49; }
[data-theme=dark] .app-card { background: #271f36; border-color: #463554; }
[data-theme=dark] .coming-visual { background: radial-gradient(ellipse at 45% 65%,#643f8566,transparent 75%),#302240; }
[data-theme=dark] .window-caption { border-color: #63427e60; color: #b19ac7; }
[data-theme=dark] .window-caption i { background: #806297; }
[data-theme=dark] .visual-caption { color: #baa0d0; }
[data-theme=dark] .status-label { background: #382949; border-color: #554068; color: #d0b1ee; }
[data-theme=dark] .status-label .live-dot { background: #b990ed; }
[data-theme=dark] .platform-label,[data-theme=dark] .apps-note { color: #afa1c2; }
[data-theme=dark] .app-tags span { color: #b9a2ce; border-color: #514062; }
[data-theme=dark] .faq-list details { border-color: #3e314e; }
[data-theme=dark] .faq-list summary > span { background: #372747; color: #cda7ef; }
[data-theme=dark] .faq-list details[open] summary > span { background: #583577; }
[data-theme=dark] .site-footer { background: #161222; }
[data-theme=dark] .document-sidebar,[data-theme=dark] .info-box { background: #271f36; border-color: #48365d; }
[data-theme=dark] .document-content a:not(.button) { color: #c2a0ff; }
[data-theme=dark] .js .menu-toggle { background: #2c2140; border-color: #4a365c; }
[data-theme=dark] .menu-toggle { background: #2c2140; border-color: #4a365c; }
[data-theme=dark] .button-light { background: #3a2859; color: #dbbfff; }
@media (max-width:1100px) { .header-inner { gap: 21px; }.main-nav { gap: 17px; } }
@media (max-width:760px) {
  .header-inner { gap: 8px; }
  .header-inner > .brand { margin-right: auto; }
  .theme-toggle { order: 2; width: 36px; height: 36px; }
  .menu-toggle { order: 3; }
  .main-nav { order: 4; }
}
@media (max-width:370px) {
  .header-inner > .brand { font-size: 1.4rem; letter-spacing: -.8px; gap: 6px; }
  .header-inner > .brand .brand-mark { width: 29px; height: 35px; }
  .js .menu-toggle { width: 37px; height: 37px; }
  .theme-toggle { width: 33px; height: 33px; }
}
