/* ============================================================
   DANGOFE OS · SERVICIOS → AJUSTES → CHECKLISTS (servicios-checklists.js · prefijo cke-) · v1.1.3 · 2026-10-23 · chat de Diseño
   Va después de servicios-c1.css (usa sus tokens --sv-* y sus piezas .sv-g3, .sv-btn, .sv-tag, .sv-sec__ico) y dentro de un contenedor .sv.
   Tres formas (data-v en .cke): A · Tarjetas + hoja a la derecha · B · Dos paneles · C · Tabla + ventana. Sin sombras; sin desenfoque en las capas que
   tapan (la hoja y la ventana llevan cristal sólido). Claro y «Noche azul» por [data-theme='dark'] (los tokens --sv-* ya cambian). Nada se anima sin parar.
   ============================================================ */
.cke { position: relative; color: var(--sv-tinta, #0b1540); font-family: var(--sv-f, 'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif); }
.cke *, .cke *::before, .cke *::after { box-sizing: border-box; }
.cke svg { flex: none; }
.cke button { font: inherit; color: inherit; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.cke button:disabled { cursor: default; }
.cke [hidden] { display: none !important; }
.cke-cab { display: flex; align-items: center; gap: 12px; margin: 0 0 10px; }
.cke-cab__t { display: flex; align-items: center; gap: 12px; min-width: 0; }
.cke-cab__t b { display: block; font-size: 19px; font-weight: 800; letter-spacing: -.012em; }
.cke-cab__t small { display: block; margin-top: 1px; font-size: 12.5px; color: var(--sv-tenue, #4a5680); }
.cke-nota { display: flex; align-items: flex-start; gap: 8px; margin: 0 0 14px; padding: 10px 12px; border-radius: 14px; background: rgba(var(--sv-okrgb, 34, 197, 94), .1); border: 1px solid rgba(var(--sv-okrgb, 34, 197, 94), .3); font-size: 13px; line-height: 1.45; color: var(--sv-tenue, #4a5680); }
.cke-nota svg { margin-top: 2px; color: var(--sv-ok, #15724a); }
.cke-nota b { color: var(--sv-tinta, #0b1540); }
.cke-nota--chica { margin: 4px 0 10px; padding: 7px 11px; font-size: 12.5px; }
.cke-vacio { margin: 0; padding: 12px; border-radius: 14px; border: 1px dashed var(--sv-linea2, rgba(3, 38, 155, .18)); font-size: 13px; font-weight: 600; color: var(--sv-tenue, #4a5680); list-style: none; }
.cke-aviso { display: flex; align-items: center; gap: 9px; margin: 0 0 12px; padding: 10px 12px; border-radius: 14px; font-size: 13.5px; font-weight: 700; }
.cke-aviso--ok { background: rgba(var(--sv-okrgb, 34, 197, 94), .12); color: var(--sv-ok, #15724a); border: 1px solid rgba(var(--sv-okrgb, 34, 197, 94), .35); }
.cke-aviso--mal { background: rgba(var(--sv-malrgb, 239, 68, 68), .1); color: var(--sv-mal, #b42318); border: 1px solid rgba(var(--sv-malrgb, 239, 68, 68), .35); }
.cke-aviso span { flex: 1 1 auto; }
.cke-x { flex: none; width: 36px; height: 36px; padding: 0; border-radius: 50%; border: 1px solid var(--sv-linea2, rgba(3, 38, 155, .18)); background: var(--sv-campo, rgba(3, 38, 155, .045)); color: var(--sv-tenue, #4a5680); display: grid; place-items: center; }
.cke-x--chica { width: 26px; height: 26px; }

/* los checklists */
.cke-cats { display: grid; grid-template-columns: repeat(auto-fill, minmax(360px, 1fr)); gap: 14px; align-items: start; }
.cke-cat { display: flex; flex-direction: column; gap: 10px; padding: 14px; background: var(--sv-vidrio3, rgba(255, 255, 255, .9)); border: 1px solid var(--sv-borde, rgba(255, 255, 255, .9)); border-radius: var(--sv-r2, 16px); }
.cke-cat.is-off { opacity: .7; }
.cke-cat__cab { display: flex; align-items: center; gap: 10px; }
.cke-cat__ico { flex: none; width: 36px; height: 36px; border-radius: 12px; display: grid; place-items: center; background: rgba(var(--sv-celrgb, 53, 146, 207), .14); color: var(--sv-az, #03269b); }
.cke-cat__t { flex: 1 1 auto; min-width: 0; }
.cke-cat__t b { display: block; font-size: 15.5px; font-weight: 800; line-height: 1.2; }
.cke-cat__t small { display: block; margin-top: 1px; font-size: 12px; color: var(--sv-tenue, #4a5680); }
.cke-filas { display: flex; flex-direction: column; gap: 8px; }
.cke-fila { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: center; padding: 4px 10px 4px 4px; border-radius: 14px; border: 1px solid var(--sv-linea, rgba(3, 38, 155, .1)); background: var(--sv-campo, rgba(3, 38, 155, .045)); transition: border-color .2s, background .2s; }
.cke-fila.is-apagado .cke-fila__t b { color: var(--sv-tenue, #4a5680); }
.cke-fila.is-sel { border-color: rgba(var(--sv-azrgb, 3, 38, 155), .5); background: rgba(var(--sv-celrgb, 53, 146, 207), .12); }
.cke-fila__main { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; gap: 10px; align-items: center; min-height: 48px; padding: 4px; border: 0; background: none; text-align: left; border-radius: 12px; }
.cke-fila__ico { width: 34px; height: 34px; border-radius: 11px; display: grid; place-items: center; background: rgba(var(--sv-azrgb, 3, 38, 155), .08); color: var(--sv-az, #03269b); }
.cke-fila__t b { display: block; font-size: 14px; font-weight: 700; line-height: 1.25; overflow-wrap: anywhere; }
.cke-fila__t small { display: block; margin-top: 1px; font-size: 11.5px; color: var(--sv-tenue, #4a5680); }
.cke-tag { white-space: nowrap; }
.cke-fila__sw { display: flex; flex-direction: column; align-items: center; gap: 2px; }
.cke-fila__sw small { font-size: 10.5px; font-weight: 700; color: var(--sv-tenue, #4a5680); }
.cke-sw { position: relative; flex: none; width: 46px; height: 28px; padding: 0; border-radius: 999px; border: 1px solid var(--sv-linea2, rgba(3, 38, 155, .18)); background: var(--sv-campo2, rgba(3, 38, 155, .08)); transition: background .25s, border-color .25s; }
.cke-sw i { position: absolute; top: 2px; left: 2px; width: 22px; height: 22px; border-radius: 50%; background: #fff; transition: transform .25s; }
.cke-sw.is-on { background: rgb(var(--sv-okrgb, 34, 197, 94)); border-color: transparent; }
.cke-sw.is-on i { transform: translateX(18px); }
.cke-sw.is-ocupado { opacity: .55; }
.cke-rapidos { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; padding-top: 2px; }
.cke-rapidos > span { font-size: 11.5px; font-weight: 700; color: var(--sv-tenue, #4a5680); }
.cke-rap { display: inline-flex; align-items: center; gap: 5px; height: 30px; padding: 0 11px; border-radius: 999px; border: 1px dashed var(--sv-linea2, rgba(3, 38, 155, .25)); background: transparent; font-size: 12px; font-weight: 700; color: var(--sv-az, #03269b); }
[data-theme='dark'] .cke-rap { color: #9db9ff; }

/* B · dos paneles */
.cke[data-v='B'] .cke-cuerpo { display: grid; grid-template-columns: minmax(280px, 340px) minmax(0, 1fr); gap: 14px; align-items: start; }
.cke-lat { display: flex; flex-direction: column; gap: 14px; padding: 12px; background: var(--sv-vidrio3, rgba(255, 255, 255, .9)); border: 1px solid var(--sv-borde, rgba(255, 255, 255, .9)); border-radius: var(--sv-r2, 16px); }
.cke-lat__cat { display: flex; flex-direction: column; gap: 8px; }
.cke-lat__cab { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.cke-lat__cab b { font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--sv-tenue, #4a5680); }
.cke-lat__mas { width: 28px; height: 28px; padding: 0; border-radius: 50%; border: 1px solid var(--sv-linea2, rgba(3, 38, 155, .18)); background: var(--sv-campo, rgba(3, 38, 155, .045)); display: grid; place-items: center; color: var(--sv-az, #03269b); }
.cke-lat .cke-fila__main { grid-template-columns: 34px minmax(0, 1fr); }
.cke-lat .cke-fila__main .cke-tag { display: none; }
.cke-lat .cke-vacio { padding: 8px 10px; font-size: 12px; }
.cke[data-v='B'] .cke-ed-sitio { min-height: 240px; border-radius: var(--sv-r2, 16px); background: var(--sv-vidrio3, rgba(255, 255, 255, .9)); border: 1px solid var(--sv-borde, rgba(255, 255, 255, .9)); }
.cke[data-v='B'] .cke-ed-sitio:empty { display: grid; place-items: center; padding: 24px; border-style: dashed; border-color: var(--sv-linea2, rgba(3, 38, 155, .18)); background: transparent; }
.cke[data-v='B'] .cke-ed-sitio:empty::before { content: 'Elige un checklist para editarlo, o crea uno nuevo con el +.'; max-width: 280px; text-align: center; font-size: 13.5px; font-weight: 600; color: var(--sv-tenue, #4a5680); }
.cke[data-v='B'] .cke-ed { height: auto; max-height: none; }
.cke[data-v='B'] .cke-ed__cuerpo { overflow: visible; }
.cke[data-v='B'] .cke-x[data-cke='cerrar'] { display: none; }

/* C · tabla */
.cke-tabla-caja { overflow-x: auto; padding: 4px 6px; background: var(--sv-vidrio3, rgba(255, 255, 255, .9)); border: 1px solid var(--sv-borde, rgba(255, 255, 255, .9)); border-radius: var(--sv-r2, 16px); }
.cke-tabla { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.cke-tabla th { padding: 10px 10px 8px; text-align: left; font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--sv-tenue, #4a5680); border-bottom: 1px solid var(--sv-linea, rgba(3, 38, 155, .1)); white-space: nowrap; }
.cke-tabla td { padding: 10px; border-bottom: 1px solid var(--sv-linea, rgba(3, 38, 155, .1)); vertical-align: middle; }
.cke-tabla tr:last-child td { border-bottom: 0; }
.cke-tabla tr.is-apagado .cke-tabla__n b { color: var(--sv-tenue, #4a5680); }
.cke-tabla__n b { font-weight: 700; }
.cke-cats--bajo { margin-top: 12px; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 8px; }
.cke-nuevo-cat b { flex: 1 1 auto; min-width: 0; overflow-wrap: anywhere; }
.cke-nuevo-cat .sv-btn { flex: none; white-space: nowrap; }
.cke-nuevo-cat { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 10px; border-radius: 14px; border: 1px dashed var(--sv-linea2, rgba(3, 38, 155, .2)); font-size: 13px; }

/* el editor: hoja a la derecha (A), ventana (C) o panel (B) */
.cke[data-v='A'] .cke-ed-sitio:not(:empty), .cke[data-v='C'] .cke-ed-sitio:not(:empty) { position: fixed; inset: 0; z-index: 9000; display: flex; background: rgba(8, 14, 40, .42); animation: cke-aparece .2s ease both; }
.cke[data-v='A'] .cke-ed-sitio:not(:empty) { justify-content: flex-end; }
.cke[data-v='C'] .cke-ed-sitio:not(:empty) { align-items: center; justify-content: center; padding: 18px; }
.cke-ed { display: flex; flex-direction: column; min-height: 0; background: #f7f9ff; color: var(--sv-tinta, #0b1540); }
[data-theme='dark'] .cke-ed { background: #0c1640; }
.cke-ed:focus { outline: 0; }   /* el panel recibe el foco al abrirse (tabindex -1) para que Esc sea suyo: sin aro */
.cke[data-v='A'] .cke-ed { width: min(580px, 100%); height: 100%; border-left: 1px solid var(--sv-borde, rgba(255, 255, 255, .9)); border-radius: 26px 0 0 26px; animation: cke-entra .35s cubic-bezier(.2, .9, .25, 1) both; }
.cke[data-v='C'] .cke-ed { width: min(760px, 100%); max-height: min(100%, 860px); border: 1px solid var(--sv-borde, rgba(255, 255, 255, .9)); border-radius: 26px; animation: cke-sube .3s cubic-bezier(.2, .9, .25, 1) both; }
.cke-ed__cab { flex: none; display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; padding: 18px 18px 10px; }
.cke-ed__cab b { display: block; font-size: 20px; font-weight: 800; letter-spacing: -.012em; line-height: 1.15; }
.cke-ed__sobre { display: block; margin-bottom: 3px; font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--sv-az, #03269b); }
[data-theme='dark'] .cke-ed__sobre { color: #9db9ff; }
.cke-ed__cuerpo { flex: 1 1 auto; min-height: 0; overflow-y: auto; padding: 4px 18px 14px; scrollbar-width: thin; }
.cke-ed__pie { flex: none; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; padding: 12px 18px calc(14px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid var(--sv-linea, rgba(3, 38, 155, .1)); }
.cke-ed__cuenta { font-size: 12.5px; font-weight: 700; color: var(--sv-tenue, #4a5680); }
.cke-ed__cuenta b { font-size: 16px; color: var(--sv-tinta, #0b1540); }
.cke-ed__err { flex: 1 1 100%; order: -1; font-size: 13px; font-weight: 700; color: var(--sv-mal, #b42318); }
.cke-ed__err:empty { display: none; }
.cke-ed__bt { margin-left: auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; }
.cke-b--mal { background: rgb(var(--sv-malrgb, 239, 68, 68)); border-color: transparent; color: #fff; }
.cke-b--txt { background: transparent; border-color: transparent; color: var(--sv-mal, #b42318); }
.cke-conf { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 13px; font-weight: 700; }

/* los datos del checklist */
.cke-datos { display: flex; flex-direction: column; gap: 12px; padding: 4px 0 4px; }
.cke-campo { display: flex; flex-direction: column; gap: 6px; }
.cke-campo label, .cke-campo > label { font-size: 12.5px; font-weight: 800; color: var(--sv-tinta, #0b1540); }
.cke-campo label small, .cke-campo small { font-weight: 600; color: var(--sv-tenue, #4a5680); }
.cke-campo input[type='text'], .cke-pt__txt, .cke-pt__tipo, .cke-cond select, .cke-op-in { width: 100%; min-height: 42px; padding: 8px 12px; border-radius: 12px; border: 1px solid var(--sv-linea2, rgba(3, 38, 155, .18)); background: var(--sv-campo, rgba(3, 38, 155, .045)); color: inherit; font: inherit; font-size: 14.5px; outline: none; }
.cke-campo input[type='text']:focus, .cke-pt__txt:focus, .cke-pt__tipo:focus, .cke-cond select:focus, .cke-op-in:focus { border-color: rgba(var(--sv-celrgb, 53, 146, 207), .8); background: var(--sv-vidrio3, rgba(255, 255, 255, .9)); }
.cke-campo--sw { flex-direction: row; align-items: center; justify-content: space-between; gap: 14px; padding: 10px 12px; border-radius: 14px; background: var(--sv-campo, rgba(3, 38, 155, .045)); }
.cke-campo--sw > div { min-width: 0; }
.cke-campo--sw small { display: block; margin-top: 2px; line-height: 1.35; }
.cke-trab { display: flex; flex-wrap: wrap; gap: 6px; }
.cke-chip { min-height: 36px; padding: 0 13px; border-radius: 999px; border: 1px solid var(--sv-linea2, rgba(3, 38, 155, .18)); background: var(--sv-campo, rgba(3, 38, 155, .045)); font-size: 13px; font-weight: 700; transition: background .2s, color .2s; }
.cke-chip.is-on { background: linear-gradient(135deg, var(--sv-az, #03269b), var(--sv-cel, #3592cf)); border-color: transparent; color: #fff; }

/* los puntos */
.cke-puntos { counter-reset: p; margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.cke-pt { padding: 8px 10px 8px 8px; border-radius: 16px; border: 1px solid var(--sv-linea, rgba(3, 38, 155, .1)); background: var(--sv-campo, rgba(3, 38, 155, .045)); }
.cke-pt.is-abierto { border-color: rgba(var(--sv-celrgb, 53, 146, 207), .55); background: var(--sv-vidrio3, rgba(255, 255, 255, .9)); }
.cke-pt__fila { display: grid; grid-template-columns: 26px 22px minmax(0, 1fr) auto; grid-template-areas: 'n i t t' '. . a b'; gap: 6px 8px; align-items: center; }
.cke-pt__n { grid-area: n; align-self: start; margin-top: 6px; width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; font-size: 12px; font-weight: 800; background: rgba(var(--sv-azrgb, 3, 38, 155), .1); color: var(--sv-az, #03269b); }
[data-theme='dark'] .cke-pt__n { color: #9db9ff; }
.cke-pt__ico { grid-area: i; align-self: start; margin-top: 10px; color: var(--sv-az, #03269b); display: grid; place-items: center; }
[data-theme='dark'] .cke-pt__ico { color: #9db9ff; }
.cke-pt__txt { grid-area: t; }
textarea.cke-pt__txt { display: block; resize: none; overflow: hidden; height: 42px; line-height: 1.35; padding-top: 9px; padding-bottom: 9px; }

.cke-pt__tipo { grid-area: a; justify-self: start; width: 100%; min-width: 0; max-width: 240px; min-height: 36px; padding: 4px 10px; font-size: 13px; font-weight: 700; }
.cke-pt__acc { grid-area: b; justify-self: end; display: inline-flex; gap: 4px; }
.cke-ib { width: 34px; height: 34px; padding: 0; border-radius: 11px; border: 1px solid var(--sv-linea, rgba(3, 38, 155, .12)); background: transparent; display: grid; place-items: center; color: var(--sv-tenue, #4a5680); }
.cke-ib.is-on { background: rgba(var(--sv-celrgb, 53, 146, 207), .18); color: var(--sv-az, #03269b); }
[data-theme='dark'] .cke-ib.is-on { color: #bfe0ff; }
.cke-ib:disabled { opacity: .35; }
.cke-ib--mal { color: var(--sv-mal, #b42318); }
.cke-pt__res { display: flex; flex-wrap: wrap; gap: 4px 8px; margin: 6px 0 0 64px; }
.cke-res { display: inline-flex; align-items: center; gap: 5px; padding: 3px 9px; border-radius: 14px; max-width: 100%; min-width: 0; line-height: 1.3; overflow-wrap: anywhere; font-size: 11.5px; font-weight: 700; background: var(--sv-campo2, rgba(3, 38, 155, .08)); color: var(--sv-tenue, #4a5680); }
.cke-res--si { background: rgba(var(--sv-morrgb, 139, 92, 246), .14); color: var(--sv-mor, #5b3fd6); }
.cke-pt__mas { display: flex; flex-direction: column; gap: 12px; margin: 10px 0 2px 0; padding: 12px; border-radius: 14px; background: var(--sv-campo, rgba(3, 38, 155, .045)); }
.cke-ayuda { font-size: 12px; color: var(--sv-tenue, #4a5680); }
.cke-ops { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.cke-op { display: inline-flex; align-items: center; gap: 4px; padding: 5px 6px 5px 11px; border-radius: 999px; background: rgba(var(--sv-celrgb, 53, 146, 207), .16); color: var(--sv-az, #03269b); font-size: 13px; font-weight: 700; }
[data-theme='dark'] .cke-op { color: #bfe0ff; }
.cke-op button { width: 22px; height: 22px; padding: 0; border: 0; border-radius: 50%; background: rgba(var(--sv-azrgb, 3, 38, 155), .12); display: grid; place-items: center; color: inherit; }
.cke-op-in { flex: 1 1 160px; width: auto; min-height: 36px; }
.cke-cond-sw { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 800; cursor: pointer; }
.cke-cond-sw input { width: 18px; height: 18px; margin: 0; accent-color: rgb(var(--sv-azrgb, 3, 38, 155)); }
.cke-cond { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 8px; }
.cke-cond select { width: auto; flex: 1 1 200px; min-height: 38px; }
.cke-cond span { font-size: 13px; font-weight: 700; color: var(--sv-tenue, #4a5680); }
.cke-mal { display: flex; align-items: center; gap: 5px; margin-top: 6px; font-size: 12px; font-weight: 700; color: var(--sv-mal, #b42318); }
.cke-add { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.cke-tipos { display: grid; grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); gap: 8px; margin-top: 10px; padding: 10px; border-radius: 16px; border: 1px solid var(--sv-linea2, rgba(3, 38, 155, .18)); background: var(--sv-campo, rgba(3, 38, 155, .045)); animation: cke-aparece .2s ease both; }
.cke-tipo { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 10px 6px; border-radius: 14px; border: 1px solid var(--sv-linea, rgba(3, 38, 155, .1)); background: var(--sv-vidrio3, rgba(255, 255, 255, .9)); font-size: 12px; text-align: center; }
.cke-tipo b { font-weight: 700; line-height: 1.2; }
.cke-tipo__i { width: 38px; height: 38px; border-radius: 13px; display: grid; place-items: center; background: rgba(var(--sv-celrgb, 53, 146, 207), .14); color: var(--sv-az, #03269b); }
[data-theme='dark'] .cke-tipo__i { color: #9db9ff; }
.cke-tipo:hover .cke-tipo__i { background: linear-gradient(135deg, var(--sv-az, #03269b), var(--sv-cel, #3592cf)); color: #fff; }

/* B en un lugar angosto (la hoja de Ajustes mide 620 px, la tableta, el teléfono): su cuadro mide menos de 880 px (la pieza lo mide y pone data-ancho) → la lista a todo lo ancho y el editor sale como hoja a la derecha, igual que en A */
.cke[data-v='B'][data-ancho='est'] .cke-cuerpo { display: block; }
.cke[data-v='B'][data-ancho='est'] .cke-ed-sitio:empty { display: none; }
.cke[data-v='B'][data-ancho='est'] .cke-ed-sitio:not(:empty) { position: fixed; inset: 0; z-index: 9000; display: flex; justify-content: flex-end; min-height: 0; border: 0; border-radius: 0; background: rgba(8, 14, 40, .42); animation: cke-aparece .2s ease both; }
.cke[data-v='B'][data-ancho='est'] .cke-ed { width: min(580px, 100%); height: 100%; border-left: 1px solid var(--sv-borde, rgba(255, 255, 255, .9)); border-radius: 26px 0 0 26px; animation: cke-entra .35s cubic-bezier(.2, .9, .25, 1) both; }
.cke[data-v='B'][data-ancho='est'] .cke-ed__cuerpo { overflow-y: auto; }
.cke[data-v='B'][data-ancho='est'] .cke-x[data-cke='cerrar'] { display: grid; }

/* teléfonos y pantallas angostas: el editor ocupa todo */
@media (max-width: 860px) {
  .cke[data-v='B'] .cke-cuerpo { grid-template-columns: 1fr; }
  .cke[data-v='A'] .cke-ed { width: 100%; border-radius: 0; border-left: 0; }
  .cke[data-v='B'][data-ancho='est'] .cke-ed { width: 100%; border-radius: 0; border-left: 0; }
  .cke[data-v='C'] .cke-ed-sitio:not(:empty) { padding: 0; }
  .cke[data-v='C'] .cke-ed { width: 100%; max-height: 100%; height: 100%; border-radius: 0; }
  .cke-cats { grid-template-columns: 1fr; }
}
/* teléfono angosto: cada punto en renglones (el texto, el tipo y los botones), sin el icono repetido */
@media (max-width: 420px) {
  .cke-pt__fila { grid-template-columns: 26px minmax(0, 1fr); grid-template-areas: 'n t' '. a' '. b'; }
  .cke-pt__ico { display: none; }
  .cke-pt__tipo { max-width: none; }
  .cke-pt__res { margin-left: 34px; }
}

@keyframes cke-aparece { from { opacity: 0; } }
@keyframes cke-entra { from { transform: translateX(40px); opacity: 0; } }
@keyframes cke-sube { from { transform: translateY(24px); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .cke *, .cke *::before, .cke *::after { animation: none !important; transition: none !important; } }
/* el degradado de los botones llenos cubre también el borde (sin la rayita del lado izquierdo) */
.cke .sv-btn--pri, .cke-chip.is-on { background-origin: border-box; }
.cke-ed__cab { border-bottom: 1px solid var(--sv-linea, rgba(3, 38, 155, .1)); margin-bottom: 8px; }
.cke .sv-btn--pri, .cke .cke-b--mal { color: #fff; }
.cke-res--mal { background: rgba(var(--sv-malrgb, 239, 68, 68), .12); color: var(--sv-mal, #b42318); }
[data-theme='dark'] .cke-cat__ico, [data-theme='dark'] .cke-fila__ico, [data-theme='dark'] .cke-lat__mas { color: #9db9ff; }
/* v1.1 · partes, importancia, frases de siempre, fotos como mínimo */
.cke-parte { display: flex; align-items: center; gap: 10px; margin: 10px 0 0; padding: 2px 4px 0; list-style: none; }
.cke-parte:first-child { margin-top: 0; }
.cke-parte__l { flex: none; width: 28px; height: 28px; border-radius: 9px; display: grid; place-items: center; font-size: 13px; font-weight: 800; color: #fff; background: linear-gradient(135deg, var(--sv-az, #03269b), var(--sv-cel, #3592cf)); background-origin: border-box; }
.cke .cke-parte__in { flex: 1 1 auto; min-width: 0; min-height: 36px; padding: 4px 10px; border: 1px solid transparent; border-radius: 10px; background: transparent; color: var(--sv-tinta, #0b1540); font: inherit; font-size: 14.5px; font-weight: 800; }
.cke .cke-parte__in:hover, .cke .cke-parte__in:focus { border-color: var(--sv-linea2, rgba(3, 38, 155, .18)); background: var(--sv-campo, rgba(3, 38, 155, .045)); outline: 0; }
.cke-parte small { flex: none; font-size: 12px; font-weight: 700; color: var(--sv-tenue, #4a5680); }
.cke-imps { display: flex; flex-wrap: wrap; gap: 6px; }
.cke .cke-imp { min-height: 36px; padding: 0 12px; border-radius: 999px; border: 1px solid var(--sv-linea2, rgba(3, 38, 155, .18)); background: var(--sv-campo, rgba(3, 38, 155, .045)); font-size: 12.5px; font-weight: 700; color: var(--sv-tinta, #0b1540); cursor: pointer; transition: background .2s, color .2s; }
.cke .cke-imp.is-on { color: #fff; border-color: transparent; background: linear-gradient(135deg, var(--sv-az, #03269b), var(--sv-cel, #3592cf)); background-origin: border-box; }
.cke .cke-imp.is-on[data-v='1'] { background: #b86e00; }
.cke .cke-imp.is-on[data-v='2'] { background: #d95204; }
.cke .cke-imp.is-on[data-v='3'] { background: #c0392b; }
.cke-res--imp1 { background: rgba(194, 117, 0, .16); color: #8a5400; }
.cke-res--imp2 { background: rgba(217, 82, 4, .16); color: #b54203; }
.cke-res--imp3 { background: #c0392b; color: #fff; }
[data-theme='dark'] .cke-res--imp1 { background: rgba(246, 182, 74, .18); color: #f6b64a; }
[data-theme='dark'] .cke-res--imp2 { background: rgba(255, 138, 61, .2); color: #ffb27a; }
.cke-paso { display: inline-flex; align-items: center; gap: 12px; }
.cke-paso b { min-width: 22px; text-align: center; font-size: 17px; font-weight: 800; font-variant-numeric: tabular-nums; }


/* ============================================================
   v1.1.3 (2026-10-23) · EL EDITOR A PANTALLA COMPLETA. Karla: «esto y todo lo que tenga que ver con ajustes de servicios… ponlo en la pantalla completa».
   Donde el editor salía como hoja angosta a la derecha (la forma A y la B en un lugar angosto: la hoja de Ajustes, el iPad en vertical, el teléfono) ahora ocupa toda
   la pantalla, con su contenido centrado a 860 px y respetando el borde del iPad. La forma C (la ventana) y la B de dos paneles (≥ 880 px) no cambian.
   ============================================================ */
.cke[data-v='A'] .cke-ed, .cke[data-v='B'][data-ancho='est'] .cke-ed { width: 100%; max-width: none; border-left: 0; border-radius: 0; }
.cke[data-v='A'] .cke-ed__cab, .cke[data-v='B'][data-ancho='est'] .cke-ed__cab { padding: max(18px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right), calc((100% - 860px) / 2)) 10px max(18px, env(safe-area-inset-left), calc((100% - 860px) / 2)); }
.cke[data-v='A'] .cke-ed__cuerpo, .cke[data-v='B'][data-ancho='est'] .cke-ed__cuerpo { padding-left: max(18px, env(safe-area-inset-left), calc((100% - 860px) / 2)); padding-right: max(18px, env(safe-area-inset-right), calc((100% - 860px) / 2)); }
.cke[data-v='A'] .cke-ed__pie, .cke[data-v='B'][data-ancho='est'] .cke-ed__pie { padding-left: max(18px, env(safe-area-inset-left), calc((100% - 860px) / 2)); padding-right: max(18px, env(safe-area-inset-right), calc((100% - 860px) / 2)); }
