:root{--magenta: #dd5a9b;--magenta-oscuro: #883d65;--teal: #3abaa4;--crema: #f8f1e8;--fondo: #fffbf8;--texto: #3a2a32;--muted: #7a6570;--linea: #ead9e1;--blanco: #ffffff;--sombra: 0 10px 30px rgba(136, 61, 101, .08);--radio: 18px;--acento: var(--magenta)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Nunito,Arial,sans-serif;color:var(--texto);background:var(--fondo)}a{color:inherit}button,input,select{font-family:inherit}.blob{position:absolute;border-radius:50%;filter:blur(8px);opacity:.45;pointer-events:none}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,var(--crema) 100%)}.login-card{width:min(420px,100%);background:var(--blanco);border-radius:28px;padding:32px 28px;box-shadow:var(--sombra);position:relative;z-index:1}.login-card img.logo{width:180px;display:block;margin:0 auto 8px}.login-card h1{text-align:center;margin:0 0 4px;font-size:1.6rem;color:var(--magenta-oscuro)}.login-card p.slogan{text-align:center;color:var(--muted);margin:0 0 24px}label{display:block;font-weight:600;margin-bottom:6px}input,select{width:100%;padding:12px 14px;border:1px solid var(--linea);border-radius:12px;margin-bottom:16px;background:#fff}.field-hint{color:var(--muted);font-size:.85rem;margin:-10px 0 14px}.btn{border:0;border-radius:999px;padding:12px 20px;font-weight:700;cursor:pointer}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--acento);color:#fff;width:100%}.btn-ghost{background:transparent;color:var(--magenta-oscuro)}.btn-outline{background:#fff;color:var(--magenta-oscuro);border:2px solid var(--magenta-oscuro);width:auto}.btn-teal{background:var(--teal);color:#fff}.error{background:#fde8ef;color:#883d65;border-radius:12px;padding:10px 12px;margin-bottom:14px}.ok{background:#e6f7f3;color:#1d6e61;border-radius:12px;padding:10px 12px;margin-bottom:14px}.banner-previa{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 20px;background:#fff4d6;color:var(--magenta-oscuro);font-weight:700;border-bottom:1px solid #f0d48a}.banner-previa a{color:var(--magenta-oscuro)}.banner-previa .toggle-row{margin:0;align-items:center}.banner-previa .toggle-label{font-size:.9rem}.acciones{display:flex;flex-wrap:wrap;gap:8px}.acciones .btn,.toolbar .btn{width:auto;display:inline-flex;align-items:center;gap:6px}.shell{min-height:100vh;display:flex;flex-direction:column}.shell-cabecera{flex:0 0 auto}.shell>:last-child{flex:1 1 auto;min-height:0}.topbar{display:flex;align-items:center;gap:16px;padding:12px 20px;background:#fff;border-bottom:1px solid var(--linea)}.topbar img{height:40px}.brand{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--magenta-oscuro);letter-spacing:-.02em;white-space:nowrap}a.brand{text-decoration:none;color:var(--magenta-oscuro)}.topbar a.brand,.topbar a.brand:hover{padding:0;border-radius:0;background:transparent;color:var(--magenta-oscuro)}.topbar nav{display:flex;gap:8px;flex-wrap:wrap;flex:1}.topbar nav a{display:inline-flex;align-items:center;gap:6px}.topbar a,.chip{text-decoration:none;padding:8px 12px;border-radius:999px;font-weight:700;white-space:nowrap;font-size:.92rem}.topbar a.active{background:color-mix(in srgb,var(--acento) 18%,white);color:var(--acento)}.userbox{text-align:right;font-size:.9rem}.userbox strong{display:block}main.page{padding:24px;max-width:1100px;margin:0 auto;width:100%}main.page>h1{margin:0 0 8px;color:var(--magenta-oscuro)}main.page>h2{margin:24px 0 12px;font-size:1.15rem}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.card{background:#fff;border-radius:var(--radio);padding:18px;box-shadow:var(--sombra)}.card h3{margin-top:0}.muted{color:var(--muted)}.panel-superadmin{--acento: var(--magenta-oscuro)}.panel-admin{--acento: var(--teal)}.panel-usuario{--acento: var(--magenta)}.progress{height:8px;background:var(--linea);border-radius:99px;overflow:hidden;margin:12px 0 20px}.progress>span{display:block;height:100%;background:var(--acento)}.player{display:grid;grid-template-columns:240px 1fr;gap:20px}@media (max-width: 800px){.player{grid-template-columns:1fr}}.index{list-style:none;padding:0;margin:0}.index li{padding:8px 10px;border-radius:10px;margin-bottom:6px;font-size:.92rem}.index .done{background:#e6f7f3}.index .now{background:color-mix(in srgb,var(--acento) 16%,white);font-weight:700}.index .locked{opacity:.45}.flip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.flip{min-height:110px;border-radius:16px;border:1px solid var(--linea);background:#fff;cursor:pointer;padding:14px;font-weight:700}.flip.open{background:var(--crema);color:var(--magenta-oscuro)}.hotspot-wrap{position:relative;border-radius:16px;overflow:hidden}.hotspot-wrap img{width:100%;display:block}.hotspot{position:absolute;width:28px;height:28px;border-radius:50%;border:3px solid #fff;background:var(--magenta);transform:translate(-50%,-50%);cursor:pointer}.hotspot.on{background:var(--teal)}.anotacion-marco{position:relative;display:block}.anotacion-marco>img{width:100%;display:block}.capa-anotaciones{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;color:var(--magenta)}.capa-anotaciones.is-edit{pointer-events:auto;cursor:crosshair}.anotacion-item{position:absolute;top:0;right:0;bottom:0;left:0}.anotacion-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.anotacion-rect,.anotacion-foco,.anotacion-circulo{position:absolute;border:3px solid var(--magenta);box-sizing:border-box;pointer-events:none}.anotacion-foco{box-shadow:0 0 0 9999px #28141e8c;border-radius:6px}.anotacion-circulo{border-radius:50%;transform:translate(-50%,-50%)}.anotacion-numero{position:absolute;width:28px;height:28px;border-radius:50%;background:var(--magenta);color:#fff;font-weight:800;font-size:13px;display:grid;place-items:center;transform:translate(-50%,-50%);border:2px solid #fff}.anotacion-etq{position:absolute;left:0;bottom:100%;background:var(--magenta);color:#fff;font-size:11px;padding:2px 6px;border-radius:6px;white-space:nowrap}.anotacion-tools{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.anotacion-tools .is-on{background:var(--crema)}.anotacion-fila{display:grid;grid-template-columns:auto 1fr auto auto auto;gap:6px;align-items:center;margin:6px 0}.toca-lienzo{display:block;width:100%;padding:0;border:0;background:none;cursor:crosshair}.simulador-campo{display:grid;gap:6px;margin:10px 0}.simulador-campo .ok{color:#1d6e61;font-weight:700}.simulador-campo .bad{color:var(--magenta-oscuro);font-weight:700}.nav-row{display:flex;justify-content:space-between;gap:12px;margin-top:24px;align-items:center}.falta{font-weight:700;color:var(--magenta-oscuro)}.asignar fieldset{border:1px solid var(--linea);border-radius:16px;padding:16px;margin:0 0 18px;background:#fff}.asignar legend{font-weight:700;padding:0 6px}.radio{display:flex;gap:16px;margin-bottom:10px}.radio label{font-weight:500;display:flex;align-items:center;gap:6px;margin:0}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip-x{background:var(--crema);border-radius:999px;padding:6px 10px}.toolbar .chip{background:color-mix(in srgb,var(--acento) 16%,white);color:var(--magenta-oscuro)}.actions{display:flex;justify-content:flex-end;gap:12px}.toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.persona-card header{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.persona-card h2{margin:0;font-size:1.15rem}.empty{text-align:center;padding:24px 0 40px}.ilustra{width:min(280px,100%);margin:0 auto 8px;display:block}.preview{max-width:100%;border-radius:16px;margin:8px 0 16px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 700px){.grid-2{grid-template-columns:1fr}}.check{display:flex;align-items:center;gap:8px;font-weight:600}.check input{width:auto;margin:0}.editor fieldset{border:1px solid var(--linea);border-radius:16px;padding:16px;margin-bottom:16px;background:#fff}.editor legend{font-weight:800;padding:0 8px;display:inline-flex;align-items:center;gap:8px}.editor textarea{width:100%;border:1px solid var(--linea);border-radius:12px;padding:10px 12px;margin-bottom:12px;font-family:inherit}.bloque{border:1px dashed var(--linea);border-radius:14px;padding:12px;margin:12px 0;background:#fffbf8}.bloque header{display:flex;justify-content:space-between;align-items:center}.crear-curso{margin-bottom:24px}.userbox .btn{display:inline-flex;align-items:center;gap:6px}.audio-player{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--linea);border-radius:999px;padding:8px 14px;margin:12px 0 18px}.btn-audio{width:36px;height:36px;border:0;border-radius:50%;background:var(--acento);color:#fff;display:grid;place-items:center;cursor:pointer}.audio-track{flex:1;height:8px;background:var(--linea);border-radius:99px;overflow:hidden}.audio-track>span{display:block;height:100%;background:var(--acento)}.kpi-vacio{min-height:180px;display:grid;place-items:center;border:2px dashed var(--linea);border-radius:20px;color:var(--muted);background:#fff}.reactivo{margin-bottom:18px;box-shadow:var(--sombra)}.opcion{display:block;padding:10px 12px;border:1px solid var(--linea);border-radius:12px;margin:8px 0;cursor:pointer}.opcion input{width:auto;margin:0 8px 0 0}.fuente{font-size:.9rem;margin:8px 0 16px}.fuente a{color:var(--magenta-oscuro);font-weight:700}.kicker{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--magenta);margin:0 0 6px}.lead{font-size:1.05rem;line-height:1.55}.cuerpo-md p{margin:0 0 12px}.cuerpo-md ul,.cuerpo-md ol{margin:0 0 12px;padding-left:1.2em}.cuerpo-md code{background:var(--crema);padding:1px 6px;border-radius:6px}.player-page{max-width:760px}.player-top{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.progress-wrap{margin:4px 0 8px}.dots{display:flex;gap:8px;list-style:none;padding:0;margin:0 0 16px;flex-wrap:wrap}.dots button{width:12px;height:12px;border-radius:50%;border:0;background:var(--linea);padding:0;cursor:pointer}.dots .now{background:var(--magenta);transform:scale(1.25)}.dots .done{background:var(--teal)}.dots .locked{opacity:.35;cursor:not-allowed}.pantalla h1{margin:0 0 8px;color:var(--magenta-oscuro);font-size:1.55rem}.banner-previa.compacto{padding:6px 16px;font-size:.82rem;font-weight:600;flex:0 0 auto}.banner-toggle{font-weight:600;margin:0}.previa-alumno{--acento: var(--magenta)}.curso-alumno .leccion-cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.locked-card{opacity:.72}.steps{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.steps button{border:2px solid var(--linea);background:#fff;border-radius:999px;padding:8px 12px;font-weight:800;cursor:pointer;color:var(--magenta-oscuro)}.steps button[aria-pressed=true]{background:var(--magenta);border-color:var(--magenta);color:#fff}.tip{background:var(--crema);border-radius:14px;padding:12px 14px;margin:8px 0 12px}.hint{color:var(--muted);font-size:.9rem}.flip-grid{perspective:800px}.flip{min-height:140px;padding:0;border:0;background:transparent}.flip .face{width:100%;min-height:140px;border:0;border-radius:18px;background:#fff;box-shadow:var(--sombra);cursor:pointer;padding:16px;text-align:left;position:relative}.flip .front,.flip .back{display:block}.flip .back{display:none;color:var(--magenta-oscuro);font-weight:600}.flip .is-back{background:var(--crema)}.flip .is-back .front{display:none}.flip .is-back .back{display:block}.flip .hint{display:block;margin-top:8px;font-weight:600;color:var(--muted);font-size:.85rem}.shot.scroll,.hotspot-wrap{position:relative;border-radius:16px;overflow:hidden;margin:12px 0;background:#1a1216}.shot.scroll img,.hotspot-wrap img{width:100%;display:block}.zoom-btn{position:absolute;right:10px;bottom:10px;border:0;border-radius:999px;background:var(--magenta);color:#fff;font-weight:800;padding:8px 14px;cursor:pointer}.zoom-btn.on{background:var(--teal)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e1018d1;display:grid;place-items:center;z-index:40;padding:24px}.lightbox .box{max-width:min(1100px,100%);max-height:90vh;overflow:auto;background:#111;border-radius:16px;padding:12px;position:relative}.lightbox img{max-width:100%;display:block;transform-origin:center top}.lightbox .close{position:absolute;top:8px;right:10px;background:#fff;border:0;border-radius:50%;width:32px;height:32px;font-size:1.2rem;cursor:pointer}.zoom-tools{display:flex;gap:8px;margin-top:8px}.zoom-tools button{border:0;border-radius:999px;padding:8px 12px;font-weight:700;cursor:pointer}.doc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:12px 0}.doc{border:2px solid var(--linea);background:#fff;border-radius:14px;padding:12px;text-align:left;font-weight:700;cursor:pointer}.doc.sel{border-color:var(--magenta);background:color-mix(in srgb,var(--magenta) 10%,white)}.doc.ok{border-color:var(--teal);background:#e6f7f3}.doc.bad{border-color:#c45;background:#fde8ef}.choices{display:grid;gap:10px;margin:12px 0}.choice{border:2px solid var(--linea);background:#fff;border-radius:14px;padding:12px 14px;text-align:left;font-weight:700;cursor:pointer;box-shadow:var(--sombra)}.choice.ok{border-color:var(--teal);background:#e6f7f3}.choice.bad{border-color:#c45;background:#fde8ef}.feedback{border-radius:12px;padding:10px 12px;margin:10px 0;font-weight:600}.feedback.ok{background:#e6f7f3;color:#1d6e61}.feedback.bad{background:#fde8ef;color:#883d65}.thumbs{display:flex;gap:8px;overflow-x:auto;margin:8px 0}.thumbs button{border:2px solid var(--linea);background:#fff;border-radius:12px;padding:4px;min-width:92px;cursor:pointer}.thumbs button[aria-pressed=true]{border-color:var(--magenta)}.thumbs img{width:84px;height:56px;object-fit:cover;display:block;border-radius:8px}.thumbs span{display:block;font-size:.75rem;font-weight:700;margin-top:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.ordenar ol{padding-left:0;list-style:none}.ordenar-lista{display:grid;gap:8px;margin:12px 0;padding:0;list-style:none}.ordenar-fila{background:#fff;border:2px solid var(--linea);border-radius:14px;box-shadow:var(--sombra);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}.ordenar-fila.is-drag{opacity:.4;transform:scale(.98)}.ordenar-fila.is-over{border-color:var(--magenta);box-shadow:0 0 0 3px color-mix(in srgb,var(--magenta) 22%,transparent)}.ordenar-fila.is-ok{border-color:var(--teal);background:#e6f7f3}.ordenar-fila.is-bad{border-color:#c45;background:#fde8ef}.ordenar-row{display:grid;grid-template-columns:28px 1fr auto auto;align-items:center;min-height:56px;gap:4px;padding:0 6px 0 2px}.ordenar-grip{display:grid;place-items:center;height:56px;color:var(--muted);cursor:grab}.ordenar-grip:active{cursor:grabbing}.ordenar-cuerpo{display:flex;align-items:center;gap:8px;min-width:0;min-height:56px}.ordenar-idx{display:grid;place-items:center;width:22px;font-weight:800;font-size:.8rem;color:var(--magenta-oscuro);flex:0 0 auto}.ordenar-card{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;flex:1;text-align:left}.ordenar-ico{width:32px;height:32px;border-radius:10px;background:color-mix(in srgb,var(--magenta) 12%,white);color:var(--magenta-oscuro);display:grid;place-items:center;flex:0 0 auto}.ordenar-toggle{display:flex;flex-direction:column;align-items:flex-start;gap:0;min-width:0;flex:1;border:0;background:transparent;cursor:pointer;font:inherit;text-align:left;padding:8px 0}.ordenar-toggle strong{line-height:1.2}.ordenar-toggle .hint{font-size:.75rem;font-weight:700;color:var(--magenta)}.ordenar-detalle{flex:1 1 100%;margin:0 0 8px;background:var(--crema);border-radius:10px;padding:8px 12px;font-size:.92rem}.ordenar-btns{display:flex;flex-direction:column}.ordenar-arrow{width:28px;height:24px;border:0;background:transparent;color:var(--magenta-oscuro);display:grid;place-items:center;cursor:pointer;border-radius:8px}.ordenar-arrow:hover{background:color-mix(in srgb,var(--magenta) 12%,white)}.ordenar-arrow:disabled{opacity:.3;cursor:not-allowed}.ordenar-marca{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;color:#fff}.ordenar-marca.ok{background:var(--teal)}.ordenar-marca.bad{background:#c45}.ordenar-pista{margin:0 12px 10px 40px;font-size:.82rem;font-weight:700;color:#883d65}.practica .check{margin:8px 0;display:flex;gap:8px;align-items:flex-start}.practica-tarea{display:grid;gap:12px}.practica-campo{border:2px solid var(--linea);border-radius:16px;padding:12px;background:#fff;box-shadow:var(--sombra);display:grid;gap:8px}[data-testid=form-practica] .error{margin:8px 0 12px}.practica-campo legend{display:inline-flex;align-items:center;gap:8px;font-weight:800;padding:0 8px}.badge{font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 8px}.badge.req{background:color-mix(in srgb,var(--magenta) 16%,white);color:var(--magenta-oscuro)}.badge.opt{background:var(--crema);color:var(--muted)}.practica-tipos{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px;margin:0 0 10px}.tipo-card{display:grid;justify-items:center;gap:4px;border:2px solid var(--linea);background:#fff;border-radius:14px;padding:10px 6px;font-weight:800;font-size:.8rem;color:var(--magenta-oscuro);cursor:pointer;box-shadow:var(--sombra)}.tipo-card.sel{border-color:var(--magenta);background:color-mix(in srgb,var(--magenta) 10%,white)}.tipo-card.lleno{border-color:var(--teal)}.dropzone{display:grid;justify-items:center;gap:4px;text-align:center;border:2px dashed var(--linea);border-radius:16px;padding:18px 12px;background:var(--crema);cursor:pointer;color:var(--magenta-oscuro)}.dropzone.is-over{border-color:var(--magenta);background:color-mix(in srgb,var(--magenta) 10%,white)}.dropzone .hint{font-size:.8rem}.file-chip{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 10px;border-radius:12px;background:#fff;border:1px solid var(--linea);font-weight:700}.file-chip img,.file-chip video{width:64px;height:44px;object-fit:cover;border-radius:8px}.file-chip audio{max-width:180px}.chip-quitar{margin-left:auto;border:0;background:var(--crema);border-radius:50%;width:24px;height:24px;display:grid;place-items:center;cursor:pointer}.aviso-pii{background:#fff4d6;border-radius:12px;padding:10px 12px;font-weight:700;color:#6a4a12}.grabar{display:grid;gap:8px}.grabar-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.grabar-preview{width:100%;max-height:180px;border-radius:12px;background:#1a1216}.estudio-captura{display:grid;gap:10px;padding:12px;border-radius:16px;background:#fff;border:1px solid var(--linea);box-shadow:var(--sombra);margin-bottom:8px}.estudio-limites{margin:0;font-size:.8rem;font-weight:700;color:var(--muted)}.estudio-preview{width:100%;max-height:220px;border-radius:12px;background:#1a1216;object-fit:contain}.estudio-preview.is-cam{transform:scaleX(-1)}.estudio-acciones{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.estudio-acciones .btn{width:auto}.estudio-audio-vivo{display:flex;align-items:center;gap:10px;min-height:56px;padding:12px 14px;border-radius:12px;background:#1a1216;color:#fff;font-weight:800}.dropzone.is-fallback{padding:12px}.rec-vivo{display:inline-flex;align-items:center;gap:8px}.rec-dot{width:10px;height:10px;border-radius:50%;background:#fff;box-shadow:0 0 #fff;animation:recpulse 1.1s ease-out infinite}.rec-timer{font-weight:800;font-variant-numeric:tabular-nums;color:var(--magenta-oscuro)}@keyframes recpulse{0%{box-shadow:0 0 color-mix(in srgb,var(--magenta) 70%,white)}to{box-shadow:0 0 0 8px transparent}}.match-board{position:relative}.match-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.match-grid>div{display:flex;flex-direction:column;gap:8px}.match-grid .choice{width:100%;display:block;position:relative;z-index:1}.match-lines{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible}.match-lines path{fill:none;stroke:var(--texto);stroke-width:2.5;stroke-linecap:round;opacity:.7}.choice.linked{border-color:var(--texto);background:var(--crema)}.tipo-card .badge{margin-top:2px}@media (max-width: 720px){.match-grid{grid-template-columns:1fr;gap:12px}}.cats-pool,.chips{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.cats-bins{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.cat-bin{min-height:120px;border:2px dashed var(--linea);border-radius:16px;padding:10px;background:var(--crema);display:grid;gap:8px;align-content:start;transition:border-color .16s ease,box-shadow .16s ease}.cat-bin.is-over,.choice.is-over{border-color:var(--magenta);box-shadow:0 0 0 3px color-mix(in srgb,var(--magenta) 22%,transparent)}.chip-item{border:2px solid var(--linea);background:#fff;border-radius:999px;padding:8px 12px;font-weight:700;cursor:grab;box-shadow:var(--sombra);transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.chip-item.sel,.choice.sel{border-color:var(--magenta);background:color-mix(in srgb,var(--magenta) 12%,white)}.chip-item.in{border-color:var(--teal)}.chip-item.placed{border-color:var(--texto);background:var(--crema)}.chip-item.used{opacity:.45;cursor:default}.chip-item.is-drag,.choice.is-drag{opacity:.55;transform:scale(1.05);cursor:grabbing}.completar-frase{font-size:1.1rem;line-height:2}.blank{display:inline-flex;min-width:88px;justify-content:center;border:2px dashed var(--magenta);border-radius:10px;padding:2px 10px;margin:0 4px;background:#fff;font-weight:800;cursor:pointer}.blank.filled{border-style:solid;border-color:var(--teal)}.choice-id{display:inline-block;min-width:28px;margin-right:8px;color:var(--magenta-oscuro)}.entrega-card header{display:flex;justify-content:space-between;gap:8px;align-items:center}.editor-reactivo{display:grid;gap:8px}.caption{color:var(--muted);font-size:.9rem}.bloque-mini{border:1px dashed var(--linea);border-radius:12px;padding:10px;margin:10px 0;background:#fff}.grid-3{display:grid;grid-template-columns:80px 80px 1fr;gap:8px}@media (max-width: 700px){.grid-3{grid-template-columns:1fr}}.nav-row .btn{width:auto}@media (max-width: 640px){main.page{padding:16px}.pantalla h1{font-size:1.3rem}.banner-previa.compacto{font-size:.78rem;padding:6px 12px}.ordenar-row{grid-template-columns:24px 1fr auto}.ordenar-marca{display:none}.practica-tipos{grid-template-columns:1fr 1fr}.file-chip{flex-wrap:wrap}.estudio-preview{max-height:160px}.estudio-acciones .btn{width:auto}}.segmented{display:inline-flex;flex-wrap:wrap;gap:4px;background:var(--crema);border-radius:999px;padding:4px;margin:0 0 14px}.segmented button{border:0;background:transparent;border-radius:999px;padding:8px 14px;font-weight:700;color:var(--magenta-oscuro);cursor:pointer}.segmented button.is-on{background:#fff;color:var(--magenta-oscuro);box-shadow:var(--sombra)}.toggle-row{display:flex;align-items:flex-start;gap:12px;margin:8px 0 16px}.toggle{width:48px;height:28px;border:0;border-radius:999px;background:#dcc9d2;position:relative;flex-shrink:0;cursor:pointer;padding:0}.toggle.is-on{background:var(--teal)}.toggle-knob{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:left .15s ease}.toggle.is-on .toggle-knob{left:23px}.toggle-label{margin:0;font-weight:700}.toggle-hint{margin:2px 0 0}.search-field input[type=search]{background:#fff;border-radius:999px;padding-left:16px}.curso-card{overflow:hidden;padding:0}.curso-card>*:not(.curso-portada){padding-left:18px;padding-right:18px}.curso-card .acciones{padding:0 18px 18px}.curso-portada img{width:100%;height:140px;object-fit:cover;display:block}.curso-portada-vacia{height:140px;display:grid;place-items:center;background:linear-gradient(135deg,#f3d5e4,#c8efe6);color:var(--magenta-oscuro);font-weight:700}.editor-portada{max-width:360px;border-radius:16px;overflow:hidden;margin-bottom:12px}.dialog-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#3a2a3259;display:grid;place-items:start center;overflow:auto;padding:32px 16px;z-index:40}.dialog{width:min(640px,100%);background:var(--fondo);border-radius:24px;padding:20px;box-shadow:var(--sombra)}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.dialog-head h2{margin:0}.picker-list{max-height:220px;overflow:auto;display:grid;gap:6px;margin:0 0 12px}.picker-item{text-align:left;border:1px solid var(--linea);background:#fff;border-radius:12px;padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:2px}.picker-item.is-on{border-color:var(--teal);background:#eefaf7}.asignada-fila{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--linea)}.asignada-fila .btn{width:auto}.opcion-fila{display:flex;gap:8px;align-items:center;margin-bottom:8px}.opcion-fila input{margin-bottom:0}.pill{border:1px solid var(--linea);background:#fff;border-radius:999px;padding:8px 12px;font-weight:700;cursor:pointer;white-space:nowrap}.pill.is-on{background:var(--teal);color:#fff;border-color:var(--teal)}.kpi-campos{margin-top:8px}.kpi-argus{margin-top:18px;padding:16px;border:1px dashed var(--linea);border-radius:16px;background:#fff}.kpi-argus h3{margin:0 0 8px}.kpi-argus-captura,.kpi-argus-lectura img{display:block;max-width:min(100%,520px);border-radius:12px;margin:8px 0 12px;border:1px solid var(--linea)}.kpi-argus-lectura dt{font-weight:700;margin-top:10px}.kpi-argus-lectura dd{margin:4px 0 0}.kpi-desempeno-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:18px 0}.kpi-desempeno-grid div{background:#fff;border:1px solid var(--linea);border-radius:16px;padding:14px 16px}.kpi-desempeno-grid dt{color:var(--muted);font-size:.85rem}.kpi-desempeno-grid dd{margin:4px 0 0;font-size:1.15rem;font-weight:700}.kpi-desempeno-grafica figure{margin:0 0 12px}.kpi-desempeno-grafica img{width:100%;max-width:720px;border-radius:16px;border:1px solid var(--linea)}.kpi-indice-card{margin:16px 0 20px}.cola-fila{margin-bottom:12px}.cola-fila .chip{margin-left:8px}.revision-argus{margin-top:24px}.asignar-form fieldset{border:1px solid var(--linea);border-radius:16px;padding:16px;margin:0 0 18px;background:#fff}.asignar-form legend{font-weight:700;padding:0 6px}main.page.page-avance{max-width:1280px}.avance-filtros{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:16px 0}.avance-filtros label{margin:0}.avance-filtros select{margin-bottom:0}.resumen-avance{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:8px 0 20px}.resumen-avance button{border:1px solid var(--linea);background:#fff;border-radius:16px;padding:12px 10px;text-align:left;cursor:pointer;font-family:inherit;color:var(--texto)}.resumen-avance button strong{display:block;font-size:1.35rem;color:var(--magenta-oscuro)}.resumen-avance button span{font-size:.82rem;color:var(--muted);font-weight:700}.resumen-avance button.is-on{border-color:var(--acento);background:color-mix(in srgb,var(--acento) 14%,white)}.tabla-avance-wrap{overflow:auto;background:#fff;border-radius:var(--radio);box-shadow:var(--sombra)}.tabla-avance{width:100%;border-collapse:collapse;font-size:.92rem}.tabla-avance th,.tabla-avance td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--linea);vertical-align:top}.tabla-avance th{color:var(--muted);font-size:.8rem;letter-spacing:.02em}.tabla-avance .btn-ghost{width:auto;display:inline-flex;align-items:center;gap:6px;padding:6px 10px}.tabla-avance .chip{display:inline-flex;padding:4px 10px}.historial-lista{margin:0;padding-left:18px}.avance-scores{font-size:.85rem}.matriz-avance td{min-width:140px}.chip.estado-ok{background:#e6f7f3;color:#1d6e61}.chip.estado-aviso{background:#fff4d6;color:var(--magenta-oscuro)}.chip.estado-alerta{background:#fde8ef;color:var(--magenta-oscuro)}.chip.estado-neutro{background:var(--crema);color:var(--magenta-oscuro)}.cert-card{margin-top:12px;padding:16px;border-radius:20px;background:linear-gradient(180deg,#fff 0%,var(--crema) 100%);position:relative;overflow:hidden}.cert-card.estado-ok{box-shadow:inset 0 0 0 2px #3abaa4}.cert-card.estado-aviso{box-shadow:inset 0 0 0 2px #dd5a9b}.cert-card.estado-alerta{box-shadow:inset 0 0 0 2px #883d65}.cert-logo{height:36px;display:block;margin-bottom:8px}.cert-cierre{font-style:italic;margin-bottom:0}.slack-nota{display:flex;align-items:center;gap:8px;margin-top:16px}.examen-final-indice{margin-top:16px}.choice.linked,.match-left.linked,.match-right.linked{border-color:var(--texto);background:var(--crema)}.escenario-opcion{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:start}.escenario-opcion textarea{grid-column:1 / -1;margin-bottom:0}.galeria-editor-item{display:grid;gap:6px;margin:10px 0;padding:10px;border:1px solid var(--linea);border-radius:12px;background:#fff}main.page.editor-studio{max-width:none;padding:0;height:calc(100vh - 65px);display:flex;flex-direction:column;min-height:0}.editor-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 16px;background:#fff;border-bottom:1px solid var(--linea)}.editor-top .migas{margin:0;flex:1;font-weight:700;color:var(--magenta-oscuro)}.editor-top .migas a{color:var(--magenta-oscuro)}.chip.guardado{font-size:.85rem}.chip.guardado.ok{background:#e6f7f3;color:#1d6e61}.chip.guardado.pendiente{background:#fff4d6;color:var(--magenta-oscuro)}.chip.guardado.guardando{background:var(--crema);color:var(--magenta-oscuro)}.chip.guardado.error{background:#fde8ef;color:var(--magenta-oscuro)}.chip.is-on{background:color-mix(in srgb,var(--magenta) 18%,white);color:var(--magenta-oscuro)}.toggle-previa{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:.9rem;margin:0}.toggle-previa input{width:auto;margin:0}.editor-menu{display:none}.editor-banner{margin:0 16px}.editor-cuerpo{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:0;flex:1}.editor-arbol-wrap{overflow:auto;background:#fff;border-right:1px solid var(--linea)}.editor-arbol{padding:12px 10px 32px}.arbol-nodo{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:12px;margin-bottom:2px}.arbol-nodo.is-on{background:color-mix(in srgb,var(--magenta) 12%,white)}.arbol-nodo.hijo{padding-left:18px;font-size:.92rem}.arbol-nodo.nieto{padding-left:28px;font-size:.86rem}.arbol-hijos-etapa{padding-left:14px;margin:0 0 8px}.arbol-badge{flex-shrink:0;font-size:.65rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;background:#e6f7f3;color:var(--teal);border-radius:999px;padding:2px 7px}.arbol-etapa{border-left:3px solid transparent}.arbol-etapa-practica{border-left-color:var(--teal);background:#f3fbf9}.arbol-etapa-examen{border-left-color:var(--magenta-oscuro);background:#f8eef3}.arbol-etapa-practica.is-on{background:#e6f7f3}.arbol-etapa-examen.is-on{background:#f3e8ee}.panel-seccion{margin:18px 0;padding:14px 14px 8px;border:1px solid var(--linea);border-radius:16px;background:#fff}.panel-seccion h3{margin:0 0 8px;font-size:1rem}.arbol-label{flex:1;text-align:left;background:none;border:0;padding:4px 0;cursor:pointer;font-weight:700;color:var(--texto)}.arbol-sub{display:block;font-weight:600;font-size:.78rem;color:var(--muted)}.arbol-chevron,.arbol-grip{background:none;border:0;color:var(--muted);padding:0;cursor:pointer}.arbol-grip{cursor:grab}.arbol-ok{color:var(--teal);flex-shrink:0}.arbol-falta{flex-shrink:0;width:18px;height:18px;border-radius:50%;background:#fde8ef;color:var(--magenta-oscuro);font-weight:800;font-size:.75rem;display:grid;place-items:center}.arbol-hijos{padding-left:8px;margin-bottom:8px}.arbol-add{display:inline-flex;align-items:center;gap:6px;background:none;border:0;color:var(--magenta-oscuro);font-weight:700;cursor:pointer;padding:6px 10px;margin:4px 0}.arbol-add.mayor{font-size:1rem}.arbol-acciones{display:flex;gap:4px;padding-left:18px}.editor-main{overflow:auto;padding:16px 20px 48px;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);gap:20px;align-items:start;background:var(--fondo)}.editor-main.sin-previa{grid-template-columns:1fr}.editor-titulo{margin:0 0 12px;color:var(--magenta-oscuro);font-size:1.45rem}.editor-panel{background:#fff;border-radius:20px;padding:20px;box-shadow:var(--sombra)}.editor-panel h2{margin-top:0;color:var(--magenta-oscuro)}.editor-panel h3{margin:20px 0 8px;font-size:1.05rem}.editor-panel textarea{width:100%;box-sizing:border-box;min-height:96px;border:1px solid var(--linea);border-radius:12px;padding:10px 12px;margin-bottom:12px;font-family:inherit;resize:vertical}.panel-cabecera{display:flex;justify-content:space-between;gap:12px;align-items:center}.galeria-bloques{margin:12px 0}.galeria-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.galeria-card{display:grid;gap:4px;text-align:left;padding:14px 12px;border:1px solid var(--linea);border-radius:16px;background:#fff;cursor:pointer;box-shadow:var(--sombra);color:var(--texto)}.galeria-card:hover{border-color:var(--magenta)}.galeria-card strong{font-size:.95rem}.galeria-card span{font-size:.8rem;color:var(--muted);font-weight:600}.empty-nodo{border:1px dashed var(--linea);border-radius:16px;padding:16px;background:var(--crema);margin:8px 0 16px}.lista-nodos{list-style:none;padding:0;display:grid;gap:8px}.tabs-reactivos{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.checklist-revision{list-style:none;padding:0;display:grid;gap:8px}.checklist-revision li{border-radius:12px;padding:10px 12px;font-weight:700}.checklist-revision li.ok{background:#e6f7f3;color:#1d6e61}.checklist-revision li.falta{background:#fde8ef;color:var(--magenta-oscuro)}.checklist-revision li.aviso{background:#fff4d6;color:#7a5b12}.tabla-resumen{width:100%;border-collapse:collapse}.tabla-resumen th,.tabla-resumen td{text-align:left;padding:8px;border-bottom:1px solid var(--linea)}.editor-previa{background:#fff;border-radius:20px;box-shadow:var(--sombra);overflow:hidden;position:sticky;top:8px}.editor-previa header{padding:12px 16px;border-bottom:1px solid var(--linea);display:flex;flex-direction:column;gap:2px}.editor-previa-cuerpo{padding:8px 16px 20px;max-height:calc(100vh - 180px);overflow:auto}.editor-previa-cuerpo h1{font-size:1.2rem}.medios-pantalla{display:grid;gap:16px;margin:12px 0}.medios-bloque{border:1px dashed var(--linea);border-radius:16px;padding:12px;background:var(--crema)}.galeria-details{margin:12px 0}@media (max-width: 1100px){.editor-main{grid-template-columns:1fr}.editor-previa{position:static}}@media (max-width: 860px){.editor-menu{display:inline-flex}.editor-cuerpo{grid-template-columns:1fr}.editor-arbol-wrap{display:none}.editor-arbol-wrap.is-open{display:block;position:absolute;z-index:20;top:120px;left:0;bottom:0;width:min(320px,90vw);box-shadow:var(--sombra)}}.curso-stepper{display:flex;gap:6px;list-style:none;padding:0;margin:0 0 12px;flex-wrap:wrap;align-items:center}.curso-stepper li{font-size:.78rem;font-weight:800;padding:4px 10px;border-radius:999px;background:var(--crema);color:var(--muted)}.curso-stepper a{color:inherit;text-decoration:none}.curso-stepper li.is-on{background:color-mix(in srgb,var(--magenta) 18%,white);color:var(--magenta-oscuro)}.curso-stepper li.done{background:#e6f7f3;color:#1d6e61}.curso-stepper li.is-jump{background:#fff;color:var(--texto);border:1px solid var(--linea);cursor:pointer}.curso-stepper li.is-lock{opacity:.55}.player-page.navegacion-libre .fase-chip{cursor:pointer}.player-page.navegacion-libre .fase-chip:not(.is-on){background:#fff;opacity:1}.player-fase-bar{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 10px}.fase-chip{display:inline-flex;align-items:center;gap:6px;border:2px solid var(--linea);background:#fff;border-radius:999px;padding:8px 12px;font-weight:800;cursor:pointer;color:var(--texto)}.fase-chip:focus-visible{outline:3px solid var(--magenta);outline-offset:2px}.fase-chip.fase-contenido.is-on{border-color:var(--magenta);background:color-mix(in srgb,var(--magenta) 12%,white);color:var(--magenta-oscuro)}.fase-chip.fase-practica.is-on{border-color:var(--teal);background:#e6f7f3;color:#1d6e61}.fase-chip.fase-examen.is-on{border-color:var(--magenta-oscuro);background:#f3e8ee;color:var(--magenta-oscuro)}.fase-chip.is-lock{opacity:.55;cursor:not-allowed}.fase-chip.is-hecho{border-style:solid}.fase-estado{font-size:.7rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.etapa-indice{font-weight:700;color:#1d6e61;margin:0 0 8px}.wrap-acciones{flex-wrap:wrap;gap:8px}.player-fase-ahora{display:flex;align-items:center;gap:8px;margin:0 0 4px;font-size:.95rem}.player-page.fase-practica{--acento: var(--teal)}.player-page.fase-examen{--acento: var(--magenta-oscuro)}.marco-practica,.marco-examen{border:2px solid var(--linea)}.marco-practica{border-color:var(--teal);background:linear-gradient(180deg,#f3fbf9,#fff 48px)}.marco-examen{border-color:var(--magenta-oscuro);background:linear-gradient(180deg,#f8eef3,#fff 48px)}.badge-fase{display:inline-flex;font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:4px 10px;margin:0 0 10px}.badge-practica{background:#e6f7f3;color:#1d6e61}.badge-examen{background:#f3e8ee;color:var(--magenta-oscuro)}.transicion{background:#fff;border-radius:24px;padding:28px 24px;box-shadow:var(--sombra);border:2px solid var(--linea)}.transicion h1{margin:0 0 8px;color:var(--magenta-oscuro);font-size:1.7rem}.transicion-contenido{border-color:var(--magenta)}.transicion-practica{border-color:var(--teal);background:linear-gradient(180deg,#eefaf7,#fff 72px)}.transicion-examen{border-color:var(--magenta-oscuro);background:linear-gradient(180deg,#f8eef3,#fff 72px)}.transicion-cierre{border-color:var(--teal);background:linear-gradient(180deg,#fff6fb,#eefaf7 90px,#fff 160px)}.transicion-datos{list-style:none;padding:0;margin:16px 0 8px;display:grid;gap:8px}.transicion-datos li{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--crema);border-radius:12px;font-size:.95rem}.transicion-datos strong{text-align:right}.transicion-acciones .btn-primary{width:auto;min-width:180px}.kpi-cierre{background:var(--crema);border-radius:12px;padding:12px;font-weight:600}@media (max-width: 640px){.player-top{flex-direction:column;align-items:flex-start}.fase-chip{flex:1 1 auto;justify-content:center}.transicion{padding:20px 16px}.transicion h1{font-size:1.35rem}.transicion-datos li{flex-direction:column}.transicion-acciones{flex-direction:column-reverse;align-items:stretch}.transicion-acciones .btn{width:100%}}
