
.has-whatsapp-float{padding-bottom:100px!important}.whatsapp-float{position:fixed!important;right:24px!important;bottom:calc(24px + env(safe-area-inset-bottom,0px))!important;z-index:80;display:inline-flex!important;align-items:center;justify-content:center;gap:10px;min-height:58px;padding:14px 20px;background:#087b42!important;color:#fff!important;border:2px solid #fff;border-radius:999px;box-shadow:0 4px 18px #07342035;text-decoration:none!important;font:700 15px/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;white-space:nowrap;touch-action:manipulation;transition:background .15s,box-shadow .15s;max-width:calc(100vw - 32px);box-sizing:border-box}.whatsapp-float svg{flex:none;display:block}.whatsapp-float:hover{background:#066334!important;box-shadow:0 6px 22px #0734204d}.whatsapp-float:focus-visible{outline:3px solid #075cd4;outline-offset:4px}.site-languages{display:flex;align-items:center;gap:14px;margin-left:auto;font-size:12px}.site-languages a{display:inline-block;white-space:nowrap;padding:4px 0;text-decoration:none}.site-languages a[aria-current="page"]{font-weight:800;text-decoration:underline;text-underline-offset:4px}.top>.wrap{flex-wrap:wrap;gap:8px 18px}.example-gloss{display:block;font-style:normal;font-size:.88em;line-height:1.7;color:#435c6f;margin-top:12px;font-weight:400}.whatsapp-float .example-gloss{display:none}html[lang^="zh"] h1,html[lang^="zh"] h2,html[lang^="zh"] h3{letter-spacing:0!important;line-height:1.32}html[lang^="ms"] .nav{gap:20px}html[lang^="ms"] nav#navigation{gap:18px}html[lang^="ms"] .card h3{font-size:24px}html[lang^="ms"] .brand small{font-size:9px}.site-languages a:focus-visible{outline:2px solid #0875d1;outline-offset:3px}
@media(max-width:760px){.whatsapp-float{right:16px!important;bottom:calc(16px + env(safe-area-inset-bottom,0px))!important;min-height:56px;padding:12px 17px;font-size:14px;gap:8px}.has-whatsapp-float{padding-bottom:94px!important}.site-languages{gap:16px;flex:1 0 100%;margin:0;justify-content:flex-start;font-size:12px}.top>.wrap{padding-top:8px;padding-bottom:8px}.top a{font-size:12px}html[lang^="ms"] .brand small{font-size:8px}.example-gloss{font-size:.85em}}
@media(prefers-reduced-motion:reduce){.whatsapp-float{transition:none}}
@media print{.whatsapp-float,.site-languages{display:none!important}.has-whatsapp-float{padding-bottom:0!important}}
/* Keep the language links in the top bar, separate from the mobile course menu. */
.top .site-languages{position:static;inset:auto;width:auto;min-height:0;padding:0;border:0;background:transparent;box-shadow:none;z-index:auto}.top .site-languages>a{font-size:12px;line-height:1.5;padding:4px 0}.whatsapp-float{z-index:9}

/* Persistent contact has its own space: scrolling content never sits underneath. */
html:has(body.has-whatsapp-float){height:100%;overflow:hidden}body.has-whatsapp-float{height:100%;margin:0;padding-bottom:0!important;overflow:hidden;--contact-space:calc(84px + env(safe-area-inset-bottom,0px))}body.has-whatsapp-float>.site-scroll{position:fixed;inset:0 0 var(--contact-space) 0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:auto;scroll-behavior:smooth;scroll-padding-top:120px;-webkit-overflow-scrolling:touch}.whatsapp-dock{position:fixed;inset:auto 0 0;height:var(--contact-space);z-index:30;border-top:1px solid #d4e3ed;background:#f9fcff;box-shadow:0 -3px 16px #0924410b;padding:12px max(24px,env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) max(24px,env(safe-area-inset-left,0px));box-sizing:border-box}.whatsapp-dock-inner{width:100%;height:100%;max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:16px}.whatsapp-dock-label{font:600 14px/1.4 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#294c64;min-width:0}.whatsapp-dock .whatsapp-float{position:static!important;inset:auto!important;min-height:56px;height:56px;flex:none;margin:0;max-width:100%;box-shadow:0 2px 8px #07342022;padding:12px 20px;box-sizing:border-box}.site-scroll>main,.site-scroll>footer,.site-scroll>header{min-width:0}.site-scroll img{max-width:100%}.site-scroll .split>*{min-width:0}.site-scroll .modules>*,.site-scroll .footergrid>*,.site-scroll .pisa-stats>*,.site-scroll .teaching-grid>*,.site-scroll .bridge-steps>*,.site-scroll .planning-timeline>*,.site-scroll .comprehension-flow>*,.site-scroll .entry-map>*{min-width:0}.site-scroll h1,.site-scroll h2,.site-scroll h3,.site-scroll p,.site-scroll li{overflow-wrap:break-word}.site-scroll .budget-table{min-width:0}.site-scroll .syllabus-table{max-width:100%}
@media(max-width:760px){body.has-whatsapp-float{--contact-space:calc(80px + env(safe-area-inset-bottom,0px))}body.has-whatsapp-float>.site-scroll{scroll-padding-top:96px}.whatsapp-dock{padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}.whatsapp-dock-label{font-size:12px}.whatsapp-dock .whatsapp-float{height:56px;min-height:56px;padding:12px 16px;font-size:14px;gap:8px}.site-scroll .modules{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:350px){.whatsapp-dock-label{font-size:11px}.whatsapp-dock .whatsapp-float{font-size:13px;padding:11px 13px}.whatsapp-dock .whatsapp-float svg{width:24px;height:24px}.site-scroll .modules{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){body.has-whatsapp-float>.site-scroll{scroll-behavior:auto}}
@media print{html:has(body.has-whatsapp-float),body.has-whatsapp-float{height:auto;overflow:visible}body.has-whatsapp-float>.site-scroll{position:static;overflow:visible}.whatsapp-dock{display:none!important}}
/* Keep desktop flyouts inside the header and use the drawer before labels get cramped. */
@media(min-width:1101px){.site-scroll header .nav{position:relative}.site-scroll #navigation>details{position:static}.site-scroll #navigation .dropdown{top:calc(100% - 8px);left:auto;right:40px;max-width:calc(100vw - 80px)}}
@media(min-width:761px) and (max-width:1100px){.site-scroll header .nav{min-height:80px}.site-scroll .menu{display:block;background:white;border:1px solid #d4e3ed;padding:8px 12px;border-radius:5px;color:#092441;font-size:14px}.site-scroll #navigation{display:none;position:absolute;top:80px;left:0;right:0;background:white;padding:20px 25px;border-bottom:1px solid #d4e3ed;font-size:15px;overflow:auto}.site-scroll #navigation.open{display:flex;align-items:stretch;flex-direction:column;gap:23px}.site-scroll #navigation .dropdown{position:static;box-shadow:none;border:0;padding:12px 0 0}.site-scroll #navigation .school-dropdown{display:block;width:auto;max-width:none;max-height:none;overflow:visible}.site-scroll #navigation .nav-group{margin-bottom:18px}.site-scroll #navigation .nav-group>a{font-size:14px}.site-scroll #navigation .nav-start{display:block;margin-bottom:15px}}
@media(max-width:1100px){.site-scroll #navigation{max-height:calc(100dvh - var(--contact-space) - 200px)}}
/* Keep side-by-side AEIS labels readable on the smallest phones. */
.entry-pair>div{min-width:0}.entry-pair b{overflow-wrap:anywhere}@media(max-width:480px){.entry-pair b{font-size:clamp(17px,5vw,23px)}}
