:root{color-scheme:dark;--fondo:#0e0e10;--fondo-alt:#131316;--superficie:#17171a;--texto:#ededed;--texto-suave:#9a9aa0;--texto-tenue:#808086;--linea:#2a2a2e;--linea-campo:#6a6a70;--acento:#c6f432;--acento-hover:#b3e01f;--acento-suave:#1f2610;--sobre-acento:#0e0e10;--rojo:#f87171;--rojo-hover:#ef4444;--radio:14px;--ancho:1240px;--alto-barra:68px;--titulos:"Geist",Arial,system-ui,-apple-system,"Segoe UI",sans-serif;--sans:"Geist",Arial,system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"Geist Mono",Consolas,ui-monospace,monospace}*,::after,::before{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--alto-barra) + 16px)}body{margin:0;font-family:var(--sans);font-size:1rem;line-height:1.6;color:var(--texto);background:var(--fondo);-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto}h1,h2,h3,h4{margin:0;font-weight:600;line-height:1.15;letter-spacing:-.01em}p{margin:0}a{color:inherit}code{font-family:var(--mono);font-size:.88em;background:var(--acento-suave);color:var(--acento);padding:2px 6px;border-radius:6px;overflow-wrap:break-word}.envoltura{width:100%;max-width:var(--ancho);margin:0 auto;padding:0 24px}.boton{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border:1px solid var(--acento);border-radius:999px;background:var(--acento);color:var(--sobre-acento);font:inherit;font-size:.9375rem;font-weight:500;text-decoration:none;cursor:pointer;transition:background-color .2s,border-color .2s,color .2s,transform .2s}.boton>[aria-hidden=true]:first-child{margin-inline-end:-4px}.boton:hover{background:var(--acento-hover);border-color:var(--acento-hover);transform:translateY(-1px)}.boton:active{transform:translateY(0)}.boton:disabled{background:var(--fondo-alt);border-color:var(--linea);color:var(--texto-suave);cursor:default;transform:none}.boton--borde{background:0 0;color:var(--texto);border-color:var(--linea)}.boton--borde:hover{background:var(--superficie);border-color:var(--texto-suave)}.boton--rojo{background:var(--rojo);border-color:var(--rojo)}.boton--rojo:hover{background:var(--rojo-hover);border-color:var(--rojo-hover)}.boton--claro{background:var(--acento);border-color:var(--acento);color:var(--sobre-acento)}.boton--claro:hover{background:var(--acento-hover);border-color:var(--acento-hover)}.boton--pequeno{padding:8px 16px;font-size:.875rem}.oculto{display:none}.solo-lector{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.saltar{position:absolute;top:8px;left:8px;z-index:30;padding:10px 16px;border-radius:999px;background:var(--acento);color:var(--sobre-acento);font-weight:500;text-decoration:none;transform:translateY(-200%)}.saltar:focus{transform:none}.boton-tab:focus-visible,.boton:focus-visible,.cuadro:focus-visible,.tarjeta__abrir:focus-visible,.visor:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--acento);outline-offset:3px}@supports selector(:has(*)){.tarjeta__abrir:focus-visible{outline:0}.tarjeta-hover:has(.tarjeta__abrir:focus-visible){outline:2px solid var(--acento);outline-offset:3px}}.barra{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--fondo) 85%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--linea)}.barra__interior{display:flex;align-items:center;justify-content:space-between;gap:16px;height:var(--alto-barra)}.logo{font-family:var(--titulos);font-weight:700;font-size:1.375rem;letter-spacing:-.04em;text-decoration:none;white-space:nowrap;color:var(--texto)}.logo__punto{color:var(--acento)}.logo__sub{font-family:var(--sans);font-size:.8125rem;color:var(--texto-suave)}.barra__enlaces{display:flex;align-items:center;gap:24px;font-size:.9375rem}.barra__enlaces a{color:var(--texto-suave);text-decoration:none;transition:color .2s}.barra__enlaces a:hover{color:var(--texto)}.portada{padding:110px 0 100px}.etiqueta{display:inline-flex;align-items:center;gap:10px;padding:6px 14px;border:1px solid var(--linea);border-radius:999px;background:var(--superficie);font-size:.8125rem;color:var(--texto-suave);margin-bottom:28px}.etiqueta__punto{width:8px;height:8px;border-radius:50%;background:var(--acento)}.portada__titulo{font-family:var(--titulos);font-weight:600;font-size:clamp(2.5rem, 6.2vw, 4.75rem);line-height:1.02;letter-spacing:-.045em;max-width:15ch;color:var(--texto)}.portada__titulo em{font-style:normal;color:var(--acento)}.portada__texto{margin-top:24px;max-width:56ch;font-size:1.125rem;color:var(--texto-suave)}.portada__acciones{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}.portada__principal{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px}.portada__mascota{height:400px;width:auto;margin-right:24px;filter:drop-shadow(0 0 1px color-mix(in srgb, var(--acento) 55%, transparent)) drop-shadow(0 18px 44px color-mix(in srgb, var(--acento) 16%, transparent));animation:aparecer .7s .15s ease both}.cifras{display:flex;flex-wrap:wrap;gap:40px;margin-top:64px;padding-top:28px;border-top:1px solid var(--linea)}.cifra__numero{display:block;font-family:var(--mono);font-size:2.25rem;font-weight:500;line-height:1;letter-spacing:-.04em;color:var(--acento)}.cifra__texto{font-size:.875rem;color:var(--texto-suave)}.seccion{padding:96px 0;border-top:1px solid var(--linea)}.seccion--alt{background:var(--fondo-alt)}.seccion__cabecera{margin-bottom:48px;max-width:60ch}.seccion__etiqueta{font-size:.8125rem;text-transform:uppercase;letter-spacing:.12em;color:var(--texto-suave);margin-bottom:12px}.seccion__titulo{font-family:var(--titulos);font-weight:600;font-size:clamp(1.875rem, 4vw, 2.75rem);line-height:1.1;letter-spacing:-.035em;color:var(--texto)}.seccion__texto{margin-top:14px;color:var(--texto-suave)}.ciclos{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.tarjeta-hover{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:170px;padding:28px;background:var(--superficie);border:1px solid var(--linea);border-radius:var(--radio);transition:transform .3s ease,box-shadow .3s ease,border-color .3s}.tarjeta-hover:hover{transform:translateY(-6px);border-color:var(--acento);box-shadow:0 16px 32px -14px rgba(0,0,0,.5)}.tarjeta-hover:has(:focus-visible){transform:translateY(-6px);border-color:var(--acento);box-shadow:0 16px 32px -14px rgba(0,0,0,.5)}.tarjeta__numero{margin-bottom:12px;font-family:var(--mono);font-size:2.5rem;font-weight:500;line-height:1;letter-spacing:-.04em;color:var(--acento)}.tarjeta__estado{position:absolute;top:28px;right:28px;padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:500;background:var(--acento-suave);color:var(--acento)}.titulot{margin-top:auto;font-size:1.375rem;color:var(--texto)}.parrafotarjeta{margin-top:6px;font-size:.875rem;color:var(--texto-suave)}.tarjeta__abrir{display:inline-flex;align-items:center;gap:12px;padding:0;border:0;background:0 0;font:inherit;color:inherit;text-align:left;cursor:pointer}.tarjeta__abrir[aria-expanded=false]::after{content:"";position:absolute;inset:0}.tarjeta__flecha{flex:none;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .25s ease;opacity:.6}.tarjeta__abrir[aria-expanded=true] .tarjeta__flecha{transform:translateY(2px) rotate(-135deg)}.tarjeta-hover:hover .tarjeta__flecha{opacity:1}.tarjeta-hover--activo{border-color:color-mix(in srgb,var(--acento) 40%,var(--linea))}.tarjeta-hover--activo:hover{transform:none;box-shadow:none;border-color:color-mix(in srgb,var(--acento) 40%,var(--linea))}.tarjeta-hover--activo:has(:focus-visible){transform:none;box-shadow:none;border-color:color-mix(in srgb,var(--acento) 40%,var(--linea))}@media (min-width:861px){.tarjeta-hover--activo{grid-column:span 2;grid-row:span 2}}@media (max-width:860px){.tarjeta-hover--activo{grid-column:1/-1}}@media (min-width:561px){.tarjeta-hover--activo{order:-1}}.tarjeta__cursos{display:grid;margin-top:18px;border-top:1px solid var(--linea)}.tarjeta__cursos[hidden]{display:none}.tarjeta__cursos .curso{justify-content:flex-start;min-height:48px;padding:12px 4px;font-size:1rem}.tarjeta__cursos .curso>span:first-child{flex:1}.curso__estado{display:block;font-size:.75rem;line-height:1.4;color:var(--texto-tenue)}.curso{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--linea);color:var(--texto);text-decoration:none;font-size:.9375rem}.curso:last-child{border-bottom:none}.curso::after{content:"→";transition:transform .2s}.curso:hover{color:var(--acento)}.curso:hover::after{transform:translateX(4px)}.tarjeta-hover--pronto{background:0 0;border-style:dashed}.tarjeta-hover--pronto:hover{transform:none;box-shadow:none;border-color:var(--linea)}.tarjeta-hover--pronto .tarjeta__numero{color:var(--texto-tenue)}.tarjeta-hover--pronto .tarjeta__estado,.tarjeta__estado--pronto{background:var(--fondo-alt);color:var(--texto-suave)}.tarjeta-hover--pronto .titulot{color:var(--texto-suave)}.tarjeta__mascota{position:absolute;top:calc(28px + 8px + 1.2rem + 6.8px);right:22px;height:80px;width:auto;filter:drop-shadow(0 0 1px color-mix(in srgb, var(--acento) 45%, transparent))}.tarjeta__mascota~.titulot{padding-right:70px}.tarjeta__mascota~.tarjeta__cursos{margin-top:24px}@media (scripting:none){.tarjeta__cursos[hidden]{display:grid}.tarjeta__abrir[aria-expanded=false]::after{content:none}.tarjeta__abrir{display:none}.tarjeta__titulo-sinjs[hidden]{display:inline}.tarjeta-hover--activo{grid-row:auto}}.laboratorio{display:grid;grid-template-columns:1fr 1.15fr;gap:56px;align-items:start}.laboratorio>*{min-width:0}.laboratorio .seccion__texto{margin-bottom:28px}.pasos{margin:0;padding:0;list-style:none;counter-reset:paso}.pasos li{position:relative;padding:16px 0 16px 48px;border-bottom:1px solid var(--linea);color:var(--texto-suave);counter-increment:paso}.pasos li:first-child{border-top:1px solid var(--linea)}.pasos li::before{content:"0" counter(paso);position:absolute;left:0;top:13px;font-family:var(--mono);font-size:1.25rem;color:var(--acento)}.demo{padding:32px;background:var(--superficie);border:1px solid var(--linea);border-radius:var(--radio);transition:background-color .3s}.demo__titulo{font-family:var(--titulos);font-weight:600;font-size:1.875rem;letter-spacing:-.035em;color:var(--texto)}.demo__titulo:focus{outline:0}.demo__texto{margin-top:12px;color:var(--texto-suave)}.demo__texto img{display:block;margin-top:16px;border:1px solid var(--linea);border-radius:10px}.demo__acciones{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.demo__codigo{margin-top:14px;background:#1e1e1e;border:1px solid var(--linea);border-radius:10px;overflow:hidden}.demo__archivo{display:block;padding:7px 14px;background:#252526;color:#ccc;font-size:.75rem}.demo__codigo pre{margin:0;padding:12px 14px;overflow-x:auto;color:#d4d4d4;font-family:Consolas,"Cascadia Code",ui-monospace,monospace;font-size:.78125rem;line-height:1.55}.pie{border-top:1px solid var(--linea);padding:28px 0;font-size:.875rem;color:var(--texto-suave)}.pie__interior{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px}#contenedor{max-width:960px;margin:0 auto;padding:64px 24px 96px}#titulop{font-family:var(--titulos);font-weight:600;font-size:clamp(2.25rem, 5.2vw, 3.5rem);line-height:1.05;letter-spacing:-.04em;color:var(--texto);overflow-wrap:break-word}.subtitulo{margin:10px 0 36px;font-size:1.125rem;font-weight:400;color:var(--texto-suave)}.cartel-marco{container-type:inline-size}.cartel{--cartel-luz:var(--acento);--cartel-luz-suave:var(--acento-suave);--cartel-brillo:14%;--cartel-plano:linear-gradient(var(--linea) 1px, transparent 1px),linear-gradient(90deg, var(--linea) 1px, transparent 1px);position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:48px;padding:44px 48px 36px;background:var(--fondo-alt);border:1px solid var(--linea);border-radius:var(--radio)}.cartel--pronto{margin-top:8px;border-style:dashed;border-color:var(--linea-campo)}.cartel--error{--cartel-luz:var(--rojo);--cartel-luz-suave:color-mix(in srgb, var(--rojo) 14%, var(--fondo-alt));--cartel-brillo:22%}.cartel__escena{position:relative}.cartel__escena::after,.cartel__escena::before{content:"";position:absolute;inset:-90px -110px;z-index:-1;pointer-events:none}.cartel__escena::before{background-image:var(--cartel-plano);background-size:24px 24px;background-position:center;-webkit-mask-image:radial-gradient(closest-side,#000 25%,transparent);mask-image:radial-gradient(closest-side,#000 25%,transparent)}.cartel__escena::after{inset:-40px -60px;background:radial-gradient(closest-side,color-mix(in srgb,var(--cartel-luz) 10%,transparent),transparent)}.cartel__mascota{display:block;height:220px;width:auto;filter:drop-shadow(0 0 1px color-mix(in srgb, var(--cartel-luz) 55%, transparent)) drop-shadow(0 14px 36px color-mix(in srgb, var(--cartel-luz) var(--cartel-brillo), transparent))}.cartel__estado{display:inline-flex;align-items:center;gap:8px;margin-bottom:16px;padding:4px 12px 4px 10px;border-radius:999px;font-size:.75rem;font-weight:500;background:var(--cartel-luz-suave);color:var(--cartel-luz)}.cartel__estado::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.cartel__titulo{font-family:var(--titulos);font-size:clamp(1.625rem, 3.4vw, 2.125rem);line-height:1.1;letter-spacing:-.035em;color:var(--texto);text-wrap:balance}.cartel__texto{margin-top:12px;max-width:46ch;color:var(--texto-suave);text-wrap:pretty}.cartel__texto strong{color:var(--texto);font-weight:500}.cartel .portada__acciones{margin-top:28px}.cartel__progreso{max-width:320px;height:6px;margin-top:16px;border-radius:999px;background:var(--linea);overflow:hidden}.cartel__progreso>span{display:block;height:100%;border-radius:inherit;background:var(--cartel-luz)}.cartel__pie{grid-column:1/-1;margin-top:40px;padding-top:28px;border-top:1px dashed var(--linea)}.cartel__pie .seccion__etiqueta{margin-bottom:18px;font-weight:500;line-height:1.6}.cartel__lista{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:24px;margin:0;padding:0;list-style:none}.cartel__lista a,.cartel__lista li{display:flex;align-items:flex-start;gap:12px}.cartel__lista a{text-decoration:none;border-radius:10px}.cartel__lista a:hover strong{color:var(--cartel-luz)}.cartel__icono{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--cartel-luz-suave);color:var(--cartel-luz);font-family:var(--mono);font-size:.875rem;font-weight:500}.cartel__icono svg{width:18px;height:18px}.cartel__lista strong{display:block;font-size:.9375rem;font-weight:500;line-height:1.35;color:var(--texto);transition:color .2s}.cartel__detalle{display:block;margin-top:2px;font-size:.875rem;line-height:1.45;color:var(--texto-suave)}.cartel__nota{margin-top:16px;font-size:.875rem;color:var(--texto-suave)}@container (max-width:700px){.cartel{column-gap:28px;padding:36px 32px 32px}.cartel__mascota{height:180px}}@container (max-width:520px){.cartel{grid-template-columns:1fr;row-gap:24px;padding:32px 22px 28px}.cartel__mascota{height:170px}.cartel__pie{margin-top:12px}}.tema__cierre:not(:empty){margin-top:40px}.no-encontrada{display:flex;flex-direction:column;justify-content:center;min-height:calc(100dvh - var(--alto-barra));max-width:960px;margin:0 auto;padding:48px 24px}.aula{display:grid;grid-template-columns:280px minmax(0,1fr);gap:48px;align-items:start;max-width:var(--ancho);margin:0 auto;padding:40px 24px 24px}.aula__indice{position:sticky;top:calc(var(--alto-barra) + 24px);max-height:calc(100dvh - var(--alto-barra) - 48px);overflow-y:auto;padding-right:6px;padding-left:4px;margin-left:-4px;scroll-padding-block:32px}.aula__indice a:focus-visible{outline-offset:-2px}.aula__nombre{font-family:var(--titulos);font-weight:600;font-size:1.3125rem;line-height:1.2;letter-spacing:-.02em;color:var(--texto);margin-bottom:16px}.aula__cabecera{display:flex;align-items:center;gap:12px;margin-bottom:16px}.aula__cabecera .seccion__etiqueta{margin-bottom:4px}.aula__cabecera .aula__nombre{margin-bottom:0}.aula__mascota{flex:none;height:84px;width:auto;filter:drop-shadow(0 0 1px color-mix(in srgb, var(--acento) 50%, transparent))}.aula__buscar{width:100%;padding:9px 14px;margin-bottom:20px;background:var(--superficie);border:1px solid var(--linea-campo);border-radius:10px;font-family:var(--sans);font-size:.875rem;color:var(--texto)}.aula__buscar::placeholder{color:var(--texto-suave)}.aula__buscar:focus{outline:0;border-color:var(--acento);box-shadow:0 0 0 3px color-mix(in srgb,var(--acento) 25%,transparent)}.aula__sinresultados{padding:10px;font-size:.8125rem;line-height:1.5;color:var(--texto-suave)}.aula__sinresultados strong{color:var(--texto)}.indice__modulo{margin-bottom:22px}.indice__lista{list-style:none;margin:0;padding:0}.indice__titulo{display:flex;align-items:center;gap:8px;margin:0 0 8px 10px;font-size:.75rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--texto-suave)}.indice__contador{margin-left:auto;font-size:.6875rem;letter-spacing:0}.indice__numero{flex:none;min-width:1rem;font-family:var(--mono);font-size:.75rem;color:var(--texto-tenue)}.indice__tema--activo .indice__numero{color:var(--acento)}a.indice__tema:hover .indice__numero{color:var(--texto-suave)}.indice__tema{display:flex;align-items:baseline;gap:8px;padding:7px 10px;border-left:2px solid transparent;border-radius:0;font-size:.875rem;line-height:1.35;color:var(--texto-suave);text-decoration:none;transition:background-color .15s,color .15s}a.indice__tema:hover{background:var(--fondo-alt);color:var(--texto)}.indice__tema--activo{background:var(--acento-suave);border-left-color:var(--acento);color:var(--acento)}.indice__tema--pronto{color:var(--texto-tenue);cursor:default}.indice__pronto{flex:none;margin-left:auto;padding-left:6px;font-family:var(--mono);font-size:.6875rem;color:var(--texto-tenue)}.indice__marca{flex:none;margin-left:auto;padding-left:6px;font-size:.75rem;color:var(--acento)}@media (forced-colors:active){a.indice__tema{forced-color-adjust:none;color:LinkText;background:Canvas;border-left-color:Canvas}a.indice__tema .indice__numero{color:CanvasText}a.indice__tema--activo{background:Highlight;color:HighlightText;border-left-color:Highlight}a.indice__tema--activo .indice__numero{color:HighlightText}a.indice__tema .indice__marca{color:inherit}a.indice__tema:focus-visible{outline-color:CanvasText}a.indice__tema--activo:focus-visible{outline-color:HighlightText}a.indice__tema:hover{background:Canvas;color:LinkText;text-decoration:underline}a.indice__tema--activo:hover{background:Highlight;color:HighlightText}.indice__tema--pronto{forced-color-adjust:none;color:GrayText;background:Canvas;border-left-color:Canvas}.indice__tema--pronto .indice__numero,.indice__tema--pronto .indice__pronto{color:inherit}}.aula__panel{min-width:0;padding-bottom:72px}.tema__titulo{font-family:var(--titulos);font-weight:600;font-size:clamp(1.75rem, 3.4vw, 2.5rem);line-height:1.1;letter-spacing:-.03em;color:var(--texto)}.tema__titulo:focus{outline:0}.aula__aviso{padding:48px 0;color:var(--texto-suave);line-height:1.7}.aula__aviso strong{overflow-wrap:anywhere}.con-cabeza{display:flex;align-items:center;gap:12px}.con-cabeza[hidden]{display:none}.con-cabeza>img{flex:none;height:40px;width:auto}.consola__pantalla .con-cabeza>img{height:32px}.tema__pie{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid var(--linea)}.boton--hecho{background:var(--acento-suave);color:var(--acento)}.boton--hecho:hover{background:var(--acento-suave)}.tema__navegacion{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}.tema__salto{padding:8px 14px;border:1px solid var(--linea);border-radius:999px;font-size:.8125rem;color:var(--texto-suave);text-decoration:none}.tema__salto:hover{border-color:var(--acento);color:var(--acento)}.tema__salto--siguiente{color:var(--acento)}.tema__reaccion{display:flex;align-items:center;gap:12px;font-size:.875rem;line-height:1.45;color:var(--texto-suave)}.tema__reaccion>*{animation:aparecer .35s ease both}.tema__reaccion img{flex:none;height:88px;width:auto;filter:drop-shadow(0 0 1px color-mix(in srgb, var(--acento) 50%, transparent))}.tema__reaccion strong{color:var(--texto);font-weight:500}.aula__menu{display:none;position:fixed;right:20px;bottom:20px;z-index:20;padding:12px 20px;background:var(--acento);border:0;border-radius:999px;font-family:var(--sans);font-size:.875rem;font-weight:500;color:var(--sobre-acento);cursor:pointer}
/* inicio: pestañas */
/* PESTAÑAS (tabs)
   Este trozo es el que se muestra en el visor "¿Cómo hice esto?": el JS lee
   este archivo y recorta justo lo que hay entre "inicio: pestañas" y
   "fin: pestañas". Si mueves estos dos comentarios, el visor cambia. */
.contenedor-pestanas { border: 1px solid var(--linea); border-radius: 12px; overflow: hidden; } /* overflow: hidden recorta los botones en las esquinas redondeadas */
.botones-pestanas { display: flex; flex-wrap: wrap; background: var(--fondo-alt); border-bottom: 1px solid var(--linea); } /* La fila de botones */
.boton-tab {
  flex: 1 1 auto;            /* crecer / encoger / tamaño base. Los tres botones se reparten el ancho por igual */
  padding: 12px 18px;
  background: transparent;   /* Sin relleno: el fondo lo pone el contenedor */
  border: none;              /* Quita el borde de fábrica del <button> */
  font: inherit;             /* Hereda la tipografía del body, que un <button> no toma solo */
  font-size: 14px;
  font-weight: 600;
  color: var(--texto);
  cursor: pointer;
  transition: background-color .2s;
}
.boton-tab:hover { background: var(--superficie); }
/* Botón ACTIVO (seleccionado). La clase "activo" la pone y la quita el JavaScript
   con classList: el CSS solo describe cómo se ve cada estado */
.boton-tab.activo { background: var(--acento); color: var(--sobre-acento); }

/* 1. Ocultar todos los contenidos por defecto (display: none los saca del todo) */
.contenido-tab { display: none; padding: 24px; background: var(--superficie); }
/* 2. Mostrar el contenido que tenga la clase 'activo'. Esta pareja de reglas
   ES el mecanismo de las pestañas: mostrar uno y esconder los demás */
.contenido-tab.activo { display: block; }
.contenido-tab h3 { font-size: 20px; color: var(--texto); margin-bottom: 10px; }
.contenido-tab p { margin-bottom: 18px; color: var(--texto-suave); }
.contenido-tab .boton { margin: 0 8px 8px 0; } /* Aire a la derecha y abajo, por si hay varios botones seguidos */

/* Botón de lenguaje seleccionado: un .boton--borde que además tenga .activo.
   Dos clases pegadas sin espacio = el MISMO elemento tiene las dos */
.boton--borde.activo { background: var(--acento); border-color: var(--acento); color: var(--sobre-acento); }

/* VENTANA DE CÓDIGO (colores del tema oscuro de Visual Studio Code).
   Aquí los colores van en hex y no en variables a propósito: no son la paleta
   del sitio, son los del editor que se está imitando */
.ventana-codigo {
  margin-top: 16px;
  background: #1e1e1e;                              /* El gris del editor */
  border: 1px solid var(--linea);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 16px 36px -18px rgba(0, 0, 0, .6);  /* rgba: rojo, verde, azul y opacidad (0.6 = 60%) */
}
.ventana-codigo__pestanas { display: flex; background: #252526; } /* La barra gris de arriba */
.ventana-codigo__archivo {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 16px;
  background: #1e1e1e;                /* Igual que el cuerpo: parece que la pestaña y el código son una pieza */
  border-top: 2px solid var(--acento);/* La rayita de arriba que marca la pestaña abierta, como en VS Code */
  color: #fff;
  font-size: 13px;
}
/* El iconito del lenguaje, dibujado con ::before. Aquí solo se define el tipo de
   letra; QUÉ dibuja lo deciden las tres reglas siguientes */
.ventana-codigo__archivo::before { font-family: ui-monospace, Consolas, monospace; font-size: 12px; font-weight: 700; }
/* [data-lenguaje="html"] selecciona por atributo. El JS escribe ese atributo al
   abrir el visor, y el icono cambia solo, sin tocar más CSS */
.ventana-codigo[data-lenguaje="html"] .ventana-codigo__archivo::before { content: "<>"; color: #e37933; }
.ventana-codigo[data-lenguaje="css"] .ventana-codigo__archivo::before { content: "#"; color: #519aba; }
.ventana-codigo[data-lenguaje="javascript"] .ventana-codigo__archivo::before { content: "JS"; color: #cbcb41; }
.ventana-codigo__ruta { padding: 4px 16px 6px; font-size: 12px; color: #a9a9a9; } /* La miga de pan "Proyecto › carpeta › archivo" */
/* Dos columnas en fila: los números a la izquierda y el código a la derecha.
   max-height + overflow: auto = la ventana nunca pasa de 460px y hace scroll por dentro */
.ventana-codigo__cuerpo { display: flex; max-height: 460px; overflow: auto; }
.ventana-codigo__cuerpo pre {
  margin: 0;
  padding: 8px 0 16px;
  font-family: Consolas, "Cascadia Code", ui-monospace, monospace;
  font-size: 13px;
  line-height: 1.6;
  tab-size: 2;   /* Un tabulador se dibuja del ancho de 2 espacios en vez de 8 */
}
.ventana-codigo__numeros {
  position: sticky;               /* Al hacer scroll horizontal, la columna de números se queda pegada... */
  left: 0;                        /* ...al borde izquierdo */
  min-width: 52px;
  padding-right: 16px !important; /* !important pisa el padding del pre de arriba. Es un martillazo: solo se usa cuando de verdad hace falta */
  text-align: right;              /* Los números alineados a la derecha, como en cualquier editor */
  color: #6e7681;
  background: #1e1e1e;            /* Fondo propio, para que el código no se vea por debajo al hacer scroll */
  user-select: none;              /* No se pueden seleccionar: así al copiar el código no se llevan los números */
}
.ventana-codigo__texto { flex: 1; padding-right: 24px !important; color: #d4d4d4; } /* flex: 1 = se queda con todo el ancho que sobra */
/* Dentro del visor, <code> tiene que perder el estilo lima de la regla general:
   aquí es código de verdad, con su propio coloreado */
.ventana-codigo__texto code { padding: 0; background: none; color: inherit; font: inherit; border-radius: 0; }
.ventana-codigo__estado {
  display: flex;
  justify-content: space-between; /* Lenguaje a un lado, contador de líneas al otro */
  gap: 12px;
  padding: 3px 12px;
  background: var(--acento);
  color: var(--sobre-acento);
  font-size: 12px;
}

/* Colores de cada parte del código. El JavaScript envuelve cada trocito en un
   <span> con una de estas clases; el CSS solo dice de qué color va cada una */
.c-comentario { color: #6a9955; } /* Verde: comentarios */
.c-signo { color: #868686; }      /* Gris: los < > y </ de las etiquetas HTML. Un pelo más claro que el #808080 de VS Code, que sobre el #1e1e1e del editor se quedaba en 4.22:1; este llega a 4.58:1 */
.c-etiqueta { color: #569cd6; }   /* Azul: nombres de etiqueta HTML */
.c-atributo { color: #9cdcfe; }   /* Celeste: atributos (class, id, href) */
.c-texto { color: #ce9178; }      /* Naranja: cadenas de texto entre comillas */
.c-selector { color: #d7ba7d; }   /* Dorado: selectores de CSS */
.c-numero { color: #b5cea8; }     /* Verde claro: números */
.c-palabra { color: #569cd6; }    /* Azul: palabras reservadas (const, function) */
.c-control { color: #c586c0; }    /* Morado: control de flujo (if, else, return) */
.c-funcion { color: #dcdcaa; }    /* Amarillo: nombres de función */
.c-objeto { color: #4fc1ff; }     /* Azul brillante: objetos del navegador (document, console) */
.c-regex { color: #d16969; }      /* Rojo: expresiones regulares */
/* fin: pestañas */
.tema{margin-bottom:20px}.tema__bloque{padding:20px 0;border-bottom:1px solid var(--linea)}.tema__bloque:first-child{padding-top:4px}.tema__bloque>h2,.tema__bloque>h3{font-size:1.1875rem;color:var(--texto);margin-bottom:8px}.tema__bloque .contenido-tab h3{font-size:1.25rem;margin-bottom:10px}.tema__bloque>.tema__subtitulo{font-size:1rem;margin-bottom:0}.tema__bloque p{color:var(--texto-suave)}.tema__bloque>p:not(.tema__formula){max-width:46ch}.tema__bloque strong{color:var(--texto);font-weight:600}.tema__formula{display:inline-flex;align-items:center;gap:10px;margin-top:14px;padding:10px 18px;background:var(--acento-suave);border-radius:10px;font-family:var(--mono);color:var(--acento)!important;flex-wrap:wrap;max-width:100%}.tema__formula span{padding:2px 10px;background:var(--superficie);border-radius:6px}.tema__comparacion{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.tema__comparacion>*{min-width:0}.tema__lista{display:flex;flex-wrap:wrap;gap:6px;align-content:flex-start;padding:14px;border-radius:10px}.tema__lista-titulo{width:100%;font-size:.8125rem;font-weight:600}.tema__lista--bien{background:var(--acento-suave)}.tema__lista--bien .tema__lista-titulo{color:var(--acento)}.tema__lista--mal{background:color-mix(in srgb,var(--rojo) 12%,transparent)}.tema__lista--mal .tema__lista-titulo{color:var(--rojo)}.tema__lista--mal code{background:var(--superficie);color:var(--rojo);text-decoration:line-through}.tema__lista--bien code{background:var(--superficie)}.tema__tarjetas{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.tema__tarjetas--dos{grid-template-columns:1fr 1fr}.tema__tarjeta{display:flex;flex-direction:column;gap:8px;padding:16px;background:var(--fondo);border:1px solid var(--linea);border-radius:10px}.tema__tarjeta h3,.tema__tarjeta h4{font-size:.9375rem;color:var(--texto)}.tema__tarjeta p{font-size:.875rem}.tema__tarjeta>code{align-self:flex-start;background:var(--superficie)}.tema__simbolos{display:flex;flex-wrap:wrap;gap:6px}.tema__simbolos code{min-width:2.125rem;text-align:center;font-size:.9375rem;font-weight:600;background:var(--superficie);border:1px solid var(--linea)}.tema__nota{margin-top:auto}.tema__bloque .tema__nota{font-size:.8125rem}.tema__pseudocodigo{margin:14px 0 0;padding:16px 20px;background:#1e1e1e;color:#d4d4d4;border:1px solid var(--linea);border-radius:10px;font-family:Consolas,"Cascadia Code",ui-monospace,monospace;font-size:.875rem;line-height:1.6;overflow-x:auto}.demo__codigo pre,.tema__pseudocodigo{background-image:linear-gradient(to right,#1e1e1e 30%,transparent),linear-gradient(to left,#1e1e1e 30%,transparent),linear-gradient(to right,color-mix(in srgb,var(--texto) 18%,transparent),transparent),linear-gradient(to left,color-mix(in srgb,var(--texto) 18%,transparent),transparent);background-position:left,right,left,right;background-size:32px 100%,32px 100%,14px 100%,14px 100%;background-repeat:no-repeat;background-attachment:local,local,scroll,scroll}.simbolos-dfd{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:.875rem;color:var(--texto)}.simbolos-dfd li{display:flex;align-items:center;gap:10px}.simbolos-dfd svg{width:40px;height:24px;flex-shrink:0}.simbolos-dfd svg *{fill:var(--superficie);stroke:var(--texto);stroke-width:1.5}.diagrama{width:100%;max-width:13.75rem;height:auto;margin:4px auto}.diagrama__forma{fill:var(--superficie);stroke:var(--texto);stroke-width:1.5}.diagrama__forma--activa{fill:var(--acento-suave);stroke:var(--acento)}.diagrama__linea{fill:none;stroke:var(--texto-suave);stroke-width:1.5}.diagrama marker path{fill:var(--texto-suave)}.diagrama text{font-family:var(--sans);font-size:11px;fill:var(--texto);text-anchor:middle}.diagrama .diagrama__etiqueta{font-size:11px;font-weight:600;fill:var(--acento)}.tema__tarjeta .tema__pseudocodigo{margin-top:auto;font-size:.8125rem;padding:12px 14px}.caso{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;padding:16px;background:var(--fondo);border:1px solid var(--linea);border-radius:12px}.caso__numero{display:inline-block;margin-bottom:6px;padding:2px 10px;background:var(--acento);color:var(--sobre-acento);border-radius:999px;font-size:.75rem;font-weight:600}.caso__info>p{font-size:.875rem}.caso__prueba{display:flex;flex-direction:column;gap:12px}.caso__entradas{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.caso__entradas label{display:flex;flex-direction:column;gap:4px;min-width:0;font-family:var(--mono);font-size:.8125rem;color:var(--texto)}.caso__entradas input,.caso__entradas select{width:5.625rem;max-width:100%;padding:7px 10px;font:inherit;color:var(--texto);background:var(--superficie);border:1px solid var(--linea-campo);border-radius:8px}.caso__entradas input:focus,.caso__entradas select:focus{outline:2px solid transparent;border-color:var(--acento);box-shadow:0 0 0 3px color-mix(in srgb,var(--acento) 25%,transparent)}.caso__entradas select{width:auto;height:calc(1.6em + 16px);cursor:pointer}.caso__entradas input[aria-invalid=true]{border-color:var(--rojo)}.caso__entradas input[aria-invalid=true]:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--rojo) 25%,transparent)}@media (forced-colors:active){.caso__entradas input[aria-invalid=true]{border:2px dashed;padding:6px 9px}}.caso__entradas .boton{margin:0}.consola{flex:1;display:flex;flex-direction:column;background:#fff;border:1px solid #c9c9c9;border-radius:8px;overflow:hidden}.consola__barra{padding:6px 12px;background:#f3f3f3;border-bottom:1px solid #e0e0e0;font-size:.75rem;color:#333}.consola__barra::before{content:"▶ ";content:"▶ "/"";color:#2e9e3e}.consola__pantalla{flex:1;margin:0;padding:12px;min-height:150px;font-family:Consolas,"Courier New",monospace;font-size:.875rem;line-height:1.55;color:#707070;white-space:pre-wrap;overflow-wrap:anywhere}.consola__sistema{color:#1f3fb5}.consola__entrada{color:#111}.consola__resultado{color:#1d7a2c}.consola--navegador .consola__barra::before{content:"● ";content:"● "/"";color:#65a30d}.consola--navegador .consola__resultado{color:#111}.consola--navegador .consola__pantalla{min-height:90px}.figura{flex:1;display:flex;flex-wrap:wrap;align-content:flex-start;gap:5px;min-height:120px;padding:14px;background:var(--superficie);border:1px solid var(--linea);border-radius:8px;overflow:auto}.figura__fila{display:flex;gap:5px;width:100%}.figura__circulo{width:20px;height:20px;flex:none;border-radius:50%;background:var(--acento)}.figura__cuadrado{width:20px;height:20px;flex:none;border-radius:3px;background:var(--acento)}.recta{position:relative;height:92px;margin-top:12px;background:var(--superficie);border:1px solid var(--linea);border-radius:8px}.recta__eje{position:absolute;left:10px;right:10px;top:50px;height:2px;background:var(--texto-suave)}.recta__eje::before{content:"";position:absolute;left:-1px;top:-3px;border:4px solid transparent;border-right-color:var(--texto-suave)}.recta__eje::after{content:"";position:absolute;right:-1px;top:-3px;border:4px solid transparent;border-left-color:var(--texto-suave)}.recta__marca{position:absolute;top:44px;width:1px;height:14px;background:var(--linea);transform:translateX(-50%)}.recta__cero{top:40px;height:22px;width:2px;background:var(--texto)}.recta__numero{position:absolute;top:64px;transform:translateX(-50%);font-family:var(--mono);font-size:.75rem;color:var(--texto-suave)}.recta__punto{position:absolute;top:45px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--acento)}.recta__etiqueta{position:absolute;top:16px;transform:translateX(-50%);white-space:nowrap;font-family:var(--mono);font-size:.75rem;font-weight:600;color:var(--acento)}.recta__tramo{position:absolute;top:48px;height:6px;background:var(--acento);opacity:.35}.recta__intervalo{position:absolute;top:47px;height:8px;border-radius:4px;background:var(--acento);opacity:.3}.recta__extremo{position:absolute;top:44px;width:14px;height:14px;margin-left:-7px;border-radius:50%;border:2px solid var(--acento);background:var(--superficie)}.recta__extremo--cerrado{background:var(--acento)}.plano{position:relative;width:100%;max-width:380px;aspect-ratio:1/1;margin:12px auto 0;background:var(--superficie);border:1px solid var(--linea);border-radius:8px}.plano__eje{position:absolute;background:var(--texto-suave)}.plano__eje--x{left:4%;right:4%;height:2px;margin-bottom:-1px}.plano__eje--y{top:4%;bottom:4%;width:2px;margin-left:-1px}.plano__nombre{position:absolute;font-family:var(--mono);font-size:.75rem;color:var(--texto-suave)}.plano__marca{position:absolute;background:var(--linea)}.plano__marca--x{width:1px;height:7px;margin:0 0 -3px -1px}.plano__marca--y{height:1px;width:7px;margin:0 0 -1px -3px}.plano__numero{position:absolute;font-family:var(--mono);font-size:.75rem;color:var(--texto-suave);white-space:nowrap}.plano__guia{position:absolute;opacity:.5}.plano__guia--h{border-top:1px dashed var(--acento)}.plano__guia--v{border-left:1px dashed var(--acento)}.plano__punto{position:absolute;width:11px;height:11px;margin:0 0 -5.5px -5.5px;border-radius:50%;background:var(--acento)}.plano__etiqueta{position:absolute;font-family:var(--mono);font-size:.75rem;font-weight:600;color:var(--acento);white-space:nowrap}.plano{container-type:inline-size}.plano__etiqueta{font-size:min(.75rem, 4.5cqi)}.plano__punto--b{background:var(--rojo)}.plano__etiqueta--b{color:var(--rojo)}.plano__guia--b{border-color:var(--rojo)}.plano__recta{position:absolute;height:2px;margin-bottom:-1px;border-radius:1px;background:var(--acento);transform-origin:0 50%}.plano__rotulo{position:absolute;font-family:var(--mono);font-size:.75rem;font-weight:600;color:var(--acento);white-space:nowrap}.plano__recta--b{background:var(--rojo)}.plano__rotulo--b{color:var(--rojo)}.plano__cuadrante{position:absolute;transform:translate(-50%,50%);font-family:var(--mono);font-size:.8125rem;color:var(--texto-tenue)}.arreglo{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.arreglo__celda{display:flex;flex-direction:column;align-items:center;gap:4px}.arreglo__valor{min-width:3.875rem;padding:8px 10px;background:var(--superficie);border:1px solid var(--linea);border-radius:8px;font-family:var(--mono);font-size:.8125rem;text-align:center;color:var(--texto)}.arreglo__indice{font-family:var(--mono);font-size:.75rem;color:var(--texto-suave)}.arreglo__celda--activa .arreglo__valor{background:var(--acento-suave);border-color:var(--acento);color:var(--acento)}.arreglo__celda--activa .arreglo__indice{color:var(--acento)}.galeria{flex:1;display:flex;flex-direction:column;gap:8px}.galeria__lamina{display:flex;align-items:center;justify-content:center;min-height:120px;background:var(--acento-suave);border:1px solid var(--acento);border-radius:8px;font-family:var(--mono);font-size:2.75rem;color:var(--acento)}.galeria__pie{font-family:var(--mono);font-size:.75rem;color:var(--texto-suave)}.cuadros{display:flex;flex-wrap:wrap;gap:8px}.cuadro{flex:1;min-width:56px;height:72px;border:1px solid var(--linea);border-radius:8px;cursor:pointer;transition:transform .15s;padding:0}.cuadro:hover{transform:translateY(-3px)}.cuadro--rojo{background:#d94040}.cuadro--amarillo{background:#d9c040}.cuadro--verde{background:#3f9e4d}.cuadro--azul{background:#3f6ad9}.cuadros__respuesta{font-family:var(--mono);font-size:.8125rem;color:var(--texto-suave)}.cuadros__respuesta strong{color:var(--acento)}.visor{display:flex;align-items:center;justify-content:center;min-height:130px;background:var(--fondo-alt);border:3px solid var(--linea);border-radius:8px;font-size:3.5rem;line-height:1;cursor:pointer;transition:border-width .15s,border-color .15s;width:100%;font-family:inherit;color:inherit}.caso__opciones{display:flex;flex-wrap:wrap;gap:6px 16px}.caso__opciones label{display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:.8125rem;color:var(--texto);cursor:pointer}.caso__opciones input{accent-color:var(--acento)}.caso__opciones--grupos{flex-direction:column;gap:10px}.grupo-opcion{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;padding:8px 12px;border:1px solid var(--linea);border-radius:8px}.grupo-opcion legend{padding:0 6px;background:var(--fondo);font-size:.75rem;color:var(--texto-suave)}.escena{display:flex;align-items:center;min-height:110px;padding:12px;background:var(--fondo-alt);border:1px solid var(--linea);border-radius:8px;transition:background .2s}.escena__movil{display:block;font-size:28px;line-height:1;transition:font-size .2s,margin .2s}.tema__tarjeta{min-width:0}.tema__tarjeta>.boton{align-self:flex-start;margin:0}.tema__tarjeta .tema__pseudocodigo[data-lenguaje]{margin-top:4px}.caso__info,.caso__prueba{min-width:0}.tabla-nse{width:100%;border-collapse:collapse;font-size:.8125rem;background:var(--superficie);border:1px solid var(--linea);border-radius:8px;overflow:hidden}.tabla-nse th{padding:6px 10px;background:var(--fondo-alt);color:var(--texto);font-weight:600;text-align:left}.tabla-nse td{padding:4px 10px;border-top:1px solid var(--linea);color:var(--texto-suave)}.tabla-nse td:last-child,.tabla-nse th:last-child{text-align:right}.tabla-nse tr.activo td{background:var(--acento-suave);color:var(--acento);font-weight:600}.caso__entradas label:has(.caso__campo--ancho){flex:1 1 100%}.caso__entradas input.caso__campo--ancho{width:100%}.mini-pagina{padding:14px 16px;background:var(--superficie);border:1px solid var(--linea);border-radius:8px}.mini-pagina h4{margin-bottom:6px;font-size:1rem;color:var(--texto)}.mini-pagina p{margin:0;color:var(--texto-suave)}@media (max-width:700px){.caso,.tema__comparacion,.tema__tarjetas,.tema__tarjetas--dos{grid-template-columns:1fr}}@media (max-width:560px){.caso__info>p,.tema__bloque .tema__nota,.tema__tarjeta p{font-size:.9375rem}.tema__pseudocodigo{padding:12px 14px}}@media (max-width:980px){.aula{grid-template-columns:1fr;gap:0;padding:32px 20px 24px}.aula__indice{display:none;position:fixed;inset:calc(var(--alto-barra) + 1px) 0 0;z-index:15;max-height:none;padding:24px 20px 96px;margin-left:0;background:var(--fondo);overscroll-behavior:contain;scroll-padding-bottom:84px}.aula__indice.abierto{display:block}body:has(.aula__indice.abierto){overflow:hidden}.aula__menu{display:block}.tema__navegacion{margin-left:0;width:100%}}@media (scripting:none){.aula__buscar,.aula__menu{display:none}}@keyframes aparecer{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@media (max-width:860px){.ciclos{grid-template-columns:repeat(2,1fr)}.laboratorio{grid-template-columns:1fr;gap:32px}.portada{padding:72px 0 64px}.portada__mascota{height:260px;margin-right:0}.seccion{padding:72px 0}}@media (max-width:560px){.envoltura{padding:0 16px}.tabla-nse{display:block;width:max-content;max-width:100%;overflow-x:auto}.ciclos{grid-template-columns:1fr}.barra__enlaces a{display:none}.logo{font-size:1.25rem}.portada__acciones .boton{width:100%}.portada__principal{grid-template-columns:1fr}.portada__mascota{display:none}.no-encontrada{padding:32px 16px}.cifras{gap:28px}.demo{padding:24px}#contenedor{padding:40px 16px 72px}}@media (max-height:500px){.barra{position:static}html{scroll-padding-top:16px}}@media (max-height:500px) and (min-width:981px){.aula__indice{top:24px;max-height:calc(100dvh - 48px)}}@media (max-height:500px) and (max-width:980px){.aula__indice{inset:0}.aula__mascota{display:none}}@media (pointer:coarse){.boton--pequeno{min-height:44px}.tema__salto{display:inline-flex;align-items:center;min-height:44px}.indice__tema{padding-top:11px;padding-bottom:11px}.aula__buscar,.caso__entradas input,.caso__entradas select{min-height:44px;font-size:max(1rem, 16px)}.caso__entradas input[type=text]:not(.caso__campo--ancho){width:7rem}.caso__opciones label{min-height:44px}.caso__opciones input{width:20px;height:20px}.aula__menu{min-height:48px}.logo{padding-block:6px}.barra__enlaces a{padding-block:10px}.tarjeta__abrir{padding-block:10px;margin-block:-10px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,::after,::before{transition:none!important;animation:none!important}::view-transition-group(*),::view-transition-new(*),::view-transition-old(*){animation:none!important}}::view-transition-group(*){animation-duration:.35s;animation-timing-function:ease;overflow:clip}::view-transition-new(*),::view-transition-old(*){width:100%;height:100%;object-fit:none;object-position:left top}@media print{:root{color-scheme:light;--fondo:#fff;--fondo-alt:#fff;--superficie:#fff;--texto:#111;--texto-suave:#333;--texto-tenue:#555;--linea:#ccc;--linea-campo:#888;--acento:#3b5a00;--acento-hover:#3b5a00;--acento-suave:#eef5d6;--sobre-acento:#fff;--rojo:#b91c1c;--rojo-hover:#b91c1c}html{print-color-adjust:exact;-webkit-print-color-adjust:exact}.aula__indice,.aula__menu,.barra,.boton,.saltar,.tema__cierre,.tema__pie{display:none!important}.aula{display:block;max-width:none;padding:0}.aula__panel{padding-bottom:0}.demo__archivo,.demo__codigo,.demo__codigo pre,.tema__pseudocodigo,.ventana-codigo,.ventana-codigo__archivo,.ventana-codigo__pestanas{background:var(--fondo);color:var(--texto)}.demo__codigo,.tema__pseudocodigo{border:1px solid var(--linea)}.demo__codigo pre,.tema__pseudocodigo,.ventana-codigo__texto{color:var(--texto);white-space:pre-wrap;overflow-wrap:anywhere;overflow:visible}.ventana-codigo{box-shadow:none}.ventana-codigo__ruta{color:var(--texto-tenue)}.ventana-codigo__cuerpo{max-height:none;overflow:visible}.ventana-codigo__numeros{display:none}.c-atributo,.c-control,.c-etiqueta,.c-funcion,.c-numero,.c-objeto,.c-palabra,.c-regex,.c-selector,.c-signo,.c-texto{color:inherit}.c-comentario{color:var(--texto-tenue)}main a{text-decoration:underline}.caso,.consola,.tabla-nse,.tema__pseudocodigo,.tema__tarjeta{break-inside:avoid}.seccion__etiqueta,h1,h2,h3,h4{break-after:avoid}}