/* Inicio · una superficie tranquila para explorar el fondo documental.
   Carga final, acotada a esta vista. La especificidad y los !important
   resuelven los acabados de las hojas históricas sin afectar otras vistas. */
#vista-inicio {
  --inicio-fondo: #f5f5f7;
  --inicio-papel: #fff;
  --inicio-tinta: #1d1d1f;
  --inicio-secundario: #6e6e73;
  --inicio-azul: #0071e3;
  --inicio-linea: #e6e6eb;
  --inicio-fuente: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", sans-serif;
  --fuente: var(--inicio-fuente);
  --fuente-titulos: var(--inicio-fuente);
  --inicio-sombra: 0 4px 24px rgba(29, 29, 31, .045);
  --inicio-sombra-activa: 0 10px 32px rgba(29, 29, 31, .085);
  background: var(--inicio-fondo);
  color: var(--inicio-tinta);
  font-family: var(--inicio-fuente);
}
#vista-inicio > .contenedor { max-width: 1336px; padding-inline: 28px; }
#vista-inicio #tablero { padding: 0 0 80px !important; }
#vista-inicio #tablero .bibdash { display: grid; gap: 24px; }
#vista-inicio #tablero :is(h1,h2,h3,strong,button,input,select) { font-family: var(--inicio-fuente); }
#vista-inicio #tablero :is(button,input,select):focus-visible {
  outline: 3px solid var(--inicio-azul) !important;
  outline-offset: 4px;
}

/* El hero usa el mismo blanco que las tarjetas, con aire de estudio. */
#vista-inicio #tablero .bibdash-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.04fr);
  align-items: center;
  gap: 0 30px;
  min-height: 650px;
  margin: 0 calc(50% - 50vw);
  padding: 64px max(28px, calc((100vw - 1280px) / 2)) 0;
  border: 0;
  border-radius: 0;
  background: var(--inicio-papel) !important;
  box-shadow: none;
  overflow: clip !important;
}
#vista-inicio #tablero .bibdash-hero::before,
#vista-inicio #tablero .bibdash-hero::after,
#vista-inicio #tablero .lavado,
#vista-inicio #tablero .escena-orbita { display: none !important; }
#vista-inicio #tablero .bibdash-hero-texto { padding: 0 0 26px; }
#vista-inicio #tablero .bibdash-hero .bibdash-eyebrow {
  gap: 0;
  margin: 0 0 23px;
  color: var(--inicio-secundario);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .02em;
  text-transform: none;
}
#vista-inicio #tablero .bibdash-eyebrow > i { display: none; }
#vista-inicio #tablero .bibdash-hero h1 {
  font-size: clamp(58px, 6.3vw, 88px);
  font-weight: 600;
  line-height: 1.025;
  letter-spacing: -.065em;
  color: var(--inicio-tinta);
}
#vista-inicio #tablero .bibdash-hero h1,
#vista-inicio #tablero .bibdash-hero h1 span { font-weight: 600 !important; }
#vista-inicio #tablero .bibdash-hero h1 > span { color: var(--inicio-azul); }
#vista-inicio #tablero .hero-punto { display: inline; margin: 0; padding: 0; color: inherit; letter-spacing: inherit; }
#vista-inicio #tablero .bibdash-hero .hero-descripcion {
  max-width: 40ch;
  margin-top: 24px;
  color: var(--inicio-secundario);
  font-size: 17px;
  line-height: 1.6;
  letter-spacing: -.016em;
}
#vista-inicio #tablero .bibdash-hero .bqi { margin-top: 28px; max-width: 540px; }
#vista-inicio #tablero .bibdash-hero .bqi-caja {
  gap: 12px;
  padding: 6px 6px 6px 17px;
  border: 1px solid #d8d8de !important;
  border-radius: 18px;
  background: var(--inicio-papel);
  box-shadow: 0 4px 18px #1d1d1f06;
}
#vista-inicio #tablero .bibdash-hero .bqi-caja:focus-within {
  border-color: var(--inicio-azul) !important;
  box-shadow: 0 0 0 4px #0071e31a;
}
#vista-inicio #tablero .bqi-caja > svg { color: #86868b; }
#vista-inicio #tablero .bibdash-hero .bqi-caja input {
  padding: 15px 0;
  color: var(--inicio-tinta);
  font-size: 15px;
  box-shadow: none;
  border: 0;
}
#vista-inicio #tablero .bqi-caja input::placeholder { color: #78787e; }
#vista-inicio #tablero .bibdash-hero .bqi-caja .btn {
  padding: 15px 24px;
  border: 0;
  border-radius: 12px;
  background: var(--inicio-azul);
  color: #fff;
  box-shadow: none;
  font-size: 14px;
  font-weight: 500;
}
#vista-inicio #tablero .bibdash-hero .bqi-caja .btn:hover { background: #0077ed; }
#vista-inicio #tablero .bibdash-hero .bqi-ejemplos { gap: 7px; margin-top: 14px; }
#vista-inicio #tablero .bqi-ejemplos > span { display: none; }
#vista-inicio #tablero .bqi-ejemplos button {
  padding: 7px 10px;
  border: 0;
  border-radius: 8px;
  background: var(--inicio-fondo);
  color: #56565c;
  font-size: 11px;
  font-weight: 400;
}
#vista-inicio #tablero .bqi-ejemplos button:hover { background: #eaf3fe; color: #0066cc; }
#vista-inicio #tablero .bibdash-hero-acciones { gap: 26px; margin-top: 24px; }
#vista-inicio #tablero .bibdash-hero-acciones .btn {
  flex: initial;
  gap: 8px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 8px 0;
  color: #0066cc;
  font-size: 13px;
  font-weight: 500;
}
#vista-inicio #tablero .bibdash-hero-acciones .hero-hallazgo { color: #56565c; }
#vista-inicio #tablero .bibdash-hero-acciones .btn:hover { background: transparent; border: 0; box-shadow: none; transform: none; color: #0071e3; }
#vista-inicio #tablero .bibdash-hero-acciones .btn span { width: auto; height: auto; border-radius: 0; background: transparent; color: inherit; }
#vista-inicio #tablero .hero-escena {
  min-height: 450px;
  margin: -16px -20px 0 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
#vista-inicio #tablero .escena-etiqueta { display: none; }
#vista-inicio #tablero .escena-pie { bottom: 5px; left: 15%; right: 12px; }
#vista-inicio #tablero .escena-instruccion { color: #86868b; font-size: 10px; }
#vista-inicio #tablero .mano-toggle {
  min-height: 36px;
  padding: 8px 12px;
  border: 1px solid var(--inicio-linea);
  background: #f5f5f7d9;
  color: #6e6e73;
  font-size: 10px;
}
#vista-inicio #tablero .mano-toggle:hover { background: #ececf0; border-color: #d2d2d7; }
#vista-inicio #tablero .hero-base {
  margin-top: 36px;
  padding: 22px 0;
  border-top: 1px solid var(--inicio-linea);
  color: #86868b;
  font-size: 11px;
  letter-spacing: 0;
}
#vista-inicio #tablero .hero-base i { color: #b8b8bd; }
#vista-inicio #tablero .hero-bajar { color: #6e6e73; font-size: 11px; background: transparent; }
#vista-inicio #tablero .hero-bajar span { border-color: #dedee3; }

/* Un ritmo común: encabezado, controles, indicadores y contenido. */
#vista-inicio #tablero .panorama-cab { padding-top: 42px; margin-bottom: 3px; }
#vista-inicio #tablero .panorama-eyebrow {
  margin-bottom: 9px;
  color: #6e6e73;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
}
#vista-inicio #tablero .panorama-cab h2 {
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 600 !important;
  letter-spacing: -.045em;
  line-height: 1.2;
  color: var(--inicio-tinta);
}
#vista-inicio #tablero .panorama-cab p { color: #6e6e73; font-size: 13px; }
#vista-inicio #tablero .bibdash-filtros {
  align-items: end;
  gap: 14px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}
#vista-inicio #tablero .bibdash-filtro { gap: 7px; }
#vista-inicio #tablero .bibdash-filtro label { color: #6e6e73; font-size: 11px; }
#vista-inicio #tablero .bibdash-filtro select {
  height: 42px;
  padding-inline: 14px 34px;
  border: 1px solid #dedee3;
  border-radius: 11px;
  background: #fff;
  color: var(--inicio-tinta);
  font-size: 12px;
  font-weight: 400;
}
#vista-inicio #tablero .bibdash-resultado { margin: 0 0 0 auto; padding-bottom: 13px; color: #6e6e73; font-size: 11px; }
#vista-inicio #tablero .bibdash-limpiar { background: transparent; color: #0066cc; font-weight: 500; }
/* Indicadores: cifras protagonistas e ilustraciones de la misma familia. */
#vista-inicio #tablero .bibdash-kpis { gap:20px; margin:0 0 10px; }
#vista-inicio #tablero #dashKpis > .bibdash-kpi {
  --card-acento:#087f79; --card-tinte:#ecf8f5;
  position:relative; isolation:isolate; display:flex; flex-direction:column;
  min-height:228px; padding:28px !important; overflow:hidden;
  border:1px solid #ffffff !important; border-radius:30px !important;
  background:linear-gradient(135deg,#fff 30%,var(--card-tinte)) !important;
  box-shadow:0 1px 2px #17284308,0 12px 28px -18px #263f694d,inset 0 0 0 1px #ffffffa6 !important;
  transform:none; translate:none; transition:box-shadow .25s ease;
}
#vista-inicio #tablero #dashKpis > .bibdash-kpi[data-kpi="documentos"] {
  --card-acento:#285c92; --card-tinte:#c8e0fa;
  background:radial-gradient(ellipse at 0% 0%,#f4fbff 0%,transparent 68%),linear-gradient(135deg,#d5eaff,#b2d3f5 65%,#9ebfee) !important;
  border-color:#edf7ff !important;
  box-shadow:0 3px 5px #0a20351a,0 16px 30px -18px #173d77b0,inset 0 1px 0 #ffffff29 !important;
}
#vista-inicio #tablero #dashKpis > .bibdash-kpi[data-kpi="temas"] { --card-tinte:#f1edfa; }
#vista-inicio #tablero #dashKpis > .bibdash-kpi[data-kpi="periodo"] { --card-tinte:#faf3e7; }
#vista-inicio #tablero #dashKpis > .bibdash-kpi::before,
#vista-inicio #tablero #dashKpis > .bibdash-kpi::after { display:none !important; }
#vista-inicio #tablero .kpi-cabecera { display:flex; align-items:center; min-width:0; min-height:24px; color:#4c5868; font-size:13px; font-weight:500; }
#vista-inicio #tablero .kpi-icono { position:absolute; top:23px; right:20px; display:grid; place-items:center; width:84px; height:84px; border:0; border-radius:0; background:none; box-shadow:none; }
#vista-inicio #tablero .kpi-icono svg { width:100%; height:100%; filter:drop-shadow(0 5px 5px #1833570a); }
#vista-inicio #tablero #dashKpis > .bibdash-kpi > strong { margin:27px 0 25px; color:#172538 !important; font-size:60px; font-weight:600 !important; letter-spacing:-.05em; line-height:1; }
#vista-inicio #tablero #dashKpis > .bibdash-kpi[data-kpi="periodo"] > strong { font-size:clamp(27px,2.6vw,37px); margin-block:40px 35px; letter-spacing:-.045em; position:relative; z-index:1; }
#vista-inicio #tablero #dashKpis > .bibdash-kpi[data-kpi="periodo"] .kpi-icono { width:67px; height:67px; top:13px; right:16px; }
#vista-inicio #tablero #dashKpis > .bibdash-kpi > small { margin-top:auto; padding-top:15px; border:0; border-top:1px solid #172c4710; color:#606c7a !important; font-size:11px; line-height:1.5; }
#vista-inicio #tablero #dashKpis > .bibdash-kpi[data-kpi="documentos"] > strong { color:#204a78 !important; }
#vista-inicio #tablero #dashKpis > .bibdash-kpi[data-kpi="documentos"] .kpi-cabecera { color:#32577f; }
#vista-inicio #tablero #dashKpis > .bibdash-kpi[data-kpi="documentos"] > small { color:#3f5f82 !important; border-top-color:#35679725; }

#vista-inicio #tablero .bibdash-graficos { grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:24px; }
#vista-inicio #tablero .bibdash-panel { padding:30px; border:1px solid #fff !important; border-radius:28px; background:linear-gradient(160deg,#fff 45%,#f6f8fc) !important; box-shadow:0 12px 32px -22px #283e6152,0 1px 2px #13284905 !important; }
#vista-inicio #tablero .bibdash-panel-cab { flex-direction:row; align-items:center; text-align:left; margin-bottom:26px; padding-bottom:0; border:0; }
#vista-inicio #tablero .bibdash-panel-cab > div > span { display:block; margin-bottom:8px; padding:0; border:0; background:transparent; color:#6e6e73; font-size:11px; font-weight:400 !important; letter-spacing:0; text-transform:none; }
#vista-inicio #tablero .bibdash-panel-cab h2 { color:var(--inicio-tinta); font-size:23px; font-weight:600 !important; letter-spacing:-.035em; }
#vista-inicio #tablero .bibdash-enlace { border:0; border-radius:0; box-shadow:none; padding:9px 0; color:#0066cc; background:transparent; font-size:12px; font-weight:400; }
#vista-inicio #tablero .bibdash-enlace:hover { background:transparent; border:0; box-shadow:none; text-decoration:underline; }
#vista-inicio #tablero .bibdash-barras { gap:8px; min-height:195px; }
#vista-inicio #tablero .bibdash-barra { gap:18px; padding:12px 10px; border-radius:12px; background:transparent; color:var(--inicio-tinta); }
#vista-inicio #tablero .bibdash-barra:hover,
#vista-inicio #tablero .bibdash-barra[aria-pressed="true"] { background:#eaf2fd; }
#vista-inicio #tablero .bibdash-barra-etiqueta { color:#56565c; font-size:13px; font-weight:400; }
#vista-inicio #tablero .bibdash-barra-pista { height:9px; background:#e9edf3; border-radius:5px; box-shadow:inset 0 1px 2px #142b4b0b; }
#vista-inicio #tablero .bibdash-barra-pista i { border-radius:inherit; box-shadow:inset 0 1px 0 #ffffff30; }
#vista-inicio #tablero .bibdash-barra > strong { color:var(--inicio-tinta); font-size:13px; font-weight:500; }
#vista-inicio #tablero .bibdash-vigencia { justify-content:center; gap:28px; padding:10px 0; }
#vista-inicio #tablero .bibdash-donut { width:154px; height:154px; flex:none; box-shadow:0 10px 18px -14px #1b477564; }
#vista-inicio #tablero .bibdash-donut::before { width:122px; height:122px; background:#fff; box-shadow:0 1px 4px #16365808; }
#vista-inicio #tablero .bibdash-donut strong { color:var(--inicio-tinta); font-size:35px; font-weight:600; letter-spacing:-.04em; }
#vista-inicio #tablero .bibdash-donut small { color:#6e6e73; font-size:10px; }
#vista-inicio #tablero .bibdash-vigencia li span { color:#56565c; font-size:12px; }
#vista-inicio #tablero .bibdash-vigencia li em { color:#86868b; font-size:11px; }
#vista-inicio #tablero .bibdash-vigencia li strong { color:var(--inicio-tinta); font-size:13px; font-weight:500; }

/* Cada tarjeta tiene su propia superficie dentro del mosaico. */
#vista-inicio #tablero .bibdash-temas-panel,
#vista-inicio #tablero .bibdash-panel:has(#dashDocumentos) { padding:16px 0 0; border:0 !important; background:transparent !important; box-shadow:none !important; overflow:visible; }
#vista-inicio #tablero .bibdash-temas-panel .bibdash-panel-cab,
#vista-inicio #tablero .bibdash-panel:has(#dashDocumentos) .bibdash-panel-cab { padding-inline:3px; margin-bottom:21px; }
/* Mosaico editorial: ilustración, contenido y acción en tres zonas. */
#vista-inicio #tablero .bibdash-temas { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
#vista-inicio #tablero #dashTemas .bibdash-tema {
  --tema-acento:#286aaa; --tema-tinte:#eaf3ff; --tema-borde:#d4e4f5;
  position:relative; display:grid; grid-template-columns:88px minmax(0,1fr) 30px; grid-template-rows:1fr 1fr 37px;
  align-content:stretch; align-items:center; gap:5px 19px; min-height:199px; padding:25px !important;
  text-align:left; border:1px solid #fff !important; border-radius:27px !important;
  background:linear-gradient(120deg,var(--tema-tinte) -40%,#fff 68%) !important;
  box-shadow:0 1px 2px #1b304d08,0 12px 28px -20px #1a365b66,inset 0 0 0 1px #ffffffb3 !important;
  transform:none; translate:none; transition:transform .24s ease,box-shadow .24s ease;
}
#vista-inicio #tablero #dashTemas .bibdash-tema[data-tono="violeta"] { --tema-acento:#7753b1; --tema-tinte:#f0eafa; --tema-borde:#e1d5f3; }
#vista-inicio #tablero #dashTemas .bibdash-tema[data-tono="verde"] { --tema-acento:#277e70; --tema-tinte:#e7f5f0; --tema-borde:#cce9e0; }
#vista-inicio #tablero #dashTemas .bibdash-tema[data-tono="ambar"] { --tema-acento:#976d33; --tema-tinte:#fbf1df; --tema-borde:#efdfbd; }
#vista-inicio #tablero #dashTemas .bibdash-tema::before { display:none !important; }
#vista-inicio #tablero #dashTemas .bibdash-tema::after { display:block !important; content:""; position:absolute; height:1px; inset:auto 25px 68px; width:auto; border:0; border-radius:0; transform:none; background:linear-gradient(90deg,var(--tema-borde),#e7edf340); opacity:1; pointer-events:none; }
#vista-inicio #tablero #dashTemas .bibdash-tema-num {
  grid-column:1; grid-row:1/3; display:grid; place-items:center; align-self:center;
  width:88px; height:88px; border:1px solid #ffffff !important; border-radius:25px;
  background:linear-gradient(140deg,#ffffffde,var(--tema-tinte)) !important;
  color:var(--tema-acento) !important; box-shadow:inset 0 1px 0 #fff,0 7px 12px -9px #263f6940 !important; transform:none !important;
}
#vista-inicio #tablero #dashTemas .bibdash-tema-num svg { width:76px; height:76px; filter:drop-shadow(0 2px 2px #22355209); }
#vista-inicio #tablero #dashTemas .bibdash-tema strong { grid-column:2/4; grid-row:1; align-self:end; color:#223149 !important; font-size:18px !important; font-weight:600 !important; line-height:1.25; letter-spacing:-.025em; white-space:normal; text-transform:none; overflow-wrap:break-word; }
#vista-inicio #tablero #dashTemas .bibdash-tema strong::first-letter { text-transform:uppercase; }
#vista-inicio #tablero #dashTemas .bibdash-tema small { grid-column:2/4; grid-row:2; align-self:start; margin:3px 0 0; padding:0; background:transparent; color:#758092 !important; font-size:11px; font-weight:400; letter-spacing:0; line-height:1.5; text-transform:none; }
#vista-inicio #tablero #dashTemas .bibdash-tema-sugerido { background:linear-gradient(135deg,#fff,#f9fafc) !important; }
#vista-inicio #tablero #dashTemas .tema-accion { grid-column:1/3; grid-row:3; align-self:end; color:var(--tema-acento); font-size:11px; font-weight:500; letter-spacing:0; }
#vista-inicio #tablero #dashTemas .bibdash-tema-flecha { grid-column:3; grid-row:3; display:grid; place-items:center; align-self:end; width:29px; height:29px; border:1px solid var(--tema-borde); border-radius:50%; background:#fff; box-shadow:0 2px 3px #1c365109; color:var(--tema-acento); opacity:1; transform:none; font-size:17px; }
#vista-inicio #tablero .tema-reflejo { display:none !important; }

/* Fichas: una portada breve y una zona de lectura claramente separada. */
#vista-inicio #tablero .bibdash-documentos { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
#vista-inicio #tablero #dashDocumentos .bibdash-doc {
  display:grid; grid-template-columns:78px minmax(0,1fr) 30px; grid-template-rows:1fr auto;
  min-height:202px; gap:20px; padding:27px !important;
  border:1px solid #fff !important; border-radius:24px !important;
  background:linear-gradient(145deg,#fff 60%,#f4f7fb) !important;
  box-shadow:0 2px 3px #13284904,0 10px 24px -18px #20385754 !important;
  transform:none; translate:none; transition:transform .22s ease,box-shadow .22s ease;
}
#vista-inicio #tablero #dashDocumentos .bibdash-doc:last-child { border-bottom:1px solid #fff !important; }
#vista-inicio #tablero #dashDocumentos .bibdash-doc-icono { grid-column:1; grid-row:1; display:grid; place-items:center; align-self:start; width:78px; height:85px; color:var(--doc-acento,#1a5686); border:1px solid #fff; border-radius:21px; background:linear-gradient(140deg,#f7faff,#ebf0f8); box-shadow:inset 0 1px 0 #fff,0 6px 10px -9px #23446840; }
#vista-inicio #tablero #dashDocumentos .bibdash-doc-icono svg { width:71px; height:71px; }
#vista-inicio #tablero #dashDocumentos .bibdash-doc-cuerpo { grid-column:2/-1; grid-row:1; min-width:0; }
#vista-inicio #tablero #dashDocumentos .bibdash-doc-cuerpo > small { color:#6e7784; font-size:10px; font-weight:500; text-transform:uppercase; letter-spacing:.05em; }
#vista-inicio #tablero #dashDocumentos .bibdash-doc-cuerpo > strong { display:block; margin:9px 0 12px; color:#242933 !important; font-size:20px; font-weight:600 !important; line-height:1.3; letter-spacing:-.02em; white-space:normal; }
#vista-inicio #tablero #dashDocumentos .bibdash-doc-cuerpo > span { color:#646e7b; font-size:11px; }
#vista-inicio #tablero #dashDocumentos .doc-vigencia { display:inline-flex; align-items:center; gap:5px; padding:3px 8px; border-radius:6px; background:#eef1f5; color:#56616d; font-size:10px; line-height:1.5; }
#vista-inicio #tablero #dashDocumentos .doc-vigencia::before { content:""; width:4px; height:4px; border-radius:50%; background:currentColor; }
#vista-inicio #tablero #dashDocumentos .doc-vigencia[data-vigencia="Vigente"] { background:#eaf6f0; color:#286749; }
#vista-inicio #tablero #dashDocumentos .doc-vigencia[data-vigencia="Modificada"] { background:#eaf1fc; color:#386198; }
#vista-inicio #tablero #dashDocumentos .doc-vigencia[data-vigencia="Parcialmente vigente"] { background:#fbf2e4; color:#8b622a; }
#vista-inicio #tablero #dashDocumentos .bibdash-doc-articulos { grid-column:2; grid-row:2; display:flex; align-items:baseline; gap:5px; justify-self:start; width:auto; min-width:0; padding:0; border:0; border-radius:0; background:transparent; color:#465369; font-size:14px; font-weight:600; letter-spacing:0; }
#vista-inicio #tablero #dashDocumentos .bibdash-doc-articulos small { margin:0; color:#75808f; font-size:11px; font-weight:400; }
#vista-inicio #tablero #dashDocumentos .bibdash-doc-flecha { grid-column:3; grid-row:2; display:grid; place-items:center; width:28px; height:28px; border:1px solid #e1e7ef; border-radius:50%; background:#fff; box-shadow:none; transform:none; opacity:1; color:#64768e; }
@media (hover:hover) {
  #vista-inicio #tablero #dashTemas .bibdash-tema:hover,
  #vista-inicio #tablero #dashDocumentos .bibdash-doc:hover { border-color:#dbe7f7 !important; box-shadow:0 14px 30px -16px #223d6a40,0 2px 4px #102e4d07 !important; transform:translateY(-3px); }
  #vista-inicio #tablero #dashTemas .bibdash-tema:hover .bibdash-tema-flecha,
  #vista-inicio #tablero #dashDocumentos .bibdash-doc:hover .bibdash-doc-flecha { color:#0066cc; border-color:#a8c9f1; }
}

@media (max-width: 1100px) {
  #vista-inicio #tablero .bibdash-hero { padding-top: 48px; min-height: 590px; gap: 0 16px; }
  #vista-inicio #tablero .bibdash-hero h1 { font-size: clamp(50px, 6.5vw, 72px); }
  #vista-inicio #tablero .bibdash-hero .hero-descripcion { font-size: 15px; }
  #vista-inicio #tablero .bibdash-graficos { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
  #vista-inicio #tablero .bibdash-panel { padding: 26px; }
  #vista-inicio #tablero .bibdash-vigencia { gap: 18px; flex-wrap: wrap; }
  #vista-inicio #tablero .bibdash-temas { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #vista-inicio #tablero #dashKpis > .bibdash-kpi { padding: 23px !important; }
  #vista-inicio #tablero .kpi-icono { width:68px; height:68px; right:14px; }
  #vista-inicio #tablero #dashKpis > .bibdash-kpi[data-kpi="periodo"] .kpi-icono { width:54px; height:54px; right:10px; }
  #vista-inicio #tablero .kpi-cabecera { font-size:12px; }
}
@media (max-width: 820px) {
  #vista-inicio #tablero .bibdash-hero { grid-template-columns: minmax(0, 1fr); padding: 40px 28px 0; }
  #vista-inicio #tablero .bibdash-hero-texto { padding-bottom: 0; }
  #vista-inicio #tablero .bibdash-hero h1 { font-size: clamp(58px, 10vw, 78px); }
  #vista-inicio #tablero .bibdash-hero .hero-descripcion { max-width: 45ch; font-size: 16px; }
  #vista-inicio #tablero .bibdash-hero .bqi { max-width: 590px; }
  #vista-inicio #tablero .hero-escena { grid-column: 1; grid-row: 2; height: 380px; min-height: 0; margin: 5px 0 0; }
  #vista-inicio #tablero .escena-pie { left: 0; right: 0; bottom: 0; justify-content: center; }
  #vista-inicio #tablero .escena-instruccion { display: none; }
  #vista-inicio #tablero .hero-base { margin-top: 22px; }
  #vista-inicio #tablero .panorama-cab { display: block; padding-top: 26px; }
  #vista-inicio #tablero .panorama-cab p { max-width: none; margin-top: 11px; }
  #vista-inicio #tablero .bibdash-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  #vista-inicio #tablero .bibdash-graficos { grid-template-columns: minmax(0, 1fr); }
  #vista-inicio #tablero .bibdash-temas { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #vista-inicio #tablero .bibdash-vigencia { flex-direction: row; align-items: center; justify-content: flex-start; gap: 40px; }
  #vista-inicio #tablero .bibdash-vigencia ul { width: auto; }
}
@media (max-width: 600px) {
  #vista-inicio > .contenedor { padding-inline: 18px; }
  #vista-inicio #tablero { padding-bottom: 48px !important; }
  #vista-inicio #tablero .bibdash { gap: 20px; }
  #vista-inicio #tablero .bibdash-hero { padding-inline: 22px; padding-top: 32px; }
  #vista-inicio #tablero .bibdash-hero .bibdash-eyebrow { margin-bottom: 19px; font-size: 11px; }
  #vista-inicio #tablero .bibdash-hero h1 { font-size: clamp(48px, 12vw, 66px); }
  #vista-inicio #tablero .bibdash-hero .hero-descripcion { margin-top: 20px; font-size: 15px; }
  #vista-inicio #tablero .bibdash-hero .bqi-caja { gap: 8px; padding-left: 12px; border-radius: 15px; }
  #vista-inicio #tablero .bibdash-hero .bqi-caja input { font-size: 16px; }
  #vista-inicio #tablero .bibdash-hero .bqi-caja > svg { display: none; }
  #vista-inicio #tablero .bibdash-hero .bqi-caja .btn { padding: 14px 17px; font-size: 12px; border-radius: 10px; }
  #vista-inicio #tablero .bqi-ejemplos button { font-size: 10px; padding: 7px 9px; }
  #vista-inicio #tablero .bibdash-hero-acciones { gap: 20px; margin-top: 20px; }
  #vista-inicio #tablero .bibdash-hero-acciones .btn { font-size: 11px; }
  #vista-inicio #tablero .hero-escena { height: 310px; margin-top: 5px; }
  #vista-inicio #tablero .hero-base { padding-block: 18px; margin-top: 16px; font-size: 9px; }
  #vista-inicio #tablero .hero-base > span { gap: 9px; }
  #vista-inicio #tablero .hero-bajar { font-size: 0; }
  #vista-inicio #tablero .panorama-cab h2 { font-size: 29px; }
  #vista-inicio #tablero .panorama-cab p { font-size: 12px; line-height: 1.5; }
  #vista-inicio #tablero .bibdash-filtros { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px 10px; }
  #vista-inicio #tablero .bibdash-filtro select { min-width: 0; max-width: 100%; padding-left: 10px; font-size: 11px; }
  #vista-inicio #tablero .bibdash-resultado { grid-column: 1 / -1; margin: 0; padding: 0; font-size: 10px; }
  #vista-inicio #tablero .bibdash-kpis { gap: 12px; }
  #vista-inicio #tablero #dashKpis > .bibdash-kpi { min-height: 208px; padding: 18px 16px !important; border-radius: 22px !important; }
  #vista-inicio #tablero .kpi-cabecera { flex-direction:column; align-items:flex-start; gap:10px; font-size:12px; }
  #vista-inicio #tablero .kpi-icono { position:static; width:62px; height:62px; border-radius:0; }
  #vista-inicio #tablero #dashKpis > .bibdash-kpi[data-kpi="periodo"] .kpi-icono { width:62px; height:62px; }
  #vista-inicio #tablero .kpi-icono svg { width:100%; height:100%; }
  #vista-inicio #tablero #dashKpis > .bibdash-kpi > strong { font-size: 42px; margin-block: 18px; }
  #vista-inicio #tablero #dashKpis > .bibdash-kpi[data-kpi="periodo"] > strong { font-size: clamp(20px, 5.6vw, 30px); margin-block: 27px; }
  #vista-inicio #tablero #dashKpis > .bibdash-kpi > small { font-size: 10px; padding-top:11px; }
  #vista-inicio #tablero .bibdash-panel { padding: 23px 20px; border-radius: 24px; }
  #vista-inicio #tablero .bibdash-panel-cab { flex-direction: column; align-items: flex-start; gap: 6px; margin-bottom: 23px; }
  #vista-inicio #tablero .bibdash-panel-cab h2 { font-size: 20px; }
  #vista-inicio #tablero .bibdash-enlace { align-self: flex-start; font-size: 12px; white-space: normal; text-align: left; max-width: none; padding: 5px 0; }
  #vista-inicio #tablero .bibdash-barras { min-height: 165px; }
  #vista-inicio #tablero .bibdash-barra { grid-template-columns: minmax(80px, 100px) minmax(0, 1fr) 24px; gap: 12px; }
  #vista-inicio #tablero .bibdash-barra-etiqueta { font-size: 12px; }
  #vista-inicio #tablero .bibdash-vigencia { gap: 25px; }
  #vista-inicio #tablero .bibdash-donut { width: 132px; height: 132px; }
  #vista-inicio #tablero .bibdash-donut::before { width: 104px; height: 104px; }
  #vista-inicio #tablero .bibdash-temas { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  #vista-inicio #tablero #dashTemas .bibdash-tema { grid-template-columns:72px minmax(0,1fr) 28px; grid-template-rows:1fr 1fr 32px; align-content:stretch; align-items:center; gap:5px 14px; min-height:179px; padding:21px !important; border-radius:24px !important; }
  #vista-inicio #tablero #dashTemas .bibdash-tema-num { grid-column:1; grid-row:1/3; align-self:center; width:72px; height:76px; border-radius:21px; }
  #vista-inicio #tablero #dashTemas .bibdash-tema-num svg { width:65px; height:65px; }
  #vista-inicio #tablero #dashTemas .bibdash-tema strong { grid-column:2/4; grid-row:1; font-size:17px !important; }
  #vista-inicio #tablero #dashTemas .bibdash-tema small { grid-column:2/4; grid-row:2; }
  #vista-inicio #tablero #dashTemas .bibdash-tema-flecha { grid-column:3; grid-row:3; align-self:end; }
  #vista-inicio #tablero #dashTemas .bibdash-tema::after { bottom:63px; left:21px; right:21px; }
  #vista-inicio #tablero .bibdash-documentos { grid-template-columns:minmax(0,1fr); gap:12px; }
  #vista-inicio #tablero #dashDocumentos .bibdash-doc { grid-template-columns:62px minmax(0,1fr) 28px; gap:13px; min-height:180px; padding:22px 19px !important; border-radius:22px !important; }
  #vista-inicio #tablero #dashDocumentos .bibdash-doc-icono { width:62px; height:70px; border-radius:18px; }
  #vista-inicio #tablero #dashDocumentos .bibdash-doc-icono svg { width:59px; height:59px; }
  #vista-inicio #tablero #dashDocumentos .bibdash-doc-cuerpo > strong { font-size: 17px; }
  #vista-inicio #tablero .bibdash-temas-panel,
  #vista-inicio #tablero .bibdash-panel:has(#dashDocumentos) { padding:12px 0 0; }
}
/* Los dos paneles principales: contraste, profundidad y lectura de datos. */
#vista-inicio #tablero .bibdash-graficos { gap:26px; margin-block:5px 15px; align-items:stretch; }
#vista-inicio #tablero .bibdash-graficos > .bibdash-panel {
  position:relative; isolation:isolate; display:flex; flex-direction:column;
  padding:30px; border-radius:32px; border:1px solid #fff !important;
  box-shadow:0 3px 5px #142b4608,0 20px 42px -19px #203f6a42,inset 0 1px 0 #ffffffcc !important;
  overflow:hidden;
}
#vista-inicio #tablero .bibdash-graficos > .panel-composicion {
  background:radial-gradient(ellipse at 0% 0%,#f3faffcc,transparent 62%),radial-gradient(ellipse at 100% 100%,#9cbaee70,transparent 65%),linear-gradient(130deg,#d8ecff 4%,#b9d9f6 55%,#a6c6ee 100%) !important;
  border-color:#edf7ff !important;
  box-shadow:0 3px 6px #113d6821,0 24px 42px -19px #153d7780,inset 0 1px 0 #8dbbea70,inset 0 0 0 1px #ffffff08 !important;
}
#vista-inicio #tablero .bibdash-graficos > .panel-vigencias {
  background:radial-gradient(ellipse at 0% 0%,#fff 0%,transparent 63%),radial-gradient(ellipse at 100% 100%,#bbd5ef90,transparent 70%),linear-gradient(140deg,#e3f6ef 5%,#d7eee8 43%,#e7edf9 100%) !important;
  border-color:#f5fffd !important;
  box-shadow:0 3px 5px #234c4b0a,0 20px 40px -20px #2d666b60,inset 0 1px 0 #fff,inset 0 0 0 1px #ffffff75 !important;
}
#vista-inicio #tablero .bibdash-graficos .bibdash-panel-cab {
  display:grid; grid-template-columns:52px minmax(0,1fr) auto; gap:15px;
  align-items:center; margin:0; padding-bottom:23px; border-bottom:1px solid #ffffff24;
}
#vista-inicio #tablero .panel-vigencias .bibdash-panel-cab { grid-template-columns:52px minmax(0,1fr); border-bottom-color:#5d938c25; }
#vista-inicio #tablero .bibdash-graficos .panel-insignia {
  display:grid; place-items:center; width:52px; height:56px; border:1px solid #ffffff3b;
  border-radius:17px; background:linear-gradient(145deg,#ffffff38,#ffffff08);
  box-shadow:inset 0 1px 0 #ffffff54,0 6px 12px #071f3618;
}
#vista-inicio #tablero .bibdash-graficos .panel-insignia svg { width:100%; height:100%; max-width:47px; max-height:47px; min-width:0; }
#vista-inicio #tablero .panel-vigencias .panel-insignia { background:linear-gradient(145deg,#fff,#d0eee1); border-color:#fff; box-shadow:inset 0 1px 0 #fff,0 6px 12px -7px #2c6c6050; }
#vista-inicio #tablero .bibdash-graficos .bibdash-panel-cab h2 { margin:0; font-size:27px; line-height:1.15; font-weight:650 !important; letter-spacing:-.04em; }
#vista-inicio #tablero .panel-composicion .bibdash-panel-cab h2 { color:#204a78; }
#vista-inicio #tablero .panel-vigencias .bibdash-panel-cab h2 { color:#193d42; }
#vista-inicio #tablero .bibdash-graficos .bibdash-panel-cab > div > span { margin:0 0 7px; font-size:10px; font-weight:600 !important; letter-spacing:.08em; text-transform:uppercase; }
#vista-inicio #tablero .panel-composicion .bibdash-panel-cab > div > span { color:#42678b; }
#vista-inicio #tablero .panel-vigencias .bibdash-panel-cab > div > span { color:#4b7a73; }
#vista-inicio #tablero .panel-composicion .bibdash-enlace { padding:10px 13px; border:1px solid #ffffff38; border-radius:999px; color:#234e7d; background:linear-gradient(145deg,#ffffff20,#ffffff08); font-size:11px; white-space:nowrap; box-shadow:inset 0 1px 0 #ffffff14; }
#vista-inicio #tablero .panel-composicion .bibdash-enlace:hover { background:#ffffff29; border-color:#ffffffa6; color:#204a78; }
#vista-inicio #tablero .panel-composicion .panel-resumen-tipos { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:10px; padding:23px 0 15px; }
#vista-inicio #tablero .panel-resumen-tipos > div { display:flex; align-items:baseline; gap:10px; }
#vista-inicio #tablero .panel-resumen-tipos strong { color:#204a78; font-size:42px; font-weight:600 !important; line-height:1; letter-spacing:-.05em; }
#vista-inicio #tablero .panel-resumen-tipos div > span { color:#3e6085; font-size:12px; }
#vista-inicio #tablero .panel-total { padding:7px 10px; border:1px solid #ffffff1c; border-radius:9px; color:#3e6085; background:#ffffff59; font-size:11px; }
#vista-inicio #tablero .panel-composicion .bibdash-barras { display:grid; align-content:start; gap:6px; min-height:0; margin:0; }
#vista-inicio #tablero .panel-composicion .bibdash-barra { grid-template-columns:minmax(85px,110px) minmax(0,1fr) 35px; align-items:center; gap:14px; padding:12px 10px; border:1px solid transparent; border-radius:13px; background:transparent; }
#vista-inicio #tablero .panel-composicion .bibdash-barra:hover,
#vista-inicio #tablero .panel-composicion .bibdash-barra[aria-pressed="true"] { background:#ffffff15; border-color:#568cc466; }
#vista-inicio #tablero .panel-composicion .bibdash-barra-etiqueta { color:#284e76; font-size:13px; font-weight:500; }
#vista-inicio #tablero .panel-composicion .bibdash-barra-pista { height:11px; border-radius:7px; background:#6289b42b; box-shadow:inset 0 1px 3px #071b354a,0 1px 0 #ffffff14; }
#vista-inicio #tablero .panel-composicion .bibdash-barra-pista i { border-radius:inherit; background:linear-gradient(90deg,#387fc5,#659ddd); box-shadow:inset 0 1px 0 #ffffffa6,0 2px 6px #04295724; }
#vista-inicio #tablero .panel-composicion .bibdash-barra > strong { display:grid; place-items:center; min-width:30px; min-height:30px; color:#204a78; font-size:16px; font-weight:600 !important; background:#ffffff12; border:1px solid #ffffff1c; border-radius:9px; }
#vista-inicio #tablero .panel-composicion .panel-ayuda { margin:auto 0 0; padding:20px 0 0; color:#456589; font-size:11px; line-height:1.5; }
#vista-inicio #tablero .panel-composicion .vacio,#vista-inicio #tablero .panel-composicion .vacio strong { color:#365a80; }
#vista-inicio #tablero .panel-vigencias .panel-intro { margin:22px 0 19px; color:#52746f; font-size:12px; }
#vista-inicio #tablero .panel-vigencias .bibdash-vigencia { flex:1; display:flex; flex-direction:row; flex-wrap:wrap; align-content:center; align-items:center; justify-content:center; gap:24px; padding:18px 0 8px; }
#vista-inicio #tablero .panel-vigencias .bibdash-donut { width:174px; height:174px; flex:none; box-shadow:0 12px 18px -13px #2b6d7159,0 1px 0 #fff; }
#vista-inicio #tablero .panel-vigencias .bibdash-donut::before { width:139px; height:139px; background:linear-gradient(135deg,#fff,#f1f7f9); box-shadow:inset 0 1px 3px #1438390c,0 1px 2px #193d3b10; }
#vista-inicio #tablero .panel-vigencias .bibdash-donut strong { color:#21434a; font-size:48px; font-weight:650 !important; letter-spacing:-.05em; }
#vista-inicio #tablero .panel-vigencias .bibdash-donut small { color:#617d83; font-size:11px; }
#vista-inicio #tablero .panel-vigencias .bibdash-vigencia ul { display:grid; grid-template-columns:minmax(0,1fr); flex:1 1 200px; min-width:200px; width:auto; gap:8px; padding:0; margin:0; }
#vista-inicio #tablero .panel-vigencias .bibdash-vigencia li { min-width:0; width:auto; display:grid; grid-template-columns:7px minmax(0,1fr) 25px; align-items:center; gap:10px; padding:10px 11px; border:1px solid #ffffffb3; border-radius:13px; background:linear-gradient(135deg,#ffffffc9,#ffffff59); box-shadow:0 4px 8px -6px #2b5b6659,inset 0 1px 0 #fff; }
#vista-inicio #tablero .panel-vigencias .bibdash-vigencia li > i { width:7px; height:7px; border-radius:50%; box-shadow:0 0 0 3px #ffffffb3; }
#vista-inicio #tablero .panel-vigencias .bibdash-vigencia li span { color:#32535a; font-size:12px; font-weight:500; line-height:1.4; }
#vista-inicio #tablero .panel-vigencias .bibdash-vigencia li em { display:block; margin-top:2px; color:#668089; font-size:11px; font-style:normal; }
#vista-inicio #tablero .panel-vigencias .bibdash-vigencia li strong { color:#25444b; font-size:18px; font-weight:600 !important; text-align:right; }
@media(max-width:1100px) {
  #vista-inicio #tablero .bibdash-graficos .bibdash-panel-cab { grid-template-columns:46px minmax(0,1fr); gap:12px; }
  #vista-inicio #tablero .bibdash-graficos .bibdash-panel-cab h2 { font-size:25px; }
  #vista-inicio #tablero .bibdash-graficos .panel-insignia { width:46px; height:50px; }
  #vista-inicio #tablero .panel-composicion .bibdash-enlace { grid-column:2; justify-self:start; padding:7px 11px; }
  #vista-inicio #tablero .panel-vigencias .bibdash-vigencia { gap:18px; }
}
@media(max-width:820px) {
  #vista-inicio #tablero .bibdash-graficos .bibdash-panel-cab { grid-template-columns:52px minmax(0,1fr) auto; }
  #vista-inicio #tablero .panel-vigencias .bibdash-panel-cab { grid-template-columns:52px minmax(0,1fr); }
  #vista-inicio #tablero .panel-composicion .bibdash-enlace { grid-column:3; grid-row:1; }
  #vista-inicio #tablero .panel-vigencias .bibdash-vigencia { justify-content:flex-start; gap:32px; padding-block:9px; }
}
@media(max-width:600px) {
  #vista-inicio #tablero .bibdash-graficos { gap:23px; }
  #vista-inicio #tablero .bibdash-graficos > .bibdash-panel { padding:24px 21px; border-radius:28px; }
  #vista-inicio #tablero .bibdash-graficos .bibdash-panel-cab { grid-template-columns:44px minmax(0,1fr); gap:12px; padding-bottom:19px; }
  #vista-inicio #tablero .bibdash-graficos .panel-insignia { width:44px; height:48px; border-radius:14px; }
  #vista-inicio #tablero .bibdash-graficos .panel-insignia svg { width:100%; height:100%; max-width:41px; max-height:41px; }
  #vista-inicio #tablero .bibdash-graficos .bibdash-panel-cab h2 { font-size:24px; }
  #vista-inicio #tablero .panel-composicion .bibdash-enlace { grid-column:2; grid-row:2; font-size:11px; }
  #vista-inicio #tablero .panel-composicion .panel-resumen-tipos { padding-top:19px; }
  #vista-inicio #tablero .panel-resumen-tipos strong { font-size:37px; }
  #vista-inicio #tablero .panel-resumen-tipos div > span { font-size:11px; }
  #vista-inicio #tablero .panel-composicion .bibdash-barra { grid-template-columns:minmax(70px,90px) minmax(0,1fr) 30px; gap:10px; padding:10px 0; }
  #vista-inicio #tablero .panel-composicion .bibdash-barra-etiqueta { font-size:12px; }
  #vista-inicio #tablero .panel-composicion .panel-ayuda { padding-top:17px; font-size:10px; }
  #vista-inicio #tablero .panel-vigencias .bibdash-vigencia { flex-direction:column; gap:24px; padding-top:6px; }
  #vista-inicio #tablero .panel-vigencias .bibdash-vigencia ul { align-self:stretch; min-width:0; width:100%; }
  #vista-inicio #tablero .panel-vigencias .panel-intro { margin-block:18px; font-size:11px; }
}

@media (prefers-reduced-motion: reduce) {
  #vista-inicio #tablero *, #vista-inicio #tablero *::before, #vista-inicio #tablero *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
