/* fbs-marca.css — identidad visual FBS sobre Universal Theme (Vita).
   Solo redefine variables CSS documentadas del tema; no sobrescribe selectores ni toca archivos del tema.
   Fuente de los valores: docs/identidad-visual.md (sitio https://www.fbscgr.gov.co, guías GOV.CO). */
:root {
  /* Paleta principal (azul institucional) */
  --ut-palette-primary: #0943b5;
  --ut-palette-primary-contrast: #ffffff;
  --ut-palette-primary-shade: #e7edf9;
  --ut-palette-primary-alt: #8fa9dd;
  --ut-palette-primary-alt-contrast: #0a1a3d;
  --ut-palette-primary-alt-shade: #f5f8fd;
  --ut-palette-primary-alt-text: #1e4a8e;
  /* Información = azul oscuro del sitio */
  --ut-palette-info: #004884;
  --ut-palette-info-contrast: #ffffff;
  --ut-palette-info-shade: #e5eef5;
  --ut-palette-info-text: #004884;
  /* Advertencia = amarillo del sitio (texto negro: contraste AA) */
  --ut-palette-warning: #f4ac34;
  --ut-palette-warning-contrast: #000000;
  --ut-palette-warning-shade: #fef3df;
  --ut-palette-warning-text: #7a5200;
  /* success y danger se conservan del tema: el rojo/verde de estado debe seguir siendo reconocible */

  /* Cabecera, navegación y fondo */
  --ut-header-background-color: #0943b5;
  --ut-header-text-color: #ffffff;
  --ut-body-background-color: #f3f4f6;
  --ut-body-nav-background-color: #004884;
  --ut-navtabs-background-color: #004884;
  --ut-header-menubar-background-color: #004884;
  --ut-focus-outline-color: #0943b5;

  /* Forma y tipografía (el sitio usa Work Sans y esquinas de 4 px) */
  --a-button-border-radius: 0.25rem;
  --a-base-font-family: "Work Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
}


/* Utilidades fbs-* (CP-19): reemplazan style= incrustados en las páginas. Una definición, usada por todas las apps. */
.fbs-col-8 { width: 8.8%; }
.fbs-col-15 { width: 15%; }
.fbs-col-25-izq { width: 25%; text-align: left; }
.fbs-col-20-izq { width: 20%; text-align: left; }
.fbs-izq { text-align: left; }
.fbs-centro { text-align: center; }
.fbs-fila-centrada { display: flex; align-items: center; gap: 6px; }
.fbs-texto-peligro { color: var(--ut-palette-danger); }
.fbs-nota { font-size: 0.9em; color: #444; border: 1px solid #e0e0e0; padding: 12px; border-radius: 4px; background-color: #fcfcfc; }
.fbs-enlace-destacado { font-weight: bold; color: var(--ut-palette-primary); text-decoration: underline; }
.fbs-margen-sup-neg { margin-top: -10px; }
.fbs-punto-activo { width: 12px; height: 12px; background-color: var(--ut-palette-warning); border-radius: 50%; display: inline-block; box-shadow: 0 2px 4px rgba(255,149,0,0.3); }
.fbs-punto-inactivo { width: 12px; height: 12px; background-color: #e0e0e0; border-radius: 50%; display: inline-block; }
.fbs-punto-completo { width: 12px; height: 12px; background-color: var(--ut-palette-primary); border-radius: 50%; display: inline-block; }
.fbs-oculto { display: none; }
.fbs-texto-ayuda { color: #666; font-size: 12px; font-style: italic; }
.fbs-icono-primario { color: var(--ut-palette-primary); margin-right: 5px; }
.fbs-centro-suave { text-align: center; font-size: 1em; color: #555; }
.fbs-sin-margen { margin: 0; }
.fbs-subtitulo { margin: 0 0 8px 0; font-weight: bold; color: var(--ut-palette-primary); }
.fbs-margen-inf-5 { margin: 0 0 5px 0; }
.fbs-centro-aire { text-align: center; line-height: 1.5; margin-top: 15px; }
.fbs-texto-pequeno { font-size: 0.8em; color: #777; }
.fbs-bloque-linea { display: inline-block; }
.fbs-leyenda { display: flex; gap: 20px; font-size: 13px; color: #555; align-items: center; padding: 10px 0; }
.fbs-tarjeta-nota { background-color: #f8f9fa; border: 1px solid #dee2e6; border-radius: 8px; padding: 16px; margin-top: 20px; font-size: 0.9em; color: #333; }
.fbs-imagen-350 { max-width: 350px; width: 100%; height: auto; }
.fbs-imagen-300 { width: 100%; max-width: 300px; height: auto; }
.fbs-enlace { color: var(--ut-palette-primary); text-decoration: underline; }
/* Lista de requisitos de contraseña con marca en vivo (página 4 de la app 136). */
.fbs-requisitos-titulo { font-size: 13px; font-weight: 600; color: #333; margin: 4px 0 4px; }
.fbs-requisitos { list-style: none; margin: 0 0 12px; padding: 0; font-size: 13px; color: #555; }
.fbs-requisitos li { position: relative; padding-left: 22px; margin: 3px 0; }
.fbs-requisitos li::before { content: "\25CB"; position: absolute; left: 4px; color: #999; }
.fbs-requisitos li.fbs-requisito-ok { color: var(--ut-palette-success); }
.fbs-requisitos li.fbs-requisito-ok::before { content: "\2713"; color: var(--ut-palette-success); font-weight: bold; }
