/* Match components/site-header.tsx and the homepage header rules in app/globals.css.
   Scoped because the explorer is a standalone public HTML page. */
#site-header{--navy:#133e58;--line:#dbe1e4;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;color:#192d36}
#site-header a{text-decoration:none}
#site-header .utility{padding:9px 5%;display:flex;justify-content:space-between;background:var(--navy);color:white;font-size:12px;letter-spacing:.035em}
#site-header .header{padding:25px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px;background:#fff}
#site-header .brand{font-size:28px;line-height:1;letter-spacing:.055em;font-weight:700;white-space:nowrap;color:var(--navy)}
#site-header .brand-light{font-weight:300}
#site-header .brand sup{font-size:10px;vertical-align:top}
#site-header .brand small{display:block;margin-top:10px;letter-spacing:.23em;font-size:9px;font-weight:400}
#site-header .nav{display:flex;align-items:center;gap:30px;font-size:14px}
#site-header .nav>a:not(.button):hover{color:#18769e}
#site-header .button{display:inline-flex;gap:35px;align-items:center;justify-content:center;background:var(--navy);color:white;padding:16px 24px;font-size:14px;font-weight:600;transition:background .2s}
#site-header .button:hover{background:#215b7a}
#site-header .button.small{padding:13px 19px;gap:20px}
#site-header .menu-toggle{display:none;background:none;border:1px solid var(--line);padding:9px 13px;color:inherit}
#site-header button:hover{filter:none}
#site-header a:focus-visible,#site-header button:focus-visible{outline:3px solid #268abb;outline-offset:5px}
@media(max-width:1100px){#site-header .nav{gap:17px}#site-header .nav .button{gap:10px}#site-header .header{padding:23px 4%}#site-header .brand{font-size:24px}}
@media(max-width:1200px){#site-header .header{position:relative}#site-header .menu-toggle{display:block}#site-header .nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;z-index:10;padding:25px 5%;border-top:1px solid var(--line)}#site-header .nav.is-open{display:flex;align-items:stretch;flex-direction:column}#site-header .nav a{padding:10px 0}}
@media(max-width:850px){#site-header .utility{font-size:11px;justify-content:center}#site-header .utility>span{display:none}#site-header .header{padding:22px 5%}}
/* Match the WebGL environment while its renderer loads. */
.stage,.loading{background:linear-gradient(155deg,#0a2030 0%,#133e58 55%,#2b6380 100%)}
.stage{color:#eef5fa}.stage .pill{border-color:#8bb1c466;background:#133e5899}
.stage .model-count,.stage .stage-bottom{color:#c4d9e7}
.stage .camera-tools button{background:#163e58de;border-color:#8bb1c477;color:#eff7fc}
.stage .orient-mark{color:#8dbfda}.stage .model-label{background:#eaf2f7;color:#133e58}.stage .model-label span:first-child{background:#133e58}
.stage button:focus-visible,.stage canvas:focus-visible{outline-color:#79c6f0}
.explorer-footer{flex-wrap:wrap;align-items:center;gap:24px}.explorer-footer .footer-social h3{font-family:Arial,Helvetica,sans-serif;font-size:14px;font-weight:600;letter-spacing:normal;margin:0 0 12px}.explorer-footer .footer-social nav{display:flex;flex-wrap:wrap;gap:9px}.explorer-footer .footer-social a{display:inline-flex;align-items:center;gap:14px;min-height:44px;padding:10px 14px;background:#133e58;color:white;border:1px solid #133e58;font-size:13px;line-height:1.4;text-decoration:none}.explorer-footer .footer-social a:hover{background:#215b7a}.explorer-footer .footer-social a:focus-visible{outline:3px solid #268abb;outline-offset:4px}

@media(min-width:1201px) and (max-width:1400px){#site-header .header{padding-inline:4%;gap:20px}#site-header .nav{gap:20px}#site-header .brand{font-size:25px}#site-header .nav>a{white-space:nowrap}}
