{bright_cyan}╔═══════════════════════════════════════════════════════════════════════════════════╗{reset}
{bright_cyan}║{bright_magenta}    ██████╗     ██████╗      ███╗   ███╗    ███████╗     ███╗   ██╗    ██╗  ██╗    {bright_cyan}║{reset}
{bright_cyan}║{bright_magenta}   ██╔════╝     ██╔══██╗     ████╗ ████║    ██╔════╝     ████╗  ██║    ██║  ██║    {bright_cyan}║{reset}
{bright_cyan}║{bright_magenta}   ██║  ███╗    ██████╔╝     ██╔████╔██║    █████╗       ██╔██╗ ██║    ██║  ██║    {bright_cyan}║{reset}
{bright_cyan}║{bright_magenta}   ██║   ██║    ██╔══██╗     ██║╚██╔╝██║    ██╔══╝       ██║╚██╗██║    ██║  ██║    {bright_cyan}║{reset}
{bright_cyan}║{bright_magenta}   ╚██████╔╝    ██║  ██║     ██║ ╚═╝ ██║    ███████╗     ██║ ╚████║    ╚█████╔╝    {bright_cyan}║{reset}
{bright_cyan}║{bright_magenta}    ╚═════╝     ╚═╝  ╚═╝     ╚═╝     ╚═╝    ╚══════╝     ╚═╝  ╚═══╝     ╚════╝     {bright_cyan}║{reset}
{bright_cyan}╚═══════════════════════════════════════════════════════════════════════════════════╝{reset}

{bright_cyan}╔═══════════════════════════════════════════════════════════════════════════════════╗{reset}
{bright_cyan}║{bright_yellow}                DOCUMENTACION Y GUIA COMPLETA DE PARAMETROS (v4.0)                 {bright_cyan}║{reset}
{bright_cyan}║{gray}    Referencia exhaustiva de clases, metodos publicos, colores y configuracion     {bright_cyan}║{reset}
{bright_cyan}╚═══════════════════════════════════════════════════════════════════════════════════╝{reset}

{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
{bright_yellow}[1] CLASE PRINCIPAL: GRmenu.new(functions, **opciones){reset}
{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
  Crea una nueva instancia de menu interactivo para la terminal.

  {cyan}PARAMETROS DEL CONSTRUCTOR:{reset}
  {bright_green}* functions:{reset}    {white}[Array]{reset}        -> Lista de opciones a ejecutar (ver seccion [2]).
  {bright_green}* title:{reset}        {white}[String]{reset}       -> Titulo centrado en el marco del menu.
  {bright_green}* banner:{reset}       {white}[String]{reset}       -> Texto convertido a arte ASCII 3D superior.
  {bright_green}* subtitle:{reset}     {white}[String]{reset}       -> Descripcion o subtitulo (admite saltos de linea \n).
  {bright_green}* search:{reset}       {white}[Boolean]{reset}      -> Buscador en vivo con filtro reactivo (default: false).
  {bright_green}* columns:{reset}      {white}[Integer]{reset}      -> Cantidad de columnas para grid 2D (default: 1).
  {bright_green}* page_size:{reset}    {white}[Integer]{reset}      -> Cantidad de filas visibles antes de scroll (default: auto).
  {bright_green}* style:{reset}        {white}[Integer 1..20]{reset} -> Estilo de marco de opciones (default: 19).
  {bright_green}* banner_style:{reset} {white}[Integer 1..20]{reset} -> Estilo de marco para el banner (default: 3).
  {bright_green}* font:{reset}         {white}[Integer 1..10]{reset} -> Fuente tipografica ASCII 3D del banner (default: 1).
  {bright_green}* image:{reset}        {white}[String]{reset}       -> Ruta a imagen (PNG/JPG/WEBP/GIF/BMP) de cabecera.
  {bright_green}* image_width:{reset}  {white}[Integer]{reset}      -> Ancho en columnas para renderizar la imagen (default: 40).
  {bright_green}* divider:{reset}      {white}[Boolean/Int]{reset}  -> Lineas divisorias horizontales o ancho especifico.
  {bright_green}* center:{reset}       {white}[Boolean]{reset}      -> Centrado horizontal automatico en consola (default: true).
  {bright_green}* animate:{reset}      {white}[String/Bool]{reset}  -> Animacion de entrada ("diagonal", "linear", "fade", "rgb", false).
  {bright_green}* desc_prefix:{reset}  {white}[String]{reset}       -> Prefijo del pie de tooltip/descripcion (default: "[i]").

  {cyan}METODOS DE INSTANCIA:{reset}
  {bright_white}* menu.draw(size_max: 40, min_width: nil){reset}
    Inicia el bucle interactivo de terminal. Bloquea hasta que el usuario elija.
    - {cyan}size_max:{reset} Ancho minimo visual garantizado en columnas.
    - {cyan}Deteccion CLI:{reset} Si se ejecuta el script con {yellow}-theme{reset} o {yellow}-ex{reset}, exporta
      automaticamente el tema configurado a un archivo .gr y termina la ejecucion.
    - Retorna el valor devuelto por la accion seleccionada.

  {bright_white}* menu.style(bloque_gr){reset}
    Aplica configuracion CSS al menu usando un bloque de texto (ej: <<-GR ... GR).
    Permite definir bordes, animaciones, prefijos y colores inline sin archivos externos.

  {bright_white}* menu.export_theme(ruta = nil){reset} (Alias: {bright_white}menu.export_config{reset})
    Guarda la configuracion actual de este menu en un archivo de tema .gr.

  {bright_white}* menu.set_style{reset}
    Acceso al objeto de personalizacion fluido por metodos (ver seccion [3]).

{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
{bright_yellow}[2] FORMATOS DE OPCIONES EN EL ARRAY functions{reset}
{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
  Puedes mezclar cualquiera de estos formatos en la lista de opciones:

  {cyan}1. Method de Ruby:{reset}
     {bright_white}method(:iniciar_servidor){reset}
     -> Extrae el nombre, limpia guiones y capitaliza automaticamente.

  {cyan}2. Symbol (Metodo global / Kernel):{reset}
     {bright_white}:crear_respaldo{reset}
     -> Invoca el metodo con ese nombre en el contexto actual.

  {cyan}3. Arreglo [Nombre, Accion]:{reset}
     {bright_white}["Iniciar Servidor Web", method(:iniciar_servidor)]{reset}
     -> Muestra la etiqueta personalizada y ejecuta la accion con Enter.

  {cyan}4. Arreglo con Tooltip Dinamico [Nombre, Accion, Descripcion]:{reset}
     {bright_white}["Crear Respaldo", :respaldo, "Copia de seguridad en S3"]{reset}
     -> Muestra la descripcion en el pie del menu cuando la opcion tiene foco.

  {cyan}5. Lambda o Proc:{reset}
     {bright_white}["Limpiar Cache", -> { puts "Cache limpia!"; GRmenu.continue }]{reset}
     {bright_white}["Test", -> { puts "OK" }, "Descripcion tooltip opcional"]{reset}

  {cyan}6. Hash explicito:{reset}
     {bright_white}{ name: "Configurar", action: method(:config), desc: "Ajustes del sistema" }{reset}

{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
{bright_yellow}[3] PERSONALIZACION DE COLORES Y MODO RGB: menu.set_style{reset}
{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
  Acepta: {cyan}(nombre_color, nivel_brillo){reset}, {cyan}Hash { color:, level: }{reset},
  o el modo dinamico {bright_yellow}"rgb"{reset} / {bright_yellow}"rainbow"{reset} para animacion multicolor fluida a 30 FPS.

  {bright_green}* menu.set_style.font(id){reset}           -> [Integer 1..10] Fuente 3D del banner.
  {bright_green}* menu.set_style.banner(color, lvl = 2){reset} -> Letras 3D del banner (soporta "rgb").
  {bright_green}* menu.set_style.title(color, lvl = 2){reset}  -> Titulo de cabecera del menu.
  {bright_green}* menu.set_style.subtitle(color, lvl = 2){reset}-> Texto del subtitulo / descripcion.
  {bright_green}* menu.set_style.divider(color, lvl = 1){reset} -> Lineas divisorias horizontales.
  {bright_green}* menu.set_style.border(color, lvl = 1){reset}  -> Marco y esquinas de la caja de opciones.
  {bright_green}* menu.set_style.options(color, lvl = 1){reset} -> Opciones inactivas / sin foco.
  {bright_green}* menu.set_style.focus(color, lvl = 2){reset}   -> Opcion activa / seleccionada (> Opcion).
  {bright_green}* menu.set_style.desc_prefix(texto){reset}      -> Prefijo de descripciones (ej: "[i]", "*", "->").

  {cyan}Configuracion Global por defecto:{reset}
  {bright_white}GRmenu::SetStyle.border("cyan", 1){reset}
  {bright_white}GRmenu::SetStyle.focus("green", 2){reset}
  {bright_white}GRmenu::SetStyle.title("yellow", 2){reset}
  {bright_white}GRmenu::SetStyle.desc_prefix("[i]"){reset}

{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
{bright_yellow}[4] TABLAS, TARJETAS Y ALERTAS EJECUTIVAS{reset}
{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}

  {bright_green}* GRmenu.table(headers: [...], rows: [...], title: nil, search: false, sort: false, page_size: 8){reset}
    Renderiza una tabla interactiva con bordes blindados y auto-ajuste de columnas.
    - {cyan}headers:{reset}   [Array] Nombres de columnas (ej: ["ID", "SERVICIO", "ESTADO"]).
    - {cyan}rows:{reset}      [Array] Matriz de filas o lista de hashes.
    - {cyan}search:{reset}    [Boolean] Activa buscador en vivo reactivo pulsando cualquier letra.
    - {cyan}sort:{reset}      [Boolean] Permite ordenar columnas en orden asc/desc pulsando 's'.
    - {cyan}page_size:{reset} [Integer] Limite de filas visibles con auto-scroll.
    - {cyan}Teclas:{reset}    {yellow}↑ / ↓{reset} (navegar), {yellow}s{reset} (ordenar), {yellow}Enter{reset} (elegir fila), {yellow}Esc / q{reset} (salir).
    - {cyan}Retorna:{reset}   La fila seleccionada por el usuario (o nil si cancela).

  {bright_green}* GRmenu.card(title: nil, content: "", style: 7, border_color: "cyan", title_color: "yellow", content_color: "white", pause: true){reset}
    Recuadro estilizado para reportes y mensajes. Incluye word-wrapping automatico
    para parrafos largos sin deformar bordes ni desbordar la consola.
    - {cyan}title:{reset}         [String] Titulo superior centrado.
    - {cyan}content:{reset}       [String] Mensaje o reporte (admite parrafos continuos o \n).
    - {cyan}border_color:{reset}  [String] Color del marco (soporta hex, neon y "rgb").
    - {cyan}title_color:{reset}   [String] Color del texto del titulo.
    - {cyan}content_color:{reset} [String] Color del contenido.
    - {cyan}style:{reset}         [Integer 1..20] Estilo de marco (default: 7).

  {bright_green}* GRmenu.alert(tipo, mensaje, title: nil, style: 3, border_color: nil, title_color: nil, pause: true){reset}
    Emite una notificacion modal con tag visual y paleta correspondiente:
    - {cyan}:success{reset} -> Verde  [✔ EXITO]
    - {cyan}:error{reset}   -> Rojo   [✖ ERROR]
    - {cyan}:warning{reset} -> Ambar  [⚠ AVISO]
    - {cyan}:info{reset}    -> Cian   [ℹ INFO]
    - Soporta colores personalizados con {cyan}border_color:{reset} y {cyan}title_color:{reset}.

{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
{bright_yellow}[5] MODALES, CHECKBOXES Y CONTROLES INTERACTIVOS{reset}
{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}

  {bright_green}* GRmenu.checkbox(items, title: "...", color: "cyan", style: 3, page_size: 8){reset}
    (Alias: {bright_white}GRmenu.select_multi{reset}, {bright_white}GRmenu.multiselect{reset})
    Lista interactiva con casillas de verificacion [X] / [ ].
    - {cyan}items:{reset}       [Array] Strings o arreglos [Nombre, checked, desc].
    - {cyan}Teclas:{reset}      {yellow}Espacio{reset} (marcar), {yellow}a{reset} (todos), {yellow}n{reset} (ninguno), {yellow}i{reset} (invertir), {yellow}Enter{reset} (confirmar).
    - {cyan}Retorna:{reset}     {bright_yellow}Array{reset} con los elementos seleccionados.

  {bright_green}* GRmenu.slider(prompt, min: 0, max: 100, step: 1, default: 50, unit: ""){reset}
    (Alias: {bright_white}GRmenu.range{reset})
    Control deslizante horizontal en tiempo real con barra de nivel.
    - {cyan}prompt:{reset}  [String] Mensaje descriptivo.
    - {cyan}min/max:{reset} [Numeric] Limites inferior y superior.
    - {cyan}step:{reset}    [Numeric] Incremento por paso (default: 1).
    - {cyan}unit:{reset}    [String] Unidad de medida (ej: "%", "GB", "px").
    - {cyan}Teclas:{reset}  {yellow}← / →{reset} (paso), {yellow}↑ / ↓{reset} (paso x5), {yellow}Enter{reset} (guardar).
    - {cyan}Retorna:{reset} {bright_yellow}Numeric{reset} con el valor seleccionado.

  {bright_green}* GRmenu.confirm(pregunta, default: true, color: "cyan", style: 3){reset}
    Modal interactivo con botones [ Sí ] y [ No ].
    - {cyan}Teclas:{reset}  {yellow}← / → / Tab{reset}, {yellow}s / y{reset} (Si), {yellow}n{reset} (No), {yellow}Enter{reset}.
    - {cyan}Retorna:{reset} {bright_yellow}true{reset} si confirma Si, {bright_yellow}false{reset} si elige No o cancela.

  {bright_green}* GRmenu.input(prompt, default: "", password: false, color: "cyan", style: 3){reset}
    Cuadro de entrada de texto interactivo con cursor en vivo y scroll horizontal.
    - {cyan}password:{reset} [Boolean] Enmascara caracteres con asteriscos (****).
    - {cyan}Teclas:{reset}   Escribir texto, {yellow}Backspace{reset}, {yellow}Ctrl+U{reset} (limpiar), {yellow}Enter{reset}.
    - {cyan}Retorna:{reset}  {bright_yellow}String{reset} ingresado por el usuario.

{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
{bright_yellow}[6] BARRA DE PROGRESO, SPINNER E IMAGENES ANSI TRUECOLOR{reset}
{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}

  {bright_green}* GRmenu.progress(total = 100, title: nil, color: "cyan", style: 3, &bloque){reset}
    Barra de progreso fluida con soporte para status dinámico protegido contra desbordes.
    - {cyan}Uso con bloque:{reset}
      {bright_white}GRmenu.progress(100, title: "Instalando", color: "rgb") do |bar|{reset}
      {bright_white}  bar.advance(25, status: "Descargando paquetes..."){reset}
      {bright_white}  bar.set(100, status: "Completado con exito"){reset}
      {bright_white}end{reset}

  {bright_green}* GRmenu.spinner(mensaje = "Cargando...", color: "cyan", delay: 0.08, &bloque){reset}
    Indicador giratorio animado en hilo de ejecucion secundario mientras el bloque corre.
    - {cyan}Uso:{reset} {bright_white}GRmenu.spinner("Conectando a base de datos...") { sleep 2 }{reset}

  {bright_green}* GRmenu.image(filepath, width: 40, height: nil, style: 3, color: "cyan"){reset}
    Decodifica y renderiza imagenes (PNG, JPEG, WEBP, GIF, BMP) con micro-pixeles
    ANSI TrueColor de 24 bits y escala proporcional exacta con cache instantanea.

  {bright_green}* GRmenu.banner(texto, delay = 0, color: "magenta", level: 2, style: 3, font: 1){reset}
    Convierte cadenas en arte ASCII 3D con bordes y fuentes personalizables.

{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
{bright_yellow}[7] SISTEMA DE TEMAS .gr (CSS PARA TUI) Y EXPORTACION{reset}
{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}

  {cyan}1. Temas Predefinidos Disponibles:{reset}
     {bright_white}GRmenu.theme(:neon_red){reset}   # Rojo neon vibrante con bordes dobles
     {bright_white}GRmenu.theme(:cyberpunk){reset}  # Neones cian, amarillo y Chroma RGB animado
     {bright_white}GRmenu.theme(:matrix){reset}     # Verdes fosforescentes estilo Hacker
     {bright_white}GRmenu.theme(:dracula){reset}    # Morados oscuros, rosas y cian
     {bright_white}GRmenu.theme(:nord){reset}       # Azules articos y tonos frios escandinavos
     {bright_white}GRmenu.theme(:monokai){reset}    # Paleta calida amarilla, magenta y naranja
     {bright_white}GRmenu.theme(:sunset){reset}     # Degradados rojo fuego, naranja y dorado

  {cyan}2. Carga de Archivos .gr Externos:{reset}
     {bright_white}GRmenu.import_config("ruta/mi_tema.gr"){reset}

  {cyan}3. Exportar Tema Activo a Archivo .gr desde Ruby:{reset}
     {bright_white}menu.export_theme("mi_tema.gr"){reset}
     {bright_white}GRmenu.export_config("mi_tema.gr"){reset}

  {cyan}4. Extraer Tema desde un Script de Ruby (sin bucles interactivos):{reset}
     {bright_white}GRmenu.export_from_file("mi_app.rb", "tema_extraido.gr"){reset}

  {cyan}5. Exportar Tema desde Consola / CLI (Banderas automaticas):{reset}
     # Al pasar -theme a tu script, exporta a .gr y sale inmediatamente:
     {bright_white}$ ruby mi_script.rb -theme{reset}
     {bright_white}$ ruby mi_script.rb -theme -o tema_personalizado.gr{reset}

     # Exportar mediante one-liner sin modificar tu script:
     {bright_white}$ ruby -r./GRmenu -e 'GRmenu.export_from_file("mi_script.rb", "tema.gr")'{reset}

  {cyan}6. CSS Inline en el mismo Codigo Ruby (Estilo <style> con <<-GR):{reset}
     # Puedes inyectar bloques CSS directamente en tu script sin archivos .gr externos:
     {bright_white}menu.style(<<-GR){reset}
       {white}<<menu{reset}
         {white}style:: 3{reset}
         {white}animate:: fade{reset}
         {white}desc_prefix:: ->{reset}
         {white}border:: red:2{reset}
         {white}focus:: yellow:2{reset}
         {white}title:: red:2{reset}
         {white}banner:: red:2{reset}
         {white}subtitle:: cyan:1{reset}
       {white}>>{reset}
     {bright_white}GR{reset}

  {cyan}7. Especificacion Completa de Bloques en un Archivo .gr:{reset}
     {gray}GRmenu::config<-1->{reset}
     {white}@theme:: "NombreDelTema"{reset}
     {white}@author:: "TuNombre"{reset}
     {white}@version:: "1.0"{reset}

     {cyan}<<menu{reset}
       {white}style:: 3{reset}                # Estilo de marco 1..20
       {white}banner_style:: 3{reset}         # Estilo de marco del banner 1..20
       {white}font:: 1{reset}                 # Fuente tipografica 3D 1..10
       {white}animate:: diagonal{reset}       # diagonal, linear, fade, rgb o false
       {white}center:: true{reset}            # Centrado en consola (true / false)
       {white}desc_prefix:: [i]{reset}        # Prefijo de tooltip ("[i]", "*", "->")
       {white}border:: red:2{reset}           # color:brillo (soporta "rgb:2")
       {white}title:: red:2{reset}
       {white}focus:: yellow:2{reset}
       {white}options:: white:1{reset}
       {white}banner:: red:2{reset}
       {white}subtitle:: cyan:1{reset}
       {white}divider:: red:1{reset}
     {cyan}>>{reset}

     {cyan}<<table{reset}
       {white}style:: 3{reset}                # Estilo de marco 1..20
       {white}border_color:: red:2{reset}     # Color del borde exterior y separadores
       {white}header_color:: yellow:2{reset}  # Color de los titulos de columna
       {white}selected_row:: green:2{reset}  # Color de la fila con foco activo
       {white}row_color:: white:1{reset}      # Color de filas regulares
       {white}zebra_striping:: true{reset}    # Alternar brillo tenue en filas pares
       {white}page_size:: 8{reset}            # Filas visibles antes de scroll
     {cyan}>>{reset}

     {cyan}<<card{reset}
       {white}style:: 7{reset}                # Estilo de marco 1..20 (curvas)
       {white}border_color:: cyan:2{reset}
       {white}title_color:: yellow:2{reset}
       {white}content_color:: white:1{reset}
     {cyan}>>{reset}

     {cyan}<<slider{reset}
       {white}style:: 3{reset}
       {white}color:: rgb:2{reset}
       {white}fill_char:: █{reset}
       {white}empty_char:: ░{reset}
     {cyan}>>{reset}

     {cyan}<<checkbox{reset}
       {white}style:: 3{reset}
       {white}color:: rgb:2{reset}
       {white}checked_mark:: [X]{reset}
       {white}unchecked_mark:: [ ]{reset}
     {cyan}>>{reset}

{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
{bright_yellow}[8] MODULO DE COLORES: Color / C Y PERSONALIZACION HEXADECIMAL{reset}
{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
  {cyan}1. Como Usar Colores Personalizados (Hexadecimal y Neon):{reset}
     El motor soporta de forma 100% nativa TrueColor (24 bits) en tres vias:

     {white}A) En Codigo Normal con menu.set_style (Encadenamiento Fluido / Chaining):{reset}
        {bright_white}menu.set_style.border("#FF0055").title("#00F5FF").focus("gold"){reset}
        {bright_white}menu.set_style.banner("neon_emerald").subtitle("#A6E3A1"){reset}

     {white}B) En CSS Inline tipo <style> (menu.style <<-GR ... GR):{reset}
        {bright_white}menu.style(<<-GR){reset}
          {white}border:: #FF0055:1{reset}
          {white}title:: #00F5FF:2{reset}
          {white}focus:: gold:2{reset}
          {white}banner:: neon_cyan:2{reset}
        {bright_white}GR{reset}

     {white}C) En Archivos de Tema .gr (ej. mis_colores.gr):{reset}
        {white}border:: #FF0055{reset}           # Codigo hex 6 digitos
        {white}title:: #0FF{reset}                # Codigo hex 3 digitos shorthand
        {white}focus:: neon_gold:2{reset}         # Nombre neon con nivel de brillo
        {white}options:: silver:1{reset}          # Nombre normal con nivel de brillo

     {white}D) Directamente con el modulo Color / C:{reset}
        {bright_white}puts Color.hex("#FF0055", "Texto Carmesi Hex"){reset}
        {bright_white}puts Color.gold("Texto Dorado Directo"){reset}
        {bright_white}puts Color.neon_emerald("Texto Esmeralda Neon"){reset}

  {cyan}2. Catalogo de 90+ Colores (Cada uno con version Normal y version Neon):{reset}
     {bright_yellow}Metales y Joyas:{reset}
     - gold / neon_gold         | silver / neon_silver     | platinum / neon_platinum
     - bronze / neon_bronze     | copper / neon_copper     | ruby / neon_ruby
     - emerald / neon_emerald   | sapphire / neon_sapphire

     {bright_yellow}Fuego, Atardecer y Calidos:{reset}
     - crimson / neon_crimson   | scarlet / neon_scarlet   | coral / neon_coral
     - amber / neon_amber       | peach / neon_peach       | orange / neon_orange
     - red / neon_red           | yellow / neon_yellow

     {bright_yellow}Naturaleza, Menta y Verdes:{reset}
     - lime / neon_lime         | mint / neon_mint         | jade / neon_jade
     - forest / neon_forest     | teal / neon_teal         | green / neon_green

     {bright_yellow}Agua, Cielo y Tonos Frios:{reset}
     - turquoise / neon_turquoise | sky / neon_sky         | azure / neon_azure
     - cobalt / neon_cobalt     | ice / neon_ice           | cyan / neon_cyan
     - aqua / neon_aqua         | blue / neon_blue

     {bright_yellow}Pasteles, Morados y Rosas:{reset}
     - lavender / neon_lavender | mauve / neon_mauve       | violet / neon_violet
     - indigo / neon_indigo     | fuchsia / neon_fuchsia   | rose / neon_rose
     - hot_pink / neon_hot_pink | pink / neon_pink         | purple / neon_purple
     - magenta / neon_magenta

     {bright_yellow}Terminal, Hacker y Monitores:{reset}
     - matrix / neon_matrix     | charcoal / neon_charcoal | white / neon_white
     - gray                     | black

  {cyan}3. Modo Dinamico Arcoiris (Chroma Loop):{reset}
     - {bright_yellow}rgb{reset} / {bright_yellow}rainbow{reset} / {bright_yellow}chroma{reset} -> Espectro animado continuo a 30 FPS en vivo.

{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
{bright_yellow}[9] FUENTES ASCII 3D PARA BANNERS (font: 1 al 10){reset}
{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
  {yellow} 1{reset} -> ANSI Shadow 3D (Default)   {yellow} 6{reset} -> Modular Pipe 3D
  {yellow} 2{reset} -> Slant 3D (FIGlet)           {yellow} 7{reset} -> Bubble / Round Gothic
  {yellow} 3{reset} -> Doom / Standard 3D         {yellow} 8{reset} -> Double-Line Wire 3D
  {yellow} 4{reset} -> Graffiti Shadow 3D         {yellow} 9{reset} -> Solid Fat 3D Block
  {yellow} 5{reset} -> Small Slant / Mini 3D      {yellow}10{reset} -> Arcade Stars Matrix

{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
{bright_yellow}[10] ESTILOS DE MARCO Y BORDES (style: 1 al 20){reset}
{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
  {yellow} 1{reset} -> ##### (Hash)              {yellow}11{reset} -> ░░░░░ (Sombreado suave)
  {yellow} 2{reset} -> ┌───┐ (Linea simple)       {yellow}12{reset} -> █████ (Bloque solido)
  {yellow} 3{reset} -> ╔═══╗ (Doble linea)        {yellow}13{reset} -> ***** (Asteriscos)
  {yellow} 4{reset} -> ┏━━━┓ (Linea gruesa)       {yellow}14{reset} -> +++++ (Cruces)
  {yellow} 5{reset} -> ╒═══╕ (Doble horiz.)       {yellow}15{reset} -> ===== (Iguales)
  {yellow} 6{reset} -> ╓───╖ (Simple horiz.)      {yellow}16{reset} -> ~~~~~ (Ondulado)
  {yellow} 7{reset} -> ╭───╮ (Curvas)             {yellow}17{reset} -> ----- (Guiones)
  {yellow} 8{reset} -> ▛▀▀▀▜ (Bloques)            {yellow}18{reset} -> ◆◆◆◆◆ (Diamantes)
  {yellow} 9{reset} -> ▓▓▓▓▓ (Sombreado oscuro)   {yellow}19{reset} -> ●○○○● (Circulos)
  {yellow}10{reset} -> ▒▒▒▒▒ (Sombreado medio)    {yellow}20{reset} -> ★☆☆☆★ (Estrellas)

{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
{bright_yellow}[11] NAVEGACION POR TECLADO Y ATAJOS{reset}
{bright_magenta}═════════════════════════════════════════════════════════════════════════════════════{reset}
  * {bright_yellow}↑ (Arriba):{reset}      Mover foco arriba. En el tope salta al fondo (Snake loop).
  * {bright_yellow}↓ (Abajo):{reset}       Mover foco abajo. En el fondo salta al tope (Snake loop).
  * {bright_yellow}← / →:{reset}          En grids 2D cambia de columna; en sliders ajusta valor.
  * {bright_yellow}Enter:{reset}          Ejecuta la opcion seleccionada o confirma modal/tabla.
  * {bright_yellow}s:{reset}              En tablas interactivas, ordena por la columna activa.
  * {bright_yellow}Espacio:{reset}        En casillas de verificacion (checkbox), marca/desmarca.
  * {bright_yellow}a / n / i:{reset}      En checkbox: (a) marcar todos, (n) ninguno, (i) invertir.
  * {bright_yellow}q / Esc:{reset}        Sale del menu, cancela modal o limpia buscador.
  * {bright_yellow}Backspace:{reset}      En buscadores e inputs, borra la ultima letra.
  * {bright_yellow}Ctrl+U:{reset}         En buscadores e inputs, limpia toda la linea escrita.

{bright_blue}─────────────────────────────────────────────────────────────────────────────────────{reset}
