/* GESTIA GOV — hoja unica. Sobria, institucional, legible en celular. */
:root{
  --tinta:#132235; --tinta2:#536274; --linea:#dce3ea; --fondo:#f3f6f8; --papel:#fff;
  --azul:#0b355b; --azul2:#175784; --azul3:#e8f1f7; --verde:#168453; --verde2:#e5f5ed;
  --ambar:#a96508; --rojo:#a72d2d; --lateral:#082b4c;
  --radio:10px; --sombra:0 1px 2px rgba(13,39,66,.04),0 8px 24px rgba(13,39,66,.06);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--fondo);color:var(--tinta);
  font:15px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
a{color:var(--azul2);text-decoration:none}
a:hover{text-decoration:underline}
h1{font-size:1.75rem;line-height:1.2;letter-spacing:-.025em;margin:0 0 .2em}
h2{font-size:1.12rem;margin:1.6em 0 .5em;color:var(--tinta)}
h3{font-size:.95rem;margin:1.2em 0 .4em}
.saltar{position:absolute;left:-9999px}
.saltar:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}

/* ---- barra superior ---- */
.iconos-def{position:absolute;width:0;height:0;overflow:hidden}.ico{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.barra{display:flex;align-items:center;gap:16px;background:#fff;color:var(--tinta);height:68px;
  padding:0 22px;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--linea)}
.marca-producto{display:flex;align-items:center;gap:9px;color:var(--azul);min-width:190px}
.marca-producto:hover{text-decoration:none}.marca-producto img{width:38px;height:38px;object-fit:contain}
.marca-producto span{display:flex;flex-direction:column;line-height:1}.marca-producto strong{font-size:1.05rem;letter-spacing:.1em}.marca-producto small{font-size:.63rem;text-transform:uppercase;letter-spacing:.07em;color:var(--verde);margin-top:5px}
.separador-marca{height:30px;border-left:1px solid var(--linea)}
.marca-institucion{display:flex;align-items:center;gap:9px;min-width:0;flex:1}.marca-institucion>span:last-child{display:flex;flex-direction:column;min-width:0}.marca-institucion small{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:#7a8795}.marca-institucion strong{font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:390px}
.escudo{width:34px;height:34px;border-radius:8px;object-fit:cover;background:#fff;flex:none}
.escudo-letra{display:grid;place-items:center;background:#ffffff22;border:1px solid #ffffff40;
  font-weight:700;font-size:15px;color:var(--azul);background:var(--azul3);border-color:#cddce8}
.barra-der{display:flex;align-items:center;gap:12px}
.usuario{display:flex;flex-direction:column;text-align:right;line-height:1.2}
.usuario strong{font-size:.82rem}.usuario small{color:#748190;font-size:.7rem;text-transform:capitalize}
.usuario-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--azul3);color:var(--azul);font-weight:700}
.salir{display:flex;align-items:center;gap:6px;color:#657384;font-size:.8rem;margin-left:5px}.salir .ico{width:18px}.salir:hover{color:var(--azul);text-decoration:none}
.menu-boton{display:none;background:none;border:0;cursor:pointer;padding:6px}.menu-boton span{display:block;width:21px;border-top:2px solid var(--azul);margin:4px}

/* ---- estructura ---- */
.cuerpo{display:flex;align-items:flex-start;min-height:calc(100vh - 110px)}
.lateral{width:258px;flex:none;background:var(--lateral);color:#fff;padding:18px 13px;position:sticky;top:68px;height:calc(100vh - 68px);overflow:auto;display:flex;flex-direction:column}
.nav-grupo{margin-bottom:19px}.nav-titulo{display:block;padding:0 12px 7px;color:#86a2ba;font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}
.lateral a{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:8px;color:#c8d7e4;font-size:.86rem;margin-bottom:3px;line-height:1.25}
.lateral a .ico{width:19px;height:19px;flex:none;color:#8fabc1}.lateral a>span{min-width:0}
.lateral a:hover{background:#ffffff0d;color:#fff;text-decoration:none}
.lateral a.act{background:#fff;color:var(--azul);font-weight:600;box-shadow:0 5px 14px #00142630}.lateral a.act .ico{color:var(--verde)}
.tag-esbozo{display:block;font-style:normal;font-size:.62rem;color:#9bb0c1;font-weight:400;margin-top:2px}.lateral a.act .tag-esbozo{color:#6e8191}
.nav-respaldo{margin-top:auto;border-top:1px solid #ffffff17;padding:16px 11px 2px;display:flex;gap:10px;color:#a9bdce}.nav-respaldo .ico{width:18px;flex:none}.nav-respaldo span{display:flex;flex-direction:column}.nav-respaldo strong{font-size:.73rem;color:#d1dde6}.nav-respaldo small{font-size:.66rem;margin-top:2px}
.principal{flex:1;padding:30px 34px 48px;min-width:0;max-width:1600px;margin:0 auto}
.principal.sin-menu{max-width:none}
.pie{padding:13px 26px;color:#6c7988;font-size:.72rem;border-top:1px solid var(--linea);background:var(--papel);text-align:center}

/* ---- bloques ---- */
.tarjeta{background:var(--papel);border:1px solid var(--linea);border-radius:var(--radio);
  padding:16px 18px;box-shadow:var(--sombra);margin-bottom:16px}
.rejilla{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.dato{background:var(--papel);border:1px solid var(--linea);border-radius:var(--radio);padding:14px 16px}
.dato .n{font-size:1.7rem;font-weight:600;line-height:1.1}
.dato .r{color:var(--tinta2);font-size:.82rem}
.subtitulo{color:var(--tinta2);margin:.1em 0 1.2em}

/* ---- tablero ejecutivo ---- */
.pagina-cabecera{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:24px}.pagina-cabecera p{color:var(--tinta2);margin:3px 0 0}.sobrelinea{display:block;color:var(--verde);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-bottom:5px}
.estado-institucional{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--linea);border-radius:9px;padding:9px 13px}.estado-punto{width:9px;height:9px;background:var(--verde);border-radius:50%;box-shadow:0 0 0 4px var(--verde2)}.estado-institucional>span:last-child{display:flex;flex-direction:column}.estado-institucional small{font-size:.64rem;color:#748190;text-transform:uppercase;letter-spacing:.06em}.estado-institucional strong{font-size:.8rem}
.alerta-ejecutiva{display:flex;align-items:center;gap:13px;background:#fff9ec;border:1px solid #eed9a9;border-left:4px solid #d38a14;border-radius:9px;padding:13px 15px;margin-bottom:18px}.alerta-icono{display:grid;place-items:center;width:34px;height:34px;background:#fff0ce;color:#9a6007;border-radius:8px;flex:none}.alerta-ejecutiva>div{flex:1}.alerta-ejecutiva strong{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.alerta-ejecutiva p{margin:2px 0 0;color:#695633;font-size:.82rem}.alerta-ejecutiva>a{display:flex;align-items:center;font-size:.8rem;font-weight:700;color:#845307}.alerta-ejecutiva>a .ico{width:15px}
.indicadores-ejecutivos{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:32px}.indicador{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--linea);border-radius:11px;padding:16px 17px;color:var(--tinta);box-shadow:var(--sombra)}a.indicador:hover{text-decoration:none;border-color:#b9cbd9;transform:translateY(-1px)}.indicador-icono{position:absolute;right:15px;top:15px;display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--azul3);color:var(--azul2)}.indicador-icono.ambar{background:#fff2d9;color:#9b6107}.indicador-icono.verde{background:var(--verde2);color:var(--verde)}.indicador-etiqueta{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7887;font-weight:700;padding-right:38px}.indicador strong{font-size:2rem;line-height:1.1;margin:13px 0 3px;letter-spacing:-.04em}.indicador small{color:#728090;font-size:.74rem}.indicador.principal{border-top:3px solid var(--azul)}
.ciclo-gestion{display:grid;grid-template-columns:minmax(230px,.72fr) minmax(0,2fr);gap:22px;align-items:center;background:linear-gradient(120deg,#092f51,#0b4262);color:#fff;border-radius:12px;padding:20px 22px;margin:0 0 30px;box-shadow:0 10px 28px rgba(8,43,76,.14)}.ciclo-intro .sobrelinea{color:#79daa2}.ciclo-intro h2{color:#fff;margin:0 0 5px;font-size:1.05rem}.ciclo-intro p{color:#b8ccda;font-size:.75rem;margin:0;max-width:330px}.ciclo-pasos{display:grid;grid-template-columns:repeat(5,1fr);position:relative}.ciclo-pasos::before{content:'';position:absolute;left:8%;right:8%;top:17px;border-top:1px solid #ffffff2c}.ciclo-paso{position:relative;display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:start;padding-right:8px}.ciclo-numero{position:relative;z-index:1;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#174f70;border:1px solid #ffffff2e;color:#abc2d1;font-size:.72rem;font-weight:700}.ciclo-paso.con-datos .ciclo-numero{background:var(--verde);color:#fff;border-color:#65c992}.ciclo-texto{display:flex;flex-direction:column;padding-top:1px;min-width:0}.ciclo-texto strong{font-size:.72rem}.ciclo-texto small{font-size:.6rem;color:#a8bfce;white-space:nowrap}.ciclo-cantidad{grid-column:2;font-size:.68rem;color:#78d8a1;font-weight:700;margin-top:-11px}
.tablero-columnas{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:24px;align-items:start}.seccion-cabecera{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:11px}.seccion-cabecera h2{font-size:1.15rem;margin:0}.resumen-total{font-size:.72rem;color:#718090}
.modulos-resumen{background:#fff;border:1px solid var(--linea);border-radius:11px;box-shadow:var(--sombra);overflow:hidden}.modulo-resumen{display:grid;grid-template-columns:42px minmax(0,1fr) auto 18px;align-items:center;gap:12px;padding:13px 15px;color:var(--tinta);border-bottom:1px solid #e8edf1}.modulo-resumen:last-child{border-bottom:0}.modulo-resumen:hover{background:#f8fafc;text-decoration:none}.modulo-icono{display:grid;place-items:center;width:40px;height:40px;border-radius:9px;background:#e9f5ee;color:var(--verde)}.modulo-icono.combustible{background:#fff1d8;color:#a46a0c}.modulo-icono.patrimonio{background:#e9eef8;color:#315891}.modulo-icono.expedientes{background:#f0ebf8;color:#6d4e99}.modulo-icono.uoc{background:#e5f1f7;color:#17618d}.modulo-resumen>span:nth-child(2){display:flex;flex-direction:column;min-width:0}.modulo-resumen strong{font-size:.86rem}.modulo-resumen small{font-size:.72rem;color:#718090;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modulo-meta{text-align:right;display:flex;flex-direction:column;font-size:.96rem;font-weight:700}.modulo-meta small{font-weight:400;font-size:.65rem}.modulo-resumen .flecha{width:16px;color:#97a4b1}
.accesos-rapidos{display:grid;grid-template-columns:1fr 1fr;gap:9px}.accesos-rapidos a{background:#fff;border:1px solid var(--linea);border-radius:10px;padding:13px;color:var(--tinta);display:flex;flex-direction:column;min-height:112px;box-shadow:var(--sombra)}.accesos-rapidos a:hover{text-decoration:none;border-color:#b6cad9;transform:translateY(-1px)}.accesos-rapidos a>span{display:grid;place-items:center;width:31px;height:31px;border-radius:7px;background:var(--azul3);color:var(--azul2);margin-bottom:auto}.accesos-rapidos .ico{width:17px}.accesos-rapidos strong{font-size:.78rem;margin-top:10px}.accesos-rapidos small{font-size:.66rem;color:#748190}.actividad-titulo{margin-top:30px}.actividad-titulo>a{display:flex;align-items:center;font-size:.76rem;font-weight:600}.actividad-titulo>a .ico{width:15px}

/* ---- tablas ---- */
.tabla-marco{overflow-x:auto;background:var(--papel);border:1px solid var(--linea);
  border-radius:var(--radio);box-shadow:var(--sombra)}
table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:520px}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--linea);vertical-align:top}
th{background:#f7f9fc;font-weight:600;color:var(--tinta2);font-size:.8rem;
  text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}
tbody tr:last-child td{border-bottom:0}
tbody tr:hover{background:#fafbfd}
td.num,th.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}

/* ---- estados ---- */
.pin{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.75rem;
  font-weight:600;white-space:nowrap;border:1px solid}
.pin-borrador{background:#f1f3f6;color:#5a6473;border-color:#dde1e7}
.pin-solicitado{background:#fff5e2;color:var(--ambar);border-color:#f2ddb4}
.pin-autorizado{background:#e6f4ec;color:var(--verde);border-color:#bfe2ce}
.pin-rechazado{background:#fbeaea;color:var(--rojo);border-color:#eecccc}
.pin-ejecutado{background:#e8effa;color:var(--azul2);border-color:#c7d8f0}
.pin-rendido{background:#eae8fa;color:#4a3fa0;border-color:#d0cbf0}
.pin-cerrado{background:#eef0f2;color:#57606d;border-color:#dcdfe4}

/* ---- formularios ---- */
label{display:block;font-size:.82rem;color:var(--tinta2);margin-bottom:4px;font-weight:600}
input,select,textarea{width:100%;padding:9px 11px;border:1px solid #cfd6df;border-radius:6px;
  font:inherit;background:#fff;color:var(--tinta)}
input:focus,select:focus,textarea:focus{outline:2px solid #bcd0ea;border-color:var(--azul2)}
textarea{min-height:82px;resize:vertical}
.campo{margin-bottom:13px}
.campos{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 16px}
fieldset{border:1px solid var(--linea);border-radius:var(--radio);padding:14px 16px;margin:0 0 16px}
legend{font-weight:600;font-size:.9rem;padding:0 6px;color:var(--azul)}
.marcas label{display:flex;align-items:center;gap:8px;font-weight:400;font-size:.9rem;
  color:var(--tinta);margin:0 0 7px}
.marcas input{width:auto}

/* ---- botones ---- */
.btn{display:inline-block;padding:8px 15px;border-radius:6px;border:1px solid transparent;
  background:var(--azul);color:#fff;font:inherit;font-size:.88rem;cursor:pointer;text-align:center}
.btn:hover{background:var(--azul2);text-decoration:none;color:#fff}
.btn-tenue{background:transparent;border-color:#ffffff55;color:#fff}
.btn-tenue:hover{background:#ffffff22}
.btn-sec{background:#fff;border-color:#cfd6df;color:var(--tinta)}
.btn-sec:hover{background:#f2f5f9;color:var(--tinta)}
.btn-ok{background:var(--verde)}.btn-ok:hover{background:#186139}
.btn-no{background:var(--rojo)}.btn-no:hover{background:#8a2424}
.btn-chico{padding:5px 10px;font-size:.8rem}
.acciones{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px}
.encabezado-accion{display:flex;justify-content:space-between;align-items:flex-start;
  gap:14px;flex-wrap:wrap;margin-bottom:6px}

/* ---- avisos ---- */
.aviso{padding:11px 14px;border-radius:var(--radio);margin-bottom:16px;font-size:.9rem;border:1px solid}
.aviso.ok{background:#e6f4ec;border-color:#bfe2ce;color:#155f3b}
.aviso.error{background:#fbeaea;border-color:#eecccc;color:var(--rojo)}
.aviso.atencion{background:#fff5e2;border-color:#f2ddb4;color:#7c4e04}
.vacio{padding:26px;text-align:center;color:var(--tinta2);background:var(--papel);
  border:1px dashed var(--linea);border-radius:var(--radio)}
.construccion{padding:30px;text-align:center;background:#fffaf0;border:1px dashed #e6cf9c;
  border-radius:var(--radio);color:#7c4e04}
.construccion strong{display:block;font-size:1.05rem;margin-bottom:6px}

/* ---- ingreso ---- */
.principal.sin-menu{padding:0;max-width:none}.acceso-portada{min-height:calc(100vh - 46px);display:grid;grid-template-columns:minmax(420px,1.15fr) minmax(390px,.85fr);background:linear-gradient(125deg,#062846 0%,#0b3d66 55%,#12634f 125%)}
.acceso-identidad{align-self:center;justify-self:center;max-width:610px;padding:60px;color:#fff}.acceso-identidad>img{width:76px;height:76px;object-fit:contain;filter:drop-shadow(0 8px 16px #00182d55)}.acceso-identidad>div:nth-child(2){display:flex;flex-direction:column;margin:8px 0 48px}.acceso-identidad>div:nth-child(2) strong{font-size:1.25rem;letter-spacing:.14em}.acceso-identidad>div:nth-child(2) span{text-transform:uppercase;letter-spacing:.11em;color:#73d29d;font-size:.68rem}.acceso-identidad h1{font-size:2.55rem;line-height:1.13;max-width:590px}.acceso-identidad>p{font-size:1rem;color:#c6d6e2;max-width:570px}.acceso-garantias{display:flex!important;flex-direction:row!important;gap:18px!important;margin:35px 0 0!important;flex-wrap:wrap}.acceso-garantias span{font-size:.69rem!important;color:#dce7ef!important;text-transform:none!important;letter-spacing:0!important}.acceso-garantias span::before{content:'✓';color:#6dd79c;font-weight:700;margin-right:6px}
.acceso{align-self:center;justify-self:center;width:min(420px,calc(100% - 48px));margin:40px;background:#fff;border:1px solid #ffffff50;border-radius:15px;padding:32px;box-shadow:0 24px 70px #00172b66}.acceso-cabecera{display:flex;gap:12px;align-items:center;margin-bottom:25px}.acceso-cabecera h2{font-size:1.2rem;margin:0}.acceso-cabecera p{margin:2px 0 0;color:#718090;font-size:.76rem}.acceso-sello{display:grid;place-items:center;width:42px;height:42px;border-radius:9px;background:var(--azul3);color:var(--azul)}.acceso-ayuda{text-align:center;margin:17px 0 0}

/* ---- linea de tiempo ---- */
.linea{list-style:none;padding:0;margin:0;border-left:2px solid var(--linea);margin-left:8px}
.linea li{padding:0 0 16px 18px;position:relative}
.linea li::before{content:"";position:absolute;left:-7px;top:4px;width:12px;height:12px;
  border-radius:50%;background:var(--azul);border:2px solid #fff}
.linea small{color:var(--tinta2)}

.filtros{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-bottom:14px}
.filtros .campo{margin:0;min-width:160px}
.tenue{color:var(--tinta2);font-size:.85rem}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}

@media (max-width:860px){
  .menu-boton{display:block}
  .lateral{position:fixed;left:0;top:68px;bottom:0;z-index:19;display:none;width:270px;height:calc(100vh - 68px);
    box-shadow:0 6px 30px rgba(0,0,0,.2)}
  body.menu-abierto .lateral{display:block}
  .principal{padding:16px 14px 34px}
  .usuario,.marca-institucion,.separador-marca,.salir span{display:none}.marca-producto{flex:1;min-width:0}.marca-producto small{display:none}.marca-producto img{width:34px;height:34px}.barra{padding:0 12px;gap:7px}
  .indicadores-ejecutivos{grid-template-columns:1fr 1fr}.tablero-columnas{grid-template-columns:1fr}.ciclo-gestion{grid-template-columns:1fr}.ciclo-pasos{overflow-x:auto;padding-bottom:5px}.ciclo-paso{min-width:125px}.alerta-ejecutiva{align-items:flex-start;flex-wrap:wrap}.alerta-ejecutiva>a{margin-left:47px}.acceso-portada{grid-template-columns:1fr}.acceso-identidad{display:none}.acceso{margin:35px 0;width:min(420px,calc(100% - 28px))}.principal.sin-menu{padding:0}
  table{min-width:480px}
}
@media (max-width:520px){.indicadores-ejecutivos{grid-template-columns:1fr}.pagina-cabecera{align-items:flex-start}.estado-institucional{display:none}.accesos-rapidos{grid-template-columns:1fr 1fr}.modulo-resumen{grid-template-columns:38px minmax(0,1fr) 16px}.modulo-meta{display:none}.principal{padding:20px 12px 34px}.tablero-cabecera h1{font-size:1.55rem}}

/* ---- Design System GESTIA V1: experiencia base ---- */
:root{
  --foco:#2f78b7;--azul-hover:#124c75;--peligro-fondo:#fff2f1;--atencion-fondo:#fff8e8;
  --exito-fondo:#edf8f2;--texto-inverso:#fff;--ancho-contenido:1440px;
  --espacio-1:4px;--espacio-2:8px;--espacio-3:12px;--espacio-4:16px;--espacio-6:24px;--espacio-8:32px;--espacio-12:48px
}
body{min-width:320px}
button,input,select,textarea{accent-color:var(--azul2)}
a,button,input,select,textarea,summary{transition:border-color .15s ease,background-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid color-mix(in srgb,var(--foco) 42%,transparent);outline-offset:2px}
button:disabled,.btn[aria-busy="true"]{cursor:wait;opacity:.7}
.btn.cargando{position:relative;padding-right:38px}.btn.cargando::after{content:"";position:absolute;right:14px;top:50%;width:14px;height:14px;margin-top:-8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:giro .7s linear infinite}
@keyframes giro{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

.menu-velo{position:fixed;inset:68px 0 0;background:rgba(5,22,37,.48);z-index:18;backdrop-filter:blur(2px)}
.nav-salir-institucion{padding:6px 11px}.btn-bloque{width:100%}.btn-grande{min-height:44px;font-weight:650}
.usuario-menu{position:relative}.usuario-disparador{display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:5px 7px;border-radius:9px;color:var(--tinta);cursor:pointer}.usuario-disparador:hover{background:#f2f6f9}.usuario-chevron{width:15px;height:15px;color:#758392}.usuario-disparador[aria-expanded="true"] .usuario-chevron{transform:rotate(180deg)}
.usuario-panel{position:absolute;right:0;top:calc(100% + 9px);width:260px;background:#fff;border:1px solid var(--linea);border-radius:11px;box-shadow:0 16px 45px rgba(8,43,76,.18);padding:7px;z-index:35}.usuario-panel-identidad{display:flex;flex-direction:column;padding:10px 11px 12px;border-bottom:1px solid var(--linea);margin-bottom:5px;overflow:hidden}.usuario-panel-identidad strong{font-size:.84rem}.usuario-panel-identidad small{color:var(--tinta2);font-size:.72rem;overflow:hidden;text-overflow:ellipsis}.usuario-panel a,.usuario-panel button{display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;border:0;border-radius:7px;background:transparent;color:var(--tinta);font:inherit;font-size:.8rem;cursor:pointer}.usuario-panel a:hover,.usuario-panel button:hover{background:#f2f6f9;text-decoration:none}.usuario-panel .ico{width:17px;height:17px;color:var(--azul2)}

.contexto-plataforma{display:flex;align-items:center;gap:12px;margin:-10px 0 20px;padding:11px 14px;border:1px solid #e7c77d;border-left:4px solid #c77c08;border-radius:9px;background:#fff9e9;color:#6d4c17}.contexto-plataforma>.ico{flex:none}.contexto-plataforma>span{display:flex;flex:1;flex-direction:column;font-size:.75rem}.contexto-plataforma strong{font-size:.78rem;color:#53370f}.contexto-plataforma form{flex:none}
.breadcrumbs{margin:-8px 0 20px}.breadcrumbs ol{display:flex;align-items:center;gap:7px;list-style:none;padding:0;margin:0;flex-wrap:wrap;font-size:.72rem;color:#6d7b8b}.breadcrumbs li{display:flex;align-items:center}.breadcrumbs li+li::before{content:"/";margin-right:7px;color:#a3adb8}.breadcrumbs a{color:#617486}.breadcrumbs span[aria-current="page"]{color:var(--tinta);font-weight:600;text-transform:capitalize}

.pagina-cabecera,.encabezado-accion{padding-bottom:14px;border-bottom:1px solid var(--linea)}
.pagina-cabecera h1,.encabezado-accion h1{font-size:clamp(1.55rem,2vw,2rem)}
.principal>h1{font-size:clamp(1.55rem,2vw,2rem);padding-bottom:14px;border-bottom:1px solid var(--linea);margin-bottom:6px}.principal>h1+.subtitulo{margin-top:8px}
.tarjeta,.dato,.tabla-marco,.modulos-resumen,.accesos-rapidos a,.indicador{box-shadow:0 1px 2px rgba(13,39,66,.035),0 6px 20px rgba(13,39,66,.045)}
.tarjeta>h2:first-child,.tarjeta>h3:first-child{margin-top:0}
.tarjeta summary{font-weight:650;color:var(--azul);cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px}.tarjeta summary::-webkit-details-marker{display:none}.tarjeta summary::before{content:"+";display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:var(--azul3);font-size:1rem}.tarjeta[open] summary::before{content:"−"}
.btn{min-height:38px;font-weight:600}.btn-chico{min-height:32px}.acciones.centradas{justify-content:center}

.aviso{position:relative;padding:12px 15px 12px 42px}.aviso::before{position:absolute;left:15px;top:11px;font-weight:800}.aviso.ok::before{content:"✓"}.aviso.error::before{content:"!"}.aviso.atencion::before{content:"!"}.aviso.error{background:var(--peligro-fondo)}.aviso.atencion{background:var(--atencion-fondo)}.aviso.ok{background:var(--exito-fondo)}
.vacio-contenido,.vacio{min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px}.vacio strong{color:var(--tinta);font-size:.95rem}.vacio p{max-width:520px;margin:5px 0 0}.vacio-icono{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:var(--azul3);color:var(--azul2);margin-bottom:10px}.estado-pagina{max-width:620px;margin:8vh auto;text-align:center;background:#fff;border:1px solid var(--linea);border-radius:14px;padding:45px 35px;box-shadow:var(--sombra)}.estado-pagina-icono{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 16px;border-radius:12px;background:var(--atencion-fondo);color:var(--ambar)}.estado-pagina-icono .ico{width:25px;height:25px}.estado-pagina p{color:var(--tinta2);max-width:470px;margin:8px auto 23px}

.auth-layout{isolation:isolate}.auth-layout::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 18% 20%,rgba(64,157,128,.18),transparent 32%),linear-gradient(115deg,transparent 52%,rgba(255,255,255,.03) 52%)}.auth-layout>*{position:relative;z-index:1}.form-acceso input{min-height:44px}.campo-clave{position:relative}.campo-clave input{padding-right:98px}.clave-toggle{position:absolute;right:5px;top:5px;height:34px;display:flex;align-items:center;gap:5px;border:0;background:#f0f4f7;border-radius:6px;color:var(--azul);font-size:.72rem;font-weight:650;cursor:pointer}.clave-toggle .ico{width:16px}.caps-lock{display:block;color:var(--ambar);margin-top:5px;font-size:.72rem}.acceso-soporte{display:flex;gap:9px;margin-top:22px;padding-top:17px;border-top:1px solid var(--linea);color:var(--tinta2)}.acceso-soporte .ico{flex:none;width:18px;color:var(--azul2)}.acceso-soporte span{display:flex;flex-direction:column;font-size:.69rem}.acceso-soporte strong{font-size:.72rem;color:var(--tinta);margin-bottom:1px}.auth-simple{min-height:calc(100vh - 45px);display:grid;place-items:center;padding:30px;background:linear-gradient(135deg,#edf3f7,#f8fafb)}.auth-simple .acceso{margin:0}.auth-marca{display:flex;align-items:center;gap:9px;margin-bottom:28px;color:var(--azul)}.auth-marca:hover{text-decoration:none}.auth-marca img{width:38px;height:38px}.auth-marca span{display:flex;flex-direction:column;line-height:1}.auth-marca strong{letter-spacing:.1em}.auth-marca small{margin-top:4px;color:var(--verde);font-size:.62rem;text-transform:uppercase;letter-spacing:.07em}

table{font-variant-numeric:tabular-nums}th{height:42px}td{height:45px}.tabla-marco:focus-within{border-color:#b7c9d8}.pin::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:6px;vertical-align:1px}
.ciclo-paso{min-width:0}.ciclo-numero{box-shadow:0 0 0 3px rgba(255,255,255,.06)}

@media (max-width:1100px){.indicadores-ejecutivos{grid-template-columns:repeat(2,1fr)}.tablero-columnas{grid-template-columns:1fr}.accesos-rapidos{grid-template-columns:repeat(4,1fr)}.ciclo-gestion{grid-template-columns:1fr}.principal{padding-inline:24px}}
@media (max-width:860px){body.menu-abierto{overflow:hidden}.lateral{display:flex;transform:translateX(-105%);transition:transform .18s ease}.menu-abierto .lateral{transform:translateX(0)}.menu-boton{width:40px;height:40px;border-radius:8px}.menu-boton:hover{background:#eef3f7}.usuario-disparador{padding:3px}.usuario-chevron{display:none}.usuario-panel{position:fixed;right:12px;top:62px}.breadcrumbs{margin:0 0 16px}.contexto-plataforma{align-items:flex-start;flex-wrap:wrap;margin:0 0 18px}.contexto-plataforma form{margin-left:32px}.accesos-rapidos{grid-template-columns:repeat(2,1fr)}.pagina-cabecera{margin-bottom:18px}}
@media (max-width:600px){.indicadores-ejecutivos{grid-template-columns:1fr;gap:10px;margin-bottom:24px}.indicador{min-height:122px}.accesos-rapidos{grid-template-columns:1fr 1fr}.ciclo-gestion{margin-inline:-12px;border-radius:0;padding:18px 14px}.ciclo-pasos{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:128px}.ciclo-pasos::before{right:-400px}.alerta-ejecutiva>a{margin-left:0;width:100%;padding-left:47px}.modulo-resumen{padding-inline:12px}.auth-simple{padding:14px}.auth-simple .acceso{width:100%;padding:26px 22px}.estado-pagina{margin:4vh 0;padding:36px 22px}.contexto-plataforma form{width:100%;margin-left:0}.contexto-plataforma button{width:100%}.pagina-cabecera,.encabezado-accion{flex-direction:column;align-items:stretch}.encabezado-accion>.acciones{width:100%}.encabezado-accion>.acciones .btn{flex:1}.campos{grid-template-columns:1fr}.filtros{align-items:stretch}.filtros .campo{width:100%}.filtros .btn{width:100%}}

/* ---- Release v0.9: experiencia institucional ---- */
.modulo-cabecera{align-items:center;margin-bottom:28px}.cabecera-metricas{display:flex;gap:10px}.cabecera-metricas>span{display:flex;flex-direction:column;min-width:105px;padding:10px 13px;background:#fff;border:1px solid var(--linea);border-radius:9px}.cabecera-metricas strong{font-size:1.25rem;line-height:1.1}.cabecera-metricas small{font-size:.65rem;color:var(--tinta2);text-transform:uppercase;letter-spacing:.04em}.seccion-operativa{margin-top:30px}.decision-lista{display:grid;gap:10px}.decision-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;align-items:center;background:#fff;border:1px solid var(--linea);border-left:3px solid var(--ambar);border-radius:10px;padding:14px 16px;box-shadow:var(--sombra)}.decision-icono{display:grid;place-items:center;width:40px;height:40px;border-radius:9px;color:var(--azul2);background:var(--azul3)}.decision-contenido h3{font-size:.92rem;margin:4px 0 2px}.decision-contenido p{margin:0;color:var(--tinta2);font-size:.77rem}.decision-meta{display:flex;gap:10px;color:#708091;font-size:.66rem;text-transform:uppercase;letter-spacing:.04em}.decision-meta span+span::before{content:'·';margin-right:10px}.decision-accion{display:flex;align-items:center;gap:12px}
.indicadores-modulo{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0 22px}.kpi-modulo{display:flex;flex-direction:column;color:var(--tinta);box-shadow:var(--sombra)}.kpi-modulo:hover{text-decoration:none;border-color:#b8cad8;transform:translateY(-1px)}.kpi-modulo .pin{align-self:flex-start}.kpi-modulo .n{margin-top:13px}.barra-filtros{background:#fff;border:1px solid var(--linea);border-radius:10px;padding:12px;margin-bottom:14px}.barra-filtros .campo:first-child{flex:1;min-width:260px}
.proceso-stepper{background:#fff;border:1px solid var(--linea);border-radius:11px;padding:18px 20px;margin:18px 0;overflow:auto;box-shadow:var(--sombra)}.proceso-stepper ol{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));padding:0;margin:0;min-width:650px}.proceso-stepper li{position:relative;display:grid;grid-template-columns:30px 1fr;align-items:center;column-gap:8px}.proceso-stepper li::after{content:'';position:absolute;top:15px;left:30px;right:0;border-top:2px solid var(--linea)}.proceso-stepper li:last-child::after{display:none}.proceso-stepper li>span{position:relative;z-index:1;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eef2f5;border:2px solid #d9e1e7;color:#6c7987;font-size:.7rem;font-weight:700}.proceso-stepper strong,.proceso-stepper small{grid-column:2;position:relative;z-index:1;background:#fff;padding-right:7px}.proceso-stepper strong{font-size:.72rem}.proceso-stepper small{font-size:.6rem;color:#7a8795}.proceso-stepper .cumplida>span{background:var(--verde);border-color:var(--verde);color:#fff}.proceso-stepper .cumplida::after{border-color:#7bc49c}.proceso-stepper .actual>span{box-shadow:0 0 0 4px var(--verde2)}.ficha-resumen{align-items:stretch}.ficha-resumen .tarjeta{margin:0}.tarjeta-etiqueta{font-size:.62rem;color:var(--verde);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.tarjeta-etiqueta+h3{margin-top:3px}.proximo-paso{margin-top:28px}.accion-contextual{border-left:4px solid var(--azul2)}.accion-contextual>h3:first-child{margin-top:0}.vacio-compacto{min-height:100px;padding:20px}.archivo-lista{list-style:none;padding:0;margin:0}.archivo-lista li{display:flex;gap:11px;align-items:center;padding:10px 0;border-bottom:1px solid var(--linea)}.archivo-lista li:last-child{border-bottom:0}.archivo-icono{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:var(--azul3);color:var(--azul2);flex:none}.archivo-lista li>span:last-child{display:flex;flex-direction:column;min-width:0}.archivo-lista a{overflow-wrap:anywhere}.archivo-lista small{color:var(--tinta2);font-size:.7rem}.timeline-institucional li::before{background:var(--verde)}
.ayuda-contextual{display:flex;gap:11px;align-items:flex-start;background:var(--azul3);border:1px solid #cbdde9;border-radius:9px;padding:12px 14px;margin:16px 0}.ayuda-contextual .ico{flex:none;color:var(--azul2)}.ayuda-contextual span{display:flex;flex-direction:column;font-size:.75rem;color:#4d6578}.ayuda-contextual strong{font-size:.78rem;color:var(--tinta)}.form-seccion{background:#fff;padding:20px 22px;box-shadow:var(--sombra)}.form-seccion legend{display:flex;align-items:center;gap:8px;font-size:1rem}.form-seccion legend span{display:grid;place-items:center;width:25px;height:25px;background:var(--azul);color:#fff;border-radius:50%;font-size:.7rem}.form-ayuda{color:var(--tinta2);font-size:.76rem;margin:0 0 16px}
@media(max-width:1000px){.indicadores-modulo{grid-template-columns:repeat(2,1fr)}.decision-card{grid-template-columns:42px minmax(0,1fr)}.decision-accion{grid-column:2;justify-content:space-between}}
@media(max-width:650px){.cabecera-metricas{width:100%}.cabecera-metricas>span{flex:1}.decision-card{grid-template-columns:36px minmax(0,1fr);padding:13px}.decision-icono{width:35px;height:35px}.decision-accion{align-items:stretch;flex-direction:column}.decision-accion .btn{width:100%}.indicadores-modulo{grid-template-columns:1fr 1fr}.tabla-responsive table,.tabla-responsive thead,.tabla-responsive tbody,.tabla-responsive tr,.tabla-responsive td{display:block;min-width:0}.tabla-responsive thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.tabla-responsive tr{padding:11px 13px;border-bottom:1px solid var(--linea)}.tabla-responsive tr:last-child{border-bottom:0}.tabla-responsive td{display:grid;grid-template-columns:105px 1fr;gap:8px;border:0;padding:5px 0;text-align:left!important;height:auto}.tabla-responsive td::before{content:attr(data-label);font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;color:#788695;font-weight:700}.form-seccion{padding:17px 15px}.proceso-stepper{margin-inline:-12px;border-radius:0;border-inline:0}.decision-meta{flex-direction:column;gap:1px}.decision-meta span+span::before{display:none}}
.indicadores-modulo.tres{grid-template-columns:repeat(3,1fr)}.indicadores-modulo.cuatro{grid-template-columns:repeat(4,1fr)}.monto-kpi{font-size:1.35rem!important;overflow-wrap:anywhere}.modulo-subnav{position:sticky;top:68px;z-index:10;display:flex;gap:3px;overflow:auto;background:rgba(243,246,248,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--linea);margin:0 0 25px;padding:8px 0}.modulo-subnav a{white-space:nowrap;padding:7px 12px;border-radius:7px;color:var(--tinta2);font-size:.75rem;font-weight:650}.modulo-subnav a:hover{background:#fff;color:var(--azul);text-decoration:none}.seccion-ancla{scroll-margin-top:125px;margin-top:30px}.panel-alta{scroll-margin-top:125px;margin-top:22px}.panel-alta form,.accion-desplegable form{margin-top:14px}.accion-desplegable{position:relative}.accion-desplegable summary::before{display:none}.accion-desplegable[open] form{position:absolute;right:0;z-index:8;width:300px;background:#fff;border:1px solid var(--linea);border-radius:9px;padding:14px;box-shadow:0 15px 40px rgba(8,43,76,.2)}.texto-riesgo{color:var(--rojo);font-weight:650}.alcance-futuro{display:flex;align-items:flex-start;gap:11px;margin-top:24px;padding:14px 16px;background:#f4f7f9;border:1px solid var(--linea);border-left:3px solid #8ca0b1;border-radius:9px;color:var(--tinta2)}.alcance-futuro .ico{flex:none;color:#657b8d}.alcance-futuro span{display:flex;flex-direction:column;font-size:.76rem}.alcance-futuro strong{color:var(--tinta);font-size:.78rem;margin-bottom:2px}
.uoc-principio{display:flex;align-items:center;gap:18px;padding:20px 22px;margin:20px 0 12px;border-radius:12px;background:linear-gradient(120deg,#082f50,#0c4b66);color:#fff}.uoc-principio-icono{display:grid;place-items:center;width:52px;height:52px;border-radius:11px;background:rgba(255,255,255,.1);color:#79d7a2;flex:none}.uoc-principio-icono .ico{width:26px;height:26px}.uoc-principio .sobrelinea{color:#78d69f}.uoc-principio h2{color:#fff;margin:0;font-size:1.15rem}.uoc-principio p{color:#bfd0dc;margin:4px 0 0;font-size:.78rem}.inteligencia-leyenda{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:22px}.inteligencia-leyenda>div{display:flex;flex-direction:column;background:#fff;border:1px solid var(--linea);border-radius:9px;padding:11px 12px}.inteligencia-leyenda strong{font-size:.76rem;margin-top:7px}.inteligencia-leyenda small{font-size:.65rem;color:var(--tinta2)}.inteligencia-tipo{align-self:flex-start;font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;font-weight:800;padding:2px 6px;border-radius:4px}.inteligencia-tipo.oficial{background:#e7f0f7;color:#1f5c83}.inteligencia-tipo.hallazgo{background:#fff1d8;color:#8a5706}.inteligencia-tipo.recomendacion{background:#eeeafa;color:#5b4393}.inteligencia-tipo.validacion{background:#e6f5ed;color:#176a43}.catalogos-panel{margin-top:22px}.catalogos-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:16px}.catalogos-grid h3{margin-top:0}.tabla-compacta{max-height:350px;overflow:auto}.tabla-compacta table{font-size:.78rem}.fuente-datos{font-size:.7rem;color:var(--tinta2);margin:15px 0 0}
@media(max-width:900px){.inteligencia-leyenda{grid-template-columns:1fr 1fr}.catalogos-grid{grid-template-columns:1fr}.indicadores-modulo.cuatro{grid-template-columns:1fr 1fr}.modulo-subnav{top:68px}}
@media(max-width:650px){.indicadores-modulo.tres,.indicadores-modulo.cuatro{grid-template-columns:1fr 1fr}.modulo-subnav{margin-inline:-12px;padding-inline:10px}.uoc-principio{align-items:flex-start;padding:17px 15px}.uoc-principio-icono{width:42px;height:42px}.inteligencia-leyenda{grid-template-columns:1fr 1fr}.accion-desplegable[open] form{position:relative;right:auto;width:100%;box-shadow:none}.tabla-responsive .accion-desplegable form{grid-column:1/-1}.configuracion-nav{top:68px}}

/* ---- Release v0.10: control institucional ---- */
.panel{background:#fff;border:1px solid var(--linea);border-radius:11px;padding:20px 22px;margin:18px 0;box-shadow:var(--sombra)}.panel h2{margin-top:0}.panel-titulo{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.panel-titulo h2{margin:2px 0 0}.eyebrow{font-size:.62rem;color:var(--verde);font-weight:750;text-transform:uppercase;letter-spacing:.08em}.badge{display:inline-flex;min-width:26px;height:26px;align-items:center;justify-content:center;border-radius:13px;background:var(--azul3);color:var(--azul);font-weight:700}.ficha-control{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px;align-items:start}.ficha-control>.panel{margin:0}.detalle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--linea);border:1px solid var(--linea);border-radius:9px;overflow:hidden}.detalle-grid>div{background:#fff;padding:13px}.detalle-grid dt{font-size:.62rem;color:var(--tinta2);text-transform:uppercase;letter-spacing:.05em}.detalle-grid dd{margin:4px 0 0;font-size:.84rem;font-weight:650}.alerta.atencion{padding:15px;border-left:4px solid var(--ambar);background:var(--atencion-fondo);border-radius:8px;margin-top:16px}.alerta.atencion p{margin:4px 0 12px}.linea-tiempo{display:grid}.evento{position:relative;display:grid;grid-template-columns:24px 1fr;gap:10px;padding-bottom:19px}.evento::before{content:"";position:absolute;left:6px;top:12px;bottom:-2px;border-left:2px solid var(--linea)}.evento:last-child::before{display:none}.evento .punto{position:relative;z-index:1;width:14px;height:14px;border:3px solid #fff;border-radius:50%;background:var(--verde);box-shadow:0 0 0 1px var(--verde)}.evento strong{text-transform:capitalize}.evento p{margin:3px 0;font-size:.8rem}.evento small{color:var(--tinta2)}.lista-documentos{display:grid}.documento-item{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--linea)}.documento-item:last-child{border-bottom:0}.documento-item p{margin:3px 0}.form-documento{display:grid;grid-template-columns:1fr 1fr 1.2fr auto auto;gap:10px;align-items:end;margin-top:16px;padding-top:16px;border-top:1px solid var(--linea)}.form-documento label{font-size:.7rem;font-weight:650}.form-documento input{width:100%}.form-documento .check{display:flex;align-items:center;gap:6px;padding-bottom:10px;white-space:nowrap}.form-documento .check input{width:auto}.acciones.compactas{flex-wrap:nowrap}.zona-sensible{border-left:4px solid var(--rojo)}.zona-sensible form{display:grid;gap:12px}.fila-riesgo{background:#fff9f7}.prioridad-urgente{color:#9d2d27;background:#fde9e6}.prioridad-alta{color:#995a00;background:#fff0d4}.prioridad-normal{color:#245d82;background:#e7f1f8}.prioridad-baja{color:#526273;background:#edf1f4}.indicadores-modulo.seis{grid-template-columns:repeat(5,1fr)}.rejilla-alertas{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.alerta-tarjeta{display:flex;flex-direction:column;align-items:flex-start;min-height:145px;padding:14px;background:#fff;border:1px solid var(--linea);border-left:4px solid #6d91ab;border-radius:9px;color:var(--tinta)}.alerta-tarjeta:hover{text-decoration:none;border-color:#9eb7c9}.alerta-tarjeta strong{margin:10px 0 3px;font-size:.84rem}.alerta-tarjeta p{margin:0 0 auto;color:var(--tinta2);font-size:.74rem}.alerta-tarjeta small{margin-top:10px;color:var(--azul2);font-weight:650}.severidad-vencida{border-left-color:var(--rojo)}.severidad-urgente{border-left-color:#b74a32}.severidad-atencion{border-left-color:var(--ambar)}.severidad-informativa{border-left-color:var(--azul2)}.alertas-modulo{margin:24px 0}
@media(max-width:1100px){.ficha-control{grid-template-columns:1fr}.form-documento{grid-template-columns:1fr 1fr}.rejilla-alertas{grid-template-columns:1fr 1fr}.indicadores-modulo.seis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.panel{padding:16px 14px;margin-inline:-4px}.detalle-grid{grid-template-columns:1fr 1fr}.form-documento{grid-template-columns:1fr}.form-documento .check{padding:0}.documento-item{flex-direction:column}.rejilla-alertas{grid-template-columns:1fr}.indicadores-modulo.seis{grid-template-columns:1fr 1fr}}
.reporte-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.reporte-grid .panel{margin:0}.barras{display:grid;gap:10px}.barra-item{display:grid;grid-template-columns:110px 1fr 45px;gap:8px;align-items:center;color:var(--tinta);font-size:.72rem}.barra-item:hover{text-decoration:none}.barra-item>div{height:8px;border-radius:5px;background:#e9eef2;overflow:hidden}.barra-item i{display:block;height:100%;border-radius:5px;background:var(--verde)}.barra-item strong{text-align:right}.pie-reporte{display:none}
@media(max-width:900px){.reporte-grid{grid-template-columns:1fr}}
@media print{.barra,.lateral,.breadcrumbs,.no-imprimir,.contexto-plataforma{display:none!important}.cuerpo,.principal{display:block;margin:0;padding:0;max-width:none}.reporte-encabezado{margin-top:0}.reporte-grid{grid-template-columns:repeat(3,1fr)}.panel,.dato{box-shadow:none;break-inside:avoid}.pie-reporte{display:block;margin-top:25px;padding-top:10px;border-top:1px solid #bbb;font-size:9pt;color:#555}}
.nav-modos{display:flex;gap:.25rem;margin:.75rem}.nav-modos button{flex:1;border:1px solid var(--linea);background:transparent;border-radius:.45rem;padding:.45rem;color:inherit;font-size:.7rem}.nav-modos button.act{background:#fff;color:var(--azul)}.nav-dependencia summary{display:flex;align-items:center;gap:.5rem;padding:.6rem .9rem;cursor:pointer;font-size:.78rem}.nav-dependencia>div{padding-left:1rem}.nav-sin-funcion{display:block;padding:.4rem 1rem;font-size:.7rem;opacity:.65}.flujo-etapas{display:flex;flex-wrap:wrap;gap:.4rem;margin:1rem 0}.linea-tiempo article{border-left:3px solid var(--linea);padding:0 0 1rem 1rem}.agenda-lista{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.pestanas{display:flex;gap:.5rem;margin:1rem 0}.pestanas a{padding:.55rem 1rem;border:1px solid var(--linea);border-radius:.5rem}.pestanas a.act{background:var(--azul);color:#fff}
/* Capa publica DNCP: se distingue de la gestion interna a simple vista. */
.capa-publica{border-left:4px solid var(--azul2,#2c6e9b);background:linear-gradient(180deg,var(--azul3,#f2f7fb) 0,#fff 90px)}
.capa-publica .eyebrow{color:var(--azul2,#2c6e9b);font-weight:600}
.acciones-encabezado{display:flex;gap:8px;align-items:center;flex-wrap:wrap}

/* ═══════════════════════════════════════════════════════════════════════
   CENTRO DE CONTROL — lectura ejecutiva para quien dirige la institucion.
   Prefijo cc-  : bloques del centro de control y de los mini tableros.
   Prefijo g-   : graficos SVG en linea de core/grafico.js.
   Menos ruido, mas decision: la excepcion manda sobre el numero operativo.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Portada ─────────────────────────────────────────────────────────── */
.cc-portada{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--espacio-6);
  flex-wrap:wrap;margin:0 0 var(--espacio-6)}
.cc-portada h1{font-size:1.9rem;margin:.1em 0 .15em}
.cc-portada p{margin:0;color:var(--tinta2)}
.cc-sello{display:flex;align-items:center;gap:var(--espacio-3);background:var(--papel);
  border:1px solid var(--linea);border-radius:var(--radio);padding:var(--espacio-3) var(--espacio-4)}
.cc-sello small{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:var(--tinta2)}
.cc-sello strong{display:block;font-size:.95rem}
.cc-sello-punto{width:10px;height:10px;border-radius:50%;flex:0 0 auto;background:var(--verde)}
.cc-sello-punto.ambar{background:var(--ambar)} .cc-sello-punto.rojo{background:var(--rojo)}

/* ── Bloques ─────────────────────────────────────────────────────────── */
.cc-bloque{margin:0 0 var(--espacio-8)}
.cc-bloque-cab{display:flex;align-items:baseline;gap:var(--espacio-3);
  border-bottom:1px solid var(--linea);padding-bottom:var(--espacio-2);margin-bottom:var(--espacio-4)}
.cc-bloque-cab h2{margin:0;font-size:1.05rem;letter-spacing:.02em;text-transform:uppercase;color:var(--azul)}
.cc-cuenta{background:var(--azul);color:#fff;border-radius:999px;padding:1px 9px;font-size:.78rem;font-weight:700}
.cc-cab-nota{margin-left:auto;font-size:.78rem;color:var(--tinta2)}

/* ── Necesitan su atencion ───────────────────────────────────────────── */
.cc-situaciones{list-style:none;margin:0;padding:0;display:grid;gap:var(--espacio-2)}
.cc-situacion{display:flex;align-items:center;gap:var(--espacio-3);background:var(--papel);
  border:1px solid var(--linea);border-left-width:4px;border-radius:var(--radio);
  padding:var(--espacio-3) var(--espacio-4);text-decoration:none;color:inherit;transition:.12s}
.cc-situacion:hover{text-decoration:none;border-color:var(--foco);box-shadow:var(--sombra)}
.cc-situacion.n-rojo{border-left-color:var(--rojo);background:var(--peligro-fondo)}
.cc-situacion.n-ambar{border-left-color:var(--ambar);background:var(--atencion-fondo)}
.cc-situacion.n-gris{border-left-color:var(--linea)}
.cc-sit-punto{width:9px;height:9px;border-radius:50%;flex:0 0 auto;background:currentColor;opacity:.5}
.cc-situacion.n-rojo .cc-sit-punto{background:var(--rojo);opacity:1}
.cc-situacion.n-ambar .cc-sit-punto{background:var(--ambar);opacity:1}
.cc-sit-cifra{font-size:1.6rem;font-weight:700;line-height:1;min-width:2.1em;text-align:right;
  font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.cc-situacion.n-rojo .cc-sit-cifra{color:var(--rojo)}
.cc-situacion.n-ambar .cc-sit-cifra{color:var(--ambar)}
.cc-sit-txt{flex:1;min-width:0}
.cc-sit-txt strong{display:block;font-weight:600;font-size:.95rem}
.cc-sit-txt small{display:block;font-size:1.02rem;font-weight:700;margin-top:1px;
  font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.cc-sit-flecha{flex:0 0 auto;opacity:.45}
.cc-limpio{background:var(--exito-fondo);border:1px solid #bfe6d3;border-radius:var(--radio);
  padding:var(--espacio-4);margin:0;color:#0e5d3a}
.cc-mas{margin-top:var(--espacio-3)}
.cc-mas summary{cursor:pointer;font-size:.85rem;color:var(--azul2);padding:var(--espacio-2) 0}
.cc-mas[open] summary{margin-bottom:var(--espacio-2)}

/* ── Tarjetas de recurso ─────────────────────────────────────────────── */
.cc-tarjetas{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:var(--espacio-4);
  align-items:start}
.cc-tarjetas.cc-dos{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}
.cc-tarjeta{background:var(--papel);border:1px solid var(--linea);border-radius:var(--radio);
  padding:var(--espacio-4);display:flex;flex-direction:column;gap:var(--espacio-3)}
.cc-tarjeta.cc-ancha{grid-column:span 2}
.cc-tarjeta.cc-pendiente{background:#fbfcfd}
.cc-tarjeta header{display:flex;align-items:center;justify-content:space-between;gap:var(--espacio-2)}
.cc-tarjeta h3{margin:0;font-size:1rem}
.cc-tarjeta h3 a{color:inherit}
.cc-sub{margin:var(--espacio-2) 0 0;font-size:.82rem;color:var(--tinta2);font-weight:600}
.cc-chip{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;
  padding:2px 8px;border-radius:999px;white-space:nowrap;border:1px solid transparent}
.cc-chip.verde{background:var(--verde2);color:#0e5d3a;border-color:#bfe6d3}
.cc-chip.ambar{background:var(--atencion-fondo);color:var(--ambar);border-color:#f0dcb4}
.cc-chip.rojo{background:var(--peligro-fondo);color:var(--rojo);border-color:#f3cfcc}
.cc-chip.gris{background:var(--fondo);color:var(--tinta2);border-color:var(--linea)}

.cc-cifras{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--espacio-3)}
.cc-cifras > div{display:flex;flex-direction:column;gap:2px}
.cc-cifras span{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--tinta2)}
.cc-cifras b{font-size:1.2rem;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.cc-cifras b.destaca{color:var(--rojo)}

.cc-datos{margin:0;display:grid;gap:var(--espacio-1)}
.cc-datos > div{display:flex;justify-content:space-between;align-items:baseline;gap:var(--espacio-3);
  padding:5px 0;border-bottom:1px solid var(--linea2)}
.cc-datos > div:last-child{border-bottom:0}
.cc-datos dt{font-size:.8rem;color:var(--tinta2)}
.cc-datos dd{margin:0;font-size:.9rem;font-weight:600;text-align:right;font-variant-numeric:tabular-nums}
.cc-datos dd small{font-weight:400;color:var(--tinta2)}
.cc-datos dd.destaca{color:var(--rojo)}
.cc-datos dd.sin-dato{font-weight:400;font-style:italic;color:var(--tinta2);font-size:.8rem}

.cc-sin-dato-bloque{background:var(--fondo);border:1px dashed var(--linea);border-radius:var(--radio);
  padding:var(--espacio-4);text-align:center}
.cc-sin-dato-bloque strong{display:block;color:var(--tinta2);font-size:.9rem;margin-bottom:4px}
.cc-sin-dato-bloque p{margin:0;font-size:.8rem;color:var(--tinta2);line-height:1.45}
.cc-pie-nota{margin:0;font-size:.78rem;color:var(--tinta2);line-height:1.5}
.cc-nota-fuente{margin:var(--espacio-4) 0 0;font-size:.78rem;color:var(--tinta2);line-height:1.5;
  border-left:2px solid var(--linea);padding-left:var(--espacio-3)}

/* ── Estado por area ─────────────────────────────────────────────────── */
.cc-areas{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--espacio-3)}
.cc-area{display:flex;gap:var(--espacio-3);align-items:flex-start;background:var(--papel);
  border:1px solid var(--linea);border-radius:var(--radio);padding:var(--espacio-3) var(--espacio-4);
  text-decoration:none;color:inherit;transition:.12s}
a.cc-area:hover{text-decoration:none;border-color:var(--foco);box-shadow:var(--sombra)}
.cc-area-punto{width:9px;height:9px;border-radius:50%;flex:0 0 auto;margin-top:6px;background:var(--linea)}
.cc-area-punto.verde{background:var(--verde)} .cc-area-punto.ambar{background:var(--ambar)}
.cc-area-punto.rojo{background:var(--rojo)}   .cc-area-punto.gris{background:var(--tinta3,#9aa7b4)}
.cc-area-txt{min-width:0}
.cc-area-txt strong{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--tinta2)}
.cc-area-txt b{display:block;font-size:.98rem;margin:2px 0 1px;letter-spacing:-.01em}
.cc-area-txt small{display:block;font-size:.75rem;color:var(--tinta2);line-height:1.35}

/* ── Graficos ────────────────────────────────────────────────────────── */
.g-dona-bloque{display:flex;align-items:center;gap:var(--espacio-4);flex-wrap:wrap}
.g-dona{position:relative;width:132px;height:132px;flex:0 0 auto}
.g-dona svg{width:100%;height:100%;display:block}
.g-dona-centro{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;
  justify-content:center;text-align:center;pointer-events:none;padding:0 14px}
.g-dona-centro b{font-size:.82rem;font-weight:700;line-height:1.15;letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;word-break:break-word}
.g-dona-centro small{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--tinta2);margin-top:2px}
.g-leyenda{list-style:none;margin:0;padding:0;flex:1;min-width:150px;display:grid;gap:5px}
.g-leyenda li{display:flex;align-items:center;gap:7px;font-size:.8rem}
.g-leyenda i{width:9px;height:9px;border-radius:2px;flex:0 0 auto}
.g-leyenda span{color:var(--tinta2);flex:1}
.g-leyenda b{font-variant-numeric:tabular-nums;font-size:.82rem}

.g-barras{display:grid;gap:6px}
.g-barra{display:grid;grid-template-columns:minmax(84px,1.1fr) 2fr minmax(96px,auto);
  align-items:center;gap:var(--espacio-3);text-decoration:none;color:inherit;
  padding:3px 0;font-size:.8rem}
a.g-barra:hover{text-decoration:none}
a.g-barra:hover .g-barra-etq{color:var(--azul2)}
.g-barra-etq{color:var(--tinta);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.g-barra-pista{background:var(--linea2);border-radius:999px;height:11px;overflow:hidden;display:block}
.g-barra-pista i{display:block;height:100%;border-radius:999px;min-width:3px}
.g-barra-val{text-align:right;color:var(--tinta2);font-variant-numeric:tabular-nums;font-size:.76rem;white-space:nowrap}
.g-vacio{margin:0;font-size:.8rem;color:var(--tinta2);font-style:italic}

.g-progreso{display:flex;align-items:center;gap:var(--espacio-3)}
.g-progreso-pista{flex:1;background:var(--linea2);border-radius:999px;height:12px;overflow:hidden}
.g-progreso-pista i{display:block;height:100%;border-radius:999px}
.g-progreso-txt{font-size:.8rem;color:var(--tinta2);white-space:nowrap}
.g-progreso-txt b{font-size:.95rem;color:var(--tinta);font-variant-numeric:tabular-nums}
.g-progreso.g-sin-dato .g-progreso-txt{font-style:italic}

.g-embudo{list-style:none;margin:0;padding:0;display:grid;gap:5px;counter-reset:none}
.g-embudo-paso{position:relative;display:block;padding:var(--espacio-3) var(--espacio-4);
  border-radius:var(--radio);background:var(--fondo);text-decoration:none;color:inherit;
  overflow:hidden;transition:.12s}
a.g-embudo-paso:hover{text-decoration:none;box-shadow:var(--sombra)}
.g-embudo-barra{position:absolute;left:0;top:0;bottom:0;background:var(--azul3);border-radius:var(--radio)}
.g-embudo-paso.destacado .g-embudo-barra{background:var(--atencion-fondo)}
.g-embudo-txt{position:relative;display:flex;align-items:baseline;gap:var(--espacio-3)}
.g-embudo-txt b{font-size:1.35rem;font-weight:700;min-width:1.8em;font-variant-numeric:tabular-nums;
  letter-spacing:-.02em;color:var(--azul)}
.g-embudo-paso.destacado .g-embudo-txt b{color:var(--ambar)}
.g-embudo-txt span{font-size:.9rem;font-weight:600}
.g-embudo-paso small{position:relative;display:block;font-size:.74rem;color:var(--tinta2);
  margin-top:1px;padding-left:calc(1.8em + var(--espacio-3))}

/* ── Mini tablero dentro de cada modulo ──────────────────────────────── */
.cc-mini{background:var(--papel);border:1px solid var(--linea);border-radius:var(--radio);
  padding:var(--espacio-4);margin:0 0 var(--espacio-6)}
.cc-mini-cab{display:flex;align-items:baseline;gap:var(--espacio-3);margin-bottom:var(--espacio-3)}
.cc-mini-cab h2{margin:0;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:var(--azul2)}
.cc-mini-cab .cc-cab-nota{margin-left:auto}
.cc-mini-cuerpo{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:var(--espacio-5);align-items:start}

/* ── Notebook y celular ──────────────────────────────────────────────── */
@media (max-width:1100px){
  .cc-tarjeta.cc-ancha{grid-column:span 1}
}
@media (max-width:720px){
  /* El chip de frescura de la copia DNCP es largo: en pantalla angosta se
     acomoda en varias lineas en vez de empujar el ancho de la pagina. */
  .cc-tarjeta header{flex-wrap:wrap}
  .cc-chip{white-space:normal;text-align:left;line-height:1.35}
  .cc-portada{align-items:flex-start}
  .cc-portada h1{font-size:1.5rem}
  .cc-sello{width:100%}
  .cc-situacion{flex-wrap:wrap;gap:var(--espacio-2)}
  .cc-sit-cifra{font-size:1.4rem;min-width:auto}
  .cc-sit-flecha{display:none}
  .cc-cifras{grid-template-columns:1fr 1fr}
  .g-dona-bloque{justify-content:center}
  .g-barra{grid-template-columns:1fr;gap:2px;padding:6px 0;border-bottom:1px solid var(--linea2)}
  .g-barra-val{text-align:left}
  .cc-areas{grid-template-columns:1fr}
}

/* ═══════════════════════════════════════════════════════════════════════
   FASE 2 — «EL VISTAZO». Piezas nuevas del Centro de Control y ajuste
   fino para el telefono, que es donde la autoridad va a mirar esto.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Excepciones: la cifra manda, el texto acompaña ──────────────────── */
.cc-cab-accion{margin-left:auto;font-size:.8rem;font-weight:600;color:var(--azul2);
  background:var(--azul3);border-radius:999px;padding:3px 11px;white-space:nowrap}
a.cc-cab-accion:hover{text-decoration:none;background:#dbeaf4}
.cc-situacion{align-items:center;gap:var(--espacio-4);padding:var(--espacio-4)}
.cc-sit-cifra{font-size:1.45rem;font-weight:700;line-height:1.05;letter-spacing:-.03em;
  font-variant-numeric:tabular-nums;white-space:nowrap;flex:0 0 auto;min-width:0}
.cc-situacion.n-rojo .cc-sit-cifra{color:var(--rojo)}
.cc-situacion.n-ambar .cc-sit-cifra{color:var(--ambar)}
.cc-sit-txt strong{font-size:.94rem;font-weight:600;display:block;line-height:1.3}
.cc-sit-txt small{display:block;font-size:.76rem;color:var(--tinta2);margin-top:2px;font-weight:400}
.cc-sit-ir{display:flex;align-items:center;gap:4px;flex:0 0 auto;font-size:.76rem;
  font-weight:600;color:var(--azul2);white-space:nowrap}
.cc-sit-ir .ico{width:13px;height:13px}
.cc-chicas .cc-situacion{padding:var(--espacio-3) var(--espacio-4)}
.cc-chicas .cc-sit-cifra{font-size:1.15rem}
.cc-faltantes{margin:var(--espacio-4) 0 0;font-size:.79rem;color:var(--tinta2);line-height:1.5;
  background:var(--fondo);border-radius:var(--radio);padding:var(--espacio-3) var(--espacio-4)}
.cc-faltantes a{color:var(--azul2)}

/* ── Ritmo del mes ───────────────────────────────────────────────────── */
.cc-ritmo{margin:0;font-size:.79rem;color:var(--tinta2);line-height:1.45;
  border-left:2px solid var(--linea);padding-left:var(--espacio-3)}
.cc-ritmo.r-adelantado{border-left-color:var(--ambar)}
.cc-ritmo.r-holgado{border-left-color:var(--verde)}

/* ── Número grande suelto (abiertos sin adjudicación) ────────────────── */
.cc-numeron{display:flex;align-items:baseline;gap:var(--espacio-3);padding:var(--espacio-2) 0}
.cc-numeron b{font-size:2.4rem;line-height:1;font-weight:700;letter-spacing:-.04em;
  font-variant-numeric:tabular-nums;color:var(--azul)}
.cc-numeron.ambar b{color:var(--ambar)}
.cc-numeron.verde b{color:var(--verde)}
.cc-numeron span{font-size:.8rem;color:var(--tinta2);line-height:1.35}
.cc-ver{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;font-weight:600;
  color:var(--azul2)}
.cc-ver .ico{width:13px;height:13px}

/* ── Tabla mínima dentro de una tarjeta ──────────────────────────────── */
.cc-tabla-min{width:100%;border-collapse:collapse;font-size:.8rem;
  min-width:0}   /* la regla global table{min-width:520px} desbordaba el telefono */
.cc-tabla-min th{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;
  color:var(--tinta2);font-weight:700;text-align:left;padding:4px 0;border-bottom:1px solid var(--linea)}
.cc-tabla-min td{padding:5px 0;border-bottom:1px solid var(--linea2);font-variant-numeric:tabular-nums}
.cc-tabla-min tr:last-child td{border-bottom:0}
.cc-tabla-min .n{text-align:right}
.cc-cifras.cc-dos-col{grid-template-columns:1fr 1fr}
.cc-cifras b.ambar{color:var(--ambar)}
.cc-tarjetas.cc-tres{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}

/* ── Estado de la institución: más visual, menos texto ───────────────── */
.cc-area{flex-direction:column;gap:5px;padding:var(--espacio-4)}
.cc-area-cab{display:flex;align-items:center;gap:7px;font-size:.72rem;text-transform:uppercase;
  letter-spacing:.06em;color:var(--tinta2);font-weight:700}
.cc-area-valor{font-size:1.35rem;line-height:1.1;letter-spacing:-.025em;
  font-variant-numeric:tabular-nums;display:block}
.cc-area small{font-size:.75rem;color:var(--tinta2);line-height:1.3;display:block}
.cc-area-barra{display:block;height:5px;border-radius:999px;background:var(--linea2);
  overflow:hidden;margin-top:3px}
.cc-area-barra i{display:block;height:100%;border-radius:999px;background:var(--azul2)}
.cc-area-barra i.verde{background:var(--verde)} .cc-area-barra i.ambar{background:var(--ambar)}
.cc-area-barra i.rojo{background:var(--rojo)}   .cc-area-barra i.gris{background:var(--linea)}

/* ── TELÉFONO. La autoridad va a mirar esto desde el celular. ────────── */
@media (max-width:560px){
  .cc-portada h1{font-size:1.35rem}
  .cc-portada p{font-size:.88rem}
  .cc-sello{width:100%;padding:var(--espacio-2) var(--espacio-3)}
  .cc-bloque{margin-bottom:var(--espacio-6)}
  .cc-bloque-cab{flex-wrap:wrap;gap:var(--espacio-2)}
  .cc-cab-nota,.cc-cab-accion{margin-left:0}

  /* La excepción se lee en dos renglones, con la cifra arriba y bien grande. */
  .cc-situacion{flex-wrap:wrap;gap:2px var(--espacio-3);padding:var(--espacio-3)}
  /* La cifra va pegada a su texto, no colgada a la derecha: en dos renglones
     el número y su etiqueta tienen que leerse como una sola cosa. */
  .cc-sit-cifra{font-size:1.5rem;width:100%;text-align:left;min-width:0}
  .cc-sit-txt{flex:1 1 100%}
  .cc-sit-txt strong{font-size:.92rem}
  .cc-sit-ir{width:100%;justify-content:flex-end;margin-top:2px;
    min-height:34px;align-items:center}   /* objetivo táctil cómodo */

  .cc-tarjeta{padding:var(--espacio-3)}
  .cc-tarjeta.cc-ancha{grid-column:span 1}
  .cc-cifras{grid-template-columns:1fr 1fr;gap:var(--espacio-2)}
  .cc-cifras b{font-size:1.05rem}
  .cc-datos > div{flex-wrap:wrap;gap:0}
  .cc-datos dt{flex:1 1 100%}
  .cc-datos dd{text-align:left;flex:1 1 100%;margin-top:1px}

  /* Dona: centrada y con la leyenda debajo, nunca apretada al costado. */
  .g-dona-bloque{flex-direction:column;align-items:center;gap:var(--espacio-3)}
  .g-leyenda{width:100%;min-width:0}
  .g-dona{width:118px;height:118px}
  .g-dona-centro b{font-size:.78rem}

  /* Barras: etiqueta arriba, barra completa, valor abajo. Todo legible. */
  .g-barra{grid-template-columns:1fr;gap:3px;padding:7px 0;border-bottom:1px solid var(--linea2)}
  .g-barra:last-child{border-bottom:0}
  .g-barra-etq{font-weight:600;font-size:.82rem;white-space:normal}
  .g-barra-val{text-align:left;font-size:.75rem}
  .g-barra-pista{height:9px}

  .g-embudo-txt b{font-size:1.15rem}
  .g-embudo-paso small{padding-left:0;margin-top:3px}
  .g-progreso{flex-wrap:wrap;gap:var(--espacio-2)}
  .g-progreso-pista{flex:1 1 100%}
  .g-progreso-txt{white-space:normal}

  .cc-numeron b{font-size:2rem}
  .cc-areas{grid-template-columns:1fr 1fr;gap:var(--espacio-2)}
  .cc-area{padding:var(--espacio-3)}
  .cc-area-valor{font-size:1.1rem}
  .cc-mini{padding:var(--espacio-3)}
  .cc-mini-cuerpo{gap:var(--espacio-4)}
  .cc-tabla-min{font-size:.76rem}
}
@media (max-width:380px){
  .cc-areas{grid-template-columns:1fr}
}

/* ── Fase 3 · convertir una excepción en instrucción ─────────────────── */
.cc-situaciones li{position:relative}
.cc-dar-orden{position:absolute;right:var(--espacio-4);bottom:var(--espacio-2);
  font-size:.72rem;font-weight:700;color:var(--azul2);background:var(--papel);
  border:1px solid var(--linea);border-radius:999px;padding:2px 10px;line-height:1.6}
.cc-dar-orden:hover{text-decoration:none;border-color:var(--foco);background:var(--azul3)}
.pin-respondida{background:var(--atencion-fondo);color:var(--ambar)}
.pin-cumplida{background:var(--verde2);color:#0e5d3a}
.pin-vencida{background:var(--peligro-fondo);color:var(--rojo)}
.pin-en_proceso{background:var(--azul3);color:var(--azul)}
.pin-cancelada{background:var(--fondo);color:var(--tinta2)}
.texto-rojo{color:var(--rojo)} .texto-ambar{color:var(--ambar)}
.cc-cifras b.ambar{color:var(--ambar)}
@media (max-width:560px){
  .cc-dar-orden{position:static;display:inline-block;margin-top:6px;
    padding:6px 14px;font-size:.78rem}   /* objetivo táctil en el teléfono */
}

/* ── Fase 3B · subtarjeta de tipo (corriente / capital) ──────────────── */
.cc-subtarjeta{border:1px solid var(--linea);border-radius:var(--radio);
  padding:var(--espacio-3);background:#fbfcfd}
.cc-subtarjeta h4{margin:0 0 var(--espacio-2);font-size:.78rem;text-transform:uppercase;
  letter-spacing:.07em;color:var(--azul2)}
.cc-cifras b.sin-dato{color:var(--tinta2);font-style:italic;font-size:.95rem}

/* ── Fase 3B/4 · teléfono ────────────────────────────────────────────── */
@media (max-width:560px){
  /* Las subtarjetas de corriente/capital y los pares dentro de una tarjeta
     heredaban un minmax de 340px que era mas ancho que el telefono. */
  .cc-tarjeta .cc-tarjetas,
  .cc-tarjeta .cc-tarjetas.cc-dos,
  .cc-mini-cuerpo .cc-tarjetas,
  .cc-mini-cuerpo .cc-tarjetas.cc-dos,
  .cc-tarjetas.cc-tres{grid-template-columns:1fr}
  .cc-subtarjeta{padding:var(--espacio-2) var(--espacio-3)}
  /* El bloque de indicadores por estado tampoco entra en dos columnas. */
  .indicadores-modulo,
  .indicadores-modulo.tres,
  .indicadores-modulo.cuatro{grid-template-columns:1fr}
  .kpi-modulo .pin{white-space:normal}
  .cc-mini-cuerpo{grid-template-columns:1fr}
}

/* ── Fase 5 · estados de beca ────────────────────────────────────────── */
.pin-pendiente{background:var(--fondo);color:var(--tinta2)}
.pin-en_revision{background:var(--azul3);color:var(--azul)}
.pin-elegible{background:var(--verde2);color:#0e5d3a}
.pin-incompatible{background:var(--peligro-fondo);color:var(--rojo)}
.pin-aprobada{background:var(--azul3);color:var(--azul)}
.pin-rechazada{background:var(--fondo);color:var(--tinta2)}
.pin-otorgada{background:var(--verde2);color:#0e5d3a}

/* ═══════════════════════════════════════════════════════════════════════
   AGENTES DE GESTIA Y DEMO AYOLAS
   Personas y agentes en el mismo proceso: el agente se distingue con un
   avatar propio y una etiqueta «IA», nunca con una pantalla aparte.
   Todo ítem flexible lleva min-width:0 para no empujar la página en celular.
   ═══════════════════════════════════════════════════════════════════════ */
:root{--ia:#5b4bb7;--ia-fondo:#f1effb;--ia-borde:#d9d3f3}

/* ── Barra de demo ── */
.demo-barra{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:7px 22px;background:#1d2b3a;color:#dce6ef;font-size:.76rem;position:sticky;top:68px;z-index:19}
.demo-sello{background:#f3b53f;color:#2b1d00;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border-radius:5px;font-size:.66rem}
.demo-aviso{min-width:0;color:#aebfcd}
.demo-persona{position:relative;margin-left:auto}
.demo-persona summary{cursor:pointer;list-style:none;padding:4px 10px;border:1px solid #ffffff33;border-radius:7px}
.demo-persona summary::-webkit-details-marker{display:none}
.demo-persona summary strong{color:#fff}
.demo-persona-panel{position:absolute;right:0;top:calc(100% + 6px);width:260px;background:#fff;border:1px solid var(--linea);border-radius:10px;box-shadow:0 16px 45px rgba(8,43,76,.22);padding:6px;z-index:40}
.demo-persona-panel form{margin:0}
.demo-persona-panel button{display:flex;flex-direction:column;align-items:flex-start;width:100%;border:0;background:transparent;padding:8px 10px;border-radius:7px;cursor:pointer;color:var(--tinta);font:inherit;text-align:left}
.demo-persona-panel button:hover{background:#f2f6f9}
.demo-persona-panel button.act{background:var(--azul3)}
.demo-persona-panel strong{font-size:.8rem}.demo-persona-panel small{font-size:.7rem;color:var(--tinta2)}
.demo-recorrido{color:#fff;font-weight:700;border-bottom:1px solid #ffffff66}
.demo-recorrido:hover{text-decoration:none;border-color:#fff}
.demo-barra ~ .cuerpo .lateral{top:104px;height:calc(100vh - 104px)}

/* ── Identidad del agente ── */
.ia-avatar{display:inline-grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:var(--ia-fondo);color:var(--ia);border:1px solid var(--ia-borde)}
.ia-avatar .ico{width:17px;height:17px}
.ia-avatar.grande{width:42px;height:42px}.ia-avatar.grande .ico{width:23px;height:23px}
.ia-etiqueta{align-self:flex-start;display:inline-block;font-style:normal;font-size:.6rem;font-weight:800;letter-spacing:.06em;color:var(--ia);background:var(--ia-fondo);border:1px solid var(--ia-borde);border-radius:4px;padding:0 4px;vertical-align:1px}

/* ── Hoy ── */
.hoy-portada{align-items:center}
.hoy-cifras{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 26px}
.hoy-cifra{display:flex;flex-direction:column;gap:2px;background:var(--papel);border:1px solid var(--linea);border-top:3px solid var(--azul2);border-radius:var(--radio);padding:14px 16px;color:var(--tinta);min-width:0}
a.hoy-cifra:hover{text-decoration:none;border-color:#b9cbd9}
.hoy-cifra b{font-size:2rem;line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.hoy-cifra span{font-size:.76rem;color:var(--tinta2)}
.hoy-cifra.ambar{border-top-color:var(--ambar)}.hoy-cifra.ambar b{color:var(--ambar)}
.hoy-cifra.rojo{border-top-color:var(--rojo)}.hoy-cifra.rojo b{color:var(--rojo)}
.hoy-cifra.verde{border-top-color:var(--verde)}.hoy-cifra.verde b{color:var(--verde)}
.hoy-columnas{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:24px;align-items:start}
.hoy-principal,.hoy-lateral{min-width:0}
.hoy-lateral .panel{margin-top:0}
.hoy-atencion-item{display:flex;flex-direction:column;gap:6px}
.hoy-atencion-item .cc-situacion{min-width:0}
.hoy-visto{align-self:flex-end;margin:0}
.hoy-areas{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.hoy-area{display:flex;gap:10px;background:var(--papel);border:1px solid var(--linea);border-radius:var(--radio);padding:12px 14px;min-width:0}
.hoy-area-txt{display:flex;flex-direction:column;min-width:0}
.hoy-area-txt strong{font-size:.86rem}.hoy-area-txt span{font-size:.8rem}.hoy-area-txt small{font-size:.72rem;color:var(--tinta2)}
.actividad{list-style:none;margin:0;padding:0;background:var(--papel);border:1px solid var(--linea);border-radius:var(--radio)}
.actividad li{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px 14px;border-bottom:1px solid #edf1f4}
.actividad li:last-child{border-bottom:0}
.actividad li.es-agente{background:#fbfaff}
.actividad-avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--azul3);color:var(--azul);font-weight:700;font-size:.8rem}
.actividad li.es-agente .actividad-avatar{background:var(--ia-fondo);color:var(--ia);border:1px solid var(--ia-borde)}
.actividad-avatar .ico{width:16px;height:16px}
.actividad-txt{display:flex;flex-direction:column;font-size:.84rem;min-width:0}
.actividad-txt>span{overflow-wrap:anywhere}
.actividad-txt a{font-size:.74rem;color:var(--tinta2);overflow-wrap:anywhere}
.actividad time{font-size:.72rem;color:var(--tinta2);white-space:nowrap}
.consulta-rapida h2{display:flex;align-items:center;gap:8px}
.consulta-form{display:flex;gap:8px}
.consulta-form input{min-width:0}
.consulta-form.grande{flex-direction:column}
.responder-fila{display:flex;gap:8px}
.responder-fila input{flex:1;min-width:0}
.sugerencias{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.sugerencias form,.en-linea{margin:0;display:inline}
.chip-sugerencia{border:1px solid var(--linea);background:#f7f9fb;color:var(--azul2);border-radius:999px;padding:5px 11px;font:inherit;font-size:.76rem;cursor:pointer;text-align:left}
.chip-sugerencia:hover{background:var(--azul3);border-color:#cddce8}
.agentes-hoy{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.agentes-hoy li{border-bottom:1px solid #edf1f4;padding-bottom:10px}
.agentes-hoy li:last-child{border-bottom:0;padding-bottom:0}
.agentes-hoy li>a{display:flex;gap:9px;align-items:center;color:var(--tinta)}
.agentes-hoy li>a span:last-child{display:flex;flex-direction:column;min-width:0}
.agentes-hoy strong{font-size:.84rem}.agentes-hoy small{font-size:.7rem;color:var(--tinta2)}
.agentes-hoy-cifras{display:flex;gap:10px;flex-wrap:wrap;margin:6px 0 0 39px;font-size:.72rem;color:var(--tinta2)}
.agentes-hoy-cifras b{color:var(--tinta);font-size:.86rem}
.agentes-hoy-cifras .rojo b{color:var(--rojo)}
.agentes-hoy p{margin:4px 0 0 39px;font-size:.74rem;overflow-wrap:anywhere}

/* ── Mis tareas ── */
.tareas-cabecera{align-items:flex-end}
.tareas-cifras{display:flex;gap:8px;flex-wrap:wrap}
.tareas-cifras span{display:flex;flex-direction:column;align-items:center;min-width:78px;background:#fff;border:1px solid var(--linea);border-radius:9px;padding:7px 10px;font-size:.66rem;color:var(--tinta2);text-transform:uppercase;letter-spacing:.04em}
.tareas-cifras b{font-size:1.3rem;color:var(--tinta);letter-spacing:-.03em}
.tareas-cifras .ambar b{color:var(--ambar)}.tareas-cifras .rojo b{color:var(--rojo)}.tareas-cifras .verde b{color:var(--verde)}
.tareas-seccion{margin:26px 0}
.tareas-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:12px}
.tarea{display:flex;flex-direction:column;gap:6px;background:var(--papel);border:1px solid var(--linea);border-left:4px solid var(--azul2);border-radius:var(--radio);padding:14px 16px;min-width:0;box-shadow:0 1px 2px rgba(13,39,66,.03)}
.tarea.atrasada{border-left-color:var(--rojo)}
.tarea.de-agente{border-left-color:var(--ia);background:#fdfcff}
.tarea.tipo-aprobacion,.tarea.tipo-borrador,.tarea.tipo-propuesta{border-left-color:var(--ambar)}
.tarea-cab{display:flex;justify-content:space-between;align-items:center;gap:8px}
.tarea-tipo{display:flex;align-items:center;gap:5px;font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--tinta2);min-width:0;overflow-wrap:anywhere}
.tarea-tipo .ico{width:15px;height:15px;color:var(--ia)}
.tarea h3{margin:0;font-size:.98rem;line-height:1.3}
.tarea h3 a{color:var(--tinta);overflow-wrap:anywhere}
.tarea-que{margin:0;font-size:.84rem;color:#36475a;overflow-wrap:anywhere}
.tarea-meta{display:flex;flex-wrap:wrap;gap:4px 16px;margin:2px 0 0}
.tarea-meta>div{display:flex;gap:5px;font-size:.76rem;min-width:0}
.tarea-meta>div.ancho{flex-basis:100%}
.tarea-meta dt{color:var(--tinta2)}.tarea-meta dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.tarea-acciones{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start;margin-top:6px;padding-top:10px;border-top:1px solid #edf1f4}
.tarea-acciones form{margin:0}
.accion-tarea{position:relative}
.accion-tarea summary{list-style:none}
.accion-tarea summary::-webkit-details-marker{display:none}
.accion-tarea[open]{flex-basis:100%}
.accion-tarea[open] summary{margin-bottom:8px}
.accion-tarea form{display:grid;gap:8px;background:#f7f9fb;border:1px solid var(--linea);border-radius:8px;padding:12px}
.accion-tarea label{margin:0;font-size:.74rem}
.accion-tarea .check{display:flex;gap:6px;align-items:center;font-weight:500}.accion-tarea .check input{width:auto}
.responder-ia{flex-basis:100%;display:grid;gap:5px;background:var(--ia-fondo);border:1px solid var(--ia-borde);border-radius:8px;padding:10px}
.responder-ia label{margin:0;font-size:.74rem;color:var(--ia)}
.responder-ia small{font-size:.7rem;color:var(--tinta2)}
.mesa-entrada summary{cursor:pointer;font-weight:650;color:var(--azul);display:flex;align-items:center;gap:8px;flex-wrap:wrap;list-style:none}
.mesa-entrada summary::-webkit-details-marker{display:none}
.mesa-entrada summary small{font-weight:400;color:var(--tinta2);font-size:.76rem}
.mesa-entrada[open] summary{margin-bottom:14px}

/* ── Evidencia necesaria ── */
.evidencia{list-style:none;margin:0;padding:0;display:grid;gap:5px}
.evidencia li{display:flex;gap:8px;align-items:flex-start;font-size:.82rem;min-width:0}
.evidencia li>span:last-child{display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}
.evidencia small{font-size:.7rem;color:var(--tinta2)}
.evidencia-marca{display:grid;place-items:center;flex:none;width:18px;height:18px;border-radius:50%;font-size:.66rem;font-weight:800;margin-top:1px}
.evidencia li.ok .evidencia-marca{background:var(--verde2);color:var(--verde)}
.evidencia li.falta .evidencia-marca{background:#fff0d4;color:#995a00}
.evidencia li.falta{color:#6b4a0c}
.evidencia.compacta li{font-size:.76rem}

/* ── Recorrido del asunto (ficha) ── */
.gestia-asunto{border-top:3px solid var(--ia)}
.gestia-asunto-cuerpo{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(0,2fr);gap:22px;align-items:start}
.gestia-asunto-cuerpo>*{min-width:0}
.gestia-asunto-cuerpo>.linea-ia:only-child{grid-column:1/-1}
.gestia-lado h3{margin:0 0 8px;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--tinta2)}
.gestia-lado h3:not(:first-child){margin-top:18px}
.ia-propuesta{background:#fff8e8;border:1px solid #f0dcb4;border-radius:8px;padding:10px;font-size:.8rem}
.ia-propuesta p{margin:4px 0}
.gestia-borradores{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:.82rem}
.gestia-borradores small{display:block;color:var(--tinta2);font-size:.7rem}
.gestia-seguimiento{display:flex;gap:8px;margin:0;font-size:.8rem}
.gestia-seguimiento .ico{flex:none;width:17px;color:var(--ia)}
.gestia-seguimiento small{display:block;color:var(--tinta2)}
.linea-ia{list-style:none;margin:0;padding:0;position:relative}
.linea-ia li{display:grid;grid-template-columns:118px minmax(0,1fr);column-gap:14px;padding:0 0 12px 18px;position:relative}
.linea-ia li::before{content:"";position:absolute;left:4px;top:5px;width:9px;height:9px;border-radius:50%;background:var(--azul2)}
.linea-ia li::after{content:"";position:absolute;left:8px;top:16px;bottom:-2px;border-left:1px solid var(--linea)}
.linea-ia li:last-child::after{display:none}
.linea-ia li.es-agente::before{background:var(--ia)}
.linea-ia li.escalada::before,.linea-ia li.alerta-ia::before{background:var(--rojo)}
.linea-ia-hora{grid-row:1/3;font-size:.72rem;color:var(--tinta2);padding-top:1px}
.linea-ia-actor{display:flex;align-items:center;gap:5px;font-size:.78rem;font-weight:700}
.linea-ia li.es-agente .linea-ia-actor{color:var(--ia)}
.linea-ia-actor .ico{width:14px;height:14px}
.linea-ia-texto{font-size:.84rem;overflow-wrap:anywhere}
.linea-ia-texto small{display:block;color:var(--tinta2);font-size:.74rem;margin-top:1px}

/* ── Centro de agentes ── */
.agentes-rejilla{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:14px;margin-top:18px}
.agente-tarjeta{display:flex;flex-direction:column;gap:10px;background:var(--papel);border:1px solid var(--linea);border-top:3px solid var(--ia);border-radius:var(--radio);padding:16px 18px;min-width:0}
.agente-tarjeta header{display:flex;gap:10px;align-items:center}
.agente-tarjeta header>div{flex:1;min-width:0}
.agente-tarjeta h2{margin:0;font-size:1.02rem}.agente-tarjeta h2 a{color:var(--tinta)}
.agente-tarjeta header small{color:var(--tinta2);font-size:.74rem}
.agente-funcion{margin:0;font-size:.82rem;color:#3d4d5f}
.agente-haciendo{background:var(--ia-fondo);border:1px solid var(--ia-borde);border-radius:8px;padding:9px 11px}
.agente-haciendo span{font-size:.62rem;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:var(--ia)}
.agente-haciendo p{margin:3px 0;font-size:.82rem;overflow-wrap:anywhere}
.agente-haciendo small{font-size:.7rem;color:var(--tinta2)}
.agente-pendientes{margin:0;padding-left:18px;font-size:.78rem;color:var(--tinta2)}
.agente-tarjeta h3{margin:4px 0 0;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--tinta2)}
.agente-ultimas{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.agente-ultimas li{font-size:.8rem;overflow-wrap:anywhere}
.agente-ultimas li.escalada a{color:var(--rojo)}
.agente-ultimas small{display:block;font-size:.7rem;color:var(--tinta2)}
.agente-doctrina{display:flex;align-items:center;gap:4px;margin-top:auto;font-size:.78rem;font-weight:650}
.agente-doctrina .ico{width:14px}
.doctrina{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.doctrina .panel{margin:12px 0 0}
.doctrina ul{margin:0;padding-left:18px;font-size:.84rem;display:grid;gap:4px}
.doctrina-puede{border-top:3px solid var(--verde)}.doctrina-no{border-top:3px solid var(--rojo)}

/* ── Consulta ── */
.consulta-historial{display:grid;gap:12px}
.consulta-item{background:var(--papel);border:1px solid var(--linea);border-radius:var(--radio);padding:14px 16px;scroll-margin-top:120px}
.consulta-pregunta{display:flex;gap:10px;align-items:center;margin:0 0 10px;font-weight:650}
.consulta-pregunta>span:last-child{display:flex;flex-direction:column;min-width:0}
.consulta-pregunta small{font-weight:400;font-size:.7rem;color:var(--tinta2)}
.consulta-respuesta{display:flex;gap:10px;background:#fbfaff;border:1px solid var(--ia-borde);border-radius:9px;padding:12px}
.consulta-respuesta>div{min-width:0;flex:1}
.consulta-respuesta p{margin:0 0 6px}
.consulta-respuesta ul{margin:0 0 8px;padding-left:18px;display:grid;gap:5px;font-size:.84rem}
.consulta-respuesta li small{display:block;color:var(--tinta2);font-size:.72rem}

/* ── Borrador ── */
.borrador-texto{width:100%;font-family:ui-serif,Georgia,"Times New Roman",serif;font-size:.92rem;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}
pre.borrador-texto{margin:0;background:#fffdf8;border:1px solid #efe6cf;border-radius:8px;padding:16px}
.borrador-form{display:grid;gap:10px}
.borrador-form .check{display:flex;gap:8px;align-items:center;font-weight:500}.borrador-form .check input{width:auto}

/* ── Portada y entrada de la demo ── */
.ayolas-portada{min-height:calc(100vh - 110px);display:grid;place-items:center;padding:40px 22px;background:linear-gradient(125deg,#062846 0%,#0b3d66 55%,#12634f 125%);color:#fff}
.ayolas-hero{max-width:720px;text-align:center}
.ayolas-marca{width:78px;height:78px;object-fit:contain}
.ayolas-producto{display:block;letter-spacing:.3em;font-weight:800;font-size:1rem;margin:6px 0 20px;color:#bfe9d1}
.ayolas-hero h1{font-size:clamp(1.8rem,4.2vw,2.8rem);line-height:1.15;margin:0 0 14px}
.ayolas-lugar{font-size:1.1rem;color:#d5e3ee;margin:0 0 22px}
.ayolas-puntos{list-style:none;padding:0;margin:0 auto 28px;display:grid;gap:6px;max-width:460px;text-align:left;color:#dbe7ef;font-size:.92rem}
.ayolas-puntos li::before{content:"✓";color:#6dd79c;font-weight:800;margin-right:8px}
.ayolas-puntos.oscuro{color:var(--tinta);max-width:none}
.ayolas-entrar{background:#fff;color:var(--azul);padding:13px 30px;font-size:1rem;border-radius:9px}
.ayolas-entrar:hover{background:#e7f2f9;color:var(--azul)}
.ayolas-secundario{display:block;margin-top:12px;color:#d5e3ee}
.ayolas-legal{margin:26px 0 0;font-size:.78rem;color:#aac0d0}
.ayolas-legal.oscuro{color:var(--tinta2);text-align:center}
.ayolas-no-disponible{background:#ffffff1a;border-radius:8px;padding:12px}
.ayolas-entrada{min-height:calc(100vh - 110px);display:grid;place-items:center;padding:30px 16px;background:linear-gradient(135deg,#edf3f7,#f8fafb)}
.ayolas-entrada-caja{width:min(720px,100%);background:#fff;border:1px solid var(--linea);border-radius:15px;padding:30px;box-shadow:0 24px 60px rgba(8,43,76,.12)}
.ayolas-entrada-caja h1{font-size:1.5rem}
.personas-demo{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-top:8px}
.persona-demo{display:flex;gap:10px;align-items:flex-start;text-align:left;border:1px solid var(--linea);background:#fbfcfd;border-radius:10px;padding:12px;cursor:pointer;font:inherit;color:var(--tinta);min-width:0}
.persona-demo:hover{border-color:var(--azul2);background:var(--azul3)}
.persona-demo>span:last-child{display:flex;flex-direction:column;min-width:0}
.persona-demo strong{font-size:.88rem}.persona-demo small{font-size:.74rem;color:var(--tinta2)}
.persona-demo em{font-style:normal;font-size:.72rem;color:#4d6072;margin-top:4px}
.recorrido{list-style:none;padding:0;margin:18px 0;display:grid;gap:10px}
.recorrido-paso{display:flex;gap:14px;background:var(--papel);border:1px solid var(--linea);border-radius:var(--radio);padding:14px 16px}
.recorrido-n{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;background:var(--azul);color:#fff;font-weight:800}
.recorrido-txt{min-width:0}
.recorrido-txt h2{margin:2px 0 4px;font-size:1rem}
.recorrido-txt p{margin:0 0 10px;font-size:.86rem;color:#3d4d5f}
.recorrido-txt form{margin:0}

@media (max-width:1100px){
  .hoy-cifras{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hoy-columnas{grid-template-columns:1fr}
  .gestia-asunto-cuerpo{grid-template-columns:1fr}
}
@media (max-width:860px){
  .demo-barra{top:68px;padding:6px 12px;gap:8px}
  .demo-aviso{display:none}
  .demo-barra ~ .cuerpo .lateral{top:68px;height:calc(100vh - 68px)}
}
@media (max-width:600px){
  .hoy-cifras{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hoy-cifra b{font-size:1.6rem}
  .tareas-lista{grid-template-columns:1fr}
  .tareas-cifras{width:100%}.tareas-cifras span{flex:1;min-width:0}
  .linea-ia li{grid-template-columns:1fr}
  .linea-ia-hora{grid-row:auto}
  .actividad li{grid-template-columns:30px minmax(0,1fr)}
  .actividad time{grid-column:2}
  .consulta-form{flex-direction:column}
  .responder-fila{flex-direction:column}
  .agentes-rejilla{grid-template-columns:1fr}
  .demo-persona-panel{position:fixed;left:12px;right:12px;width:auto;top:110px}
  .ayolas-entrada-caja{padding:22px 16px}
  .recorrido-paso{padding:12px}
}
