/* GO v196: final offcanvas icon/text/overlay correction. */

:root {
  --go-v196-offcanvas-bg: #05080e;
  --go-v196-offcanvas-text: #ffffff;
  --go-v196-offcanvas-muted: rgba(255,255,255,.76);
  --go-v196-offcanvas-line: rgba(255,255,255,.10);
  --go-v196-offcanvas-accent: #c7f000;
}

/* Never paint the whole page black when the offcanvas opens. */
html body.go-v24-menu-open:not(.wp-admin),
html body.go-v24-menu-open:not(.wp-admin)::before,
html body.go-v24-menu-open:not(.wp-admin)::after,
html body.go-v24-menu-open:not(.wp-admin) .go-v24-offcanvas-layer,
html body.go-v24-menu-open:not(.wp-admin) .go-v24-offcanvas-layer::before,
html body.go-v24-menu-open:not(.wp-admin) .go-v24-offcanvas-layer::after,
html body:not(.wp-admin) .go-v24-offcanvas-layer,
html body:not(.wp-admin) .go-v24-offcanvas-layer::before,
html body:not(.wp-admin) .go-v24-offcanvas-layer::after {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

html body:not(.wp-admin) .go-v24-offcanvas-backdrop,
html body.go-v24-menu-open:not(.wp-admin) .go-v24-offcanvas-backdrop {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  opacity: 0 !important;
}

/* Same dark, readable panel in light and dark mode. */
html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel {
  background: var(--go-v196-offcanvas-bg) !important;
  background-color: var(--go-v196-offcanvas-bg) !important;
  background-image: none !important;
  color: var(--go-v196-offcanvas-text) !important;
  -webkit-text-fill-color: var(--go-v196-offcanvas-text) !important;
  border-right: 1px solid rgba(199,240,0,.16) !important;
  box-shadow: 16px 0 36px rgba(0,0,0,.24) !important;
}

html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel :is(.go-v24-offcanvas-head,.go-v24-offcanvas-nav,.go-v24-offcanvas-extra,.go-v24-offcanvas-brand) {
  background: var(--go-v196-offcanvas-bg) !important;
  background-color: var(--go-v196-offcanvas-bg) !important;
  background-image: none !important;
  color: var(--go-v196-offcanvas-text) !important;
  -webkit-text-fill-color: var(--go-v196-offcanvas-text) !important;
}

html body:not(.wp-admin) .go-v24-offcanvas-head {
  border-bottom: 1px solid var(--go-v196-offcanvas-line) !important;
}

html body:not(.wp-admin) .go-v24-offcanvas-extra {
  border-top: 1px solid rgba(255,255,255,.10) !important;
}

html body:not(.wp-admin) .go-v24-offcanvas-extra strong {
  color: var(--go-v196-offcanvas-accent) !important;
  -webkit-text-fill-color: var(--go-v196-offcanvas-accent) !important;
}

/* Labels: always white/readable, never blue/black. */
html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel :is(.go-v24-offcanvas-nav a,.go-v24-offcanvas-extra a),
html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel :is(.go-v24-offcanvas-nav a > span:last-child,.go-v24-offcanvas-extra a > span:last-child) {
  color: var(--go-v196-offcanvas-text) !important;
  -webkit-text-fill-color: var(--go-v196-offcanvas-text) !important;
  opacity: 1 !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

/* Old-style line icons: lime stroke, no solid blobs. */
html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel .go-v24-offcanvas-icon {
  width: 24px !important;
  height: 24px !important;
  display: grid !important;
  place-items: center !important;
  color: var(--go-v196-offcanvas-accent) !important;
  -webkit-text-fill-color: var(--go-v196-offcanvas-accent) !important;
  opacity: 1 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel .go-v24-offcanvas-icon svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  overflow: visible !important;
  color: var(--go-v196-offcanvas-accent) !important;
  fill: none !important;
  stroke: currentColor !important;
}

html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel .go-v24-offcanvas-icon svg *,
html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel .go-v24-offcanvas-icon svg :is(path,circle,rect,line,polyline,polygon,g) {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  color: var(--go-v196-offcanvas-accent) !important;
  opacity: 1 !important;
}

/* Close button like the older offcanvas: visible, neutral, no blue. */
html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel .go-v24-offcanvas-close {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  box-shadow: none !important;
}

html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel .go-v24-offcanvas-close:hover,
html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel .go-v24-offcanvas-close:focus-visible {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: rgba(255,255,255,.12) !important;
  border-color: rgba(255,255,255,.26) !important;
}

/* Hover: subtle animated underline only on the label. */
html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel :is(.go-v24-offcanvas-nav a,.go-v24-offcanvas-extra a):hover,
html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel :is(.go-v24-offcanvas-nav a,.go-v24-offcanvas-extra a):focus-visible {
  background: transparent !important;
  box-shadow: none !important;
  color: var(--go-v196-offcanvas-text) !important;
  -webkit-text-fill-color: var(--go-v196-offcanvas-text) !important;
  text-decoration: none !important;
}

html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel :is(.go-v24-offcanvas-nav a > span:last-child,.go-v24-offcanvas-extra a > span:last-child) {
  background-image: linear-gradient(currentColor,currentColor) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0% 1px !important;
  transition: background-size .24s ease !important;
}

html body:not(.wp-admin) aside#go-v24-offcanvas.go-v24-offcanvas-panel :is(.go-v24-offcanvas-nav a:hover > span:last-child,.go-v24-offcanvas-nav a:focus-visible > span:last-child,.go-v24-offcanvas-extra a:hover > span:last-child,.go-v24-offcanvas-extra a:focus-visible > span:last-child) {
  background-size: 100% 1px !important;
}
