/* Maratón de casuísticas: tarjeta del dashboard + aula. Prefijos .maraton-/.mt- (dashboard.css es compartido).
   Concepto: pizarra con tiza (lo memorable) sobre un cuaderno cuadriculado con margen rojo. */
:root{--mt-pizarra:#22372d;--mt-pizarra-2:#2b4538;--mt-tiza:#eef1ea;--mt-papel:#fbfcfe;--mt-cuadro:#e2e9f3;--mt-tinta:#1d3a7d;--mt-texto:#1b2333;--mt-suave:#55627a;--mt-rojo:#b8322a;--mt-resaltador:#ffe45e;--mt-madera:#7a5233}

/* ===== Tarjeta del dashboard: una pizarrita ===== */
.maraton-card{position:relative;overflow:hidden!important;display:flex;flex-direction:column;gap:10px;min-width:0;text-decoration:none;color:var(--mt-tiza)!important;
 padding:24px 24px 38px!important;border:6px solid #5e3f27!important;border-radius:14px!important;
 background:radial-gradient(60% 40% at 25% 30%,#ffffff0d,transparent 70%),radial-gradient(50% 35% at 80% 75%,#ffffff0a,transparent 70%),var(--mt-pizarra)!important;
 box-shadow:inset 0 0 0 2px #3f2a1a,inset 0 0 40px #0006,0 14px 30px #0007!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.maraton-card .mt-pz-escrito{font:700 34px/1 'Caveat',cursive;color:#fff;text-shadow:0 0 1px #fff8,0 0 8px #ffffff2a;transform:rotate(-2deg);transform-origin:left;margin-top:2px}
.maraton-card .mt-pz-fechas{font:600 22px/1.1 'Caveat',cursive;color:var(--mt-resaltador)}
.maraton-card .mt-pz-detalle{font:400 14px/1.55 'Literata',Georgia,serif;color:#d6ddd4;max-width:30ch}
.maraton-card .mt-pz-boton{margin-top:auto;align-self:flex-start;padding:9px 16px;border:2px solid #eef1eacc;border-radius:999px 999px 999px 999px/60% 80% 60% 80%;font:700 15px/1 'Literata',Georgia,serif;color:#fff;transition:background .2s ease}
.maraton-card:hover .mt-pz-boton{background:#ffffff1a}
.maraton-card .mt-pz-repisa{position:absolute;left:0;right:0;bottom:0;height:14px;background:linear-gradient(#8a5d3b,#5e3f27);box-shadow:0 -2px 0 #0003}
.maraton-card .mt-pz-repisa i{position:absolute;right:26px;top:3px;width:30px;height:7px;border-radius:3px;background:#f5f5ef;box-shadow:-46px 0 0 -1px #ffe45e}
.maraton-card:focus-visible{outline:3px solid var(--mt-resaltador);outline-offset:4px}

/* ===== Página del aula ===== */
.maraton-app{margin:0;color:var(--mt-texto);font:17px/1.7 'Literata',Georgia,serif;min-height:100vh;
 background-color:var(--mt-papel);background-image:linear-gradient(var(--mt-cuadro) 1px,transparent 1px),linear-gradient(90deg,var(--mt-cuadro) 1px,transparent 1px);background-size:24px 24px}
.maraton-app *{box-sizing:border-box}
.maraton-app [hidden]{display:none!important}
.mano{font-family:'Caveat',cursive}
.maraton-shell{max-width:1040px;margin:auto;padding:22px 22px 80px}
.maraton-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;font-size:16px}
.mt-marca{font-weight:800;color:var(--mt-tinta)}
.maraton-app a{color:var(--mt-tinta)}
.maraton-app :focus-visible{outline:3px solid #f59e0b;outline-offset:3px}

/* Pizarra (hero) */
.mt-pizarra{position:relative;color:var(--mt-tiza);padding:34px 38px 54px;border:10px solid #5e3f27;border-radius:16px;
 background:radial-gradient(45% 50% at 20% 25%,#ffffff10,transparent 70%),radial-gradient(40% 45% at 85% 70%,#ffffff0b,transparent 70%),var(--mt-pizarra);
 box-shadow:inset 0 0 0 3px #3f2a1a,inset 0 0 70px #0007,0 18px 40px #1b23332e}
.mt-pizarra::after{content:'';position:absolute;left:-10px;right:-10px;bottom:-10px;height:22px;background:linear-gradient(#8a5d3b,#5e3f27);border-radius:0 0 8px 8px}
.mt-pizarra .mt-tiza-piezas{position:absolute;z-index:1;right:46px;bottom:4px;width:44px;height:9px;border-radius:3px;background:#f5f5ef;box-shadow:-60px 1px 0 -1px var(--mt-resaltador),-100px 1px 0 -1px #f5f5ef}
.mt-pizarra h1{margin:0;font:700 clamp(46px,8vw,84px)/1 'Caveat',cursive;color:#fff;text-shadow:0 0 1px #fffa,0 0 14px #ffffff26;letter-spacing:.01em;
 clip-path:inset(0 100% 0 0);animation:mt-escribir 1.4s steps(28,end) .15s forwards}
.mt-pz-fecha{margin:0 0 8px;font:600 clamp(22px,3vw,28px)/1.2 'Caveat',cursive;color:var(--mt-resaltador)}
.mt-pz-texto{margin:14px 0 0;max-width:46ch;color:#d9e0d6}
.mt-acceso{position:relative;margin-top:26px;max-width:470px;padding:16px 18px 18px;color:var(--mt-texto);background:#fff7b8;box-shadow:0 10px 18px #0004;transform:rotate(-1deg);font-size:16px;line-height:1.5}
.mt-acceso::before{content:'';position:absolute;top:-9px;left:50%;width:70px;height:18px;margin-left:-35px;background:#ffffff8c;transform:rotate(2deg)}
.mt-acceso b{display:block;font:700 24px/1.1 'Caveat',cursive;margin-bottom:4px}
.mt-acceso span{display:block}
.mt-acceso a{display:inline-block;margin-top:10px}
.mt-acceso-ok{background:#d9f5df}.mt-acceso-ok b{color:#1d6b3a}
.mt-acceso-no b{color:var(--mt-rojo)}

/* Selector */
.maraton-selector{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:44px 0 6px}
.maraton-selector label{font-weight:600}
.maraton-selector select{flex:1 1 260px;max-width:420px;min-height:48px;padding:10px 12px;border:2px solid var(--mt-tinta);border-radius:10px;background:#fff;color:var(--mt-texto);font:16px 'Literata',Georgia,serif}
.mt-ayuda{flex-basis:100%;margin:0;color:var(--mt-suave);font-size:15px}

/* Noches: secciones del cuaderno con margen rojo */
.mt-dias{margin-top:22px}
.mt-dia{display:grid;grid-template-columns:110px 1fr;background:#ffffffd9;border-top:2px solid var(--mt-cuadro)}
.mt-dia:last-child{border-bottom:2px solid var(--mt-cuadro)}
.mt-margen{padding:30px 12px 0 0;text-align:right;border-right:2px solid #e8a1a1;color:var(--mt-rojo);font-family:'Caveat',cursive;line-height:1}
.mt-margen span{display:block;font-size:24px}
.mt-margen b{display:block;font-size:56px;font-weight:700}
.mt-cuerpo{padding:28px 0 34px 28px;min-width:0}
.mt-dia h2{margin:0;font:800 clamp(21px,2.6vw,27px)/1.2 'Literata',Georgia,serif;color:var(--mt-tinta);letter-spacing:.01em}
.mt-dia-titulo{margin:4px 0 0;font-size:18px;font-weight:600}
.mt-temas{margin:6px 0 0;color:var(--mt-suave);font-size:15px;max-width:70ch}
.mt-fila{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:26px;margin-top:22px;align-items:start}

/* Video */
.mt-video{position:relative;aspect-ratio:16/9;border-radius:6px;overflow:hidden;background:var(--mt-pizarra);box-shadow:0 0 0 6px #fff,0 0 0 7px var(--mt-cuadro),0 12px 24px #1b233322}
.mt-video:has(.ap-wrap){aspect-ratio:auto;background:#000}
.mt-video-play{position:absolute;inset:0;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:0;cursor:pointer;color:#fff;background:radial-gradient(60% 60% at 50% 45%,#ffffff12,transparent 70%),var(--mt-pizarra);font:700 26px/1.1 'Caveat',cursive}
.mt-video-icono{display:grid;place-items:center;width:64px;height:64px;border:3px solid #fff;border-radius:50%;font:20px/1 Arial,sans-serif;padding-left:5px;transition:transform .2s ease,background .2s ease}
.mt-video-play:hover .mt-video-icono{transform:scale(1.07);background:#ffffff1f}
.mt-video .mt-nota-video{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;text-align:center;color:#dfe5dc;font:600 25px/1.25 'Caveat',cursive}
.mt-video .mt-candado{position:absolute;inset:0;margin:0;justify-content:center;align-items:center;text-align:center}
.mt-video .mt-candado b{color:#ffb4ad}.mt-video .mt-candado span{color:#cfd8cc}

/* Recursos: PDF y examen */
.mt-recursos{list-style:none;margin:0;padding:0;display:grid;gap:22px}
.mt-recurso h3{margin:0 0 4px;font:700 18px/1.3 'Literata',Georgia,serif}
.mt-recurso p{margin:0 0 10px;color:var(--mt-suave);font-size:15px}
.mt-burbujas{display:grid;grid-template-columns:repeat(10,12px);gap:6px 7px;margin:8px 0 12px}
.mt-burbujas i{width:11px;height:11px;border:1.5px solid var(--mt-tinta);border-radius:50%;opacity:.55}
.mt-recurso-examen.abierto .mt-burbujas i{opacity:1}
.mt-candado{display:flex;flex-direction:column;gap:2px;margin:4px 0 0}
.mt-candado b{font:700 25px/1.1 'Caveat',cursive;color:var(--mt-rojo)}
.mt-candado span{font-size:15px;color:var(--mt-suave)}
.mt-cuenta{font:600 21px/1.2 'Caveat',cursive;color:var(--mt-rojo)}

/* Botones */
.maraton-primary,.mt-boton-oro{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 22px;border:0;border-radius:10px;background:var(--mt-tinta);color:#fff!important;text-decoration:none;font:700 16px/1.2 'Literata',Georgia,serif;cursor:pointer;box-shadow:0 3px 0 #10245a}
.maraton-primary:hover,.mt-boton-oro:hover{background:#264a9c}
.maraton-primary:active{transform:translateY(2px);box-shadow:0 1px 0 #10245a}
.maraton-secondary,.mt-boton-claro{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 18px;border:2px solid var(--mt-tinta);border-radius:10px;background:#fff;color:var(--mt-tinta)!important;text-decoration:none;font:700 16px/1.2 'Literata',Georgia,serif;cursor:pointer}
.maraton-secondary:hover,.mt-boton-claro:hover{background:#eef3fc}
.mt-boton-oro{background:#1f8a4c;box-shadow:0 3px 0 #11592f}.mt-boton-oro:hover{background:#23a058}
.maraton-app button:disabled{cursor:not-allowed;opacity:.55}
.maraton-app .mt-bloqueado:disabled{opacity:1;border-color:#c3cbd8;background:#f1f3f7;color:#7a8599!important}
.mt-candado span:empty{display:none}

/* Formularios del profesor */
.mt-form{display:flex;flex-direction:column;gap:6px}
.mt-form label{font-weight:600;font-size:15px}
.mt-form-fila{display:flex;flex-wrap:wrap;gap:8px}
.mt-form input{flex:1 1 240px;min-height:46px;padding:10px 12px;border:2px solid #b9c6da;border-radius:10px;background:#fff;color:var(--mt-texto);font:16px 'Literata',Georgia,serif}
.mt-form input:focus{border-color:var(--mt-tinta)}
.mt-form-video{margin-top:22px;padding:14px 16px;border:2px dashed #e8a1a1;border-radius:10px;background:#fff}
.mt-admin{margin-top:40px;padding:22px 24px;border:2px dashed #e8a1a1;border-radius:12px;background:#fff}
.mt-admin h2{margin:0 0 12px;font:700 30px/1.1 'Caveat',cursive;color:var(--mt-rojo)}
.mt-admin-estado{min-height:26px;margin:10px 0 0;color:var(--mt-tinta);font-weight:600}
.maraton-status{min-height:26px;margin-top:16px;color:var(--mt-tinta);font-weight:600}

/* Examen: hoja de respuestas */
.maraton-exam-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:8px 0 20px}
.maraton-exam-head h2{margin:0;font:800 24px/1.25 'Literata',Georgia,serif;color:var(--mt-tinta)}
#exam-progress{font:600 22px 'Caveat',cursive;color:var(--mt-rojo)}
.maraton-exam-layout{display:grid;grid-template-columns:1fr 230px;gap:24px}
.maraton-question{background:#fff;border:1px solid var(--mt-cuadro);border-left:4px solid #e8a1a1;border-radius:4px;padding:28px 30px;box-shadow:0 10px 24px #1b233314}
.maraton-question h2{margin:0 0 6px;font:700 15px/1.4 'Literata',Georgia,serif;color:var(--mt-suave)}
.maraton-question p{white-space:pre-line;margin:0 0 18px}
.maraton-question fieldset{border:0;margin:0;padding:0}
.maraton-question legend{font-weight:700;margin-bottom:6px}
.maraton-option{position:relative;display:flex;align-items:flex-start;gap:14px;padding:12px 10px;margin:6px 0;border-radius:8px;cursor:pointer}
.maraton-option:hover{background:#f2f6fc}
.maraton-option input{position:absolute;opacity:0;width:1px;height:1px}
.mt-letra{flex:0 0 34px;height:34px;display:grid;place-items:center;border:2px solid var(--mt-tinta);border-radius:50%;font-weight:800;color:var(--mt-tinta);transition:background .15s ease,color .15s ease}
.maraton-option:has(input:checked) .mt-letra{background:var(--mt-tinta);color:#fff}
.maraton-option:has(input:focus-visible){outline:3px solid #f59e0b;outline-offset:2px}
.maraton-palette{background:#fff;border:1px solid var(--mt-cuadro);border-radius:4px;padding:16px;align-self:start}
.maraton-palette p{margin:0 0 10px;font-weight:700}
.maraton-palette-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}
.maraton-palette button{aspect-ratio:1;min-height:34px;border:1.5px solid var(--mt-tinta);border-radius:50%;background:#fff;color:var(--mt-tinta);font:700 13px 'Literata',Georgia,serif;cursor:pointer}
.maraton-palette button[data-answered=true]{background:var(--mt-tinta);color:#fff}
.maraton-palette button[aria-current=true]{outline:3px solid #f59e0b;outline-offset:2px}
.maraton-navigation{display:flex;justify-content:space-between;gap:10px;margin-top:20px}

/* Resultado: nota encerrada en rojo */
#results-title{margin:0;font:800 26px 'Literata',Georgia,serif;color:var(--mt-tinta)}
.maraton-scores{display:flex;flex-wrap:wrap;align-items:center;gap:10px 28px;margin:18px 0 22px}
.maraton-score{display:flex;align-items:baseline;gap:8px;font-size:16px;color:var(--mt-suave)}
.maraton-score b{font-size:24px;color:var(--mt-texto)}
.maraton-score:first-child{order:-1;flex-basis:100%;flex-direction:column;align-items:flex-start;gap:0}
.maraton-score:first-child b{display:inline-block;padding:4px 26px 8px;border:4px solid var(--mt-rojo);border-radius:48% 52% 45% 55%/55% 45% 55% 45%;font:700 68px/1 'Caveat',cursive;color:var(--mt-rojo);transform:rotate(-4deg)}
.maraton-solution{background:#fff;border:1px solid var(--mt-cuadro);border-left:4px solid #b9c6da;border-radius:4px;padding:20px 24px;margin:14px 0}
.maraton-solution[data-state=correcta]{border-left-color:#1f8a4c}.maraton-solution[data-state=incorrecta]{border-left-color:var(--mt-rojo)}
.maraton-solution h3{margin:0 0 8px;font-size:17px}.maraton-solution p{white-space:pre-line;margin:6px 0}

.mt-sol-op{display:flex;align-items:flex-start;gap:12px}
.mt-sol-op .mt-letra{flex-basis:30px;height:30px;font-size:14px;opacity:.7}
.mt-sol-op.es-correcta .mt-letra{background:#1f8a4c;border-color:#1f8a4c;color:#fff;opacity:1}
.mt-sol-op.es-correcta{font-weight:600}
.mt-sol-op.es-tuya .mt-letra{background:var(--mt-rojo);border-color:var(--mt-rojo);color:#fff;opacity:1}

/* Diálogos */
.maraton-dialog{width:min(520px,calc(100% - 28px));border:0;border-radius:12px;padding:28px;background:#fff;color:var(--mt-texto);font:17px/1.6 'Literata',Georgia,serif;box-shadow:0 25px 70px #0006}
.maraton-dialog::backdrop{background:#1b2333a6}
.maraton-dialog h2{margin:0 0 10px;font:800 23px/1.25 'Literata',Georgia,serif;color:var(--mt-tinta)}

@keyframes mt-escribir{to{clip-path:inset(0 0 0 0)}}

@media(max-width:820px){.mt-fila{grid-template-columns:1fr}}
@media(max-width:640px){
 .maraton-shell{padding:16px 14px 60px}
 .mt-pizarra{padding:24px 20px 46px;border-width:8px}
 .mt-dia{grid-template-columns:62px 1fr}.mt-margen{padding-top:24px;padding-right:8px}.mt-margen span{font-size:18px}.mt-margen b{font-size:40px}
 .mt-cuerpo{padding:22px 0 28px 16px}
 .maraton-exam-layout{grid-template-columns:minmax(0,1fr)}.maraton-palette{order:-1;padding:12px}.maraton-palette-grid{grid-template-columns:repeat(10,minmax(0,1fr));gap:4px}.maraton-palette button{min-height:0;min-width:0;padding:0;font-size:11px}
 .maraton-question{padding:20px 18px}.maraton-exam-head{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){.mt-pizarra h1{animation:none;clip-path:none}.mt-video-icono,.mt-letra{transition:none}}

/* ===== Transición entre páginas con el logo (misma pantalla que el #loader del dashboard). Solo opacity/transform. ===== */
.mt-velo{position:fixed;inset:0;z-index:99999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:#0f172a;opacity:1;visibility:visible;transition:opacity .4s cubic-bezier(.4,0,.2,1),visibility .4s}
.mt-velo.fuera{opacity:0;visibility:hidden;pointer-events:none}
.mt-velo:not(.fuera){animation:mt-velo-seguro .4s ease 4s forwards}
.mt-velo-disco{position:relative;width:min(40vw,170px);aspect-ratio:1;animation:mt-velo-entra .5s cubic-bezier(.34,1.3,.64,1) both}
.mt-velo-disco img{display:block;width:100%;height:100%;border-radius:50%;animation:mt-velo-late 2.6s ease-in-out .5s infinite}
.mt-velo-aro{position:absolute;inset:-6%;border-radius:50%;border:2px solid #f59e0b8c;animation:mt-velo-onda 2.6s ease-out .7s infinite}
.mt-velo-marca{margin:0;color:#f8fafc;font:800 22px/1.2 'Montserrat',Arial,sans-serif}.mt-velo-marca b{color:#f59e0b}
@keyframes mt-velo-seguro{to{opacity:0;visibility:hidden;pointer-events:none}}
@keyframes mt-velo-entra{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}
@keyframes mt-velo-late{50%{transform:scale(1.035)}}
@keyframes mt-velo-onda{0%{transform:scale(.92);opacity:0}35%{opacity:.7}100%{transform:scale(1.18);opacity:0}}

/* ===== Botón Volver ===== */
.mt-volver{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:6px 18px 6px 12px;border:2px solid var(--mt-tinta);border-radius:999px;background:#fff;color:var(--mt-tinta)!important;font-weight:700;text-decoration:none;transition:background .2s ease,transform .2s ease}
.mt-volver span{font-size:26px;line-height:1;transition:transform .2s ease}
.mt-volver:hover{background:#eef3fc}.mt-volver:hover span{transform:translateX(-3px)}

/* ===== Logo en la pizarra ===== */
.mt-pizarra{padding-right:calc(min(26%,230px) + 90px)}
.mt-pz-logo{position:absolute;right:56px;top:50%;width:min(26%,230px);height:auto;aspect-ratio:1;border-radius:50%;transform:translateY(-56%) rotate(4deg);outline:2px dashed #eef1ea59;outline-offset:12px;box-shadow:0 18px 40px #0009}
.mt-pizarra h1{clip-path:none;animation:none}
.listo .mt-pizarra h1{animation:mt-escribir 1.3s steps(26,end) .2s both}
@keyframes mt-escribir{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}

/* ===== Cambios suaves dentro del aula y del examen ===== */
.mt-entra{animation:mt-entra .3s cubic-bezier(.2,.7,.2,1) both}
.mt-q-sig{animation:mt-q-sig .24s ease-out both}.mt-q-ant{animation:mt-q-ant .24s ease-out both}
.maraton-dialog[open]{animation:mt-dlg .22s cubic-bezier(.2,.7,.2,1) both}
.maraton-dialog[open]::backdrop{animation:mt-fundir .22s ease-out both}
.maraton-palette button{transition:background .18s ease,color .18s ease,transform .18s ease}
.maraton-palette button:hover{transform:scale(1.08)}
.maraton-score:first-child b{animation:mt-nota .55s cubic-bezier(.34,1.4,.64,1) .15s both}
.mt-sol-op .mt-letra{transition:none}
@keyframes mt-entra{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes mt-q-sig{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}
@keyframes mt-q-ant{from{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:none}}
@keyframes mt-dlg{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
@keyframes mt-fundir{from{opacity:0}to{opacity:1}}
@keyframes mt-nota{from{opacity:0;transform:scale(.6) rotate(-14deg)}to{opacity:1;transform:rotate(-4deg)}}

@media(max-width:720px){
 .mt-pizarra{padding-right:20px}
 .mt-pz-logo{right:14px;top:14px;width:78px;transform:rotate(4deg);outline-offset:5px}
 .mt-pz-fecha{padding-right:84px}
}
@media(prefers-reduced-motion:reduce){
 .mt-velo,.mt-volver,.mt-volver span,.maraton-palette button{transition:none}
 .mt-velo-disco,.mt-velo-disco img,.mt-velo-aro,.listo .mt-pizarra h1,.mt-entra,.mt-q-sig,.mt-q-ant,.maraton-dialog[open],.maraton-dialog[open]::backdrop,.maraton-score:first-child b{animation:none}
}

/* ===== Botones con candado (no inscrito → abren la invitación) ===== */
.mt-bloqueado{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:9px 18px;border:2px dashed #c9a3a0;border-radius:10px;background:#fff8f7;color:var(--mt-rojo);font:700 16px/1.2 'Literata',Georgia,serif;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.mt-bloqueado:hover{background:#fdecea;border-color:var(--mt-rojo);transform:translateY(-1px)}
.mt-bloqueado-ico{font-size:15px}
.maraton-app .mt-bloqueado:disabled{transform:none;cursor:not-allowed;opacity:1;border-color:#c3cbd8;background:#f1f3f7;color:#7a8599}
.mt-recurso .mt-bloqueado{width:100%}
.mt-video .mt-bloqueado-video{position:absolute;left:50%;top:50%;width:auto;transform:translate(-50%,-50%);background:#ffffff14;border-color:#eef1ea80;color:#fff;font:700 24px/1 'Caveat',cursive;padding:14px 26px}
.mt-video .mt-bloqueado-video:hover{background:#ffffff26;transform:translate(-50%,-52%)}

/* ===== Invitación flotante (WhatsApp) ===== */
.mt-modal{width:min(500px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;border:0;border-radius:18px;overflow:auto;background:#fff;color:var(--mt-texto);font:17px/1.6 'Literata',Georgia,serif;box-shadow:0 30px 80px #0b132480}
.mt-modal::backdrop{background:#0f172ab3}
.mt-modal[open]{animation:mt-modal-entra .38s cubic-bezier(.2,.8,.2,1) both}
.mt-modal[open]::backdrop{animation:mt-fundir .3s ease-out both}
.mt-modal.cerrando{animation:mt-modal-sale .2s ease-in both}
.mt-modal.cerrando::backdrop{animation:mt-fundir-sale .2s ease-in both}
.mt-modal-pizarra{position:relative;display:flex;align-items:center;gap:16px;padding:24px 56px 26px 22px;color:var(--mt-tiza);border-bottom:10px solid #5e3f27;background:radial-gradient(50% 60% at 25% 30%,#ffffff12,transparent 70%),var(--mt-pizarra)}
.mt-modal-pizarra img{flex:0 0 76px;width:76px;height:76px;border-radius:50%;outline:2px dashed #eef1ea66;outline-offset:5px}
.mt-modal-fecha{margin:0;font:600 20px/1.2 'Caveat',cursive;color:var(--mt-resaltador)}
.mt-modal h2{margin:2px 0 0;font:700 clamp(30px,6vw,38px)/1.05 'Caveat',cursive;color:#fff;text-shadow:0 0 10px #ffffff26}
.mt-modal-cerrar{position:absolute;top:10px;right:10px;width:44px;height:44px;border:0;border-radius:50%;background:#ffffff14;color:#fff;font:400 26px/1 Arial,sans-serif;cursor:pointer;transition:background .2s ease}
.mt-modal-cerrar:hover{background:#ffffff2e}
.mt-modal-cuerpo{padding:22px 24px 24px}
.mt-modal-origen{margin:0 0 14px;font-weight:700;color:var(--mt-rojo)}
.mt-modal-lista{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:12px}
.mt-modal-lista li{position:relative;padding-left:34px;color:var(--mt-suave);font-size:16px;line-height:1.5}
.mt-modal-lista li::before{content:'✓';position:absolute;left:0;top:1px;width:24px;height:24px;display:grid;place-items:center;border:2px solid #1f8a4c;border-radius:50%;color:#1f8a4c;font:800 13px/1 Arial,sans-serif}
.mt-modal-lista b{display:block;color:var(--mt-texto)}
.mt-modal-wa{display:flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:12px 20px;border-radius:12px;background:#1f8a4c;color:#fff!important;text-decoration:none;font:800 18px/1.2 'Literata',Georgia,serif;box-shadow:0 4px 0 #11592f;transition:background .2s ease,transform .15s ease}
.mt-modal-wa i{font-size:24px}
.mt-modal-wa:hover{background:#23a058}.mt-modal-wa:active{transform:translateY(2px);box-shadow:0 2px 0 #11592f}
.mt-modal-nota{margin:14px 0 0;text-align:center;color:var(--mt-suave);font-size:14px}
@keyframes mt-modal-entra{from{opacity:0;transform:translateY(28px) scale(.96)}to{opacity:1;transform:none}}
@keyframes mt-modal-sale{to{opacity:0;transform:translateY(14px) scale(.98)}}
@keyframes mt-fundir-sale{to{opacity:0}}
@media(max-width:480px){.mt-modal-pizarra{padding:20px 52px 22px 16px;gap:12px}.mt-modal-pizarra img{flex-basis:58px;width:58px;height:58px}.mt-modal-cuerpo{padding:18px 16px 20px}}
@media(prefers-reduced-motion:reduce){.mt-modal[open],.mt-modal[open]::backdrop,.mt-modal.cerrando,.mt-modal.cerrando::backdrop{animation:none}.mt-bloqueado,.mt-modal-wa{transition:none}}

/* ===== Resultado: acciones (rendir otra vez, imprimir, volver) e IMPRESIÓN del examen desarrollado (04/11) ===== */
.mt-acciones-resultado{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}
.mt-acciones-pie{margin:26px 0 0;padding-top:22px;border-top:1px solid var(--mt-cuadro)}
.mt-impreso{display:none}
@media print{
 @page{margin:14mm 12mm}
 .maraton-app{background:#fff!important;color:#000;font-size:11pt;line-height:1.45}
 .maraton-shell{max-width:none;padding:0}
 .mt-velo,.maraton-top,.mt-pizarra,#maraton-index,#maraton-exam,#maraton-status,.mt-acciones-resultado,.mt-modal,.maraton-dialog,#results-title{display:none!important}
 #maraton-results{display:block!important;animation:none}
 .mt-impreso{display:block;margin:0 0 10pt;padding:0 0 8pt;border-bottom:2px solid #000}
 .mt-impreso b{display:block;font-size:15pt}
 .mt-impreso span{display:block;font-size:10.5pt}
 .maraton-scores{gap:6pt 18pt;margin:0 0 12pt}
 .maraton-score b{font-size:14pt}
 .maraton-score:first-child b{animation:none;transform:none;font-size:26pt;padding:2pt 14pt 4pt;border-width:2.5pt}
 .maraton-solution{break-inside:avoid;page-break-inside:avoid;border:1px solid #888;border-left:4pt solid #888;box-shadow:none;padding:8pt 12pt;margin:8pt 0;background:#fff}
 .maraton-solution[data-state=correcta]{border-left-color:#1f8a4c}.maraton-solution[data-state=incorrecta]{border-left-color:var(--mt-rojo)}
 .maraton-solution h3{font-size:12pt}.maraton-solution p{margin:3pt 0}
 .mt-letra{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* ===== Examen de Inglés: botón Traducir (05/11) ===== */
.maraton-exam-head .mt-traducir{margin-left:auto}
@media print{.mt-traducir{display:none!important}}
@media(max-width:640px){.maraton-exam-head .mt-traducir{margin-left:0;align-self:flex-start}}

/* ===== Clase en vivo por Google Meet (dentro de la nota "¡Estás inscrito!") ===== */
.mt-meet{margin-top:14px}
.mt-acceso .mt-meet-boton,.mt-acceso .mt-meet-espera{display:grid;justify-items:center;gap:3px;margin:0;padding:12px 16px 13px;border-radius:12px;text-align:center;color:#fff!important;text-decoration:none!important}
.mt-acceso .mt-meet-boton{background:linear-gradient(175deg,#ee3328,#c11a10);box-shadow:0 4px 0 #7d0f09;animation:mt-meet-latido 2s ease-out infinite;cursor:pointer}
.mt-acceso .mt-meet-boton:hover{background:linear-gradient(175deg,#ff4639,#d42116)}
.mt-acceso .mt-meet-boton:active{transform:translateY(2px)}
.mt-acceso .mt-meet-boton:focus-visible{outline:3px solid #1768d1;outline-offset:3px}
.mt-acceso .mt-meet-espera{background:linear-gradient(175deg,#b8231b,#8c130c);box-shadow:0 4px 0 #5a0b06}
.mt-acceso .mt-meet-l1{display:block;font:800 16px/1.25 'Literata',Georgia,serif;color:#ffe45e}
.mt-acceso .mt-meet-l2{display:block;font:800 24px/1.15 'Literata',Georgia,serif;color:#fff}
.mt-acceso .mt-meet-espera .mt-meet-l2{font-size:34px;letter-spacing:.01em}
.mt-acceso .mt-meet-l3{display:block;font:600 14px/1.3 'Literata',Georgia,serif;color:#ffe1d6}
.mt-acceso .mt-meet-num{display:inline;font-variant-numeric:tabular-nums}
@keyframes mt-meet-latido{0%{box-shadow:0 4px 0 #7d0f09,0 0 0 0 #ff4a3f99}65%{box-shadow:0 4px 0 #7d0f09,0 0 0 13px #ff4a3f00}100%{box-shadow:0 4px 0 #7d0f09,0 0 0 0 #ff4a3f00}}
@media(prefers-reduced-motion:reduce){.mt-acceso .mt-meet-boton{animation:none}}

/* 05/11: aviso "la clase ya se dio, estamos procesando el video" en el recuadro del video */
.mt-procesando{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:18px 20px;text-align:center;color:#fff;background:radial-gradient(70% 60% at 50% 40%,#ffffff14,transparent 70%),var(--mt-pizarra)}
.mt-proc-sello{padding:5px 12px;border-radius:999px;background:var(--mt-rojo);color:#fff;font:700 13px/1 'Literata',Georgia,serif;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 2px 0 #0003}
.mt-procesando b{margin-top:6px;font:800 clamp(21px,2.6vw,28px)/1.15 'Literata',Georgia,serif;color:var(--mt-resaltador);text-wrap:balance}
.mt-proc-linea{font:600 clamp(16px,1.8vw,19px)/1.3 'Literata',Georgia,serif;color:#fff}
.mt-proc-pronto{font:400 clamp(15px,1.6vw,17px)/1.3 'Literata',Georgia,serif;color:#dfe5dc}
.mt-proc-barra{position:relative;display:block;width:min(220px,70%);height:6px;margin-top:10px;border-radius:99px;background:#ffffff26;overflow:hidden}
.mt-proc-barra i{position:absolute;inset:0;width:40%;border-radius:inherit;background:var(--mt-resaltador);animation:mt-proc 1.6s ease-in-out infinite}
@keyframes mt-proc{0%{transform:translateX(-100%)}100%{transform:translateX(250%)}}
@media(max-width:420px){.mt-procesando{gap:4px;padding:12px}.mt-proc-sello{font-size:11px;padding:4px 10px}.mt-proc-barra{display:none}}
@media(prefers-reduced-motion:reduce){.mt-proc-barra i{animation:none;width:100%;opacity:.6}}

/* 06/11: PDF desarrollado + video de Google Drive */
.mt-boton-des{margin-top:8px}
.mt-nota-des{margin:8px 0 0!important;font-size:14px;color:var(--mt-suave)}
.mt-video .mt-video-drive{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}
/* 06/11 (2): video de Drive grande y sin salida a Drive */
.mt-fila.mt-fila-video{grid-template-columns:1fr}
.mt-video.mt-video-grande{aspect-ratio:16/9}
.mt-video .mt-drive-tapa{position:absolute;top:0;left:0;right:0;height:68px;z-index:2;background:transparent}
.mt-drive-full{justify-self:start;margin-top:-6px}
.mt-drive-respaldo{justify-self:start;font-size:14px;font-weight:600;color:#1e40af;text-decoration:underline;text-underline-offset:3px;padding:4px 0}
.mt-drive-respaldo:hover{color:#1d4ed8}
.mt-video:fullscreen{width:100vw;height:100vh;aspect-ratio:auto;border-radius:0;box-shadow:none;background:#000}
.mt-video:-webkit-full-screen{width:100vw;height:100vh;aspect-ratio:auto;border-radius:0;background:#000}
