/* Signalsearch — base styles.
   Layout and colour live in inline styles on each element;
   this file holds what inline styles cannot express. */

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: oklch(0.165 0.008 262);
  color: oklch(0.97 0.004 262);
  font-family: 'Instrument Sans', Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

* { box-sizing: border-box; }

a { color: oklch(0.72 0.145 258); text-decoration: none; }
a:hover { color: oklch(0.82 0.11 258); }

input, textarea, select, button { font: inherit; color: inherit; }

input:focus, textarea:focus {
  outline: none;
  border-color: oklch(0.55 0.11 258) !important;
}

::selection { background: oklch(0.72 0.145 258); color: oklch(0.16 0.01 262); }

img { max-width: 100%; }

/* hover states */
.hv1:hover { color: oklch(0.97 0.004 262) !important }
.hv2:hover { background: oklch(0.8 0.12 258) !important; color: oklch(0.16 0.01 262) !important }
.hv3:hover { border-color: oklch(0.6 0.02 262) !important; color: oklch(0.97 0.004 262) !important }
.hv4:hover { background: oklch(0.8 0.12 258) !important }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
