/* v0.55 — Galería Lucide limpia, búsqueda y notificaciones de admin */

/* Íconos públicos de inversión: SVG limpio, sin contenedor interno */
.page-investment .program-icon.investment-svg-badge,
.page-investment .investment-svg-badge {
  width: 68px;
  height: 68px;
  margin-bottom: 1.25rem;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
  color: #514498;
  align-items: center;
  justify-content: flex-start;
  transform: none !important;
}

.page-investment .investment-svg-badge svg {
  width: 3.25rem;
  height: 3.25rem;
  filter: drop-shadow(0 14px 20px rgba(56, 49, 112, .10));
}

.page-investment .investment-route-card:hover .investment-svg-badge,
.page-investment .investment-route-card:focus-within .investment-svg-badge {
  color: #fff;
  background: transparent !important;
  box-shadow: none !important;
}

.page-investment .investment-route-card:hover .investment-svg-badge svg,
.page-investment .investment-route-card:focus-within .investment-svg-badge svg {
  filter: drop-shadow(0 18px 24px rgba(0, 0, 0, .18));
}

/* Selector compacto: el resumen también muestra el SVG suelto */
.investment-icon-current {
  min-height: 82px;
}

.investment-icon-current-visual {
  width: 70px;
  height: 70px;
  flex-basis: 70px;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
  color: #514498;
}

.investment-icon-current-visual svg {
  width: 3rem;
  height: 3rem;
  filter: drop-shadow(0 12px 20px rgba(56, 49, 112, .12));
}

.investment-icon-current:hover .investment-icon-current-visual,
.investment-icon-current:focus-visible .investment-icon-current-visual {
  color: #1f7ea8;
}

/* Modal con búsqueda y galería de SVG protagonistas */
.investment-icon-modal-search {
  padding: .9rem 1.15rem 0;
}

.investment-icon-modal-search label {
  display: grid;
  gap: .38rem;
  color: #1d2d55;
  font-size: .78rem;
  font-weight: 900;
}

.investment-icon-modal-search input {
  width: 100%;
  min-height: 46px;
  padding: .7rem .9rem;
  border: 1px solid #dfe6f3;
  border-radius: 14px;
  color: #1d2d55;
  background: #fff;
  font-weight: 750;
}

.investment-icon-modal-search input:focus {
  border-color: rgba(82, 68, 151, .55);
  box-shadow: 0 0 0 4px rgba(82, 68, 151, .10);
  outline: none;
}

.investment-icon-modal-gallery {
  grid-template-columns: repeat(auto-fill, minmax(132px, 1fr));
  gap: .8rem;
  padding-top: .9rem;
}

.investment-icon-modal-choice {
  min-height: 144px;
  gap: .55rem;
  justify-content: center;
  padding: 1rem .55rem .85rem;
  border-radius: 18px;
}

.investment-icon-modal-choice[hidden] {
  display: none !important;
}

.investment-icon-modal-choice-visual {
  width: 100%;
  height: 78px;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
  color: #5b4bbb;
}

.investment-icon-modal-choice-visual svg {
  width: 3.55rem;
  height: 3.55rem;
  filter: drop-shadow(0 16px 22px rgba(56, 49, 112, .11));
}

.investment-icon-modal-choice-label {
  max-width: 100%;
  color: #13234c;
  font-size: .76rem;
  line-height: 1.12;
  overflow-wrap: anywhere;
}

.investment-icon-modal-choice:hover,
.investment-icon-modal-choice:focus-visible,
.investment-icon-modal-choice.is-selected {
  background: linear-gradient(135deg, #514498, #1f7ea8);
  border-color: rgba(82, 68, 151, .52);
}

.investment-icon-modal-choice:hover .investment-icon-modal-choice-visual,
.investment-icon-modal-choice:focus-visible .investment-icon-modal-choice-visual,
.investment-icon-modal-choice.is-selected .investment-icon-modal-choice-visual {
  color: #fff;
  background: transparent !important;
  box-shadow: none !important;
}

.investment-icon-modal-choice:hover .investment-icon-modal-choice-label,
.investment-icon-modal-choice:focus-visible .investment-icon-modal-choice-label,
.investment-icon-modal-choice.is-selected .investment-icon-modal-choice-label {
  color: #fff;
}

.investment-icon-modal-empty {
  margin: .3rem 1.15rem 0;
  padding: .85rem 1rem;
  border: 1px dashed #c8d3e8;
  border-radius: 14px;
  color: #60708c;
  background: #f8faff;
  font-weight: 800;
}

/* Notificaciones en menú lateral */
.admin-sidebar nav a {
  position: relative;
  min-width: 0;
}

.admin-sidebar .admin-nav-label {
  width: auto;
  flex: 1;
  min-width: 0;
  color: inherit;
  text-align: left;
}

.admin-nav-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 23px;
  height: 23px;
  padding: 0 .42rem;
  border-radius: 999px;
  color: #1d2d55;
  background: #eaf8ff;
  font-size: .72rem;
  font-weight: 950;
  box-shadow: 0 0 0 1px rgba(255,255,255,.2), 0 10px 18px rgba(0,0,0,.12);
}

.admin-nav-badge-alert {
  color: #fff;
  background: linear-gradient(135deg, #f36b43, #b93a70);
}

.admin-subnav .admin-nav-badge {
  min-width: 20px;
  height: 20px;
  font-size: .68rem;
}

/* Filas nuevas sin leer */
.table-wrap tr.admin-notification-row.is-unread {
  background: linear-gradient(90deg, rgba(82, 68, 151, .10), rgba(31, 126, 168, .05));
}

.table-wrap tr.admin-notification-row.is-unread td:first-child {
  box-shadow: inset 4px 0 0 #514498;
}

.table-wrap tr.admin-notification-row.is-unread strong {
  color: #1d2d55;
}

.table-wrap tr.admin-notification-row.is-unread small:first-of-type {
  color: #514498;
  font-weight: 900;
}

.metric-attention {
  border-color: rgba(82, 68, 151, .32) !important;
  background: linear-gradient(135deg, #fff, #f7f4ff) !important;
}

.metric-attention span {
  color: #f36b43 !important;
}

@media (max-width: 720px) {
  .investment-icon-modal-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .investment-icon-modal-choice {
    min-height: 132px;
  }
  .investment-icon-modal-choice-visual svg {
    width: 3rem;
    height: 3rem;
  }
}
