/* Shared structure only. Each storefront/theme owns its --sino-network-* tokens. */
body nav.sino-site-network.sino-site-network--shared {
  gap: var(--sino-network-gap, 1.5em);
  font-family: inherit;
}
body nav.sino-site-network.sino-site-network--shared > :is(a, .sino-site-network__pending) {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  box-sizing: border-box;
  min-height: var(--sino-network-min-height, 2.375rem);
  margin: 0;
  border: 0;
  border-radius: 0;
  padding: var(--sino-network-link-padding, 0);
  background: transparent !important;
  box-shadow: none !important;
  text-shadow: none;
  color: var(--sino-network-text, inherit) !important;
  font-family: inherit;
  font-size: var(--sino-network-font-size, inherit) !important;
  font-weight: var(--sino-network-weight, 400);
  line-height: 1.4;
  letter-spacing: var(--sino-network-tracking, normal);
  text-transform: var(--sino-network-case, none);
  text-decoration: none !important;
  white-space: nowrap;
  transition: color 160ms ease;
}
/* Decorative only: no separator before the first item or after the last. */
body nav.sino-site-network.sino-site-network--shared > :is(a, .sino-site-network__pending) + :is(a, .sino-site-network__pending)::before {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(var(--sino-network-gap, 1.5em) * -.5);
  width: 1px;
  height: .625rem;
  background: var(--sino-network-separator, transparent);
  transform: translateY(-50%);
  pointer-events: none;
}
body nav.sino-site-network.sino-site-network--shared > a::after {
  content: "" !important;
  position: absolute;
  display: block;
  left: 50%;
  right: auto;
  bottom: 0;
  width: 24px;
  max-width: 100%;
  height: 2px;
  background: var(--sino-network-accent, currentColor);
  transform: translateX(-50%);
  opacity: 0;
  pointer-events: none;
  transition: opacity 160ms ease;
}
body nav.sino-site-network.sino-site-network--shared > a:is(:hover, :focus-visible, .is-active) {
  color: var(--sino-network-active, currentColor) !important;
}
body nav.sino-site-network.sino-site-network--shared > a:is(:hover, :focus-visible, .is-active)::after {
  opacity: 1;
  transform: translateX(-50%);
}
body nav.sino-site-network.sino-site-network--shared > a:focus-visible {
  outline: 1px solid var(--sino-network-active, currentColor) !important;
  outline-offset: -1px !important;
}
body .sino-network-bar {
  background: var(--sino-network-background, transparent);
  border-bottom: var(--sino-network-border, 0);
}
body .sino-network-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: var(--sino-network-inner-width, 100%);
  max-width: var(--sino-network-inner-max, none);
  margin-inline: auto;
  min-width: 0;
}
body .sino-network-bar nav.sino-site-network.sino-site-network--shared {
  display: flex;
  align-items: stretch;
  height: auto;
  min-height: var(--sino-network-min-height, 2.375rem);
  min-width: 0;
  max-width: 100%;
  margin: 0;
  padding: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: thin;
  white-space: nowrap;
}
body .sino-network-utility {
  flex: 0 0 auto;
  font-family: inherit;
  font-size: var(--sino-network-font-size, inherit);
}
body .sino-network-utility > a { color: var(--sino-network-text, inherit) !important; }
body .sino-network-utility > a:hover { color: var(--sino-network-active, currentColor) !important; text-decoration: underline; }
@media (max-width: 849px) {
  body .sino-network-utility { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  body nav.sino-site-network.sino-site-network--shared > a,
  body nav.sino-site-network.sino-site-network--shared > a::after { transition: none; }
}
