/*
 * SISEN Cursos — misma identidad que sisen.com.mx («El Instrumento», plugin sisen-validador 4.9.x):
 * claros #f7f9fb/#eef2f6, títulos azul #14284b, texto #16181d, rojo SISEN #c8362b solo en señales y botones,
 * Archivo en títulos y botones, IBM Plex Mono en etiquetas // y datos técnicos, cuerpo con la letra del sistema.
 */
:root{
  --bone:#f7f9fb; --panel:#eef2f6; --navy:#14284b; --navy2:#0d1a31; --ink:#16181d; --rojo:#c8362b; --rojo-n:#e0362b;
  --borde:#e3e9f0; --gris:#5a6b7d; --verde:#2e9e4f; --verde-o:#1d7a3a;
  --disp:'Archivo',-apple-system,"system-ui","Segoe UI",Roboto,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,'SF Mono',Menlo,monospace;
  --sans:'Archivo',-apple-system,"system-ui","Segoe UI",Roboto,Helvetica,Arial,sans-serif; /* (0.9.2 · D35) Archivo también en el texto */
  --alto-header:90px; /* (0.9.5) medida con el logo completo */
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--sans);background:var(--bone);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip;min-height:100vh;display:flex;flex-direction:column}
img{max-width:100%;display:block}
a{color:var(--navy)}
h1,h2,h3,h4{font-family:var(--disp);color:var(--navy);letter-spacing:-.02em;line-height:1.14;text-wrap:balance}
.eyebrow{font-family:var(--mono);font-weight:500;font-size:.74rem;letter-spacing:.14em;color:var(--rojo);text-transform:uppercase;display:inline-block}
.mono{font-family:var(--mono);font-weight:500}
.nb{white-space:nowrap}
.sc-saltar{position:absolute;left:-999px;top:0;background:var(--navy);color:#fff;padding:.6rem 1rem;z-index:99}
.sc-saltar:focus{left:0}
:focus-visible{outline:2px solid var(--rojo);outline-offset:2px}

/* ---------- encabezado (igual al de sisen.com.mx) ---------- */
.sc-top{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--borde)}
.sc-hwrap{max-width:1160px;margin:0 auto;padding:.6rem 1.4rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.sc-logo{display:flex;align-items:center;gap:.9rem;text-decoration:none;flex:0 0 auto;line-height:0}
.sc-logo img{height:70px;width:auto} /* (0.9.5) logo completo con la frase */
.sc-sello{font-family:var(--mono);font-weight:500;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--rojo);line-height:1.2;
  border-left:1px solid var(--borde);padding-left:.9rem}
.sc-menu{display:flex;gap:.2rem;flex-wrap:nowrap}
.sc-menu a{font-family:var(--disp);font-weight:650;font-size:.9rem;color:var(--navy);text-decoration:none;white-space:nowrap;
  padding:.5rem .85rem;border-radius:10px;position:relative;transition:color .2s ease}
.sc-menu a::after{content:"";position:absolute;left:.85rem;right:.85rem;bottom:.3rem;height:2px;background:var(--rojo);
  transform:scaleX(0);transform-origin:left;transition:transform .28s cubic-bezier(.4,0,.2,1)}
.sc-menu a:hover,.sc-menu a.act{color:var(--rojo)}
.sc-menu a:hover::after,.sc-menu a.act::after{transform:scaleX(1)}
.sc-menu .m-corto{display:none}
@media (max-width:760px){
  :root{--alto-header:112px}
  .sc-hwrap{flex-direction:column;gap:.2rem;padding:.5rem 1rem .35rem}
  .sc-logo img{height:58px}
  .sc-sello{font-size:.62rem;padding-left:.7rem}
  .sc-menu a{font-size:.84rem;padding:.45rem .6rem}
  .sc-menu a::after{left:.6rem;right:.6rem}
}
@media (max-width:400px){
  :root{--alto-header:103px}
  .sc-logo{gap:.6rem}
  .sc-logo img{height:50px}
  .sc-sello{white-space:nowrap;font-size:.58rem;letter-spacing:.1em;padding-left:.6rem}
  .sc-menu .m-largo{display:none}
  .sc-menu .m-corto{display:inline}
  .sc-menu a{font-size:.8rem;padding:.4rem .45rem}
}

.sc-main{max-width:1160px;width:100%;margin:0 auto;padding:0 1.4rem 1rem;flex:1 0 auto}
@media (max-width:560px){.sc-main{padding:0 1rem 1rem}}

/* ---------- avisos ---------- */
.sisc-aviso{margin:1.2rem 0 0;padding:.85rem 1.1rem;border-radius:12px;border:1px solid var(--borde);background:#fff;font-weight:600;border-left:4px solid var(--verde)}
.sisc-aviso.error{border-left-color:var(--rojo);color:#8f241c;background:#fff6f5}
.sisc-aviso.info{border-left-color:var(--navy)}
/* (13-oct) Que el aviso no quede fuera de la vista en el celular: se pega bajo la barra y los buenos se van solos. */
.sisc-aviso{position:sticky;top:calc(var(--alto-header,84px) + 8px);z-index:40;box-shadow:0 6px 18px rgba(20,40,75,.08);transition:opacity .4s}
.sisc-aviso.se-va{opacity:0}
.sc-sugiere{display:block;margin-top:.3rem;font-size:.85rem;color:var(--navy)}
.sc-sugiere button{font:inherit;color:inherit;text-decoration:underline;background:none;border:0;padding:0;cursor:pointer}

/* ---------- héroe ---------- */
.hero{position:relative;overflow:hidden;border-radius:0 0 22px 22px;background:
  radial-gradient(110% 130% at 88% -10%,rgba(20,40,75,.10),transparent 52%),linear-gradient(180deg,#fdfeff,var(--panel));
  padding:3.4rem 2rem 3rem;margin:0 -1.4rem}
/* (supervisión 44 · S44-3) La línea roja baja y sube con transform, no con «top»: animar «top» cuenta como brinco (CLS de la
   tienda de 0.005 a 0.020 en 12 s); la caja ocupa todo el héroe y la línea es su ::before. */
.scan{position:absolute;inset:0;height:auto;pointer-events:none;opacity:.5;animation:scan2 5.5s cubic-bezier(.4,0,.2,1) infinite;will-change:transform}
.scan::before{content:"";position:absolute;inset-inline:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--rojo),transparent)}
@keyframes scan2{0%{transform:translateY(0)}50%{transform:translateY(calc(100% - 2px))}100%{transform:translateY(0)}}
.hero h1{font-size:clamp(2rem,4.6vw,3.1rem);font-weight:780;max-width:20ch;margin:.45rem 0 .9rem}
.sub{max-width:58ch;font-size:1.05rem;margin-bottom:1.4rem;color:var(--ink)}
.hero.con-foto{display:grid;grid-template-columns:1.05fr .95fr;gap:2.4rem;align-items:center}
.hero-img{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--borde);box-shadow:0 18px 44px rgba(20,40,75,.18);margin:0}
.hero-img img{width:100%;height:360px;object-fit:cover}
.hero-img figcaption{position:absolute;inset-inline:0;bottom:0;background:linear-gradient(transparent,rgba(13,26,49,.88));color:#fff;
  font-family:var(--mono);font-weight:500;font-size:.64rem;letter-spacing:.12em;padding:2.2rem .95rem .75rem;text-transform:uppercase}
.precio-hero{display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap;margin:-.2rem 0 1.4rem}
.precio-hero b{font-family:var(--disp);font-weight:800;font-size:2.4rem;color:var(--navy);letter-spacing:-.02em;line-height:1}
.precio-hero span{color:var(--gris);font-size:.95rem}
.hero-btns{display:flex;flex-wrap:wrap;gap:.7rem}
@media (max-width:860px){.hero.con-foto{grid-template-columns:1fr;gap:1.6rem}.hero-img img{height:220px}}
@media (max-width:560px){.hero{padding:2.4rem 1rem 2.2rem;margin:0 -1rem}}

.pruebas{list-style:none;display:flex;flex-wrap:wrap;gap:.45rem;margin:1.3rem 0 0}
.pruebas li{font-family:var(--mono);font-weight:500;font-size:.72rem;letter-spacing:.04em;background:#fff;border:1px solid var(--borde);color:var(--navy);border-radius:999px;padding:.32rem .75rem}
.pruebas li::before{content:"✓";color:var(--verde);font-weight:700;margin-right:.4rem}

/* ---------- botones (destello de barrido, como el sitio) ---------- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--disp);font-weight:700;letter-spacing:.01em;
  padding:.85em 1.8em;border-radius:12px;background:var(--rojo);color:#fff;text-decoration:none;overflow:hidden;font-size:.97rem;line-height:1.2;
  box-shadow:0 8px 20px rgba(200,54,43,.28);transition:transform .2s ease,box-shadow .2s ease,background .2s ease;border:none;cursor:pointer;text-align:center}
.btn i{position:absolute;inset:0;background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.25) 50%,transparent 58%);
  transform:translateX(-120%);transition:transform .55s ease;pointer-events:none}
.btn:hover i,.btn:focus-visible i{transform:translateX(120%)}
.btn:hover,.btn:focus-visible{transform:translateY(-2px);box-shadow:0 14px 30px rgba(200,54,43,.4)}
.btn.sec{background:transparent;color:var(--navy);border:1.5px solid var(--navy);box-shadow:none}
.btn.sec:hover{background:var(--navy);color:#fff}
.btn.navy{background:var(--navy);box-shadow:0 8px 20px rgba(20,40,75,.25)}
.btn.verde{background:var(--verde-o);box-shadow:0 8px 20px rgba(29,122,58,.25)}
.btn.chico{padding:.55em 1.05em;font-size:.86rem;border-radius:10px}
.btn.ancho{width:100%}
.btn[disabled],.btn.off{background:#b9c2ce;box-shadow:none;cursor:not-allowed;transform:none}
.btn.sec[disabled]{background:transparent;color:#9aa6b4;border-color:#c7d0db}
.enlace{background:none;border:none;color:var(--navy);font-weight:700;font-size:.88rem;cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:.2rem 0;font-family:inherit}
.enlace:hover{color:var(--rojo)}

/* ---------- secciones ---------- */
.seccion{padding:2.8rem 0 1rem}
.seccion > .eyebrow{margin-bottom:.2rem}
.seccion h2{font-size:clamp(1.5rem,3.4vw,2.2rem);font-weight:750;margin-bottom:.4rem}
.seccion p.intro{max-width:66ch;color:var(--gris);margin-bottom:1.6rem}

/* pasos */
.pasos{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;counter-reset:p}
.pasos li{counter-increment:p;position:relative;background:#fff;border:1px solid var(--borde);border-radius:14px;padding:3.4rem 1.2rem 1.2rem;line-height:1.5}
.pasos li::before{content:counter(p);position:absolute;left:1.2rem;top:1.05rem;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--navy);color:#fff;font:700 .95rem/1.9rem var(--disp);text-align:center}
.pasos b{display:block;font-family:var(--disp);color:var(--navy);font-size:1.04rem;margin-bottom:.2rem}
.pasos span{color:var(--gris);font-size:.93rem}
@media (max-width:840px){.pasos{grid-template-columns:1fr}.pasos li{padding:1.1rem 1.1rem 1.1rem 3.7rem}.pasos li::before{top:1.05rem}}

/* ---------- tarjetas de curso ---------- */
.cursos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.1rem}
.card{border:1px solid var(--borde);border-radius:15px;background:#fff;position:relative;overflow:hidden;display:flex;flex-direction:column;
  transition:transform .22s ease,box-shadow .22s ease}
.card::after{content:"";position:absolute;inset:0;border-radius:15px;border:1.5px solid transparent;transition:border-color .25s ease;pointer-events:none}
.card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(20,40,75,.12)}
.card:hover::after,.card.elegido::after{border-color:var(--rojo)}
.sc-portada{position:relative;height:118px;overflow:hidden;display:flex;align-items:center;gap:.9rem;padding:0 1.15rem;
  background:linear-gradient(135deg,#fff 0%,var(--panel) 100%);border-bottom:1px solid var(--borde)}
.sc-portada::before{content:"";position:absolute;right:-30px;top:-30px;width:150px;height:150px;border-radius:50%;border:1.5px solid rgba(20,40,75,.07)}
.sc-portada::after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--rojo);transform:scaleY(0);transform-origin:top;transition:transform .3s ease}
.card:hover .sc-portada::after,.card.elegido .sc-portada::after{transform:scaleY(1)}
.sc-disco{width:62px;height:62px;flex:0 0 auto;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 18px rgba(20,40,75,.18)}
.sc-ico{width:32px;height:32px;fill:none;stroke:#fff;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.sc-norma{position:relative;font-family:var(--mono);font-weight:500;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--rojo);line-height:1.4}
/* buscador del catálogo */
.sc-buscar{display:flex;align-items:center;gap:.7rem;background:#fff;border:1.5px solid #c7d2e0;border-radius:14px;padding:.35rem .5rem .35rem 1rem;margin:0 0 1.2rem;max-width:620px;transition:border-color .2s ease,box-shadow .2s ease}
.sc-buscar:focus-within{border-color:var(--navy);box-shadow:0 0 0 3px rgba(20,40,75,.12)}
.sc-buscar svg{width:20px;height:20px;flex:0 0 auto;fill:none;stroke:var(--gris);stroke-width:2;stroke-linecap:round}
.sc-buscar input{flex:1;min-width:0;border:none;outline:none;font:500 1rem var(--sans);color:var(--ink);padding:.6rem 0;background:transparent}
.sc-buscar .cuenta{font-family:var(--mono);font-size:.7rem;letter-spacing:.06em;color:var(--gris);white-space:nowrap;padding-right:.4rem}
.sc-sin{display:none;background:#fff;border:1px dashed #c7d2e0;border-radius:14px;padding:1.4rem;text-align:center;color:var(--gris)}
.sc-sin.ver{display:block}
.sc-sin a{color:var(--rojo);font-weight:700}
.card[hidden]{display:none}
.card .ctx{padding:1rem 1.15rem 1.1rem;display:flex;flex-direction:column;gap:.35rem;flex:1}
.card h3{font-size:1.06rem;font-weight:720}
.card p{font-size:.9rem;color:var(--gris);line-height:1.5}
/* (0.8.5 · SEO-L3) enlace a la ficha del curso en el sitio; 36 px de alto para el dedo (revisor de clic) */
.card .sc-ficha{margin:0;font-size:.88rem}.card .sc-ficha a{display:inline-flex;align-items:center;min-height:36px;padding:0 .1rem 0 0;color:var(--rojo);font-weight:600;text-decoration:none}.card .sc-ficha a:hover{text-decoration:underline}
.card .meta{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-top:auto;padding-top:.8rem;border-top:1px solid var(--borde)}
.card .meta .hrs{font-family:var(--mono);font-weight:500;font-size:.72rem;letter-spacing:.06em;color:var(--gris);text-transform:uppercase}
.card .meta .hrs b{font-family:var(--disp);font-size:1.02rem;color:var(--navy);letter-spacing:0;text-transform:none;display:block}

/* selector de cantidad */
.sc-cant{display:inline-flex;align-items:center;border:1.5px solid #c7d2e0;border-radius:11px;overflow:hidden;background:#fff}
.sc-cant button{width:2.3rem;height:2.4rem;border:none;background:#fff;color:var(--navy);font:700 1.2rem/1 var(--disp);cursor:pointer}
.sc-cant button:hover{background:var(--panel);color:var(--rojo)}
.sc-cant input{width:2.6rem;height:2.4rem;border:none;border-inline:1px solid var(--borde);text-align:center;font:600 1rem var(--mono);color:var(--navy);-moz-appearance:textfield;appearance:textfield}
.sc-cant input::-webkit-outer-spin-button,.sc-cant input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* barra del pedido (fija abajo) */
.sc-carrito{position:sticky;bottom:0;z-index:50;margin:1.6rem -1.4rem 0;background:var(--navy);color:#dfe7f2;padding:.85rem 1.4rem calc(.85rem + env(safe-area-inset-bottom));
  display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;box-shadow:0 -10px 30px rgba(13,26,49,.22);border-radius:16px 16px 0 0}
.sc-carrito .tot{display:flex;align-items:baseline;gap:.8rem;flex-wrap:wrap}
.sc-carrito .tot b{font-family:var(--disp);font-weight:800;font-size:1.5rem;color:#fff;font-variant-numeric:tabular-nums}
.sc-carrito .tot span{font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}
.sc-carrito.vacio .btn{background:#4a5b78;box-shadow:none}
@media (max-width:560px){.sc-carrito{margin:1.4rem -1rem 0;padding-inline:1rem}.sc-carrito .btn{width:100%}}

/* preguntas frecuentes */
.faqs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1rem}
.faq{background:#fff;border:1px solid var(--borde);border-radius:14px;padding:1.1rem 1.2rem}
.faq h3{font-size:1rem;margin-bottom:.3rem}
.faq p{font-size:.9rem;color:var(--gris)}

/* banda de cifras (azul, como la del sitio) */
.banda{background:var(--navy);color:#fff;border-radius:18px;padding:1.6rem;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1.6rem 0}
.banda div{text-align:center}
.banda b{display:block;font-family:var(--disp);font-weight:780;font-size:2rem;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1}
.banda span{color:#b6c3d8;font-size:.82rem}
@media (max-width:640px){.banda{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- cajas y formularios ---------- */
.sc-caja{background:#fff;border:1px solid var(--borde);border-radius:18px;padding:1.6rem}
.sc-centro{max-width:520px;margin:2.6rem auto 1rem}
.sc-centro h1{font-size:clamp(1.6rem,4vw,2.1rem);margin:.35rem 0 .6rem}
.sc-centro .sub{font-size:1rem}
.sc-dos{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:2rem;align-items:start;padding:1.8rem 0 1rem}
.sc-dos > aside{position:sticky;top:calc(var(--alto-header) + 1rem)}
@media (max-width:900px){.sc-dos{grid-template-columns:1fr}.sc-dos > aside{position:static;order:-1}}
.sc-titulo{padding:2rem 0 .2rem}
.sc-titulo h1{font-size:clamp(1.7rem,4vw,2.4rem);margin:.35rem 0 .4rem}
.sc-titulo p{color:var(--gris);max-width:64ch}
.sc-solo-ti p{margin:.55rem 0 0;color:var(--gris);font-size:.95rem} /* (0.9.6) «¿Es solo para ti?» */
.sc-solo-ti .enlace{font-size:inherit;padding:0}
.sc-form{display:grid;gap:1rem}
.sc-form h2{font-size:1.2rem;margin-top:.4rem}
.sc-fila{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.sc-fila.tres{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:640px){.sc-fila,.sc-fila.tres{grid-template-columns:1fr}}
.sc-campo label{display:block;font-family:var(--disp);font-weight:700;color:var(--navy);font-size:.9rem;margin-bottom:.35rem}
.sc-campo small{display:block;color:var(--gris);font-size:.8rem;margin-top:.3rem;line-height:1.4}
.sc-campo input,.sc-campo select{width:100%;padding:.78em .95em;border:1.5px solid #c7d2e0;border-radius:11px;font-size:1rem;font-family:var(--sans);color:var(--ink);background:#fff}
.sc-campo input:focus,.sc-campo select:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(20,40,75,.12)}
.sc-campo input.mayus{text-transform:uppercase;font-family:var(--mono);font-weight:500;letter-spacing:.04em}
.sc-campo input.codigo{font-family:var(--mono);font-weight:600;font-size:1.6rem;letter-spacing:.5em;text-align:center;padding:.6em .5em}
.sc-check{display:flex;gap:.7rem;align-items:flex-start;background:var(--panel);border:1px solid var(--borde);border-radius:12px;padding:.9rem 1rem;cursor:pointer;line-height:1.45;font-size:.94rem}
.sc-check input{width:1.15rem;height:1.15rem;margin-top:.15rem;accent-color:var(--rojo);flex:0 0 auto}
.sc-check b{color:var(--navy)}
.sc-check a{color:var(--rojo);font-weight:600}
.sc-factura{display:grid;gap:1rem;padding:1rem;border:1px dashed #c7d2e0;border-radius:12px}
.sc-factura[hidden]{display:none}
.sc-nota{font-size:.84rem;color:var(--gris);line-height:1.5}
.sc-nota b{color:var(--navy)}

/* resumen del pedido */
.sc-resumen{background:#fff;border:1px solid var(--borde);border-radius:18px;box-shadow:0 14px 34px rgba(20,40,75,.10);overflow:hidden}
.sc-resumen header{background:var(--navy);color:#fff;padding:1rem 1.3rem}
.sc-resumen header .eyebrow{color:#ff9a8f}
.sc-resumen header h2{color:#fff;font-size:1.15rem;margin-top:.2rem}
.sc-resumen ul{list-style:none;padding:.4rem 1.3rem}
.sc-resumen li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.2rem .8rem;padding:.7rem 0;border-bottom:1px solid var(--borde);font-size:.92rem}
.sc-resumen li small{grid-column:1;color:var(--gris);font-family:var(--mono);font-size:.7rem;letter-spacing:.04em}
.sc-resumen li span{grid-row:1/3;grid-column:2;align-self:center;font-weight:700;font-variant-numeric:tabular-nums}
.sc-resumen dl{padding:.6rem 1.3rem 1.2rem;display:grid;grid-template-columns:1fr auto;gap:.35rem 1rem;font-variant-numeric:tabular-nums}
.sc-resumen dt{color:var(--gris)}
.sc-resumen dd{text-align:right;font-weight:600}
.sc-resumen dt.total,.sc-resumen dd.total{font-family:var(--disp);font-weight:800;color:var(--navy);font-size:1.3rem;padding-top:.5rem;border-top:1px solid var(--borde)}
.sc-resumen .pie{padding:0 1.3rem 1.2rem}
.sc-seguro{display:flex;gap:.6rem;align-items:flex-start;font-size:.82rem;color:var(--gris);line-height:1.45}
.sc-seguro svg{width:18px;height:18px;flex:0 0 auto;stroke:var(--verde);fill:none;stroke-width:2;margin-top:.1rem}

/* estados */
.estado{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--mono);font-weight:500;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;
  border-radius:999px;padding:.25rem .65rem;background:var(--panel);color:var(--navy);border:1px solid var(--borde);white-space:nowrap}
.estado::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:currentColor;opacity:.8}
.estado.verde{background:#e7f4ec;color:#1f7a45;border-color:#cfe8d8}
.estado.rojo{background:#fff1ef;color:#a3271f;border-color:#f6d3ce}
.estado.azul{background:#e9eef8;color:var(--navy);border-color:#d3dcee}
.estado.ambar{background:#fff7e6;color:#8a5a00;border-color:#f3e0b5}
.barra{height:8px;border-radius:99px;background:var(--panel);overflow:hidden;border:1px solid var(--borde)}
.barra i{display:block;height:100%;background:linear-gradient(90deg,var(--navy),#2c4c86);border-radius:99px;transition:width .6s ease}
.barra.ok i{background:var(--verde)}

/* ---------- pedido / pago ---------- */
.sc-ok{width:64px;height:64px;border-radius:50%;background:#e7f4ec;display:flex;align-items:center;justify-content:center;margin-bottom:.6rem}
.sc-ok svg{width:34px;height:34px;stroke:var(--verde);fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.sc-espera{width:64px;height:64px;border-radius:50%;border:4px solid var(--panel);border-top-color:var(--rojo);animation:gira 1s linear infinite;margin-bottom:.6rem}
@keyframes gira{to{transform:rotate(360deg)}}
.sc-simulador{border:2px dashed var(--rojo);border-radius:18px;padding:1.6rem;background:#fff}
.sc-simulador .monto{font-family:var(--disp);font-weight:800;font-size:2.4rem;color:var(--navy);margin:.4rem 0 1rem}
.sc-botones{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;margin-top:1.2rem}

/* ---------- panel de la empresa ---------- */
.sc-emp{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap;padding:2rem 0 .4rem}
.sc-emp h1{font-size:clamp(1.6rem,4vw,2.3rem);margin:.3rem 0 .2rem}
.sc-emp p{color:var(--gris);font-size:.92rem}
.sc-emp .mono{font-size:.8rem;letter-spacing:.04em}
.grupo{background:#fff;border:1px solid var(--borde);border-radius:18px;overflow:hidden;margin-bottom:1.2rem}
.grupo > header{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:1rem;align-items:center;padding:.9rem 1.2rem;border-bottom:1px solid var(--borde);background:linear-gradient(180deg,#fff,var(--bone))}
.grupo > header .sc-portada{height:64px;border-radius:10px;padding:0;justify-content:center;border:1px solid var(--borde)}
.grupo > header .sc-portada::before{display:none}
.grupo > header .sc-portada .sc-norma{display:none}
.grupo > header .sc-portada .sc-disco{width:42px;height:42px;margin:0;box-shadow:none}
.grupo > header .sc-portada .sc-ico{width:22px;height:22px}
.grupo > header h2{font-size:1.08rem}
.grupo > header p{color:var(--gris);font-size:.84rem}
@media (max-width:560px){.grupo > header{grid-template-columns:64px minmax(0,1fr)}.grupo > header .cuenta{grid-column:1/-1}}
.lugar{border-bottom:1px solid var(--borde);padding:1rem 1.2rem}
.lugar:last-child{border-bottom:none}
.lugar .fila{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;gap:.8rem 1.2rem;align-items:center}
.lugar .quien b{font-family:var(--disp);color:var(--navy);font-size:1rem;display:block;line-height:1.3}
.lugar .quien small{font-family:var(--mono);font-size:.7rem;color:var(--gris);letter-spacing:.04em}
.lugar .avance{display:grid;gap:.35rem;justify-items:start}
.lugar .avance .barra{width:100%}
.lugar{scroll-margin-top:calc(var(--alto-header) + 14px)}
.lugar .acciones{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end;align-items:center}
.lugar.libre .quien b{color:var(--gris);font-weight:650}
@media (max-width:760px){.lugar .fila{grid-template-columns:1fr}.lugar .acciones{justify-content:flex-start}}
.lugar details{margin-top:.8rem}
.lugar summary{list-style:none;cursor:pointer;display:inline-flex}
.lugar summary::-webkit-details-marker{display:none}
.lugar .sc-form{margin-top:.9rem;padding:1.1rem;background:var(--bone);border:1px solid var(--borde);border-radius:14px}
.copiado{font-family:var(--mono);font-size:.7rem;color:var(--verde);letter-spacing:.06em}
.sc-tabla-wrap{overflow-x:auto;border:1px solid var(--borde);border-radius:14px;background:#fff}
table.sc-tabla{width:100%;border-collapse:collapse;font-size:.9rem;min-width:560px}
.sc-tabla th{font-family:var(--disp);font-weight:700;color:var(--navy);text-align:left;background:var(--panel);padding:.65rem .9rem;border-bottom:1px solid var(--borde);white-space:nowrap}
.sc-tabla td{padding:.6rem .9rem;border-bottom:1px solid var(--borde);vertical-align:middle}
.sc-tabla tr:last-child td{border-bottom:none}
.sc-tabla td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}

/* ---------- aula del trabajador ---------- */
.aula-hero{position:relative;isolation:isolate;overflow:hidden;margin:0 -1.4rem;padding:2.6rem 1.4rem 2.2rem;background:var(--navy2);color:#dfe7f2;border-radius:0 0 22px 22px}
.aula-ico{position:absolute;right:6%;top:50%;transform:translateY(-50%);width:170px;height:170px;border-radius:50%;border:1.5px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;z-index:-1}
.aula-ico .sc-ico{width:84px;height:84px;stroke:rgba(255,255,255,.28);stroke-width:1.1}
@media (max-width:700px){.aula-ico{width:110px;height:110px;right:-20px;opacity:.6}.aula-ico .sc-ico{width:54px;height:54px}}
.aula-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(120% 140% at 90% 0%,#1f3a68 0%,var(--navy) 45%,var(--navy2) 100%)}
.aula-hero .eyebrow{color:#ff9a8f}
.aula-hero h1{color:#fff;font-size:clamp(1.6rem,4vw,2.5rem);max-width:24ch;margin:.4rem 0 .5rem}
.aula-hero p{color:#c5d1e2}
.aula-hero .barra{max-width:440px;margin-top:1.1rem;background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.2);height:10px}
.aula-hero .barra i{background:linear-gradient(90deg,var(--rojo-n),#ff7b6e)}
.aula-hero .pct{font-family:var(--mono);font-size:.74rem;letter-spacing:.1em;color:#c5d1e2;margin-top:.45rem}
@media (max-width:560px){.aula-hero{margin:0 -1rem;padding:2rem 1rem 1.8rem}}
.aula{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:2rem;align-items:start;padding:1.8rem 0 1rem}
.aula aside{position:sticky;top:calc(var(--alto-header) + 1rem);display:grid;gap:1rem}
@media (max-width:900px){.aula{grid-template-columns:1fr}.aula aside{position:static}}
.linea{list-style:none;counter-reset:m}
.linea li{position:relative;padding:0 0 1rem 3.2rem}
.linea li:not(:last-child)::after{content:"";position:absolute;left:1.05rem;top:2.4rem;bottom:.2rem;width:2px;background:var(--borde)}
.linea li.hecho:not(:last-child)::after{background:var(--verde)}
.linea .punto{position:absolute;left:0;top:.35rem;width:2.15rem;height:2.15rem;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:#fff;border:2px solid #c7d0db;color:#9aa6b4;font:700 .88rem/1 var(--disp)}
.linea li.hecho .punto{background:var(--verde);border-color:var(--verde);color:#fff}
.linea li.toca .punto{border-color:var(--rojo);color:var(--rojo);box-shadow:0 0 0 4px rgba(200,54,43,.12)}
.linea .punto svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.linea .mod{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:#fff;border:1px solid var(--borde);border-radius:14px;padding:.85rem 1rem;flex-wrap:wrap}
.linea li.toca .mod{border-color:var(--rojo);box-shadow:0 10px 24px rgba(200,54,43,.10)}
.linea li.bloq .mod{background:var(--bone)}
.linea .mod b{font-family:var(--disp);color:var(--navy);font-size:.98rem;line-height:1.3;display:block}
.linea li.bloq .mod b{color:#7d8a99}
.linea .mod small{font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;color:var(--gris);text-transform:uppercase}
.lado{background:#fff;border:1px solid var(--borde);border-radius:16px;padding:1.2rem}
.lado h3{font-size:1.05rem;margin-bottom:.5rem}
.lado dl{display:grid;grid-template-columns:1fr auto;gap:.45rem .8rem;font-size:.9rem}
.lado dt{color:var(--gris)}
.lado dd{font-weight:700;color:var(--navy);text-align:right;font-variant-numeric:tabular-nums}
.lado p{font-size:.88rem;color:var(--gris)}
.lado.navy{background:var(--navy);border-color:var(--navy);color:#dfe7f2}
.lado.navy h3{color:#fff}
.lado.navy p{color:#c5d1e2}
.aprobado{background:#fff;border:1px solid #cfe8d8;border-left:5px solid var(--verde);border-radius:16px;padding:1.4rem 1.5rem;margin-bottom:1.4rem}
.aprobado h2{font-size:1.35rem;margin-bottom:.3rem}
.aprobado p{color:var(--gris)}
.docs{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}

/* módulo */
.modulo{background:#fff;border:1px solid var(--borde);border-radius:18px;overflow:hidden}
.modulo > header{padding:1.3rem 1.5rem;border-bottom:1px solid var(--borde)}
.modulo > header h1{font-size:clamp(1.4rem,3.4vw,1.9rem);margin:.35rem 0 .2rem}
.modulo .contenido{padding:1.5rem;display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;max-width:76ch}
.modulo .contenido p{line-height:1.7}
.modulo .contenido ul{margin-left:1.2rem;display:grid;gap:.35rem}
.video{aspect-ratio:16/9;border-radius:14px;background:radial-gradient(120% 120% at 85% 0%,#1f3a68,var(--navy) 55%,var(--navy2));display:flex;align-items:center;justify-content:center;color:#c5d1e2;
  font-family:var(--mono);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;text-align:center;padding:1rem;position:relative;overflow:hidden}
.video::before{content:"";width:64px;height:64px;border-radius:50%;background:var(--rojo) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 7l8 5-8 5z' fill='white'/%3E%3C/svg%3E") center/60% no-repeat;position:absolute;top:calc(50% - 52px);left:calc(50% - 32px);box-shadow:0 10px 30px rgba(200,54,43,.4)}
.video span{margin-top:5.2rem}
.modulo footer{padding:1.2rem 1.5rem;border-top:1px solid var(--borde);background:var(--bone);display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.reloj{font-family:var(--mono);font-weight:500;font-size:.8rem;letter-spacing:.06em;color:var(--gris)}
.reloj b{color:var(--navy);font-size:1rem}

/* examen */
.examen{display:grid;gap:1rem}
.pregunta{background:#fff;border:1px solid var(--borde);border-radius:16px;padding:1.2rem 1.3rem}
.pregunta legend{font-family:var(--disp);font-weight:700;color:var(--navy);font-size:1.02rem;line-height:1.4;display:flex;gap:.7rem;padding:0}
.pregunta legend span{font-family:var(--mono);font-weight:500;font-size:.75rem;color:var(--rojo);padding-top:.2rem;flex:0 0 auto}
.pregunta fieldset{border:none}
.opcion{display:flex;gap:.7rem;align-items:flex-start;border:1.5px solid var(--borde);border-radius:12px;padding:.75rem .9rem;margin-top:.55rem;cursor:pointer;transition:border-color .2s ease,background .2s ease}
.opcion:hover{border-color:#b9c6d6}
.opcion input{accent-color:var(--rojo);width:1.1rem;height:1.1rem;margin-top:.15rem;flex:0 0 auto}
.opcion:has(input:checked){border-color:var(--navy);background:#f3f6fb}
.resultado{text-align:center;padding:2rem 1.4rem}
.resultado .cifra{font-family:var(--disp);font-weight:800;font-size:3.4rem;color:var(--navy);line-height:1}
.resultado .cifra small{font-size:1.4rem;color:var(--gris)}

/* ---------- pie (igual al de sisen.com.mx) ---------- */
.sc-pie{margin-top:3rem;background:var(--navy);color:#b6c3d8}
.sc-fwrap{max-width:1160px;margin:0 auto;padding:2.4rem 1.4rem calc(2.4rem + env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:center;gap:.8rem;font-size:.86rem;text-align:center}
.sc-fwrap img{height:40px;width:auto;filter:brightness(0) invert(1);opacity:.9}
.sc-fwrap a{color:#d6e0ee;text-decoration:none}
.sc-fwrap a:hover{color:#ff8a7a}
.sc-fnav{display:flex;flex-wrap:wrap;gap:.3rem 1.1rem;justify-content:center}
.sc-copy{font-size:.76rem;opacity:.78}
.sc-fwrap .sc-mono{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em}
body.sin-pie .sc-pie{margin-top:0}

.sc-pill-prueba{position:fixed;top:calc(var(--alto-header) + 10px);right:14px;z-index:70;font-family:var(--mono);font-weight:500;font-size:.62rem;letter-spacing:.1em;
  background:var(--rojo);color:#fff;border-radius:999px;padding:.4em 1em;box-shadow:0 6px 16px rgba(200,54,43,.3);pointer-events:none}
@media (max-width:560px){.sc-pill-prueba{top:calc(var(--alto-header) - 6px);right:8px;font-size:.56rem}}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* caja con foto arriba (entrada del trabajador) y migas */
.sc-caja.con-portada{overflow:hidden;padding-top:0}
.sc-caja.con-portada > .sc-portada{margin:0 -1.6rem 1.4rem;height:110px}
.migas{font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;color:var(--gris);padding:1.2rem 0 .8rem}
.migas a{color:var(--gris);text-decoration:none;border-bottom:1px solid var(--borde)}
.migas a:hover{color:var(--rojo)}

/* ---------- bloques de los módulos (texto, esquemas, repasos y actividades) ---------- */
.modulo .contenido{max-width:none}
.contenido .bq{margin:.4rem 0}
.contenido .bq h3{font-size:1.12rem;margin-bottom:.5rem}
.contenido .bq-texto p{margin:.55rem 0;max-width:72ch;line-height:1.7}
.contenido .bq-texto ul,.contenido .bq-texto ol{margin:.5rem 0 .5rem 1.2rem;max-width:72ch;display:grid;gap:.3rem}
.contenido .objetivo{background:var(--panel);border-left:4px solid var(--navy);border-radius:0 12px 12px 0;padding:.8rem 1rem;max-width:72ch}
.et{display:block;font-family:var(--mono);font-weight:500;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rojo);margin-bottom:.2rem}
.bq-puntos .ck{list-style:none;padding:0;display:grid;gap:.5rem;max-width:72ch}
.bq-puntos .ck li{position:relative;padding-left:1.8rem;line-height:1.5}
.bq-puntos .ck li::before{content:"";position:absolute;left:0;top:.15em;width:1.15rem;height:1.15rem;border-radius:50%;background:var(--rojo) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.6 8.4l2.9 2.9 5.9-6.6' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/74% no-repeat}
.bq-alerta{border-radius:12px;padding:.85rem 1rem;max-width:72ch;border:1px solid var(--borde);background:#fff;border-left:5px solid var(--navy)}
.bq-alerta b{font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;display:block;margin-bottom:.15rem;color:var(--navy)}
.bq-alerta.peligro{border-left-color:var(--rojo);background:#fff6f5}.bq-alerta.peligro b{color:var(--rojo)}
.bq-alerta.ojo{border-left-color:#c78a00;background:#fffaf0}.bq-alerta.ojo b{color:#8a5a00}
.bq-esq{margin:.6rem 0;background:#fff;border:1px solid var(--borde);border-radius:16px;padding:1.1rem 1.2rem}
.pasos-e{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.7rem;counter-reset:x}
.pasos-e li{position:relative;background:var(--bone);border:1px solid var(--borde);border-radius:12px;padding:.85rem .9rem;display:grid;gap:.25rem;align-content:start}
.pasos-e .n{width:1.8rem;height:1.8rem;border-radius:50%;background:var(--navy);color:#fff;font:700 .85rem/1.8rem var(--disp);text-align:center}
.pasos-e b{font-family:var(--disp);color:var(--navy);font-size:.95rem;line-height:1.3}
.pasos-e span:not(.n){font-size:.86rem;color:var(--gris);line-height:1.45}
.jer{display:grid;gap:.35rem;justify-items:center}
.jer ol{list-style:none;padding:0;display:grid;gap:.35rem;justify-items:center;width:100%}
.jer li{width:var(--w);min-width:200px;max-width:100%;background:linear-gradient(90deg,var(--navy),#2c4c86);color:#fff;border-radius:10px;padding:.6rem .9rem;text-align:center}
.jer li:nth-child(n+3){background:linear-gradient(90deg,#3d5b8f,#56719e)}
.jer li:last-child{background:var(--rojo)}
.jer li b{display:block;font-family:var(--disp)}
.jer li span{font-size:.82rem;opacity:.9}
.jer-et{font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gris)}
.tarjetas-e{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.6rem}
.te{background:var(--bone);border:1px solid var(--borde);border-left:3px solid var(--rojo);border-radius:10px;padding:.7rem .85rem;display:grid;gap:.2rem;align-content:start}
.te .k{font-family:var(--mono);font-size:.7rem;color:var(--rojo);letter-spacing:.08em}
.te b{font-family:var(--disp);color:var(--navy);font-size:.93rem;line-height:1.3}
.te span:not(.k){font-size:.84rem;color:var(--gris);line-height:1.45}
.rombos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.8rem}
.rombo{display:grid;justify-items:center;text-align:center;gap:.25rem;background:var(--bone);border:1px solid var(--borde);border-radius:12px;padding:.8rem .6rem}
.picto{width:76px;height:76px}
.rombo b{font-family:var(--disp);color:var(--navy);font-size:.88rem;line-height:1.25}
.rombo span{font-size:.8rem;color:var(--gris);line-height:1.4}
.bq-esq .tabla{overflow-x:auto}
.bq-esq table{border-collapse:collapse;width:100%;font-size:.9rem;min-width:480px}
.bq-esq th{background:var(--navy);color:#fff;font-family:var(--disp);text-align:left;padding:.55rem .75rem}
.bq-esq td{border-bottom:1px solid var(--borde);padding:.55rem .75rem;vertical-align:top}
.bq-preg{border:1.5px solid var(--borde);border-radius:14px;padding:1rem 1.1rem;background:#fff;max-width:76ch}
.bq-preg legend{font-family:var(--disp);font-weight:700;color:var(--navy);padding:0 .3rem;line-height:1.4}
.bq-preg legend span{display:inline-block;font-family:var(--mono);font-weight:500;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--navy);border-radius:999px;padding:.1rem .55rem;margin-right:.5rem;vertical-align:middle}
.bq-preg .op{display:flex;gap:.6rem;align-items:flex-start;border:1px solid var(--borde);border-radius:10px;padding:.55rem .75rem;margin-top:.45rem;cursor:pointer}
.bq-preg .op input{accent-color:var(--navy);margin-top:.2rem}
.bq-preg .op.bien{border-color:var(--verde);background:#e7f4ec}
.bq-preg .op.mal{border-color:var(--rojo);background:#fff1ef}
.bq-preg .fb{margin-top:.6rem;font-size:.92rem;color:var(--ink)}
.bq-preg .fb b{color:var(--verde)}
.bq-preg.fallo .fb b{color:var(--rojo)}
.bq-act{border:1.5px dashed #b9c6d6;border-radius:14px;padding:1rem 1.1rem;background:#fbfcfe}
.bq-act .instr{font-weight:600;color:var(--navy);margin-bottom:.6rem}
.clasif{display:grid;gap:.45rem}
.clasif .fila{display:flex;justify-content:space-between;align-items:center;gap:.8rem;flex-wrap:wrap;background:#fff;border:1px solid var(--borde);border-radius:10px;padding:.5rem .7rem}
.clasif .grupos{display:flex;gap:.35rem;flex-wrap:wrap}
.clasif .grupos label{display:inline-flex;align-items:center;gap:.3rem;border:1px solid var(--borde);border-radius:999px;padding:.25rem .65rem;font-size:.85rem;cursor:pointer}
.clasif .grupos label:has(input:checked){background:var(--navy);color:#fff;border-color:var(--navy)}
.clasif .grupos input{position:absolute;opacity:0;pointer-events:none}
.clasif .fila.bien,.relac .fila.bien,.ordenar li.bien{border-color:var(--verde);background:#e7f4ec}
.clasif .fila.mal,.relac .fila.mal,.ordenar li.mal{border-color:var(--rojo);background:#fff1ef}
.bq-act .sol{display:block;margin-top:6px;color:#1f5e3a;font-weight:600;font-size:.9rem;flex-basis:100%}
.bq-act ol.sol-orden{margin:4px 0 0;padding-left:1.4em;font-weight:500;display:grid;gap:2px}
.ordenar{list-style:none;padding:0;display:grid;gap:.4rem;counter-reset:o}
.ordenar li{counter-increment:o;display:flex;justify-content:space-between;align-items:center;gap:.6rem;background:#fff;border:1px solid var(--borde);border-radius:10px;padding:.5rem .7rem}
.ordenar li::before{content:counter(o);font-family:var(--mono);color:var(--rojo);font-size:.8rem;margin-right:.3rem}
.ordenar li > span:first-of-type{flex:1}
.ordenar .mov{display:flex;gap:.25rem}
.ordenar .mov button{border:1px solid var(--borde);background:#fff;border-radius:8px;width:2rem;height:2rem;cursor:pointer;color:var(--navy)}
.relac{display:grid;gap:.45rem}
.relac .fila{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.6rem;align-items:center;background:#fff;border:1px solid var(--borde);border-radius:10px;padding:.5rem .7rem}
.relac select{border:1px solid #c7d2e0;border-radius:8px;padding:.45rem .5rem;font:inherit;min-width:0;width:100%}
@media (max-width:560px){.relac .fila{grid-template-columns:1fr}}
.act-pie{display:flex;align-items:center;gap:.8rem;margin-top:.8rem;flex-wrap:wrap}
.act-pie .res{font-weight:600;font-size:.92rem}
.bq-caso{background:var(--navy);color:#dfe7f2;border-radius:16px;padding:1.1rem 1.3rem;max-width:76ch}
.bq-caso .et{color:#ff9a8f}
.bq-caso h3{color:#fff}
.bq-caso ul{margin:.6rem 0 0 1.2rem;display:grid;gap:.3rem}
.bq-video .marco{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:var(--navy2)}
.bq-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.bq-video figcaption{font-size:.86rem;color:var(--gris);margin-top:.4rem}
.pendiente-mod{font-size:.85rem;color:var(--gris)}

/* ---------- ¿para quién es? (empresa o persona) ---------- */
.sc-para{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:0 0 1.1rem;max-width:860px}
.para{display:flex;gap:.8rem;align-items:flex-start;background:#fff;border:1.5px solid var(--borde);border-radius:14px;padding:1rem 1.1rem;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}
.para input{margin-top:.25rem;accent-color:var(--rojo);width:1.15rem;height:1.15rem;flex:0 0 auto}
.para b{display:block;font-family:var(--disp);color:var(--navy);font-size:1.05rem}
.para small{display:block;color:var(--gris);font-size:.88rem;line-height:1.45;margin-top:.15rem}
.para:has(input:checked){border-color:var(--rojo);box-shadow:0 8px 20px rgba(200,54,43,.12)}
@media (max-width:640px){.sc-para{grid-template-columns:1fr}}
.mis-cursos{display:grid;gap:.7rem;margin:1rem 0}
.mi-curso{background:var(--bone);border:1px solid var(--borde);border-radius:12px;padding:.9rem 1rem}
.mi-curso b{font-family:var(--disp);color:var(--navy)}
.encuesta{display:grid;gap:.9rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--borde)}
.encuesta h3{font-size:1.1rem}
.escala{border:0;display:grid;gap:.4rem}
.escala legend{font-weight:600;color:var(--ink);font-size:.95rem;margin-bottom:.35rem}
.escala-ops{display:flex;gap:.4rem;flex-wrap:wrap}
.escala-ops label{position:relative;cursor:pointer}
.escala-ops input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.escala-ops span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 .7rem;border:1px solid var(--borde);border-radius:10px;background:var(--bone);font-family:var(--mono);font-weight:500;color:var(--navy)}
.escala-ops .ninguna span{font-family:var(--sans);font-size:.85rem}
.escala-ops input:checked+span{background:var(--navy);border-color:var(--navy);color:#fff}
.escala-ops input:focus-visible+span{outline:2px solid var(--rojo);outline-offset:2px}
.encuesta .abierta{display:grid;gap:.35rem;font-weight:600;font-size:.95rem}
.encuesta textarea{width:100%;border:1px solid var(--borde);border-radius:10px;padding:.6rem .7rem;font:inherit;font-weight:400;resize:vertical}
.ficha-datos{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,1fr);gap:.55rem 1rem;margin:.6rem 0}
.ficha-datos dt{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gris);padding-top:.2rem}
.ficha-datos dd ul{margin:0;padding-left:1.1rem}
.ficha .mapa{display:flex;flex-wrap:wrap;gap:.3rem .5rem;list-style:none;padding:0;margin:0;counter-reset:m}
.ficha .mapa li{font-size:.88rem;background:var(--bone);border:1px solid var(--borde);border-radius:999px;padding:.15rem .7rem}
.ficha .mapa li+li::before{content:"→ ";color:var(--rojo)}
.ficha .objs{padding-left:1.3rem;display:grid;gap:.3rem}
@media (max-width:560px){.ficha-datos{grid-template-columns:1fr;gap:.15rem}.ficha-datos dd{margin-bottom:.5rem}}
.sc-factura-cliente{display:grid;gap:.45rem;text-align:left;background:#fff;border:1px solid var(--borde);border-left:3px solid var(--navy);border-radius:12px;padding:1rem 1.1rem;margin:0 0 1.4rem}
.sc-factura-cliente>b{font-family:var(--disp);color:var(--navy);font-size:1.05rem}
.sc-factura-cliente>span{font-size:.9rem;color:var(--gris);line-height:1.5}
.sc-factura-cliente>span b{color:var(--navy)}
.sc-factura-cliente .btn{justify-self:start;margin-top:.2rem}
.sc-factura-datos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:.2rem 0}
.sc-factura-datos div{background:var(--bone);border:1px solid var(--borde);border-radius:8px;padding:.5rem .65rem;min-width:0}
.sc-factura-datos dt{font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gris)}
.sc-factura-datos dd{color:var(--navy);font-size:1rem;overflow-wrap:anywhere}
@media (max-width:480px){.sc-factura-datos{grid-template-columns:1fr}}

/* ilustración de un curso (bloque «imagen») */
.bq-img{margin:1.2rem 0}.bq-img img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid var(--borde);background:var(--panel)}.bq-img figcaption{font-size:.86rem;color:var(--gris,#5a6577);margin-top:.45rem}

/* bloques del estándar didáctico (0.3.0): lección, Aplícalo en tu área, ¿Mito o realidad?, ¿Qué harías? */
.bq-lec{margin:2.2rem 0 .8rem;padding-top:1.1rem;border-top:2px solid var(--borde);font-size:1.25rem;color:var(--navy)}
.bq-lec .et{display:block;font:500 .72rem 'IBM Plex Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--rojo);margin-bottom:.2rem}
.bq-lista,.bq-vf,.bq-dec{margin:1.2rem 0;padding:1rem 1.1rem;border:1px solid var(--borde);border-radius:14px;background:var(--panel)}
.bq-lista{border-left:4px solid #2e7d4f}
.bq-lista .et,.bq-vf>.et,.bq-dec>.et{display:block;font:500 .72rem 'IBM Plex Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--rojo);margin-bottom:.35rem}
.bq-lista ul,.bq-vf ul{list-style:none;margin:.5rem 0 0;padding:0;display:grid;gap:.45rem}
.bq-lista label{display:flex;gap:.6rem;align-items:flex-start;cursor:pointer}
.bq-lista input{width:1.15rem;height:1.15rem;margin-top:.15rem;accent-color:#2e7d4f;flex:0 0 auto}
.bq-vf li{display:grid;gap:.4rem;padding:.6rem 0;border-bottom:1px dashed var(--borde)}
.bq-vf li:last-child{border-bottom:0}
.bq-vf .vf-bot{display:flex;gap:.5rem;flex-wrap:wrap}
.bq-vf .btn.bien,.bq-dec .op.bien{border-color:#2e7d4f;background:#e7f4ec;color:#1f5e3a}
.bq-vf .btn.mal,.bq-dec .op.mal{border-color:var(--rojo);background:#fbeceb;color:#8f241c}
.bq-vf .fb,.act-exp{margin:.2rem 0 0;font-size:.92rem}
.bq-dec .dec-paso{border:0;margin:.8rem 0 0;padding:0;display:grid;gap:.45rem}
.bq-dec legend{font-weight:700;color:var(--navy);margin-bottom:.4rem}
.bq-dec .op{display:grid;grid-template-columns:auto 1fr;gap:.2rem .6rem;align-items:start;border:1px solid var(--borde);border-radius:10px;padding:.6rem .8rem;background:#fff;cursor:pointer}
.bq-dec .op .cons{grid-column:2;font-style:normal;font-size:.9rem}
.bq-caso details.sug{margin-top:.8rem}
.bq-caso details.sug summary{cursor:pointer;font-weight:700}

/* 0.5.2: «Tus cursos» del trabajador con varios cursos (un solo enlace para todos) */
.trab-cursos{margin:1.4rem 0 0;background:#fff;border:1px solid var(--borde);border-radius:14px;padding:1rem 1.2rem}
.trab-cursos h2{font-family:var(--disp,'Archivo'),sans-serif;font-size:1.15rem;margin:0 0 .2rem}
.trab-cursos h2 span{color:var(--gris,#55667a);font-weight:600}
.trab-cursos p{margin:0 0 .6rem;color:var(--gris,#55667a);font-size:.92rem}
.trab-cursos ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.trab-cursos li{display:flex;gap:.8rem;align-items:center;justify-content:space-between;border:1px solid var(--borde);border-radius:10px;padding:.6rem .8rem}
.trab-cursos li span{display:grid;gap:.1rem;min-width:0}
.trab-cursos li small{color:var(--gris,#55667a)}
.trab-cursos li.actual{border-color:var(--navy,#14284b);background:#f3f6fa}
.trab-cursos li.ok small{color:#1f5e3a;font-weight:600}
.trab-cursos li em{font-style:normal;font-size:.85rem;font-weight:700;color:var(--navy,#14284b);white-space:nowrap}

/* 0.5.3: plan B del WhatsApp: a los 3 minutos, mandar el enlace por correo */
.plan-b{margin:.6rem 0 0;border:1px dashed var(--borde);border-radius:12px;padding:.7rem .9rem;background:var(--bone);display:grid;gap:.5rem}
.plan-b[hidden]{display:none}
.plan-b p{margin:0;font-size:.92rem}
.plan-b form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:0}
.plan-b input[type=email]{flex:1 1 220px;min-width:0;border:1px solid var(--borde);border-radius:8px;padding:.45rem .6rem;font:inherit}
.plan-b .enlace{justify-self:start}

/* 0.6.0: estado del WhatsApp (fase 2) debajo del estado del lugar */
.lugar .avance .estado.wa{display:inline-block;margin-top:.35rem}

/* 0.6.1: láminas anatomy (míralo funcionar) y videos motion */
.bq-anatomia,.bq-motion{margin:1.2rem 0;padding:0;border:0}
.bq-anatomia .et,.bq-motion .et{display:inline-block;font:600 .72rem/1 var(--mono,'IBM Plex Mono',monospace);letter-spacing:.06em;text-transform:uppercase;color:var(--rojo);margin-bottom:.3rem}
.bq-anatomia .tit,.bq-motion .tit{display:block;font:700 1.05rem/1.3 var(--disp,'Archivo',sans-serif);color:var(--navy);margin-bottom:.5rem}
iframe.lamina,.lamina-espera{display:block;width:100%;height:620px;border:0;border-radius:14px;background:#f2f2ef}
.bq-motion iframe.lamina,.bq-motion .lamina-espera{background:#0b1426;height:auto;aspect-ratio:16/9}
/* (0.7.3, informe 03) Se carga cuando se acerca (o al tocarla con conexión lenta o ahorro de datos): mientras, una caja del
   mismo alto con el botón. En celular el video es vertical 4:5 (como lo dibuja él) y la lámina usa todo el ancho. */
.lamina-espera{display:grid;place-content:center;justify-items:center;gap:.5rem;padding:1rem;text-align:center}
.lamina-espera .btn{margin:0}
.lamina-espera small{color:var(--gris);font-size:.82rem}
.bq-motion .lamina-espera small{color:#9fb0c8}
.lamina-espera.compacta{height:auto;min-height:180px;aspect-ratio:auto}
@media (max-width:640px){
  .bq-motion iframe.lamina,.bq-motion .lamina-espera{aspect-ratio:4/5}
  .bq-anatomia iframe.lamina,.bq-anatomia .lamina-espera{height:700px}
  .modulo .contenido .bq-anatomia,.modulo .contenido .bq-motion{margin-inline:-1.5rem}
  .modulo .contenido .bq-anatomia>:not(.lamina):not(iframe),.modulo .contenido .bq-motion>:not(.lamina):not(iframe){margin-inline:1.5rem}
  .modulo .contenido .bq-anatomia .lamina,.modulo .contenido .bq-motion .lamina{border-radius:0}
}
/* (supervisión 45 · S45-1) La caja del video toma la proporción que el video va a tener: el reproductor se pone vertical (4:5)
   cuando SU marco mide 560 px o menos (plantilla.html), no según el ancho de la pantalla. Con la regla de 640 px de arriba,
   a 608–640 px (Android acostado de 640×360) la caja reservaba 4:5 y el video medía 16:9: al cargar encogía 408 px y la
   página brincaba al subir (CLS 0.54); a 641–655 px pasaba al revés (crecía 376). Sin consultas de contenedor (navegadores
   de antes de 2023) se queda la regla de 640. La caja «compacta» (conexión lenta) sigue como estaba. */
.bq-motion{container-type:inline-size}
@container (max-width:560px){.bq-motion iframe.lamina,.bq-motion .lamina-espera:not(.compacta){aspect-ratio:4/5}}
@container (min-width:561px){.bq-motion iframe.lamina,.bq-motion .lamina-espera:not(.compacta){aspect-ratio:16/9}}
.bq-anatomia figcaption,.bq-motion figcaption{font-size:.88rem;color:var(--gris);margin-top:.4rem}
.bq-anatomia-m img{width:100%;height:auto}

/* ---------- (0.7.0) vista de administrador y vista previa de cursos ---------- */
.sc-franja-admin{background:var(--navy);color:#fff;font-family:var(--mono);font-weight:500;font-size:.72rem;letter-spacing:.04em;line-height:1.5;padding:.55rem 1.4rem;text-align:center}
.sc-franja-admin a{color:#fff;text-decoration:underline;margin-left:.4rem}
.solo-admin{font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;color:var(--rojo);text-transform:uppercase;margin:.1rem 0 .3rem}
.solo-admin a{color:var(--rojo)}
.vista-previa header .eyebrow{display:block;margin-bottom:.2rem}
.vista-previa footer{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.vista-indice{padding-left:1.4rem;margin-top:.8rem;display:grid;gap:.35rem}
.vista-indice li.act a{color:var(--rojo);font-weight:700}
.vista-indice small{font-family:var(--mono);color:var(--gris);font-size:.7rem}

/* (13-oct, evaluación del aula) */
.contenido .ya-hecho::before{content:"✓ Ya lo hiciste";display:block;margin:0 0 .35rem;font:600 12px/1.4 "IBM Plex Mono",ui-monospace,monospace;color:#1d7a3a;letter-spacing:.02em}
.reloj .reloj-nota{display:block;font-size:.86em;font-weight:400;opacity:.85;margin-top:.15rem}
.reloj.en-pausa .reloj-nota{display:none}
.reloj.en-pausa::after{content:"En pausa: toca la pantalla para seguir.";display:block;margin-top:.15rem;font-weight:700;color:#c8362b}
.clasif .grupos label:has(input:focus-visible){outline:2px solid #c8362b;outline-offset:2px;border-radius:6px}
.clasif .grupos input{clip:rect(0 0 0 0);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}

/* (0.7.4) revisión del curso en la vista previa: palomita por parte y banco del examen */
.vista-previa form.revision{margin:1rem 0 0;padding:.8rem 1rem;border-top:1px solid var(--borde);background:var(--bone)}
.vista-previa form.revision p{margin:0;display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.vista-previa .ok-rev{color:#1d7a3a;font-weight:600}
.banco-revision ol{display:grid;gap:1rem;margin-left:1.2rem}
.banco-revision ul{list-style:none;margin:.35rem 0 0;padding:0;display:grid;gap:.2rem}
.banco-revision li.buena{color:#1d7a3a;font-weight:600}
.banco-revision .exp{margin:.3rem 0 0;font-size:.9rem;color:var(--gris)}

/* ==================== 0.7.9 · frente B: aula, examen, manual, DC-3, diploma y fluidez (auditoría 14-oct) ==================== */
/* ACC-01 (15·M1) El foco del teclado nunca queda tapado por la cabecera fija ni por la barra del pedido o del examen.
   Ojo (informe 18, F3): esto ya deja la distancia bajo la cabecera, así que .lugar quita la suya para no sumarla dos veces. */
html{scroll-padding-top:calc(var(--alto-header,84px) + 1rem)}
html:has(.sc-carrito){scroll-padding-bottom:calc(8.5rem + env(safe-area-inset-bottom))}
html:has(.ex-pie){scroll-padding-bottom:5.5rem}
.lugar{scroll-margin-top:0}
/* FLU-11 (19·N2) El aviso bueno flota sobre la página y se va sin moverla (con un toque se quita antes).
   ACC-01: el de error ya no se pega arriba tapando campos; al cargar se enfoca y se centra solo (sisc.js). */
.sisc-aviso.error{position:relative;top:auto;z-index:auto}
.sisc-aviso:not(.error){position:fixed;top:calc(var(--alto-header,84px) + 8px);left:50%;transform:translateX(-50%);width:min(640px,calc(100% - 2rem));margin:0;z-index:65;box-shadow:0 10px 26px rgba(20,40,75,.16);cursor:pointer}
/* El aviso que no se va solo (.fijo, del frente A: «el enlace anterior ya no funciona») se queda en su lugar y se cierra a mano. */
.sisc-aviso.fijo{position:relative;top:auto;left:auto;transform:none;width:auto;margin:1.2rem 0 0;z-index:auto;cursor:auto}
/* FLU-10 (19·N1) Celular acostado: la cabecera no se queda fija (dejaba 312 px útiles de 390). */
@media (max-height:500px) and (orientation:landscape){:root{--alto-header:0px}.sc-top{position:static}}
/* AUL-09 (13·H6, 19 §3.3) Alto reservado de la lámina mientras carga: lo afina sisc.js con data-ar y data-si (contenido.php)
   y es el mismo que medirá con el molde 0.7.9 (#cabe=N). Aquí, lo que vale antes de que corra sisc.js. */
.bq-anatomia iframe.lamina,.bq-anatomia .lamina-espera{height:max(300px,calc(100svh - var(--alto-header) - 16px))}
@media (max-width:994px){.bq-anatomia iframe.lamina,.bq-anatomia .lamina-espera{height:max(300px,calc(100svh - var(--alto-header) + 140px))}}
@media (max-width:640px){.bq-anatomia iframe.lamina,.bq-anatomia .lamina-espera{height:max(300px,calc(100svh - var(--alto-header) + 230px))}}
.bq-anatomia .lamina-espera.compacta{height:auto}
/* FLU-15 (19·N6) La pregunta que falta, marcada. */
.pregunta{transition:border-color .2s ease,box-shadow .2s ease}
.pregunta.falta{border-color:var(--rojo);box-shadow:0 0 0 3px rgba(200,54,43,.14)}
/* AUL-07 (13-oct M9) Barra del examen: cuántas van y «Entregar» siempre a la mano. */
.ex-pie{position:sticky;bottom:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:.6rem 1rem;flex-wrap:wrap;margin-top:.4rem;
  background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--borde);border-radius:14px 14px 0 0;
  padding:.55rem .9rem calc(.55rem + env(safe-area-inset-bottom));box-shadow:0 -8px 22px rgba(20,40,75,.10)}
.ex-pie [data-contadas]{font-family:var(--mono);font-weight:500;font-size:.8rem;letter-spacing:.04em;color:var(--navy)}
.ex-pie{flex-wrap:nowrap}.ex-pie .btn{flex:0 0 auto}
@media (max-width:420px){.ex-pie{padding-inline:.7rem}.ex-pie [data-contadas]{font-size:.72rem;letter-spacing:0}.ex-pie .btn{padding:.75em 1.05em}}
.repasar{list-style:none;margin:.6rem auto 0;padding:0;display:grid;gap:.4rem;max-width:420px;text-align:left}
.repasar a{display:flex;justify-content:space-between;gap:.8rem;align-items:center;min-height:44px;background:var(--bone);border:1px solid var(--borde);border-radius:10px;padding:.5rem .8rem;text-decoration:none;font-weight:600}
.repasar small{font-family:var(--mono);font-size:.72rem;color:var(--gris);white-space:nowrap}
/* FLU-20 (19·N11) En pantalla táctil el efecto de pasar el ratón no deja tarjetas ni botones levantados. */
@media (hover:none){.card:hover,.btn:hover,.btn:focus-visible{transform:none}}
/* FLU-16 (19·N7) y ACC-16 (15·B9) Toques: mínimo 24 px siempre y 44 px en pantalla táctil. */
.enlace{min-height:24px;display:inline-flex;align-items:center;padding:.3rem 0}
.migas a{display:inline-block;padding:.3rem 0} /* ACC-16: la miga para regresar al curso medía 16 px de alto */
@media (pointer:coarse){
  .btn.chico{min-height:44px}
  .enlace{min-height:44px}
  .migas a{display:inline-block;padding:.75rem 0}
  .ordenar .mov button{width:44px;height:44px}
  .clasif .grupos label{min-height:44px;padding:.35rem .8rem}
  .relac select{min-height:44px}
  .sc-fwrap a{display:inline-block;padding:.65rem .15rem}
  .bq-caso details.sug summary{min-height:44px;display:flex;align-items:center}
  /* (supervisión 44 · S44-4) los «−/+» y la cantidad de la tienda (37×38 y 42×38) y el menú de arriba (33 px de alto): 44 px */
  .sc-cant button{width:44px;height:44px}.sc-cant input{height:44px}
  .sc-menu a{padding-top:.75rem;padding-bottom:.75rem;margin-top:-.3rem;margin-bottom:-.3rem}
}
@media (max-width:340px){:root{--alto-header:97px}.sc-logo img{height:44px}} /* ACC-16: sin desborde a 320 px */
/* FLU-21 (19·N12) «En pausa» ocupa el mismo lugar que la nota: el pie del módulo no cambia de alto. */
.reloj.en-pausa::after{content:none}
.reloj .reloj-nota{position:relative}
.reloj.en-pausa .reloj-nota{display:block;color:transparent;opacity:1}
.reloj.en-pausa .reloj-nota::after{content:"En pausa: toca la pantalla para seguir.";position:absolute;left:0;right:0;top:0;color:var(--rojo);font-weight:700}
/* ACC-07 (15·M7) texto que solo oye el lector de pantalla */
.sc-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
/* ACC-17 (15·B10) contraste de los módulos bloqueados (3.3 → 5.2:1) y «Tu avance» como H2 */
.linea li.bloq .mod b{color:#5a6b7d}
.lado h2{font-size:1.05rem;margin-bottom:.5rem}
.lado.navy h2{color:#fff}
/* ACC-19 (13-oct U-15) etiquetas del aula de 10.6–11 px a 12 px */
.et,.linea .mod small,.bq-preg legend span,.jer-et,.bq-alerta b{font-size:.75rem}
.linea .mod small{display:block;line-height:1.45;margin-top:.15rem}
/* REE-01 la línea de reembolso bajo «Empezar» · LEG-06 el aviso corto de datos del aula */
.linea .mod .reemb{flex-basis:100%;margin:0;font-size:.84rem;color:var(--gris);line-height:1.45}
.aula-datos{margin:0 0 1rem;max-width:72ch;font-size:.84rem;color:var(--gris);line-height:1.5}
.aula-datos a{color:var(--navy);font-weight:600}
/* ACC-19 (13-oct U-12) el video, también en texto */
.bq-motion details.trans{margin-top:.5rem;border:1px solid var(--borde);border-radius:12px;background:#fff}
.bq-motion details.trans summary{cursor:pointer;min-height:44px;display:flex;align-items:center;padding:.4rem .9rem;font-weight:700;color:var(--navy)}
.bq-motion details.trans > div{padding:0 .9rem .8rem;display:grid;gap:.45rem;font-size:.94rem}
.bq-motion details.trans p{margin:0}
.bq-motion details.trans ul{margin:0 0 0 1.1rem;display:grid;gap:.2rem}
/* el botón «▶ Ver el video» sobre el fondo oscuro del video (azul sobre azul: 1.25:1) */
.bq-motion .lamina-espera .btn.sec{color:#fff;border-color:rgba(255,255,255,.75)}
.bq-motion .lamina-espera .btn.sec:hover{background:#fff;color:var(--navy)}
/* ==================== fin 0.7.9 · frente B ==================== */
/* ==================== 0.7.9 · frente A (compra, panel, legal) ==================== */
/* FLU-12 (19·N3) y ACC-05 (15·M5): nada largo sin espacios (un correo) saca la página de la pantalla */
.sc-main{overflow-wrap:anywhere}
.pasos li{min-width:0}
.pasos span b{display:inline;overflow-wrap:anywhere}
@media (max-width:840px){.pasos{grid-template-columns:minmax(0,1fr)}}
/* FLU-18 (19·N9) barra del pedido compacta en celulares con poca altura: total y botón en un renglón */
@media (max-width:560px) and (max-height:700px){
  .sc-carrito{padding:.5rem 1rem calc(.5rem + env(safe-area-inset-bottom));gap:.4rem;flex-wrap:nowrap}
  .sc-carrito .tot{flex-direction:column;gap:0}
  .sc-carrito .tot b{font-size:1.2rem}
  .sc-carrito .btn{width:auto;flex:0 0 auto;padding-inline:1rem}
}
/* ACC-11 por qué el botón del carrito está apagado */
.sc-carrito-nota{flex-basis:100%;font-size:.78rem;color:#dfe7f2;margin-top:-.2rem}
.sc-carrito:not(.vacio) .sc-carrito-nota{display:none}
/* ACC-14 «Tu pedido» va antes en el código; en computadora se queda a la derecha */
@media (min-width:901px){.sc-dos > aside.sc-dos-resumen{order:2}}
/* ACC-04 error de cada campo, debajo de él */
.sc-campo.con-error input,.sc-campo.con-error select{border-color:var(--rojo)}
.sc-campo small.sc-error,small.sc-error{display:block;color:var(--rojo);font-weight:600;font-size:.82rem;margin-top:.3rem}
.sc-check.con-error{border-color:var(--rojo)}
.sc-opcional,.sc-campo label small.sc-opcional{display:inline;margin:0;font-family:var(--sans);font-weight:500;color:var(--gris);font-size:.8rem}
/* WA-07 «Se mandará a +52 …» */
.sc-tel-a{display:block;min-height:1.2em;font-family:var(--mono);font-size:.78rem;color:var(--navy);margin-top:.3rem} /* el renglón ya está reservado: nada brinca al escribir */
/* ACC-02 botón de pago trabajando */
.btn[aria-busy="true"]{opacity:.78;cursor:progress;transform:none}
/* LEG-02 casilla y aviso corto de datos · REE-01 aviso de reembolso en el panel */
.sc-aviso-pago,.sc-aviso-datos{font-size:.82rem;line-height:1.5}
.sc-aviso-pago a,.sc-aviso-datos a,.sc-check a{color:var(--navy);font-weight:600}
.sc-reemb-nota{margin:.8rem 0 0;font-size:.86rem}
.sc-reemb-uno{display:block;color:var(--gris);font-size:.78rem;flex-basis:100%}
.grupo.cancelados .lugar{opacity:.8}
/* LEG-02 páginas legales (/cursos/terminos/, /reembolsos/, /privacidad/) */
.sc-legal{max-width:780px;margin:2rem auto 1rem}
.sc-legal h1{font-size:clamp(1.5rem,4vw,2rem);margin:.35rem 0 .6rem}
.sc-legal h2{font-size:1.08rem;margin:1.4rem 0 .4rem}
.sc-legal p,.sc-legal li{line-height:1.6}
.sc-legal ul{margin:.2rem 0 .6rem 1.2rem;list-style:disc;display:grid;gap:.25rem}
.sc-legal-borrador{margin:0 0 1rem;padding:.7rem 1rem;border:1px solid var(--borde);border-left:4px solid var(--rojo);border-radius:10px;background:var(--panel);font-weight:600;font-size:.88rem}
/* ==================== fin 0.7.9 · frente A ==================== */
/* ==================== 0.8.0 (15-oct) · decisiones de Diego ==================== */
/* CON-01: la frase de la práctica en el aula y antes de pagar; sin animación ni nada que se mueva al cargar */
.lado .lado-nota{margin-top:.8rem;padding-top:.7rem;border-top:1px solid var(--borde);font-size:.84rem;line-height:1.5}
.sc-practica{margin-top:.8rem;padding:.65rem .85rem;border:1px solid var(--borde);border-left:4px solid var(--navy);border-radius:10px;background:var(--panel)}
.sc-practica a{font-weight:600}
/* ==================== fin 0.8.0 ==================== */

/* (0.8.2 · Diego, 15-oct) Al entrar: tomar el curso o presentar el examen. Módulos libres y detalle de cada intento. */
.eleccion{border:1px solid var(--borde);border-radius:14px;padding:1.2rem;margin:0 0 1.4rem;background:#fff}
.eleccion h2{font-size:1.15rem;margin:0 0 .8rem}
.eleccion-ops{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:.9rem}
.eleccion-op{display:flex;flex-direction:column;gap:.5rem;border:1px solid var(--borde);border-radius:12px;padding:1rem;background:var(--bone)}
.eleccion-op b{font-size:1rem}
.eleccion-op p{margin:0;font-size:.92rem;color:var(--gris);flex:1}
.eleccion-op .btn{align-self:flex-start}
.eleccion > :last-child:not(.eleccion-ops){margin-top:.8rem}
.linea li.libre .punto{border-color:var(--borde)}
.mapa-nota{margin:.4rem 0 0;font-size:.9rem;color:var(--gris)}
.mod-sig{display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center}
.intento-det{min-width:0;margin-top:.6rem;border-top:1px solid var(--borde);padding-top:.5rem}
.intento-det summary{cursor:pointer;font-weight:600;font-size:.9rem;min-height:32px;display:flex;align-items:center}
.intento-res{text-align:left;max-width:640px;margin:1rem auto}
.intento-cuenta{margin:0 0 .5rem;font-size:.95rem}
.intento-mal{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
.intento-mal li{display:flex;gap:.7rem;align-items:flex-start;min-width:0;background:var(--bone);border:1px solid var(--borde);border-left:3px solid var(--rojo);border-radius:10px;padding:.55rem .75rem}
.intento-mal .num{flex:none;min-width:1.7em;white-space:nowrap;font-family:var(--mono);font-size:.78rem;color:var(--gris);padding-top:.15rem}
.intento-mal li>div{min-width:0;overflow-wrap:anywhere}
.intento-mal b{display:block;font-size:.93rem;font-weight:600;line-height:1.35}
.intento-mal small{display:block;margin-top:.2rem;font-size:.84rem;color:var(--gris)}
.intento-mal a{font-weight:600}
.intento-ok{display:block;margin-top:.15rem;color:var(--verde-o);font-weight:600} /* (0.8.8 · D04) la respuesta correcta */
.lado .intento-res{margin:.5rem 0 0}
.lado .intento-mal li{padding:.45rem .6rem}

/* (0.8.4, revisión de botones 15-oct) Examen: aviso «te faltan N preguntas» a lo ancho de la barra fija, arriba del botón
   (antes era una ventana del navegador que en varios celulares no salía). */
.ex-pie:has(.aviso-faltan:not([hidden])){flex-wrap:wrap}
.aviso-faltan{flex:1 0 100%;order:-1;margin:0;padding:.6rem .8rem;border-radius:10px;background:#fff6f5;border:1px solid #f0c9c4;border-left:4px solid var(--rojo);color:#8f241c;font-weight:600;font-size:.88rem;line-height:1.4}
.aviso-faltan p{margin:0}
.aviso-faltan .sc-botones{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}
/* (0.8.4) Opciones de las actividades de clasificar (Sí / No…): mínimo 52 px de ancho para tocarlas con el dedo */
.clasif .grupos label{min-width:3.25rem;justify-content:center}
.copiar-a-mano{display:flex;flex-direction:column;gap:.25rem;flex:1 0 100%;margin-top:.4rem}
.copiar-a-mano input{font:inherit;font-size:.85rem;padding:.55rem .6rem;border:1px solid var(--borde);border-radius:8px;width:100%;background:#fff}
.copiar-a-mano small{color:var(--gris);font-size:.78rem}
/* (0.8.4) /cursos/reporte/: cuadro de texto como los demás campos y la elección WhatsApp / Correo como botones grandes */
.sc-campo textarea{width:100%;min-height:7.5rem;padding:.78em .95em;border:1.5px solid #c7d2e0;border-radius:11px;font-size:1rem;font-family:var(--sans);color:var(--ink);background:#fff;resize:vertical}
.sc-campo textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(20,40,75,.12)}
fieldset.sc-campo{border:none;margin:0;padding:0;min-width:0;display:flex;flex-wrap:wrap;gap:.6rem}
fieldset.sc-campo legend{width:100%;padding:0;margin-bottom:.35rem;font-family:var(--disp);font-weight:700;color:var(--navy);font-size:.9rem}
fieldset.sc-campo label{display:inline-flex;align-items:center;gap:.55rem;min-height:46px;margin:0;padding:.5rem 1.1rem;border:1.5px solid #c7d2e0;border-radius:11px;background:#fff;font-family:var(--sans);font-weight:600;font-size:1rem;color:var(--ink);cursor:pointer}
fieldset.sc-campo label:has(input:checked){border-color:var(--navy);background:rgba(20,40,75,.06)}
fieldset.sc-campo input[type=radio]{width:auto;margin:0;padding:0;accent-color:var(--navy)}
.sc-vence{font-size:.85rem;color:var(--gris)} /* (0.8.8 · D16) hasta cuándo para terminar */
.sc-factura-copiar{margin:.2rem 0 .6rem;font-size:.9rem} /* (0.8.8 · D19) */

/* ===== 0.9.0 (18-oct-2026) · ruta de la empresa: tu gente, por persona, papeles, encargados, rondas y plazos ===== */
details.sc-mini{margin-top:.4rem}
details.sc-mini>summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;min-height:36px}
details.sc-mini>summary::-webkit-details-marker{display:none}
details.sc-mini[open]>summary{margin-bottom:.3rem}
.sc-atencion{background:#fff7e6;border:1px solid #f3e0b5;border-radius:16px;padding:1rem 1.2rem;margin:1rem 0}
.sc-atencion h2{font-family:var(--disp);font-size:1.05rem;color:#8a5a00;margin:0 0 .5rem}
.sc-atencion ul{margin:0;padding:0;list-style:none;display:grid;gap:.6rem}
.sc-atencion li{display:flex;flex-wrap:wrap;gap:.4rem .7rem;align-items:center;line-height:1.45;font-size:.93rem}
.sc-atencion li .btn{margin-left:auto}
.sc-papeles{display:flex;flex-wrap:wrap;gap:.5rem .7rem;align-items:center;background:#e9eef8;border:1px solid #d3dcee;border-radius:16px;padding:.8rem 1.1rem;margin:1rem 0}
.sc-papeles b{font-family:var(--disp);color:var(--navy);margin-right:auto}
.sc-pestanas{display:flex;gap:.3rem;border-bottom:2px solid var(--borde);margin:1.2rem 0 1rem;overflow-x:auto}
.sc-pestanas a{font-family:var(--disp);font-weight:700;color:var(--gris);text-decoration:none;padding:.65rem .9rem;border-bottom:3px solid transparent;margin-bottom:-2px;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}
.sc-pestanas a.sel{color:var(--navy);border-bottom-color:var(--rojo)}
.sc-gente{display:grid;gap:.9rem}
.sc-gente .persona{background:#fff;border:1px solid var(--borde);border-radius:16px;overflow:hidden;scroll-margin-top:calc(var(--alto-header) + 12px)}
.sc-gente .persona:target{border-color:var(--navy);box-shadow:0 0 0 3px #d3dcee}
.sc-gente header{display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center;justify-content:space-between;padding:.9rem 1.1rem;background:var(--panel);border-bottom:1px solid var(--borde)}
.sc-gente h3{font-family:var(--disp);font-size:1.05rem;color:var(--navy);margin:0;line-height:1.25}
.sc-gente header small{display:block;font-family:var(--mono);font-size:.7rem;color:var(--gris);letter-spacing:.03em;margin-top:.15rem}
.sc-gente ul{list-style:none;margin:0;padding:0}
.sc-gente li{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;gap:.5rem 1rem;align-items:center;padding:.7rem 1.1rem;border-bottom:1px solid var(--borde)}
.sc-gente li:last-child{border-bottom:none}
.sc-gente li .curso{font-weight:600;color:var(--ink);min-width:0}
.sc-gente li .acc{display:flex;gap:.5rem;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.sc-gente li .estado{justify-self:start}
@media (max-width:640px){.sc-gente li{grid-template-columns:minmax(0,1fr);gap:.35rem}.sc-gente li .acc{justify-content:flex-start}}
.sc-asignar{display:grid;gap:1rem}
.sc-asignar .g-cursos{border:1px solid var(--borde);border-radius:12px;padding:.6rem .9rem;margin:.6rem 0;display:grid;gap:.2rem}
.sc-asignar .g-cursos legend{font-family:var(--disp);font-weight:700;color:var(--navy);padding:0 .3rem}
.sc-asignar .g-cursos label{min-height:40px;display:flex;align-items:center;gap:.5rem}
.g-matriz{min-width:0}
.g-matriz th small{display:block;font-family:var(--mono);font-weight:500;font-size:.66rem;color:var(--gris);letter-spacing:.03em}
.g-matriz td{text-align:center}
.g-matriz td label{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;cursor:pointer}
.g-matriz td input{width:20px;height:20px}
.g-matriz tbody th{white-space:normal;background:#fff}
.g-ya{color:#1f7a45;font-weight:700}
.encargados .enc-lista{list-style:none;margin:.8rem 0;padding:0;display:grid;gap:.5rem}
.encargados .enc-lista li{display:flex;flex-wrap:wrap;gap:.4rem 1rem;align-items:center;justify-content:space-between;border:1px solid var(--borde);border-radius:12px;padding:.6rem .9rem;background:#fff}
.encargados .enc-lista small{display:block;font-family:var(--mono);font-size:.7rem;color:var(--gris)}
.encargados .enc-salir{margin-top:.8rem}
.aula-plazo{margin:.6rem 0 0;font-size:.95rem}
.aula-plazo.pronto{color:#8a5a00;background:#fff7e6;border:1px solid #f3e0b5;border-radius:10px;padding:.4rem .7rem;display:inline-block}
.aula-cuenta{margin:.5rem 0 0}
.aula-ronda{margin:0 0 1rem}
.aula-ronda .btn{margin-left:.5rem}
.sc-sin-enlace{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1rem;margin-top:1.2rem;text-align:left}
.sc-sin-enlace>div{border:1px solid var(--borde);border-radius:14px;padding:1rem 1.1rem;background:var(--panel)}
.sc-sin-enlace b{font-family:var(--disp);color:var(--navy)}
.ok-curp{color:#1f7a45}
.mal-curp{color:#a3271f}
.ex-datos{margin-top:.6rem}
.sc-correccion{margin:.5rem 0 0}
.aprobados td small{color:var(--gris)}
@media print{.no-imprimir,.sc-top,.sc-pie{display:none!important}}
/* «Tus pedidos» en el celular: cada pedido como tarjeta (antes se escondían Estado y Total) */
@media (max-width:640px){
	.sc-tabla.pedidos{min-width:0}
	.sc-tabla.pedidos thead{display:none}
	.sc-tabla.pedidos tr{display:grid;grid-template-columns:1fr 1fr;gap:.2rem .8rem;padding:.7rem .9rem;border-bottom:1px solid var(--borde)}
	.sc-tabla.pedidos td{border:none;padding:.15rem 0}
	.sc-tabla.pedidos td::before{content:attr(data-t);display:block;font-family:var(--mono);font-size:.64rem;color:var(--gris);letter-spacing:.05em;text-transform:uppercase}
	.sc-tabla.pedidos td.num{text-align:left}
}
.sc-asignar>*,.sc-gente>*{min-width:0}
.g-matriz th{white-space:normal;min-width:8.5rem;vertical-align:bottom}
.g-matriz tbody th{min-width:7rem}
/* 0.9.0 · factura en un paso (factura-directa.php) */
.sc-factura-cliente{border-left:1px solid var(--borde);border-top:3px solid var(--navy)}
.sc-factura-cliente .sc-fd{margin-top:.4rem;display:grid;gap:.2rem}
.sc-factura-cliente .sc-fd .sc-fila{gap:.2rem 1rem}
.sc-factura-cliente .sc-fd .sc-error{color:#a3271f;font-size:.82rem}
.sc-factura-cliente .sc-fd-portal{font-size:.88rem;color:var(--gris)}
.sc-factura-cliente .sc-fd-portal span{display:block;margin:.3rem 0}
.sc-factura-cliente .sc-botones{display:flex;gap:.5rem;flex-wrap:wrap}
.sc-factura-cliente{margin-top:1.2rem}
/* (0.9.0 · FAC-17) «Facturación» en la cuenta: datos fiscales + «Quiero factura» */
.facturacion .fac-estado{margin:.5rem 0 .9rem;padding:.85rem 1.05rem;border-radius:12px;background:#fff;border:1px solid var(--borde);border-left:4px solid var(--gris);line-height:1.5;max-width:68ch}
.facturacion .fac-estado.on{border-left-color:var(--verde)}
.facturacion .fac-estado b{color:var(--navy)}
.facturacion .fac-datos form{margin-top:.7rem;max-width:640px}
.facturacion .fac-quiero{margin:.9rem 0 .4rem}
.facturacion .fac-apagar{margin-top:.6rem}
/* ==================== 0.9.3 · D40: el aula con la foto del curso, la hoja blanca y la barra (barra.css) ==================== */
.a-ico{width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
/* La foto: alto fijo y la imagen cubre, así no mueve nada al cargar. Sin foto (Extintores, Rutas): el símbolo del curso. */
.portada{position:relative;height:270px;margin:0 -1.4rem;background:var(--navy);overflow:hidden}
.portada img{width:100%;height:100%;object-fit:cover;object-position:center 38%}
.portada.chica{height:190px}
.portada.sin-foto{background:radial-gradient(120% 140% at 90% 0%,#1f3a68 0%,var(--navy) 45%,var(--navy2) 100%)}
.portada-ico{position:absolute;right:8%;top:54%;transform:translateY(-50%);width:150px;height:150px;border-radius:50%;border:1.5px solid rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center}
.portada.chica .portada-ico{width:110px;height:110px}
.portada-ico .sc-ico{width:72px;height:72px;stroke:rgba(255,255,255,.45);stroke-width:1.1}
.portada-top{position:absolute;top:14px;left:14px;right:14px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.portada-volver{flex:none;min-width:44px;height:44px;border-radius:999px;background:#fff;color:var(--navy);display:inline-flex;align-items:center;justify-content:center;gap:6px;
  text-decoration:none;font-family:var(--disp);font-weight:700;font-size:14px;box-shadow:0 4px 14px rgba(13,26,49,.2)}
.portada-volver .a-ico{width:20px;height:20px;stroke-width:2.2}
.portada-volver span{display:none}
.portada-volver:hover{color:var(--rojo)}
.portada-pill{min-width:0;background:var(--navy);color:#fff;font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.06em;line-height:1.2;
  padding:7px 11px;border-radius:999px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 4px 14px rgba(13,26,49,.2)}
/* La hoja blanca que se monta sobre la foto */
.hoja{position:relative;background:#fff;margin:-26px -1.4rem 0;border-radius:22px 22px 0 0;padding:22px 1.4rem 26px}
.hoja > .eyebrow,.hoja > header > .eyebrow,.hoja .sc-titulo > .eyebrow{color:#b3312a;letter-spacing:.08em}
.hoja h1{font-size:clamp(1.55rem,5.4vw,2.25rem);line-height:1.15;font-weight:800;letter-spacing:-.01em;margin:.45rem 0 .55rem}
.meta-curso{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.93rem;color:#566275;margin:0 0 .9rem;line-height:1.3}
.meta-curso span{display:inline-flex;align-items:center;gap:6px}
.aula-hoja .saludo{color:#2b3647;max-width:62ch;margin:0}
.aula-hoja .avance{margin:1rem 0 1.3rem}
.aula-hoja .avance .barra{max-width:440px;height:10px;background:#e8edf5;border-color:#dfe5ee}
.aula-hoja .avance .barra i{background:linear-gradient(90deg,var(--rojo-n),#ff7b6e)}
.aula-hoja .avance .pct{font-family:var(--mono);font-size:.74rem;letter-spacing:.1em;color:var(--gris);margin-top:.45rem}
.aula-hoja .trab-cursos{margin:0 0 1.3rem}
.aula-hoja .linea{margin-top:.4rem}
.aula-lado{display:grid;gap:1rem;margin-top:1.2rem}
/* El módulo y el examen sobre la hoja */
.modulo.hoja{padding:0;border:0;border-radius:22px 22px 0 0}
.modulo.hoja > header{padding:22px 1.4rem 14px;border-bottom:1px solid var(--borde)}
.modulo.hoja > header .meta-curso{margin:0}
.ex-hoja .sc-titulo{padding:0}
.ex-hoja form.examen{padding-top:1.2rem!important}
.ex-hoja.sc-centro{max-width:none;text-align:center}
.ex-hoja.sc-centro .sub{margin-inline:auto}
.ex-hoja .sc-botones{justify-content:inherit}
.ex-hoja.sc-centro .sc-botones{justify-content:center}
.ex-intentos{margin:0 0 1rem;max-width:640px}
.ex-intentos h2{font-size:1.1rem;margin:0 0 .2rem}
.con-barra .ex-pie{bottom:var(--alto-barra)}
html:has(.ex-pie):has(.aula-tabs){scroll-padding-bottom:calc(5.5rem + var(--alto-barra))}
/* En el celular la cabecera del sitio se va al bajar: la barra de abajo es la que manda */
@media (max-width:760px){
  :root:has(.aula-tabs){--alto-header:0px}
  :root:has(.aula-tabs) .sc-top{position:static}
}
@media (max-width:560px){
  .portada{margin:0 -1rem}
  .hoja{margin:-26px -1rem 0;padding:22px 1rem 24px}
  .modulo.hoja > header{padding:22px 1rem 14px}
}
/* Láminas: lo que tapa la barra no cuenta como pantalla útil (sisc.js hace la misma cuenta) */
.con-barra .bq-anatomia iframe.lamina,.con-barra .bq-anatomia .lamina-espera{height:max(300px,calc(100svh - var(--alto-header) - var(--alto-barra,0px) - 16px))}
@media (max-width:994px){.con-barra .bq-anatomia iframe.lamina,.con-barra .bq-anatomia .lamina-espera{height:max(300px,calc(100svh - var(--alto-header) - var(--alto-barra,0px) + 140px))}}
@media (max-width:640px){.con-barra .bq-anatomia iframe.lamina,.con-barra .bq-anatomia .lamina-espera{height:max(300px,calc(100svh - var(--alto-header) - var(--alto-barra,0px) + 230px))}}
.con-barra .bq-anatomia .lamina-espera.compacta{height:auto}
/* Computadora: en el inicio del curso la foto a la izquierda con tus recuadros abajo, y la hoja a la derecha */
@media (min-width:901px){
  .portada-volver{padding:0 14px 0 10px}
  .portada-volver span{display:inline}
  .portada.chica{height:240px;margin:28px 0 0;border-radius:22px}
  .hoja{margin:-26px 0 0;border-radius:22px;padding:28px 34px 30px;border:1px solid var(--borde)}
  .modulo.hoja{padding:0}
  .modulo.hoja > header{padding:26px 34px 16px}
  .aula2{display:grid;grid-template-columns:minmax(300px,400px) minmax(0,1fr);grid-template-rows:auto 1fr;gap:24px 32px;align-items:start;padding-top:28px}
  .aula2 > .portada{grid-column:1;grid-row:1;margin:0;height:440px;border-radius:22px}
  .aula2 > .hoja{grid-column:2;grid-row:1 / span 2;margin:0;padding:30px 34px}
  .aula2 > .aula-lado{grid-column:1;grid-row:2;margin:0}
}

/* ==================== 0.9.3 · frente B: aula, examen, manual y barra (auditoría del 24-oct-2026) ==================== */
/* AUL-17 (02·M3) Lo que lleva el atributo hidden no se ve nunca: .btn{display:inline-flex} le ganaba y «Terminé este módulo»
   salía gris y desactivado en cada módulo, aunque el módulo se marca solo desde el 15-oct. */
[hidden]{display:none!important}
/* REN-11 Letras desde el plugin (sisc_fuentes_html, base.php) con respaldo de las mismas medidas: nada brinca al llegar. */
:root{--disp:'Archivo','Archivo respaldo A','Archivo respaldo R',-apple-system,"system-ui","Segoe UI",Roboto,sans-serif;
  --sans:'Archivo','Archivo respaldo A','Archivo respaldo R',-apple-system,"system-ui","Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* ACC-27 Los títulos de bloque que suben a H2 (sisc_encabezados_aula) se ven igual que antes. */
.contenido h2.bq-t{font-size:1.17em;margin:0 0 .5rem}
.contenido .bq h2.bq-t{font-size:1.12rem;margin-bottom:.5rem}
.bq-caso h2.bq-t{color:#fff}

/* ---- REN-13 La barra Curso · Manual · Examen (antes assets/barra.css, una hoja aparte que frenaba el pintado) ----
   Celular: fija abajo, a todo lo ancho. Computadora: flotante y centrada. --alto-barra = lo que tapa desde abajo
   (sisc.js mide la real para el alto de las láminas). */
:root{--alto-barra:calc(77px + env(safe-area-inset-bottom))}
html:has(.aula-tabs){scroll-padding-bottom:calc(var(--alto-barra) + 12px)}
.con-barra .sc-pie{padding-bottom:var(--alto-barra)}
.aula-tabs{position:fixed;left:0;right:0;bottom:0;z-index:70;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;
  background:#fff;border-top:1px solid #dfe5ee;padding:10px 14px calc(12px + env(safe-area-inset-bottom));box-shadow:0 -6px 18px rgba(20,40,75,.08);
  font-family:var(--disp)}
.aula-tabs.n2{grid-template-columns:repeat(2,minmax(0,1fr))}
.aula-tabs .tab{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:54px;border-radius:16px;
  color:#455369;text-decoration:none;font-size:13px;font-weight:700;line-height:1.1;letter-spacing:0;-webkit-tap-highlight-color:transparent;
  transition:transform .18s ease,background-color .25s ease,color .25s ease}
.aula-tabs .tab:hover{transform:translateY(-2px);color:#14284b}
.aula-tabs .tab:active{transform:scale(.94)}
/* La activa se ilumina en verde claro (D40, Diego: «alguna animación e iluminando en verde claro»).
   ACC-20 (15·M1, 01·M1) el pulso da 3 vueltas al llegar y se queda quieto, en verde: antes no paraba (distraía al leer y
   repintaba la pantalla 60 veces por segundo). Ahora es un aro aparte que solo cambia tamaño y transparencia (sin repintar).
   ACC-24 (15·B1) además del color, una rayita arriba del ícono: se distingue sin depender del verde. */
.aula-tabs .tab.activa{background:#d8f5e3;color:#14603a}
.aula-tabs .tab.activa::before{content:"";position:absolute;top:5px;left:50%;width:24px;height:3px;margin-left:-12px;border-radius:3px;background:#14603a}
.aula-tabs .tab.activa::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 0 6px rgba(74,201,128,.45);opacity:0;pointer-events:none;
  animation:sisc-luz2 2.4s ease-out 3}
.aula-tabs .tab.activa .ico{animation:sisc-brinca .5s ease-out}
.aula-tabs .tab:focus-visible{outline:3px solid #14284b;outline-offset:2px}
.aula-tabs .ico{display:flex}
.aula-tabs svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@keyframes sisc-luz2{0%{opacity:1;transform:scale(.97)}70%{opacity:0;transform:scale(1.14)}100%{opacity:0;transform:scale(1.14)}}
@keyframes sisc-brinca{0%{transform:translateY(0) scale(1)}35%{transform:translateY(-5px) scale(1.12)}65%{transform:translateY(1px) scale(.98)}100%{transform:translateY(0) scale(1)}}
@media (min-width:761px){
  :root{--alto-barra:94px}
  .aula-tabs{left:50%;right:auto;bottom:22px;transform:translateX(-50%);width:min(440px,calc(100% - 32px));gap:8px;padding:8px;
    border:1px solid #dfe5ee;border-radius:22px;box-shadow:0 10px 30px rgba(20,40,75,.16)}
}
/* Celular acostado (informe 19 · M2, decidido: variante b): la barra NO se queda fija; va en un renglón al final del contenido,
   antes del pie, y arriba queda «Mi curso» en la foto. Así la lámina y el video caben en lo que deja la pantalla (cabeH() y
   la reserva ya no le descuentan nada: --alto-barra 0) y nada brinca. */
@media (max-height:500px) and (orientation:landscape){
  :root{--alto-barra:0px}
  .aula-tabs{position:static;left:auto;right:auto;bottom:auto;transform:none;width:auto;margin:1.4rem 0 0;border-radius:0;border-width:1px 0;gap:8px;box-shadow:none;
    padding:6px max(14px,env(safe-area-inset-right)) 6px max(14px,env(safe-area-inset-left))}
  .aula-tabs .tab{flex-direction:row;gap:8px;min-height:44px;font-size:14px}
  .aula-tabs .tab.activa::before{top:auto;bottom:4px}
}
@media (hover:none){.aula-tabs .tab:hover{transform:none;color:#455369}.aula-tabs .tab.activa:hover{color:#14603a}}
@media (prefers-reduced-motion:reduce){.aula-tabs .tab,.aula-tabs .tab.activa,.aula-tabs .tab.activa::after,.aula-tabs .tab.activa .ico{animation:none;transition:none}}
@media print{.aula-tabs{display:none!important}.con-barra .sc-pie{padding-bottom:0}}

/* ---- AUL-18 (tablero «Elegida · computadora», decidido): en la computadora la foto va a la izquierda también en los módulos,
   el examen, el resultado y las preguntas «¿Presentar el examen?» / «¿Abrir el manual?»; la hoja a la derecha. La foto es
   una columna de 300–360 px que se queda a la vista al bajar; su alto sale de la pantalla (no de la foto): no brinca. ---- */
@media (min-width:901px){
  .aula-par{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:32px;align-items:start;padding-top:28px}
  .aula-par > .portada,.aula-par > .portada.chica{position:sticky;top:calc(var(--alto-header,84px) + 20px);margin:0;border-radius:22px;
    height:clamp(320px,calc(100vh - var(--alto-header,84px) - var(--alto-barra,94px) - 48px),560px)}
  .aula-par > .hoja{margin:0}
  .aula-par > .portada img,.aula2 > .portada img{object-position:center 40%}
  /* sin foto (Extintores, Rutas y los cursos con el símbolo): el círculo al centro de la columna */
  .aula-par > .portada.sin-foto .portada-ico,.aula2 > .portada.sin-foto .portada-ico{right:auto;left:50%;top:52%;transform:translate(-50%,-50%);width:180px;height:180px}
  .aula-par > .portada.sin-foto .portada-ico .sc-ico,.aula2 > .portada.sin-foto .portada-ico .sc-ico{width:84px;height:84px}
}
/* Láminas en la hoja de la derecha (≈650–700 px de ancho a 1280–1440): antes de que corra sisc.js se reserva el alto del
   acomodo angosto (figura arriba y lo demás abajo), el mismo que calcula reserva() con ese ancho; así no brinca al cargar. */
@media (min-width:901px){.con-barra .aula-par .bq-anatomia iframe.lamina,.con-barra .aula-par .bq-anatomia .lamina-espera{height:max(300px,calc(100svh - var(--alto-header) - var(--alto-barra,0px) + 140px))}
  .con-barra .aula-par .bq-anatomia .lamina-espera.compacta{height:auto}}
/* La foto de arriba (celular y tableta) es un recorte horizontal hecho a la medida: centrada (REN-12). */
.portada picture{display:block;width:100%;height:100%}
.portada img{object-position:center 45%}
/* AUL-26 (13·B6) Sin foto: la píldora blanca para que no se pierda sobre el azul, y el círculo más chico y abajo en la franja chica. */
.portada.sin-foto .portada-pill{background:#fff;color:var(--navy);box-shadow:0 4px 14px rgba(13,26,49,.28)}
@media (max-width:900px){.portada.chica .portada-ico{width:96px;height:96px;top:62%}.portada.chica .portada-ico .sc-ico{width:52px;height:52px}}

/* ---- AUL-27 (13·B8) En la hoja del módulo el título y el texto empiezan en la misma línea, en cada tamaño ---- */
.modulo.hoja > .contenido{padding:1.4rem}
.modulo.hoja > footer{padding:1.1rem 1.4rem}
@media (max-width:560px){
  .modulo.hoja > header{padding:22px 20px 14px}
  .modulo.hoja > .contenido{padding:20px}
  .modulo.hoja > footer{padding:16px 20px}
  .hoja{padding-inline:20px}
  .modulo.hoja .contenido .bq-anatomia,.modulo.hoja .contenido .bq-motion{margin-inline:-20px}
  .modulo.hoja .contenido .bq-anatomia>:not(.lamina):not(iframe),.modulo.hoja .contenido .bq-motion>:not(.lamina):not(iframe){margin-inline:20px}
}
@media (min-width:561px) and (max-width:640px){
  .modulo.hoja .contenido .bq-anatomia,.modulo.hoja .contenido .bq-motion{margin-inline:-1.4rem}
  .modulo.hoja .contenido .bq-anatomia>:not(.lamina):not(iframe),.modulo.hoja .contenido .bq-motion>:not(.lamina):not(iframe){margin-inline:1.4rem}
}
@media (min-width:901px){
  .modulo.hoja > header{padding:28px 34px 16px}
  .modulo.hoja > .contenido{padding:24px 34px}
  .modulo.hoja > footer{padding:18px 34px;border-radius:0 0 22px 22px}
}
/* 901–1199 px (laptop chica, tableta acostada): con la foto a la izquierda la hoja es más angosta; menos relleno para que el
   video piloto siga a lo ancho (16:9) y no pase a su forma vertical, que no cabe arriba de la barra (informe 19 · B1). */
@media (min-width:901px) and (max-width:1199px){
  .modulo.hoja > header{padding-inline:24px}
  .modulo.hoja > .contenido{padding-inline:24px}
  .modulo.hoja > footer{padding-inline:24px}
  .aula-par{gap:24px;grid-template-columns:clamp(260px,26vw,300px) minmax(0,1fr)}
  .aula-par > .portada .portada-volver{padding:0}
  .aula-par > .portada .portada-volver span{display:none} /* en la columna angosta, «Mi curso» solo con la flecha (44 px), como en el celular: la píldora no se corta */
  .modulo.hoja .contenido .bq-anatomia,.modulo.hoja .contenido .bq-motion{margin-inline:-24px}
  .modulo.hoja .contenido .bq-anatomia>:not(.lamina):not(iframe),.modulo.hoja .contenido .bq-motion>:not(.lamina):not(iframe){margin-inline:24px}
  .modulo.hoja .contenido .bq-anatomia .lamina,.modulo.hoja .contenido .bq-motion .lamina{border-radius:0}
}
/* WA-I1 la ayuda al final de cada módulo */
.modulo footer .mod-ayuda{flex-basis:100%;margin:0;font-size:.88rem;color:var(--gris)}
.modulo footer .mod-ayuda a{font-weight:600}

/* ---- AUL-19 (02·M1) Examen en tableta y computadora: «N de 20 contestadas · Entregar examen» va pegado encima de la barra,
   del mismo ancho y centrado, como un solo bloque (antes eran dos bloques de distinto ancho y asomaban respuestas). ---- */
@media (min-width:761px){
  .con-barra .ex-pie{position:fixed;left:50%;right:auto;bottom:var(--alto-barra);transform:translateX(-50%);width:min(440px,calc(100% - 32px));
    margin:0;z-index:69;border-radius:18px 18px 0 0;border-bottom:0;padding:.6rem .7rem .6rem 1rem;box-shadow:0 -8px 22px rgba(20,40,75,.10)}
  body.con-barra:has(.ex-pie) .aula-tabs{border-top-left-radius:0;border-top-right-radius:0;border-top-color:#eef1f5}
  .con-barra form.examen{padding-bottom:5rem!important}
  body.con-barra:has(.ex-pie) .sc-pie{padding-bottom:calc(var(--alto-barra) + 4.5rem)}
}
/* ---- AUL-24 (02·B1, 15·B2) Celular acostado: foto baja para que se vea el título en la primera pantalla; en el examen se
   esconde la barra (queda «Mi curso» en la foto) y el pie con «Te faltan» se compacta. ---- */
@media (max-height:500px) and (orientation:landscape) and (max-width:900px){
  .portada{height:120px}
  .portada.chica{height:96px}
  .portada-ico{width:84px;height:84px}
  .portada.chica .portada-ico{width:72px;height:72px;top:56%}
  .portada-ico .sc-ico,.portada.chica .portada-ico .sc-ico{width:38px;height:38px}
}
@media (max-height:500px) and (orientation:landscape){
  /* la barra ya no es fija (variante b): el pie «Entregar» va solo, pegado abajo y compacto */
  .con-barra .ex-pie{position:sticky;left:auto;right:auto;transform:none;width:auto;bottom:0;border-radius:14px 14px 0 0;border-bottom:1px solid var(--borde);padding:.4rem .8rem}
  body.con-barra:has(.ex-pie) .aula-tabs{border-radius:0;border-top-color:#dfe5ee}
  body.con-barra:has(.ex-pie) .sc-pie{padding-bottom:0}
  .con-barra form.examen{padding-bottom:0!important}
  .aviso-faltan{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .7rem;padding:.35rem .6rem;font-size:.8rem}
  .aviso-faltan .sc-botones{margin-top:0}
  .aviso-faltan .btn{min-height:36px;padding:.4em .8em}
}

/* ---- AUL-20 (02·M2) Avisos del aula: el de la ronda de intentos (D27) se queda en su lugar y no se borra solo (sisc.js); los
   que sí flotan, en el celular van abajo, sobre la barra, sin tapar el logo, el menú ni la píldora. ---- */
.sisc-aviso.aula-ronda{position:relative;top:auto;left:auto;transform:none;width:auto;margin:0 0 1rem;z-index:auto;box-shadow:none;cursor:auto}
@media (max-width:760px),(max-height:500px) and (orientation:landscape){
  .con-barra .sisc-aviso:not(.error):not(.fijo):not(.aula-ronda){top:auto;bottom:calc(var(--alto-barra) + 10px)}
}
/* AUL-23 los intentos por ronda */
.intento-ronda{margin:.9rem 0 0;font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gris)}

/* ---- AUL-I1 (02·I1) Celular, más cerca del tablero «Elegida · celular»: la cabecera del aula en un solo renglón (la foto
   empieza ~45 px antes) y el título de 26 px a 390 px. ---- */
@media (max-width:760px){
  body.con-barra.menu-trabajador .sc-hwrap{flex-direction:row;gap:.4rem;padding:.35rem 1rem}
  body.con-barra.menu-trabajador .sc-logo img{height:40px}
  body.con-barra.menu-trabajador .sc-sello{display:none}
  body.con-barra.menu-trabajador .sc-menu a{min-height:44px;display:inline-flex;align-items:center;padding:0 .55rem}
}
@media (max-width:480px){
  body.con-barra.menu-trabajador .sc-logo img{height:36px}
  body.con-barra.menu-trabajador .sc-menu .m-largo{display:none}
  body.con-barra.menu-trabajador .sc-menu .m-corto{display:inline}
  body.con-barra.menu-trabajador .sc-menu a{padding:0 .45rem}
}
@media (max-width:560px){.hoja h1{font-size:clamp(1.55rem,6.7vw,2rem)}}
/* el título del módulo, como en el tablero: 26 px a 390 y 36 px en la computadora (antes 22 y 30) */
.modulo.hoja > header h1{font-size:clamp(1.55rem,6.7vw,2.25rem);line-height:1.15}
/* ---- Informe 19 · B1 (P3) El video completo arriba de la barra en la computadora y la tableta (1280×720, 1366×768): a lo ancho,
   pero sin pasar del alto que queda entre la cabecera y la barra (16:9). Con el celular acostado lo resuelve la variante b. ---- */
@media (min-height:501px){.con-barra .bq-motion iframe.lamina,.con-barra .bq-motion .lamina-espera:not(.compacta){margin-inline:auto;
  max-width:max(560px,calc((100svh - var(--alto-header,0px) - var(--alto-barra,0px) - 24px) * 16 / 9))}}
/* ---- Informe 19 · B4 Toques de 44 px en el aula con el dedo: los «Intento N…» que se abren, «Comprobar mi CURP» y las casillas
   de «Aplícalo en tu área»; los enlaces dentro del texto («Avísanos antes de entregar», «pídelo por WhatsApp») con más aire. ---- */
@media (pointer:coarse){
  .intento-det summary,.sc-mini summary{min-height:44px}
  .bq-lista label{min-height:44px;display:flex;align-items:center}
  .ex-datos a,#datos-dc3 .sc-nota a{display:inline-block;padding:.8rem 0;margin:-.8rem 0}
}
/* ==================== fin 0.9.3 · frente B ==================== */
/* ==================== 0.9.3 · frente A: compra, factura, panel y reembolsos (auditoría del 24-oct-2026) ==================== */
/* 18·A1: carrito vacío en celulares bajos (iPhone con Safari, SE). La nota «Elige al menos un curso» (100 % de ancho) en una
   fila sin partir aplastaba «0 LUGARES» y «$0.00» letra por letra (barra de 184–321 px). Ahora la fila se parte: 86 px. */
@media (max-width:560px) and (max-height:700px){
  .sc-carrito{flex-wrap:wrap;row-gap:.25rem}
  .sc-carrito .tot{flex:1 1 auto;min-width:0}
}
/* ACC-21: «Escríbenos por WhatsApp» secundario: texto y borde verde oscuro sobre fondo claro (antes azul sobre verde, 2.72:1) */
.btn.verde.sec{background:transparent;color:var(--verde-o);border:1.5px solid var(--verde-o);box-shadow:none}
.btn.verde.sec:hover,.btn.verde.sec:focus-visible{background:var(--verde-o);color:#fff;box-shadow:0 8px 20px rgba(29,122,58,.25)}
/* FAC-21: «¿A nombre de quién va la factura?» (Para mí) */
.fac-quien{border:0;padding:0;margin:0 0 .9rem;min-width:0}
.fac-quien legend{font-weight:700;margin-bottom:.4rem;padding:0}
.fac-quien .sc-check{margin:.35rem 0}
.fac-quien .sc-check small{display:block;color:var(--gris);font-weight:500}
.fac-siguientes{margin:.2rem 0 .6rem}
/* ACC-29: las tablas que se desplazan a lo ancho se ven al recibir el foco del teclado */
.sc-tabla-wrap:focus-visible{outline:3px solid var(--navy);outline-offset:2px}
/* ==================== fin 0.9.3 · frente A ==================== */
/* ==================== 0.9.3 · supervisión 42 (auditoría del 24-oct-2026) ==================== */
/* AUL-I1 (02·I1) En el celular y la tableta (foto arriba), la foto del módulo mide 270 px como el tablero «Elegida · celular»;
   el examen, el resultado y las preguntas siguen compactos (190 px). Acostado (alto ≤ 500 px) se queda la foto baja de AUL-24.
   Alto fijo por CSS: no brinca. Sin foto, el símbolo como en el inicio del curso (también 270 px). */
@media (max-width:900px) and (min-height:501px){
  .portada.chica.foto-mod{height:270px}
  .portada.chica.foto-mod .portada-ico{width:150px;height:150px;top:54%}
  .portada.chica.foto-mod .portada-ico .sc-ico{width:72px;height:72px}
}
/* ==================== fin 0.9.3 · supervisión 42 ==================== */
/* ==================== 0.9.3 · supervisión 44 (fluidez, auditoría del 24-oct-2026) ==================== */
/* S44-1 Panel (Mi cuenta), fila de cada lugar. La columna de acciones (auto) tomaba todo lo que pedía su contenido: al abrir
   «Cambiar enlace» su aviso la ensanchaba y el nombre del trabajador quedaba de una letra por renglón (la fila crecía de 171
   a 2,343 px); y de 761 a 1,099 px, aun cerrada, el nombre quedaba en 96 px y el botón verde tapaba «Aún no abre su enlace».
   Ahí, y siempre que se abre algo dentro de las acciones, las acciones van en su propio renglón, a todo lo ancho. */
@media (min-width:761px) and (max-width:1099px){
  .lugar .fila{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
  .lugar .fila > .acciones{grid-column:1 / -1;justify-content:flex-start}
}
.lugar .fila:has(> .acciones details[open]){grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
.lugar .fila:has(> .acciones details[open]) > .acciones{grid-column:1 / -1;justify-content:flex-start}
.lugar .acciones details.sc-mini[open]{flex-basis:100%}
/* ==================== fin 0.9.3 · supervisión 44 ==================== */
/* ==================== 0.9.3 · vuelta 3 (51) · auditoría del 24-oct-2026 ==================== */
/* WA-21 «Por persona» en fase 2 (apagada hoy, D07): el botón (un formulario) y el estado del último WhatsApp, juntos. */
.sc-gente header .sc-wa2{display:flex;flex-wrap:wrap;gap:.4rem .7rem;align-items:center}
.sc-gente header .sc-wa2 form{margin:0}
/* (fase 2, también «Por curso») el estado del WhatsApp («No llegó en 3 minutos · mándalo por correo») se acomoda en dos
   renglones en el celular en vez de salirse de la tarjeta; en la fase 1 no se muestra. */
.estado.wa{white-space:normal;max-width:100%;border-radius:12px;line-height:1.35}
.estado.wa::before{flex:0 0 auto}
/* S44-3 (FLU-50) Con el dedo, los resúmenes que se abren («Comprobar mi CURP», «Cambiar enlace», «Pedir reembolso», «Cambiar
   mi nombre», «Poner mis datos fiscales») miden 44 px: la regla del bloque B4 perdía contra details.sc-mini>summary (36 px),
   que es más específica. Y «Entregar examen», 44 px (antes 42). */
@media (pointer:coarse){
  details.sc-mini>summary,details.intento-det>summary{min-height:44px}
  .ex-pie .btn{min-height:44px}
}
/* S44-5 (AUL-20) En la tableta y la computadora el aviso flotante del aula («Módulo terminado») también sale abajo, sobre la
   barra, como en el celular: arriba tapaba la píldora y el título durante 10 s. Sin cambio en el celular (ya era así). */
.con-barra .sisc-aviso:not(.error):not(.fijo):not(.aula-ronda){top:auto;bottom:calc(var(--alto-barra) + 10px)}
/* D45 = b «Pedir reembolso»: el cliente elige cuántos lugares (o cuáles cursos) devolver; en el aviso amarillo, sin desbordar. */
.sc-reemb-elige{border:0;padding:0;margin:.5rem 0 .2rem;min-width:0;display:grid;gap:.4rem}
.sc-reemb-elige legend{font-weight:700;color:var(--ink);padding:0;margin:0 0 .35rem}
.sc-reemb-elige .sc-check{padding:.55rem .8rem;background:#fff;min-height:44px;align-items:center}
.sc-reemb-curso{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .6rem;min-width:0}
.sc-reemb-curso span{font-weight:600;min-width:0;overflow-wrap:anywhere}
.sc-reemb-curso select{min-height:44px;min-width:4.2rem;padding:.3rem .5rem;border:1px solid var(--borde);border-radius:10px;font:inherit;background:#fff;color:var(--ink)}
.sc-reemb-curso small{color:var(--gris)}
/* ==================== fin 0.9.3 · vuelta 3 (51) ==================== */
