.mdd-app{--tinta:#233243;--azul:#36577b;--pizarra:#7792a5;--niebla:#dfe6ec;--bruma:#f3f5f7;--papel:#fff;--blanco:#fff;
--texto:#616161;--suave:#6f7780;--linea:#e1e5e9;--ok:#2f7a55;--alerta:#a4452f;--radio:10px;--radio-g:14px;
--sombra:0 2px 14px rgba(35,50,67,.07);--sombra-alta:0 10px 34px rgba(35,50,67,.12);
--serif:'Montserrat',sans-serif;--sans:'Montserrat',sans-serif;--curva:cubic-bezier(.2,.7,.2,1);
font-family:Montserrat,sans-serif;color:var(--texto);font-size:16px;line-height:1.75}
@font-face{ font-family: 'Marthin'; src: url('fonts/Marthin.ttf') format('truetype'); font-display: swap; }
.mdd-app{--tinta: #1c2a38;        
  --azul: #36577b;         
  --azul-hondo: #233243;
  --pizarra: #7792a5;
  --niebla: #dfe6ec;
  --bruma: #eef2f5;
  --papel: #f8f6f2;
  --blanco: #ffffff;
  --texto: #34414e;
  --suave: #5f6d7a;
  --linea: #dde3e8;
  --arena: #b9a17a;        
  --ok: #2f7a55;
  --alerta: #a4452f;
  --radio: 14px;
  --radio-g: 22px;
  --sombra: 0 1px 2px rgba(28,42,56,.06), 0 8px 28px rgba(28,42,56,.07);
  --sombra-alta: 0 2px 4px rgba(28,42,56,.06), 0 18px 48px rgba(28,42,56,.12);
  --serif: 'Libre Baskerville', Georgia, 'Times New Roman', serif;
  --sans: 'Montserrat', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --guion: 'Marthin', 'Brush Script MT', cursive;
  --ancho: 1180px;
  --curva: cubic-bezier(.2,.7,.2,1);}
.mdd-app img{max-width: 100%; height: auto; display: block;}
.mdd-app a{color: var(--azul); text-decoration-thickness: 1px; text-underline-offset: 3px;}
.mdd-app a:hover{color: var(--tinta);}
.mdd-app h1, .mdd-app h2, .mdd-app h3, .mdd-app h4{font-family: var(--serif); color: var(--tinta); font-weight: 400; line-height: 1.22; margin: 0 0 .5em; text-wrap: balance;}
.mdd-app h1{font-size: clamp(2rem, 4.6vw, 3.4rem); letter-spacing: -.01em;}
.mdd-app h2{font-size: clamp(1.6rem, 3.2vw, 2.4rem);}
.mdd-app h3{font-size: 1.25rem;}
.mdd-app p{margin: 0 0 1em; text-wrap: pretty;}
.mdd-app button{font: inherit;}
.mdd-app .container{width: min(var(--ancho), 100% - 32px); margin-inline: auto;}
.mdd-app .estrecho{width: min(760px, 100% - 32px); margin-inline: auto;}
.mdd-app .sr-only{position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap;}
.mdd-app .trampa{position: absolute; left: -5000px; opacity: 0;}
.mdd-app .antetitulo{font-family: var(--sans); font-size: .74rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: #56718a; margin: 0 0 .9rem;}
.mdd-app .guion{font-family: var(--guion); font-size: 1.9em; color: var(--pizarra); line-height: 1; font-weight: 400;}
.mdd-app .lead{font-size: 1.12rem; color: var(--suave); max-width: 60ch;}
.mdd-app .suave{color: var(--suave);}
.mdd-app .chico{font-size: .86rem;}
.mdd-app .centro{text-align: center;}
.mdd-app .centro .lead{margin-inline: auto;}
.mdd-app .btn{display: inline-flex; align-items: center; justify-content: center; gap: .55em;
  padding: .92em 1.6em; border-radius: 999px; border: 1.5px solid var(--tinta);
  background: var(--tinta); color: #fff; font-family: var(--sans); font-weight: 600; font-size: .92rem;
  letter-spacing: .01em; text-decoration: none; cursor: pointer; line-height: 1.2;
  transition: transform .18s var(--curva), background .2s, color .2s, box-shadow .2s;}
.mdd-app .btn:hover{background: var(--azul); border-color: var(--azul); color: #fff; box-shadow: 0 8px 22px rgba(54,87,123,.25);}
.mdd-app .btn:active{transform: scale(.97);}
.mdd-app .btn[disabled]{opacity: .6; cursor: default; box-shadow: none;}
.mdd-app .btn-claro{background: transparent; color: var(--tinta);}
.mdd-app .btn-claro:hover{background: var(--tinta); color: #fff; border-color: var(--tinta);}
.mdd-app .btn-blanco{background: #fff; color: var(--tinta); border-color: #fff;}
.mdd-app .btn-blanco:hover{background: var(--niebla); border-color: var(--niebla); color: var(--tinta);}
.mdd-app .btn-borde-blanco{background: transparent; color: #fff; border-color: rgba(255,255,255,.7);}
.mdd-app .btn-borde-blanco:hover{background: #fff; color: var(--tinta); border-color: #fff;}
.mdd-app .btn-grande{padding: 1.08em 2em; font-size: 1rem;}
.mdd-app .btn-bloque{width: 100%;}
.mdd-app .liga-flecha{font-weight: 600; font-size: .92rem; text-decoration: none; display: inline-flex; gap: .4em; align-items: center;}
.mdd-app .liga-flecha::after{content: '→'; transition: transform .2s var(--curva);}
.mdd-app .liga-flecha:hover::after{transform: translateX(4px);}
.mdd-app .seccion{padding: clamp(64px, 9vw, 120px) 0;}
.mdd-app .seccion-corta{padding: clamp(44px, 6vw, 72px) 0;}
.mdd-app .fondo-blanco{background: var(--blanco);}
.mdd-app .fondo-bruma{background: var(--bruma);}
.mdd-app .fondo-tinta{background: var(--tinta); color: rgba(255,255,255,.82);}
.mdd-app .fondo-tinta h1, .mdd-app .fondo-tinta h2, .mdd-app .fondo-tinta h3{color: #fff;}
.mdd-app .fondo-tinta .antetitulo{color: var(--niebla); opacity: .8;}
.mdd-app .encabezado-seccion{display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 40px; flex-wrap: wrap;}
.mdd-app .encabezado-seccion h2{margin: 0;}
.mdd-app .encabezado-seccion .lead{margin: .6rem 0 0;}
.mdd-app .cabecera-pagina{padding: clamp(56px, 8vw, 104px) 0 clamp(36px, 5vw, 56px); background: var(--bruma);}
.mdd-app .cabecera-pagina .lead{margin-bottom: 0;}
.mdd-app .migas{font-size: .82rem; color: var(--suave); margin-bottom: 18px;}
.mdd-app .migas a{color: var(--suave); text-decoration: none;}
.mdd-app .migas a:hover{color: var(--tinta);}
.mdd-app .rejilla{display: grid; gap: 24px;}
.mdd-app .rejilla-2{grid-template-columns: repeat(2, 1fr);}
.mdd-app .rejilla-3{grid-template-columns: repeat(3, 1fr);}
.mdd-app .rejilla-4{grid-template-columns: repeat(4, 1fr);}
@media (max-width: 960px){.mdd-app .rejilla-3, .mdd-app .rejilla-4{grid-template-columns: repeat(2, 1fr);}
}
@media (max-width: 620px){.mdd-app .rejilla-2, .mdd-app .rejilla-3, .mdd-app .rejilla-4{grid-template-columns: 1fr;}
}
.mdd-app .tarjeta{background: var(--blanco); border-radius: var(--radio-g); box-shadow: var(--sombra); overflow: hidden; display: flex; flex-direction: column; transition: transform .3s var(--curva), box-shadow .3s; text-decoration: none; color: inherit;}
.mdd-app a.tarjeta:hover, .mdd-app .tarjeta.con-liga:hover{transform: translateY(-4px); box-shadow: var(--sombra-alta); color: inherit;}
.mdd-app .tarjeta-img{aspect-ratio: 4 / 3; background: var(--niebla); overflow: hidden; position: relative;}
.mdd-app .tarjeta-img img{width: 100%; height: 100%; object-fit: cover; transition: transform .6s var(--curva);}
.mdd-app a.tarjeta:hover .tarjeta-img img{transform: scale(1.04);}
.mdd-app .tarjeta-cuerpo{padding: 22px 24px 24px; display: flex; flex-direction: column; gap: 8px; flex: 1;}
.mdd-app .tarjeta-cuerpo h3{margin: 0; font-size: 1.22rem;}
.mdd-app .tarjeta-cuerpo p{margin: 0; color: var(--suave); font-size: .94rem;}
.mdd-app .tarjeta-pie{margin-top: auto; padding-top: 14px; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;}
.mdd-app .precio{font-weight: 700; color: var(--tinta); font-size: 1.02rem;}
.mdd-app .precio small{font-weight: 500; color: var(--suave); font-size: .78rem;}
.mdd-app .precio-antes{color: var(--suave); text-decoration: line-through; font-weight: 500; font-size: .86rem; margin-right: 6px;}
.mdd-app .etiqueta{display: inline-flex; align-items: center; gap: 6px; font-size: .72rem; font-weight: 600; letter-spacing: .04em; padding: 5px 11px; border-radius: 999px; background: var(--bruma); color: var(--azul); white-space: nowrap;}
.mdd-app .etiqueta.gratis{background: #e5f1ea; color: var(--ok);}
.mdd-app .etiqueta.proximamente{background: #f3ede2; color: #7a6238;}
.mdd-app .etiqueta.cerrado{background: #eceff2; color: var(--suave);}
.mdd-app .etiqueta.mio{background: var(--tinta); color: #fff;}
.mdd-app .tarjeta-img .etiqueta{position: absolute; top: 14px; left: 14px; background: rgba(255,255,255,.94);}
.mdd-app .tarjeta-img .etiqueta.gratis{color: var(--ok);}
.mdd-app .datos-mini{display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: .8rem; color: var(--suave);}
.mdd-app .datos-mini span{display: inline-flex; align-items: center; gap: 6px;}
.mdd-app .datos-mini svg{width: 15px; height: 15px; opacity: .7;}
.mdd-app .avance{height: 6px; background: var(--niebla); border-radius: 999px; overflow: hidden;}
.mdd-app .avance > span{display: block; height: 100%; background: var(--azul); border-radius: 999px; transition: width .6s var(--curva);}
.mdd-app .avance-texto{font-size: .8rem; color: var(--suave); display: flex; justify-content: space-between; margin-top: 6px;}
.mdd-app .dividido{display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(32px, 6vw, 80px); align-items: center;}
.mdd-app .dividido.invertido > :first-child{order: 2;}
.mdd-app .dividido .foto{border-radius: var(--radio-g); overflow: hidden; box-shadow: var(--sombra-alta); aspect-ratio: 5/4;}
.mdd-app .dividido .foto img{width: 100%; height: 100%; object-fit: cover;}
@media (max-width: 860px){.mdd-app .dividido{grid-template-columns: 1fr;}
.mdd-app .dividido.invertido > :first-child{order: 0;}
}
.mdd-app .pasos{counter-reset: paso; display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px;}
.mdd-app .paso{counter-increment: paso;}
.mdd-app .paso::before{content: counter(paso); display: grid; place-items: center; width: 44px; height: 44px; border-radius: 999px; background: var(--niebla); color: var(--azul); font-family: var(--serif); font-size: 1.1rem; margin-bottom: 16px;}
.mdd-app .paso h3{font-size: 1.1rem;}
.mdd-app .paso p{color: var(--suave); font-size: .95rem; margin: 0;}
@media (max-width: 760px){.mdd-app .pasos{grid-template-columns: 1fr;}
}
.mdd-app .curso-hero{background: var(--tinta); color: rgba(255,255,255,.85); padding: clamp(48px, 7vw, 88px) 0;}
.mdd-app .curso-hero h1{color: #fff;}
.mdd-app .curso-hero .migas, .mdd-app .curso-hero .migas a{color: rgba(255,255,255,.6);}
.mdd-app .curso-hero-grid{display: grid; grid-template-columns: 1.2fr .8fr; gap: clamp(28px, 5vw, 64px); align-items: center;}
.mdd-app .curso-hero-grid .portada{border-radius: var(--radio-g); overflow: hidden; aspect-ratio: 1; box-shadow: 0 24px 60px rgba(0,0,0,.35);}
.mdd-app .curso-hero-grid .portada img{width: 100%; height: 100%; object-fit: cover;}
.mdd-app .curso-hero .datos-mini{color: rgba(255,255,255,.75); font-size: .88rem; margin: 18px 0 0;}
@media (max-width: 860px){.mdd-app .curso-hero-grid{grid-template-columns: 1fr;}
.mdd-app .curso-hero-grid .portada{max-width: 360px;}
}
.mdd-app .curso-cuerpo{display: grid; grid-template-columns: 1fr 360px; gap: clamp(28px, 5vw, 64px); align-items: start;}
@media (max-width: 960px){.mdd-app .curso-cuerpo{grid-template-columns: 1fr;}
}
.mdd-app .caja-compra{position: sticky; top: 96px; background: var(--blanco); border-radius: var(--radio-g); box-shadow: var(--sombra-alta); padding: 28px;}
.mdd-app .caja-compra .precio-grande{font-family: var(--serif); font-size: 2.2rem; color: var(--tinta); line-height: 1; margin: 6px 0 4px;}
.mdd-app .caja-compra .precio-grande small{font-family: var(--sans); font-size: .9rem; color: var(--suave);}
.mdd-app .caja-compra ul{list-style: none; padding: 0; margin: 20px 0 0; display: grid; gap: 10px; font-size: .9rem;}
.mdd-app .caja-compra li{display: flex; gap: 10px; align-items: flex-start;}
.mdd-app .caja-compra li::before{content: ''; flex: 0 0 18px; height: 18px; margin-top: 3px; border-radius: 999px; background: var(--niebla) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2336577b'%3E%3Cpath d='M8.1 13.4 4.7 10l-1.2 1.2 4.6 4.6 9-9-1.2-1.2z'/%3E%3C/svg%3E") center/13px no-repeat;}
.mdd-app .caja-compra .btn{margin-top: 18px;}
.mdd-app .caja-compra .nota{font-size: .8rem; color: var(--suave); margin: 12px 0 0; text-align: center;}
@media (max-width: 960px){.mdd-app .caja-compra{position: static;}
}
.mdd-app .temario{border-top: 1px solid var(--linea);}
.mdd-app .temario-modulo > h3{font-family: var(--sans); font-size: .76rem; letter-spacing: .14em; text-transform: uppercase; color: var(--pizarra); font-weight: 600; margin: 28px 0 6px;}
.mdd-app .temario ol{list-style: none; margin: 0; padding: 0;}
.mdd-app .temario li{display: flex; gap: 16px; align-items: baseline; padding: 13px 0; border-bottom: 1px solid var(--linea); font-size: .95rem;}
.mdd-app .temario .dia{flex: 0 0 56px; font-size: .74rem; font-weight: 600; color: var(--pizarra); letter-spacing: .06em; text-transform: uppercase;}
.mdd-app .temario .t{flex: 1; color: var(--tinta);}
.mdd-app .temario .ic{display: inline-flex; gap: 8px; color: var(--pizarra);}
.mdd-app .temario .ic svg{width: 16px; height: 16px;}
.mdd-app .temario-mas{margin-top: 16px;}
.mdd-app .aula{display: grid; grid-template-columns: 330px 1fr; min-height: calc(100vh - 72px); background: var(--blanco);}
.mdd-app .aula-indice{border-right: 1px solid var(--linea); background: var(--papel); overflow-y: auto; max-height: calc(100vh - 72px); position: sticky; top: 72px;}
.mdd-app .aula-indice-cab{padding: 22px 22px 16px; border-bottom: 1px solid var(--linea);}
.mdd-app .aula-indice-cab a.volver{font-size: .8rem; text-decoration: none; color: var(--suave);}
.mdd-app .aula-indice-cab h2{font-size: 1.08rem; margin: 8px 0 12px;}
.mdd-app .aula-indice ol{list-style: none; margin: 0; padding: 8px 10px 40px;}
.mdd-app .aula-indice .mod{font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; color: var(--pizarra); font-weight: 600; padding: 16px 12px 6px;}
.mdd-app .aula-indice a.lec{display: flex; gap: 12px; align-items: flex-start; padding: 10px 12px; border-radius: 10px; text-decoration: none; color: var(--texto); font-size: .88rem; line-height: 1.45;}
.mdd-app .aula-indice a.lec:hover{background: var(--bruma);}
.mdd-app .aula-indice a.lec.actual{background: var(--tinta); color: #fff;}
.mdd-app .aula-indice a.lec.bloqueada{color: var(--suave); pointer-events: none; opacity: .7;}
.mdd-app .aula-indice .marca{flex: 0 0 22px; height: 22px; border-radius: 999px; border: 1.5px solid var(--niebla); display: grid; place-items: center; font-size: .66rem; font-weight: 700; color: var(--suave); background: #fff;}
.mdd-app .aula-indice .hecha .marca{background: var(--azul); border-color: var(--azul); color: #fff;}
.mdd-app .aula-indice a.lec.actual .marca{border-color: rgba(255,255,255,.4); background: transparent; color: #fff;}
.mdd-app .aula-indice a.lec.actual.hecha .marca{background: #fff; color: var(--tinta);}
.mdd-app .aula-principal{padding: clamp(20px, 3vw, 40px) clamp(16px, 4vw, 56px) 80px; min-width: 0;}
.mdd-app .video{position: relative; aspect-ratio: 16/9; background: #000; border-radius: var(--radio); overflow: hidden; box-shadow: var(--sombra);}
.mdd-app .video iframe{position: absolute; inset: 0; width: 100%; height: 100%; border: 0;}
.mdd-app .video-portada{position: absolute; inset: 0; display: grid; place-items: center; cursor: pointer; background: #000 center/cover no-repeat; border: 0; width: 100%;}
.mdd-app .video-portada::before{content: ''; position: absolute; inset: 0; background: rgba(0,0,0,.25); transition: background .2s;}
.mdd-app .video-portada:hover::before{background: rgba(0,0,0,.1);}
.mdd-app .video-portada span{position: relative; width: 76px; height: 76px; border-radius: 999px; background: rgba(255,255,255,.95); display: grid; place-items: center; box-shadow: 0 10px 30px rgba(0,0,0,.3); transition: transform .2s var(--curva);}
.mdd-app .video-portada:hover span{transform: scale(1.06);}
.mdd-app .video-portada svg{width: 28px; height: 28px; margin-left: 4px; fill: var(--tinta);}
.mdd-app .sin-video{aspect-ratio: auto; padding: 48px 28px; background: var(--bruma); border-radius: var(--radio); text-align: center; color: var(--suave);}
.mdd-app .lec-cab{display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin: 26px 0 8px; flex-wrap: wrap;}
.mdd-app .lec-cab h1{font-size: clamp(1.5rem, 2.6vw, 2.1rem); margin: 4px 0 0;}
.mdd-app .lec-acciones{display: flex; flex-wrap: wrap; gap: 10px; margin: 18px 0 26px;}
.mdd-app .btn-hecha[aria-pressed="true"]{background: var(--ok); border-color: var(--ok); color: #fff;}
.mdd-app .lec-texto{max-width: 70ch; color: var(--texto);}
.mdd-app .lec-nav{display: flex; justify-content: space-between; gap: 12px; margin-top: 40px; padding-top: 24px; border-top: 1px solid var(--linea);}
.mdd-app .lec-nav a{max-width: 48%; text-decoration: none;}
.mdd-app .lec-nav small{display: block; color: var(--suave); font-size: .74rem; letter-spacing: .08em; text-transform: uppercase;}
.mdd-app .lec-nav strong{font-weight: 600; color: var(--tinta); font-size: .95rem;}
.mdd-app .notas-caja{margin-top: 36px; background: var(--papel); border-radius: var(--radio); padding: 20px;}
.mdd-app .notas-caja textarea{width: 100%; min-height: 130px; border: 1px solid var(--linea); border-radius: 10px; padding: 12px 14px; font: inherit; font-size: .95rem; background: #fff; resize: vertical;}
.mdd-app .notas-estado{font-size: .78rem; color: var(--suave);}
.mdd-app .indice-toggle{display: none;}
.mdd-app .aviso-bloque{background: var(--bruma); border-radius: var(--radio); padding: 18px 20px; display: flex; gap: 14px; align-items: center; flex-wrap: wrap; justify-content: space-between; margin-bottom: 18px;}
.mdd-app .aviso-bloque p{margin: 0;}
.mdd-app .aviso-bloque.telegram{background: #e8f2fa;}
@media (max-width: 900px){.mdd-app .aula{grid-template-columns: 1fr;}
.mdd-app .aula-indice{position: fixed; inset: 72px 0 0 0; z-index: 40; max-height: none; transform: translateX(-100%); transition: transform .3s var(--curva); width: min(360px, 90vw); box-shadow: var(--sombra-alta);}
.mdd-app .aula-indice.abierto{transform: none;}
.mdd-app .indice-toggle{display: inline-flex;}
}
.mdd-app .mis-cursos{display: grid; gap: 18px;}
.mdd-app .mi-curso{display: grid; grid-template-columns: 150px 1fr auto; gap: 22px; align-items: center; background: var(--blanco); border-radius: var(--radio-g); box-shadow: var(--sombra); padding: 16px;}
.mdd-app .mi-curso img{border-radius: 12px; aspect-ratio: 1; object-fit: cover; width: 150px;}
.mdd-app .mi-curso h3{margin: 0 0 6px;}
@media (max-width: 700px){.mdd-app .mi-curso{grid-template-columns: 90px 1fr;}
.mdd-app .mi-curso img{width: 90px;}
.mdd-app .mi-curso .btn{grid-column: 1 / -1;}
}
.mdd-app .producto-grid{display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(28px, 5vw, 64px); align-items: start;}
@media (max-width: 860px){.mdd-app .producto-grid{grid-template-columns: 1fr;}
}
.mdd-app .galeria-principal{border-radius: var(--radio-g); overflow: hidden; background: var(--blanco); aspect-ratio: 1; box-shadow: var(--sombra);}
.mdd-app .galeria-principal img{width: 100%; height: 100%; object-fit: cover;}
.mdd-app .galeria-minis{display: flex; gap: 10px; margin-top: 12px; flex-wrap: wrap;}
.mdd-app .galeria-minis button{width: 74px; height: 74px; border-radius: 12px; overflow: hidden; border: 2px solid transparent; padding: 0; cursor: pointer; background: var(--niebla);}
.mdd-app .galeria-minis button[aria-current="true"]{border-color: var(--azul);}
.mdd-app .galeria-minis img{width: 100%; height: 100%; object-fit: cover;}
.mdd-app .opciones{display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 18px;}
.mdd-app .opciones label{cursor: pointer;}
.mdd-app .opciones input{position: absolute; opacity: 0; pointer-events: none;}
.mdd-app .opciones span{display: inline-block; padding: 10px 16px; border: 1.5px solid var(--linea); border-radius: 12px; font-size: .9rem; background: #fff; transition: border-color .2s, background .2s;}
.mdd-app .opciones input:checked + span{border-color: var(--tinta); background: var(--tinta); color: #fff;}
.mdd-app .opciones input:focus-visible + span{outline: 2px solid var(--azul); outline-offset: 2px;}
.mdd-app .cantidad{display: inline-flex; align-items: center; border: 1.5px solid var(--linea); border-radius: 999px; background: #fff;}
.mdd-app .cantidad button{width: 40px; height: 44px; border: 0; background: transparent; cursor: pointer; font-size: 1.1rem; color: var(--tinta);}
.mdd-app .cantidad input{width: 42px; text-align: center; border: 0; font: inherit; font-weight: 600; background: transparent; -moz-appearance: textfield;}
.mdd-app .cantidad input::-webkit-inner-spin-button{-webkit-appearance: none;}
.mdd-app .fila-compra{display: flex; gap: 12px; align-items: center; flex-wrap: wrap;}
.mdd-app .fila-compra .btn{flex: 1; min-width: 200px;}
.mdd-app .descripcion-producto{margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--linea); color: var(--texto);}
.mdd-app .descripcion-producto ul{padding-left: 1.2em;}
.mdd-app .carrito-grid{display: grid; grid-template-columns: 1fr 380px; gap: 40px; align-items: start;}
@media (max-width: 960px){.mdd-app .carrito-grid{grid-template-columns: 1fr;}
}
.mdd-app .linea-carrito{display: grid; grid-template-columns: 88px 1fr auto; gap: 18px; align-items: center; padding: 18px 0; border-bottom: 1px solid var(--linea);}
.mdd-app .linea-carrito img{width: 88px; height: 88px; object-fit: cover; border-radius: 12px; background: var(--niebla);}
.mdd-app .linea-carrito h3{font-family: var(--sans); font-size: 1rem; font-weight: 600; margin: 0 0 2px;}
.mdd-app .linea-carrito .opcion{font-size: .84rem; color: var(--suave);}
.mdd-app .linea-carrito .quitar{background: none; border: 0; color: var(--suave); font-size: .8rem; text-decoration: underline; cursor: pointer; padding: 0;}
.mdd-app .resumen{background: var(--blanco); border-radius: var(--radio-g); box-shadow: var(--sombra); padding: 26px; position: sticky; top: 96px;}
.mdd-app .resumen h2{font-size: 1.3rem;}
.mdd-app .resumen dl{display: grid; grid-template-columns: 1fr auto; gap: 10px 16px; margin: 0; font-size: .94rem;}
.mdd-app .resumen dt{color: var(--suave);}
.mdd-app .resumen dd{margin: 0; text-align: right; font-weight: 600; color: var(--tinta);}
.mdd-app .resumen .total{border-top: 1px solid var(--linea); padding-top: 12px; font-size: 1.12rem;}
.mdd-app .resumen .art{display: flex; justify-content: space-between; gap: 12px; font-size: .88rem; padding: 6px 0;}
.mdd-app .resumen .art span:first-child{color: var(--texto);}
.mdd-app .vacio{text-align: center; padding: 60px 20px;}
.mdd-app .vacio svg{width: 56px; height: 56px; color: var(--pizarra); margin: 0 auto 16px;}
.mdd-app .formulario{display: grid; gap: 16px;}
.mdd-app .campo{display: grid; gap: 6px;}
.mdd-app .campo label, .mdd-app .etq{font-size: .84rem; font-weight: 600; color: var(--tinta);}
.mdd-app .campo .ayuda{font-size: .78rem; color: var(--suave);}
.mdd-app input[type=text], .mdd-app input[type=email], .mdd-app input[type=password], .mdd-app input[type=tel], .mdd-app input[type=number], .mdd-app input[type=search], .mdd-app input[type=date], .mdd-app input[type=datetime-local], .mdd-app input[type=url], .mdd-app select, .mdd-app textarea{width: 100%; padding: 13px 15px; border: 1.5px solid var(--linea); border-radius: 12px; background: #fff;
  font: inherit; font-size: 1rem; color: var(--tinta); transition: border-color .2s, box-shadow .2s;}
.mdd-app input:focus, .mdd-app select:focus, .mdd-app textarea:focus{outline: none; border-color: var(--azul); box-shadow: 0 0 0 4px rgba(54,87,123,.12);}
.mdd-app textarea{min-height: 120px; resize: vertical;}
.mdd-app .fila-2{display: grid; grid-template-columns: 1fr 1fr; gap: 14px;}
.mdd-app .fila-3{display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 14px;}
@media (max-width: 620px){.mdd-app .fila-2, .mdd-app .fila-3{grid-template-columns: 1fr;}
}
.mdd-app fieldset{border: 0; padding: 0; margin: 0 0 28px; min-width: 0;}
.mdd-app legend{font-family: var(--serif); font-size: 1.3rem; color: var(--tinta); margin-bottom: 14px; padding: 0;}
.mdd-app .casilla{display: flex; gap: 10px; align-items: flex-start; font-size: .9rem;}
.mdd-app .casilla input{margin-top: 4px; width: 18px; height: 18px; accent-color: var(--azul);}
.mdd-app .form-msg{font-size: .9rem; min-height: 1em;}
.mdd-app .form-msg.ok{color: var(--ok);}
.mdd-app .form-msg.err{color: var(--alerta);}
.mdd-app .alerta{padding: 14px 18px; border-radius: 12px; font-size: .92rem; margin-bottom: 18px;}
.mdd-app .alerta.ok{background: #e5f1ea; color: #1f5a3d;}
.mdd-app .alerta.err{background: #f7e7e2; color: #7d3120;}
.mdd-app .alerta.info{background: var(--bruma); color: var(--tinta);}
.mdd-app .cupon-fila{display: flex; gap: 8px;}
.mdd-app .cupon-fila input{flex: 1;}
.mdd-app .cupon-fila .btn{padding-inline: 1.1em;}
.mdd-app .pago-opciones{display: grid; gap: 10px;}
.mdd-app .pago-opciones label{display: flex; align-items: center; gap: 12px; border: 1.5px solid var(--linea); border-radius: 12px; padding: 14px 16px; cursor: pointer; background: #fff;}
.mdd-app .pago-opciones input{accent-color: var(--azul); width: 18px; height: 18px;}
.mdd-app .pago-opciones label:has(input:checked){border-color: var(--tinta);}
.mdd-app .pago-opciones small{color: var(--suave); display: block; font-size: .8rem;}
.mdd-app .ojo{position: relative;}
.mdd-app .ojo button{position: absolute; right: 8px; top: 50%; transform: translateY(-50%); background: none; border: 0; color: var(--suave); font-size: .78rem; font-weight: 600; cursor: pointer; padding: 6px;}
.mdd-app .caja-cuenta{max-width: 460px; margin: 0 auto; background: var(--blanco); border-radius: var(--radio-g); box-shadow: var(--sombra-alta); padding: clamp(26px, 4vw, 40px);}
.mdd-app .caja-cuenta h1{font-size: 1.9rem;}
.mdd-app .entrada-cab{padding: clamp(56px, 8vw, 96px) 0 32px;}
.mdd-app .entrada-cab h1{font-size: clamp(2rem, 4vw, 3rem);}
.mdd-app .entrada-meta{font-size: .86rem; color: var(--suave); display: flex; gap: 14px; flex-wrap: wrap;}
.mdd-app .entrada-portada{border-radius: var(--radio-g); overflow: hidden; margin: 8px auto 40px; aspect-ratio: 16/9; max-width: 980px;}
.mdd-app .entrada-portada img{width: 100%; height: 100%; object-fit: cover;}
.mdd-app .prosa{font-size: 1.08rem; line-height: 1.85; color: var(--texto);}
.mdd-app .prosa h2{font-size: 1.7rem; margin-top: 1.6em;}
.mdd-app .prosa h3{font-size: 1.3rem; margin-top: 1.4em;}
.mdd-app .prosa img{border-radius: var(--radio); margin: 1.6em auto;}
.mdd-app .prosa blockquote{margin: 1.8em 0; padding: 0 0 0 24px; border-left: 3px solid var(--pizarra); font-family: var(--serif); font-size: 1.2rem; color: var(--tinta);}
.mdd-app .prosa a{color: var(--azul);}
.mdd-app .prosa figure{margin: 1.6em 0;}
.mdd-app .prosa iframe{width: 100%; aspect-ratio: 16/9; height: auto; border: 0; border-radius: var(--radio);}
.mdd-app .filtros{display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 32px;}
.mdd-app .filtros a{padding: 8px 16px; border-radius: 999px; border: 1.5px solid var(--linea); font-size: .86rem; text-decoration: none; color: var(--texto); background: #fff;}
.mdd-app .filtros a.activo, .mdd-app .filtros a:hover{background: var(--tinta); border-color: var(--tinta); color: #fff;}
.mdd-app .paginacion{display: flex; justify-content: center; gap: 8px; margin-top: 48px;}
.mdd-app .paginacion a, .mdd-app .paginacion span{min-width: 42px; height: 42px; display: grid; place-items: center; border-radius: 999px; text-decoration: none; border: 1.5px solid var(--linea); color: var(--tinta); font-size: .9rem; background: #fff;}
.mdd-app .paginacion span{background: var(--tinta); color: #fff; border-color: var(--tinta);}
.mdd-app .aparece{opacity: 0; transform: translateY(18px); transition: opacity .7s var(--curva), transform .7s var(--curva);}
.mdd-app .aparece.visible{opacity: 1; transform: none;}
@media (prefers-reduced-motion: reduce){.mdd-app .aparece{opacity: 1; transform: none;}
}
.mdd-app .toast{position: fixed; left: 50%; bottom: 24px; transform: translate(-50%, 20px); background: var(--tinta); color: #fff; padding: 14px 20px; border-radius: 999px; box-shadow: var(--sombra-alta); font-size: .92rem; display: flex; gap: 14px; align-items: center; opacity: 0; pointer-events: none; transition: opacity .25s, transform .3s var(--curva); z-index: 80;}
.mdd-app .toast.visible{opacity: 1; transform: translate(-50%, 0); pointer-events: auto;}
.mdd-app .toast a{color: #fff; font-weight: 700;}
.mdd-app .btn svg, .mdd-app p svg, .mdd-app .chico svg, .mdd-app .etq svg, .mdd-app .lec-acciones svg{width: 1.15em; height: 1.15em; flex: 0 0 auto;}
.mdd-app p svg, .mdd-app .chico svg{display: inline-block; vertical-align: -.2em;}
.mdd-app .sin-video svg{width: 40px; height: 40px; margin: 0 auto; color: var(--pizarra);}
.mdd-app .barra-envio{background: var(--bruma); border-radius: 14px; padding: 14px 18px; margin: 0 0 22px;}
.mdd-app .barra-envio p{margin: 0 0 8px; font-size: .92rem; color: var(--tinta);}
.mdd-app .barra-envio-riel{height: 8px; background: #fff; border-radius: 999px; overflow: hidden;}
.mdd-app .barra-envio-riel span{display: block; height: 100%; background: var(--azul); border-radius: 999px; transition: width .6s var(--curva);}
.mdd-app .barra-envio.completa{background: #e5f1ea;}
.mdd-app .barra-envio.completa .barra-envio-riel span{background: var(--ok);}

/* Mismo lenguaje que el resto del sitio (assets/mdd.css) */
.mdd-app h1,.mdd-app h2,.mdd-app h3{font-family:Montserrat,sans-serif;font-weight:700;color:var(--tinta);letter-spacing:0}
.mdd-app h1{font-size:clamp(1.9rem,3.4vw,2.6rem)}.mdd-app h2{font-size:clamp(1.3rem,2.2vw,1.7rem)}
.mdd-app .btn{background:#233243;color:#fff;border:2.5px solid #233243;border-radius:999px;text-transform:uppercase;font-size:14px;font-weight:700;padding:14px 26px;letter-spacing:.02em;box-shadow:none;min-height:52px}
.mdd-app .btn:hover{background:#36577b;border-color:#36577b;color:#fff;box-shadow:none}
.mdd-app .btn-grande{min-height:58px;font-size:15px}
.mdd-app .btn.btn-claro{background:#fff;color:#233243}
.mdd-app .btn.btn-claro:hover{background:#233243;color:#fff}
.mdd-app input[type=text],.mdd-app input[type=email],.mdd-app input[type=password],.mdd-app input[type=tel],.mdd-app input[type=number],.mdd-app select,.mdd-app textarea,
.mdd-app input:not([type]),.mdd-app input[type=search],.mdd-app input[type=date],.mdd-app input[type=url]{width:100%;min-height:50px;border:1.5px solid rgba(35,50,67,.18);border-radius:12px;padding:12px 16px;font-family:Montserrat,sans-serif;font-size:15px;color:#233243;background:#fff}
.mdd-app input:focus,.mdd-app select:focus,.mdd-app textarea:focus{outline:none;border-color:#233243}
.mdd-app a{color:#36577b}
.mdd-app .cabecera-pagina{background:transparent;padding:48px 0 16px}
.mdd-app .etiqueta.mio{background:#233243}
.mdd-app .cantidad input{border:0!important;padding:0!important;width:44px;height:40px;min-height:0;box-shadow:none!important;text-align:center}
.mdd-app .cantidad{border-color:rgba(35,50,67,.14)}
.mdd-app legend{font-family:Montserrat,sans-serif;font-weight:700;font-size:1.2rem;color:var(--tinta)}
.mdd-app .pago-opciones label{border-color:rgba(35,50,67,.14);border-radius:14px}
.mdd-app .arqbl-trampa,.mdd-app .trampa{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
@media (max-width:620px){
  .mdd-app .linea-carrito{grid-template-columns:72px 1fr;gap:14px}
  .mdd-app .linea-carrito img{width:72px;height:72px}
  .mdd-app .linea-carrito > .precio{grid-column:2;justify-self:start}
  .mdd-app .container{width:100%;padding:0 16px}
}
/* Sin hueco entre el título de la página y su contenido; campos alineados arriba */
.mdd-app .cabecera-pagina + .seccion-corta, .mdd-app .cabecera-pagina + .seccion { padding-top: 0; }
.mdd-app .fila-2, .mdd-app .fila-3 { align-items: start; }
.mdd-app .alerta.info { margin-bottom: 28px; }

/* Pago en móvil: resumen arriba plegable y botón de pagar siempre a la mano */
.mdd-app .alerta.info { display: block; }
.mdd-app .alerta.info strong { margin-right: 4px; }
.mdd-app .resumen-movil, .mdd-app .pagar-fijo { display: none; }
@media (max-width: 860px) {
  .mdd-app .resumen-movil { display: block; margin: 0 0 28px; padding: 0 16px; border-radius: 14px; background: #fff; box-shadow: 0 1px 2px rgba(35,50,67,.06); }
  .mdd-app .resumen-movil summary { display: flex; justify-content: space-between; align-items: center; min-height: 56px; cursor: pointer; list-style: none; font-weight: 600; color: var(--azul); }
  .mdd-app .resumen-movil summary::-webkit-details-marker { display: none; }
  .mdd-app .resumen-movil summary span { display: inline-flex; align-items: center; gap: 8px; }
  .mdd-app .resumen-movil summary strong { color: var(--tinta); font-size: 17px; }
  .mdd-app .resumen-movil[open] { padding-bottom: 12px; }
  .mdd-app .resumen-movil .art { display: flex; justify-content: space-between; gap: 12px; padding: 8px 0; border-top: 1px solid rgba(35,50,67,.1); font-size: 14px; }
  .mdd-app .pagar-fijo { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 40; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); background: #fff; box-shadow: 0 -6px 20px rgba(35,50,67,.12); transition: translate .25s; }
  .mdd-app .pagar-fijo span { display: grid; font-size: 12px; color: var(--suave); line-height: 1.2; }
  .mdd-app .pagar-fijo strong { font-size: 18px; color: var(--tinta); }
  .mdd-app .pagar-fijo .btn { min-height: 50px; padding: 0 28px; }
  .mdd-app .pagar-fijo.oculto { translate: 0 110%; }
  body.pagina-app .pie { padding-bottom: 80px; }
}
@media (max-width: 860px) { .mdd-app .resumen-movil summary strong { white-space: nowrap; } }
/* Aula en celular */
.mdd-app .aula-movil-cab, .mdd-app .aula-barra, .mdd-app .indice-cerrar{display:none}
@media (max-width:900px){
  .mdd-app .aula-principal{display:flex;flex-direction:column;padding-top:14px;padding-bottom:110px}
  .mdd-app .aula-movil-cab{order:-3;display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center;width:100%;margin:0 0 16px;padding:14px 16px;border:0;border-radius:14px;background:var(--tinta);color:#fff;text-align:left;cursor:pointer;font:inherit}
  .mdd-app .amc-txt{display:grid;min-width:0}
  .mdd-app .amc-txt small{font-size:.74rem;color:var(--pizarra-2,#b5c4cf);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mdd-app .amc-txt strong{color:#fff;font-size:1rem}
  .mdd-app .amc-ver{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.14);font-size:.8rem;font-weight:700}
  .mdd-app .amc-avance{grid-column:1 / -1;height:6px;border-radius:99px;background:rgba(255,255,255,.18);overflow:hidden}
  .mdd-app .amc-avance span{display:block;height:100%;background:#fff;border-radius:inherit}
  .mdd-app .aula-principal > .aviso-bloque, .mdd-app .aula-principal > .alerta{order:-2}
  .mdd-app .lec-cab{order:-1;margin:4px 0 14px}
  .mdd-app .lec-acciones{margin:16px 0 20px}
  .mdd-app .lec-acciones .btn-hecha{display:none}
  .mdd-app .aula-indice{inset:0 auto 0 0;z-index:95;width:min(360px,88vw)}
  .mdd-app .aula-indice.abierto{box-shadow:0 0 0 100vmax rgba(20,28,38,.45)}
  .mdd-app .aula-indice-cab{position:relative;padding-top:18px}
  .mdd-app .aula-indice-cab a.volver{display:inline-flex;align-items:center;min-height:44px}
  .mdd-app .indice-cerrar{display:grid;place-items:center;position:absolute;top:12px;right:12px;width:44px;height:44px;border:0;border-radius:999px;background:#fff;font-size:1rem;cursor:pointer;color:var(--tinta)}
  .mdd-app .aula-barra{display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:45;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -6px 20px rgba(35,50,67,.12)}
  .mdd-app .aula-barra-hecha, .mdd-app .aula-barra-sig{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;border-radius:999px;font:700 .86rem var(--sans,Montserrat,sans-serif);text-decoration:none;cursor:pointer}
  .mdd-app .aula-barra-hecha{border:2px solid var(--tinta);background:#fff;color:var(--tinta)}
  .mdd-app .aula-barra-hecha.hecha{background:#e3f3e8;border-color:#2c6939;color:#2c6939}
  .mdd-app .aula-barra-sig{background:var(--tinta);color:#fff}
  .mdd-app .aula-barra-hecha svg{width:18px;height:18px}
  .con-reproductor .mdd-app .aula-barra{bottom:88px}
}
@media (max-width:900px){
  .mdd-app .amc-ver{grid-row:1;grid-column:2;justify-self:end}
  .mdd-app .lec-cab .antetitulo{display:none}
  .mdd-app .aula-barra-hecha{white-space:nowrap;font-size:.82rem}
}
/* Aula dentro del modo enfocado: la barra superior mide 60px */
.modo-aula .mdd-app .aula{min-height:calc(100vh - 60px)}
.modo-aula .mdd-app .aula-indice{top:60px;max-height:calc(100vh - 60px)}
@media (max-width:900px){
  .modo-aula .mdd-app .aula-indice{top:0;max-height:none}
  .modo-aula .mdd-app .amc-txt small{display:none}
}
.modo-aula .mdd-app .aula-indice-cab a.volver, .modo-aula .mdd-app .aula-indice-cab h2{display:none}
.modo-aula .mdd-app .aula-indice-cab::before{content:'Días del programa';display:block;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--suave);margin-bottom:10px}
@media (max-width:900px){ .modo-aula .mdd-app .amc-txt small{display:block} .modo-aula .mdd-app .aula-indice-cab{padding-top:22px} }
@media (min-width:901px){ .modo-aula .aula-top-avance{display:none} }
/* Botón de reproducir: triángulo sólido, centrado ópticamente dentro del círculo */
.mdd-app .video-portada svg.play-solido{width:30px;height:30px;margin:0 0 0 3px;fill:var(--tinta);stroke:none}
@media (max-width:600px){.mdd-app .video-portada span{width:64px;height:64px}.mdd-app .video-portada svg.play-solido{width:26px;height:26px}}
/* «Completar día» vive al final de la lección (como Coursera/Domestika), no arriba */
.mdd-app .lec-acciones .btn-hecha{display:none}
.mdd-app .cierre-dia{order:10;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;margin-top:32px;padding:22px 24px;border-radius:16px;background:var(--tinta);color:#fff}
.mdd-app .cierre-dia div{display:grid;gap:2px;min-width:0}
.mdd-app .cierre-dia strong{font-size:1.1rem;color:#fff}
.mdd-app .cierre-dia div span{font-size:.88rem;color:rgba(255,255,255,.75)}
.mdd-app .cierre-dia .cierre-btn{background:#fff;color:var(--tinta);border-color:#fff}
.mdd-app .cierre-dia .cierre-btn:hover{background:var(--pizarra-2,#b5c4cf);border-color:var(--pizarra-2,#b5c4cf);color:var(--tinta)}
.mdd-app .cierre-dia.hecho{background:#e3f3e8;color:#2c6939}
.mdd-app .cierre-dia.hecho strong{color:#2c6939}
.mdd-app .cierre-dia.hecho div span{color:#3f6b4a}
.mdd-app .cierre-dia.hecho .cierre-btn{background:#2c6939;border-color:#2c6939;color:#fff}
.mdd-app .lec-nav{order:11}
@media (max-width:900px){
  .mdd-app .cierre-dia{display:none}
  .mdd-app .aula-barra-ant{flex:none;width:50px;display:grid;place-items:center;border-radius:999px;border:2px solid var(--tinta);color:var(--tinta);text-decoration:none;font-weight:700}
  .mdd-app .aula-barra-sig{border:0;gap:8px}
  .mdd-app .aula-barra-sig svg{width:18px;height:18px}
}
/* Comunidad del día (comentarios) */
.mdd-app .comunidad-dia{order:10;margin-top:36px;padding-top:28px;border-top:1px solid var(--linea)}
.mdd-app .comunidad-dia-cab{display:flex;align-items:center;gap:10px}
.mdd-app .comunidad-dia-cab h2{font-size:1.25rem;margin:0}
.mdd-app .comunidad-dia .pill{min-width:26px;height:26px;padding:0 8px;border-radius:999px;background:var(--bruma);display:inline-grid;place-items:center;font-size:.8rem;font-weight:700;color:var(--tinta)}
.mdd-app .comunidad-dia-ayuda{font-size:.86rem;color:var(--suave);margin:6px 0 16px}
.mdd-app .form-comentario{display:grid;gap:10px;margin-bottom:20px}
.mdd-app .form-comentario textarea{min-height:90px;resize:vertical}
.mdd-app .form-comentario .btn{justify-self:end}
.mdd-app .comentarios{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.mdd-app .comentarios li{padding:16px 18px;border-radius:14px;background:var(--papel,#f7f5f1)}
.mdd-app .co-cab{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.mdd-app .co-inicial{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--tinta);color:#fff;font-size:.8rem;font-weight:700}
.mdd-app .co-cab strong{font-size:.92rem}
.mdd-app .co-equipo{font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:999px;background:#e3ecf5;color:#2e5378}
.mdd-app .co-cab time{margin-left:auto;font-size:.76rem;color:var(--suave)}
.mdd-app .comentarios p{margin:0;font-size:.95rem;line-height:1.65}
.mdd-app .co-acciones{margin-top:8px;font-size:.78rem;color:var(--suave)}
.mdd-app .co-acciones button{border:0;background:none;padding:6px 0;color:var(--suave);font-size:.78rem;cursor:pointer;text-decoration:underline}
.mdd-app .comunidad-dia .vacio{font-size:.9rem;color:var(--suave)}
.mdd-app .lec-nav{order:12}

.mdd-app .comunidad-dia .vacio{text-align:left;padding:4px 0 0;margin:0}
.mdd-app .cierre-btn{min-width:220px}
/* Pantalla de cierre del día / del programa */
.mdd-app .exito-dia{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:20px;background:rgba(20,28,38,.55);animation:exitoVelo .25s ease both}
.mdd-app .exito-caja{max-width:440px;width:100%;padding:34px 28px;border-radius:22px;background:#fff;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.25);animation:exitoCaja .35s cubic-bezier(.2,0,0,1) both}
.mdd-app .exito-marca{width:72px;height:72px;margin:0 auto 16px;border-radius:50%;display:grid;place-items:center;background:#e3f3e8;color:#2c6939}
.mdd-app .exito-marca svg{width:34px;height:34px}
.mdd-app .exito-caja h2{font-size:1.5rem;margin:0 0 8px}
.mdd-app .exito-caja p{color:var(--suave);margin:0 0 18px}
.mdd-app .exito-acciones{display:grid;gap:10px}
@keyframes exitoVelo{from{opacity:0}}
@keyframes exitoCaja{from{opacity:0;transform:translateY(12px) scale(.97)}}
/* Herramientas del curso en el índice */
.mdd-app .aula-herramientas{display:grid;gap:4px;margin-top:14px;padding-top:12px;border-top:1px solid var(--linea)}
.mdd-app .aula-herramientas > a, .mdd-app .recordatorio{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 6px;border-radius:10px;font-size:.86rem;font-weight:600;color:var(--tinta);text-decoration:none}
.mdd-app .aula-herramientas > a:hover{background:var(--bruma)}
.mdd-app .aula-herramientas svg{width:18px;height:18px;flex:none;color:var(--azul)}
.mdd-app .recordatorio span{flex:1}
.mdd-app .recordatorio select{width:auto;min-height:34px;padding:0 8px;border-radius:8px;font-size:.8rem}
.mdd-app .mi-curso-ligas{font-size:.84rem;margin:8px 0 0}
/* Cuaderno */
.mdd-app .cuaderno{max-width:760px;margin:0 auto;padding:40px 20px 80px}
.mdd-app .cuaderno-cab{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;padding-bottom:22px;margin-bottom:10px;border-bottom:1px solid var(--linea)}
.mdd-app .cuaderno-cab h1{margin:4px 0}
.mdd-app .cuaderno-dia{padding:24px 0;border-bottom:1px solid var(--linea);break-inside:avoid}
.mdd-app .cuaderno-num{margin:0;font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--azul)}
.mdd-app .cuaderno-dia h2{font-size:1.2rem;margin:4px 0 10px}
.mdd-app .cuaderno-dia h2 a{color:inherit;text-decoration:none}
.mdd-app .cuaderno-texto{font-family:'Libre Baskerville',Georgia,serif;font-size:1.02rem;line-height:1.85;color:#2f3a47}
.mdd-app .cuaderno-fecha{margin:10px 0 0;font-size:.76rem;color:var(--suave)}
.mdd-app .cuaderno-pie{display:none}
@media print{
  .aula-top,.velo,.aviso-flotante,.cuaderno-cab .btn,.reproductor{display:none !important}
  body,.modo-aula{background:#fff !important}
  .mdd-app .cuaderno{padding:0;max-width:none}
  .mdd-app .cuaderno-pie{display:block;margin-top:30px;font-size:.75rem;color:#888;text-align:center}
}
/* Color de cada curso dentro del aula (--curso viene del curso; si no hay, el azul del sitio) */
.modo-aula .aula-top{background:var(--curso,var(--noche))}
.modo-aula .mdd-app .aula-indice a.lec.actual{background:var(--curso,var(--tinta))}
.modo-aula .mdd-app .aula-indice .hecha .marca{background:var(--curso,var(--azul));border-color:var(--curso,var(--azul))}
.modo-aula .mdd-app .avance span, .modo-aula .mdd-app .amc-avance span{background:var(--curso,var(--azul))}
.modo-aula .mdd-app .aula-movil-cab{background:var(--curso,var(--tinta))}
.modo-aula .mdd-app .amc-avance span{background:#fff}
.modo-aula .mdd-app .cierre-dia:not(.hecho){background:var(--curso,var(--tinta))}
.modo-aula .mdd-app .cierre-dia:not(.hecho) .cierre-btn{color:var(--curso,var(--tinta))}
.modo-aula .mdd-app .aula-barra-sig{background:var(--curso,var(--tinta))}
.modo-aula .mdd-app .aula-barra-ant{border-color:var(--curso,var(--tinta));color:var(--curso,var(--tinta))}
.modo-aula .mdd-app .lec-acciones .btn:not(.btn-claro), .modo-aula .mdd-app .form-comentario .btn, .modo-aula .mdd-app .cuaderno-cab .btn{background:var(--curso,var(--tinta));border-color:var(--curso,var(--tinta))}
.modo-aula .mdd-app .cuaderno-num, .modo-aula .mdd-app .aula-herramientas svg, .modo-aula .mdd-app .lec-cab .antetitulo{color:var(--curso,var(--azul))}
.modo-aula .mdd-app .co-inicial{background:var(--curso,var(--tinta))}
.modo-aula .mdd-app .aviso-bloque.prueba .btn{background:var(--curso,var(--tinta));border-color:var(--curso,var(--tinta))}
/* Invitar amigos */
.mdd-app .invitar{order:9;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 20px;margin-top:28px;padding:18px 20px;border-radius:16px;border:1.5px dashed var(--curso,var(--pizarra));background:#fff}
.mdd-app .invitar > div:first-child{display:grid;gap:2px;min-width:0}
.mdd-app .invitar strong{font-size:1rem;color:var(--tinta)}
.mdd-app .invitar span{font-size:.86rem;color:var(--suave)}
.mdd-app .invitar-botones{display:flex;flex-wrap:wrap;gap:8px}
.mdd-app .invitar .btn svg{width:18px;height:18px}
.mdd-app .invitar--gracias{margin-top:24px;text-align:left}
.mdd-app .btn[aria-busy="true"]{opacity:.6;pointer-events:none}
@media (max-width:600px){.mdd-app .invitar-botones{width:100%}.mdd-app .invitar-botones .btn{flex:1 1 100%}}

/* ---- Regalo en el pago ---- */
.mdd-app fieldset.regalo-caja, .regalo-caja { border: 1.5px dashed #c9b98f; background: #fbf8f1; border-radius: 14px; padding: 16px 18px; margin-bottom: 22px; }
.regalo-toggle { display: flex; gap: 12px; align-items: flex-start; cursor: pointer; }
.regalo-toggle input { width: 20px; height: 20px; margin-top: 2px; flex: none; accent-color: #233243; }
.regalo-toggle span { display: grid; gap: 2px; }
.regalo-toggle strong { font-size: 16px; color: #233243; }
.regalo-toggle small { color: #5d6670; font-size: 14px; line-height: 1.45; }
.regalo-caja [data-regalo-campos] { margin-top: 16px; padding-top: 16px; border-top: 1px solid #e8dfc9; }
.regalo-caja .ayuda { display: block; font-size: 13px; color: #5d6670; margin-top: 4px; }
.regalo-caja textarea { width: 100%; resize: vertical; }

/* Gracias: invitar a alguien, arriba y con peso */
.mdd-app .acompanado{margin:32px auto 0;padding:32px 28px;border-radius:20px;text-align:center;background:color-mix(in srgb,var(--curso) 7%,#fff);border:1.5px solid color-mix(in srgb,var(--curso) 22%,#fff)}
.mdd-app .acompanado-ico{display:inline-flex;margin-bottom:12px;color:var(--curso)}
.mdd-app .acompanado-ico svg:last-child{margin-left:-10px;opacity:.55}
.mdd-app .acompanado h2{margin:0 0 8px;font-size:clamp(1.35rem,3.4vw,1.75rem);text-wrap:balance}
.mdd-app .acompanado p{margin:0 auto 20px;max-width:34em;color:var(--suave);text-wrap:pretty}
.mdd-app .acompanado-botones{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.mdd-app .acompanado .btn{background:var(--curso);border-color:var(--curso)}
.mdd-app .acompanado .btn.btn-claro{background:#fff;color:var(--curso)}
@media (max-width:600px){.mdd-app .acompanado{padding:26px 18px}.mdd-app .acompanado-botones .btn{flex:1 1 100%;justify-content:center}}
.mdd-app .guion{font-variant-ligatures:none;font-feature-settings:"liga" 0,"dlig" 0,"calt" 0}
