/* Shared production navigation: port of the approved local navigation.css. */
.km-topbar{position:fixed;top:0;left:0;right:0;width:100%;z-index:500;background:#fff;border-bottom:1px solid #f0f0f2;box-shadow:0 1px 3px #24243a03;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:#555;box-sizing:border-box}
.km-navigation-inner{width:calc(100% - 44px);max-width:1138px;height:58px;display:flex;align-items:center;gap:20px;margin:0 auto;box-sizing:border-box}
.km-topbar a{text-decoration:none}.km-brand{display:flex;align-items:center;flex-shrink:0;font-size:17px;font-weight:700;gap:6px;letter-spacing:-.4px;color:#282828!important;white-space:nowrap}.km-brand b{font-weight:700}.km-brand-icon{box-sizing:border-box;display:grid;place-items:center;width:23px;height:23px;font-size:13px;border:2px solid #ed8d53;color:#e98140;box-shadow:inset 0 0 0 2px #fff;border-radius:6px;transform:rotate(-7deg)}
.km-primary-nav{display:flex;align-items:stretch;height:58px;gap:27px;flex-shrink:0;font-size:14px}.km-primary-nav a{position:relative;display:flex;align-items:center;color:#777;white-space:nowrap;padding:0 1px;transition:color .15s}.km-primary-nav a:hover{color:#7652ed}.km-primary-nav a.active{color:#242424;font-weight:650}.km-primary-nav a.active:after{content:"";position:absolute;height:3px;bottom:9px;left:0;right:0;border-radius:3px;background:#7854ed}
.km-nav-search{display:flex;align-items:center;flex:0 1 238px;min-width:170px;max-width:238px;height:30px;margin:0 0 0 auto;padding:0 8px;gap:8px;border:1px solid #e1e1e5;border-radius:3px;background:#fff;box-sizing:border-box}.km-nav-search:focus-within{border-color:#a491dc;box-shadow:0 0 0 2px #7854ed0b}.km-nav-search label{margin:0;line-height:18px;flex-shrink:0;white-space:nowrap;font-size:12px;color:#555;border-right:1px solid #eee;padding-right:8px}.km-nav-search small{color:#888;font-size:10px}.km-topbar .km-nav-search input{width:100%;min-width:0;font-size:12px;color:#555;background:transparent;border:0;box-shadow:none;outline:none;padding:0;margin:0;height:26px}.km-nav-search input::placeholder{color:#aaa}.km-nav-search button{display:grid;place-items:center;padding:0;flex-shrink:0;border:0;background:transparent;color:#777;cursor:pointer}.km-topbar svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.km-nav-bell{display:flex;align-items:center;justify-content:center;border-left:1px solid #ededf0;padding-left:19px;height:24px;color:#62626b}.km-account-menu{position:relative;flex-shrink:0}.km-account-menu summary{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;cursor:pointer;background:#f4f0ff;border:1px solid #e8e1f4;list-style:none;overflow:hidden;color:#9479bb}.km-account-menu summary::-webkit-details-marker{display:none}.km-account-menu summary img{width:30px;height:30px;object-fit:cover;border-radius:50%}.km-topbar :focus-visible{outline:2px solid #7854ed;outline-offset:3px}.km-account-dropdown{position:absolute;right:0;top:44px;width:230px;max-height:calc(100vh - 84px);overflow:auto;background:#fff;padding:8px;border:1px solid #eeedf3;border-radius:7px;box-shadow:0 8px 30px #2d25401a;z-index:30;box-sizing:border-box}.km-account-caption{padding:11px 10px 14px;border-bottom:1px solid #f0eef5;margin-bottom:5px}.km-account-caption b{font-size:14px;overflow-wrap:anywhere}.km-account-caption small{display:block;color:#aaa;font-size:11px;margin-top:6px}.km-account-dropdown a{display:flex;justify-content:space-between;padding:11px 10px;border-radius:4px;font-size:13px;color:#666;line-height:18px}.km-account-dropdown a:hover{background:#f5f1ff;color:#7652ed}.km-account-dropdown a span{color:#bbb}.km-account-dropdown hr{margin:6px 10px;border:0;border-top:1px solid #f0eef5}
body:has(.km-topbar) .main:not(.monaco-editor *){padding-top:78px}body:has(.km-topbar) .nav--shadow{display:none}.km-account-menu:not([open])>.km-account-dropdown{display:none}
@media(max-width:1120px){.km-navigation-inner{gap:16px}.km-primary-nav{gap:22px}}
@media(max-width:900px){.km-nav-search{display:none}.km-nav-bell{margin-left:auto}.km-navigation-inner{width:calc(100% - 24px)}}
@media(max-width:620px){.km-navigation-inner{height:54px;gap:12px}.km-brand{font-size:14px}.km-nav-bell{display:none}.km-primary-nav{height:54px;flex:1;min-width:0;gap:19px;overflow-x:auto;font-size:13px;scrollbar-width:none}.km-primary-nav::-webkit-scrollbar{display:none}.km-brand-icon{width:19px;height:19px;font-size:11px}.km-account-menu summary{width:29px;height:29px}body:has(.km-topbar) .main:not(.monaco-editor *){padding-top:70px}}
.km-account-extra>summary{width:auto;height:auto;border:0;border-radius:4px;background:transparent;display:flex;justify-content:space-between;padding:11px 10px;font-size:13px;color:#888;line-height:18px}.km-account-extra>summary:hover{background:#f5f1ff;color:#7652ed}.km-account-extra:not([open])>div{display:none}

.km-brand-logo{display:block;width:auto;max-width:140px;height:34px;object-fit:contain}@media(max-width:620px){.km-brand-logo{height:28px;max-width:100px}}

/* Keep all six destinations visible; do not hide the final one behind an
   undiscoverable horizontal strip on phones. Dropdown stays in the first row. */
@media(max-width:620px){
 .km-navigation-inner{height:96px;position:relative;align-items:flex-start;padding-top:10px}
 .km-account-menu{margin-left:auto}
 .km-primary-nav{position:absolute;top:44px;left:0;right:0;height:52px;gap:0;justify-content:space-between;overflow:visible}
 .km-primary-nav a{justify-content:center;flex:1}
 body:has(.km-topbar) .main:not(.monaco-editor *){padding-top:112px}
}

/* Seven destinations including typing, without compressing the account menu. */
@media(min-width:621px) and (max-width:1080px){.km-navigation-inner{gap:14px}.km-primary-nav{gap:18px}.km-nav-search{display:none}}
@media(max-width:620px){.km-primary-nav{font-size:12px}.km-primary-nav a:last-child{flex:1.7}.km-nav-search,.km-nav-bell{display:none}}
/* The custom navigation already provides search. Remove Hydro's duplicate floating omnibar. */
.omnibar-toggle,.omnibar{display:none!important}

/* Soft background hover without changing navigation geometry. */
.km-primary-nav a{isolation:isolate}
.km-primary-nav a::before{content:"";position:absolute;inset:10px -10px 12px;border-radius:7px;background:#f3efff;box-shadow:0 3px 10px rgba(100,72,174,.13),inset 0 0 0 1px rgba(120,84,237,.06);opacity:0;transition:opacity .18s ease;pointer-events:none;z-index:-1}
@media(hover:hover){.km-primary-nav a:hover::before{opacity:1}}
.km-primary-nav a:focus-visible::before{opacity:1}
.km-primary-nav a.active::after{z-index:1}
@media(max-width:620px){.km-primary-nav a::before{inset:7px 2px 11px;border-radius:6px}}
@media(prefers-reduced-motion:reduce){.km-primary-nav a,.km-primary-nav a::before{transition:none}}

/* Ten learning destinations keep their natural label widths on small screens. */
@media(max-width:620px){.km-primary-nav a,.km-primary-nav a:last-child{flex:0 0 auto;min-width:24px}.km-primary-nav{justify-content:space-between}}

/* Make room for the NOI-Linux destination and keep every mobile link visible. */
@media(min-width:621px) and (max-width:1180px){.km-nav-search{display:none}.km-primary-nav{flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.km-primary-nav::-webkit-scrollbar{display:none}.km-primary-nav a{flex-shrink:0}}
@media(max-width:620px){.km-navigation-inner{height:120px}.km-primary-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));height:76px;gap:0}.km-primary-nav a{min-width:0}.km-primary-nav a:last-child{grid-column:span 2}body:has(.km-topbar) .main:not(.monaco-editor *){padding-top:136px}}
