.locale-picker {position:relative;display:inline-block;flex-shrink:0;font-size:12px;line-height:1.4;white-space:nowrap;z-index:45}
.locale-picker summary {display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #e8ebf0;border-radius:9px;cursor:pointer;color:#526174;background:#fff;list-style:none;font-weight:500}
.locale-picker summary::-webkit-details-marker {display:none}
.locale-picker .locale-switcher {position:absolute;right:0;top:calc(100% + 6px);display:flex;flex-direction:column;align-items:stretch;gap:2px;min-width:120px;padding:5px;background:#fff;border:1px solid #e3e7ed;border-radius:10px;box-shadow:0 6px 24px #19223614}
.locale-picker:not([open]) .locale-switcher {display:none}
.locale-switcher a {display:block;padding:9px 12px;border-radius:6px;color:#6b7280;text-decoration:none}
.locale-switcher a:hover,.locale-switcher a[aria-current=true] {color:#172338;background:#f1f3f6}
.locale-switcher a:focus-visible,.locale-picker summary:focus-visible {outline:2px solid #ec596a;outline-offset:2px}
.language-suggestion {position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:80;display:flex;gap:14px;align-items:center;padding:12px 17px;border:1px solid #e3e7ed;border-radius:12px;background:#fff;box-shadow:0 5px 24px #19223614;max-width:calc(100vw - 32px);font-size:13px}
.language-suggestion a {font-weight:600;color:#d74156;white-space:nowrap}
.language-suggestion button {border:0;background:none;cursor:pointer;color:#718096;padding:4px 6px}
.site-nav .nav-actions {flex-wrap:nowrap;gap:12px}
.app-topbar>div {gap:8px}
.login-header>.locale-picker {margin-left:auto;margin-right:16px}
html[lang=en] .hero h1 {font-size:clamp(32px,3.3vw,58px);line-height:1.16}
html[lang=ja] {font-family:'Noto Sans JP','Yu Gothic',Meiryo,sans-serif}
html[lang=ja] .hero h1 {font-size:clamp(30px,3.2vw,56px);line-height:1.35}
html:not([lang=ko]) .feature-tile h3 {line-height:1.35}
html:not([lang=ko]) .hero-intro {line-height:1.8}
@media(max-width:800px) {
  .site-nav {flex-wrap:wrap}
  .site-nav .nav-actions {flex-wrap:wrap}
  .app-topbar .small.muted,.app-topbar .topbar-divider {display:none}
  .language-suggestion {bottom:12px;font-size:12px}
  .login-header {flex-wrap:wrap;gap:10px}
  .login-header>.locale-picker {margin:0}
  .app-topbar>div {flex-wrap:wrap;justify-content:flex-end}
  html:not([lang=ko]) .hero h1 {font-size:clamp(32px,7vw,50px)}
}
