/* ═══════════════════════════════════════════════════════════════
   TheLine · skin para noVNC (v1.3.x, paquete Debian/Ubuntu)
   Paleta forest black del dashboard: #06110D / #0A1B14 / #0E2118,
   bordes #1F3A2D, acento #357A4F, vivo #6F9E78, ok #4ADE80.
   Se inyecta DESPUÉS de app/styles/base.css, así que gana en cascada;
   !important solo donde base.css usa selectores más específicos.
   ═══════════════════════════════════════════════════════════════ */

html, body {
  background: #06110D !important;
}

body {
  background-image: radial-gradient(ellipse at 50% 0%,
    rgba(53, 122, 79, 0.10) 0%, rgba(53, 122, 79, 0.03) 45%,
    rgba(6, 17, 13, 0) 70%) !important;
  color: #F5F7F2;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

/* ── contenedor / pantalla ─────────────────────────────────── */
#noVNC_container, #noVNC_screen {
  background: #06110D !important;
}

/* ── overlay de transición ("Connecting...") ───────────────── */
#noVNC_transition {
  background: rgba(6, 17, 13, 0.92) !important;
  color: #A9BCAD !important;
}
#noVNC_transition_text {
  color: #A9BCAD !important;
  font-weight: 500;
  letter-spacing: 0.04em;
}
/* spinner de carga */
#noVNC_transition .noVNC_spinner,
.noVNC_spinner {
  border-color: #357A4F transparent transparent transparent !important;
}

/* ── barra de estado superior ──────────────────────────────── */
#noVNC_status {
  background: rgba(10, 27, 20, 0.92) !important;
  color: #F5F7F2 !important;
  border-bottom: 1px solid #1F3A2D;
  font-weight: 500;
}
#noVNC_status.noVNC_status_normal { background: rgba(10, 27, 20, 0.92) !important; }
#noVNC_status.noVNC_status_error  { background: rgba(72, 22, 22, 0.95) !important; color: #FCA5A5 !important; }
#noVNC_status.noVNC_status_warn   { background: rgba(60, 46, 10, 0.95) !important; color: #FDE68A !important; }

/* ── barra de control lateral ──────────────────────────────── */
#noVNC_control_bar {
  background: rgba(10, 27, 20, 0.94) !important;
  border-right: 1px solid #1F3A2D;
  box-shadow: 6px 0 24px rgba(0, 0, 0, 0.35) !important;
}
#noVNC_control_bar_anchor {
  background: rgba(10, 27, 20, 0.7) !important;
}
#noVNC_control_bar .noVNC_button,
.noVNC_button {
  background: transparent !important;
  border: 1px solid transparent !important;
  border-radius: 6px;
  filter: grayscale(1) brightness(1.5);
}
#noVNC_control_bar .noVNC_button:hover,
.noVNC_button:hover {
  background: #13291E !important;
  border-color: #1F3A2D !important;
}
#noVNC_control_bar .noVNC_button.noVNC_selected,
.noVNC_button.noVNC_selected {
  background: #1F3A2D !important;
  border-color: #357A4F !important;
  filter: none;
}

/* ── paneles (ajustes, portapapeles, envío de teclas) ──────── */
.noVNC_panel {
  background: #0A1B14 !important;
  color: #F5F7F2 !important;
  border: 1px solid #1F3A2D !important;
  border-radius: 10px !important;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.45) !important;
}
.noVNC_panel .noVNC_heading {
  background: #0E2118 !important;
  color: #F5F7F2 !important;
  border-radius: 8px 8px 0 0;
}
.noVNC_panel hr {
  border-color: #1F3A2D !important;
}
.noVNC_panel label { color: #A9BCAD; }

/* ── diálogo de conexión (pantalla de entrada) ─────────────── */
#noVNC_connect_dlg .noVNC_logo,
.noVNC_logo {
  color: #4ADE80 !important;
}
.noVNC_logo span { color: #F5F7F2 !important; }

#noVNC_connect_button {
  background: #357A4F !important;
  color: #F5F7F2 !important;
  border: 1px solid #2C6242 !important;
  border-radius: 10px !important;
  box-shadow: 0 12px 32px rgba(53, 122, 79, 0.35) !important;
  font-weight: 600;
  letter-spacing: 0.02em;
  cursor: pointer;
}
#noVNC_connect_button:hover {
  background: #2C6242 !important;
}
#noVNC_connect_button div {
  background: transparent !important;
  border: none !important;
}
#noVNC_connect_button img { filter: brightness(4); }

/* ── diálogo de credenciales (login VNC) ───────────────────── */
#noVNC_credentials_dlg {
  background: #0A1B14 !important;
  border: 1px solid #1F3A2D !important;
  border-radius: 12px !important;
}
#noVNC_credentials_dlg .noVNC_heading {
  background: #0E2118 !important;
  color: #F5F7F2 !important;
}
#noVNC_credentials_dlg label { color: #A9BCAD !important; }

/* inputs y selects — global de la UI */
input:not([type="checkbox"]):not([type="radio"]):not([type="button"]),
select, textarea {
  background: #06110D !important;
  color: #F5F7F2 !important;
  border: 1px solid #1F3A2D !important;
  border-radius: 8px !important;
}
input:focus, select:focus, textarea:focus {
  border-color: #357A4F !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(53, 122, 79, 0.35) !important;
}
input[type="button"], input[type="submit"], button {
  background: #13291E !important;
  color: #F5F7F2 !important;
  border: 1px solid #1F3A2D !important;
  border-radius: 8px !important;
}
input[type="button"]:hover, input[type="submit"]:hover, button:hover {
  background: #1F3A2D !important;
  border-color: #357A4F !important;
}

/* ── mensajes de fallback / error ──────────────────────────── */
#noVNC_fallback_error {
  background: rgba(6, 17, 13, 0.96) !important;
  color: #FCA5A5 !important;
}

/* ── campana / hints varios ────────────────────────────────── */
#noVNC_bell { display: none; }
