/* Shared language controls and script-aware typography. All assets are local. */
:root{--sans:'Fieldnotes Sans','Fieldnotes Latin','Segoe UI',Arial,sans-serif;--serif:'Fieldnotes Serif',Georgia,serif}
body{font-family:var(--sans)}
.wordmark{direction:ltr;unicode-bidi:isolate}
.header-inner>nav{margin-left:0;margin-inline-start:auto}
.language-picker{position:relative;flex-shrink:0;z-index:20;font:500 12px/1.5 var(--sans);border-inline-start:1px solid var(--line,#dce1da);padding-inline-start:22px}
.language-picker summary{display:flex;align-items:center;gap:9px;min-height:44px;cursor:pointer;list-style:none;white-space:nowrap;color:var(--ink,#202b26)}
.language-picker summary::-webkit-details-marker{display:none}
.language-picker img{width:20px;height:15px;object-fit:cover;flex-shrink:0;border-radius:2px;box-shadow:0 0 0 1px #0001}
.language-picker__chevron{display:inline-flex;align-items:center;justify-content:center;align-self:center;flex:0 0 14px;width:14px;height:14px;font-size:0;line-height:0;margin-inline-start:4px;transition:transform .15s}
.language-picker__chevron svg{display:block;flex-shrink:0;width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.language-picker[open] .language-picker__chevron{transform:rotate(180deg)}
.header-inner .language-picker__menu,.language-picker__menu{position:absolute;inset-inline-end:0;top:calc(100% + 9px);display:grid;grid-template-columns:1fr;gap:0;min-width:225px;max-width:calc(100vw - 36px);max-height:min(70vh,520px);overflow-y:auto;align-self:auto;margin:0;padding:7px;background:#fff;border:1px solid #dce1da;border-radius:7px;box-shadow:0 12px 35px #15271b20}
.header-inner .language-picker__menu a,.language-picker__menu a{position:static;display:flex;align-items:center;gap:11px;min-height:41px;padding:8px 12px;border-radius:4px;text-decoration:none;font:500 13px/1.5 var(--sans);color:#263d2c}
.header-inner .language-picker__menu a:after{display:none}
.language-picker__menu a:hover,.language-picker__menu a[aria-current]{background:#edf2e9}
.language-picker__menu a[aria-current]{font-weight:700}
.language-picker__menu a[aria-current]:after{content:'✓';margin-inline-start:auto}
.language-picker summary:focus-visible,.language-picker a:focus-visible{outline:3px solid #5f836e;outline-offset:2px}
.gallery-language{display:flex;justify-content:flex-end;margin-bottom:26px}
.gallery-language .language-picker{border:0;padding:0}
.idp-promo__button span{white-space:normal;overflow-wrap:anywhere}
.idp-promo__button{min-width:0}
.image-lightbox__header h2,.image-lightbox__close,.image-lightbox__status,.image-lightbox .image-lightbox__caption{font-family:var(--sans)}
.article-body,.feature-copy,.intro-aside,.text-page{overflow-wrap:break-word}
.intro-grid>*,.feature-card>*,.install-box>*,.essentials>*{min-width:0}
.feature-copy h2{overflow-wrap:anywhere;hyphens:auto}
html[data-font='ar'],html[data-font='th'],html[data-font='ja'],html[data-font='ko']{--serif:var(--sans)}
html[data-font='ar'] :is(h1,h2,h3,.eyebrow,.edition,.section-number,.guide-card,.article-meta),html[data-font='th'] :is(h1,h2,h3,.eyebrow,.edition,.section-number,.guide-card){letter-spacing:normal}
html[data-font='ar'] h1{line-height:1.45;font-size:clamp(36px,4.5vw,59px)}
html[data-font='th'] h1{line-height:1.45;font-size:clamp(36px,4.5vw,59px)}
html[data-font='ja'] h1,html[data-font='ko'] h1{line-height:1.35;letter-spacing:-.025em;font-size:clamp(34px,4.3vw,56px);word-break:normal}
html[data-font='ja'] .article-body p,html[data-font='th'] .article-body p{line-height:2}
html[data-font='ko'] .article-body{word-break:keep-all;overflow-wrap:break-word}
html[dir='rtl'] .brand-mark{margin-right:0;margin-inline-end:13px}
html[dir='rtl'] .wordmark .brand-mark{margin-inline-end:0;margin-inline-start:13px}
html[dir='rtl'] .edition-number{margin-left:0;margin-inline-start:auto}
html[dir='rtl'] .intro-aside{padding-left:0;padding-inline-start:28px;border-left:0;border-inline-start:1px solid #bcc9bc}
html[dir='rtl'] .question-list>a>svg,html[dir='rtl'] .browser-button svg,html[dir='rtl'] .idp-promo__button svg{margin-left:0;margin-inline-start:auto}
html[dir='rtl'] :is(.text-link,.browser-button,.question-list>a,.related-guides a,.idp-promo__button)>svg{transform:scaleX(-1)}
html[dir='rtl'] .guide-card{padding:22px 0 22px 31px}
html[dir='rtl'] .guide-card:after{right:auto;left:3px;content:'\2190'}
html[dir='rtl'] .guide-card:hover:after{left:-2px}
html[dir='rtl'] .article-sidebar{padding-right:0;padding-inline-end:7px}
html[dir='rtl'] .quick-answer{border-left:0;border-inline-start:3px solid #698567}
html[dir='rtl'] .idp-promo--top{border-left:0;border-inline-start:3px solid var(--green)}
html[dir='rtl'] .method-steps li{padding:0 43px 13px 0}
html[dir='rtl'] .method-steps li:before{left:auto;right:0}
html[dir='rtl'] .table-scroll table,html[dir='rtl'] .table-scroll caption{text-align:start}
html[dir='rtl'] .faq summary{padding-left:28px;padding-right:0}
html[dir='rtl'] .faq summary:after{right:auto;left:0}
@media(max-width:1050px){.header-inner{gap:22px}.language-picker{padding-inline-start:18px}}
@media(max-width:760px){
 .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 15px;padding-block:16px}
 .header-inner>.wordmark{grid-column:1/-1;width:max-content}
 .header-inner>nav{grid-column:1;grid-row:2;min-height:40px;margin:0;justify-self:start}
 .header-inner>.language-picker{grid-column:2;grid-row:2;padding-inline-start:16px}
 .language-picker summary{font-size:12px}
 .language-picker__menu{top:calc(100% + 3px)}
 html[dir='rtl'] .intro-aside{padding:0;border:0}
 html[dir='rtl'] .article-sidebar{padding:0}
 html[dir='rtl'] .method-steps li{padding-right:37px}
 html[dir='rtl'] .guide-card{padding:19px 0 19px 26px}
 html[data-font='ar'] h1,html[data-font='th'] h1{font-size:36px}
 html[data-font='ja'] h1,html[data-font='ko'] h1{font-size:34px}
}
@media(max-width:430px){html[dir='rtl'] .guide-card{padding-left:35px}html[dir='rtl'] .guide-card:after{left:6px}}
@media(max-width:350px){.home-intro h1{font-size:40px;overflow-wrap:anywhere}.feature-copy h2{font-size:25px}}
