.locale-controls { display:flex; align-items:center; gap:4px; flex:none; }
.locale-controls :is(a, button) {
  display:inline-flex; align-items:center; justify-content:center;
  min-height:44px; min-width:44px; border-radius:6px; border:0;
  padding-inline:8px; color:inherit; background:transparent; text-decoration:none;
  font-family:inherit; font-weight:500; font-size:14px; line-height:1.2; white-space:nowrap; cursor:pointer;
  transition:background-color 140ms ease;
}
.locale-controls button { padding:0; }
.locale-controls :is(a,button):hover { background:color-mix(in srgb,currentColor 9%,transparent); }
.locale-controls :is(a,button):active { background:color-mix(in srgb,currentColor 15%,transparent); }
.locale-controls :is(a,button):focus-visible { outline:2px solid currentColor; outline-offset:2px; }
.locale-controls svg { width:20px; height:20px; pointer-events:none; }
@media (prefers-reduced-motion:reduce) { .locale-controls :is(a,button) { transition:none; } }
.header .locale-controls { margin-left:auto; }
.header { gap:clamp(12px,1.9vw,26px); }
.header nav { gap:clamp(12px,1.75vw,24px); }
.header nav a { min-height:44px; }
.header .menu-toggle { flex:none; margin-left:0; order:4; }
@media (min-width:981px) { .header .locale-controls { margin-left:0; } }
@media (max-width:790px) { .header-cta { display:none; } }
@media (max-width:355px) { .header { gap:4px; } .header .wordmark { font-size:16px; } }
:root[data-theme=dark] {
  color-scheme:dark; --canvas:#23212b; --surface:#2d2938; --ink:#f6f1fb;
  --muted:#cdc4d6; --line:#575162; --accent:#ff83a0; --accent-hover:#ff9cb3;
  --lavender:#463960; --violet:#d5b8fb; --blue:#b1c8ff; --success:#8be2b0; --error:#ffadb9;
}
:root[data-theme=dark] .button.primary { color:#261b24; }
:root[data-theme=dark] .button.dark { background:#e9dff8; color:#231c2b; }
:root[data-theme=dark] :is(.skip-link,.exercise,.conversation,.answer-ticket,.plan-table,.solution,.answer-input) {
  background-color:var(--surface); color:var(--ink);
}
:root[data-theme=dark] :is(.hero-scene,.progress-section,.pricing-section,.demo-section) { background-color:#282331; }
:root[data-theme=dark] .triangle text { fill:#382a49; }
:root[data-theme=dark] :is(.hero-description,.scene-caption,.final-type) { color:var(--muted); }
:root[data-theme=dark] :is(.demo-assurance,.chat-answer,.chat-question,.chat-followup,.parent-row,.plan-table th,.final-section) {
  background-color:var(--surface); color:var(--ink);
}
:root[data-theme=dark] .plan-table td { border-color:var(--line); }
:root[data-theme=dark] .phone { color:#24232b; }
