.visually-hidden { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
/* The wrapper never draws a border: exactly one control boundary. */
.language-switcher { position:relative; display:block; flex:none; max-width:15rem; padding:0; border:0; border-radius:0; background:none; }
.language-switcher summary,.language-switcher select { display:flex; align-items:center; gap:.55rem; min-height:44px; max-width:100%; font:500 .88rem/1.4 system-ui,sans-serif; color:var(--ink); background:var(--surface); border:1px solid var(--line-strong); border-radius:.7rem; padding:.6rem .75rem; cursor:pointer; list-style:none; }
.language-switcher summary::-webkit-details-marker { display:none; }
.language-switcher summary::after { content:''; width:6px; height:6px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); margin-inline-start:.3rem; margin-bottom:3px; }
.language-switcher[open] summary::after { transform:rotate(225deg); margin-bottom:-3px; }
.language-switcher ul { position:absolute; z-index:30; inset-inline-end:0; top:100%; width:max-content; min-width:14rem; max-width:calc(100vw - 2rem); max-height:min(65dvh,28rem); overflow:auto; overscroll-behavior:contain; list-style:none; padding:.4rem; margin:.5rem 0 0; background:var(--surface); border:1px solid var(--line-strong); border-radius:.8rem; box-shadow:0 1rem 2rem #0007; }
.language-switcher li { margin:0; }
.language-switcher li a,.language-switcher li button { display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:44px; width:100%; text-align:start; padding:.65rem .8rem; color:var(--ink); background:none; border:0; border-radius:.4rem; font:500 .9rem/1.4 system-ui,sans-serif; text-decoration:none; cursor:pointer; }
.language-switcher li a:hover,.language-switcher li button:hover { background:var(--surface-2); }
.language-switcher li [aria-current] { background:#173c45; color:#a8f0f4; }
.language-switcher li [aria-current]::after { content:'✓'; font-weight:700; }
.language-switcher [aria-disabled=true] { opacity:.6; cursor:not-allowed; }
.language-short { display:none; }
html[dir=rtl] { text-align:start; }
html[dir=rtl] .signal { display:inline-block; }
html[dir=rtl] .checkout-steps,html[dir=rtl] .price-card ul { padding-left:0; padding-inline-start:1.3rem; }
html[dir=rtl] .check-list li { padding-left:0; padding-inline-start:1.75rem; }
html[dir=rtl] .check-list li::before { left:auto; right:0; }
html[dir=rtl] .plan-option,html[dir=rtl] .checkout-aside { text-align:start; }
input[type=email],input[autocomplete=one-time-code],.checkout-key-row input { direction:ltr; unicode-bidi:isolate; }
.checkout-key-row input,.checkout-verified-email strong { overflow-wrap:anywhere; }
.checkout-verified-email strong { unicode-bidi:isolate; direction:ltr; display:inline-block; }
.whop-embed { direction:ltr; }
.language-state-note { font-size:.875rem; line-height:1.6; color:#c5d2dc; }
button,.button,h1,h2,h3 { overflow-wrap:anywhere; }
html[lang=ar] :is(h1,h2,h3) { line-height:1.4; letter-spacing:normal; }
html[lang=ja] :is(h1,h2,h3) { line-height:1.35; letter-spacing:normal; }
@media(max-width:560px) { .language-short { display:inline; } .language-name { display:none; } .language-switcher { max-width:8rem; } .language-switcher summary { font-size:.8rem; } }
