.language-select { color-scheme:dark; font:inherit; font-weight:600; color:#d2d2d4; background:#101113; border:1px solid #55565b; border-radius:8px; padding:8px 28px 8px 10px; max-width:100%; min-height:40px; cursor:pointer; }
.language-select:focus-visible { outline:2px solid #e4c877; outline-offset:3px; }
.header-language.language-select { background:transparent; border-color:transparent; width:145px; }
.language-select[hidden] { display:none !important; }
.language-picker { color:#d2d2d4; font:600 14px/1.3 var(--font-body,sans-serif); }
.language-picker-label { display:inline-flex; align-items:center; gap:9px; }
.language-picker-flag { display:inline-block; flex-shrink:0; font-size:23px; line-height:1; }
.language-picker-trigger { display:flex; align-items:center; justify-content:space-between; gap:14px; width:100%; min-height:36px; padding:6px 10px; color:inherit; font:inherit; background:transparent; border:1px solid transparent; border-radius:8px; cursor:pointer; }
.language-picker-trigger:hover,.language-picker-trigger[aria-expanded="true"] { background:transparent; border-color:transparent; }
.language-picker.header-language,.language-picker.header-language:hover,.language-picker.drawer-language,.language-picker.drawer-language:hover { background:transparent; border-color:transparent; }
.language-picker-arrow { width:7px; height:7px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); margin:0 3px 4px; }
.language-picker-menu { position:absolute; z-index:1000; right:0; top:calc(100% + 6px); width:max-content; min-width:145px; max-width:calc(100vw - 32px); box-sizing:border-box; padding:6px; background:#17181a; border:1px solid #55565b; border-radius:10px; box-shadow:0 12px 32px #0009; }
.language-picker-menu[hidden] { display:none; }
.language-picker-option { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; min-height:44px; padding:10px 12px; border:1px solid transparent; border-radius:6px; background:transparent; color:#eee; font:inherit; text-align:left; cursor:pointer; }
.language-picker-option[aria-checked="true"] { color:#ef8585; background:transparent; border-color:transparent; }
.language-picker-option:not(:disabled):hover { background:#28292c; }
.language-picker-option:not(:disabled):focus-visible { background:#28292c; outline:1px solid #85868b; outline-offset:-2px; }
.language-picker-option:disabled { color:#8b8c91; cursor:not-allowed; font-size:12px; }
.language-picker-trigger:focus-visible { outline:1px solid #85868b; outline-offset:2px; }
.header-language.language-picker { width:145px; }
.translation-notice { color:#c6c6ca; font-size:14px; line-height:1.6; padding:12px 16px; border-left:3px solid #ad4949; background:#17181a; }
html[lang="zh-Hans"] { --font-body:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif; }
html[lang="zh-Hans"] :is(body,button,input,select,textarea,h1,h2,h3,h4) { font-family:var(--font-body); }
html[lang="zh-Hans"] :is(h1,h2,h3,h4) { letter-spacing:normal; line-height:1.4; overflow-wrap:anywhere; }
html[lang="zh-Hans"] p { line-height:1.85; line-break:strict; }
html[lang="zh-Hans"] .nav-tab { white-space:normal; }
html[lang="zh-Hans"] .hero h1 { font-size:clamp(2rem,5vw,5rem); }
@media(max-width:720px) { html[lang="zh-Hans"] .hero h1 { font-size:clamp(1.7rem,8vw,3rem); } }
html[lang="ja"] { --font-body:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif; }
html[lang="ja"] body,html[lang="ja"] button,html[lang="ja"] input,html[lang="ja"] select,html[lang="ja"] textarea { font-family:var(--font-body); }
html[lang="ja"] :is(h1,h2,h3,h4) { font-family:var(--font-body); letter-spacing:normal; line-height:1.4; word-break:normal; overflow-wrap:anywhere; }
html[lang="ja"] p { line-height:1.85; line-break:strict; }
html[lang="ja"] .nav-tab { white-space:normal; }
html[lang="ja"] .hero h1 { font-size:clamp(2rem,5vw,5rem); }
html[lang="ja"] .campaign-detail-title { overflow-wrap:anywhere; }
@media(max-width:720px) { html[lang="ja"] .hero h1 { font-size:clamp(1.7rem,8vw,3rem); } }
html:is([lang="es"],[lang="it"]) .nav-tab { white-space:normal; }
@media(max-width:720px) {
 .site-header .header-inner { grid-template-columns:minmax(0,1fr) auto 48px; grid-template-areas:"brand language toggle" "nav nav nav"; column-gap:8px; }
 .site-header .header-language { display:block; position:relative; grid-area:language; top:auto; right:auto; width:125px; margin:0; }
 .site-header .header-language .language-picker-trigger { min-height:44px; padding:6px; gap:8px; }
 .site-header .header-language .language-picker-label { gap:6px; }
 .drawer-language.language-picker { position:relative; display:block; width:100%; padding:0; margin:0; border:0; }
 .drawer-language .language-picker-trigger { min-height:48px; padding:12px 14px; border-color:transparent; background:transparent; }
 .drawer-language .language-picker-menu { top:auto; bottom:calc(100% + 8px); width:max-content; min-width:145px; box-sizing:border-box; }
 html:is([lang="es"],[lang="it"]) .hero h1 { font-size:clamp(2rem,12.5vw,4.05rem); }
 .drawer-language.language-select { display:block; width:100%; min-height:48px; margin:0; padding:12px 36px 12px 14px; }
 html:is([lang="es"],[lang="it"]) .campaign-detail-title { overflow-wrap:anywhere; }
 html:is([lang="es"],[lang="it"]) .campaign-social-link { min-width:0; }
}
@media(max-width:480px) {
 .site-header .header-language { width:56px; }
 .site-header .header-language .language-picker-trigger>.language-picker-label { font-size:0; gap:0; }
 .site-header .header-language.language-select { width:56px; font-size:12px; padding-left:4px; }
}
@media(max-width:360px) {
 .site-header .header-inner { padding-left:10px; padding-right:10px; column-gap:4px; }
 .site-header .brand-logo { width:48px; }
 .site-header .brand-initials { font-size:1.5rem; }
 .site-header .brand-name { font-size:0.55rem; }
}
