/* NIDO · MARK 17 (02-11-2026) · cursos de una pregunta por lección, recursos en celular, insignias, menú y aportaciones.
   Usa los mismos tokens de nido-web.css (no introduce colores nuevos). */

/* ---------- referencias pequeñas ---------- */
.cite-sup{font-size:.68em;line-height:0;margin-left:1px;white-space:nowrap}
.cite-sup a{color:var(--teal-dd);text-decoration:none;font-weight:700;padding:0 1px}
.cite-sup a:hover,.cite-sup a:focus-visible{text-decoration:underline}

/* ---------- curso principal desplegable ---------- */
.cu17-curso{padding:0;overflow:hidden}
.cu17-curso>summary{display:flex;align-items:center;gap:12px;padding:16px 18px;cursor:pointer;list-style:none}
.cu17-curso>summary::-webkit-details-marker{display:none}
.cu17-curso>summary:focus-visible{outline:3px solid var(--teal);outline-offset:-3px;border-radius:var(--r)}
.cu17-cs{display:grid;gap:2px;flex:1;min-width:0}
.cu17-ct{font-family:var(--ff-h);font-size:1.12rem}
.cu17-chev{flex:none;width:28px;height:28px;border-radius:50%;background:var(--bg-2);position:relative;transition:transform .25s var(--ease)}
.cu17-chev::before{content:"";position:absolute;left:9px;top:8px;width:8px;height:8px;border-right:2px solid var(--ink-2);border-bottom:2px solid var(--ink-2);transform:rotate(45deg)}
.cu17-curso[open] .cu17-chev{transform:rotate(180deg)}
.cu17-cb{display:grid;gap:8px;padding:0 18px 18px}
.cu-mini summary:focus-visible,.cu17-temm summary:focus-visible{outline:3px solid var(--teal);outline-offset:-2px;border-radius:12px}

/* ---------- lección ---------- */
.cu17-top{position:sticky;top:0;z-index:20;background:var(--glass-strong);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-bottom:1px solid var(--line);padding:8px 0}
.cu17-top .wrap{display:grid;gap:6px}
.cu17-top .back{font-size:.9rem}
.cu17-progs{display:grid;grid-template-columns:1fr 1fr;gap:10px 22px}
.cu17-prog{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}
.cu17-prog .bar{margin:0}
.cu17-pl{font-size:.8rem;font-weight:700;color:var(--ink-2)}
.cu17-pv{font-size:.8rem;color:var(--ink-3);white-space:nowrap}
.cu17-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;padding-top:24px;padding-bottom:56px;align-items:start}
.cu17-main{display:grid;gap:16px;min-width:0}
.cu17-eyebrow{margin:0;font-size:.82rem;font-weight:700;color:var(--teal-dd);text-transform:uppercase;letter-spacing:.04em}
.cu17-q{margin:0;font-size:clamp(1.45rem,3.4vw,2.05rem);line-height:1.2}
.cu17-video{border-radius:var(--r);overflow:hidden}
.cu17-resp{font-size:1.06rem}
.cu17-resp>*:first-child{margin-top:0}
.cu17-ej{background:var(--sun-s);border-left:4px solid var(--sun);border-radius:12px;padding:12px 16px;margin-top:12px}
.cu17-ej>b{display:block;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--sun-d)}
.cu17-ej p{margin:.3em 0 0}
.cu17-desps{display:grid;gap:8px}
.cu17-desp>summary{font-weight:700}
.cu17-nav{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding-top:8px;border-top:1px solid var(--line)}
.cu17-side{position:sticky;top:96px;display:grid;gap:10px;max-height:calc(100vh - 116px);overflow:auto;padding:16px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.cu17-side-t{margin:0;font-size:1.05rem}
.cu17-tem{display:grid;gap:6px}
.cu17-temm{border:1px solid var(--line);border-radius:12px}
.cu17-temm>summary{display:flex;gap:8px;align-items:center;padding:8px 10px;cursor:pointer;list-style:none}
.cu17-temm>summary::-webkit-details-marker{display:none}
.cu17-temm .num{flex:none;display:inline-flex;width:24px;height:24px;border-radius:50%;align-items:center;justify-content:center;background:var(--bg-2);font-weight:800;font-size:.78rem}
.cu17-temm.is-ok .num{background:var(--tea-s);color:var(--tea-d)}
.cu17-temt{display:grid;font-size:.9rem;min-width:0}
.cu17-teml{list-style:none;margin:0;padding:0 8px 8px;display:grid;gap:2px}
.cu17-teml a{display:flex;gap:8px;align-items:flex-start;padding:6px 8px;border-radius:10px;color:var(--ink);text-decoration:none;font-size:.9rem;line-height:1.3}
.cu17-teml a:hover{background:var(--bg-2)}
.cu17-teml li.actual a{background:var(--teal-s);font-weight:700}
.cu17-teml .chk-i{flex:none;width:18px;height:18px;border-radius:50%;border:1.5px solid var(--line-2);font-size:.7rem;display:inline-flex;align-items:center;justify-content:center;margin-top:1px}
.cu17-teml li.ok .chk-i{background:var(--tea);border-color:var(--tea);color:#fff}
.cu17-glo{display:grid;gap:4px;margin:8px 0 0}
.cu17-glo dt{font-weight:800;margin-top:10px}
.cu17-glo dd{margin:0;color:var(--ink-2)}
.cu17-glo-a{display:block;font-size:.85rem;margin-top:2px}

/* ---------- «Recursos» en celular: cápsula que se expande ---------- */
.cu17-rec{display:none}
@media (max-width:860px){
  .cu17-grid{grid-template-columns:1fr;padding-top:16px;padding-bottom:110px}
  .cu17-side{display:none}
  .cu17-progs{grid-template-columns:1fr;gap:4px}
  .cu17-prog{grid-template-columns:96px 1fr auto}
  .cu17-rec{display:block;position:fixed;left:50%;bottom:calc(14px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:60;width:auto}
  .cu17-rec-b{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:999px;border:0;background:var(--navy);color:#fff;font:700 .95rem var(--ff-b);box-shadow:0 10px 28px -10px rgba(20,43,69,.55);cursor:pointer;transition:transform .2s var(--ease),opacity .2s var(--ease)}
  .cu17-rec-b:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
  .cu17-rec-p{position:absolute;left:50%;bottom:0;width:min(92vw,520px);max-height:min(72vh,620px);overflow:auto;background:#fff;border-radius:28px;box-shadow:0 24px 60px -18px rgba(20,43,69,.45);padding:14px 16px 18px;
    transform:translateX(-50%) scale(.35,.12);transform-origin:50% 100%;opacity:0;border-radius:999px;transition:transform .32s var(--ease),opacity .2s ease,border-radius .32s var(--ease)}
  .cu17-rec[data-abierto="true"] .cu17-rec-p{transform:translateX(-50%) scale(1);opacity:1;border-radius:28px}
  .cu17-rec[data-abierto="true"] .cu17-rec-b{opacity:0;pointer-events:none;transform:scale(.9)}
  .cu17-rec-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
  .cu17-rec-tabs{display:flex;gap:6px;margin-bottom:10px}
  .cu17-rec-tabs button{flex:1;border:1px solid var(--line);background:var(--bg);border-radius:999px;padding:7px 10px;font:700 .85rem var(--ff-b);color:var(--ink-2);cursor:pointer}
  .cu17-rec-tabs button[aria-selected="true"]{background:var(--teal-s);border-color:var(--teal);color:var(--teal-dd)}
}
@media (prefers-reduced-motion:reduce){.cu17-rec-p,.cu17-rec-b,.cu17-chev{transition:none}}

/* ---------- pantallas de felicitación e insignias ---------- */
.cu17-fin-c{text-align:center;display:grid;gap:10px;justify-items:center;padding:36px 24px}
.cu17-fin-c .bar{width:100%;max-width:420px}
.cu17-fin-i{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--tea-s);color:var(--tea-d)}
.insignia{margin:0;display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:#fff}
.insignia-m{flex:none;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;background:conic-gradient(from 210deg,var(--teal),var(--mint),var(--teal));box-shadow:0 0 0 4px var(--teal-s)}
.insignia.tdah .insignia-m{background:conic-gradient(from 210deg,var(--tdah),var(--sun),var(--tdah));box-shadow:0 0 0 4px var(--tdah-s)}
.insignia.tea .insignia-m{background:conic-gradient(from 210deg,var(--tea),var(--mint),var(--tea));box-shadow:0 0 0 4px var(--tea-s)}
.insignia figcaption{display:grid;text-align:left}
.insignia.is-big{flex-direction:column;border:0;padding:0}
.insignia.is-big .insignia-m{width:92px;height:92px;box-shadow:0 0 0 8px var(--teal-s)}
.insignia.is-big figcaption{text-align:center}
.insignias{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}

/* ---------- menú: acceso por rol y botón del plan ---------- */
.acct-rol:empty{display:none}
.btn-plan{background:var(--mint-s);color:var(--mint-d);border:1px solid #BFE3D9;box-shadow:0 1px 0 rgba(255,255,255,.8) inset}
.btn-plan:hover{background:#D7EFE8;color:#1F5E51}
.btn-espdoc{background:var(--blue-s);color:var(--blue-d);border:1px solid #CFE0F2}
.btn-espdoc:hover{background:#DCE8F6}
.btn-plan:focus-visible,.btn-espdoc:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.plan-banda{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;background:linear-gradient(135deg,var(--mint-s),#fff 70%)}
.plan-banda h2{font-size:clamp(1.15rem,2.4vw,1.45rem)}
@media (max-width:1100px){.hdr-actions .acct-rol .btn span{display:none}.hdr-actions .acct-rol .btn{padding-inline:10px}}
@media (max-width:860px){.hdr-actions .acct-rol{display:none}}

/* ---------- aportaciones ---------- */
.ap-montos{flex-wrap:wrap}
.ap-montos label span{min-width:74px;text-align:center;font-weight:800}
.ap-gracias{display:grid;gap:10px}

/* ---------- editor visual: estilos de texto (lista cerrada) ---------- */
.sx-tam-xs{font-size:.8em!important}.sx-tam-s{font-size:.92em!important}.sx-tam-m{font-size:1em!important}.sx-tam-l{font-size:1.2em!important}.sx-tam-xl{font-size:1.45em!important}
.sx-peso-normal{font-weight:400!important}.sx-peso-negrita{font-weight:800!important}
.sx-alinear-izq{text-align:left!important}.sx-alinear-centro{text-align:center!important}.sx-alinear-der{text-align:right!important}
.sx-color-texto{color:var(--ink)!important}.sx-color-acento{color:var(--sage)!important}.sx-color-teal{color:var(--teal-dd)!important}.sx-color-coral{color:var(--coral-d)!important}.sx-color-mint{color:var(--mint-d)!important}.sx-color-sol{color:var(--sun-d)!important}.sx-color-blanco{color:#fff!important}
.sx-fuente-titulos{font-family:var(--ff-h)!important}.sx-fuente-cuerpo{font-family:var(--ff-b)!important}
.sx-sel{outline:3px solid var(--teal)!important;outline-offset:3px;border-radius:6px}
[data-bloque],[data-site]{cursor:inherit}

/* ---------- bloques del catálogo (sitio/sitio-bloques.js) ---------- */
.bx-card{display:grid;gap:12px}
.bx-t{margin:0}
.bx-p{margin:0;color:var(--ink-2)}
.bx-centro{text-align:center;justify-items:center}
.bx-boton{display:flex}.bx-boton.bx-centro{justify-content:center}
.bx-vacio{margin:0;padding:14px;border:1.5px dashed var(--line-2);border-radius:12px;color:var(--ink-3);text-align:center;font-size:.9rem}
.bx-img{margin:0}.bx-img img{width:100%;height:auto;border-radius:var(--r)}.bx-img figcaption{font-size:.85rem;color:var(--ink-3);margin-top:6px}
.bx-sep-s{height:8px}.bx-sep-m{height:24px}.bx-sep-l{height:48px}
.bx-separador .bx-card{padding:0;background:none;box-shadow:none;border:0}
.bx-acc{display:grid;gap:8px}
.bx-acc-i{border-radius:16px;background:var(--glass-strong);border:1px solid var(--glass-edge);box-shadow:var(--glass-sh)}
.bx-acc-i summary{padding:14px 18px;font-weight:700;cursor:pointer}
.bx-acc-i p{margin:0;padding:0 18px 14px;color:var(--ink-2)}
.bx-carp-tabs{display:flex;gap:4px;flex-wrap:wrap}
.bx-carp-b{border:1px solid var(--line);border-bottom:0;background:var(--bg-2);border-radius:14px 14px 0 0;padding:9px 16px;font:700 .92rem var(--ff-b);cursor:pointer;color:var(--ink-2)}
.bx-carp-b[aria-selected="true"]{background:var(--glass-strong);color:var(--ink)}
.bx-carp-p{padding:18px;border:1px solid var(--line);border-radius:0 16px 16px 16px;background:var(--glass-strong);min-height:80px}
.bx-glass-b{display:inline-flex;align-items:center;gap:8px;padding:12px 26px;border-radius:999px;background:var(--glass-strong);border:1px solid var(--glass-edge);box-shadow:var(--glass-sh);font-weight:800;color:var(--ink);text-decoration:none;backdrop-filter:blur(var(--glass-blur))}
.bx-glass-b:hover{transform:translateY(-1px)}
.bx-rect{padding:22px;border-radius:var(--r-lg);display:grid;gap:8px}
.bx-luz{padding:clamp(24px,5vw,48px);border-radius:var(--r-lg);display:grid;gap:8px;text-align:center}
.bx-luz-mint{background:radial-gradient(120% 90% at 20% 0%,#fff 0%,var(--mint-s) 55%,#d5efe8 100%)}.bx-luz-teal{background:radial-gradient(120% 90% at 20% 0%,#fff 0%,var(--teal-s) 55%,#cdeef3 100%)}
.bx-luz-coral{background:radial-gradient(120% 90% at 20% 0%,#fff 0%,var(--coral-s) 55%,#f9d9d1 100%)}.bx-luz-sun{background:radial-gradient(120% 90% at 20% 0%,#fff 0%,var(--sun-s) 55%,#f8e8b8 100%)}
.bx-luz-blue{background:radial-gradient(120% 90% at 20% 0%,#fff 0%,var(--blue-s) 55%,#d6e4f5 100%)}.bx-luz-lav{background:radial-gradient(120% 90% at 20% 0%,#fff 0%,var(--lav-s) 55%,#dfdaf1 100%)}
.bx-mv{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.bx-mv-a{display:grid;padding:12px 16px;border-radius:14px;border:1px solid var(--line);background:#fff;text-decoration:none;color:var(--ink)}
.bx-mv-a span{font-size:.88rem;color:var(--ink-3)}.bx-mv-a:hover{border-color:var(--teal)}
.bx-carga{list-style:none;margin:0;padding:0;display:flex;gap:6px;flex-wrap:wrap;counter-reset:p}
.bx-carga li{counter-increment:p;flex:1;min-width:140px;padding:10px 12px;border-radius:12px;background:var(--bg-2);font-weight:700;position:relative;overflow:hidden}
.bx-carga li::before{content:counter(p) '. '}
.bx-carga li.ok{background:var(--tea-s)}.bx-carga li.act{background:var(--teal-s);box-shadow:inset 0 -3px 0 var(--teal)}
.bx-op-marco{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.bx-op-pista{display:flex;gap:12px;width:max-content;animation:bxop 40s linear infinite}
.bx-op-marco:hover .bx-op-pista,.bx-op-marco:focus-within .bx-op-pista{animation-play-state:paused}
.bx-op{margin:0;width:280px;padding:16px;border-radius:16px;background:#fff;border:1px solid var(--line)}
.bx-op blockquote{margin:0 0 8px;font-style:italic}.bx-op figcaption{font-size:.85rem;color:var(--ink-3)}
@keyframes bxop{to{transform:translateX(-50%)}}
.bx-led{--c:var(--teal);padding:3px;border-radius:var(--r-lg);background:conic-gradient(from var(--a,0deg),var(--c),transparent 30%,var(--c) 60%,transparent 85%,var(--c));animation:bxled 6s linear infinite}
.bx-led-mint{--c:var(--mint)}.bx-led-coral{--c:var(--coral)}.bx-led-sun{--c:var(--sun)}.bx-led-blue{--c:var(--blue)}.bx-led-lav{--c:var(--lav)}
.bx-led-in{background:#fff;border-radius:calc(var(--r-lg) - 3px);padding:20px;display:grid;gap:6px}
@property --a{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes bxled{to{--a:360deg}}
.bx-redes{display:flex;gap:8px;flex-wrap:wrap}
.bx-red{padding:9px 16px;border-radius:999px;background:var(--navy);color:#fff;text-decoration:none;font-weight:700;font-size:.9rem}
.bx-red-instagram{background:#B4432F}.bx-red-youtube{background:#A3392A}.bx-red-whatsapp{background:#2E7A4F}.bx-red-facebook{background:#2F5F96}.bx-red-linkedin{background:#145A63}
.bx-mc{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.bx-mc-a{display:flex;align-items:flex-end;min-height:96px;padding:16px;border-radius:var(--r);font:800 1.1rem var(--ff-h);color:var(--ink);text-decoration:none}
.bx-mc-teal{background:var(--teal-s)}.bx-mc-mint{background:var(--mint-s)}.bx-mc-coral{background:var(--coral-s)}.bx-mc-sun{background:var(--sun-s)}.bx-mc-blue{background:var(--blue-s)}.bx-mc-lav{background:var(--lav-s)}
.bx-mc-a:hover{filter:brightness(.97)}
.bx-od{display:grid;gap:10px;justify-items:center;text-align:center}.bx-od-q{margin:0;font:800 1.2rem var(--ff-h)}
.bx-od-bs{display:flex;border-radius:999px;background:var(--bg-2);padding:4px;gap:4px;flex-wrap:wrap;justify-content:center}
.bx-od-b{padding:11px 22px;border-radius:999px;text-decoration:none;font-weight:800;color:var(--ink)}
.bx-od-b.a{background:#fff;box-shadow:var(--sh-1)}.bx-od-b.b{background:transparent}.bx-od-b:hover{background:#fff}
.bx-car{position:relative;height:300px;perspective:1100px}
.bx-car-esc{position:absolute;inset:0;transform-style:preserve-3d}
.bx-car-c{--k:0;position:absolute;left:50%;top:10px;width:min(260px,70%);margin-left:max(-130px,-35%);display:grid;gap:6px;padding:16px;border-radius:var(--r);background:#fff;border:1px solid var(--line);box-shadow:var(--sh-2);text-decoration:none;color:var(--ink);
  transform:translateX(calc(var(--k) * 62%)) translateZ(calc(-120px * max(var(--k), calc(var(--k) * -1)))) rotateY(calc(var(--k) * -24deg));opacity:calc(1 - .32 * max(var(--k), calc(var(--k) * -1)));transition:transform .5s var(--ease),opacity .5s}
.bx-car-c img{width:100%;height:120px;object-fit:cover;border-radius:12px}.bx-car-c span{font-size:.9rem;color:var(--ink-3)}
.bx-car-n{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:1.4rem;cursor:pointer;z-index:2}
.bx-car-n.ant{left:4px}.bx-car-n.sig{right:4px}
@media (prefers-reduced-motion:reduce){.bx-op-pista,.bx-led{animation:none}.bx-car-c{transition:none}}

/* ---------- correcciones tras la revisión visual ---------- */
.cu17-prog .bar,.cu17-fin-c .bar,.cu17-cb .bar{display:block;height:8px;border-radius:999px;background:var(--bg-2);overflow:hidden}
.cu17-prog .bar>i,.cu17-fin-c .bar>i,.cu17-cb .bar>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--mint),var(--teal-d))}
/* el acceso por rol no debe apretar el menú: en pantallas medianas se muestra solo el icono (con nombre accesible) */
@media (max-width:1440px){.hdr-actions .acct-rol .btn span{display:none}.hdr-actions .acct-rol .btn{padding-inline:10px}}
@media (max-width:1440px){.nav-largo{display:none}.nav-corto{display:inline}}

/* MARK 17 · «Avisos de NIDO» en Tu cuenta (módulo 10 · notificaciones internas) */
.avisos-cuenta { list-style: none; margin: 0; padding: 0; display: grid; gap: .75rem; }
.aviso-cuenta { border: 1px solid var(--line, #E2E8F0); border-left: 4px solid var(--teal, #2A9FB0); border-radius: 12px; padding: .75rem 1rem; display: grid; gap: .4rem; }
.aviso-cuenta.leido { border-left-color: var(--line, #E2E8F0); opacity: .85; }

/* MARK 17 · 03-11-2026 · «Crea tu plan personalizado»: botón centrado en su sección (texto centrado encima) */
.plan-banda{flex-direction:column;justify-content:center;text-align:center}
.plan-banda > div{max-width:62ch;margin:0 auto}
.plan-banda .btn-plan{align-self:center;margin:0 auto}
/* MARK 17 · fotografías de la semana del plan familiar (sitio/vistas/plan-evidencias.js) */
.pev h3{display:flex;align-items:center;gap:8px}
.pev-aviso{margin:.4rem 0 .6rem;padding-left:1.2rem}
.pev-aviso li{margin:.2rem 0}
.pev-lista{display:grid;gap:10px;margin:.6rem 0}
.pev-fila{display:grid;gap:6px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--bg,#fff)}
.pev-fila.is-falta{border-color:#E2B26B;background:#FFF9EE}
.pev-fotos{display:flex;flex-wrap:wrap;gap:8px}
.pev-foto{margin:0;width:112px;display:grid;gap:3px}
.pev-foto img{width:112px;height:112px;object-fit:cover;border-radius:10px;border:1px solid var(--line);background:#F3F1EC}
.pev-foto.is-env img{border-color:#7FB3A6}
.pev-foto figcaption{display:flex;justify-content:space-between;gap:4px;align-items:center}
.pev-acc{gap:6px;flex-wrap:wrap}
.pev-marco{max-height:60vh;overflow:auto;text-align:center;margin:.5rem 0}
.pev-lienzo{max-width:100%;height:auto;border-radius:10px;border:1px solid var(--line);touch-action:auto}
.pev-lienzo.pev-modo{cursor:crosshair;touch-action:none;outline:3px dashed #E2B26B;outline-offset:2px}
.pev-priv summary{cursor:pointer}
