/* Shared navigation: source, production export and VPS use identical markup. */
.site-header.top{height:auto;min-height:100px;display:flex;flex-wrap:wrap;gap:16px 24px;padding:22px 36px;position:relative;align-items:center}
.site-header .main-nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px 18px;flex:1;min-width:0;color:var(--ink)}
.site-header .main-nav a,.site-header summary{padding:6px 0;line-height:1.4}
.site-header .language-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:0;width:100%;font-size:12px;line-height:1.8;color:var(--ink)}
.language-nav a{padding:3px 8px;min-height:28px;display:inline-block}
.language-nav a+a:before{content:'·';color:var(--muted);margin-right:12px}
.language-nav a[aria-current=page]{font-weight:750;text-decoration:underline;text-underline-offset:4px}
.desktop-countries{position:relative}.desktop-countries summary{cursor:pointer;list-style:revert;font-size:13px;color:var(--ink)}
.site-header .country-menu{position:absolute;z-index:30;top:100%;right:0;width:260px;max-width:calc(100vw - 48px);padding:12px 18px;margin:8px 0 0;background:var(--paper);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px #2222;list-style:none}
.site-header .country-menu li{margin:0}.site-header .country-menu a{display:block;padding:10px 4px;overflow-wrap:anywhere}
.site-header .mobile-countries{display:none}
.site-header a:hover,.site-footer a:hover,.country-page a:hover,.home-countries a:hover{text-decoration:underline;text-underline-offset:3px}
.site-header a:focus-visible,.site-header summary:focus-visible,.site-footer a:focus-visible{outline:3px solid var(--orange);outline-offset:4px;border-radius:2px}
footer.site-footer{display:grid;grid-template-columns:1.2fr 1fr 1fr;align-items:start;gap:32px;max-width:1440px;padding:40px 48px;margin:40px auto 0;height:auto;line-height:1.7}
.site-footer nav{display:block;min-width:0;color:var(--ink);font-size:13px}.site-footer h2{font-size:15px;margin:0 0 10px;line-height:1.4;letter-spacing:normal}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:0}.site-footer li a{display:inline-block;padding:5px 0}.site-footer p{margin:12px 0}.site-footer a{overflow-wrap:anywhere}
.country-page{max-width:1120px;overflow-wrap:anywhere}.country-page h1{font-size:clamp(28px,4vw,46px);letter-spacing:-1px;line-height:1.16}.country-page .country-intro{font-size:18px}.country-page section{margin:32px 0}.country-page p{max-width:80ch}.country-page a{color:var(--orange);text-decoration:underline;text-underline-offset:3px}.country-page li{line-height:1.8;margin:8px 0}.country-page .primary,.country-page .outline{display:inline-flex;gap:8px;max-width:100%;white-space:normal;text-decoration:none;vertical-align:middle;margin:4px 8px 4px 0}.country-page .primary{color:white}
.country-page table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:14px;margin:24px 0}.country-page caption{text-align:left;font-weight:650;margin-bottom:12px;font-size:19px}.country-page th,.country-page td{padding:12px;text-align:left;vertical-align:top;border:1px solid var(--line);overflow-wrap:anywhere}.country-page th{width:38%}
.country-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.country-card{padding:24px;border:1px solid var(--line);border-radius:8px;background:#fff8;min-width:0}.country-card h2{font-size:22px;margin:0 0 12px}.country-card ul{padding-left:20px}
.home-countries{border:1px solid var(--line);border-radius:8px;padding:24px;margin:0 0 28px}.home-countries h2{font-size:25px;letter-spacing:-.6px;margin:0}.home-countries ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;list-style:none}.home-countries a{text-decoration:underline;line-height:1.8;overflow-wrap:anywhere}.country-backlink{padding:16px 20px;margin:24px 0;border:1px solid var(--line);border-radius:6px}.country-backlink a{text-decoration:underline}.country-backlink ul{padding-left:20px}
.language-directory{columns:2;column-gap:36px;padding-left:20px}.language-directory li{break-inside:avoid;padding:3px 0}.country-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-left:20px}
@media(max-width:760px){.site-header.top{padding:16px 20px;gap:12px}.site-header .brand{font-size:21px}.site-header .main-nav{flex-basis:100%;justify-content:flex-start;gap:6px 16px;font-size:12px}.site-header .language-nav{justify-content:flex-start}.language-nav a{padding:5px 5px}.language-nav a+a:before{margin-right:7px}.desktop-countries{display:none}.site-header .mobile-countries{display:block;width:100%;border-top:1px solid var(--line);padding-top:8px}.mobile-countries ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px;margin:0;padding:0;list-style:none;font-size:12px}.mobile-countries a{display:block;line-height:1.5;padding:5px 0;overflow-wrap:anywhere}footer.site-footer{grid-template-columns:1fr;gap:24px;padding:28px 20px}.site-footer nav ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 16px}.country-grid{grid-template-columns:1fr}.country-card{padding:18px}.country-page{padding:28px 20px}.country-page h1{letter-spacing:-.6px}.country-page table{font-size:12px}.country-page th,.country-page td{padding:8px}.language-directory{columns:1}.home-countries{padding:18px}.home-countries ul{grid-template-columns:repeat(2,minmax(0,1fr))}.home-countries h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Long rule identifiers, XPath paths and comparison tables must fit narrow screens. */
main{overflow-wrap:anywhere}
main .intro>div{min-width:0;max-width:100%}
main pre{max-width:100%;min-width:0;overflow-x:auto}
main :not(pre)>code{white-space:normal;overflow-wrap:anywhere}
@media(max-width:760px){main table{width:100%;max-width:100%;table-layout:fixed}main th,main td{white-space:normal;overflow-wrap:anywhere}main h1{overflow-wrap:anywhere}}
/* Override the retired mobile account-hiding rule; keep all eight language links on one row. */
.site-header.top .main-nav .account-link{display:inline-flex}
.site-header .language-nav a{font-size:12px;min-height:30px;padding:4px 3px}
.site-header .language-nav a+a:before{margin-right:5px}
@media(max-width:760px){.site-header .main-nav a{min-height:36px}.site-header .mobile-countries a{min-height:36px}}
