/* Thot Creative · © 2026 Webs Creative LLC · Todos los derechos reservados */
/* Cumplimiento: cabecera y secciones, piezas comunes (estado, nivel de riesgo, revisión, avisos, chips), y las pantallas
   de prevención del blanqueo, despacho, reservado y ajustes (C1). Debajo de la línea marcada, lo de firmas y protección
   de datos (C2). Colores siempre de las variables --gc-* (tema, acento y efectos); --c es el color de cada pieza. */

/* ================================================================ piezas comunes */
.gc-cum { min-width: 0; }
.gc-cum-cabecera .gc-cabecera { margin-bottom: 16px; }
.gc-cum-nav {
  position: relative; display: flex; gap: 4px; padding: 4px; margin: 0 0 20px; overflow-x: auto; scrollbar-width: none; border-radius: var(--gc-radio-l);
  background: var(--gc-cristal); border: 1px solid var(--gc-borde); box-shadow: var(--gc-sombra-s);
  -webkit-backdrop-filter: blur(var(--gc-cristal-desenfoque)); backdrop-filter: blur(var(--gc-cristal-desenfoque));
}
.gc-cum-nav::-webkit-scrollbar { display: none; }
.gc-cum-nav a {
  position: relative; flex: none; display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px; border-radius: var(--gc-radio);
  color: var(--gc-texto-suave); font-weight: 600; font-size: var(--gc-t-s); text-decoration: none !important; white-space: nowrap; transition: background var(--gc-rapido), color var(--gc-rapido), box-shadow var(--gc-normal);
}
.gc-cum-nav a .gc-i { width: 16px; height: 16px; }
.gc-cum-nav a:hover { background: var(--gc-hover); color: var(--gc-texto); }
.gc-cum-nav a[aria-current="page"] {
  color: var(--gc-texto);
  background: linear-gradient(135deg, color-mix(in srgb, var(--gc-naranja) 20%, var(--gc-superficie-2)), color-mix(in srgb, var(--gc-violeta) 9%, var(--gc-superficie-2)));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 0 0 1px color-mix(in srgb, var(--gc-naranja) 38%, transparent), 0 10px 24px -14px var(--gc-naranja);
}
.gc-cum-nav a[aria-current="page"] .gc-i { color: var(--gc-enlace); filter: drop-shadow(0 0 6px color-mix(in srgb, var(--gc-naranja) 70%, transparent)); }
.gc-cum-contador {
  display: inline-grid; place-items: center; min-width: 19px; height: 19px; padding: 0 6px; border-radius: 99px; font-size: 11px; font-weight: 700; color: var(--gc-sobre-color);
  background: var(--gc-aviso); box-shadow: 0 0 10px color-mix(in srgb, var(--gc-aviso) 60%, transparent);
}

/* Icono en relieve: baldosa brillante con el color de --c y una inclinación 3D fija. */
.gc-cum-orbe {
  flex: none; width: 44px; height: 44px; border-radius: 14px; display: inline-grid; place-items: center; color: var(--gc-tinta-c, #0B0D10);
  background: radial-gradient(110% 80% at 30% 0%, rgba(255, 255, 255, .45), transparent 52%),
    linear-gradient(155deg, color-mix(in srgb, var(--c, var(--gc-naranja)) 78%, #fff), var(--c, var(--gc-naranja)) 48%, color-mix(in srgb, var(--c, var(--gc-naranja)) 55%, #000));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .42), inset 0 -2px 0 rgba(0, 0, 0, .14), 0 12px 24px -12px color-mix(in srgb, var(--c, var(--gc-naranja)) 85%, transparent);
  transform: perspective(380px) rotateX(8deg) rotateY(-10deg);
}
.gc-cum-orbe .gc-i { width: 22px; height: 22px; filter: drop-shadow(0 2px 3px rgba(0, 0, 0, .3)); }
.gc-cum-orbe--s { width: 32px; height: 32px; border-radius: 10px; }
.gc-cum-orbe--s .gc-i { width: 17px; height: 17px; }
.gc-cum-orbe--l { width: 58px; height: 58px; border-radius: 18px; }
.gc-cum-orbe--l .gc-i { width: 27px; height: 27px; }

.gc-cum-bloque { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.gc-cum-bloque__titulo { display: flex; align-items: center; gap: 12px; margin: 0; font-family: var(--gc-fuente-titulos); font-size: var(--gc-t-m); font-weight: 600; letter-spacing: -.01em; min-width: 0; }
.gc-cum-bloque__titulo .gc-boton { font-family: var(--gc-fuente); }
.gc-cum-bloque__texto { margin: -4px 0 0; font-size: var(--gc-t-s); line-height: 1.5; color: var(--gc-texto-suave); }
.gc-cum-rotulo { display: block; margin: 0; font-size: 10.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gc-texto-tenue); }
.gc-cum-xs { font-size: var(--gc-t-xs); }
.gc-cum-nota { display: flex; gap: 8px; align-items: flex-start; margin: 0; font-size: var(--gc-t-xs); line-height: 1.5; color: var(--gc-texto-suave); }
.gc-cum-nota > .gc-i { flex: none; width: 14px; height: 14px; margin-top: 2px; }
.gc-cum-nada { display: flex; align-items: center; gap: 6px; margin: 0; font-size: var(--gc-t-s); line-height: 1.5; color: var(--gc-texto-suave); }
.gc-cum-nada .gc-i { width: 15px; height: 15px; flex: none; }
.gc-cum-enlace { display: inline-flex; align-items: center; gap: 6px; color: var(--gc-texto); font-weight: 600; text-decoration: none !important; }
.gc-cum-enlace:hover { color: var(--gc-enlace); }
.gc-cum-enlace .gc-i { width: 15px; height: 15px; color: var(--gc-enlace); }
.gc-cum-dos-lineas { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; line-height: 1.35; }

.gc-cum-aviso { --c: var(--gc-info); display: flex; gap: 10px; align-items: center; padding: 10px 14px; border-radius: var(--gc-radio); font-size: var(--gc-t-s); line-height: 1.45;
  background: color-mix(in srgb, var(--c) 10%, transparent); border: 1px solid color-mix(in srgb, var(--c) 30%, transparent); color: var(--gc-texto); }
.gc-cum-aviso > .gc-i { color: var(--gc-texto-c); flex: none; align-self: flex-start; margin-top: 2px; }
.gc-cum-aviso a { font-weight: 600; }
.gc-cum-aviso__titulo { display: block; margin-bottom: 2px; }
.gc-cum-aviso--peligro { --c: var(--gc-peligro); } .gc-cum-aviso--aviso { --c: var(--gc-aviso); } .gc-cum-aviso--cian { --c: var(--gc-cian); }
.gc-cum-aviso--violeta { --c: var(--gc-violeta); } .gc-cum-aviso--exito { --c: var(--gc-exito); } .gc-cum-aviso--info { --c: var(--gc-info); }
.gc-cum-aviso > .gc-boton { flex: none; }
.gc-modal .gc-cum-aviso { margin-top: 12px; }
.gc-modal .gc-formulario > .gc-cum-aviso { margin-top: 0; }

.gc-cum-chip {
  display: inline-flex; align-items: center; gap: 6px; max-width: 100%; padding: 3px 10px; border-radius: 999px; font-size: var(--gc-t-xs); font-weight: 600;
  color: var(--gc-texto-suave); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde); white-space: nowrap;
}
.gc-cum-chip .gc-i { width: 13px; height: 13px; flex: none; }
.gc-cum-chip--aviso { color: var(--gc-aviso); border-color: color-mix(in srgb, var(--gc-aviso) 40%, var(--gc-borde)); background: color-mix(in srgb, var(--gc-aviso) 10%, transparent); }
.gc-cum-chip--exito { color: var(--gc-exito); border-color: color-mix(in srgb, var(--gc-exito) 40%, var(--gc-borde)); background: color-mix(in srgb, var(--gc-exito) 10%, transparent); }
.gc-cum-chip--peligro { color: var(--gc-peligro); border-color: color-mix(in srgb, var(--gc-peligro) 40%, var(--gc-borde)); background: color-mix(in srgb, var(--gc-peligro) 10%, transparent); }
.gc-cum-chip--info { color: var(--gc-info); border-color: color-mix(in srgb, var(--gc-info) 40%, var(--gc-borde)); background: color-mix(in srgb, var(--gc-info) 10%, transparent); }
.gc-cum-chip--violeta { color: var(--gc-violeta); border-color: color-mix(in srgb, var(--gc-violeta) 40%, var(--gc-borde)); background: color-mix(in srgb, var(--gc-violeta) 10%, transparent); }
.gc-cum-chip--naranja { color: var(--gc-enlace); border-color: color-mix(in srgb, var(--gc-naranja) 40%, var(--gc-borde)); background: color-mix(in srgb, var(--gc-naranja) 10%, transparent); }
.gc-cum-chip--mono { font-family: var(--gc-fuente-mono); font-weight: 500; }
.gc-cum-chips { display: flex; flex-wrap: wrap; gap: 6px; min-width: 0; }
.gc-cum-campos-dos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }

/* Estado del expediente: icono + palabra con el color del estado. */
.gc-cum-estado { --c: var(--gc-texto-tenue); display: inline-flex; align-items: center; gap: 6px; max-width: 100%; padding: 3px 10px 3px 8px; border-radius: 999px;
  font-size: var(--gc-t-xs); font-weight: 700; white-space: nowrap; color: var(--gc-texto-c);
  background: color-mix(in srgb, var(--c) 13%, transparent); border: 1px solid color-mix(in srgb, var(--c) 32%, transparent); }
.gc-cum-estado .gc-i { width: 13px; height: 13px; flex: none; }
.gc-cum-estado--grande { padding: 6px 14px 6px 10px; font-size: var(--gc-t-s); }
.gc-cum-estado--grande .gc-i { width: 17px; height: 17px; }

/* Nivel de riesgo: tres barras de altura creciente (una, dos o tres llenas) y la palabra. */
.gc-cum-nivel { --c: var(--gc-texto-tenue); display: inline-flex; align-items: center; gap: 8px; font-size: var(--gc-t-xs); font-weight: 700; white-space: nowrap; color: var(--gc-texto-c); }
.gc-cum-nivel__barras { display: inline-flex; align-items: flex-end; gap: 2px; height: 14px; }
.gc-cum-nivel__barras i { display: block; width: 4px; border-radius: 2px; background: color-mix(in srgb, var(--gc-texto-tenue) 30%, transparent); }
.gc-cum-nivel__barras i:nth-child(1) { height: 6px; } .gc-cum-nivel__barras i:nth-child(2) { height: 10px; } .gc-cum-nivel__barras i:nth-child(3) { height: 14px; }
.gc-cum-nivel__barras i.llena { background: var(--c); box-shadow: 0 0 6px color-mix(in srgb, var(--c) 55%, transparent); }
.gc-cum-nivel--sin { font-weight: 600; color: var(--gc-texto-suave); }

/* Próxima revisión: semáforo + fecha + días. */
.gc-cum-revision { --c: var(--gc-texto-tenue); display: inline-flex; align-items: center; gap: 9px; min-width: 0; }
.gc-cum-revision > .gc-i { width: 15px; height: 15px; color: var(--gc-texto-c); flex: none; }
.gc-cum-revision__texto { display: flex; flex-direction: column; min-width: 0; line-height: 1.3; }
.gc-cum-revision__texto b { font-size: var(--gc-t-s); }
.gc-cum-revision__texto small { font-size: var(--gc-t-xs); color: var(--gc-texto-c); }
.gc-cum-revision__texto small.gc-cum-revision__que { color: var(--gc-texto-tenue); overflow-wrap: anywhere; }
.gc-cum-revision__texto small.gc-cum-revision__que--anticipada { color: var(--gc-texto-suave); font-weight: 600; }

/* Elegir un documento de Documentos. */
.gc-cum-elegir-lista { display: flex; flex-direction: column; gap: 6px; margin-top: 12px; max-height: 50vh; overflow: auto; }
.gc-cum-elegir { display: flex; align-items: center; gap: 12px; width: 100%; padding: 10px 12px; border-radius: var(--gc-radio); border: 1px solid var(--gc-borde); background: var(--gc-superficie-2);
  color: var(--gc-texto); text-align: left; cursor: pointer; transition: border-color var(--gc-rapido), background var(--gc-rapido); }
.gc-cum-elegir:hover:not(:disabled) { border-color: var(--gc-naranja); background: var(--gc-hover); }
.gc-cum-elegir--actual { border-color: var(--gc-exito); }
.gc-cum-elegir > .gc-i { flex: none; width: 16px; height: 16px; color: var(--gc-texto-tenue); }

/* Visor de documentos y «comunicación recibida». */
.gc-cum-visor { height: min(70vh, 780px); contain: inline-size; min-width: 0; }
.gc-cum-visor .gc-visor-pdf { height: 100%; }
.gc-cum-imagen { display: block; max-width: 100%; max-height: 70vh; margin: 0 auto; border-radius: var(--gc-radio); }
.gc-cum-recibida { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 18px 8px 8px; text-align: center; }
.gc-cum-recibida b { font-family: var(--gc-fuente-titulos); font-size: var(--gc-t-l); }
.gc-cum-recibida p { margin: 0; max-width: 46ch; line-height: 1.5; }
.gc-cum-enlace--boton { padding: 0; border: 0; background: none; cursor: pointer; font-size: var(--gc-t-xs); align-self: flex-start; }
.gc-cum-bloque__cabecera { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.gc-cum-aviso--enlace { text-decoration: none !important; transition: border-color var(--gc-rapido), box-shadow var(--gc-normal), transform var(--gc-rapido); }
.gc-cum-aviso--enlace:hover { border-color: var(--c); box-shadow: 0 12px 26px -18px var(--c); transform: translateY(-1px); }
.gc-cum-limite { flex: none; padding: 3px 9px; border-radius: 99px; font-size: var(--gc-t-xs); font-weight: 700; color: var(--c, var(--gc-info)); white-space: nowrap;
  background: color-mix(in srgb, var(--c, var(--gc-info)) 12%, transparent); border: 1px solid color-mix(in srgb, var(--c, var(--gc-info)) 30%, transparent); }
.gc-cum-datos { display: flex; flex-direction: column; gap: 0; margin: 0; }
.gc-cum-datos > div { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 7px 0; border-bottom: 1px dashed var(--gc-borde); font-size: var(--gc-t-s); }
.gc-cum-datos > div:last-child { border-bottom: 0; }
.gc-cum-datos dt { color: var(--gc-texto-suave); min-width: 0; }
.gc-cum-datos dd { margin: 0; font-weight: 700; text-align: right; min-width: 0; overflow-wrap: anywhere; }

/* ================================================================ resumen */
.gc-cum-boton-comunicar { border-color: color-mix(in srgb, var(--gc-peligro) 45%, var(--gc-borde)); }
.gc-cum-boton-comunicar .gc-i { color: var(--gc-peligro); }
.gc-cum-resumen > .gc-cum-aviso { margin-bottom: 16px; }
.gc-cum-seccion { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; margin: 4px 0 12px; font-family: var(--gc-fuente-titulos); font-size: var(--gc-t-m); font-weight: 600; letter-spacing: -.01em; }
.gc-cum-seccion > .gc-i { width: 18px; height: 18px; color: var(--gc-enlace); align-self: center; }
.gc-cum-seccion small { font-family: var(--gc-fuente); font-size: var(--gc-t-xs); font-weight: 500; }
.gc-cum-kpis { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 14px; margin-bottom: 22px; }
.gc-cum-kpis--cuatro { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gc-cum-kpis .gc-kpi__cabecera span:last-child { overflow-wrap: anywhere; }
.gc-cum-resumen__rejilla { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 18px; align-items: start; }
.gc-cum-resumen__lateral { display: flex; flex-direction: column; gap: 18px; min-width: 0; }
.gc-cum-obligaciones { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.gc-cum-obligacion { display: flex; align-items: center; gap: 12px; padding: 9px 8px; border-radius: 10px; border-bottom: 1px dashed var(--gc-borde); color: var(--gc-texto); text-decoration: none !important; min-width: 0; }
.gc-cum-obligaciones li:last-child .gc-cum-obligacion { border-bottom: 0; }
a.gc-cum-obligacion:hover { background: var(--gc-hover); }
.gc-cum-obligacion__icono { flex: none; width: 30px; height: 30px; border-radius: 10px; display: grid; place-items: center; color: var(--gc-texto-c); background: color-mix(in srgb, var(--c) 14%, transparent);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--c) 30%, transparent); }
.gc-cum-obligacion__icono .gc-i { width: 16px; height: 16px; }
.gc-cum-obligacion__cuerpo { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; font-size: var(--gc-t-s); }
.gc-cum-obligacion__cuerpo b { font-weight: 600; }
.gc-cum-obligacion__cuerpo small { font-size: var(--gc-t-xs); line-height: 1.4; }
.gc-cum-obligacion__fin { flex: none; display: flex; flex-direction: column; align-items: flex-end; gap: 3px; }
.gc-cum-alertas { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.gc-cum-alertas .gc-cum-aviso { text-decoration: none !important; }
.gc-cum-rapidos { display: flex; flex-wrap: wrap; gap: 8px; }
.gc-cum-rapidos .gc-boton { flex: 1 1 210px; justify-content: flex-start; }

/* ================================================================ lista de expedientes */
.gc-cum-filtros { display: flex; flex-direction: column; gap: 10px; padding: 12px 14px; margin-bottom: 14px; }
.gc-cum-filtros__fila { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; min-width: 0; }
.gc-cum-filtros__fila .gc-segmentos button .gc-i { width: 14px; height: 14px; }
.gc-cum-filtros .gc-segmentos .cuenta { margin-left: 4px; }
.gc-cum-filtros .gc-segmentos button { white-space: nowrap; flex: none; }
.gc-cum-filtro-select { display: inline-flex; align-items: center; gap: 8px; font-size: var(--gc-t-s); }
.gc-cum-filtro-select .gc-entrada { min-height: 36px; height: 36px; padding-top: 4px; padding-bottom: 4px; width: auto; min-width: 170px; font-size: var(--gc-t-s); }
.gc-cum-punto { --c: var(--gc-texto-tenue); width: 9px; height: 9px; border-radius: 50%; background: var(--c); box-shadow: 0 0 6px color-mix(in srgb, var(--c) 60%, transparent); flex: none; }
.gc-cum .gc-tabla td { vertical-align: middle; }
.gc-cum .gc-tabla .gc-cum-col-cliente { min-width: 240px; max-width: 340px; }
.gc-cum .gc-tabla .gc-cum-col-revision { min-width: 190px; }
.gc-cum .gc-tabla .gc-cum-col-marcas { min-width: 150px; }
.gc-cum .gc-tabla .gc-cum-col-asesor { min-width: 130px; }
.gc-cum .gc-tabla .gc-cum-col-nowrap { white-space: nowrap; }
.gc-cum-celda-cliente { display: flex; align-items: center; gap: 10px; min-width: 0; }
.gc-cum-celda-cliente .gc-avatar { width: 30px; height: 30px; font-size: 10px; flex: none; }
.gc-cum-celda-dos { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.gc-cum-celda-dos small { font-size: var(--gc-t-xs); line-height: 1.4; }
.gc-cum-marcas { display: flex; flex-wrap: wrap; gap: 4px; }
.gc-cum-marcas .gc-cum-chip { padding: 1px 8px; font-size: 11px; }
/* Cliente borrado: su expediente se conserva y se lee sin cambiarlo (decisión 6). */
.gc-cum-borrado { display: inline-flex; align-items: center; gap: 3px; color: var(--gc-peligro); font-weight: 600; }
.gc-cum-borrado .gc-i { width: 12px; height: 12px; }
.gc-cum-marcas:empty::before { content: "—"; color: var(--gc-texto-tenue); }

/* ================================================================ expediente de diligencia debida */
.gc-cum-hero {
  --c: var(--gc-aviso); position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: 18px; align-items: center; padding: 18px 22px; margin-bottom: 16px;
  border-radius: var(--gc-radio-xl); border: 1px solid color-mix(in srgb, var(--c) 30%, var(--gc-borde)); box-shadow: var(--gc-sombra), 0 26px 48px -38px var(--c);
  background: radial-gradient(620px 220px at 0% 0%, color-mix(in srgb, var(--c) 18%, transparent), transparent 70%), var(--gc-cristal);
}
.gc-cum-hero::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background-image: linear-gradient(var(--gc-rejilla) 1px, transparent 1px), linear-gradient(90deg, var(--gc-rejilla) 1px, transparent 1px); background-size: 22px 22px;
  -webkit-mask-image: linear-gradient(270deg, #000, transparent 55%); mask-image: linear-gradient(270deg, #000, transparent 55%);
}
.gc-cum-hero > * { position: relative; z-index: 1; }
.gc-cum-hero__estado { display: flex; align-items: center; gap: 16px; min-width: 0; }
.gc-cum-hero__estado > div { display: flex; flex-direction: column; gap: 2px; }
.gc-cum-hero__titulo { font-family: var(--gc-fuente-titulos); font-size: 1.6rem; line-height: 1.15; letter-spacing: -.02em; color: var(--gc-texto-c); }
.gc-cum-hero__estado small { font-size: var(--gc-t-s); line-height: 1.4; }
.gc-cum-hero__datos { display: grid; grid-template-columns: repeat(4, minmax(0, auto)); gap: 10px 22px; margin: 0; justify-content: end; }
.gc-cum-hero__datos > div { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.gc-cum-hero__datos dt { font-size: 10.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gc-texto-tenue); }
.gc-cum-hero__datos dd { margin: 0; font-size: var(--gc-t-s); min-width: 0; }
.gc-cum-expediente > .gc-cum-aviso { margin-bottom: 16px; }
.gc-cum-ficha__rejilla { display: grid; grid-template-columns: minmax(0, 1fr) 370px; gap: 20px; align-items: start; }
.gc-cum-ficha__principal, .gc-cum-ficha__lateral { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.gc-cum-xs { font-size: var(--gc-t-xs); }
.gc-cum-cita { margin: 0; padding: 8px 12px; border-left: 3px solid var(--c, var(--gc-naranja)); border-radius: 0 var(--gc-radio) var(--gc-radio) 0; background: var(--gc-superficie-2); font-size: var(--gc-t-s); line-height: 1.5; font-style: italic; }
em.gc-cum-cita { display: block; margin-top: 6px; }
.gc-cum-lista-simple { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.gc-cum-lista-simple li { display: flex; align-items: center; gap: 10px; padding: 7px 2px; border-bottom: 1px dashed var(--gc-borde); font-size: var(--gc-t-s); min-width: 0; }
.gc-cum-lista-simple li:last-child { border-bottom: 0; }
.gc-cum-datos--dos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 18px; }
.gc-cum-datos--dos > div { flex-direction: column; align-items: flex-start; gap: 2px; justify-content: flex-start; }
.gc-cum-datos--dos dd { text-align: left; font-weight: 600; }
.gc-cum-datos--dos dt { font-size: var(--gc-t-xs); }
.gc-cum-huella { display: block; overflow-wrap: anywhere; word-break: break-all; }

/* Qué falta. */
.gc-cum-faltan { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.gc-cum-faltan li { --c: var(--gc-aviso); display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: var(--gc-radio); border: 1px solid color-mix(in srgb, var(--c) 28%, var(--gc-borde));
  background: linear-gradient(90deg, color-mix(in srgb, var(--c) 9%, transparent), transparent 70%); min-width: 0; }
.gc-cum-faltan li.gc-cum-falta--bloqueo { --c: var(--gc-peligro); }
.gc-cum-faltan li.gc-cum-falta--aviso { --c: var(--gc-info); }
.gc-cum-falta__icono { flex: none; width: 30px; height: 30px; border-radius: 10px; display: grid; place-items: center; color: var(--gc-texto-c); background: color-mix(in srgb, var(--c) 15%, transparent); }
.gc-cum-falta__icono .gc-i { width: 16px; height: 16px; }
.gc-cum-falta__cuerpo { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; font-size: var(--gc-t-s); line-height: 1.45; }
.gc-cum-falta__cuerpo small { display: flex; align-items: center; flex-wrap: wrap; gap: 0 4px; font-size: var(--gc-t-xs); }
.gc-cum-falta__cuerpo small .gc-i { width: 12px; height: 12px; }
.gc-cum-faltan .gc-boton { flex: none; }

/* Identificación, relación y titularidad. */
.gc-cum-identificacion { display: flex; gap: 12px; align-items: flex-start; padding: 12px 14px; border-radius: var(--gc-radio); background: color-mix(in srgb, var(--gc-exito) 9%, transparent); border: 1px solid color-mix(in srgb, var(--gc-exito) 28%, var(--gc-borde)); }
.gc-cum-identificacion > .gc-i { flex: none; width: 22px; height: 22px; color: var(--gc-exito); }
.gc-cum-identificacion > div { display: flex; flex-direction: column; gap: 3px; min-width: 0; font-size: var(--gc-t-s); }
.gc-cum-identificacion small { font-size: var(--gc-t-xs); line-height: 1.45; }
.gc-cum-identificacion--sin { background: color-mix(in srgb, var(--gc-aviso) 9%, transparent); border-color: color-mix(in srgb, var(--gc-aviso) 30%, var(--gc-borde)); }
.gc-cum-identificacion--sin > .gc-i { color: var(--gc-aviso); }
.gc-cum-proposito p { margin: 4px 0 0; font-size: var(--gc-t-s); line-height: 1.5; white-space: pre-line; }
.gc-cum-titularidad { display: flex; flex-direction: column; gap: 10px; padding: 12px 14px; border-radius: var(--gc-radio); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde); }
.gc-cum-titularidad--mal { border-color: color-mix(in srgb, var(--gc-peligro) 40%, var(--gc-borde)); }
.gc-cum-titularidad__cabecera { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.gc-cum-titulares { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.gc-cum-titulares li { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: var(--gc-t-s); }
.gc-cum-titulares li > .gc-i { width: 16px; height: 16px; color: var(--gc-violeta); flex: none; }
.gc-cum-simular { border-top: 1px dashed var(--gc-borde); padding-top: 10px; }
.gc-cum-simular summary, .gc-cum-anteriores summary { display: inline-flex; align-items: center; gap: 6px; cursor: pointer; font-size: var(--gc-t-s); font-weight: 600; color: var(--gc-texto-suave); list-style: none; }
.gc-cum-simular summary::-webkit-details-marker, .gc-cum-anteriores summary::-webkit-details-marker { display: none; }
.gc-cum-simular summary .gc-i, .gc-cum-anteriores summary .gc-i { width: 15px; height: 15px; transition: transform var(--gc-rapido); }
.gc-cum-simular[open] summary .gc-i, .gc-cum-anteriores[open] summary .gc-i { transform: rotate(90deg); }
.gc-cum-simular[open] > *:not(summary) { margin-top: 10px; }
.gc-cum-simular__fila { display: flex; align-items: flex-end; gap: 10px; flex-wrap: wrap; }
.gc-cum-simular__fila .gc-campo { flex: 0 1 220px; margin: 0; }
.gc-cum-simulacion { display: flex; flex-direction: column; gap: 8px; padding: 10px 12px; border-radius: var(--gc-radio); border: 1px dashed var(--gc-borde-fuerte); font-size: var(--gc-t-s); }
.gc-cum-simulacion--cambia { border-color: var(--gc-naranja); background: color-mix(in srgb, var(--gc-naranja) 7%, transparent); }

/* Personas. */
.gc-cum-personas { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 12px; }
.gc-cum-persona-tarjeta { display: flex; flex-direction: column; gap: 10px; padding: 12px 14px; border-radius: var(--gc-radio-l); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde); min-width: 0; }
.gc-cum-persona-tarjeta--titular { border-color: color-mix(in srgb, var(--gc-violeta) 40%, var(--gc-borde)); box-shadow: 0 14px 30px -26px var(--gc-violeta); }
.gc-cum-persona-tarjeta header { display: flex; align-items: center; gap: 10px; min-width: 0; }
.gc-cum-persona-tarjeta header small { display: block; font-size: var(--gc-t-xs); line-height: 1.4; }
.gc-cum-persona-tarjeta header b.recortar { white-space: normal; overflow: visible; text-overflow: clip; overflow-wrap: anywhere; }
.gc-cum-persona-tarjeta header .gc-boton { flex: none; }
.gc-cum-persona-tarjeta .gc-cum-chips .gc-cum-chip { white-space: normal; }
.gc-cum-chip--nada { color: var(--gc-texto-suave); }
.gc-cum-cadenas-ver { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; font-size: var(--gc-t-xs); }
.gc-cum-cadenas-ver li { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding: 6px 8px; border-radius: 8px; background: var(--gc-superficie); border: 1px dashed var(--gc-borde); }
.gc-cum-cadenas-ver li > .gc-i { width: 14px; height: 14px; color: var(--gc-violeta); flex: none; }
.gc-cum-cadenas-ver li > span:nth-child(2) { flex: 1; min-width: 0; }

/* Evaluación vigente y barras por eje. */
.gc-cum-evaluacion { display: flex; flex-direction: column; gap: 10px; }
.gc-cum-evaluacion__nivel { display: flex; flex-direction: column; gap: 4px; }
.gc-cum-evaluacion__nivel .gc-cum-nivel { font-size: var(--gc-t-m); }
.gc-cum-ejes { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 7px; }
.gc-cum-ejes li { display: grid; grid-template-columns: minmax(0, 150px) minmax(0, 1fr) 44px; align-items: center; gap: 10px; font-size: var(--gc-t-xs); color: var(--gc-texto-suave); }
.gc-cum-ejes li b { text-align: right; color: var(--gc-texto); }
.gc-cum-ejes__barra { height: 10px; border-radius: 99px; overflow: hidden; background: var(--gc-superficie-3); box-shadow: inset 0 1px 2px rgba(0, 0, 0, .25); }
.gc-cum-ejes__barra i { display: block; height: 100%; border-radius: 99px; background: linear-gradient(90deg, var(--gc-exito), var(--gc-aviso) 55%, var(--gc-peligro)); background-size: 300% 100%; }
.gc-cum-ejes__barra i.supuesto { background: repeating-linear-gradient(45deg, var(--gc-texto-tenue) 0 4px, transparent 4px 8px); opacity: .7; }
.gc-cum-medidas, .gc-cum-docs, .gc-cum-revisiones { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.gc-cum-medidas li, .gc-cum-revisiones li { display: flex; align-items: center; gap: 10px; padding: 9px 2px; border-bottom: 1px dashed var(--gc-borde); font-size: var(--gc-t-s); min-width: 0; }
.gc-cum-medidas li:last-child, .gc-cum-revisiones li:last-child { border-bottom: 0; }
.gc-cum-medidas li > div, .gc-cum-revisiones li > div { display: flex; flex-direction: column; gap: 2px; }
.gc-cum-medidas small, .gc-cum-revisiones small { font-size: var(--gc-t-xs); line-height: 1.4; }
.gc-cum-revisiones--hecha > .gc-i { width: 16px; height: 16px; color: var(--gc-exito); flex: none; }
/* Revisión pendiente: la fecha y «Hecha» arriba; el motivo debajo (cabe en la columna lateral). */
.gc-cum-revisiones li:not(.gc-cum-revisiones--hecha) { flex-wrap: wrap; row-gap: 4px; }
.gc-cum-revisiones li > .gc-cum-revision { flex: 1 1 auto; }
.gc-cum-revisiones li:not(.gc-cum-revisiones--hecha) > div { order: 3; flex: 1 1 100%; padding-left: 2px; }
.gc-cum-docs li { display: flex; align-items: center; gap: 4px; border-bottom: 1px dashed var(--gc-borde); }
.gc-cum-docs li:last-child { border-bottom: 0; }
.gc-cum-doc { flex: 1; min-width: 0; display: flex; align-items: flex-start; gap: 10px; padding: 9px 4px; border: 0; background: none; color: var(--gc-texto); text-align: left; cursor: pointer; border-radius: 10px; }
.gc-cum-doc:hover:not(:disabled) { background: var(--gc-hover); }
.gc-cum-doc > span:last-child { display: flex; flex-direction: column; gap: 2px; font-size: var(--gc-t-s); }
.gc-cum-doc small { font-size: var(--gc-t-xs); line-height: 1.35; }
.gc-cum-doc-elegido { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: var(--gc-radio); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde); min-width: 0; }
.gc-cum-doc-elegido > .gc-i { flex: none; color: var(--gc-info); }
.gc-cum-doc-elegido b { flex: 1; min-width: 0; }

/* Editor de personas y de cadenas. */
.gc-cum-grupo { margin: 0; padding: 14px; border: 1px solid var(--gc-borde); border-radius: var(--gc-radio-l); display: flex; flex-direction: column; gap: 12px; min-width: 0; scroll-margin-top: 12px; }
.gc-cum-grupo legend { display: inline-flex; align-items: center; gap: 8px; padding: 0 6px; font-weight: 700; font-size: var(--gc-t-s); }
.gc-cum-grupo legend .gc-i { width: 16px; height: 16px; color: var(--gc-enlace); }
.gc-cum-grupo .gc-campo { margin: 0; }
.gc-cum-cadenas { display: flex; flex-direction: column; gap: 10px; align-items: flex-start; }
.gc-cum-cadena { align-self: stretch; display: flex; flex-direction: column; gap: 8px; padding: 10px 12px; border-radius: var(--gc-radio); border: 1px dashed var(--gc-borde-fuerte); background: var(--gc-superficie-2); }
.gc-cum-cadena__cabecera { display: flex; align-items: center; gap: 10px; font-size: var(--gc-t-s); }
.gc-cum-cadena__tramos { list-style: none; margin: 0; padding: 0 0 0 14px; display: flex; flex-direction: column; gap: 6px; border-left: 2px solid color-mix(in srgb, var(--gc-violeta) 45%, var(--gc-borde)); }
.gc-cum-cadena__tramos li { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: var(--gc-t-s); }
.gc-cum-cadena__extremo { font-weight: 700; }
.gc-cum-cadena__extremo .gc-i { width: 15px; height: 15px; color: var(--gc-violeta); }
.gc-cum-cadena__pct { display: inline-flex; align-items: center; gap: 4px; }
.gc-cum-cadena__pct .gc-entrada { width: 78px; min-height: 34px; height: 34px; text-align: right; }
.gc-cum-cadena__soc { flex: 1 1 180px; min-height: 34px; height: 34px; }
.gc-cum-cadena__cliente { color: var(--gc-enlace); }

/* Ventana de la evaluación: factores a la izquierda y la propuesta fija a la derecha. */
.gc-cum-evaluar { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 20px; align-items: start; }
.gc-cum-evaluar__factores { display: flex; flex-direction: column; gap: 18px; min-width: 0; }
.gc-cum-evaluar__propuesta { position: sticky; top: 0; display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.gc-cum-eje { display: flex; flex-direction: column; gap: 10px; }
.gc-cum-eje__titulo { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 0; font-family: var(--gc-fuente-titulos); font-size: var(--gc-t-m); font-weight: 600; }
.gc-cum-eje__titulo small { font-family: var(--gc-fuente); font-weight: 500; font-size: var(--gc-t-xs); }
.gc-cum-eje__texto { margin: -4px 0 0; font-size: var(--gc-t-xs); }
.gc-cum-factor { display: flex; flex-direction: column; gap: 6px; }
.gc-cum-factor__titulo { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 6px; font-size: var(--gc-t-s); }
.gc-cum-factor__titulo small:last-child, .gc-cum-factor__titulo small.texto-suave { flex-basis: 100%; font-size: var(--gc-t-xs); }
.gc-cum-factor__falta { display: inline-flex; align-items: center; gap: 5px; color: var(--gc-aviso); font-weight: 600; }
.gc-cum-factor__falta .gc-i { width: 13px; height: 13px; }
.gc-cum-sin-contestar b { color: var(--gc-texto); }
.gc-cum-opciones { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 6px; }
.gc-cum-opcion { display: flex; align-items: flex-start; gap: 10px; padding: 9px 10px; border-radius: var(--gc-radio); border: 1px solid var(--gc-borde); background: var(--gc-campo); color: var(--gc-texto); text-align: left; cursor: pointer;
  transition: border-color var(--gc-rapido), background var(--gc-rapido), box-shadow var(--gc-normal); }
.gc-cum-opcion:hover { border-color: var(--gc-borde-fuerte); }
.gc-cum-opcion[aria-checked="true"] { border-color: var(--gc-naranja); background: color-mix(in srgb, var(--gc-naranja) 9%, var(--gc-campo)); box-shadow: 0 0 0 3px color-mix(in srgb, var(--gc-naranja) 14%, transparent); }
.gc-cum-opcion__marca { flex: none; width: 18px; height: 18px; margin-top: 1px; border-radius: 50%; display: grid; place-items: center; border: 2px solid var(--gc-borde-fuerte); color: var(--gc-sobre-acento); }
.gc-cum-opcion__marca--cuadrada { border-radius: 5px; }
.gc-cum-opcion[aria-checked="true"] .gc-cum-opcion__marca { background: var(--gc-naranja); border-color: var(--gc-naranja); }
.gc-cum-opcion__marca .gc-i { width: 12px; height: 12px; }
.gc-cum-opcion__texto { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; font-size: var(--gc-t-s); line-height: 1.35; }
.gc-cum-opcion__texto b { font-weight: 600; }
.gc-cum-opcion__texto small { font-size: var(--gc-t-xs); line-height: 1.4; }
.gc-cum-opcion__puntos { flex: none; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 99px; display: grid; place-items: center; font-size: 11px; font-weight: 700; color: var(--gc-texto-suave); background: var(--gc-superficie-3); }
.gc-cum-opcion__puntos[data-puntos="3"] { color: var(--gc-peligro); background: color-mix(in srgb, var(--gc-peligro) 14%, transparent); }
.gc-cum-opcion__puntos[data-puntos="2"] { color: var(--gc-aviso); background: color-mix(in srgb, var(--gc-aviso) 14%, transparent); }
.gc-cum-opcion--auto .gc-cum-opcion__texto b::after { content: " · alto por ley"; font-weight: 500; color: var(--gc-violeta); }
.gc-cum-propuesta { --c: var(--gc-texto-tenue); display: flex; flex-direction: column; gap: 10px; padding: 14px; border-radius: var(--gc-radio-l); border: 1px solid color-mix(in srgb, var(--c) 40%, var(--gc-borde));
  background: radial-gradient(260px 140px at 0% 0%, color-mix(in srgb, var(--c) 16%, transparent), transparent 70%), var(--gc-superficie-2); }
.gc-cum-propuesta__nivel .gc-cum-nivel { font-size: var(--gc-t-m); }
.gc-cum-propuesta__puntos { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.gc-cum-propuesta__puntos b { font-family: var(--gc-fuente-titulos); font-size: 1.8rem; line-height: 1; }
.gc-cum-propuesta__puntos small { font-size: var(--gc-t-xs); line-height: 1.4; }
.gc-cum-propuesta .gc-cum-ejes li { grid-template-columns: minmax(0, 90px) minmax(0, 1fr) 38px; }
.gc-cum-propuesta .gc-cum-aviso { font-size: var(--gc-t-xs); }
.gc-cum-decision { display: flex; flex-direction: column; gap: 10px; }
.gc-cum-decision .gc-campo { margin: 0; }
.gc-cum-niveles { display: flex; }
.gc-cum-niveles button { flex: 1; justify-content: center; }
.gc-cum-niveles button[aria-pressed="true"] { box-shadow: inset 0 0 0 1px var(--c), var(--gc-sombra-s); }

/* ================================================================ despacho, reservado y ajustes (secciones con pestañas) */
.gc-cum-pestanas { margin-bottom: 16px; }
.gc-cum-dos-columnas { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 18px; align-items: start; }
.gc-cum-dos-columnas--ancha { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); }
.gc-cum-dos-columnas--derecha { grid-template-columns: minmax(0, 1fr) minmax(0, 1.45fr); }
.gc-cum-botones { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.gc-cum-barra { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.gc-cum-barra p { margin: 0; font-size: var(--gc-t-s); }
.gc-cum-tamano { --c: var(--gc-exito); display: flex; flex-direction: column; gap: 3px; padding: 12px 14px; border-radius: var(--gc-radio); border: 1px solid color-mix(in srgb, var(--c) 30%, var(--gc-borde));
  background: linear-gradient(110deg, color-mix(in srgb, var(--c) 11%, transparent), transparent 70%); }
.gc-cum-tamano b { font-family: var(--gc-fuente-titulos); font-size: var(--gc-t-l); line-height: 1.25; }
.gc-cum-tamano small { font-size: var(--gc-t-xs); line-height: 1.45; }
.gc-cum-tamano--incompleto { --c: var(--gc-aviso); }
.gc-cum-grupo-oblig { display: flex; flex-direction: column; gap: 4px; }
.gc-cum-grupo-oblig + .gc-cum-grupo-oblig { margin-top: 6px; }
.gc-cum-estado-mini { font-size: var(--gc-t-xs); font-weight: 700; color: var(--gc-texto-c); white-space: nowrap; }
.gc-cum-por-que { margin-top: 2px; }
.gc-cum-por-que summary { display: inline; cursor: pointer; font-size: var(--gc-t-xs); font-weight: 600; color: var(--gc-texto-suave); }
.gc-cum-por-que[open] summary { margin-bottom: 4px; }
.gc-cum-por-que small { display: flex; gap: 4px; align-items: flex-start; margin-top: 3px; line-height: 1.45; }
.gc-cum-por-que small .gc-i { width: 12px; height: 12px; flex: none; margin-top: 2px; }
.gc-cum-casillas { display: flex; flex-wrap: wrap; gap: 6px 14px; }
.gc-cum-casilla { display: inline-flex; align-items: flex-start; gap: 8px; font-size: var(--gc-t-s); line-height: 1.4; cursor: pointer; }
.gc-cum-casilla input { margin-top: 2px; accent-color: var(--gc-naranja); width: 16px; height: 16px; flex: none; }
.gc-cum-casilla--aviso { padding: 10px 12px; border-radius: var(--gc-radio); border: 1px solid color-mix(in srgb, var(--gc-peligro) 35%, var(--gc-borde)); background: color-mix(in srgb, var(--gc-peligro) 7%, transparent); }
.gc-cum-docs-despacho { display: flex; flex-direction: column; gap: 14px; }
.gc-cum-versiones { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.gc-cum-versiones li { display: flex; align-items: flex-start; gap: 12px; padding: 10px 6px; border-bottom: 1px dashed var(--gc-borde); font-size: var(--gc-t-s); min-width: 0; }
.gc-cum-versiones li:last-child { border-bottom: 0; }
.gc-cum-versiones li > div:not(.gc-cum-version__acciones) { display: flex; flex-direction: column; gap: 4px; }
.gc-cum-versiones small { font-size: var(--gc-t-xs); line-height: 1.45; }
.gc-cum-version__n { flex: none; min-width: 34px; height: 26px; padding: 0 8px; border-radius: 8px; display: grid; place-items: center; font-size: var(--gc-t-xs); font-weight: 700; background: var(--gc-superficie-3); color: var(--gc-texto-suave); }
.gc-cum-version--vigente .gc-cum-version__n { background: color-mix(in srgb, var(--gc-exito) 18%, transparent); color: var(--gc-exito); }
.gc-cum-version__acciones { flex: none; display: flex; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.gc-cum-semaforo-sepblac { display: flex; flex-wrap: wrap; gap: 6px; }
.gc-cum-luz { --c: var(--gc-texto-tenue); display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px 3px 6px; border-radius: 99px; font-size: var(--gc-t-xs); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde); }
.gc-cum-luz i { width: 12px; height: 12px; border-radius: 50%; background: radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--c) 40%, #fff), var(--c) 60%); box-shadow: 0 0 8px color-mix(in srgb, var(--c) 65%, transparent); }
.gc-cum-luz b { color: var(--gc-texto-c); }
.gc-cum-acuses { display: flex; flex-wrap: wrap; gap: 6px; }
.gc-cum-acuses .gc-cum-chip { white-space: normal; }
.gc-cum-sesiones { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.gc-cum-sesiones li { display: flex; align-items: flex-start; gap: 12px; padding: 10px 4px; border-bottom: 1px dashed var(--gc-borde); font-size: var(--gc-t-s); min-width: 0; }
.gc-cum-sesiones li:last-child { border-bottom: 0; }
.gc-cum-sesiones li > div:not(.gc-cum-version__acciones) { display: flex; flex-direction: column; gap: 4px; }
.gc-cum-sesiones small { font-size: var(--gc-t-xs); line-height: 1.45; }
.gc-cum-fecha-caja { flex: none; width: 46px; height: 50px; border-radius: 12px; display: grid; place-items: center; align-content: center; background: var(--gc-superficie-2); border: 1px solid var(--gc-borde); }
.gc-cum-fecha-caja b { font-size: 18px; line-height: 1; }
.gc-cum-fecha-caja small { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--gc-enlace); }
.gc-cum-buscador, .gc-cum-inspeccion { max-width: 920px; }
.gc-cum-buscador__fila { display: flex; gap: 10px; flex-wrap: wrap; }
.gc-cum-buscador__fila .gc-entrada-grupo { min-width: 220px; }
.gc-cum-relaciones { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.gc-cum-relaciones li { display: flex; align-items: center; gap: 12px; padding: 10px 4px; border-bottom: 1px dashed var(--gc-borde); font-size: var(--gc-t-s); min-width: 0; }
.gc-cum-relaciones li:last-child { border-bottom: 0; }
.gc-cum-relaciones li > div { display: flex; flex-direction: column; gap: 2px; }
.gc-cum-relaciones small { font-size: var(--gc-t-xs); line-height: 1.4; }

/* Lo reservado: la línea del art. 24, las cifras, comunicaciones y la ficha del examen; y la pantalla neutra. */
.gc-cum-neutra { display: flex; flex-direction: column; align-items: center; gap: 12px; max-width: 620px; margin: 24px auto; padding: 32px 24px; text-align: center; }
.gc-cum-neutra h2 { margin: 4px 0 0; font-family: var(--gc-fuente-titulos); font-size: var(--gc-t-l); }
.gc-cum-neutra p { margin: 0; line-height: 1.55; }
.gc-cum-art24 { display: flex; gap: 12px; align-items: flex-start; padding: 12px 16px; margin-bottom: 16px; border-radius: var(--gc-radio-l); font-size: var(--gc-t-s); line-height: 1.5;
  background: linear-gradient(110deg, color-mix(in srgb, var(--gc-peligro) 16%, transparent), color-mix(in srgb, var(--gc-violeta) 8%, transparent) 70%);
  border: 1px solid color-mix(in srgb, var(--gc-peligro) 40%, var(--gc-borde)); }
.gc-cum-art24 > .gc-i { flex: none; width: 20px; height: 20px; color: var(--gc-peligro); margin-top: 1px; }
.gc-cum-reservado__cifras { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-bottom: 10px; }
.gc-cum-cifra { --c: var(--gc-info); display: flex; flex-direction: column; gap: 2px; padding: 12px 14px; border-radius: var(--gc-radio-l); background: var(--gc-superficie); border: 1px solid var(--gc-borde);
  box-shadow: inset 3px 0 0 var(--c); min-width: 0; }
.gc-cum-cifra b { font-family: var(--gc-fuente-titulos); font-size: 1.6rem; line-height: 1.1; color: var(--gc-texto-c); }
.gc-cum-cifra span { font-size: var(--gc-t-xs); color: var(--gc-texto-suave); }
.gc-cum-reservado > .gc-cum-nota { margin-bottom: 14px; }
.gc-cum-comunicaciones { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.gc-cum-comunicaciones > li { display: flex; flex-direction: column; gap: 8px; padding: 14px 16px; }
.gc-cum-comunicaciones header { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; min-width: 0; }
.gc-cum-comunicaciones p { margin: 0; font-size: var(--gc-t-s); line-height: 1.5; }
.gc-cum-comunicaciones small { font-size: var(--gc-t-xs); }
.gc-cum-examen { display: flex; flex-direction: column; gap: 14px; }
.gc-cum-examen p { margin: 4px 0 0; font-size: var(--gc-t-s); line-height: 1.5; }
.gc-cum-fases { list-style: none; margin: 0; padding: 0 0 0 6px; display: flex; flex-direction: column; gap: 12px; border-left: 2px solid var(--gc-borde); }
.gc-cum-fases li { position: relative; display: flex; gap: 10px; padding-left: 12px; }
.gc-cum-fases__punto { position: absolute; left: -12px; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: var(--gc-naranja); box-shadow: 0 0 0 3px var(--gc-superficie); }
.gc-cum-fases p { margin: 0; }
.gc-cum-fases small { font-size: var(--gc-t-xs); }
.gc-cum-decidido { display: flex; flex-direction: column; gap: 4px; padding: 12px 14px; border-radius: var(--gc-radio); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde); --c: var(--gc-naranja); }
.gc-cum-decidido--comunicado { --c: var(--gc-peligro); border-color: color-mix(in srgb, var(--gc-peligro) 35%, var(--gc-borde)); }
.gc-cum-decidido small { font-size: var(--gc-t-xs); }

/* Ajustes: normativa por tramos, editor de la matriz, responsables, firma y protección de datos. */
.gc-cum-ajustes > .gc-cum-aviso { margin-bottom: 14px; }
.gc-cum-estrecho { max-width: 920px; }
.gc-cum-buscar-normativa { flex: 0 1 260px; }
.gc-cum-normativa { display: grid; grid-template-columns: repeat(auto-fill, minmax(380px, 1fr)); gap: 14px; align-items: start; }
.gc-cum-norma { display: flex; flex-direction: column; gap: 10px; padding: 14px 16px; min-width: 0; }
.gc-cum-norma--propia { border-color: color-mix(in srgb, var(--gc-naranja) 40%, var(--gc-borde)); }
.gc-cum-norma header { display: flex; align-items: flex-start; gap: 10px; }
.gc-cum-norma header b { display: block; font-size: var(--gc-t-s); }
.gc-cum-norma header small { display: block; font-size: var(--gc-t-xs); line-height: 1.45; margin-top: 2px; }
.gc-cum-norma__valor { display: flex; flex-direction: column; gap: 2px; padding: 8px 12px; border-radius: var(--gc-radio); background: var(--gc-superficie-2); }
.gc-cum-norma__valor b { font-family: var(--gc-fuente-titulos); font-size: var(--gc-t-m); line-height: 1.3; overflow-wrap: anywhere; }
.gc-cum-norma__valor small { font-size: var(--gc-t-xs); }
.gc-cum-norma__fuente { display: flex; gap: 8px; align-items: flex-start; margin: 0; font-size: var(--gc-t-xs); line-height: 1.5; color: var(--gc-texto-suave); }
.gc-cum-norma__fuente .gc-i { flex: none; width: 14px; height: 14px; margin-top: 2px; color: var(--gc-enlace); }
.gc-cum-norma .gc-cum-botones { margin-top: auto; }
.gc-cum-tramos { list-style: none; margin: 8px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.gc-cum-tramos li { display: flex; flex-direction: column; gap: 3px; padding: 8px 10px; border-radius: 10px; border: 1px dashed var(--gc-borde); font-size: var(--gc-t-xs); }
.gc-cum-tramos li .gc-cum-chip { align-self: flex-start; }
.gc-cum-tramo--vigente { border-style: solid !important; border-color: var(--gc-exito) !important; }
.gc-cum-umbrales { display: flex; align-items: flex-end; gap: 12px; flex-wrap: wrap; }
.gc-cum-umbrales .gc-campo { flex: 0 1 150px; margin: 0; }
.gc-cum-umbrales .gc-cum-nota { flex: 1 1 200px; padding-bottom: 10px; }
.gc-cum-eje-editor { border: 1px solid var(--gc-borde); border-radius: var(--gc-radio-l); padding: 10px 14px; }
.gc-cum-eje-editor summary { display: flex; align-items: center; gap: 10px; cursor: pointer; list-style: none; font-size: var(--gc-t-s); }
.gc-cum-eje-editor summary::-webkit-details-marker { display: none; }
.gc-cum-eje-editor summary > .gc-i { width: 15px; height: 15px; transition: transform var(--gc-rapido); }
.gc-cum-eje-editor[open] summary > .gc-i { transform: rotate(90deg); }
.gc-cum-eje-editor[open] summary { margin-bottom: 10px; }
.gc-cum-peso { display: inline-flex; align-items: center; gap: 6px; font-size: var(--gc-t-xs); color: var(--gc-texto-suave); }
.gc-cum-peso .gc-entrada { width: 72px; min-height: 32px; height: 32px; text-align: right; }
.gc-cum-factor-editor { display: flex; flex-direction: column; gap: 6px; padding: 10px 0; border-top: 1px dashed var(--gc-borde); min-width: 0; }
.gc-cum-factor-editor__cabecera { display: flex; align-items: center; gap: 4px 10px; flex-wrap: wrap; font-size: var(--gc-t-s); min-width: 0; }
.gc-cum-factor-editor__cabecera .gc-cum-casilla { font-size: var(--gc-t-xs); flex: none; max-width: 100%; }
.gc-cum-tabla-opciones { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: var(--gc-t-xs); }
.gc-cum-tabla-opciones th { text-align: left; font-weight: 700; color: var(--gc-texto-tenue); padding: 4px 6px 4px 0; font-size: 10.5px; letter-spacing: .06em; text-transform: uppercase; }
.gc-cum-tabla-opciones th:nth-child(1) { width: 42%; }
.gc-cum-tabla-opciones th:nth-child(2) { width: 72px; }
.gc-cum-tabla-opciones th:last-child { width: 36px; }
.gc-cum-tabla-opciones td { padding: 3px 6px 3px 0; vertical-align: top; }
.gc-cum-tabla-opciones .gc-entrada { width: 100%; min-width: 0; min-height: 32px; height: 32px; font-size: var(--gc-t-xs); padding-top: 4px; padding-bottom: 4px; }
.gc-cum-tabla-opciones td:first-child .gc-cum-chip { margin-top: 3px; padding: 1px 7px; font-size: 10.5px; }
.gc-cum-puntos { width: 64px; }
/* El título de cada opción, entero (Y-15): un área de texto de una línea que crece con lo escrito. */
.gc-cum-tabla-opciones .gc-cum-opcion-editor__titulo { height: auto; min-height: 32px; resize: none; line-height: 1.45; overflow-wrap: anywhere; field-sizing: content; }
.gc-cum-guardar-matriz { display: flex; align-items: flex-end; gap: 10px; flex-wrap: wrap; padding-top: 6px; border-top: 1px solid var(--gc-borde); }
.gc-cum-guardar-matriz .gc-campo { margin: 0; min-width: 220px; }
.gc-cum-version-vista { display: flex; flex-direction: column; gap: 8px; padding: 12px; border-radius: var(--gc-radio); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde); }
.gc-cum-responsables { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.gc-cum-responsable .gc-campo { margin: 0; }
.gc-cum-motivos { display: flex; flex-direction: column; gap: 6px; }
.gc-cum-motivos .gc-cum-chip { white-space: normal; }
/* Sufijos largos («meses», «horas», «días»): que no se monten sobre el número. */
.gc-cum-ajustes .gc-entrada-grupo .gc-entrada:has(+ .gc-entrada-grupo__sufijo) { padding-right: 64px; }
/* Quién ve los datos bloqueados (decisión 7). */
.gc-cum-bloqueados { display: flex; flex-direction: column; gap: 10px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--gc-borde); }
.gc-cum-bloqueados .gc-cum-lista-simple .gc-i { width: 15px; height: 15px; color: var(--gc-violeta); flex: none; }
.gc-cum-personas-permiso { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px 14px; }
.gc-cum-personas-permiso .gc-cum-casilla { font-size: var(--gc-t-s); }
.gc-cum-umbral-editor { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px; }
.gc-cum-campos-tres { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 12px; }
.gc-cum-ancho-completo { grid-column: 1 / -1; }

@media (max-width: 1440px) {
  .gc-cum-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .gc-cum-ficha__rejilla { grid-template-columns: minmax(0, 1fr) 330px; }
  .gc-cum-hero { grid-template-columns: minmax(0, 1fr); }
  .gc-cum-hero__datos { justify-content: start; }
}
@media (max-width: 1100px) {
  .gc-cum-resumen__rejilla { grid-template-columns: minmax(0, 1fr); }
  .gc-cum-ficha__rejilla { grid-template-columns: minmax(0, 1fr); }
  .gc-cum-ficha__lateral { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); align-items: start; }
  .gc-cum-evaluar { grid-template-columns: minmax(0, 1fr); }
  .gc-cum-evaluar__propuesta { position: static; }
  .gc-cum-dos-columnas, .gc-cum-dos-columnas--ancha, .gc-cum-dos-columnas--derecha { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 760px) {
  .gc-cum-kpis, .gc-cum-kpis--cuatro { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .gc-cum-obligacion { flex-wrap: wrap; row-gap: 6px; }
  .gc-cum-obligacion__cuerpo { flex: 1 1 calc(100% - 42px); }
  .gc-cum-obligacion__fin { flex: 1 1 100%; flex-direction: row; align-items: center; flex-wrap: wrap; gap: 6px 10px; padding-left: 42px; }
  .gc-cum-filtros { padding: 10px; }
  .gc-cum-filtros__fila > .gc-segmentos { max-width: 100%; overflow-x: auto; scrollbar-width: none; }
  .gc-cum-filtro-select { flex: 1 1 100%; }
  .gc-cum-filtro-select .gc-entrada { flex: 1; }
  .gc-cum .gc-tabla--apilable td.gc-cum-col-cliente { padding-bottom: 10px !important; border-bottom: 1px dashed var(--gc-borde); flex: 1 1 100%; max-width: none; }
  .gc-cum-hero { padding: 14px 16px; }
  .gc-cum-hero__datos { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: row dense; }
  /* La próxima revisión, con su tipo y su motivo, a todo lo ancho. */
  .gc-cum-hero__datos > div:nth-child(2) { grid-column: 1 / -1; }
  /* La identificación (método y documento) también a todo lo ancho, sin cortar el texto. */
  .gc-cum-hero__datos > div:nth-child(3) { grid-column: 1 / -1; }
  .gc-cum-hero__datos .gc-cum-chip { white-space: normal; }
  .gc-cum-faltan li { flex-wrap: wrap; row-gap: 8px; }
  .gc-cum-falta__cuerpo { flex: 1 1 calc(100% - 42px); }
  .gc-cum-faltan .gc-boton { margin-left: 42px; }
  .gc-cum-medidas li, .gc-cum-revisiones li { flex-wrap: wrap; }
  .gc-cum-medidas li > div, .gc-cum-revisiones li > div { flex: 1 1 calc(100% - 60px); }
  .gc-cum-datos--dos { grid-template-columns: minmax(0, 1fr); }
  .gc-cum-personas { grid-template-columns: minmax(0, 1fr); }
  .gc-cum-ejes li { grid-template-columns: minmax(0, 110px) minmax(0, 1fr) 40px; }
  .gc-cum-versiones li, .gc-cum-sesiones li, .gc-cum-relaciones li { flex-wrap: wrap; }
  .gc-cum-version__acciones { flex-basis: 100%; justify-content: flex-start; padding-left: 46px; }
  .gc-cum-bloque__cabecera > .gc-segmentos { order: 3; }
  .gc-cum-reservado__cifras { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gc-cum-normativa { grid-template-columns: minmax(0, 1fr); }
  .gc-cum-responsables, .gc-cum-campos-tres { grid-template-columns: minmax(0, 1fr); }
  .gc-cum-oculto-movil { display: none; }
  .gc-cum-buscar-normativa { flex: 1 1 100%; }
}
@media (max-width: 640px) {
  .gc-cum-campos-dos { grid-template-columns: 1fr; }
}
/* Editor de la matriz en el móvil (Y-15): cada opción en su propia línea y debajo sus puntos y «Quitar». */
@media (max-width: 600px) {
  .gc-cum-tabla-opciones, .gc-cum-tabla-opciones tbody { display: block; }
  .gc-cum-tabla-opciones thead { display: none; }
  .gc-cum-tabla-opciones tr { display: grid; grid-template-columns: minmax(0, 1fr) 36px; gap: 4px 8px; align-items: center; padding: 8px 0; border-bottom: 1px dashed var(--gc-borde); }
  .gc-cum-tabla-opciones tr:last-child { border-bottom: 0; }
  .gc-cum-tabla-opciones td { padding: 0; }
  .gc-cum-tabla-opciones td.gc-cum-opcion-editor { grid-column: 1 / -1; }
  .gc-cum-tabla-opciones td:nth-child(2) { display: flex; align-items: center; gap: 8px; }
  .gc-cum-tabla-opciones td:nth-child(2)::before { content: 'Puntos'; font-size: 10.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--gc-texto-tenue); }
  .gc-cum-tabla-opciones td:nth-child(2) .gc-entrada { width: 88px; flex: none; }
  .gc-cum-tabla-opciones td:last-child { grid-column: 2; justify-self: end; }
}
@supports not (field-sizing: content) {
  @media (max-width: 600px) { .gc-cum-tabla-opciones .gc-cum-opcion-editor__titulo { min-height: 52px; } }
}

/* === Firmas y protección de datos: lo mantiene C2 (no tocar por encima de esta línea desde C2 ni por debajo desde C1) === */
/* Documentos para firmar, su ficha y sus evidencias, plantillas, protección de datos, la pestaña del expediente y el
   portal (C2, D-344 a D-346). Prefijo gc-cf-; las piezas comunes (orbe, aviso, chip, bloque, nota) son las gc-cum- de
   arriba. */

/* ================================================================ piezas de firmas */
.gc-cf { min-width: 0; }
.gc-cf-huella { word-break: break-all; overflow-wrap: anywhere; }
.gc-cf-acciones { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.gc-cf-texto { display: block; margin: 0; font-size: var(--gc-t-s); line-height: 1.5; }
.gc-cf-quien { display: flex; align-items: flex-start; gap: 8px; margin: 0 0 6px; font-size: var(--gc-t-s); line-height: 1.5; }
.gc-cf-quien .gc-i { flex: none; width: 16px; height: 16px; margin-top: 2px; color: var(--gc-enlace); }
.gc-cf-etiqueta { display: block; margin: 4px 0 6px; font-size: var(--gc-t-s); font-weight: 600; }
.gc-cf-error { display: flex; align-items: flex-start; gap: 6px; margin: 6px 0 0; font-size: var(--gc-t-xs); font-weight: 600; line-height: 1.45; color: var(--gc-peligro); }
.gc-cf-error .gc-i { width: 14px; height: 14px; flex: none; margin-top: 1px; }
.gc-cf-entrada--error, .gc-cf-entrada--error:focus { border-color: var(--gc-peligro) !important; box-shadow: 0 0 0 3px color-mix(in srgb, var(--gc-peligro) 18%, transparent) !important; }
.gc-cf-enlace { display: inline-flex; align-items: center; gap: 6px; padding: 4px 0; border: 0; background: none; color: var(--gc-texto); font: inherit; font-size: var(--gc-t-s); font-weight: 600; cursor: pointer; text-align: left; }
.gc-cf-enlace .gc-i { width: 15px; height: 15px; color: var(--gc-marca-texto); flex: none; }
.gc-cf-enlace:hover:not(:disabled) { color: var(--gc-marca-texto); }
.gc-cf-enlace:disabled { color: var(--gc-texto-tenue); cursor: default; }
.gc-cf-enlace:disabled .gc-i { color: var(--gc-texto-tenue); }
.gc-cf-enlace--suave { color: var(--gc-texto-suave); }
.gc-cf-enlace--suave .gc-i { color: var(--gc-peligro); }
.gc-cf-plegar { display: flex; align-items: center; gap: 8px; width: 100%; padding: 10px 2px 0; border: 0; border-top: 1px dashed var(--gc-borde); background: none; color: var(--gc-texto); font: inherit; font-weight: 600; font-size: var(--gc-t-s); text-align: left; cursor: pointer; }
.gc-cf-plegar .gc-i { width: 16px; height: 16px; color: var(--c, var(--gc-exito)); flex: none; }
.gc-cf-plegar .gc-i:last-child { margin-left: auto; color: var(--gc-texto-tenue); }

/* Evidencias de una firma: pares «qué → valor», en dos columnas que pasan a una en el móvil. */
.gc-cf-evid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 18px; margin: 0; }
.gc-cf-evid > div { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.gc-cf-evid dt { font-size: 10.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gc-texto-tenue); }
.gc-cf-evid dd { margin: 0; font-size: var(--gc-t-s); line-height: 1.45; overflow-wrap: anywhere; }
.gc-cf-evid dd.mono { font-size: var(--gc-t-xs); }
.gc-cf-evid__ancho { grid-column: 1 / -1; }
.gc-cf-evid--tecnico { padding-top: 4px; }
.gc-cf-marcadas { list-style: none; margin: 2px 0 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.gc-cf-marcadas li { display: flex; gap: 8px; align-items: flex-start; font-size: var(--gc-t-s); line-height: 1.45; }
.gc-cf-marcadas .gc-i { width: 15px; height: 15px; flex: none; margin-top: 2px; }

/* ================================================================ portal: documentos para firmar */
.gc-cf-portal { display: flex; flex-direction: column; gap: 14px; }
.gc-cf-phero { padding: 18px 20px; margin-bottom: 0; }
.gc-cf-phero h1 { font-size: 1.4rem; }
.gc-cf-phero > * { position: relative; z-index: 1; }
.gc-cf-pseccion { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.gc-cf-ptitulo { display: flex; align-items: center; gap: 8px; margin: 6px 0 0; font-family: var(--gc-fuente-titulos); font-size: var(--gc-t-m); font-weight: 600; }
.gc-cf-ptitulo .gc-i { width: 18px; height: 18px; color: var(--gc-marca-texto); }
.gc-cf-pnota { margin-top: 4px; }
.gc-cf-psaldo {
  display: flex; align-items: center; gap: 16px; padding: 16px 18px; border-radius: var(--gc-radio-xl); overflow: hidden;
  background: radial-gradient(520px 200px at 0% 0%, color-mix(in srgb, var(--gc-aviso) 18%, transparent), transparent 70%), var(--gc-superficie);
  border: 1px solid color-mix(in srgb, var(--gc-aviso) 34%, var(--gc-borde)); box-shadow: var(--gc-sombra), 0 24px 50px -36px var(--gc-aviso);
}
.gc-cf-psaldo small { display: block; font-size: 10.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--gc-texto-tenue); }
.gc-cf-psaldo b { display: block; margin: 2px 0; font-family: var(--gc-fuente-titulos); font-size: 1.35rem; line-height: 1.15; letter-spacing: -.02em; }
.gc-cf-psaldo > div > span { display: block; font-size: var(--gc-t-s); line-height: 1.45; }
.gc-cf-pdoc, .gc-cf-pficha {
  --c: var(--gc-cian); position: relative; overflow: hidden; display: flex; flex-direction: column; gap: 10px; padding: 14px 16px 14px 18px; border-radius: var(--gc-radio-l);
  background: radial-gradient(420px 160px at 0% 0%, color-mix(in srgb, var(--c) 10%, transparent), transparent 70%), var(--gc-superficie);
  border: 1px solid color-mix(in srgb, var(--c) 28%, var(--gc-borde)); box-shadow: var(--gc-sombra-s);
}
.gc-cf-pdoc::before, .gc-cf-pficha::before { content: ""; position: absolute; left: 0; top: 14px; bottom: 14px; width: 3px; border-radius: 0 3px 3px 0; background: var(--c); box-shadow: 0 0 10px var(--c); }
.gc-cf-pdoc--otro { background: var(--gc-superficie); border-color: var(--gc-borde); }
.gc-cf-pdoc__cabecera, .gc-cf-pficha__cabecera { display: flex; align-items: center; gap: 12px; min-width: 0; }
.gc-cf-pdoc__cabecera b { display: block; font-size: var(--gc-t-m); line-height: 1.3; overflow-wrap: anywhere; }
.gc-cf-pdoc__cabecera small, .gc-cf-pficha__cabecera small { display: block; font-size: var(--gc-t-xs); margin-top: 2px; line-height: 1.4; }
.gc-cf-pdoc__cabecera > .gc-estado { flex: none; }
.gc-cf-pdoc__fecha { display: flex; align-items: center; gap: 7px; margin: 0; font-size: var(--gc-t-s); font-weight: 600; }
.gc-cf-pdoc__fecha .gc-i { width: 15px; height: 15px; color: var(--gc-texto-c); flex: none; }
.gc-cf-pficha { padding: 16px 18px 16px 20px; }
.gc-cf-pficha__titulo { margin: 0; font-size: 1.3rem; line-height: 1.25; overflow-wrap: anywhere; }
.gc-cf-pficha__estado { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; font-size: var(--gc-t-s); }
.gc-cf-volver { align-self: flex-start; display: inline-flex; align-items: center; gap: 6px; padding: 6px 2px; border: 0; background: none; color: var(--gc-texto-suave); font: inherit; font-weight: 600; font-size: var(--gc-t-s); cursor: pointer; }
.gc-cf-volver:hover { color: var(--gc-texto); }
.gc-cf-volver .gc-i { width: 16px; height: 16px; }

/* El texto que se firma: legible, con su propia barra de desplazamiento y sin perder los saltos de línea. */
.gc-cf-lectura {
  max-height: 52vh; overflow: auto; padding: 16px 18px; border-radius: var(--gc-radio-l); white-space: pre-wrap; overflow-wrap: anywhere;
  font-size: var(--gc-t-s); line-height: 1.65; color: var(--gc-texto); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde);
  box-shadow: inset 0 -18px 18px -18px rgba(0, 0, 0, .35);
}
.gc-cf-lectura:focus-visible { outline: 2px solid var(--gc-marca, var(--gc-enlace)); outline-offset: 2px; }

/* Firmar: tres pasos numerados. */
.gc-cf-firmar { padding: 16px; border-radius: var(--gc-radio-xl); background: var(--gc-superficie); border: 1px solid color-mix(in srgb, var(--gc-marca, var(--gc-naranja)) 30%, var(--gc-borde));
  box-shadow: var(--gc-sombra), 0 24px 50px -40px var(--gc-marca, var(--gc-naranja)); }
.gc-cf-pasos { list-style: none; margin: 4px 0 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.gc-cf-paso { position: relative; display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 12px; padding-bottom: 14px; }
.gc-cf-paso:not(:last-child)::before { content: ""; position: absolute; left: 16px; top: 36px; bottom: 2px; width: 2px; border-radius: 2px; background: var(--gc-borde); }
.gc-cf-paso__n { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; font-weight: 700; color: var(--gc-texto-suave); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde-fuerte); }
.gc-cf-paso__n .gc-i { width: 17px; height: 17px; }
.gc-cf-paso--hecho .gc-cf-paso__n { color: var(--gc-sobre-color); border-color: transparent; background: var(--gc-exito); box-shadow: 0 0 14px color-mix(in srgb, var(--gc-exito) 55%, transparent); }
.gc-cf-paso--hecho:not(:last-child)::before { background: color-mix(in srgb, var(--gc-exito) 55%, var(--gc-borde)); }
.gc-cf-paso__cuerpo { display: flex; flex-direction: column; gap: 8px; min-width: 0; padding-top: 5px; }
.gc-cf-paso__titulo { display: block; font-size: var(--gc-t-m); font-weight: 700; line-height: 1.3; }
.gc-cf-casilla-envoltorio { min-width: 0; }
.gc-cf-casilla { position: relative; display: flex; align-items: flex-start; gap: 12px; padding: 12px 14px; border-radius: var(--gc-radio); border: 1px solid var(--gc-borde); background: var(--gc-superficie-2); cursor: pointer;
  transition: border-color var(--gc-rapido), background var(--gc-rapido); }
.gc-cf-casilla:hover { border-color: var(--gc-borde-fuerte); }
.gc-cf-casilla input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.gc-cf-casilla__caja { flex: none; width: 24px; height: 24px; border-radius: 7px; display: grid; place-items: center; margin-top: 1px; color: transparent; background: var(--gc-campo); border: 2px solid var(--gc-borde-fuerte);
  transition: background var(--gc-rapido), border-color var(--gc-rapido), color var(--gc-rapido); }
.gc-cf-casilla__caja .gc-i { width: 16px; height: 16px; stroke-width: 3; }
.gc-cf-casilla__texto { display: flex; flex-direction: column; gap: 3px; font-size: var(--gc-t-s); line-height: 1.5; min-width: 0; overflow-wrap: anywhere; }
.gc-cf-casilla__texto small { font-size: var(--gc-t-xs); font-weight: 600; }
.gc-cf-casilla input:focus-visible + .gc-cf-casilla__caja { outline: 2px solid var(--gc-marca, var(--gc-enlace)); outline-offset: 2px; }
.gc-cf-casilla--marcada { border-color: color-mix(in srgb, var(--gc-exito) 50%, var(--gc-borde)); background: color-mix(in srgb, var(--gc-exito) 8%, var(--gc-superficie-2)); }
.gc-cf-casilla--marcada .gc-cf-casilla__caja { color: var(--gc-sobre-color); background: var(--gc-exito); border-color: var(--gc-exito); }
.gc-cf-casilla--error { border-color: var(--gc-peligro); }
.gc-cf-enviado { display: flex; gap: 8px; align-items: flex-start; margin: 0; padding: 10px 12px; border-radius: var(--gc-radio); font-size: var(--gc-t-s); line-height: 1.5;
  background: color-mix(in srgb, var(--gc-cian) 10%, transparent); border: 1px solid color-mix(in srgb, var(--gc-cian) 30%, transparent); }
.gc-cf-enviado .gc-i { width: 16px; height: 16px; color: var(--gc-cian); flex: none; margin-top: 2px; }
.gc-cf-enviado b { overflow-wrap: anywhere; }
.gc-cf-codigo { max-width: 240px; font-family: var(--gc-fuente-mono); font-size: 1.5rem; font-weight: 600; letter-spacing: .32em; text-align: center; min-height: 54px; }
.gc-cf-codigo::placeholder { color: var(--gc-texto-tenue); opacity: .45; }
.gc-cf-clave { display: flex; gap: 6px; align-items: center; max-width: 420px; }
.gc-cf-clave .gc-entrada { flex: 1; min-width: 0; min-height: 46px; }
.gc-cf-boton-ancho { align-self: flex-start; }
.gc-cf-boton-firmar { width: 100%; justify-content: center; min-height: 54px; margin-top: 4px; font-size: var(--gc-t-m); }
.gc-cf-rechazar { padding-top: 10px; border-top: 1px dashed var(--gc-borde); }
.gc-cf-rechazar__caja { display: flex; flex-direction: column; gap: 6px; }
.gc-cf-rechazar__caja textarea { resize: vertical; }

/* Firmado: la prueba de la firma. */
.gc-cf-firmado {
  --c: var(--gc-exito); display: flex; flex-direction: column; gap: 14px; padding: 18px; border-radius: var(--gc-radio-xl);
  background: radial-gradient(520px 220px at 0% 0%, color-mix(in srgb, var(--gc-exito) 16%, transparent), transparent 70%), var(--gc-superficie);
  border: 1px solid color-mix(in srgb, var(--gc-exito) 36%, var(--gc-borde)); box-shadow: var(--gc-sombra), 0 24px 50px -36px var(--gc-exito);
}
.gc-cf-firmado__arriba { display: flex; align-items: center; gap: 14px; min-width: 0; }
.gc-cf-firmado__arriba span.texto-suave { display: block; font-size: var(--gc-t-s); line-height: 1.45; }
.gc-cf-firmado__titulo { display: block; font-family: var(--gc-fuente-titulos); font-size: 1.4rem; line-height: 1.15; letter-spacing: -.02em; }
.gc-cf-firmado--nuevo .gc-cum-orbe { animation: gc-cf-latido 1.6s ease-out 2; }
@keyframes gc-cf-latido { 0% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--gc-exito) 60%, transparent); } 100% { box-shadow: 0 0 0 18px transparent; } }
@media (prefers-reduced-motion: reduce) { .gc-cf-firmado--nuevo .gc-cum-orbe { animation: none; } }

[data-tema="claro"] .gc-cf-psaldo, [data-tema="claro"] .gc-cf-firmado, [data-tema="claro"] .gc-cf-firmar { background-color: #fff; }
[data-tema="claro"] .gc-cf-lectura { background: #fbfcfd; box-shadow: none; }

@media (max-width: 640px) {
  .gc-cf-evid { grid-template-columns: 1fr; }
  .gc-cf-psaldo { padding: 14px; gap: 12px; }
  .gc-cf-psaldo .gc-cum-orbe--l { width: 46px; height: 46px; border-radius: 14px; }
  .gc-cf-psaldo b { font-size: 1.15rem; }
  .gc-cf-pdoc__cabecera { flex-wrap: wrap; }
  .gc-cf-pdoc__cabecera > .crece { flex: 1 1 calc(100% - 50px); }
  .gc-cf-pdoc__cabecera > .gc-estado { margin-left: 44px; }
  .gc-cf-pdoc .gc-cf-acciones .gc-boton, .gc-cf-pseccion > .gc-cf-acciones .gc-boton { flex: 1 1 auto; justify-content: center; }
  .gc-cf-firmar { padding: 14px 12px; }
  .gc-cf-paso { grid-template-columns: 30px minmax(0, 1fr); gap: 10px; }
  .gc-cf-paso__n { width: 30px; height: 30px; }
  .gc-cf-paso:not(:last-child)::before { left: 14px; top: 32px; }
  .gc-cf-boton-ancho { align-self: stretch; justify-content: center; }
  .gc-cf-codigo { max-width: none; }
  .gc-cf-clave { max-width: none; }
  .gc-cf-lectura { max-height: 46vh; padding: 14px; }
}

/* ================================================================ el texto del documento (mismo formato que su PDF) */
.gc-cf-lectura .gc-cf-doc { white-space: normal; }
.gc-cf-doc { font-size: var(--gc-t-s); line-height: 1.65; color: var(--gc-texto); overflow-wrap: anywhere; }
.gc-cf-doc > :first-child { margin-top: 0; }
.gc-cf-doc p { margin: 0 0 10px; }
.gc-cf-doc h2, .gc-cf-doc h3, .gc-cf-doc h4 { font-family: var(--gc-fuente-titulos); letter-spacing: -.01em; line-height: 1.25; }
.gc-cf-doc__t1 { margin: 4px 0 14px; font-size: 1.25rem; }
.gc-cf-doc__t2 { margin: 20px 0 8px; font-size: 1.02rem; color: color-mix(in srgb, var(--gc-marca, var(--gc-naranja)) 55%, var(--gc-texto)); }
.gc-cf-doc__t3 { margin: 14px 0 6px; font-size: var(--gc-t-s); text-transform: uppercase; letter-spacing: .06em; color: var(--gc-texto-suave); }
.gc-cf-doc ul, .gc-cf-doc ol { margin: 0 0 10px; padding-left: 22px; }
.gc-cf-doc li { margin: 2px 0; }
.gc-cf-doc hr { border: 0; border-top: 1px solid var(--gc-borde); margin: 16px 0; }
.gc-cf-doc__aviso { margin: 0 0 12px; padding: 10px 14px; border-radius: var(--gc-radio); background: color-mix(in srgb, var(--gc-info) 9%, transparent); border-left: 3px solid var(--gc-info); }
.gc-cf-doc__tabla { margin: 0 0 12px; overflow-x: auto; }
.gc-cf-doc__tabla table { width: 100%; border-collapse: collapse; font-size: var(--gc-t-xs); }
.gc-cf-doc__tabla th { text-align: left; font-weight: 700; padding: 6px 8px; border-bottom: 2px solid var(--gc-borde-fuerte); white-space: nowrap; }
.gc-cf-doc__tabla td { padding: 6px 8px; border-bottom: 1px solid var(--gc-borde); vertical-align: top; }
.gc-cf-doc__marca { display: flex; align-items: center; gap: 8px; margin: 12px 0; padding: 10px 14px; border: 1px dashed var(--gc-borde-fuerte); border-radius: var(--gc-radio); font-size: var(--gc-t-xs); font-weight: 600; color: var(--gc-texto-suave); }
.gc-cf-doc__marca .gc-i { width: 15px; height: 15px; color: var(--gc-marca-texto); }
.gc-cf-doc__salto { height: 1px; margin: 18px 0; background: repeating-linear-gradient(90deg, var(--gc-borde-fuerte) 0 6px, transparent 6px 12px); }
.gc-cf-doc--compacto { font-size: var(--gc-t-xs); }
.gc-cf-doc--compacto .gc-cf-doc__t1 { font-size: 1.05rem; }
.gc-cf-doc--compacto .gc-cf-doc__t2 { font-size: var(--gc-t-s); }

/* ================================================================ piezas del despacho */
.gc-cf-xs { font-size: var(--gc-t-xs); }
.gc-cf-bloque-cabecera { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.gc-cf-check { display: flex; align-items: flex-start; gap: 10px; font-size: var(--gc-t-s); line-height: 1.5; cursor: pointer; }
.gc-cf-check input { flex: none; width: 18px; height: 18px; margin-top: 2px; accent-color: var(--gc-naranja); }
.gc-cf-check small { display: block; }
.gc-cf-boton-peligro { color: var(--gc-peligro); }
.gc-cf-tabla-scroll { overflow-x: auto; border: 1px solid var(--gc-borde); border-radius: var(--gc-radio); }
.gc-cf-tabla { width: 100%; border-collapse: collapse; font-size: var(--gc-t-s); }
.gc-cf-tabla th { text-align: left; font-size: 10.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--gc-texto-tenue); padding: 8px 10px; background: var(--gc-superficie-2); border-bottom: 1px solid var(--gc-borde); white-space: nowrap; }
.gc-cf-tabla td { padding: 8px 10px; border-bottom: 1px solid var(--gc-borde); vertical-align: top; }
.gc-cf-tabla tr:last-child td { border-bottom: 0; }
.gc-cf-tabla .cifra { text-align: right; white-space: nowrap; }
.gc-cf-firmantes { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.gc-cf-firmantes li { display: flex; align-items: center; gap: 10px; min-width: 0; font-size: var(--gc-t-s); }
.gc-cf-firmantes small { display: block; }
/* Firmante previsto (decisión 1), cambiarlo, y lo que hizo la firma (decisión 4). */
.gc-cf-rotulo-accion { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.gc-cf-firmante { display: flex; align-items: flex-start; gap: 10px; min-width: 0; font-size: var(--gc-t-s); }
.gc-cf-firmante > .crece { display: flex; flex-direction: column; gap: 1px; }
.gc-cf-firmante small { font-size: var(--gc-t-xs); line-height: 1.45; }
.gc-cf-firmante small .gc-i { width: 13px; height: 13px; vertical-align: -2px; margin-right: 4px; }
.gc-cf-elegir-firmante { display: flex; flex-direction: column; gap: 6px; }
.gc-cf-propuesto { align-self: flex-start; width: max-content; margin: 2px 0; padding: 1px 7px; font-size: 10.5px; }
.gc-cf-integracion { margin-bottom: 16px; }
.gc-cf-integracion__cuando { display: block; margin-top: 2px; font-size: var(--gc-t-xs); }
.gc-cf-servicios { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; border: 1px solid var(--gc-borde); border-radius: var(--gc-radio); }
.gc-cf-servicios li { display: flex; align-items: center; gap: 12px; padding: 8px 12px; font-size: var(--gc-t-s); border-bottom: 1px solid var(--gc-borde); min-width: 0; }
.gc-cf-servicios li:last-child { border-bottom: 0; }
.gc-cf-servicios--ficha li { align-items: flex-start; }
.gc-cf-lista-simple { list-style: none; margin: 4px 0 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.gc-cf-lista-simple li { display: flex; gap: 8px; align-items: flex-start; font-size: var(--gc-t-s); line-height: 1.4; }
.gc-cf-lista-simple .gc-i { width: 14px; height: 14px; flex: none; margin-top: 3px; color: var(--gc-exito); }

/* «Nuevo documento» y su revisión */
.gc-cf-nuevo, .gc-cf-revisar { display: flex; flex-direction: column; gap: 16px; }
.gc-cf-nuevo .gc-cum-aviso, .gc-cf-revisar .gc-cum-aviso { margin-top: 0; }
.gc-cf-nuevo__fila { display: flex; flex-wrap: wrap; gap: 14px; align-items: flex-start; }
.gc-cf-nuevo__fila > * { flex: 1 1 260px; min-width: 0; }
.gc-cf-nuevo__cliente { display: flex; align-items: center; gap: 10px; min-height: 42px; min-width: 0; }
.gc-cf-nuevo__seccion { display: flex; flex-direction: column; gap: 10px; padding-top: 14px; border-top: 1px dashed var(--gc-borde); }
.gc-cf-nuevo__titulo { display: flex; align-items: center; gap: 8px; margin: 0; font-size: var(--gc-t-m); font-family: var(--gc-fuente-titulos); }
.gc-cf-nuevo__titulo .gc-i { width: 17px; height: 17px; color: var(--gc-enlace); }
.gc-cf-tipos { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 8px; }
.gc-cf-tipo { --c: var(--gc-naranja); display: flex; align-items: flex-start; gap: 10px; padding: 10px 12px; border-radius: var(--gc-radio); border: 1px solid var(--gc-borde); background: var(--gc-superficie-2);
  color: var(--gc-texto); text-align: left; cursor: pointer; transition: border-color var(--gc-rapido), box-shadow var(--gc-normal), background var(--gc-rapido); }
.gc-cf-tipo b { display: block; font-size: var(--gc-t-s); line-height: 1.3; }
.gc-cf-tipo small { display: block; font-size: var(--gc-t-xs); line-height: 1.4; margin-top: 2px; }
.gc-cf-tipo:hover { border-color: color-mix(in srgb, var(--c) 55%, var(--gc-borde)); }
.gc-cf-tipo[aria-checked="true"] { border-color: var(--c); background: color-mix(in srgb, var(--c) 10%, var(--gc-superficie-2)); box-shadow: 0 0 0 3px color-mix(in srgb, var(--c) 16%, transparent); }
.gc-cf-tipo:focus-visible { outline: 2px solid var(--gc-enlace); outline-offset: 2px; }
.gc-cf-areas { display: flex; flex-wrap: wrap; gap: 8px; }
.gc-cf-area { display: inline-flex; align-items: center; gap: 7px; padding: 8px 14px; border-radius: 999px; border: 1px solid var(--gc-borde); background: var(--gc-superficie-2); color: var(--gc-texto-suave); font-weight: 600; font-size: var(--gc-t-s); cursor: pointer; }
.gc-cf-area .gc-i { width: 15px; height: 15px; }
.gc-cf-area[aria-pressed="true"] { color: var(--gc-texto); border-color: var(--gc-exito); background: color-mix(in srgb, var(--gc-exito) 10%, var(--gc-superficie-2)); }
.gc-cf-area[aria-pressed="true"] .gc-i { color: var(--gc-exito); }
.gc-cf-lineas { display: flex; flex-direction: column; gap: 8px; }
.gc-cf-linea { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 10px; border-radius: var(--gc-radio); border: 1px solid var(--gc-borde); background: var(--gc-superficie-2); }
.gc-cf-linea__origen { flex: none; }
.gc-cf-linea__ancha { flex: 1 1 240px; min-width: 0; }
.gc-cf-linea__cantidad { flex: 0 0 90px; }
.gc-cf-linea__importe { flex: 0 1 140px; }
.gc-cf-linea__periodo { flex: 0 1 150px; }
.gc-cf-linea__iva { flex: 0 1 120px; }
.gc-cf-linea__error { flex: 1 0 100%; margin: 0; }
.gc-cf-revisar__cabecera { display: flex; align-items: center; gap: 12px; min-width: 0; flex-wrap: wrap; }
.gc-cf-revisar__cabecera > .crece { flex: 1 1 260px; }
.gc-cf-revisar__titulo { display: block; font-size: var(--gc-t-l); font-family: var(--gc-fuente-titulos); line-height: 1.25; }
.gc-cf-revisar__cabecera small { display: block; margin-top: 2px; }
/* El pie de «Nuevo documento»: en el móvil los botones bajan de línea en vez de ensanchar la ventana. */
.gc-cf-pie { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 10px; flex: 1 1 auto; min-width: 0; }
@media (max-width: 640px) { .gc-cf-pie > .crece { display: none; } .gc-cf-pie > .gc-boton { flex: 1 1 auto; justify-content: center; } }
.gc-cf-revisar__rejilla { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 18px; align-items: start; }
.gc-cf-revisar__datos { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.gc-cf-revisar__bloque { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.gc-cf-revisar__pdf { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.gc-cf-revisar__pdf .gc-segmentos { align-self: flex-start; }
.gc-cf-revisar__pdf .gc-visor-pdf__lienzo { max-height: 60vh; }
.gc-cf-lectura--ventana { max-height: 60vh; }
.gc-cf-marcadas small { display: inline; }

/* ================================================================ lista de documentos para firmar */
.gc-cf-cifras { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px; }
.gc-cf-cifra { --c: var(--gc-naranja); display: flex; align-items: flex-start; gap: 12px; min-width: 0; padding: 14px; border-radius: var(--gc-radio-l); text-align: left; color: var(--gc-texto); font: inherit;
  background: radial-gradient(260px 120px at 0% 0%, color-mix(in srgb, var(--c) 12%, transparent), transparent 70%), var(--gc-superficie); border: 1px solid var(--gc-borde); box-shadow: var(--gc-sombra-s); }
button.gc-cf-cifra { cursor: pointer; transition: border-color var(--gc-rapido), transform var(--gc-rapido); }
button.gc-cf-cifra:hover { border-color: color-mix(in srgb, var(--c) 55%, var(--gc-borde)); transform: translateY(-1px); }
.gc-cf-cifra--activa { border-color: var(--c); box-shadow: 0 0 0 3px color-mix(in srgb, var(--c) 16%, transparent); }
.gc-cf-cifra__cuerpo { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.gc-cf-cifra__cuerpo b { font-family: var(--gc-fuente-titulos); font-size: 1.5rem; line-height: 1.1; }
.gc-cf-cifra__cuerpo small { font-size: var(--gc-t-xs); color: var(--gc-texto-suave); line-height: 1.35; }
.gc-cf-cifra__cuerpo em { font-style: normal; font-size: var(--gc-t-xs); font-weight: 600; line-height: 1.35; }
.gc-cf-cifra .gc-cf-enlace { padding: 2px 0 0; }
.gc-cf-antiguos { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 14px; }
.gc-cf-antiguos .gc-cum-rotulo { display: inline-flex; align-items: center; gap: 6px; margin-right: 4px; }
.gc-cf-antiguos .gc-cum-rotulo .gc-i { width: 14px; height: 14px; color: var(--gc-aviso); }
.gc-cf-antiguo { display: inline-flex; align-items: center; gap: 8px; max-width: 400px; min-width: 0; padding: 6px 12px; border-radius: 999px; border: 1px solid color-mix(in srgb, var(--gc-aviso) 30%, var(--gc-borde));
  background: color-mix(in srgb, var(--gc-aviso) 7%, var(--gc-superficie)); color: var(--gc-texto); text-decoration: none !important; font-size: var(--gc-t-xs); }
.gc-cf-antiguo:hover { border-color: var(--gc-aviso); }
.gc-cf-antiguo .gc-i { width: 14px; height: 14px; color: var(--gc-aviso); flex: none; }
.gc-cf-antiguo b { font-weight: 600; }
.gc-cf-filtros { display: flex; flex-direction: column; gap: 10px; padding: 12px; margin-bottom: 14px; }
.gc-cf-filtros__fila { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.gc-cf-filtro-cliente { flex: 0 1 320px; min-width: 220px; }
.gc-cf-filtro-tipo { width: auto; min-width: 200px; }
.gc-cf-celda-doc { display: flex; align-items: center; gap: 10px; min-width: 220px; }
.gc-cf-celda-doc__texto { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.gc-cf-celda-doc__texto small { font-size: var(--gc-t-xs); }
.gc-cf-celda-cliente { display: inline-flex; align-items: center; gap: 8px; min-width: 160px; }
.gc-cf-celda-dos { display: flex; flex-direction: column; align-items: flex-start; gap: 1px; }
.gc-cf-celda-dos small { font-size: var(--gc-t-xs); }
.gc-cf-celda-icono { display: inline-flex; align-items: center; gap: 4px; }
.gc-cf-celda-icono .gc-i { width: 12px; height: 12px; }
.gc-cf-col-nowrap { white-space: nowrap; }
.gc-cf-pie-nota { margin-top: 12px; }

/* ================================================================ ficha de un documento */
.gc-cf-estado {
  --c: var(--gc-aviso); display: flex; align-items: center; gap: 16px; flex-wrap: wrap; padding: 16px 18px; margin-bottom: 16px; border-radius: var(--gc-radio-xl);
  background: radial-gradient(520px 200px at 0% 0%, color-mix(in srgb, var(--c) 15%, transparent), transparent 70%), var(--gc-superficie);
  border: 1px solid color-mix(in srgb, var(--c) 32%, var(--gc-borde)); box-shadow: var(--gc-sombra), 0 24px 50px -40px var(--c);
}
.gc-cf-estado > .crece { flex: 1 1 320px; display: flex; flex-direction: column; gap: 3px; }
.gc-cf-estado__titulo { font-family: var(--gc-fuente-titulos); font-size: 1.35rem; line-height: 1.2; letter-spacing: -.01em; }
.gc-cf-estado .texto-suave { font-size: var(--gc-t-s); line-height: 1.5; }
.gc-cf-estado__cliente { display: flex; align-items: center; gap: 10px; flex: 0 1 300px; min-width: 0; padding: 10px 12px; border-radius: var(--gc-radio); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde);
  color: var(--gc-texto); text-decoration: none !important; }
.gc-cf-estado__cliente small { display: block; }
.gc-cf-estado__cliente > .gc-i { width: 16px; height: 16px; color: var(--gc-enlace); flex: none; }
.gc-cf-estado__cliente:hover { border-color: var(--gc-naranja); }
.gc-cf-ficha__rejilla { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(300px, 1fr); gap: 16px; align-items: start; }
.gc-cf-ficha__principal, .gc-cf-ficha__lateral { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.gc-cf-ficha .gc-visor-pdf__lienzo { max-height: 70vh; }
.gc-cf-lectura--ficha { max-height: 70vh; }
.gc-cf-evid--una { grid-template-columns: 1fr; }
.gc-cf-evid--despacho { padding: 4px 0; }
.gc-cf-verificacion { display: flex; flex-direction: column; gap: 8px; padding: 12px 14px; border-radius: var(--gc-radio); }
.gc-cf-verificacion > b { display: flex; align-items: center; gap: 8px; font-size: var(--gc-t-s); }
.gc-cf-verificacion > b .gc-i { width: 18px; height: 18px; flex: none; }
.gc-cf-verificacion ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 5px; }
.gc-cf-verificacion li { display: flex; align-items: flex-start; gap: 8px; font-size: var(--gc-t-s); line-height: 1.4; }
.gc-cf-verificacion li .gc-i { width: 15px; height: 15px; flex: none; margin-top: 2px; }
.gc-cf-verificacion li span { color: var(--gc-texto); }
.gc-cf-verificacion--ok { background: color-mix(in srgb, var(--gc-exito) 10%, transparent); border: 1px solid color-mix(in srgb, var(--gc-exito) 34%, transparent); }
.gc-cf-verificacion--ok > b .gc-i { color: var(--gc-exito); }
.gc-cf-verificacion--mal { background: color-mix(in srgb, var(--gc-peligro) 10%, transparent); border: 1px solid color-mix(in srgb, var(--gc-peligro) 34%, transparent); }
.gc-cf-verificacion--mal > b .gc-i { color: var(--gc-peligro); }
.gc-cf-evidencias .gc-cum-aviso { margin: 0; }

/* ================================================================ pestaña del expediente */
.gc-cf-pestana { display: flex; flex-direction: column; gap: 16px; }
.gc-cf-esencial { display: flex; flex-direction: column; padding: 6px 16px; }
.gc-cf-linea-esencial { display: grid; grid-template-columns: 32px minmax(150px, 210px) minmax(0, 1fr) auto; gap: 6px 14px; align-items: center; padding: 12px 0; border-bottom: 1px dashed var(--gc-borde); }
.gc-cf-linea-esencial:last-child { border-bottom: 0; }
.gc-cf-linea-esencial__que { display: flex; flex-direction: column; min-width: 0; line-height: 1.3; }
.gc-cf-linea-esencial__que b { font-size: var(--gc-t-s); }
.gc-cf-linea-esencial__que small { font-size: var(--gc-t-xs); }
.gc-cf-linea-esencial__estado { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; min-width: 0; }
.gc-cf-linea-esencial__ir { justify-self: end; display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.gc-cf-linea-esencial__nota { grid-column: 3 / -1; margin: 0; font-size: var(--gc-t-xs); line-height: 1.45; }
.gc-cf-pestana__rejilla { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: start; }
.gc-cf-mini { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.gc-cf-mini__fila { display: flex; align-items: center; gap: 12px; padding: 8px; border-radius: 10px; color: var(--gc-texto); text-decoration: none !important; border-bottom: 1px dashed var(--gc-borde); min-width: 0; }
.gc-cf-mini li:last-child .gc-cf-mini__fila { border-bottom: 0; }
.gc-cf-mini__fila:hover { background: var(--gc-hover); }
.gc-cf-mini__cuerpo { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; font-size: var(--gc-t-s); }
.gc-cf-mini__cuerpo small { font-size: var(--gc-t-xs); }
.gc-cf-mini__fila > .gc-cum-estado { flex: none; }
@media (max-width: 640px) {
  .gc-cf-mini__fila { flex-wrap: wrap; row-gap: 6px; }
  .gc-cf-mini__cuerpo { flex: 1 1 calc(100% - 52px); }
  .gc-cf-mini__fila > .gc-cum-estado { margin-left: 52px; }
}
.gc-cf-rgpd-item { display: flex; flex-direction: column; gap: 6px; padding: 10px 12px; border-radius: var(--gc-radio); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde); min-width: 0; }
.gc-cf-rgpd-item--brecha { border-color: color-mix(in srgb, var(--gc-peligro) 35%, var(--gc-borde)); background: color-mix(in srgb, var(--gc-peligro) 6%, var(--gc-superficie-2)); }
.gc-cf-rgpd-item__titulo { display: flex; align-items: center; gap: 8px; color: var(--gc-texto); font-weight: 600; font-size: var(--gc-t-s); text-decoration: none !important; }
.gc-cf-rgpd-item__titulo:hover { color: var(--gc-enlace); }
.gc-cf-rgpd-item__titulo .gc-i { width: 15px; height: 15px; flex: none; color: var(--gc-texto-tenue); }
.gc-cf-rgpd-item > small { display: flex; align-items: center; gap: 6px; font-size: var(--gc-t-xs); font-weight: 600; }
.gc-cf-rgpd-item > small .gc-i { width: 13px; height: 13px; }

/* ================================================================ protección de datos: piezas */
.gc-cr-plazo { --c: var(--gc-texto-tenue); display: inline-flex; align-items: center; gap: 8px; min-width: 0; font-size: var(--gc-t-s); line-height: 1.35; }
.gc-cr-plazo > .gc-i { width: 15px; height: 15px; flex: none; color: var(--gc-texto-c); }
.gc-cr-plazo > span { color: var(--gc-texto-c); }
.gc-cr-plazo--compacto { font-size: var(--gc-t-xs); font-weight: 600; }
.gc-cr-reloj { --c: var(--gc-exito); display: flex; align-items: center; gap: 12px; min-width: 0; }
.gc-cr-reloj__esfera { flex: none; width: 64px; height: 64px; border-radius: 50%; display: grid; place-items: center; align-content: center; color: var(--gc-texto-c);
  background: radial-gradient(circle at 50% 35%, color-mix(in srgb, var(--c) 22%, transparent), transparent 70%), var(--gc-superficie-2);
  border: 3px solid color-mix(in srgb, var(--c) 70%, transparent); box-shadow: 0 0 18px -4px var(--c); }
.gc-cr-reloj__esfera b { font-family: var(--gc-fuente-titulos); font-size: 1.35rem; line-height: 1; }
.gc-cr-reloj__esfera small { font-size: 9px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.gc-cr-reloj__esfera .gc-i { width: 24px; height: 24px; }
.gc-cr-reloj--corre .gc-cr-reloj__esfera { animation: gc-cr-pulso 2.4s ease-in-out infinite; }
.gc-cr-reloj--vencido .gc-cr-reloj__esfera { background: color-mix(in srgb, var(--gc-peligro) 18%, var(--gc-superficie-2)); }
@keyframes gc-cr-pulso { 50% { box-shadow: 0 0 26px 0 color-mix(in srgb, var(--c) 70%, transparent); } }
@media (prefers-reduced-motion: reduce) { .gc-cr-reloj--corre .gc-cr-reloj__esfera { animation: none; } }
.gc-cr-reloj__texto { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.gc-cr-reloj__texto b { font-size: var(--gc-t-s); }
.gc-cr-reloj__texto small { font-size: var(--gc-t-xs); color: var(--gc-texto-suave); line-height: 1.4; }
.gc-cr-reloj--compacto .gc-cr-reloj__esfera { width: 46px; height: 46px; border-width: 2px; }
.gc-cr-reloj--compacto .gc-cr-reloj__esfera b { font-size: 1rem; }
.gc-cr-reloj--compacto .gc-cr-reloj__esfera small { font-size: 7.5px; }
.gc-cr-motivos { display: flex; flex-direction: column; gap: 6px; }
.gc-cr-motivo { padding: 10px 12px; border-radius: var(--gc-radio); border: 1px solid var(--gc-borde); background: var(--gc-superficie-2); }
.gc-cr-motivo--elegido { border-color: var(--gc-naranja); background: color-mix(in srgb, var(--gc-naranja) 8%, var(--gc-superficie-2)); }

[data-tema="claro"] .gc-cf-estado, [data-tema="claro"] .gc-cf-cifra { background-color: #fff; }

@media (max-width: 1280px) {
  .gc-cf-cifras { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 1100px) {
  .gc-cf-ficha__rejilla, .gc-cf-revisar__rejilla, .gc-cf-pestana__rejilla { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 760px) {
  .gc-cf-cifras { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .gc-cf-cifra { padding: 12px; gap: 10px; }
  .gc-cf-cifra .gc-cum-orbe { display: none; }
  .gc-cf-cifra--cadena { grid-column: 1 / -1; }
  .gc-cf-linea-esencial { grid-template-columns: 32px minmax(0, 1fr); }
  .gc-cf-linea-esencial__estado, .gc-cf-linea-esencial__nota { grid-column: 1 / -1; }
  .gc-cf-linea-esencial__ir { grid-column: 1 / -1; justify-self: start; justify-content: flex-start; }
  .gc-cf-filtro-cliente, .gc-cf-filtro-tipo { flex: 1 1 100%; min-width: 0; width: 100%; }
  .gc-cf-antiguo { max-width: 100%; }
  .gc-cf-estado { padding: 14px; gap: 12px; }
  .gc-cf-estado .gc-cum-orbe--l { width: 46px; height: 46px; border-radius: 14px; }
  .gc-cf-estado__cliente { flex: 1 1 100%; }
  .gc-cf-tipos { grid-template-columns: 1fr; }
  .gc-cf-linea__cantidad, .gc-cf-linea__importe, .gc-cf-linea__periodo, .gc-cf-linea__iva { flex: 1 1 calc(50% - 8px); }
  .gc-cf-esencial { padding: 4px 12px; }
}

/* ================================================================ plantillas */
.gc-cf-juridico { margin-bottom: 16px; }
.gc-cf-plantillas__rejilla { display: grid; grid-template-columns: minmax(260px, 340px) minmax(0, 1fr); gap: 16px; align-items: start; }
.gc-cf-plantillas__lista { display: flex; flex-direction: column; gap: 6px; position: sticky; top: calc(var(--gc-alto-barra, 64px) + 12px); }
.gc-cf-plantilla { --c: var(--gc-naranja); display: flex; align-items: center; gap: 10px; width: 100%; padding: 10px 12px; border-radius: var(--gc-radio-l); border: 1px solid var(--gc-borde);
  background: var(--gc-superficie); color: var(--gc-texto); text-align: left; cursor: pointer; transition: border-color var(--gc-rapido), background var(--gc-rapido); }
.gc-cf-plantilla b { display: block; font-size: var(--gc-t-s); line-height: 1.3; }
.gc-cf-plantilla small { display: block; font-size: var(--gc-t-xs); margin-top: 2px; }
.gc-cf-plantilla > .gc-cum-chip { flex: none; }
.gc-cf-plantilla:hover { border-color: color-mix(in srgb, var(--c) 50%, var(--gc-borde)); }
.gc-cf-plantilla[aria-current="true"] { border-color: var(--c); background: color-mix(in srgb, var(--c) 9%, var(--gc-superficie)); box-shadow: 0 0 0 3px color-mix(in srgb, var(--c) 14%, transparent); }
.gc-cf-plantillas__detalle { min-width: 0; }
.gc-cf-plantilla-cabecera { display: flex; align-items: flex-start; gap: 14px; min-width: 0; }
.gc-cf-plantilla-cabecera__titulo { margin: 0 0 4px; font-size: var(--gc-t-l); }
.gc-cf-plantilla-cabecera small { font-size: var(--gc-t-xs); line-height: 1.5; }
.gc-cf-previa-barra { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.gc-cf-codigo-plantilla { margin: 0; max-height: 70vh; overflow: auto; padding: 14px 16px; border-radius: var(--gc-radio-l); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde);
  font-family: var(--gc-fuente-mono); font-size: 12px; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; color: var(--gc-texto-suave); }
.gc-cf-editor { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 16px; align-items: start; }
.gc-cf-editor__principal { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
textarea.gc-cf-editor__cuerpo { min-height: 56vh; font-family: var(--gc-fuente-mono); font-size: 12.5px; line-height: 1.6; resize: vertical; tab-size: 2; }
.gc-cf-editor__lateral { display: flex; flex-direction: column; gap: 8px; position: sticky; top: calc(var(--gc-alto-barra, 64px) + 12px); max-height: calc(100vh - 120px); overflow: auto; padding-right: 2px; }
.gc-cf-variables { display: flex; flex-direction: column; gap: 10px; }
.gc-cf-variables__grupo { display: flex; flex-wrap: wrap; gap: 4px; }
.gc-cf-variables__grupo > small { flex: 1 0 100%; font-size: 10.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.gc-cf-variable { padding: 3px 8px; border-radius: 6px; border: 1px solid var(--gc-borde); background: var(--gc-superficie-2); color: var(--gc-texto); font-size: 11px; cursor: pointer; max-width: 100%; overflow-wrap: anywhere; text-align: left; }
.gc-cf-variable:hover { border-color: var(--gc-naranja); color: var(--gc-enlace); }

/* ================================================================ protección de datos */
.gc-cr-alertas { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 380px), 1fr)); gap: 8px; margin-bottom: 14px; }
.gc-cr-alerta { width: 100%; text-align: left; cursor: pointer; font: inherit; font-size: var(--gc-t-s); }
.gc-cr-alerta > .gc-i:last-child { color: var(--gc-texto-c); }
.gc-cr-alerta:hover { border-color: var(--c); }
.gc-cr-cuerpo { margin-top: 14px; }
.gc-cr-seccion { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.gc-cr-seccion > .gc-cf-filtros { margin-bottom: 0; }
.gc-cr-explica { display: flex; align-items: flex-start; gap: 14px; flex-wrap: wrap; }
.gc-cr-explica > .gc-cum-nota { flex: 1 1 420px; font-size: var(--gc-t-s); }
.gc-cr-explica > .gc-cf-acciones { flex: none; }
.gc-cr-totales { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.gc-cr-form { display: flex; flex-direction: column; gap: 12px; }
.gc-cr-form .gc-cum-aviso { margin: 0; }
.gc-cr-accion { display: flex; flex-direction: column; gap: 10px; padding: 14px; border-radius: var(--gc-radio-l); border: 1px solid color-mix(in srgb, var(--gc-naranja) 30%, var(--gc-borde)); background: var(--gc-superficie-2); }
.gc-cr-plazo-grande { --c: var(--gc-exito); display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: var(--gc-radio-l); background: color-mix(in srgb, var(--c) 10%, var(--gc-superficie-2)); border: 1px solid color-mix(in srgb, var(--c) 34%, var(--gc-borde)); }
.gc-cr-plazo-grande b { display: block; font-size: var(--gc-t-m); }
.gc-cr-plazo-grande small { display: block; font-size: var(--gc-t-xs); }
.gc-cr-reloj-grande { padding: 14px; border-radius: var(--gc-radio-l); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde); }
.gc-cr-reloj-grande .gc-cr-reloj__esfera { width: 84px; height: 84px; }
.gc-cr-reloj-grande .gc-cr-reloj__esfera b { font-size: 1.8rem; }
.gc-cr-reloj-grande .gc-cr-reloj__texto b { font-size: var(--gc-t-m); }
.gc-cr-brechas, .gc-cr-subs, .gc-cr-conservacion { display: flex; flex-direction: column; gap: 10px; }
.gc-cr-brecha, .gc-cr-sub { display: flex; align-items: center; gap: 16px; width: 100%; padding: 14px 16px; border-radius: var(--gc-radio-l); border: 1px solid var(--gc-borde);
  background: var(--gc-superficie); color: var(--gc-texto); text-align: left; font: inherit; cursor: pointer; box-shadow: var(--gc-sombra-s); transition: border-color var(--gc-rapido), transform var(--gc-rapido); }
.gc-cr-brecha { border-color: color-mix(in srgb, var(--gc-peligro) 30%, var(--gc-borde)); background: radial-gradient(420px 160px at 0% 0%, color-mix(in srgb, var(--gc-peligro) 9%, transparent), transparent 70%), var(--gc-superficie); }
.gc-cr-brecha--cerrada { border-color: var(--gc-borde); background: var(--gc-superficie); }
.gc-cr-brecha:hover, .gc-cr-sub:hover { border-color: var(--gc-naranja); transform: translateY(-1px); }
.gc-cr-brecha > .gc-cr-reloj { flex: 0 1 340px; min-width: 0; }
.gc-cr-brecha__cuerpo, .gc-cr-sub__cuerpo { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.gc-cr-brecha__cuerpo > b, .gc-cr-sub__cuerpo > b { font-size: var(--gc-t-m); line-height: 1.3; }
.gc-cr-brecha__cuerpo > small, .gc-cr-sub__cuerpo > small { display: flex; align-items: flex-start; gap: 6px; font-size: var(--gc-t-xs); line-height: 1.45; }
.gc-cr-sub__cuerpo > small .gc-i { width: 13px; height: 13px; flex: none; margin-top: 2px; }
.gc-cr-brecha__ir { flex: none; width: 18px; height: 18px; color: var(--gc-texto-tenue); }
.gc-cr-sub--fuera { border-color: color-mix(in srgb, var(--gc-aviso) 35%, var(--gc-borde)); }
.gc-cr-sub--baja { filter: saturate(.5); }
.gc-cr-clientes { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.gc-cr-clientes li { display: flex; align-items: center; gap: 10px; min-width: 0; }
.gc-cr-clientes small { display: block; font-size: var(--gc-t-xs); font-weight: 600; }
.gc-cr-quitar { display: inline-flex; padding: 0; margin-right: -4px; border: 0; background: none; color: inherit; cursor: pointer; }
.gc-cr-nada-solo { display: flex; gap: 16px; align-items: flex-start; padding: 16px 18px; border-radius: var(--gc-radio-xl);
  background: radial-gradient(520px 200px at 0% 0%, color-mix(in srgb, var(--gc-violeta) 14%, transparent), transparent 70%), var(--gc-superficie); border: 1px solid color-mix(in srgb, var(--gc-violeta) 30%, var(--gc-borde)); }
.gc-cr-nada-solo > div > b:first-child { font-family: var(--gc-fuente-titulos); font-size: var(--gc-t-l); }
.gc-cr-nada-solo p { margin: 6px 0 0; font-size: var(--gc-t-s); line-height: 1.55; color: var(--gc-texto-suave); }
.gc-cr-nada-solo p b { color: var(--gc-texto); }
.gc-cr-cons { --c: var(--gc-info); position: relative; overflow: hidden; display: flex; flex-direction: column; gap: 12px; padding: 14px 16px 14px 18px; border-radius: var(--gc-radio-l); background: var(--gc-superficie); border: 1px solid var(--gc-borde); box-shadow: var(--gc-sombra-s); }
.gc-cr-cons::before { content: ""; position: absolute; left: 0; top: 14px; bottom: 14px; width: 3px; border-radius: 0 3px 3px 0; background: var(--c); box-shadow: 0 0 10px var(--c); }
.gc-cr-cons__cabecera { display: flex; align-items: center; gap: 10px; min-width: 0; flex-wrap: wrap; }
.gc-cr-cons__cabecera > .crece { flex: 1 1 240px; }
.gc-cr-cons__cabecera small { display: block; font-size: var(--gc-t-xs); }
.gc-cr-cons__fechas { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 8px; }
.gc-cr-cons__fechas li { display: flex; flex-direction: column; gap: 1px; padding: 8px 10px; border-radius: var(--gc-radio); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde); }
.gc-cr-cons__fechas small { font-size: 10.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.gc-cr-cons__fechas b { font-size: var(--gc-t-s); }
.gc-cr-cons__pie { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }

/* Listas de países de riesgo en la normativa (D-435): versión, consulta, fuente y el aviso cuando llevan más de seis meses sin mirarse. */
.gc-cum-lista-pais { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; margin: 2px 0 0; padding: 10px 12px; border-radius: var(--gc-radio); background: var(--gc-superficie-2); border: 1px solid var(--gc-borde); }
.gc-cum-lista-pais[data-antigua="si"] { border-color: color-mix(in srgb, var(--gc-aviso) 45%, var(--gc-borde)); background: color-mix(in srgb, var(--gc-aviso) 7%, var(--gc-superficie-2)); }
.gc-cum-lista-pais .gc-cum-nota > span { min-width: 0; overflow-wrap: anywhere; }
.gc-cum-lista-pais .gc-cum-chip { align-items: flex-start; flex-wrap: wrap; white-space: normal; border-radius: var(--gc-radio); line-height: 1.45; text-align: left; }
.gc-cum-enlace--boton { padding: 0; border: 0; background: none; font: inherit; font-weight: 600; color: var(--gc-enlace); cursor: pointer; text-decoration: underline !important; text-underline-offset: 2px; }
.gc-cum-enlace--boton:disabled { opacity: .55; cursor: progress; }
.gc-cum-enlace--boton:focus-visible { outline: 2px solid var(--gc-enlace); outline-offset: 2px; border-radius: 4px; }
.gc-cum-lista-pais .gc-cum-nota .gc-cum-enlace { margin-left: 8px; }

[data-tema="claro"] .gc-cr-brecha, [data-tema="claro"] .gc-cr-nada-solo { background-color: #fff; }

@media (max-width: 1100px) {
  .gc-cf-plantillas__rejilla, .gc-cf-editor { grid-template-columns: minmax(0, 1fr); }
  .gc-cf-plantillas__lista, .gc-cf-editor__lateral { position: static; max-height: none; }
  .gc-cf-plantillas__lista { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
}
@media (max-width: 640px) {
  .gc-cf-plantillas__lista { grid-template-columns: 1fr; }
  .gc-cf-plantilla-cabecera .gc-cum-orbe { display: none; }
  .gc-cr-brecha { flex-direction: column; align-items: stretch; gap: 10px; }
  .gc-cr-brecha > .gc-cr-reloj { flex: none; max-width: none; }
  .gc-cr-brecha__ir { display: none; }
  .gc-cr-sub { align-items: flex-start; }
  .gc-cr-nada-solo { flex-direction: column; gap: 10px; padding: 14px; }
  .gc-cr-cons__fechas { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gc-cr-explica > .gc-cf-acciones { width: 100%; }
}
