:root{color-scheme:light;--ink:#111c29;--muted:#52616b;--line:#dce6e2;--accent:#237568}
*{box-sizing:border-box;letter-spacing:0}
main,footer,h1,h2,.footer-links>*,.legal-heading>*{min-width:0;overflow-wrap:anywhere;max-width:100%}
body{margin:0;background:#fff;color:var(--ink);font:14px/1.65 "Segoe UI","Noto Sans TC","Microsoft JhengHei","Microsoft YaHei","PingFang TC",sans-serif}
html[lang="zh-Hans"] body{font-family:"Segoe UI","Microsoft YaHei","Noto Sans SC","PingFang SC",sans-serif}
.start-page{min-height:100vh;display:flex;flex-direction:column}
header{display:flex;align-items:center;justify-content:space-between;padding:20px 28px;gap:16px}header>a{min-width:0;overflow-wrap:anywhere}
.language{position:relative;flex:none}
button{font:inherit;color:inherit;cursor:pointer}
#languageButton{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:4px;background:transparent}
#languageButton:hover,#languageButton[aria-expanded=true]{background:#edf3f7}
#languageMenu{position:absolute;top:calc(100% + 6px);right:0;z-index:10;width:min(176px,calc(100vw - 40px));padding:4px;border:1px solid #bdc8cf;border-radius:6px;background:#fff;box-shadow:0 6px 20px #142a241f}
#languageMenu button{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:40px;padding:8px 12px;border:0;border-radius:3px;background:transparent;text-align:left}
#languageMenu button:hover,#languageMenu button:focus-visible{background:#edf3f7}
#languageMenu button[aria-checked=true]{font-weight:600;color:var(--accent)}
#languageMenu button[aria-checked=false] span{visibility:hidden}
main{width:min(880px,100%);margin:32px auto;padding:0 28px}
.start-page main{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;margin:0 auto;padding-top:24px;padding-bottom:56px}
.identity{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.identity img{object-fit:contain}
h1{font-size:32px;line-height:1.25;margin:0}h2{font-size:14px;margin:0 0 10px;font-weight:600}
p{margin:0;overflow-wrap:anywhere}.tagline{font-size:16px;color:var(--muted);margin:12px 0 28px;text-align:center}
section{padding:20px 0;border-bottom:1px solid var(--line)}
a{color:var(--accent);text-underline-offset:3px}a:hover{background:#edf3f7}a:focus-visible,button:focus-visible{outline:2px solid #2473b9;outline-offset:3px}
#languageMenu button:focus-visible{outline-offset:-2px}
#languageMenu{width:min(224px,calc(100vw - 40px));max-height:min(480px,calc(100dvh - 100px));overflow-y:auto;overscroll-behavior:contain}
html[lang="hi"] body{font-family:"Nirmala UI","Mangal","Segoe UI",sans-serif}
html[lang="ja"] body{font-family:"Yu Gothic UI","Meiryo","Segoe UI",sans-serif}
html[lang="ko"] body{font-family:"Malgun Gothic","Segoe UI",sans-serif;word-break:keep-all;overflow-wrap:anywhere}
footer{width:min(880px,100%);margin:0 auto;padding:20px 28px;font-size:13px}
.legal-footer{border-top:1px solid var(--line);color:var(--muted)}.legal-footer h2{font-size:13px;color:var(--ink);margin-bottom:6px}
.legal-heading{display:flex;align-items:center;justify-content:space-between;gap:8px 16px;flex-wrap:wrap;margin-bottom:6px}
.legal-heading h2{margin:0}.publisher-logo{max-width:100%;height:auto;object-fit:contain}
.policy-page main{max-width:760px;margin-top:12px;font-size:16px;line-height:1.75}.policy-page section{border:0;padding:24px 0 0}.policy-page h2{font-size:18px;line-height:1.4;margin-top:28px}.policy-page h2:first-child{margin-top:0}.policy-page p+p{margin-top:12px}.policy-page main>footer{padding:28px 0}
.footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:4px 16px;margin-top:12px}.footer-links a{display:inline-flex;align-items:center;min-height:40px;overflow-wrap:anywhere}
.gateway-copy{border:0;text-align:center;font-size:16px}.gateway-copy p{margin-bottom:16px}.gateway-copy a{display:inline-flex;align-items:center;min-height:44px;font-weight:600}.gateway-page footer{text-align:center}.gateway-page .footer-links{justify-content:center}
[hidden]{display:none!important}
@media(max-width:420px){header{padding:12px 20px}main,footer{padding-left:20px;padding-right:20px}.start-page main{padding-top:16px;padding-bottom:28px}.identity img{width:64px;height:64px}.tagline{font-size:15px}.legal-heading{justify-content:flex-start}.publisher-logo{width:156px}}
@media(forced-colors:active){a,button,#languageMenu{border:1px solid ButtonText}#languageMenu button[aria-checked=true]{outline:1px solid Highlight;outline-offset:-3px}}
/* The English agreement stays visible when the surrounding language changes. */
.policy-page .legal-summary,.policy-page .legal-context{padding-block:16px;margin-block:24px}
.policy-page .legal-divider{display:block;width:100%;height:0;border:0;border-top:2px solid #a9bab1;margin:32px 0}
.legal-agreement{max-width:76ch;overflow-wrap:anywhere}
.legal-agreement h3{font-size:17px;line-height:1.5;margin:32px 0 12px;letter-spacing:0}
.legal-agreement p{line-height:1.75;margin:12px 0}
@media print{.policy-page header,.policy-page footer{display:none}.legal-agreement{max-width:none}.legal-agreement h3{break-after:avoid}}
:root #disclaimer, .legal-summary > p:first-of-type { white-space: pre-line; }
