:root {
  --haltium-void: #081320;
  --haltium-navy: #102338;
  --haltium-navy-2: #16324c;
  --haltium-teal: #438ca7;
  --haltium-teal-bright: #6fb7d0;
  --haltium-text: #f2f6f8;
  --haltium-dim: #8f99a3;
}

html, body, #root {
  background: var(--haltium-void) !important;
  color: var(--haltium-text);
}

[data-haltium-hidden="true"] {
  display: none !important;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: radial-gradient(circle at 12% 3%, rgba(67, 140, 167, 0.13), transparent 30rem), linear-gradient(180deg, rgba(22, 50, 76, 0.2), transparent 28rem);
}

#root { position: relative; z-index: 1; }
::selection { background: var(--haltium-teal); color: var(--haltium-void); }

#haltium-library-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 72px;
  padding: 12px clamp(20px, 4vw, 48px);
  border-bottom: 1px solid rgba(67, 140, 167, 0.2);
  background: rgba(8, 19, 32, 0.88);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

#haltium-library-header a {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  color: var(--haltium-text);
  text-decoration: none;
}

#haltium-library-header img { width: 128px; height: auto; }

#haltium-library-header .haltium-header-resources {
  display: flex;
  align-items: center;
  gap: 24px;
}

#haltium-library-header .haltium-reference-link {
  min-height: 40px;
  padding: 8px 14px;
  gap: 8px;
  border: 1px solid rgba(111, 183, 208, 0.35);
  border-radius: 8px;
  color: var(--haltium-teal-bright);
  font: 500 12px/1.4 Poppins, sans-serif;
}

#haltium-library-header .haltium-reference-link:hover {
  background: var(--haltium-navy-2);
  color: var(--haltium-text);
}

#haltium-library-header .haltium-reference-link:focus-visible {
  outline: 2px solid var(--haltium-teal-bright);
  outline-offset: 3px;
}

#haltium-library-header .haltium-product-name {
  padding-left: 18px;
  border-left: 1px solid rgba(111, 183, 208, 0.3);
  color: var(--haltium-dim);
  font: 500 11px/1.35 Poppins, sans-serif;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

#haltium-library-header .haltium-status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--haltium-teal-bright);
  font: 500 10px/1 Poppins, sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

#haltium-library-header .haltium-status::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--haltium-teal-bright);
  box-shadow: 0 0 14px rgba(111, 183, 208, 0.8);
}

#haltium-library-footer {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 16px;
  padding: 36px clamp(24px, 4vw, 52px);
  border-top: 1px solid rgba(67, 140, 167, 0.2);
  background: #081320;
  color: var(--haltium-dim);
  font: 500 12px/1.6 Poppins, sans-serif;
}

#haltium-library-footer strong { color: var(--haltium-text); font-weight: 500; }
#haltium-library-footer .haltium-provenance { max-width: 620px; text-align: right; }

input:focus, button:focus-visible, a:focus-visible { outline-color: var(--haltium-teal-bright) !important; }

button:not([data-semantic-color="true"]):not([aria-label^="Close"]) {
  border-color: var(--haltium-teal) !important;
  background-color: var(--haltium-teal) !important;
  color: #ffffff !important;
}

button:not([data-semantic-color="true"]):not([aria-label^="Close"]):hover,
a[class*="rounded-full"]:not([href^="http"]):hover {
  background-color: var(--haltium-teal-bright) !important;
  border-color: var(--haltium-teal-bright) !important;
  color: var(--haltium-void) !important;
}

a[class*="rounded-full"]:not([href^="http"]) {
  background-color: var(--haltium-teal) !important;
  border-color: var(--haltium-teal) !important;
  color: #ffffff !important;
}

#shot-atlas-results {
  scroll-margin-top: 96px;
  outline: none;
}

nav[data-shot-atlas-categories="true"] button[data-category-control="true"] {
  border-color: transparent !important;
  background-color: transparent !important;
  color: rgba(242, 246, 248, 0.58) !important;
}

nav[data-shot-atlas-categories="true"] button[data-category-control="true"]:hover {
  border-color: rgba(111, 183, 208, 0.18) !important;
  background-color: rgba(111, 183, 208, 0.08) !important;
  color: var(--haltium-text) !important;
}

nav[data-shot-atlas-categories="true"] button[data-category-control="true"][aria-pressed="true"] {
  border-color: rgba(111, 183, 208, 0.28) !important;
  background-color: rgba(67, 140, 167, 0.2) !important;
  color: var(--haltium-teal-bright) !important;
  box-shadow: inset 3px 0 0 var(--haltium-teal-bright);
}

@media (max-width: 640px) {
  #haltium-library-header { min-height: 64px; }
  #haltium-library-header img { width: 104px; }
  #haltium-library-header .haltium-product-name { display: none; }
  #haltium-library-header .haltium-status { display: none; }
  #haltium-library-header .haltium-header-resources { gap: 0; }
  #haltium-library-footer .haltium-provenance { text-align: left; }
}
