/* GUARDIANA · la base de diseño de toda la web: la de NÚCLEO.
   Dueño, 27 Oct 2026, 11:07: «me gusta mucho la base que has hecho de NÚCLEO… los botones, el color, el funcionamiento…
   quiero que se añada a toda la página web, al navegador, a Órbita, a todo… la forma de pasar el cursor y se iluminan las
   cosas, la botonería, todo». Este archivo lleva las letras, los colores y las piezas comunes; cada página adapta sus
   propias clases a estos valores para que todo se vea y se comporte igual.
   Letras: IBM Plex Sans y IBM Plex Mono (OFL), servidas desde este sitio (ver /fonts/LEEME.md). */

@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/IBMPlexSans-300-latin.woff) format('woff');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/IBMPlexSans-300-latin-ext.woff) format('woff');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/IBMPlexSans-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/IBMPlexSans-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/IBMPlexSans-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/IBMPlexSans-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/IBMPlexSans-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/IBMPlexSans-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/IBMPlexMono-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/IBMPlexMono-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500 600;font-display:swap;src:url(/fonts/IBMPlexMono-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500 600;font-display:swap;src:url(/fonts/IBMPlexMono-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  /* fondo y superficies */
  --g-fondo:#06080C;
  --g-brillo:radial-gradient(60% 50% at 50% 30%,rgba(156,195,228,.10),transparent 70%);
  --g-panel:rgba(12,18,26,.82);
  --g-panel-hover:rgba(20,32,46,.9);
  --g-panel-solido:#090E15;
  --g-panel-claro:linear-gradient(180deg,rgba(23,38,54,.92),rgba(12,18,26,.88));
  /* texto */
  --g-texto:#F4F6F8;
  --g-texto-2:#c9d6e2;
  --g-texto-3:#a9bccd;
  --g-texto-4:#7f93a6;
  /* el único acento y sus líneas */
  --g-acento:#9CC3E4;
  --g-linea:rgba(156,195,228,.22);
  --g-linea-2:rgba(156,195,228,.38);
  --g-linea-hover:rgba(156,195,228,.6);
  --g-suave:rgba(156,195,228,.14);
  /* significados: coral solo para cortes y alertas, ámbar para dinero y avisos, verde para «Permitido» */
  --g-coral:#E07A6C;
  --g-ambar:#F0C77F;
  --g-verde:#5CC98A;
  /* letras */
  --g-sans:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --g-mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Consolas,monospace;
  /* formas */
  --g-radio:16px;
  /* la red de NÚCLEO (el «cerebro») mide lo mismo en toda la web (dueño, 27 Oct 2026, 14:36: «el mismo tamaño, armonía visual») */
  --g-red:min(26vh,240px);
  --g-radio-grande:22px;
  --g-sombra:0 24px 70px -20px rgba(0,0,0,.9);
  --g-halo:0 18px 60px -26px rgba(156,195,228,.55);
}

/* Botón principal: relleno de acento, letra oscura; al pasar el cursor brilla un poco más */
.g-btn{appearance:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 22px;border:0;border-radius:999px;background:var(--g-acento);color:#06080C;font:600 15px/1 var(--g-sans);text-decoration:none;box-shadow:var(--g-halo);transition:filter .15s,box-shadow .2s,transform .2s}
.g-btn:hover{filter:brightness(1.07);box-shadow:0 18px 60px -22px rgba(156,195,228,.75)}
/* Botón secundario: píldora con línea fina; al pasar el cursor se ilumina */
.g-btn-2{appearance:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 16px;border-radius:999px;border:1px solid rgba(156,195,228,.28);background:rgba(10,14,20,.72);color:#dbe9f4;font:500 14px/1 var(--g-sans);text-decoration:none;transition:background .15s,border-color .15s,color .15s}
.g-btn-2:hover{background:var(--g-suave);border-color:rgba(156,195,228,.55);color:var(--g-texto)}
/* Ficha (opción rápida) */
.g-chip{appearance:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;border-radius:999px;border:1px solid rgba(156,195,228,.34);background:rgba(12,18,26,.85);color:#dbe9f4;font:500 14px/1.2 var(--g-sans);text-decoration:none;transition:background .15s,border-color .15s,color .15s}
.g-chip:hover{background:rgba(156,195,228,.16);border-color:var(--g-linea-hover);color:var(--g-texto)}
/* Tarjeta: se ilumina y sube un poco al pasar el cursor */
.g-tarjeta{border-radius:var(--g-radio);border:1px solid var(--g-linea);background:var(--g-panel);color:var(--g-texto);transition:border-color .2s,background .2s,transform .2s}
a.g-tarjeta:hover,button.g-tarjeta:hover,.g-tarjeta.g-viva:hover{border-color:var(--g-linea-hover);background:var(--g-panel-hover);transform:translateY(-2px)}
/* Etiqueta pequeña en mayúsculas */
.g-k{font:600 11px/1.4 var(--g-mono);letter-spacing:.32em;color:var(--g-acento);text-transform:uppercase}
/* Foco visible igual en todas partes */
.g-btn:focus-visible,.g-btn-2:focus-visible,.g-chip:focus-visible,.g-tarjeta:focus-visible{outline:2px solid var(--g-texto);outline-offset:2px}
@media (prefers-reduced-motion:reduce){.g-btn,.g-btn-2,.g-chip,.g-tarjeta{transition:none}a.g-tarjeta:hover,button.g-tarjeta:hover,.g-tarjeta.g-viva:hover{transform:none}}
