/* Shared site header — matches homepage .site-header chrome on every page. */
.site-header{
  height:44px;
  border-bottom:1px solid #edf1f6;
  background:#fff;
  display:flex;
  align-items:center;
  position:sticky;
  top:0;
  z-index:50;
  overflow:visible;
}
.site-header .container,
.site-header .wrap{
  width:min(1240px,calc(100% - 48px));
  margin-inline:auto;
  display:flex;
  align-items:center;
  gap:24px;
  min-width:0;
  position:relative;
  overflow:visible;
  padding-left:max(0px,env(safe-area-inset-left,0px));
  padding-right:max(0px,env(safe-area-inset-right,0px));
}
.site-header .brand{
  font-size:21px;
  font-weight:900;
  letter-spacing:-.045em;
  text-decoration:none;
  white-space:nowrap;
  line-height:1;
  flex:0 0 auto;
  position:relative;
  z-index:3;
  color:#0b1020;
  display:inline-flex;
  align-items:center;
  gap:9px;
}
.site-header .brand-logo{
  width:32px;
  height:32px;
  display:block;
  flex:0 0 auto;
  border-radius:7px;
  object-fit:contain;
}
.site-header .brand-name{
  display:inline-flex;
  align-items:baseline;
}
.site-header .brand-free{color:#0b1020}
.site-header .brand-core{color:var(--blue,#0868ff);font-style:normal}
.site-header .brand-tld{
  font-size:.72em;
  color:#244167;
  font-weight:800;
  letter-spacing:-.02em;
  margin-left:.02em;
}
.site-header .brand .blue{color:var(--blue,#0868ff);font-style:normal}
.site-header .brand .dot{font-size:16px;color:#244167;font-weight:800}
.site-header .navlinks{
  display:flex;
  flex:1 1 auto;
  align-items:center;
  justify-content:center;
  gap:18px;
  font-size:11.5px;
  font-weight:600;
  min-width:0;
  overflow:visible;
  margin-left:12px;
  color:#111827;
}
.site-header .navlinks a{
  white-space:nowrap;
  text-decoration:none;
  color:inherit;
  position:relative;
  z-index:1;
  flex:0 0 auto;
}
.site-header .navlinks a:hover{color:var(--blue,#0868ff)}
.site-header .navdrop{position:relative}
.site-header .navdrop>.dropmenu{
  display:none;
  position:absolute;
  top:calc(100% - 2px);
  left:-12px;
  min-width:220px;
  background:#fff;
  padding:10px;
  border:1px solid var(--line,#e2e9f2);
  border-radius:12px;
  box-shadow:var(--shadow,0 14px 35px rgba(30,92,156,.13));
  z-index:80;
}
.site-header .navdrop>.dropmenu::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-12px;
  height:14px;
}
.site-header .navdrop:hover>.dropmenu,
.site-header .navdrop:focus-within>.dropmenu,
.site-header .navdrop.open>.dropmenu{display:grid}
.site-header .navdrop{
  display:inline-flex;
  align-items:center;
  gap:2px;
}
.site-header .navdrop>a.navdrop-hub,
.site-header .navdrop>a[aria-haspopup="true"]{
  cursor:pointer;
  white-space:nowrap;
  text-decoration:none;
  color:inherit;
  background:transparent;
  border:0;
  padding:0;
  margin:0;
  font:inherit;
  line-height:inherit;
}
.site-header .navdrop>a.navdrop-hub:hover,
.site-header .navdrop>a[aria-haspopup="true"]:hover{color:var(--blue,#0868ff)}
.site-header .navdrop>button.navdrop-toggle{
  cursor:pointer;
  white-space:nowrap;
  text-decoration:none;
  color:inherit;
  background:transparent;
  border:0;
  padding:0 2px;
  margin:0;
  font:inherit;
  appearance:none;
  -webkit-appearance:none;
  box-shadow:none;
  outline:none;
  line-height:inherit;
  display:inline-flex;
  align-items:center;
}
.site-header .dropmenu a{padding:9px;border-radius:7px;font-size:12px}
.site-header .dropmenu a:hover{background:var(--pale,#f4f9ff);color:var(--blue,#0868ff)}
.site-header .chev{font-size:9px;margin-left:0}
.site-header .nav-actions{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:13px;
  position:relative;
  z-index:3;
  margin-left:auto;
}
.site-header .icon-btn{
  width:26px;
  height:26px;
  border:0;
  background:transparent;
  display:grid;
  place-items:center;
  color:#17335e;
  padding:0;
  cursor:pointer;
  flex:0 0 auto;
  position:relative;
  z-index:3;
}
.site-header .icon-btn svg{width:18px;height:18px}
.site-header .menu-btn{display:none;font-size:17px}
.site-header .create-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:32px;
  padding:0 14px;
  font-size:11.5px;
  line-height:1;
  border-radius:7px;
  font-weight:800;
  box-sizing:border-box;
  text-decoration:none;
  white-space:nowrap;
  flex:0 0 auto;
  border:0;
  background:var(--blue,#0868ff);
  color:#fff;
  box-shadow:0 5px 12px rgba(8,104,255,.22);
}
.site-header .quick-search{
  position:absolute;
  top:38px;
  right:0;
  width:280px;
  background:#fff;
  border:1px solid var(--line,#e2e9f2);
  border-radius:9px;
  box-shadow:var(--shadow,0 14px 35px rgba(30,92,156,.13));
  padding:12px;
  z-index:100;
}
.site-header .quick-search[hidden]{display:none}
.site-header .quick-search label{display:block;font-size:10px;font-weight:800;margin-bottom:6px}
.site-header .quick-search input{
  width:100%;
  border:1px solid var(--line,#e2e9f2);
  border-radius:6px;
  padding:8px;
  font-size:11px;
  box-sizing:border-box;
}
.site-header .quick-search a{
  display:block;
  padding:7px 3px;
  font-size:10px;
  border-top:1px solid #edf1f6;
  color:#253753;
}
.site-header .quick-search a:hover{color:var(--blue,#0868ff)}
.site-header .sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

body.dark-theme .site-header{
  background:#050816;
  border-color:#1c2a44;
  color:#eef4ff;
}
body.dark-theme .site-header .brand{color:#eef4ff}
body.dark-theme .site-header .brand-free{color:#eef4ff}
body.dark-theme .site-header .brand-tld,
body.dark-theme .site-header .brand .dot{color:#9ec2ff}
body.dark-theme .site-header .navlinks{color:#e8eef8}
body.dark-theme .site-header .icon-btn{color:#c5d4f0}
body.dark-theme .site-header .navdrop>.dropmenu{
  background:#0c1324;
  border-color:#1c2a44;
}
body.dark-theme .site-header .dropmenu a:hover{background:#122038;color:#fff}
body.dark-theme .site-header .quick-search{
  background:#182334;
  border-color:#334155;
  color:#e8eef8;
}
body.dark-theme .site-header .quick-search input{
  background:#0c1324;
  border-color:#334155;
  color:#e8eef8;
}
body.dark-theme .site-header .quick-search a{color:#c5d4f0;border-color:#334155}
body.dark-theme .site-header .navlinks.open{
  background:#0c1324;
  border-color:#1c2a44;
}

@media (max-width:1100px){
  .site-header{height:auto;min-height:52px;padding:8px 0}
  .site-header .navlinks{display:none !important}
  .site-header .navlinks.open{
    display:flex !important;
    position:absolute;
    top:100%;
    left:0;right:0;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    margin:0;
    padding:10px 16px 14px;
    background:#fff;
    border:1px solid #e2e9f2;
    border-radius:0 0 12px 12px;
    box-shadow:var(--shadow,0 14px 35px rgba(30,92,156,.13));
    z-index:60;
    overflow:visible;
  }
  .site-header .navlinks.open a{
    padding:12px 8px;
    font-size:15px;
    min-height:44px;
    display:flex;
    align-items:center;
  }
  .site-header .navlinks.open .navdrop{width:100%}
  .site-header .navlinks.open .dropmenu{
    display:none;
    position:static;
    box-shadow:none;
    border:0;
    padding:0 0 6px 12px;
    min-width:0;
    background:transparent;
  }
  .site-header .navlinks.open .navdrop:focus-within>.dropmenu,
  .site-header .navlinks.open .navdrop:hover>.dropmenu,
  .site-header .navlinks.open .navdrop.open>.dropmenu{display:grid}
  .site-header .menu-btn{display:grid !important}
  .site-header .container,
  .site-header .wrap{justify-content:space-between}
}
@media (max-width:1100px){
  .site-header .nav-actions .icon-btn,
  .site-header .menu-btn{
    width:44px;height:44px;min-width:44px;min-height:44px;
  }
}
@media (max-width:720px){
  .site-header .create-btn{display:none}
  /* Match legacy .navright .theme-toggle{display:none} so 44px search/menu stay clickable. */
  .site-header #themeButton{display:none}
  .site-header .brand{font-size:15px;max-width:58vw}
  .site-header .brand-logo{width:28px;height:28px}
  .site-header .container,
  .site-header .wrap{width:min(100% - 28px,570px);gap:9px}
  .site-header .nav-actions{gap:6px;flex-shrink:0}
  .site-header .menu-btn{position:relative;z-index:4}
}
@media (max-width:520px){
  .site-header .lang-switch select{max-width:96px}
}

/* Shared brand wordmark in footers (same name treatment as header). */
.site-footer .brand,
.seo-footer-brand .brand,
.footer .brand{
  display:inline-flex;
  align-items:center;
  gap:9px;
  text-decoration:none;
  color:#0b1020;
  font-weight:900;
  letter-spacing:-.045em;
  line-height:1;
  white-space:nowrap;
}
.site-footer .brand-logo,
.seo-footer-brand .brand-logo,
.footer .brand-logo{
  width:28px;
  height:28px;
  border-radius:6px;
  object-fit:contain;
  flex:0 0 auto;
}
.site-footer .brand-name,
.seo-footer-brand .brand-name,
.footer .brand-name{display:inline-flex;align-items:baseline}
.site-footer .brand-free,
.seo-footer-brand .brand-free,
.footer .brand-free{color:#0b1020}
.site-footer .brand-core,
.seo-footer-brand .brand-core,
.footer .brand-core{color:var(--blue,#0868ff)}
.site-footer .brand-tld,
.seo-footer-brand .brand-tld,
.footer .brand-tld{
  font-size:.72em;
  color:#244167;
  font-weight:800;
}
