:root { color-scheme: light; --accent:#4B1E3F; --page-bg:#faf8f5; --brand:var(--accent); --ink:var(--accent); --muted:var(--accent); }
* { box-sizing:border-box; }
body { margin:0; background:var(--page-bg); color:var(--ink); font:calc(20px + 4pt)/1.5 "Cormorant Garamond",Georgia,serif; }
.home { max-width:1280px; margin:0 auto; padding:56px 24px 72px; display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; }
.intro { padding-top:34px; } .eyebrow { font-size:calc(15px + 4pt); letter-spacing:1.7px; color:var(--brand); font-weight:650; margin:0 0 16px; }
h1 { font:600 clamp(calc(52px + 4pt),calc(6vw + 4px + 4pt),calc(80px + 4pt))/1.08 "Cormorant Garamond",Georgia,serif; color:var(--brand); margin:0 0 24px; }
.lead { font-size:calc(26px + 4pt); line-height:1.5; max-width:360px; margin:0 0 24px; }
.intro-note { max-width:330px; color:var(--muted); font-size:calc(18px + 4pt); line-height:1.8; }
.card { background:#fff; border:1px solid #e8e0e5; border-radius:18px; padding:32px; box-shadow:0 10px 35px #4b1e3f05; min-width:0; }
.card-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:28px; }
h2 { font-size:calc(25px + 4pt); letter-spacing:-.4px; margin:0; font-weight:600; }h3 { font-size:calc(22.72px + 4pt); }.card-heading span { white-space:nowrap; color:var(--brand); font-size:calc(15px + 4pt); background:#f7f0f5; padding:5px 10px; border-radius:20px; }
.grid { display:grid; grid-template-columns:1fr 1fr; gap:20px 16px; }
.field { display:flex; flex-direction:column; gap:8px; min-width:0; }
label { font-size:calc(17px + 4pt); font-weight:600; } small { font-size:calc(15px + 4pt); color:var(--muted); font-weight:400; } label small { margin-left:4px; }
input,select { width:100%; min-width:0; font:inherit; background:#fff; color:var(--ink); border:1px solid #d8cfd6; border-radius:8px; padding:12px; min-height:48px; }
input::placeholder { color:var(--accent); opacity:.74; font-size:calc(18px + 4pt); }
input:focus,select:focus { outline:2px solid var(--brand); outline-offset:2px; }
.hint { font-size:calc(16px + 4pt); color:var(--muted); margin:0; line-height:1.6; } #time-note { margin:14px 0 24px; }
.place-field { position:relative; } #place-options { position:absolute; z-index:2; top:78px; margin:0; padding:4px; list-style:none; width:100%; max-height:250px; overflow:auto; background:#fff; border:1px solid #d8cfd6; border-radius:8px; box-shadow:0 10px 24px #352f3520; }
[role=option] { padding:12px; cursor:pointer; font-size:calc(18px + 4pt); border-radius:5px; } [role=option][aria-selected=true],[role=option]:hover { background:#f5edf2; color:var(--brand); }
a { color:inherit; }
button { cursor:pointer; font:600 calc(18px + 4pt) "Cormorant Garamond",Georgia,serif; border-radius:8px; min-height:48px; padding:13px 18px; }
.checkout-link { display:inline-block; font:600 calc(18px + 4pt) "Cormorant Garamond",Georgia,serif; border-radius:8px; min-height:48px; padding:13px 18px; text-decoration:none; }
.primary,.secondary { color:var(--accent); border:1px solid var(--accent); background:linear-gradient(170deg,#fff 0%,#fbf6f9 55%,#f0e4eb 100%); box-shadow:inset 0 2px 1px #ffffffd9,inset 0 -2px 2px #4b1e3f12,0 4px 0 #4b1e3f96,0 10px 20px #4b1e3f24; transition:background .18s ease,box-shadow .18s ease,transform .18s ease; }
.primary:hover,.secondary:hover { background:linear-gradient(170deg,#fff 0%,#f9f0f5 55%,#ead7e2 100%); box-shadow:inset 0 2px 1px #ffffffed,inset 0 -2px 2px #4b1e3f1a,0 6px 0 #4b1e3fa6,0 14px 24px #4b1e3f2e; transform:translateY(-2px); }
.primary:active,.secondary:active { background:linear-gradient(170deg,#eee1e9,#fcf9fb); box-shadow:inset 0 3px 6px #4b1e3f30,0 1px 0 #4b1e3f96,0 3px 6px #4b1e3f20; transform:translateY(3px); }
.primary:disabled,.secondary:disabled { opacity:.65; cursor:wait; transform:none; }
@media(prefers-reduced-motion:reduce) { .primary,.secondary { transition:none; } }
button:focus-visible,a:focus-visible { outline:2px solid var(--brand); outline-offset:3px; }
#calculate { width:100%; display:flex; justify-content:space-between; align-items:center; }.form-foot { font-size:calc(15px + 4pt); color:var(--muted); text-align:center; margin:14px 0 0; }
.notice { background:#f7f0f5; border-left:3px solid var(--brand); padding:12px; font-size:calc(17px + 4pt); margin:12px 0; }.error { color:var(--accent); font-size:calc(17px + 4pt); margin:12px 0; }
.result { grid-column:1/-1; }.result dl { display:flex; gap:24px; flex-wrap:wrap; }.result dt { font-size:calc(16px + 4pt); color:var(--muted); }.result dd { margin:4px 0; font-weight:600; }#bodygraph { width:100%; max-width:750px; height:auto; display:block; margin:20px auto 0; }
dialog { width:min(460px,calc(100% - 32px)); border:1px solid #e8e0e5; border-radius:18px; padding:28px; color:var(--ink); }dialog::backdrop { background:#21131dcc; }.dialog-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; }#close-auth { background:none; border:0; padding:0; min-width:44px; font-size:calc(32px + 4pt); }dialog p { font-size:calc(18px + 4pt); color:var(--muted); }dialog .field { margin-top:18px; }.auth-actions { display:flex; gap:10px; margin-top:20px; }.auth-actions button { flex:1; }
[hidden] { display:none !important; }
@media(max-width:1100px) and (min-width:761px) { .home { grid-template-columns:1fr; } }
@media(max-width:760px) { .home { display:block; padding:28px 16px 48px; }.intro { padding:0 4px; }.eyebrow { margin-bottom:10px; }h1 { margin-bottom:14px; }.lead { font-size:calc(22px + 4pt); max-width:none; margin-bottom:14px; }.intro-note { max-width:none; margin-bottom:26px; }.card { padding:24px 20px; }.result { margin-top:24px; } }
@media(max-width:420px) { .grid { grid-template-columns:1fr; gap:16px; }.card { padding:20px 16px; }.card-heading { gap:6px; }h2 { font-size:calc(23px + 4pt); } }

#find-matches { margin-top:24px; max-width:100%; }
#free-match h3 { overflow-wrap:anywhere; }
#basic-invitation { margin-top:28px; border-top:1px solid #e8e0e5; padding-top:20px; }
#basic-upgrade:disabled { cursor:not-allowed; }
#basic-status { margin-top:10px; }
/* Translation-length resilience; keep the approved sizes and colors. */
html[lang="tr"] h1 { overflow-wrap:anywhere; hyphens:auto; }
@media(max-width:340px) { .card-heading { flex-wrap:wrap; } }
#bodygraph { direction:ltr; }
html[dir="rtl"] .notice { border-left:0; border-right:3px solid var(--brand); }
.basic-matches { padding-inline-start:24px; }
.basic-matches > li { padding:20px 0; border-bottom:1px solid #e8e0e5; }
.basic-matches > li > a { font-weight:600; font-size:calc(22px + 4pt); overflow-wrap:anywhere; }
#member-content > h2 { margin-top:24px; }
#member-content > button { margin-top:24px; max-width:100%; }
.celebrity-bodygraph { display:block; width:100%; max-width:750px; height:auto; margin:24px auto; direction:ltr; }
#pro-form { display:grid; grid-template-columns:minmax(0,1fr); gap:20px; margin-top:24px; }
#pro-form > * { min-width:0; }
#pro-form fieldset { min-width:0; border:1px solid #e8e0e5; border-radius:8px; padding:12px; }
#pro-form legend, #pro-form summary { font-weight:600; }
#pro-form summary { cursor:pointer; padding:12px 0; }
.pro-checks { display:grid; grid-template-columns:repeat(auto-fit,minmax(85px,1fr)); gap:8px; }
.pro-checks label { display:flex; align-items:center; gap:6px; }
.pro-checks input { width:18px; min-height:18px; height:18px; flex:0 0 auto; }
.pro-planet { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:12px; }
.pro-matches { padding-inline-start:20px; }
.pro-matches li { padding:16px 0; border-bottom:1px solid #e8e0e5; }
.pro-matches a { font-weight:600; overflow-wrap:anywhere; }
.pro-pagination { display:flex; flex-wrap:wrap; gap:12px; }
#pro-results { margin-top:24px; }

.home-landing { display:block; }
.home-landing:not(.chart-view) { padding-top:16px; padding-bottom:0; }
.home-landing:not(.chart-view) > .birth-panel,
.home-landing:not(.chart-view) > .result,
.home-landing.chart-view > .hero { display:none !important; }
.hero { max-width:1020px; margin:0 auto; padding:clamp(18px,2.4vw,34px) 0 0; text-align:center; }
.hero h1 { max-width:1000px; margin:0 auto 26px; font-size:clamp(72px,7.8vw,122px); line-height:1.02; text-wrap:balance; text-shadow:-0.5px -0.5px 1.5px #ffffffd9,0.5px 0.5px 2.5px #d8c4d0,1.25px 1.25px 3.5px #bc9eaf,2px 2px 5px #9a748b,2.5px 2.5px 6.5px #71455f,4.25px 5.5px 12px #4b1e3f66; }
.hero .lead { max-width:790px; margin:0 auto 34px; font-size:26px; }
.hero-cta { display:inline-flex; align-items:center; justify-content:center; max-width:100%; font-size:30px; padding:15px 26px; color:var(--page-bg); background:var(--accent); box-shadow:inset 0 2px 2px #ffffff70,inset 0 -3px 3px #17091482,0 6px 0 #2f1128,0 15px 28px #4b1e3f59; }
.hero-cta:hover { background:var(--accent); box-shadow:inset 0 2px 2px #ffffff8a,inset 0 -3px 3px #17091482,0 8px 0 #2f1128,0 19px 32px #4b1e3f66; }
.hero-cta:active { background:var(--accent); box-shadow:inset 0 4px 7px #17091494,0 2px 0 #2f1128,0 5px 9px #4b1e3f40; }
.hero-powered { margin:18px 0 0; color:var(--muted); font-size:calc(14px + 4pt); }
.result-actions { display:flex; flex-wrap:wrap; gap:16px; margin:22px 0; }
.result-actions button { flex:1 1 240px; }
.birth-panel { max-width:760px; margin:0 auto 56px; }
.home-landing > .result { max-width:1000px; margin:32px auto; }
.birth-panel > #form-title { margin:0 0 14px 14px; line-height:1.15; }
.home-landing.chart-view { font-size:calc(20px + 6pt); }
.home-landing.chart-view h2 { font-size:calc(25px + 6pt); }
.home-landing.chart-view h3 { font-size:calc(22.72px + 6pt); }
.home-landing.chart-view .eyebrow,
.home-landing.chart-view .form-foot { font-size:calc(15px + 6pt); }
.home-landing.chart-view label,
.home-landing.chart-view .notice,
.home-landing.chart-view .error { font-size:calc(17px + 6pt); }
.home-landing.chart-view .birth-card label[for="first-name"],
.home-landing.chart-view .birth-card label[for="birth-date"],
.home-landing.chart-view .birth-card label[for="birth-time"],
.home-landing.chart-view .birth-card label[for="birth-place"] { font-size:calc(17px + 8pt); }
.birth-card .time-format { font-size:calc(1em - 2pt); opacity:.56; }
.home-landing.chart-view small { font-size:calc(15px + 6pt); }
.home-landing.chart-view .hint,
.home-landing.chart-view .result dt { font-size:calc(16px + 6pt); }
.home-landing.chart-view .form-foot { font-size:calc(16px + 4pt); opacity:.7; }
.home-landing.chart-view #time-note { font-size:calc(16px + 3pt); opacity:.56; }
.home-landing.chart-view #birth-place::placeholder { opacity:.518; }
.date-time-entry { position:relative; }
.date-time-entry > #birth-date,.date-time-entry > #birth-time { padding-right:56px; }
.home-landing.chart-view #birth-date::placeholder { opacity:.518; }
.home-landing.chart-view #birth-time::placeholder { opacity:.7; }
.picker-icon { position:absolute; right:21px; top:50%; width:20px; height:20px; transform:translateY(-50%); background:var(--accent); opacity:.518; pointer-events:none; }
.date-icon { -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='5' width='18' height='16' rx='2' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M7 2v6M17 2v6M3 10h18' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='5' width='18' height='16' rx='2' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M7 2v6M17 2v6M3 10h18' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E") center/contain no-repeat; }
.time-icon { -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M12 6v6l4 3' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M12 6v6l4 3' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E") center/contain no-repeat; }
.date-time-entry > .picker-proxy { position:absolute; right:8px; top:50%; transform:translateY(-50%); width:44px; min-width:0; height:44px; min-height:0; padding:0; border:0; opacity:0; cursor:pointer; box-shadow:none; }
.home-landing.chart-view #calculate { margin-top:16px; }
.home-landing.chart-view .chart-person-name { font-size:calc(22px + 6pt); }
.home-landing.chart-view .basic-matches > li > a { font-size:calc(22px + 6pt); }
.home-landing.chart-view button,
.home-landing.chart-view .checkout-link,
.home-landing.chart-view [role=option],
.home-landing.chart-view input::placeholder { font-size:calc(18px + 6pt); }
.home-landing.chart-view .card,
.home-landing.chart-view ~ #auth-dialog { box-shadow:0 3px 0 #fff,0 10px 22px #4b1e3f24,0 22px 48px #4b1e3f18; }
.home-landing.chart-view input,
.home-landing.chart-view select,
.home-landing.chart-view ~ #auth-dialog input { box-shadow:inset 0 1px 3px #4b1e3f14,0 3px 8px #4b1e3f24,0 8px 18px #4b1e3f12; }
.home-landing.chart-view #form-title,
.home-landing.chart-view .card h2,
.home-landing.chart-view .card h3,
.home-landing.chart-view ~ #auth-dialog h2 { text-shadow:0 .5px 0 #fff,.5px 1px 0 #e6dbe1,1px 1.5px .5px #bda8b4,1.5px 2.5px 4px #4b1e3f25; }
.home-landing.chart-view #form-title { font-size:calc(40px + 2pt); text-shadow:0 .75px 0 #fff,.75px 1.25px 0 #e6dbe1,1.25px 2px .75px #bda8b4,2px 3.5px 5px #4b1e3f30; }
.home-landing.chart-view ~ #auth-dialog { font-size:calc(20px + 6pt); }
.home-landing.chart-view ~ #auth-dialog h2 { font-size:calc(25px + 6pt); }
.home-landing.chart-view ~ #auth-dialog label { font-size:calc(17px + 6pt); }
.home-landing.chart-view ~ #auth-dialog p { font-size:calc(18px + 6pt); }
.home-landing.chart-view ~ #auth-dialog small { font-size:calc(15px + 6pt); }
.home-landing.chart-view ~ #auth-dialog button { font-size:calc(18px + 6pt); }
.home-landing.chart-view ~ #auth-dialog #close-auth { font-size:calc(32px + 6pt); }
.chart-person-name { margin:8px 0 16px; font-size:calc(22px + 4pt); font-weight:600; }
@media(max-width:420px) {
  .home-landing.chart-view h2,
  .home-landing.chart-view ~ #auth-dialog h2 { font-size:calc(23px + 6pt); }
}
@media(max-width:760px) {
  .home-landing:not(.chart-view) { padding:0 16px; }
  .hero { padding:8px 0 0; }
  .hero h1 { font-size:clamp(50px,12.8vw,72px); margin-bottom:22px; }
  .hero .lead { font-size:22px; margin-bottom:28px; }
  .hero-cta { width:100%; font-size:clamp(28px,7.6vw,30px); padding:15px 16px; }
}
@media(max-width:340px) {
  .hero h1 { font-size:40px; margin-bottom:12px; }
  .hero .lead { font-size:18px; line-height:1.3; margin-bottom:16px; }
  .hero-cta { font-size:22px; padding:10px 12px; }
  .hero-powered { margin-top:12px; font-size:16px; }
}
@media(min-width:341px) and (max-width:380px) {
  .hero h1 { font-size:45px; margin-bottom:16px; }
  .hero .lead { font-size:20px; line-height:1.35; margin-bottom:20px; }
  .hero-powered { margin-top:14px; }
}
@media(max-width:760px) and (max-height:640px) {
  .hero h1 { font-size:clamp(38px,11.7vw,46px); line-height:1; margin-bottom:12px; }
  .hero .lead { font-size:18px; line-height:1.3; margin-bottom:14px; }
  .hero-cta { font-size:clamp(21px,6vw,26px); padding:9px 12px; }
  .hero-powered { margin-top:10px; font-size:16px; }
}

.account-entry { margin:0 33px 48px; }
.account-login { display:block; width:calc((100% - 16px)/2); min-height:68px; padding:12px; font:inherit; color:var(--page-bg); background:var(--accent); }
.account-login:hover,.account-login:active { color:var(--page-bg); background:var(--accent); }
.account-entry .hint { margin-top:12px; }
.auth-page { max-width:760px; display:block; }
.auth-page .field { margin:18px 0; }
@media(max-width:420px) { .account-entry { margin-inline:17px; }.account-login { width:100%; } }

.home-landing.chart-view #account-login { font-size:calc(clamp(18px,5.5vw,26px) + 4pt); white-space:normal; }

@media(min-width:761px) {
  .birth-panel:not([hidden]) { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px 24px; align-items:center; }
  .birth-panel > #form-title { grid-column:1; grid-row:1; margin:0 0 0 14px; }
  .birth-panel > .account-entry { grid-column:2; grid-row:1; margin:0; }
  .birth-panel > .birth-card { grid-column:1 / -1; }
  .birth-panel .account-login,.birth-panel .account-login:hover,.birth-panel .account-login:active { width:100%; color:var(--accent); background:#d5c2cd; }
}

.home-landing.chart-view .page-heading,.plans-page .page-heading,.product-page .page-heading,.product-page .product-tier { margin:0 0 14px 14px; font-size:calc(40px + 2pt); line-height:1.15; font-weight:600; text-shadow:0 .75px 0 #fff,.75px 1.25px 0 #e6dbe1,1.25px 2px .75px #bda8b4,2px 3.5px 5px #4b1e3f30; }
.home-landing.chart-view .match-plans { width:100%; max-width:640px; font-size:calc(clamp(18px,5.5vw,26px) + 4pt); margin-top:24px; }
.plan-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.plan-grid .card { display:flex; flex-direction:column; }
.plan-grid h3 { margin:0 0 16px; }
.plan-grid p { flex:0 0 auto; margin:0 0 20px; }
.plan-grid .product-price { font-size:32px; font-weight:600; }
.plan-grid .primary { margin-top:auto; }
.plan-grid .checkout-link { text-align:center; }
.bottom-back-nav { max-width:1120px; margin:0 auto; padding:0 24px 32px; }
.bottom-back { display:inline-flex; width:64px; height:40px; align-items:center; justify-content:center; color:var(--accent); border:1px solid #d5b9c5; border-radius:5px; background:transparent; }
.bottom-back svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:2.8; stroke-linecap:round; stroke-linejoin:round; }
.bottom-back:hover { background:#f7f0f5; }
.bottom-back:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
@media(max-width:767px) { .plan-grid { grid-template-columns:1fr; }.bottom-back-nav { padding-inline:16px; } }
@media(max-width:340px) { .bottom-back-nav { padding-inline:8px; } }

#pro-purchase > button, #pro-purchase > .checkout-link { display:block; width:100%; margin-top:20px; }

.product-page .product-tier { margin-bottom:8px; font-size:calc(40px + 3pt); text-decoration:underline; text-underline-offset:.12em; }

/* Draft locale previews: keep longer labels readable on narrow screens. */
html:is([lang="fr"],[lang="de"],[lang="es"]) .auth-actions { flex-wrap:wrap; }
html:is([lang="fr"],[lang="de"],[lang="es"]) .auth-actions button { flex:1 1 140px; min-width:0; }
html:is([lang="fr"],[lang="de"],[lang="es"]) :is(h1,h2,h3,button,.checkout-link) { overflow-wrap:anywhere; }

/* Phase 2 drafts: preserve readable labels at narrow viewport widths. */
html:is([lang="it"],[lang="pt"],[lang="nl"]) .auth-actions { flex-wrap:wrap; }
html:is([lang="it"],[lang="pt"],[lang="nl"]) .auth-actions button { flex:1 1 140px; min-width:0; }
html:is([lang="it"],[lang="pt"],[lang="nl"]) :is(h1,h2,h3,button,.checkout-link) { overflow-wrap:anywhere; }
html:is([lang="it"],[lang="pt"],[lang="nl"]) .pro-checks:has(input[name="centers"]) { grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); }

/* Phase 3 drafts: script-aware wrapping without changing approved locales. */
html:is([lang="ru"],[lang="he"],[lang="ja"],[lang="zh"],[lang="ko"]) { overflow-wrap:anywhere; }
html:is([lang="ru"],[lang="he"],[lang="ja"],[lang="zh"],[lang="ko"]) .auth-actions { flex-wrap:wrap; }
html:is([lang="ru"],[lang="he"],[lang="ja"],[lang="zh"],[lang="ko"]) .auth-actions button { flex:1 1 140px; min-width:0; }
html:is([lang="ru"],[lang="he"],[lang="ja"],[lang="zh"],[lang="ko"]) :is(h1,h2,h3,button,.checkout-link,legend,summary) { overflow-wrap:anywhere; }
html:is([lang="ru"],[lang="he"],[lang="ja"],[lang="zh"],[lang="ko"]) .pro-checks:has(input[name="centers"]) { grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr)); }
html:is([lang="ru"],[lang="he"],[lang="ja"],[lang="zh"],[lang="ko"]) .pro-checks span { min-width:0; overflow-wrap:anywhere; }
html:is([lang="ja"],[lang="zh"],[lang="ko"]) .eyebrow { letter-spacing:normal; }
html[lang="ko"] { word-break:keep-all; overflow-wrap:anywhere; }
/* Numeric entry order stays LTR; labels and form flow follow the RTL locale. */
html:is([lang="he"],[lang="ar"],[lang="fa"]) :is(.date-time-entry,#birth-date,#birth-time,#username,#password,.product-price,[data-percent]) { direction:ltr; unicode-bidi:isolate; }
html:is([lang="he"],[lang="ar"],[lang="fa"]) :is(#birth-date,#birth-time,#username,#password) { text-align:left; }
html:is([lang="he"],[lang="ar"],[lang="fa"]) :is(#first-name,#last-name,#birth-place,#place-options,#chart-person-name,#chart-timezone,#match-name) { unicode-bidi:plaintext; }
html:is([lang="he"],[lang="ar"],[lang="fa"]) label small { margin-left:0; margin-inline-start:4px; }
html:is([lang="he"],[lang="ar"],[lang="fa"]) .page-heading,html:is([lang="he"],[lang="ar"],[lang="fa"]) .product-tier { margin-left:0; margin-inline-start:14px; }
/* Keep the persistent back affordance at the same left edge as the header. */
html:is([lang="he"],[lang="ar"],[lang="fa"]) .bottom-back-nav { direction:ltr; }
html:is([lang="he"],[lang="ar"],[lang="fa"]) #calculate > span[aria-hidden="true"] { display:inline-block; transform:scaleX(-1); }

/* Keep the Turkish options heading within its column at the narrowest size. */
@media(max-width:340px) { html[lang="tr"] .plans-page .page-heading { font-size:39px; } }

/* Long Dutch disclosure labels must wrap inside the corrected PRO column. */
html[lang="nl"] #pro-form summary { overflow-wrap:anywhere; }

/* Phase 4 drafts: keep long labels inside narrow cards; leave older locales unchanged. */
html:is([lang="ar"],[lang="fa"],[lang="el"]) { overflow-wrap:anywhere; }
html:is([lang="ar"],[lang="fa"],[lang="el"]) .auth-actions { flex-wrap:wrap; }
html:is([lang="ar"],[lang="fa"],[lang="el"]) .auth-actions button { flex:1 1 140px; min-width:0; }
html:is([lang="ar"],[lang="fa"],[lang="el"]) :is(h1,h2,h3,button,.checkout-link,legend,summary) { overflow-wrap:anywhere; }
html:is([lang="ar"],[lang="fa"],[lang="el"]) .pro-checks:has(input[name="centers"]) { grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr)); }
html:is([lang="ar"],[lang="fa"],[lang="el"]) .pro-checks span { min-width:0; overflow-wrap:anywhere; }
html:is([lang="ar"],[lang="fa"]) .eyebrow { letter-spacing:normal; }
/* Fit the complete Greek word “περισσότερο” instead of orphaning its last letter. */
@media(max-width:340px) { html[lang="el"] .hero h1 { font-size:36px; } }
