:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#0d1725;color:#e9eef3;color-scheme:dark;--line:#31475e;--gold:#edcb88;--muted:#a8bacb}*{box-sizing:border-box}body{margin:0}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}[hidden]{display:none!important}.layout,.main{width:100%;min-width:0}.layout{min-height:100dvh}
/* The exact same three-level navigation is used at every screen size. */
.academy-header{position:sticky;top:0;z-index:30;background:#101e30;border-bottom:1px solid var(--line);box-shadow:0 5px 18px #0003;padding:0 clamp(12px,3vw,48px) 10px}
.brand-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:10px 0}.brand{display:flex;align-items:center;gap:10px;color:#f0d29c;text-decoration:none;font:20px Georgia,serif}.brand small{display:block;font:10px system-ui;color:var(--muted);letter-spacing:.5px;margin-top:4px}.seal{font-size:29px}.breadcrumbs{font-size:12px;color:var(--muted);white-space:nowrap}
.horizontal-nav{display:flex;flex-direction:row;flex-wrap:nowrap;gap:8px;align-items:stretch;width:100%;margin:0;padding:7px 0}.horizontal-nav+.horizontal-nav{border-top:1px solid #2c4056}.horizontal-nav button{border:1px solid transparent;border-radius:9px;min-height:42px;padding:10px 24px;background:transparent;color:#aebfd0;font-size:14px;font-weight:650;white-space:nowrap;transition:background .18s,color .18s,border-color .18s}.horizontal-nav button:hover{background:#273c52;color:#fff}.subject-nav button{min-width:82px}.subject-nav button.active{background:#293e55;border-color:#526b83;color:#fff0ca}.area-nav button{min-width:140px;font-weight:500}.area-nav button.active{background:#2b3c37;border-color:#8e895d;color:#ffe4a6}.topic-learning-nav button{background:#182b40;border-color:#344d67;min-width:170px}.topic-learning-nav button[aria-pressed=true]{background:#354334;border-color:#d7b775;color:#ffe4a6;box-shadow:inset 0 -2px #d7b775}
#content{width:100%;padding:26px clamp(12px,3vw,48px) 40px}.welcome,.placeholder{max-width:1140px;margin:30px auto}.eyebrow{font-size:11px;letter-spacing:2px;color:#d7b775;font-weight:750}h1{font:normal clamp(26px,3vw,43px) Georgia,serif;color:#f5e5c8;margin:15px 0}.welcome h1{font-size:clamp(34px,4vw,60px);line-height:1.12;max-width:800px;letter-spacing:-1px}p{line-height:1.7;color:var(--muted);max-width:720px}.welcome>p{font-size:16px;max-width:660px}
.featured{display:grid;grid-template-columns:1.35fr 1fr;gap:20px;margin:32px 0 46px}.featured a{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;min-height:250px;padding:30px;border:1px solid #52604f;border-radius:20px;background:radial-gradient(ellipse at 100% 0,#344b43,transparent 70%),#1c2f33;color:#f5e5c8;text-decoration:none;transition:transform .2s,border-color .2s}.featured a:nth-child(2){background:radial-gradient(ellipse at 100% 0,#41435d,transparent 70%),#202a3d;border-color:#4b526d}.featured a:hover{transform:translateY(-4px);border-color:#dec58e}.feature-icon{position:absolute;right:22px;top:25px;font-size:60px;opacity:.6}.featured small{color:#b2c5c5;letter-spacing:2px;font-size:10px}.featured strong{font:36px Georgia,serif;display:block;margin:28px 0 12px}.featured p{margin:0 0 28px;max-width:300px;font-size:13px;color:#b8c8d0}.featured .go{margin-top:auto;font-size:13px;color:#f4d594}.subjects{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:18px}.subjects button{border:1px solid #30445b;background:#152437;border-radius:15px;color:#f3e5c8;text-align:left;padding:18px;min-height:130px}.subjects button:hover{background:#26384e;border-color:#6f8194}.subjects button span{display:block;font-size:24px;margin-bottom:14px}.subjects button strong,.subjects button small{display:block}.subjects button strong{font-size:16px;color:#f7d68c}.subjects button small{color:#b7c7d9;margin-top:4px;font-size:11px}.hint{margin-top:24px;padding:22px;background:#202d44;border-left:3px solid #d7b86f;border-radius:10px}.topic{display:flex;align-items:center;gap:18px;min-height:100px;width:min(650px,100%);margin-top:24px;border:1px solid #425970;background:#1b2e42;border-radius:15px;color:#f3e5c8;text-align:left;padding:20px;transition:transform .2s}.topic:hover{transform:translateX(4px);background:#263b51}.topic>span:first-child{font-size:35px}.topic strong,.topic small{display:block}.topic small{color:#c2ccda;margin-top:5px}.pill{border:1px solid #3d536a;border-radius:20px;color:#a5b9ca;padding:5px 10px;font-size:10px;letter-spacing:.6px;white-space:nowrap}.topic .pill{margin-left:auto}iframe[id$="Frame"]{display:block;width:100%;min-height:0;height:850px;border:1px solid var(--line);border-radius:16px;background:#101c2b}.welcome,.placeholder{animation:shellEnter .3s ease both}@keyframes shellEnter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:700px){.academy-header{padding-bottom:6px}.brand-row{min-height:56px}.brand{font-size:17px}.breadcrumbs{font-size:10px}.horizontal-nav{gap:6px;padding:6px 0}.horizontal-nav button{flex:1 1 0;min-width:0;min-height:44px;padding:9px 6px;font-size:12px}.subject-nav button{font-size:13px}.subjects{grid-template-columns:repeat(3,minmax(0,1fr))}.welcome,.placeholder{margin:18px auto}.featured{margin:26px 0 34px}#content{padding-top:18px}}
@media(max-width:480px){.brand small{display:none}.brand{font-size:16px}.brand-row{gap:8px;min-height:48px}.seal{font-size:24px}.topic-learning-nav button{font-size:11px;padding:9px 3px}.featured{grid-template-columns:1fr;gap:12px}.featured a{min-height:210px;padding:24px}.featured strong{margin-top:20px}.featured p{margin-bottom:18px}.welcome h1{font-size:36px}.subjects{grid-template-columns:repeat(2,minmax(0,1fr))}.topic{padding:16px}.topic .pill{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.map-fullscreen-host .academy-header{display:none}.map-fullscreen-host iframe.map-fullscreen-frame{position:fixed;inset:0;z-index:99999;width:100vw!important;height:100dvh!important;border:0;background:var(--panel,#121a2c)}

@media(max-width:700px){.topic-learning-nav button{white-space:normal;line-height:1.25;min-height:48px}}
