/* Norvus — site styles
   Ported from "Norvus Site.dc.html" (Claude Design project 21a3bfb3).
   The markup keeps the design's inline styles verbatim; this file carries
   only what inline styles can't express: base reset, keyframes, and the
   :hover rules (mirrors dc-runtime's `style-hover=""` -> `.class:hover { … !important }`). */

/* --- Base (from the design's <helmet> block) --------------------------- */
body { margin: 0; background: #16191A; }
* { box-sizing: border-box; }
a { color: #16191A; text-decoration: none; }
a:hover { color: #4A4F4A; }
:focus-visible { outline: 3px solid #B8F02D; outline-offset: 3px; }
img { max-width: 100%; }

/* --- Keyframes ------------------------------------------------------- */
@keyframes nv-rise { from { transform: scaleY(0.2); opacity: 0.25; } to { transform: scaleY(1); opacity: 1; } }
@keyframes nv-blink { 0%, 100% { opacity: 1; } 50% { opacity: 0.35; } }
@keyframes nv-msg { 0% { opacity: 0; transform: translateY(10px) scale(0.98); } 5%, 94% { opacity: 1; transform: none; } 100% { opacity: 0; transform: translateY(0) scale(0.99); } }
@keyframes nv-typing { 0%, 6% { opacity: 0; } 10%, 24% { opacity: 1; } 28%, 100% { opacity: 0; } }
@keyframes nv-dot { 0%, 100% { opacity: 0.25; } 50% { opacity: 1; } }

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}

/* --- Hover states (was style-hover="…" in the design) ---------------- */
/* !important so they beat the elements' own inline styles, exactly as
   the Claude Design runtime does. */
.nv-navlink:hover   { color: #B8F02D !important; }
.nv-btn-outline:hover { border-color: #B8F02D !important; color: #B8F02D !important; }
.nv-btn-lime:hover  { background: #C9F45C !important; }
.nv-btn-blue:hover  { background: #123B57 !important; }

/* --- Language switcher (PT / EN) ------------------------------------- */
.nv-lang {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-family: 'IBM Plex Mono', monospace;
  font-size: 12px;
  letter-spacing: 0.08em;
}
.nv-lang > span { color: #4A4F4A; }
.nv-lang button {
  margin: 0;
  padding: 2px;
  border: 0;
  background: none;
  font: inherit;
  letter-spacing: inherit;
  text-transform: uppercase;
  color: #6B706A;
  cursor: pointer;
}
.nv-lang button:hover { color: #C9CEC3; }
.nv-lang button[aria-pressed="true"] { color: #B8F02D; }

/* --- Progressive enhancement -------------------------------------------- */
.nv-header { -webkit-backdrop-filter: blur(10px); }
