/* Inkestak aplicativo - componentes comunes a encuestas y panel de administracion (rediseño 2026, propuesta A)
   Requiere estilos.css (base, tokens, controles). */

@import url('https://fonts.googleapis.com/css2?family=Sora:wght@600;700&family=Manrope:wght@400;500;600;700&display=swap');

:root {
  --tinta: #10202B;
  --texto: #4A5A66;
  --verde: #0B7A3B;
  --verde-osc: #075A2B;
  --verde-claro: #E7F5EC;
  --fondo: #F4F7F8;
  --linea: #E3E9ED;
  --borde: #7F8F9B;
  --blanco: #FFFFFF;
  --error: #A32B1B;
  --error-claro: #FBE9E6;
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; background: var(--fondo); color: var(--tinta); font-family: Manrope, system-ui, -apple-system, "Segoe UI", sans-serif; font-size: 16px; line-height: 1.6; }
h1, h2, h3, h4, .marca { font-family: Sora, Manrope, system-ui, sans-serif; color: var(--tinta); }
p { margin: 0; }
img, svg { max-width: 100%; }
table { border-collapse: collapse; }
a { color: var(--verde); }
a:hover { color: var(--verde-osc); }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible { outline: 3px solid var(--verde); outline-offset: 3px; border-radius: 6px; }

/* ---------- Base ---------- */
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; background: var(--fondo); color: var(--tinta); font-family: Manrope, system-ui, -apple-system, "Segoe UI", sans-serif; font-size: 16px; line-height: 1.6; }
h1, h2, h3, h4, .marca { font-family: Sora, Manrope, system-ui, sans-serif; color: var(--tinta); }
p { margin: 0; }
img, svg { max-width: 100%; }
table { border-collapse: collapse; }
a { color: var(--verde); }
a:hover { color: var(--verde-osc); }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible { outline: 3px solid var(--verde); outline-offset: 3px; border-radius: 6px; }

/* ---------- Controles ---------- */
input[type=text], input[type=password], input[type=email], input[type=number], input[type=date], input[type=file], select, textarea,
.caja_text, .select, .select_indi, .textarea, .textarea_dafo {
  box-sizing: border-box; min-height: 44px; padding: 8px 12px; background: var(--blanco); color: var(--tinta);
  border: 1.5px solid var(--borde); border-radius: 10px; font-family: Manrope, system-ui, sans-serif; font-size: 16px; height: auto; max-width: 100%;
}
.caja_text { width: 320px; }
.select { width: auto; min-width: 200px; }
.select_indi { width: auto; min-width: 120px; }
.textarea { width: 100%; max-width: 560px; min-height: 110px; }
.textarea_dafo { width: 100%; min-width: 160px; min-height: 110px; }
td textarea { width: 100%; }
input[type=radio], input[type=checkbox] { accent-color: var(--verde); width: 20px; height: 20px; margin: 4px; vertical-align: middle; cursor: pointer; }
input[type=submit], input[type=button], input[type=reset], button, .boton_submit, .boton_ver, .boton_submit_txiki, .boton {
  box-sizing: border-box; width: auto; height: auto; min-height: 44px; padding: 10px 24px; background: var(--verde); background-image: none; color: var(--blanco);
  border: 1.5px solid var(--verde); border-radius: 10px; font-family: Manrope, system-ui, sans-serif; font-size: 15px; font-weight: 700; text-align: center; cursor: pointer;
}
input[type=submit]:hover, input[type=button]:hover, button:hover, .boton_submit:hover, .boton_ver:hover, .boton_submit_txiki:hover, .boton:hover { background: var(--verde-osc); border-color: var(--verde-osc); }
.boton_submit:active, .boton_ver:active { background-image: none; background-color: var(--verde-osc); }
.boton_ver, .boton_submit_txiki { min-height: 40px; padding: 8px 16px; font-size: 14px; }
input[type=reset] { background: var(--blanco); color: var(--tinta); border-color: var(--borde); }
input[type=reset]:hover { background: var(--fondo); color: var(--tinta); border-color: var(--tinta); }

/* ---------- Avisos ---------- */
.alertas { background: var(--verde-claro); color: var(--verde-osc); border-radius: 10px; padding: 12px 16px; }
.caja_aviso { box-sizing: border-box; border: 2px solid var(--error); border-radius: 12px; background: var(--blanco); width: 100%; max-width: 640px; margin: 24px auto; text-align: left; }
.caja_aviso td { padding: 16px; }
.cuadro_aviso { box-sizing: border-box; width: 100%; max-width: 520px; height: auto; margin: 24px auto; padding: 14px 24px; border-radius: 10px; }
.f_verde { background-color: var(--verde-claro); color: var(--verde-osc); }
.f_rojo { background-color: var(--error-claro); color: #8A2114; }
.f_azul { background-color: #E6EEF6; color: #1F4E79; }
.c { background-color: #FF7F2A; }
.private { color: var(--error); }

/* ---------- Panel de administracion: estructura ---------- */
body.admin { background: var(--fondo); }
.general { width: auto; max-width: none; margin: 0; background: var(--fondo); min-height: 100vh; display: flex; flex-direction: column; }
.cuerpo { width: auto; float: none; flex: 1 0 auto; display: flex; align-items: stretch; background: transparent; border: 0; }

/* barra lateral */
.col_menu { width: 248px; flex: 0 0 248px; float: none; box-sizing: border-box; background: var(--tinta); padding: 20px 12px 16px; display: flex; flex-direction: column;
  position: sticky; top: 0; height: 100vh; overflow-y: auto; scrollbar-width: thin; scrollbar-color: #2A3B47 transparent; }
.menu_marca { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 0 8px 20px; }
.menu_logo img { display: block; height: 32px; width: auto; }
.menu_toggle { display: none; }
.menu_nav { display: flex; flex-direction: column; gap: 2px; flex: 1 0 auto; }
.menu_negro { text-align: left; background-color: transparent; }
.boton_menu_naranja, .boton_menu_negro, .boton_menu_gris, .boton_menu_azul {
  width: auto; height: auto; background-image: none; background-color: transparent; text-align: left; padding: 0; border: 0; font-family: Manrope, sans-serif; }
a.menu { color: var(--tinta); font-weight: 700; text-decoration: none; }
a.menu:hover { color: var(--verde); text-decoration: none; }
.col_menu a.menu { display: block; position: relative; width: auto !important; margin: 0; color: #C5D0D8; font-size: 14.5px; font-weight: 600; line-height: 1.35; padding: 9px 12px; border-radius: 8px; }
.col_menu a.menu:hover { color: #FFFFFF; background: #1B2D39; }
.col_menu a.menu.activo { color: #FFFFFF; background: var(--verde); }
.col_menu a.menu:focus-visible { outline: 2px solid #8FD3A8; outline-offset: 1px; }
.col_menu .boton_menu_negro a.menu { font-size: 13.5px; font-weight: 500; padding: 7px 12px 7px 24px; color: #DCE4EA; }
.col_menu .boton_menu_negro a.menu::before { content: ""; position: absolute; left: 13px; top: 50%; width: 4px; height: 4px; margin-top: -2px; border-radius: 50%; background: #5E7383; }
.col_menu .boton_menu_gris a.menu { font-size: 13px; font-weight: 500; padding: 5px 12px 5px 36px; color: #A9B7C2; }
.col_menu .boton_menu_negro a.menu.activo, .col_menu .boton_menu_gris a.menu.activo { background: #1B2D39; color: #FFFFFF; box-shadow: inset 3px 0 0 var(--verde); }

/* usuario conectado (abajo de la barra lateral) */
.menu_usuario { width: auto; height: auto; background-image: none; margin: 16px 0 0; padding: 14px 8px 0; border-top: 1px solid #2A3B47; display: flex; align-items: center; gap: 10px; }
.icon_user { float: none; flex: 0 0 32px; width: 32px; height: 32px; border-radius: 50%; background: #2A3B47; color: #FFFFFF; font: 700 14px/32px Manrope, sans-serif; text-align: center; }
.txt_menu_usuario { flex: 1 1 auto; min-width: 0; text-align: left; font-family: Manrope, sans-serif; font-size: 12px; line-height: 1.3; color: #93A4B1; }
.txt_menu_usuario span, .txt_menu_usuario strong { display: block; }
.txt_menu_usuario strong { color: #FFFFFF; font-size: 14px; font-weight: 700; }
a.salir { flex: 0 0 auto; color: #8FD3A8; font-family: Manrope, sans-serif; font-size: 13px; font-weight: 700; text-decoration: none; padding: 6px 10px; border: 1px solid #2E4A3B; border-radius: 8px; }
a.salir:hover { background: #1B2D39; color: #FFFFFF; }
.boton_txiki { width: auto; height: auto; background-image: none; text-align: left; font-family: Manrope, sans-serif; font-size: 13px; padding-top: 4px; }

/* zona central */
.col_centro, .col_centro2 { width: auto; flex: 1 1 auto; min-width: 0; float: none; margin-left: 0; background-color: var(--fondo); display: flex; flex-direction: column; }
.col_centro2 { overflow-x: auto; }
.cabecera_admin { width: auto; height: auto; min-height: 64px; box-sizing: border-box; background: var(--blanco); background-image: none; border: 0; border-bottom: 1px solid var(--linea);
  display: flex; align-items: center; justify-content: space-between; gap: 12px 24px; flex-wrap: wrap; padding: 10px 32px; }
.estoy_en { width: auto; height: auto; background: transparent; border: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 20px; font-family: Manrope, sans-serif; font-size: 14px; color: var(--texto); }
.icon_estoy { display: none; }
.txt_estoy { width: auto; float: none; padding-left: 0; }
.txt_estoy strong { color: var(--tinta); font-weight: 700; }
.capa_desple { width: auto; float: none; padding-left: 0; }
.idiomas { width: auto; float: none; padding: 0; }
.idiomas img { display: none; }
a.menu_inicio { color: var(--verde); font-weight: 700; font-size: 13px; text-decoration: none; padding: 4px 10px; border: 1px solid var(--linea); border-radius: 999px; }
a.menu_inicio:hover { color: var(--verde-osc); border-color: var(--verde); }
.logo_cliente { display: flex; align-items: center; gap: 12px; text-align: right; padding: 0; }
.logo_cliente img { max-height: 36px; max-width: 160px; width: auto; height: auto; }
.nombre_orga { font-family: Manrope, sans-serif; font-size: 14px; font-weight: 600; color: var(--texto); }
.logo_cliente img + .nombre_orga { display: none; }
.contenido { width: auto; flex: 1 0 auto; min-height: 480px; _width: auto; background-color: transparent; padding: 28px 32px 48px; }
.pie { width: auto; background-color: var(--blanco); border: 0; border-top: 1px solid var(--linea); padding: 20px 32px; text-align: center; font-family: Manrope, sans-serif; font-size: 13px; color: var(--texto); clear: both; }
.pie a { color: var(--texto); }
.admin .pie { background: transparent; border-top: 0; padding: 16px 32px 24px 280px; text-align: left; font-size: 12px; color: #7F8F9B; }
.admin p.both { display: none; }

/* ---------- Panel de administracion: inicio ---------- */
.inicio { max-width: 1100px; }
.inicio_titulo { margin: 4px 0 24px; font-family: Sora, Manrope, sans-serif; font-weight: 700; font-size: 28px; line-height: 1.2; letter-spacing: -0.6px; color: var(--tinta); }
.inicio_accesos { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 16px; }
a.inicio_acceso { display: flex; align-items: center; gap: 14px; padding: 18px 20px; background: var(--blanco); border: 1px solid var(--linea); border-radius: 14px; color: var(--tinta); text-decoration: none;
  font-family: Manrope, sans-serif; font-weight: 700; font-size: 16px; box-shadow: 0 1px 2px rgba(16,32,43,0.04); transition: border-color .15s, box-shadow .15s, transform .15s; }
a.inicio_acceso:hover { border-color: var(--verde); box-shadow: 0 8px 20px rgba(16,32,43,0.08); transform: translateY(-1px); color: var(--tinta); }
a.inicio_acceso:focus-visible { outline: 3px solid var(--verde); outline-offset: 2px; }
.inicio_icono { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 12px; background: var(--verde-claro); color: var(--verde); display: flex; align-items: center; justify-content: center; }
.inicio_icono svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.inicio_noticias { margin-top: 32px; display: flex; flex-direction: column; gap: 12px; }
.noticia { background: var(--blanco); border: 1px solid var(--linea); border-left: 4px solid var(--verde); border-radius: 10px; padding: 14px 18px; font-size: 14px; color: var(--texto); }
.noticia_cabecera { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; margin-bottom: 4px; }
.noticia_cabecera strong { color: var(--tinta); font-size: 15px; }
.noticia_cabecera time { font-size: 12px; color: #7F8F9B; }

/* ---------- Panel de administracion: tablas y titulos ---------- */
.contenido table { border-collapse: collapse; max-width: 100%; }
.contenido table[border] { border: 0; }
.contenido td, .contenido th { border-color: var(--linea); }
.titulo_tabla, .titulo_intermedio, .titulo_proceso, .sub_titulo_proceso {
  width: auto; height: auto; background-image: none; background-color: transparent; border: 0; padding: 0 0 12px; text-align: left; text-indent: 0;
  font-family: Sora, Manrope, sans-serif; font-weight: 700; color: var(--tinta); }
.titulo_tabla, .titulo_proceso { font-size: 22px; letter-spacing: -0.4px; }
.titulo_intermedio, .sub_titulo_proceso { font-size: 17px; padding-top: 20px; }
.txt_titu_tabla, .icon_titu_tabla, .txt_cabe_tabla, .txt_cabe_tabla1, .txt_cabe_tabla2, .txt_cabe_tabla3, .txt_cabe_tabla4, .icon_cabe_tabla, .estra_titu_tabla, .estra_titu_tabla_indi, .estra_titu_plan {
  height: auto; background-image: none; background-color: #FFFFFF; color: var(--texto); border: 0; border-bottom: 2px solid var(--tinta); padding: 12px 12px; text-align: left;
  font-family: Manrope, sans-serif; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.6px; }
.txt_titu_tabla, .icon_titu_tabla { font-family: Sora, Manrope, sans-serif; font-size: 17px; text-transform: none; letter-spacing: -0.2px; color: var(--tinta); border-bottom: 0; padding: 20px 12px 8px; }
.icon_titu_tabla, .icon_cabe_tabla, .icon_conten_tabla, .icon_conten_tabla_txiki, .icon_boton_consultas, .icon_boton { width: auto; background-image: none; }
.icon_titu_tabla img, .icon_cabe_tabla img { display: none; }
.txt_conten_tabla, .txt_conten_tabla_txiki, .icon_conten_tabla, .icon_conten_tabla_txiki, .celda_conten_estra, .txt_conten_estra, .txt_plan_anual {
  height: auto; background-color: #FFFFFF; color: var(--tinta); border: 0; border-bottom: 1px solid var(--linea); padding: 12px 12px; text-align: left; font-family: Manrope, sans-serif; font-size: 15px; }
.txt_conten_tabla_txiki, .icon_conten_tabla_txiki { font-size: 14px; padding: 8px 12px; }
.icon_conten_tabla, .icon_conten_tabla_txiki { width: 44px; text-align: center; }
.icon_conten_tabla a, .icon_conten_tabla_txiki a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
.fondo1, .fondo2 { background-color: #FFFFFF; }
.fondo3 { background-color: var(--fondo); }
.fondo4 { background-color: #E9EEF1; }
.fondo5 { background-color: #DCE4E9; }
.estra_verde { background-color: var(--verde-claro); color: var(--verde-osc); text-align: center; font-family: Manrope, sans-serif; font-size: 13px; font-weight: 700; padding: 4px 8px; border-radius: 6px; }
.estra_rojo { background-color: var(--error-claro); color: #8A2114; text-align: center; font-family: Manrope, sans-serif; font-size: 13px; font-weight: 700; padding: 4px 8px; border-radius: 6px; }
.estra_gris { background-color: #E9EEF1; color: #3C4B56; text-align: center; font-family: Manrope, sans-serif; font-size: 13px; font-weight: 700; padding: 4px 8px; border-radius: 6px; }
.f_verde, .f_rojo, .f_azul { border-radius: 6px; }
.c { background-color: #FF7F2A; }

/* ---------- Formularios, consultas y botones enlazados ---------- */
.capa_formu { width: auto; max-width: 760px; text-align: left; }
.txt_formu { text-align: left; font-family: Manrope, sans-serif; font-size: 14px; font-weight: 700; color: var(--tinta); margin: 16px 0 6px; }
.capa_consultas { width: auto; padding: 0 0 16px; text-align: left; font-family: Manrope, sans-serif; font-size: 14px; font-weight: 700; color: var(--tinta); }
.capa_boton { padding: 6px 0; clear: both; text-align: left; display: flex; align-items: center; gap: 8px; }
.icon_boton, .icon_boton_consultas { float: none; width: auto; height: auto; margin-left: 0; padding: 0; background-image: none; }
.icon_boton img, .icon_boton_consultas img { display: none; }
.txt_boton, .txt_boton_consultas { float: none; width: auto; height: auto; background-image: none; padding: 0; }
.txt_boton a, .txt_boton_consultas a, a.boton_consultas {
  display: inline-flex; align-items: center; min-height: 44px; box-sizing: border-box; padding: 8px 18px; border: 1.5px solid var(--borde); border-radius: 10px; background: var(--blanco);
  color: var(--tinta); font-family: Manrope, sans-serif; font-size: 15px; font-weight: 700; text-decoration: none; }
.txt_boton a:hover, .txt_boton_consultas a:hover, a.boton_consultas:hover { border-color: var(--tinta); color: var(--tinta); text-decoration: none; }
.txt_boton_estoy { background-image: none; }
.txt_boton_estoy a { background: var(--verde); border-color: var(--verde); color: var(--blanco); }
.txt_boton_estoy a:hover { background: var(--verde-osc); border-color: var(--verde-osc); color: var(--blanco); }
a.textos { color: var(--verde); text-decoration: underline; }
.txt_navegar { width: auto; min-width: 44px; font-family: Manrope, sans-serif; font-size: 14px; color: var(--texto); text-align: center; padding: 8px; }
.txt_navegar a { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; min-height: 40px; font-weight: 700; }
.txt_procesos { font-family: Manrope, sans-serif; font-size: 14px; color: var(--tinta); text-align: left; padding: 4px; font-weight: 700; }
.estado { width: 100%; max-width: 900px; border-collapse: collapse; font-family: Manrope, sans-serif; font-size: 15px; margin: 24px 0; }
.estado th { color: var(--texto); background-color: var(--blanco); border: 0; border-bottom: 2px solid var(--tinta); padding: 12px; text-align: left; height: auto; font-size: 13px; text-transform: uppercase; letter-spacing: 0.6px; }
.estado td { border: 0; border-bottom: 1px solid var(--linea); height: auto; padding: 12px; width: auto; }
.estado .verde, .estado .rojo { background-color: transparent; text-align: left; font-weight: 700; }
.estado .verde { color: var(--verde-osc); }
.estado .rojo { color: var(--error); }
.estado img { padding-right: 8px; max-height: 20px; }
.estado a { color: var(--verde); }
.estado .visible { text-align: left; font-weight: 700; border: 0; border-bottom: 1px solid var(--linea); }
.estado .oculto { border: 0; text-align: left; }
.table-user-perfil { width: 100%; max-width: 560px; margin: 16px 0; }
.table-user-perfil td { font-size: 15px; padding: 8px 12px 8px 0; }
.table-user-perfil-leftcol { width: 200px; }
.seom_table { width: 100%; max-width: 760px; border-collapse: collapse; empty-cells: show; margin: 20px 0; border: 0; }

/* ---------- Panel de administracion: paginas interiores ----------
   Todo va bajo ".admin .contenido" para ganar a las hojas antiguas que se cargan despues
   (estilos_plan.css y la hoja del cliente, que hace un reset de margenes, bordes y negritas). */
.admin .contenido { font-family: Manrope, system-ui, sans-serif; font-size: 15px; line-height: 1.55; color: var(--tinta); }
.admin .contenido strong, .admin .contenido b { font-weight: 700; }
.admin .contenido p { margin: 0 0 8px; }

/* selector de tipo de destinatario (antes en caja gris) */
.admin .contenido div[style*="#999999"] { background: transparent !important; padding: 0 !important; margin: 0 0 20px !important; float: none !important; }
.admin .contenido div[style*="#999999"] select { min-width: 220px; font-weight: 700; }

/* filtros */
.admin .contenido fieldset { width: fit-content; max-width: 100%; box-sizing: border-box; margin: 0 0 24px; padding: 16px 20px; background: var(--blanco); border: 1px solid var(--linea); border-radius: 14px; }
.admin .contenido fieldset table { border-collapse: collapse; }
.admin .contenido fieldset td { padding: 6px 12px 6px 0; vertical-align: middle; font-size: 14px; font-weight: 600; color: var(--texto); border: 0; }
.admin .contenido fieldset select { min-width: 280px; height: 42px; }
.admin .contenido fieldset input[type=submit] { margin-top: 10px; min-height: 42px; }
.admin .contenido legend { padding: 0 6px; font-size: 13px; font-weight: 700; color: var(--texto); }

/* tablas de datos */
.admin .contenido table:has(.txt_conten_tabla, .icon_conten_tabla, .txt_conten_tabla_txiki) {
  width: auto !important; min-width: min(100%, 640px); max-width: 100%; border-collapse: separate; border-spacing: 0; margin: 0 0 20px; background: var(--blanco); border: 1px solid var(--linea); border-radius: 14px; overflow: hidden; }
.admin .contenido .txt_cabe_tabla, .admin .contenido .icon_cabe_tabla, .admin .contenido .txt_cabe_tabla1, .admin .contenido .txt_cabe_tabla2, .admin .contenido .txt_cabe_tabla3, .admin .contenido .txt_cabe_tabla4 {
  background: #F7F9FA; color: var(--texto); border: 0; border-bottom: 1px solid var(--linea); padding: 12px 14px; text-align: left; vertical-align: bottom; white-space: normal; min-width: 60px;
  font-family: Manrope, sans-serif; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.6px; }
.admin .contenido .icon_cabe_tabla { text-align: center; width: 52px; }
.admin .contenido .txt_cabe_tabla a, .admin .contenido .icon_cabe_tabla a, .admin .contenido a.sortheader { color: inherit; text-decoration: none; font-weight: 700; }
.admin .contenido a.sortheader:hover { color: var(--tinta); }
.admin .contenido .sortarrow img { width: 8px; height: auto; opacity: .45; vertical-align: middle; }
.admin .contenido .txt_conten_tabla, .admin .contenido .icon_conten_tabla, .admin .contenido .txt_conten_tabla_txiki, .admin .contenido .icon_conten_tabla_txiki {
  background: var(--blanco); color: var(--tinta); border: 0; border-bottom: 1px solid var(--linea); padding: 12px 14px; vertical-align: middle; font-size: 15px; font-weight: 400; }
.admin .contenido tr:last-child > .txt_conten_tabla, .admin .contenido tr:last-child > .icon_conten_tabla { border-bottom: 0; }
.admin .contenido .txt_conten_tabla:not(:first-child) { min-width: 72px; }
.admin .contenido tr:hover > .txt_conten_tabla, .admin .contenido tr:hover > .icon_conten_tabla { background: #F6FAF7; }
.admin .contenido .txt_conten_tabla p, .admin .contenido .txt_conten_tabla_txiki p { margin: 0; }
.admin .contenido .txt_conten_tabla > p:first-of-type, .admin .contenido .txt_conten_tabla_txiki > p:first-of-type { display: inline; }
.admin .contenido a.boton_submit, .admin .contenido a.boton_submit:hover { text-decoration: none; color: var(--blanco); }
.admin .contenido .txt_conten_tabla:first-child { font-variant-numeric: tabular-nums; }
.admin .contenido .icon_conten_tabla, .admin .contenido .icon_conten_tabla_txiki { width: 52px; text-align: center; padding: 6px 8px; }
.admin .contenido td.comun { color: var(--verde-osc); background: var(--verde-claro); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .5px; border-radius: 0; }

/* acciones con icono: se sustituyen los gif antiguos */
.admin .contenido .icon_conten_tabla a, .admin .contenido .icon_conten_tabla_txiki a { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; min-width: 0; min-height: 0; border-radius: 8px; border: 1px solid transparent; vertical-align: middle; }
.admin .contenido .icon_conten_tabla a:hover, .admin .contenido .icon_conten_tabla_txiki a:hover { background-color: var(--fondo); border-color: var(--linea); }
.admin .contenido a:has(> img[src*="mod.gif"]), .admin .contenido a:has(> img[src*="bor.gif"]), .admin .contenido a:has(> img[src*="rel.gif"]), .admin .contenido a:has(> img[src*="ikus.gif"]) {
  background-repeat: no-repeat; background-position: center; background-size: 20px 20px; }
.admin .contenido a:has(> img[src*="mod.gif"]) { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310202B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20h4L19 9a2.8 2.8 0 0 0-4-4L4 16v4Z'/%3E%3Cpath d='m13.5 6.5 4 4'/%3E%3C/svg%3E"); }
.admin .contenido a:has(> img[src*="bor.gif"]) { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A32B1B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M10 11v6M14 11v6M6 7l1 12a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2l1-12M9 7V4h6v3'/%3E%3C/svg%3E"); }
.admin .contenido a:has(> img[src*="bor.gif"]):hover { background-color: var(--error-claro); border-color: #F3C9C2; }
.admin .contenido a:has(> img[src*="rel.gif"]) { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310202B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6h11M9 12h11M9 18h11'/%3E%3Ccircle cx='4.5' cy='6' r='1'/%3E%3Ccircle cx='4.5' cy='12' r='1'/%3E%3Ccircle cx='4.5' cy='18' r='1'/%3E%3C/svg%3E"); }
.admin .contenido a:has(> img[src*="ikus.gif"]) { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310202B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12S6 5.5 12 5.5 21.5 12 21.5 12 18 18.5 12 18.5 2.5 12 2.5 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E"); }
.admin .contenido a > img[src*="mod.gif"], .admin .contenido a > img[src*="bor.gif"], .admin .contenido a > img[src*="rel.gif"], .admin .contenido a > img[src*="ikus.gif"] { opacity: 0; width: 20px; height: 20px; }

/* boton "Anadir ..." (tabla con un unico enlace boton_consultas) */
.admin .contenido table:has(a.boton_consultas):not(:has(.txt_conten_tabla)) { width: auto !important; margin: 0 0 16px; background: transparent; border: 0; }
.admin .contenido td:has(> a.boton_consultas) { background: transparent; border: 0; padding: 0; text-transform: none; letter-spacing: 0; }
.admin .contenido td:has(> a.boton_consultas) > img { display: none; }
.admin .contenido a.boton_consultas { gap: 8px; background: var(--verde); border-color: var(--verde); color: var(--blanco); text-transform: none; letter-spacing: 0; font-size: 15px; }
.admin .contenido a.boton_consultas::before { content: "+"; font-size: 20px; line-height: 1; font-weight: 600; }
.admin .contenido a.boton_consultas:hover { background: var(--verde-osc); border-color: var(--verde-osc); color: var(--blanco); }
.admin .contenido .capa_boton a.boton_consultas::before { content: none; }
.admin .contenido .capa_boton a.boton_consultas { background: var(--blanco); border-color: var(--borde); color: var(--tinta); }
.admin .contenido .capa_boton .txt_boton_estoy a.boton_consultas { background: var(--verde); border-color: var(--verde); color: var(--blanco); }

/* barra de acciones (tablas con solo celdas de cabecera que son enlaces, p. ej. Profesores) */
.admin .contenido table:not(:has(.txt_conten_tabla, .icon_conten_tabla, th, a.boton_consultas)):has(td.txt_cabe_tabla > a) { width: auto !important; margin: 0 0 24px; background: transparent; border: 0; }
.admin .contenido table:not(:has(.txt_conten_tabla, .icon_conten_tabla, th, a.boton_consultas)):has(td.txt_cabe_tabla > a) > tbody, .admin .contenido table:not(:has(.txt_conten_tabla, .icon_conten_tabla, th, a.boton_consultas)):has(td.txt_cabe_tabla > a) > tbody > tr { display: flex; flex-wrap: wrap; gap: 10px; }
.admin .contenido table:not(:has(.txt_conten_tabla, .icon_conten_tabla, th, a.boton_consultas)):has(td.txt_cabe_tabla > a) td.txt_cabe_tabla { display: block; background: transparent; border: 0; padding: 0; white-space: normal; }
.admin .contenido table:not(:has(.txt_conten_tabla, .icon_conten_tabla, th, a.boton_consultas)):has(td.txt_cabe_tabla > a) td.txt_cabe_tabla > a { display: inline-flex; align-items: center; min-height: 40px; padding: 8px 16px; border: 1.5px solid var(--borde); border-radius: 10px; background: var(--blanco);
  color: var(--tinta); font-size: 13px; font-weight: 700; letter-spacing: .3px; text-decoration: none; }
.admin .contenido table:not(:has(.txt_conten_tabla, .icon_conten_tabla, th, a.boton_consultas)):has(td.txt_cabe_tabla > a) td.txt_cabe_tabla > a:hover { border-color: var(--tinta); background: var(--fondo); }
.admin .contenido table:not(:has(.txt_conten_tabla, .icon_conten_tabla, th, a.boton_consultas)):has(td.txt_cabe_tabla > a) td.txt_cabe_tabla > a[href*="importar"] { background: var(--verde); border-color: var(--verde); color: var(--blanco); }
.admin .contenido table:not(:has(.txt_conten_tabla, .icon_conten_tabla, th, a.boton_consultas)):has(td.txt_cabe_tabla > a) td.txt_cabe_tabla > a[href*="importar"]:hover { background: var(--verde-osc); border-color: var(--verde-osc); }
.admin .contenido table:not(:has(.txt_conten_tabla, .icon_conten_tabla, th, a.boton_consultas)):has(td.txt_cabe_tabla > a) td.txt_cabe_tabla > a[href*="borrar"] { border-color: #E2A79D; color: var(--error); }
.admin .contenido table:not(:has(.txt_conten_tabla, .icon_conten_tabla, th, a.boton_consultas)):has(td.txt_cabe_tabla > a) td.txt_cabe_tabla > a[href*="borrar"]:hover { background: var(--error-claro); border-color: var(--error); }

/* boton "Ord." (ordenar): fila final de la tabla y enlaces sueltos */
.admin .contenido tr:has(> td > a.boton_submit) > td { background: transparent; border: 0; padding: 12px 14px; text-align: left; }
.admin .contenido tr:has(+ tr > td > a.boton_submit) > td { border-bottom: 1px solid var(--linea) !important; }
.admin .contenido tr:has(> td > a.boton_submit) > td:not(:has(a)) { display: none; }
.admin .contenido tr:has(> td > a.boton_submit):hover > td { background: transparent; }
.admin .contenido tr:has(> td > a.boton_submit) > td > br { display: none; }
.admin .contenido a.boton_submit[href*="ordenar.php"] { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 6px 14px 6px 34px; margin: 0;
  background: var(--blanco) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310202B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 4v16M7 20l-3-3M7 20l3-3M17 20V4M17 4l-3 3M17 4l3 3'/%3E%3C/svg%3E") no-repeat 12px center / 16px 16px; border: 1px solid var(--borde); border-radius: 8px; color: var(--tinta); font-size: 14px; font-weight: 700; }
.admin .contenido a.boton_submit[href*="ordenar.php"]:hover { border-color: var(--tinta); background-color: var(--fondo); color: var(--tinta); }

/* formularios de alta (todos llevan el campo oculto "meter") */
.admin .contenido form:has(input[name="meter"]) { box-sizing: border-box; max-width: 760px; margin: 28px 0 16px; padding: 22px 24px 24px; background: var(--blanco); border: 1px solid var(--linea); border-radius: 14px;
  font-size: 14px; font-weight: 600; color: var(--tinta); line-height: 1.5; }
.admin .contenido form:has(input[name="meter"]) input[type=text], .admin .contenido form:has(input[name="meter"]) select { width: 100%; max-width: 440px; margin: 6px 0 4px; font-weight: 400; }
.admin .contenido form:has(input[name="meter"]) input[type=text][size="2"], .admin .contenido form:has(input[name="meter"]) input[type=text][size="10"] { width: 120px; }
.admin .contenido form:has(input[name="meter"]) textarea { margin: 6px 0 4px; font-weight: 400; }
.admin .contenido form:has(input[name="meter"]) input[type=checkbox], .admin .contenido form:has(input[name="meter"]) input[type=radio] { margin-right: 6px; vertical-align: middle; }
.admin .contenido form:has(input[name="meter"]) input[type=submit] { display: block; margin-top: 14px; }
.admin .contenido form:has(input[name="meter"]) table { margin: 8px 0; }

/* formulario de alta al pie de las paginas (ancla #add) */
.admin .contenido a[name="add"] + b { display: block; margin: 8px 0 0; padding-top: 8px; font-family: Sora, Manrope, sans-serif; font-size: 20px; letter-spacing: -0.3px; }
.admin .contenido form textarea { width: 100%; max-width: 760px; }
.admin .contenido form input.texto[size="2"] { width: 80px; }
.admin .contenido .cke { max-width: 760px; border-radius: 10px; overflow: hidden; }

/* ---------- Utilidades ---------- */
.private { color: var(--error); }
.bold { font-weight: 700; }
.center, .centrado { text-align: center; }
.left { text-align: left; }
.right { text-align: right; }
.div-left { float: left; }
.no-border { border: 0; }
.collapse { border-collapse: collapse; }
.empty_cells { empty-cells: show; }
.border-bottom-grey { border-bottom: 1px solid var(--linea); }
.centrar { margin-left: 0; }
.min-width { min-width: 100px; }
.width-combo-min { width: 72px; }
.width-combo-med { width: 140px; }
.width-combo-max { width: 260px; }
.width-combo-extra { width: 100%; max-width: 460px; }
.select-tipo-min-width { width: 90px; }
.w100 { width: 100px; }
.w200 { width: 200px; }
.pd5 { padding: 5px; }
.pd10 { padding: 10px; }
.pd20 { padding: 20px; }
.pd30 { padding: 30px; }
.font_9px { font-size: 13px; }
.tam_letra_txiki { font-size: 13px; }
.lista-preg-mini { font-size: 14px; }
.ancho_1em { padding: 10px 4px; width: 1.5em; }
.car_button { margin: 24px 0; }
.ver_div_preg { margin-bottom: 24px; }
.comun { color: #FFFFFF; background-color: var(--verde); font-size: 13px; border-radius: 6px; padding: 2px 8px; }
.bg_red { background-color: var(--error); }
.bg_buscador_preguntas { background-color: var(--fondo); }

@media (max-width: 900px) {
  .cuerpo { display: block; }
  .col_menu { width: auto; flex: none; position: static; height: auto; padding: 12px 16px; }
  .menu_marca { padding: 0; }
  .menu_toggle { display: inline-flex; align-items: center; min-height: 40px; padding: 6px 14px; background: #1B2D39; border: 1px solid #2A3B47; border-radius: 8px; color: #FFFFFF; font: 700 14px Manrope, sans-serif; }
  .menu_toggle:hover { background: #2A3B47; border-color: #2A3B47; }
  .col_menu .menu_nav, .col_menu .menu_usuario { display: none; }
  .col_menu.abierto .menu_nav { display: flex; padding-top: 12px; }
  .col_menu.abierto .menu_usuario { display: flex; }
  .col_menu a.menu { padding-top: 11px; padding-bottom: 11px; }
  .contenido { padding: 20px 16px 32px; }
  .cabecera_admin { padding: 10px 16px; }
  .nombre_orga { display: none; }
  .pie { padding: 20px 16px; }
  .admin .pie { padding: 16px; }
  .admin .contenido table:has(.txt_conten_tabla, .icon_conten_tabla, .txt_conten_tabla_txiki) { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .admin .contenido .txt_conten_tabla { min-width: 140px; }
  .admin .contenido .txt_conten_tabla:first-child { min-width: 0; }
  .admin .contenido fieldset { width: auto; padding: 14px 16px; }
  .admin .contenido fieldset table, .admin .contenido fieldset tbody, .admin .contenido fieldset tr, .admin .contenido fieldset td { display: block; width: 100%; }
  .admin .contenido fieldset td { padding: 4px 0; }
  .admin .contenido fieldset select { min-width: 0; width: 100%; }
  .inicio_titulo { font-size: 24px; }
  .inicio_accesos { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }
  a.inicio_acceso { padding: 14px; gap: 10px; font-size: 15px; }
  .inicio_icono { flex-basis: 38px; width: 38px; height: 38px; border-radius: 10px; }
}

/* =====================================================================
   Rediseño 2026 · version "color" (misma linea que las paginas del encuestado)
   Barra lateral clara, cabecera con degradado de marca, tablas con acentos de color
   y pestañas por tipo de encuestado. Va al final para sobrescribir lo anterior.
   ===================================================================== */
:root { --ink-grad: linear-gradient(120deg, #0B7A3B 0%, #12985A 55%, #14A38F 100%); --ink-azul: #2F7DE1; --ink-naranja: #F29A0E; --ink-coral: #E8543F; --ink-turquesa: #14A38F; }
body.admin, .admin .general { background: #F2F6F4; }

/* barra lateral clara */
.col_menu { background: #FFFFFF; border-right: 1px solid #E3ECE7; box-shadow: 4px 0 24px -16px rgba(11,122,59,0.35); scrollbar-color: #CFE3D7 transparent; }
.menu_marca { padding: 4px 8px 22px; }
.menu_logo img { height: 34px; }
.col_menu a.menu { color: var(--tinta); font-size: 14.5px; font-weight: 700; padding: 10px 12px 10px 40px; border-radius: 10px; }
.col_menu .boton_menu_naranja a.menu::before { content: ""; position: absolute; left: 12px; top: 50%; width: 14px; height: 14px; margin-top: -7px; border-radius: 5px; background: var(--dot, var(--verde)); }
.col_menu .boton_menu_naranja:nth-child(5n+1 of .boton_menu_naranja) { --dot: #0B7A3B; --dot-bg: #E9F7EF; }
.col_menu .boton_menu_naranja:nth-child(5n+2 of .boton_menu_naranja) { --dot: #2F7DE1; --dot-bg: #EAF2FD; }
.col_menu .boton_menu_naranja:nth-child(5n+3 of .boton_menu_naranja) { --dot: #F29A0E; --dot-bg: #FFF5E3; }
.col_menu .boton_menu_naranja:nth-child(5n+4 of .boton_menu_naranja) { --dot: #E8543F; --dot-bg: #FDEDEA; }
.col_menu .boton_menu_naranja:nth-child(5n+5 of .boton_menu_naranja) { --dot: #14A38F; --dot-bg: #E6F7F4; }
.col_menu .boton_menu_naranja a.menu:hover { color: var(--tinta); background: var(--dot-bg, #E9F7EF); }
.col_menu .boton_menu_naranja a.menu.activo { color: #FFFFFF; background: var(--ink-grad); box-shadow: 0 8px 18px -8px rgba(11,122,59,0.7); }
.col_menu .boton_menu_naranja a.menu.activo::before { background: rgba(255,255,255,0.35); }
.col_menu .boton_menu_negro a.menu { color: #3C4B56; font-size: 13.5px; font-weight: 600; padding: 7px 12px 7px 40px; }
.col_menu .boton_menu_negro a.menu::before { left: 20px; width: 6px; height: 6px; margin-top: -3px; background: #9DB8A8; }
.col_menu .boton_menu_negro a.menu:hover { color: var(--verde-osc); background: #F0F7F3; }
.col_menu .boton_menu_gris a.menu { color: #5A6B77; font-size: 13px; font-weight: 500; padding: 5px 12px 5px 52px; }
.col_menu .boton_menu_gris a.menu:hover { color: var(--verde-osc); background: #F0F7F3; }
.col_menu .boton_menu_negro a.menu.activo, .col_menu .boton_menu_gris a.menu.activo { background: #E9F7EF; color: var(--verde-osc); font-weight: 700; box-shadow: inset 3px 0 0 var(--verde); }
.col_menu .boton_menu_negro a.menu.activo::before { background: var(--verde); }
.col_menu a.menu:focus-visible { outline: 2px solid var(--verde); }
.menu_usuario { border-top: 1px solid #E3ECE7; }
.icon_user { background: var(--ink-grad); }
.txt_menu_usuario { color: var(--texto); }
.txt_menu_usuario strong { color: var(--tinta); }
a.salir { color: var(--verde-osc); border-color: #BFDCCB; }
a.salir:hover { background: #E9F7EF; color: var(--verde-osc); }

/* cabecera con degradado de marca */
.cabecera_admin { position: relative; overflow: hidden; min-height: 76px; padding: 14px 32px; border-bottom: 0; color: #FFFFFF;
  background: radial-gradient(circle at 96% -30%, rgba(255,255,255,0.18) 0 90px, transparent 91px), radial-gradient(circle at 86% 120%, #F7B23B 0 30px, transparent 31px), var(--ink-grad); }
.estoy_en, .txt_estoy { color: rgba(255,255,255,0.85); }
.txt_estoy strong { color: #FFFFFF; font-family: Sora, Manrope, sans-serif; font-size: 17px; letter-spacing: -0.2px; }
a.menu_inicio { color: #FFFFFF; border-color: rgba(255,255,255,0.45); background: rgba(255,255,255,0.12); }
a.menu_inicio:hover { color: var(--verde-osc); background: #FFFFFF; border-color: #FFFFFF; }
.nombre_orga { color: #FFFFFF; font-weight: 700; }
.logo_cliente img { background: #FFFFFF; border-radius: 8px; padding: 4px 8px; }
.admin .pie { color: #7F8F9B; }

/* pestañas por tipo de encuestado (antes un desplegable suelto) */
.admin .contenido .ink-tipos { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; width: fit-content; max-width: 100%; box-sizing: border-box; margin: 0 0 18px; padding: 10px 12px 10px 18px;
  background: #FFFFFF; border: 1px solid #E3ECE7; border-radius: 16px; box-shadow: 0 6px 18px -12px rgba(11,122,59,0.45); }
.admin .contenido .ink-tipos + br, .admin .contenido .ink-tipos + br + br { display: none; }
/* fila de cabecera vacia (sin ningun texto) al principio de algunas tablas */
.admin .contenido tr:has(> td.txt_cabe_tabla:empty):not(:has(> td.txt_cabe_tabla:not(:empty))) { display: none; }
.admin .contenido .ink-tipos-etiqueta { font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--texto); }
.admin .contenido .ink-tipos-lista { display: flex; flex-wrap: wrap; gap: 6px; }
.admin .contenido a.ink-tipo { --t: #0B7A3B; --t-bg: #E9F7EF; display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 6px 16px 6px 12px; border-radius: 999px; background: var(--t-bg);
  color: var(--t); font-size: 14px; font-weight: 700; text-decoration: none; border: 1.5px solid transparent; transition: transform .12s, box-shadow .12s; }
.admin .contenido a.ink-tipo::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--t); }
.admin .contenido a.ink-tipo:nth-child(5n+2) { --t: #1F5FA8; --t-bg: #EAF2FD; }
.admin .contenido a.ink-tipo:nth-child(5n+3) { --t: #A9650B; --t-bg: #FFF5E3; }
.admin .contenido a.ink-tipo:nth-child(5n+4) { --t: #B83A26; --t-bg: #FDEDEA; }
.admin .contenido a.ink-tipo:nth-child(5n+5) { --t: #0B6E61; --t-bg: #E6F7F4; }
.admin .contenido a.ink-tipo:hover { border-color: var(--t); transform: translateY(-1px); }
.admin .contenido a.ink-tipo.activo { background: var(--t); color: #FFFFFF; box-shadow: 0 8px 16px -8px var(--t); }
.admin .contenido a.ink-tipo.activo::before { background: #FFFFFF; }
/* el selector antiguo, por si alguna pagina aun lo pinta: integrado en una barra blanca */
.admin .contenido div[style*="#999999"] { display: flex; align-items: center; width: fit-content; padding: 8px 10px !important; background: #FFFFFF !important; border: 1px solid #E3ECE7; border-radius: 14px; box-shadow: 0 6px 18px -12px rgba(11,122,59,0.45); }

/* tablas con cabecera de color */
.admin .contenido table:has(.txt_conten_tabla, .icon_conten_tabla, .txt_conten_tabla_txiki) { border-color: #E3ECE7; border-radius: 16px; box-shadow: 0 10px 28px -18px rgba(11,122,59,0.5); }
.admin .contenido .txt_cabe_tabla, .admin .contenido .icon_cabe_tabla, .admin .contenido .txt_cabe_tabla1, .admin .contenido .txt_cabe_tabla2, .admin .contenido .txt_cabe_tabla3, .admin .contenido .txt_cabe_tabla4 {
  background: #E9F7EF; color: var(--verde-osc); border-bottom: 2px solid #BFDCCB; }
.admin .contenido tr:first-child > td.txt_cabe_tabla:only-child:empty, .admin .contenido tr:has(> td.txt_cabe_tabla) + tr:has(> td.txt_cabe_tabla) > td { border-top: 0; }
.admin .contenido tr:hover > .txt_conten_tabla, .admin .contenido tr:hover > .icon_conten_tabla { background: #F3FAF6; }
.admin .contenido .txt_conten_tabla:first-child { color: var(--verde-osc); font-weight: 700; }
.admin .contenido a:has(> img[src*="mod.gif"]) { background-color: #E9F7EF; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B7A3B' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20h4L19 9a2.8 2.8 0 0 0-4-4L4 16v4Z'/%3E%3Cpath d='m13.5 6.5 4 4'/%3E%3C/svg%3E"); border-radius: 10px; }
.admin .contenido a:has(> img[src*="mod.gif"]):hover { background-color: #CFEBDB; border-color: #BFDCCB; }
.admin .contenido a:has(> img[src*="bor.gif"]) { background-color: #FDEDEA; border-radius: 10px; }
.admin .contenido a:has(> img[src*="bor.gif"]):hover { background-color: #F8D3CC; }
.admin .contenido a:has(> img[src*="rel.gif"]), .admin .contenido a:has(> img[src*="ikus.gif"]) { background-color: #EAF2FD; border-radius: 10px; }

/* titulos y botones */
.titulo_tabla, .titulo_proceso { color: var(--verde-osc); }
.admin .contenido a.boton_consultas, input[type=submit], .boton_submit { background: var(--ink-grad); border-color: transparent; box-shadow: 0 8px 18px -10px rgba(11,122,59,0.8); }
.admin .contenido a.boton_consultas:hover, input[type=submit]:hover { background: linear-gradient(120deg, #075A2B, #0B7A3B 60%, #0B6E61); }
.admin .contenido form:has(input[name="meter"]) { border-color: #E3ECE7; border-top: 4px solid var(--ink-naranja); border-radius: 16px; box-shadow: 0 10px 28px -18px rgba(11,122,59,0.5); }
.admin .contenido fieldset { border-color: #E3ECE7; border-radius: 16px; box-shadow: 0 6px 18px -12px rgba(11,122,59,0.45); }

/* inicio: tarjetas de acceso con icono de color */
a.inicio_acceso { border-color: #E3ECE7; box-shadow: 0 6px 18px -14px rgba(11,122,59,0.5); }
a.inicio_acceso:nth-child(5n+1) .inicio_icono { background: #E9F7EF; color: #0B7A3B; }
a.inicio_acceso:nth-child(5n+2) .inicio_icono { background: #EAF2FD; color: #2F7DE1; }
a.inicio_acceso:nth-child(5n+3) .inicio_icono { background: #FFF5E3; color: #D98200; }
a.inicio_acceso:nth-child(5n+4) .inicio_icono { background: #FDEDEA; color: #E8543F; }
a.inicio_acceso:nth-child(5n+5) .inicio_icono { background: #E6F7F4; color: #14A38F; }
.inicio_titulo { color: var(--verde-osc); }
.noticia { border-left-color: var(--ink-naranja); }

@media (max-width: 900px) {
  .col_menu { box-shadow: none; border-right: 0; border-bottom: 1px solid #E3ECE7; }
  .menu_toggle { background: var(--ink-grad); border-color: transparent; }
  .menu_toggle:hover { background: var(--verde-osc); border-color: transparent; }
}
