/* =========================================================================
   NETHOUND — Hidden layer (the machine underneath)
   Scoped to .layer-void so it never bleeds into the public surface.
   Dead black + sodium amber. The pulse flatlines here.
   ========================================================================= */

.layer-void {
  --void: #0A0E0F;
  --amber: #D8A24A;
  --amber-dim: #8a6a2f;
  --amber-line: #2a2418;
  background: var(--void);
  color: var(--amber);
  font-family: var(--font-mono, "Space Mono", ui-monospace, Consolas, monospace);
  min-height: 100vh;
  margin: 0;
  line-height: 1.7;
  /* faint scanline texture */
  background-image: repeating-linear-gradient(
    0deg, rgba(216,162,74,.025) 0 1px, transparent 1px 3px);
}

.layer-void ::selection { background: var(--amber); color: var(--void); }

.layer-void .term {
  width: min(760px, 92vw);
  margin: 0 auto;
  padding: clamp(2.5rem, 8vw, 5rem) 0 4rem;
}

.layer-void a { color: var(--amber); text-decoration: underline; text-underline-offset: 3px; }
.layer-void a:hover { color: #fff; }

.layer-void h1, .layer-void h2 {
  font-family: inherit; font-weight: 700; letter-spacing: .04em;
  color: var(--amber); margin: 0 0 1rem;
}
.layer-void h1 { font-size: 1.5rem; }
.layer-void h2 { font-size: 1.05rem; }
.layer-void p { color: var(--amber); opacity: .82; }

.layer-void .sysline { opacity: .55; font-size: .82rem; }
.layer-void .sysline::before { content: "> "; }

.layer-void .brand-row {
  display: flex; align-items: center; justify-content: space-between;
  border-bottom: 1px solid var(--amber-line); padding-bottom: 1rem; margin-bottom: 2rem;
  font-size: .8rem; letter-spacing: .2em; text-transform: uppercase;
}
.layer-void .brand-row .lang select {
  appearance: none; -webkit-appearance: none;
  background: transparent; color: var(--amber);
  border: 1px solid var(--amber-line); border-radius: 0;
  font-family: inherit; font-size: .75rem; padding: .25em 1.6em .25em .6em; cursor: pointer;
}
.layer-void .lang::after { content: "▾"; color: var(--amber-dim); }

/* flatline pulse */
.layer-void .pulse { color: var(--amber-dim); height: 30px; opacity: .8; }
.layer-void .pulse .trace { animation: none; stroke-dashoffset: 0; }
.layer-void .flatline-note { font-size: .72rem; opacity: .4; letter-spacing: .25em; text-transform: uppercase; }

/* terminal form */
.layer-void .term-form { margin: 2rem 0; }
.layer-void label { display: block; font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; opacity: .6; margin-bottom: .6rem; }
.layer-void .prompt-row { display: flex; align-items: stretch; border: 1px solid var(--amber-line); }
.layer-void .prompt-row .sigil { padding: .8em .9em; background: rgba(216,162,74,.06); border-right: 1px solid var(--amber-line); }
.layer-void input[type="text"], .layer-void input[type="password"] {
  flex: 1; background: transparent; border: 0; color: var(--amber);
  font-family: inherit; font-size: 1rem; padding: .8em .9em; letter-spacing: .15em;
}
.layer-void input:focus { outline: none; }
.layer-void .prompt-row:focus-within { border-color: var(--amber); }
.layer-void button {
  margin-top: 1rem; background: transparent; color: var(--amber);
  border: 1px solid var(--amber); font-family: inherit; font-size: .85rem;
  letter-spacing: .15em; text-transform: uppercase; padding: .7em 1.4em; cursor: pointer;
}
.layer-void button:hover { background: var(--amber); color: var(--void); }

.layer-void .denied { color: #c2532f; opacity: 1; min-height: 1.6em; margin-top: 1.2rem; font-size: .85rem; }
.layer-void .granted { color: #6fae6a; }

.layer-void .unlock {
  display: none; margin-top: 2.5rem; border: 1px solid var(--amber-line);
  padding: 1.6rem; background: rgba(216,162,74,.03);
}
.layer-void .unlock.show { display: block; }

.layer-void .blink { animation: blink 1.1s steps(1) infinite; }
@keyframes blink { 50% { opacity: 0; } }

.layer-void hr { border: 0; border-top: 1px solid var(--amber-line); margin: 2rem 0; }
.layer-void .small { font-size: .75rem; opacity: .5; }
.layer-void ul { padding-left: 1.2rem; }
.layer-void li { margin: .3rem 0; opacity: .82; }

.layer-void .back { font-size: .75rem; opacity: .5; letter-spacing: .15em; text-transform: uppercase; }

@media (prefers-reduced-motion: reduce) {
  .layer-void .blink { animation: none; }
}
