.cm-loader.cm-creation-loader,
.lr-loader.cm-creation-loader{
	position:fixed;
	inset:0;
	z-index:2147483000;
	display:grid;
	place-items:center;
	padding:calc(24px + env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));
	background:radial-gradient(circle at 50% 25%,#174276 0%,#0b1d35 42%,#06101f 100%);
	backdrop-filter:none;
	color:#f8fbff;
	text-align:center;
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	overflow-y:auto;
	/* The page behind must never show through while creation starts. */
	transition:none;
}
body.loading .cm-loader.cm-creation-loader,
body.cm-processing .cm-loader.cm-creation-loader,
.cm-loader.cm-creation-loader.show,
body.lr-is-loading .lr-loader.cm-creation-loader{
	display:grid;
	opacity:1;
	visibility:visible;
	pointer-events:auto;
}
.cm-creation-loader[data-kind="flashcard"]{--cm-loader-accent:#5eead4}
.cm-creation-loader[data-kind="examen"]{--cm-loader-accent:#a5b4fc}
.cm-creation-loader[data-kind="cuadro"]{--cm-loader-accent:#67e8f9}
.cm-creation-loader[data-kind="mapa"]{--cm-loader-accent:#c4b5fd}
.cm-creation-loader[data-kind="live-resumen"]{--cm-loader-accent:#93c5fd}
.cm-creation-loader .cm-creation-loader__card{
	width:min(680px,100%);
	min-width:0;
	display:grid;
	justify-items:center;
	gap:1rem;
	padding:0;
	border:0;
	border-radius:0;
	background:transparent;
	box-shadow:none;
	color:#f8fbff;
}
.cm-creation-loader .cm-creation-loader__logo{
	display:block;
	width:min(250px,70vw);
	height:auto;
	object-fit:contain;
}
.cm-creation-loader .cm-creation-loader__eyebrow{
	color:var(--cm-loader-accent,#91baf3);
	font-size:.77rem;
	font-weight:850;
	letter-spacing:.13em;
}
.cm-creation-loader .cm-creation-loader__visual{
	position:relative;
	width:180px;
	height:180px;
	display:grid;
	place-items:center;
	margin:.3rem 0;
}
.cm-creation-loader__visual::before{
	content:"";
	position:absolute;
	inset:0;
	border:1px solid var(--cm-loader-accent,#91baf3);
	opacity:.35;
	border-radius:50%;
	box-shadow:0 0 0 18px rgba(125,211,252,.04),0 0 0 42px rgba(125,211,252,.025);
	animation:cmCreationPulse 2.5s ease-in-out infinite;
}
.cm-creation-loader .cm-creation-loader__art{display:none;position:relative;z-index:1}
.cm-creation-loader[data-stage="source"] .cm-creation-loader__source,
.cm-creation-loader[data-stage="images"] .cm-creation-loader__images,
.cm-creation-loader[data-stage="audio"] .cm-creation-loader__audio,
.cm-creation-loader[data-stage="plan"] .cm-creation-loader__plan,
.cm-creation-loader[data-stage="create"] .cm-creation-loader__create,
.cm-creation-loader[data-stage="save"] .cm-creation-loader__save{display:flex}
.cm-creation-loader__source{
	width:82px;height:106px;flex-direction:column;align-items:flex-start;gap:10px;
	padding:26px 15px;border:3px solid #90d7ff;border-radius:12px;
	background:linear-gradient(150deg,#225f9c,#123153);
	box-shadow:0 18px 44px rgba(0,0,0,.32);overflow:hidden;transform:rotate(-5deg);
}
.cm-creation-loader__source::after{
	content:"";position:absolute;left:0;right:0;top:-35px;height:35px;
	background:linear-gradient(transparent,rgba(103,232,249,.5),transparent);
	animation:cmCreationScan 2s linear infinite;
}
.cm-creation-loader__source i{display:block;width:100%;height:5px;border-radius:9px;background:#a7dfff}
.cm-creation-loader__source i:last-child{width:66%}
.cm-creation-loader__images{width:116px;height:100px;align-items:center;justify-content:center}
.cm-creation-loader__images i{
	position:absolute;width:88px;height:66px;border:2px solid #9bd8fa;border-radius:12px;
	background:linear-gradient(135deg,#144a88,#247bbd);box-shadow:0 12px 28px rgba(0,0,0,.3);
	animation:cmCreationImages 2.4s ease-in-out infinite;
}
.cm-creation-loader__images i:nth-child(2){animation-delay:.8s;background:linear-gradient(135deg,#4c1d95,#2563eb)}
.cm-creation-loader__images i:nth-child(3){animation-delay:1.6s;background:linear-gradient(135deg,#0e7490,#1d4ed8)}
.cm-creation-loader__audio{height:84px;align-items:center;gap:8px}
.cm-creation-loader__audio i{width:10px;height:26px;border-radius:20px;background:linear-gradient(#8be9fa,#a78bfa);animation:cmCreationWave 1s ease-in-out infinite}
.cm-creation-loader__audio i:nth-child(2),.cm-creation-loader__audio i:nth-child(6){animation-delay:.15s}
.cm-creation-loader__audio i:nth-child(3),.cm-creation-loader__audio i:nth-child(5){animation-delay:.3s}
.cm-creation-loader__audio i:nth-child(4){animation-delay:.45s}
.cm-creation-loader__plan{width:112px;height:86px;padding:17px;flex-direction:column;gap:12px;border:2px solid #a5b4fc;border-radius:12px;background:linear-gradient(135deg,#1e3a8a,#4c1d95);box-shadow:0 16px 35px rgba(0,0,0,.3)}
.cm-creation-loader__plan i{display:block;height:7px;width:100%;border-radius:9px;background:#c7d2fe;transform-origin:left;animation:cmCreationWrite 1.5s ease-in-out infinite}
.cm-creation-loader__plan i:nth-child(2){width:82%;animation-delay:.25s}
.cm-creation-loader__plan i:nth-child(3){width:66%;animation-delay:.5s}
.cm-creation-loader__create{width:116px;height:88px;align-items:center;justify-content:center;gap:6px}
.cm-creation-loader__create i{display:block;width:24px;height:58px;border:2px solid #a5b4fc;border-radius:8px;background:linear-gradient(160deg,#1d4ed8,#0e7490);box-shadow:0 12px 25px rgba(0,0,0,.25);animation:cmCreationBuild 1.5s ease-in-out infinite}
.cm-creation-loader__create i:nth-child(2){height:76px;animation-delay:.18s}
.cm-creation-loader__create i:nth-child(3){height:49px;animation-delay:.36s}
.cm-creation-loader__create i:nth-child(4){height:65px;animation-delay:.54s}
.cm-creation-loader[data-kind="flashcard"] .cm-creation-loader__create i{width:45px;height:68px;position:absolute;transform-origin:bottom center;animation:cmCreationCards 2.2s ease-in-out infinite}
.cm-creation-loader[data-kind="flashcard"] .cm-creation-loader__create i:nth-child(2){animation-delay:.55s}
.cm-creation-loader[data-kind="flashcard"] .cm-creation-loader__create i:nth-child(3){animation-delay:1.1s}
.cm-creation-loader[data-kind="flashcard"] .cm-creation-loader__create i:nth-child(4){display:none}
.cm-creation-loader[data-kind="examen"] .cm-creation-loader__create{flex-direction:column;gap:7px;width:126px;height:112px}
.cm-creation-loader[data-kind="examen"] .cm-creation-loader__create i{
	position:relative;width:100%;height:18px;border-radius:7px;
	background:linear-gradient(90deg,#1d4ed8,#17477a);animation:cmCreationChoice 1.7s ease-in-out infinite;
}
.cm-creation-loader[data-kind="examen"] .cm-creation-loader__create i::before{content:"";position:absolute;left:7px;top:3px;width:9px;height:9px;border:1px solid #dbeafe;border-radius:50%}
.cm-creation-loader[data-kind="examen"] .cm-creation-loader__create i:nth-child(2){animation-delay:.4s}
.cm-creation-loader[data-kind="examen"] .cm-creation-loader__create i:nth-child(3){animation-delay:.8s}
.cm-creation-loader[data-kind="examen"] .cm-creation-loader__create i:nth-child(4){animation-delay:1.2s}
.cm-creation-loader[data-kind="cuadro"] .cm-creation-loader__create{display:none;width:120px;height:92px;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:4px}
.cm-creation-loader[data-kind="cuadro"][data-stage="create"] .cm-creation-loader__create{display:grid}
.cm-creation-loader[data-kind="cuadro"] .cm-creation-loader__create i{width:auto;height:auto;border-radius:7px;animation:cmCreationCell 1.6s ease-in-out infinite}
.cm-creation-loader[data-kind="cuadro"] .cm-creation-loader__create i:nth-child(2){animation-delay:.25s}
.cm-creation-loader[data-kind="cuadro"] .cm-creation-loader__create i:nth-child(3){animation-delay:.5s}
.cm-creation-loader[data-kind="cuadro"] .cm-creation-loader__create i:nth-child(4){animation-delay:.75s}
.cm-creation-loader[data-kind="mapa"] .cm-creation-loader__create i{width:27px;height:27px;border-radius:50%;animation:cmCreationNodes 1.8s ease-in-out infinite}
.cm-creation-loader[data-kind="mapa"] .cm-creation-loader__create::before{content:"";position:absolute;width:100px;height:2px;background:#6bb6f2;transform:rotate(-20deg);opacity:.75}
.cm-creation-loader[data-kind="mapa"] .cm-creation-loader__create i:nth-child(2){animation-delay:.24s}
.cm-creation-loader[data-kind="mapa"] .cm-creation-loader__create i:nth-child(3){animation-delay:.48s}
.cm-creation-loader[data-kind="mapa"] .cm-creation-loader__create i:nth-child(4){animation-delay:.72s}
.cm-creation-loader[data-kind="live-resumen"] .cm-creation-loader__create i{
	position:absolute;width:82px;height:104px;border-radius:10px;
	background:linear-gradient(150deg,#f8fbff,#bad9fa);border-color:#93c5fd;
	transform-origin:left center;animation:cmCreationPages 2.2s ease-in-out infinite;
}
.cm-creation-loader[data-kind="live-resumen"] .cm-creation-loader__create i::before{
	content:"";position:absolute;left:14px;right:14px;top:25px;height:5px;border-radius:5px;
	background:#4c87cb;box-shadow:0 14px #85b9e7,0 28px #85b9e7,0 42px #bbd9f2;
}
.cm-creation-loader[data-kind="live-resumen"] .cm-creation-loader__create i:nth-child(2){animation-delay:.7s}
.cm-creation-loader[data-kind="live-resumen"] .cm-creation-loader__create i:nth-child(3){animation-delay:1.4s}
.cm-creation-loader[data-kind="live-resumen"] .cm-creation-loader__create i:nth-child(4){display:none}
.cm-creation-loader__save{width:110px;height:85px;flex-direction:column;gap:10px;justify-content:center;padding:20px;border:2px solid #5eead4;border-radius:14px;background:linear-gradient(135deg,#0f766e,#1d4ed8);box-shadow:0 14px 30px rgba(0,0,0,.3)}
.cm-creation-loader__save i{width:100%;height:7px;border-radius:8px;background:#99f6e4;animation:cmCreationBuild 1.4s ease-in-out infinite}
.cm-creation-loader__save i:nth-child(2){width:75%;animation-delay:.2s}
.cm-creation-loader__save i:nth-child(3){width:50%;animation-delay:.4s}
.cm-creation-loader .cm-creation-loader__title{
	max-width:580px;
	color:#fff;
	font-size:clamp(1.55rem,5vw,2.35rem);
	font-weight:900;
	line-height:1.15;
	letter-spacing:-.03em;
	text-align:center;
}
.cm-creation-loader .cm-creation-loader__note{
	display:block;
	max-width:460px;
	color:#c3d6ef;
	font-size:.98rem;
	line-height:1.5;
	text-align:center;
}
.cm-creation-loader .cm-creation-loader__progress{width:min(420px,85%);height:5px;margin-top:1rem;border-radius:999px;background:rgba(167,223,255,.15);overflow:hidden}
.cm-creation-loader__progress i{display:block;width:34%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4f9df5,var(--cm-loader-accent,#5eead4));animation:cmCreationProgress 2s ease-in-out infinite}
@keyframes cmCreationPulse{50%{transform:scale(1.06);opacity:.55}}
@keyframes cmCreationScan{to{top:110%}}
@keyframes cmCreationImages{50%{transform:translateY(-14px) rotate(5deg)}}
@keyframes cmCreationWave{50%{height:72px}}
@keyframes cmCreationWrite{50%{transform:scaleX(.55);opacity:.65}}
@keyframes cmCreationBuild{50%{transform:translateY(-10px);filter:brightness(1.35)}}
@keyframes cmCreationCards{50%{transform:translateX(19px) rotate(12deg)}}
@keyframes cmCreationChoice{50%{background:linear-gradient(90deg,#0d9488,#2563eb);transform:translateX(7px)}}
@keyframes cmCreationCell{50%{background:linear-gradient(135deg,#0d9488,#2563eb);transform:scale(.92)}}
@keyframes cmCreationNodes{50%{transform:translateY(-15px) scale(1.12)}}
@keyframes cmCreationPages{50%{transform:translateX(22px) rotateY(-25deg)}}
@keyframes cmCreationProgress{0%{transform:translateX(-100%)}100%{transform:translateX(350%)}}
@media(prefers-reduced-motion:reduce){
	.cm-creation-loader__visual::before,.cm-creation-loader__source::after,
	.cm-creation-loader__images i,.cm-creation-loader__audio i,
	.cm-creation-loader__plan i,.cm-creation-loader__create i,.cm-creation-loader__save i,
	.cm-creation-loader__progress i{animation:none}
}
