/* Scoped component, with a dismissible backdrop below the language dialog. */
#sparkid-language-overlay { position:fixed; inset:0; z-index:9988; background:rgba(15,29,51,.48); animation:sparkid-language-fade .2s ease-out both; touch-action:none; }
#sparkid-language-overlay[hidden] { display:none !important; }
@keyframes sparkid-language-fade { from {opacity:0} to {opacity:1} }
#sparkid-language-card { position:fixed; right:24px; bottom:24px; z-index:9990; width:392px; max-width:calc(100vw - 32px); max-height:calc(100dvh - 32px); overflow:auto; overscroll-behavior:contain; box-sizing:border-box; padding:27px; border:1px solid #e8e2f1; border-radius:24px; background:#fffdfa; color:#0f2d53; box-shadow:0 18px 64px #17204424,0 3px 12px #1720440b; font-family:Quicksand,system-ui,sans-serif; font-size:15px; line-height:1.5; text-align:left; isolation:isolate; animation:sparkid-language-enter .25s ease-out both; }
#sparkid-language-card[hidden] { display:none !important; }
#sparkid-language-card * { box-sizing:border-box; }
#sparkid-language-card button, #sparkid-language-card select { font:inherit; }
#sparkid-language-card .sl-top { display:flex; align-items:center; gap:12px; padding-right:26px; margin-bottom:17px; }
#sparkid-language-card .sl-symbol { width:43px; height:43px; border:1px solid #e7defa; border-radius:15px; background:#f2edff; display:grid; place-items:center; color:#7351ce; flex-shrink:0; }
#sparkid-language-card svg { display:block; width:23px; height:23px; }
#sparkid-language-card .sl-eyebrow { font-size:10px; font-weight:700; letter-spacing:1.3px; text-transform:uppercase; color:#65557f; }
#sparkid-language-card .sl-close { position:absolute; right:12px; top:12px; width:44px; height:44px; display:grid; place-items:center; background:none; border:0; border-radius:50%; color:#637083; padding:0; cursor:pointer; }
#sparkid-language-card .sl-close svg { width:18px; height:18px; }
#sparkid-language-card .sl-close:hover { background:#f2edff; color:#0f2d53; }
#sparkid-language-card h2 { font-family:'Playfair Display',Georgia,serif; font-size:27px; font-weight:600; line-height:1.2; letter-spacing:-.45px; margin:0 0 11px; color:#0f2d53; text-wrap:balance; }
#sparkid-language-card .sl-description { margin:0 0 20px; color:#536078; font-size:14px; line-height:1.6; font-weight:500; }
#sparkid-language-card .sl-label { display:block; color:#536078; font-size:11px; font-weight:700; margin:0 0 6px; }
#sparkid-language-card .sl-select-wrap { position:relative; }
#sparkid-language-card select { width:100%; height:48px; appearance:none; border:1px solid #dcd9e6; border-radius:12px; padding:0 40px 0 14px; background:#fff; color:#0f2d53; font-size:15px; font-weight:600; cursor:pointer; }
#sparkid-language-card .sl-chevron { position:absolute; right:15px; top:15px; width:18px; height:18px; pointer-events:none; color:#6c7383; }
#sparkid-language-card .sl-continue { width:100%; min-height:49px; margin-top:13px; display:flex; align-items:center; justify-content:center; gap:10px; padding:12px 16px; border:0; border-radius:999px; background:linear-gradient(105deg,#6945d7,#8d40b2); color:#fff; font-size:14px; font-weight:700; line-height:1.4; text-decoration:none; cursor:pointer; box-shadow:0 4px 12px #7344cb1c; transition:filter .15s ease,transform .15s ease; }
#sparkid-language-card .sl-continue svg { width:18px; height:18px; flex-shrink:0; }
#sparkid-language-card .sl-continue:hover { filter:brightness(1.08); transform:translateY(-1px); }
#sparkid-language-card .sl-stay { display:block; width:100%; min-height:44px; padding:10px 8px; margin:4px 0 0; border:0; background:none; border-radius:10px; color:#536078; text-align:center; text-decoration:underline; text-underline-offset:3px; font-size:12px; font-weight:600; cursor:pointer; }
#sparkid-language-card .sl-note { margin:8px 0 0; padding-top:13px; border-top:1px solid #ece8f0; font-size:10px; color:#667085; text-align:center; font-weight:500; }
#sparkid-language-card :is(button,a,select):focus-visible { outline:3px solid #6d43d5; outline-offset:4px; }
#sparkid-language-preview { position:fixed; left:16px; bottom:16px; z-index:9989; max-width:calc(100vw - 32px); padding:8px 12px; border-radius:9px; background:#0f2d53; color:#fff; font:12px/1.5 system-ui,sans-serif; box-shadow:0 4px 16px #0f2d5322; }
@keyframes sparkid-language-enter { from {opacity:0; transform:translateY(10px)} to {opacity:1; transform:translateY(0)} }
@media (max-width:600px) {
 #sparkid-language-card { right:12px; bottom:max(12px,env(safe-area-inset-bottom)); width:calc(100vw - 24px); max-width:none; padding:22px; border-radius:22px; max-height:calc(100dvh - 24px); }
 #sparkid-language-card .sl-top { margin-bottom:12px; }
 #sparkid-language-card .sl-symbol { width:35px; height:35px; border-radius:12px; }
 #sparkid-language-card .sl-symbol svg { width:20px; height:20px; }
 #sparkid-language-card h2 { font-size:25px; }
 #sparkid-language-card .sl-description { margin-bottom:15px; }
 #sparkid-language-card .sl-note { margin-top:3px; padding-top:10px; }
 #sparkid-language-preview { top:8px; bottom:auto; left:50%; transform:translateX(-50%); width:max-content; font-size:10px; }
}
@media (prefers-reduced-motion:reduce) { #sparkid-language-card, #sparkid-language-overlay { animation:none; } #sparkid-language-card .sl-continue { transition:none; } }
