/* Shared navigation contract: app buttons and server-rendered links. */
#app>#nav{box-sizing:border-box;gap:0}
#app>#nav>.nav-item{box-sizing:border-box;display:flex;align-items:center;justify-content:center;min-width:0;margin:0;border:0;background:transparent;font-family:inherit;font-size:11px;font-weight:500;line-height:1.3;letter-spacing:0;text-decoration:none;cursor:pointer;color:#71849a;transition:background-color .15s,color .15s}
#app>#nav>.nav-item>.icon{display:block;width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#app>#nav>.nav-item.active{color:#0865ed;font-weight:700}
#app>#nav>.nav-item:focus-visible{outline:2px solid #2b7bff;outline-offset:-3px}
.site-footer{box-sizing:border-box;gap:3px 14px;padding:6px 12px;font-size:10px;line-height:1.5;align-items:center}
.site-footer>span{font-weight:600}.site-footer>a{overflow-wrap:anywhere;text-underline-offset:2px}
@media(max-width:999px){
 #app>#nav{grid-template-columns:repeat(4,minmax(0,1fr));min-height:50px;align-items:center;padding:2px 4px max(2px,env(safe-area-inset-bottom));border-top:1px solid #e0e7ef;background:#fff;flex-shrink:0}
 #app>#nav>.nav-item{flex-direction:column;gap:3px;width:100%;min-height:44px;padding:4px 2px;border-radius:8px;font-size:10px;text-align:center}
 #app>#nav>.nav-item.active{background:#f0f6ff}
 #app>#nav>.nav-item:hover{background:#f0f6ff}
 .seo-document #nav{position:fixed;left:0;right:0;bottom:0;z-index:700}
 .seo-document .site-footer{margin-top:20px;padding:10px 0;gap:6px 12px}
}
@media(min-width:1000px){
 #app{grid-template-rows:56px auto minmax(0,1fr) auto}
 #app>#nav,.seo-document #app>#nav{width:185px;display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:19px 12px;background:var(--nav,#112b45);color:#9fb5cb;border:0}
 #app>#nav>.nav-item{flex-direction:row;justify-content:flex-start;gap:11px;width:100%;min-height:42px;padding:10px 11px;border-radius:10px;font-size:11px;text-align:left;white-space:normal;color:#9fb5cb}
 #app>#nav>.nav-item>.icon{width:18px;height:18px}
 #app>#nav>.nav-item.active{color:#fff;background:#234967}
 #app>#nav>.nav-item:hover{background:#1c3b57;color:#fff}
 #app>#nav:before{padding:0 10px 12px;font-size:8px}
 #app>#nav:after{padding:18px 11px;font-size:10px}
 #app>.site-footer{grid-column:1/-1;grid-row:4;min-height:28px;margin:0;justify-content:center;border-top:1px solid #e0e7ef}
 .seo-document .site-footer{margin-top:22px;justify-content:center}
}
