/* KORA WORLD — multilingual small-screen readability; no text is truncated. */
html{scroll-padding-bottom:120px}button,input,select,a{touch-action:manipulation}
:where(h1,h2,h3){overflow-wrap:anywhere;hyphens:auto}
html:lang(zh) :where(h1,h2,h3){letter-spacing:0;line-break:strict;word-break:normal}
@media(max-width:760px){
body{padding-bottom:calc(116px + env(safe-area-inset-bottom,0px))}
header,main>section,footer{min-width:0}
.mast{gap:12px;min-width:0}.brand{flex-shrink:0}.controls{min-width:0;max-width:55%;gap:8px}.controls>.text-button{display:none}
.controls select{width:132px;max-width:100%;min-height:48px;font-size:16px;padding:10px 12px;border-radius:18px}.controls button{min-height:48px}
header nav{gap:8px;padding-top:2px;padding-bottom:15px;scroll-snap-type:x proximity;scroll-padding-inline:20px}
header nav a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 16px;font-size:13px;line-height:1.45;scroll-snap-align:start;flex-shrink:0}
.hero{padding:26px 20px 28px}.hero h1{font-size:clamp(38px,10.8vw,48px);line-height:1.13;letter-spacing:-1.3px;margin:20px 0 16px;overflow-wrap:anywhere;hyphens:auto}.hero h1 span,.hero h1 em{max-width:100%;overflow-wrap:anywhere}
.hero p{font-size:15px;line-height:1.7;max-width:none}.hero .eyebrow{font-size:10px;line-height:1.45;letter-spacing:.08em;max-width:100%;padding:8px 11px}
.actions{gap:10px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;max-width:100%;padding:13px 17px;font-size:14px;line-height:1.45;text-align:center;white-space:normal;overflow-wrap:anywhere}
.section-head h2{font-size:clamp(26px,7.2vw,30px);line-height:1.22;letter-spacing:-.65px}.section-head .muted{font-size:13px;line-height:1.7}.eyebrow{line-height:1.5}.muted{font-size:14px;line-height:1.7}
.search-field{min-height:52px;padding-inline:15px}.search-field input{font-size:16px;line-height:1.45;padding-block:15px}.search-field button{width:44px;height:44px;flex:0 0 44px}
.topic-bar{gap:8px;scroll-snap-type:x proximity;scroll-padding-inline:3px}.topic-bar button{min-height:46px;font-size:13px;line-height:1.4;padding:11px 16px;scroll-snap-align:start}
.edition-note{font-size:12px;line-height:1.75}.edition-badge{font-size:11px;line-height:1.5;max-width:100%}
.news-tile h3{font-size:clamp(22px,6.2vw,26px);line-height:1.25;letter-spacing:-.45px;overflow-wrap:anywhere;hyphens:auto}.news-tile p{font-size:14px;line-height:1.7}.tile-body{padding:19px 20px 22px}.tile-meta{font-size:11px;line-height:1.5;gap:10px;flex-wrap:wrap}.read-arrow{font-size:13px;line-height:1.5}
.topic-art{height:auto;min-height:84px;padding:18px 20px;gap:14px}.topic-art span{max-width:calc(100% - 62px);font-size:11px;line-height:1.5;letter-spacing:.06em;overflow-wrap:anywhere}.topic-art strong{font-size:44px;line-height:1.1;flex-shrink:0}
.app-shortcuts a{font-size:14px;line-height:1.4;min-width:0}.app-shortcuts a>span{max-width:100%}
.radio h2{font-size:clamp(28px,8vw,34px);line-height:1.2;letter-spacing:-.5px}.radio .muted{font-size:13px;line-height:1.75}.radio .eyebrow{font-size:10px;line-height:1.5}.chip{font-size:14px;line-height:1.4;min-height:46px;padding:11px 17px}.script-box p{font-size:15px;line-height:1.85}.script-box p.muted{font-size:12px;line-height:1.75}.script-box h3{font-size:18px;line-height:1.35}.state{font-size:10px;line-height:1.6;letter-spacing:.05em}
.tvstage h3{font-size:clamp(31px,9vw,40px);line-height:1.15;letter-spacing:-.5px}.tvstage span{font-size:14px;line-height:1.65}.lower{font-size:11px;line-height:1.5;flex-wrap:wrap;gap:8px}.step{font-size:13px;line-height:1.75}.step b{line-height:1.6;margin-bottom:5px}
.languages h2{font-size:29px!important;line-height:1.2!important}.languages .muted{font-size:13px;line-height:1.75}.languages h3{font-size:20px;line-height:1.35}.lang-list span{font-size:13px;line-height:1.5;padding:9px 12px;overflow-wrap:anywhere;max-width:100%}
#app h2{font-size:clamp(27px,7.8vw,32px)!important;line-height:1.2!important}#app .muted{font-size:14px;line-height:1.75}#app .steps{grid-template-columns:1fr!important}.text-button{font-size:14px;line-height:1.5;min-height:46px;white-space:normal;overflow-wrap:anywhere}
.launch-grid div{font-size:14px;line-height:1.85}.launch-grid h3{font-size:21px;line-height:1.35}.launch>.muted{font-size:13px;line-height:1.8}.sources{font-size:13px;line-height:1.8}.sources summary{min-height:46px;display:list-item;padding-block:10px;cursor:pointer}.sources a{overflow-wrap:anywhere}
.install-bar{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding:22px!important}.install-bar strong{font-size:20px;line-height:1.3}.install-bar p{font-size:13px;line-height:1.7}.install-bar button{width:100%;min-height:48px;font-size:14px;line-height:1.45;padding:13px 18px;white-space:normal;overflow-wrap:anywhere}.offline-status{font-size:12px;line-height:1.65;margin-top:9px}
.agenda-callout h2{font-size:25px;line-height:1.25}.agenda-callout p{font-size:14px;line-height:1.75}.agenda-callout a{display:flex;align-items:center;justify-content:center;min-height:48px;font-size:14px;line-height:1.5;white-space:normal;text-align:center;overflow-wrap:anywhere}.agenda-lede{font-size:16px;line-height:1.8}.agenda-warning{font-size:14px;line-height:1.8}.agenda-item h3{font-size:24px;line-height:1.25;letter-spacing:-.3px}.agenda-item p{font-size:14px;line-height:1.75}.agenda-item time{font-size:12px;line-height:1.7}.agenda-status{font-size:11px;line-height:1.6;white-space:normal}
.article-page{padding-inline:14px}.article-top{padding:24px 21px 19px}.article-top h1{font-size:clamp(27px,7.4vw,34px);line-height:1.22;letter-spacing:-.5px;overflow-wrap:anywhere;hyphens:auto}.article-deck{font-size:16px;line-height:1.75}.article-copy{padding-inline:21px;font-size:16px;line-height:1.85}.article-copy p{margin-bottom:24px}.article-meta{font-size:12px;line-height:1.75}.article-language{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;font-size:14px;line-height:1.5;margin:17px 0}.article-language select{width:100%;max-width:100%;min-height:48px;font-size:16px;padding:12px 16px}.source-box{font-size:13px;line-height:1.8;padding:18px}.source-box a{overflow-wrap:anywhere}.translation-note{font-size:12px!important;line-height:1.8!important}.translation-note summary{min-height:46px;cursor:pointer}.translation-note p{font-size:12px;line-height:1.8}
.article-actions{gap:10px}.article-actions button{min-height:48px;flex:1 1 120px;max-width:100%;font-size:14px;line-height:1.45;white-space:normal;padding:12px 15px;overflow-wrap:anywhere}.social-links{gap:9px}.social-links a{min-height:46px;font-size:13px;line-height:1.4;flex:1 1 88px;padding:11px 14px;white-space:normal;overflow-wrap:anywhere}.copy-fallback{font-size:16px;min-height:48px;max-width:100%}
.mobile-nav{left:12px;right:12px;padding:8px;gap:2px;bottom:max(10px,env(safe-area-inset-bottom));border-radius:29px}.mobile-nav a{min-width:0;min-height:64px;flex:1 1 0;gap:5px;padding:8px 3px;font-size:11px;line-height:1.2;text-align:center;border-radius:21px;white-space:normal;overflow-wrap:anywhere}.mobile-nav a span{display:block;max-width:100%;line-height:1.2}.mobile-nav svg{width:21px;height:21px;flex-shrink:0}
dialog{width:calc(100% - 28px);max-width:520px;padding:24px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto}dialog h2{font-size:27px;line-height:1.25}dialog p,.install-dialog ol{font-size:15px;line-height:1.8}dialog button{min-height:48px;font-size:14px;line-height:1.5;min-width:88px;padding:12px 18px}.offline-language select{font-size:16px;min-height:48px;max-width:100%;border-radius:18px;padding:10px 14px}
}
@media(max-width:380px){.actions{display:grid;grid-template-columns:minmax(0,1fr)}.actions a{width:100%}.app-shortcuts{gap:8px}.app-shortcuts a{padding:15px 11px}.phone{max-width:100%}.hero h1{letter-spacing:-.9px}}

/* Same reading comfort in the desktop compact preview. */
body.mobile-preview{padding-bottom:calc(116px + env(safe-area-inset-bottom,0px))}
body.mobile-preview header,body.mobile-preview main>section,body.mobile-preview footer{min-width:0}
body.mobile-preview .mast{gap:12px;min-width:0}
body.mobile-preview .brand{flex-shrink:0}
body.mobile-preview .controls{min-width:0;max-width:55%;gap:8px}
body.mobile-preview .controls>.text-button{display:none}
body.mobile-preview .controls select{width:132px;max-width:100%;min-height:48px;font-size:16px;padding:10px 12px;border-radius:18px}
body.mobile-preview .controls button{min-height:48px}
body.mobile-preview header nav{gap:8px;padding-top:2px;padding-bottom:15px;scroll-snap-type:x proximity;scroll-padding-inline:20px}
body.mobile-preview header nav a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 16px;font-size:13px;line-height:1.45;scroll-snap-align:start;flex-shrink:0}
body.mobile-preview .hero{padding:26px 20px 28px}
body.mobile-preview .hero h1{font-size:clamp(38px,10.8vw,48px);line-height:1.13;letter-spacing:-1.3px;margin:20px 0 16px;overflow-wrap:anywhere;hyphens:auto}
body.mobile-preview .hero h1 span,body.mobile-preview .hero h1 em{max-width:100%;overflow-wrap:anywhere}
body.mobile-preview .hero p{font-size:15px;line-height:1.7;max-width:none}
body.mobile-preview .hero .eyebrow{font-size:10px;line-height:1.45;letter-spacing:.08em;max-width:100%;padding:8px 11px}
body.mobile-preview .actions{gap:10px}
body.mobile-preview .primary,body.mobile-preview .secondary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;max-width:100%;padding:13px 17px;font-size:14px;line-height:1.45;text-align:center;white-space:normal;overflow-wrap:anywhere}
body.mobile-preview .section-head h2{font-size:clamp(26px,7.2vw,30px);line-height:1.22;letter-spacing:-.65px}
body.mobile-preview .section-head .muted{font-size:13px;line-height:1.7}
body.mobile-preview .eyebrow{line-height:1.5}
body.mobile-preview .muted{font-size:14px;line-height:1.7}
body.mobile-preview .search-field{min-height:52px;padding-inline:15px}
body.mobile-preview .search-field input{font-size:16px;line-height:1.45;padding-block:15px}
body.mobile-preview .search-field button{width:44px;height:44px;flex:0 0 44px}
body.mobile-preview .topic-bar{gap:8px;scroll-snap-type:x proximity;scroll-padding-inline:3px}
body.mobile-preview .topic-bar button{min-height:46px;font-size:13px;line-height:1.4;padding:11px 16px;scroll-snap-align:start}
body.mobile-preview .edition-note{font-size:12px;line-height:1.75}
body.mobile-preview .edition-badge{font-size:11px;line-height:1.5;max-width:100%}
body.mobile-preview .news-tile h3{font-size:clamp(22px,6.2vw,26px);line-height:1.25;letter-spacing:-.45px;overflow-wrap:anywhere;hyphens:auto}
body.mobile-preview .news-tile p{font-size:14px;line-height:1.7}
body.mobile-preview .tile-body{padding:19px 20px 22px}
body.mobile-preview .tile-meta{font-size:11px;line-height:1.5;gap:10px;flex-wrap:wrap}
body.mobile-preview .read-arrow{font-size:13px;line-height:1.5}
body.mobile-preview .topic-art{height:auto;min-height:84px;padding:18px 20px;gap:14px}
body.mobile-preview .topic-art span{max-width:calc(100% - 62px);font-size:11px;line-height:1.5;letter-spacing:.06em;overflow-wrap:anywhere}
body.mobile-preview .topic-art strong{font-size:44px;line-height:1.1;flex-shrink:0}
body.mobile-preview .app-shortcuts a{font-size:14px;line-height:1.4;min-width:0}
body.mobile-preview .app-shortcuts a>span{max-width:100%}
body.mobile-preview .radio h2{font-size:clamp(28px,8vw,34px);line-height:1.2;letter-spacing:-.5px}
body.mobile-preview .radio .muted{font-size:13px;line-height:1.75}
body.mobile-preview .radio .eyebrow{font-size:10px;line-height:1.5}
body.mobile-preview .chip{font-size:14px;line-height:1.4;min-height:46px;padding:11px 17px}
body.mobile-preview .script-box p{font-size:15px;line-height:1.85}
body.mobile-preview .script-box p.muted{font-size:12px;line-height:1.75}
body.mobile-preview .script-box h3{font-size:18px;line-height:1.35}
body.mobile-preview .state{font-size:10px;line-height:1.6;letter-spacing:.05em}
body.mobile-preview .tvstage h3{font-size:clamp(31px,9vw,40px);line-height:1.15;letter-spacing:-.5px}
body.mobile-preview .tvstage span{font-size:14px;line-height:1.65}
body.mobile-preview .lower{font-size:11px;line-height:1.5;flex-wrap:wrap;gap:8px}
body.mobile-preview .step{font-size:13px;line-height:1.75}
body.mobile-preview .step b{line-height:1.6;margin-bottom:5px}
body.mobile-preview .languages h2{font-size:29px!important;line-height:1.2!important}
body.mobile-preview .languages .muted{font-size:13px;line-height:1.75}
body.mobile-preview .languages h3{font-size:20px;line-height:1.35}
body.mobile-preview .lang-list span{font-size:13px;line-height:1.5;padding:9px 12px;overflow-wrap:anywhere;max-width:100%}
body.mobile-preview #app h2{font-size:clamp(27px,7.8vw,32px)!important;line-height:1.2!important}
body.mobile-preview #app .muted{font-size:14px;line-height:1.75}
body.mobile-preview #app .steps{grid-template-columns:1fr!important}
body.mobile-preview .text-button{font-size:14px;line-height:1.5;min-height:46px;white-space:normal;overflow-wrap:anywhere}
body.mobile-preview .launch-grid div{font-size:14px;line-height:1.85}
body.mobile-preview .launch-grid h3{font-size:21px;line-height:1.35}
body.mobile-preview .launch>.muted{font-size:13px;line-height:1.8}
body.mobile-preview .sources{font-size:13px;line-height:1.8}
body.mobile-preview .sources summary{min-height:46px;display:list-item;padding-block:10px;cursor:pointer}
body.mobile-preview .sources a{overflow-wrap:anywhere}
body.mobile-preview .install-bar{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding:22px!important}
body.mobile-preview .install-bar strong{font-size:20px;line-height:1.3}
body.mobile-preview .install-bar p{font-size:13px;line-height:1.7}
body.mobile-preview .install-bar button{width:100%;min-height:48px;font-size:14px;line-height:1.45;padding:13px 18px;white-space:normal;overflow-wrap:anywhere}
body.mobile-preview .offline-status{font-size:12px;line-height:1.65;margin-top:9px}
body.mobile-preview .agenda-callout h2{font-size:25px;line-height:1.25}
body.mobile-preview .agenda-callout p{font-size:14px;line-height:1.75}
body.mobile-preview .agenda-callout a{display:flex;align-items:center;justify-content:center;min-height:48px;font-size:14px;line-height:1.5;white-space:normal;text-align:center;overflow-wrap:anywhere}
body.mobile-preview .agenda-lede{font-size:16px;line-height:1.8}
body.mobile-preview .agenda-warning{font-size:14px;line-height:1.8}
body.mobile-preview .agenda-item h3{font-size:24px;line-height:1.25;letter-spacing:-.3px}
body.mobile-preview .agenda-item p{font-size:14px;line-height:1.75}
body.mobile-preview .agenda-item time{font-size:12px;line-height:1.7}
body.mobile-preview .agenda-status{font-size:11px;line-height:1.6;white-space:normal}
body.mobile-preview .article-page{padding-inline:14px}
body.mobile-preview .article-top{padding:24px 21px 19px}
body.mobile-preview .article-top h1{font-size:clamp(27px,7.4vw,34px);line-height:1.22;letter-spacing:-.5px;overflow-wrap:anywhere;hyphens:auto}
body.mobile-preview .article-deck{font-size:16px;line-height:1.75}
body.mobile-preview .article-copy{padding-inline:21px;font-size:16px;line-height:1.85}
body.mobile-preview .article-copy p{margin-bottom:24px}
body.mobile-preview .article-meta{font-size:12px;line-height:1.75}
body.mobile-preview .article-language{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;font-size:14px;line-height:1.5;margin:17px 0}
body.mobile-preview .article-language select{width:100%;max-width:100%;min-height:48px;font-size:16px;padding:12px 16px}
body.mobile-preview .source-box{font-size:13px;line-height:1.8;padding:18px}
body.mobile-preview .source-box a{overflow-wrap:anywhere}
body.mobile-preview .translation-note{font-size:12px!important;line-height:1.8!important}
body.mobile-preview .translation-note summary{min-height:46px;cursor:pointer}
body.mobile-preview .translation-note p{font-size:12px;line-height:1.8}
body.mobile-preview .article-actions{gap:10px}
body.mobile-preview .article-actions button{min-height:48px;flex:1 1 120px;max-width:100%;font-size:14px;line-height:1.45;white-space:normal;padding:12px 15px;overflow-wrap:anywhere}
body.mobile-preview .social-links{gap:9px}
body.mobile-preview .social-links a{min-height:46px;font-size:13px;line-height:1.4;flex:1 1 88px;padding:11px 14px;white-space:normal;overflow-wrap:anywhere}
body.mobile-preview .copy-fallback{font-size:16px;min-height:48px;max-width:100%}
body.mobile-preview .mobile-nav{left:12px;right:12px;padding:8px;gap:2px;bottom:max(10px,env(safe-area-inset-bottom));border-radius:29px}
body.mobile-preview .mobile-nav a{min-width:0;min-height:64px;flex:1 1 0;gap:5px;padding:8px 3px;font-size:11px;line-height:1.2;text-align:center;border-radius:21px;white-space:normal;overflow-wrap:anywhere}
body.mobile-preview .mobile-nav a span{display:block;max-width:100%;line-height:1.2}
body.mobile-preview .mobile-nav svg{width:21px;height:21px;flex-shrink:0}
body.mobile-preview dialog{width:calc(100% - 28px);max-width:520px;padding:24px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto}
body.mobile-preview dialog h2{font-size:27px;line-height:1.25}
body.mobile-preview dialog p,body.mobile-preview .install-dialog ol{font-size:15px;line-height:1.8}
body.mobile-preview dialog button{min-height:48px;font-size:14px;line-height:1.5;min-width:88px;padding:12px 18px}
body.mobile-preview .offline-language select{font-size:16px;min-height:48px;max-width:100%;border-radius:18px;padding:10px 14px}
body.mobile-preview .mobile-nav{left:50%;right:auto;transform:translateX(-50%);width:min(406px,calc(100vw - 24px))}
@media(max-width:760px){html:lang(zh) .hero h1,html:lang(zh) .article-top h1,html:lang(zh) .news-tile h3{letter-spacing:0;line-break:strict}}
html:lang(zh) body.mobile-preview .hero h1{letter-spacing:0}

/* Keep the search input's intrinsic width from widening a 320px screen. */
@media(max-width:760px){.news-tools{grid-template-columns:minmax(0,1fr);min-width:0}.search-field{min-width:0;width:100%;max-width:100%}.search-field input{width:0;min-width:0;flex:1 1 0}}
body.mobile-preview .news-tools{grid-template-columns:minmax(0,1fr);min-width:0}body.mobile-preview .search-field{min-width:0;width:100%;max-width:100%}body.mobile-preview .search-field input{width:0;min-width:0;flex:1 1 0}
