.aes-lab{line-height:1.5}.aes-lab [hidden]{display:none!important}.aes-lab__inner{width:100%}.aes-lab__head{align-items:start;gap:1.6rem clamp(2rem,5vw,4.5rem);display:grid}@media (min-width:62rem){.aes-lab__head{grid-template-columns:minmax(0,1fr) auto;align-items:start}}.aes-lab__aside{justify-items:end;gap:1.1rem;display:grid}.aes-lab__dev{cursor:pointer;flex-shrink:0;align-items:center;gap:.55rem;padding-top:.15rem;display:flex}.aes-lab__dev-label{font-size:var(--mc-label-sm);color:rgb(var(--mc-ink-muted));font-weight:550;transition:color .2s}.aes-lab__dev:hover .aes-lab__dev-label{color:rgb(var(--mc-ink))}.aes-lab[data-view=dev] .aes-lab__dev-label{color:rgb(var(--mc-accent))}.aes-lab[data-view=simple] [data-dev],.aes-lab[data-view=dev] [data-simple]{display:none!important}@media (prefers-reduced-motion:no-preference){.aes-lab[data-view=dev] [data-dev]{animation:aes-rise .38s var(--mc-ease) backwards;animation-delay:calc(var(--d,0) * 45ms)}}@keyframes aes-rise{0%{opacity:0;transform:translateY(5px)}}.aes-lab__lede{max-width:56ch;font-size:var(--mc-body-sm);color:rgb(var(--mc-ink-soft));margin-top:.85rem;line-height:1.65}.aes-lab__head>.aes-lab__lede{font-size:var(--mc-body);margin-top:0}.aes-lab__lede a{color:rgb(var(--mc-accent));text-decoration:underline;-webkit-text-decoration-color:rgb(var(--mc-accent) / .3);text-decoration-color:rgb(var(--mc-accent) / .3);text-underline-offset:3px}.aes-lab__section{margin-top:2.1rem}.aes-lab__section-title{font-family:var(--mc-font-display);font-size:var(--mc-display-5);font-weight:var(--mc-display-weight);letter-spacing:var(--mc-display-tracking);color:rgb(var(--mc-ink));line-height:1.25}.aes-lab__section-head{align-items:start;gap:1.2rem clamp(2rem,5vw,4.5rem);display:grid}@media (min-width:62rem){.aes-lab__section-head{grid-template-columns:minmax(0,1fr) auto;align-items:baseline}}.aes-lab__section-head>.aes-lab__toolbar{justify-content:flex-start;margin-top:0}@media (min-width:62rem){.aes-lab__section-head>.aes-lab__toolbar{justify-content:flex-end}}.aes-lab__label{font-size:var(--mc-label);color:rgb(var(--mc-ink-muted));margin-bottom:.4rem;font-weight:550;display:block}.aes-lab__hint{color:rgb(var(--mc-ink-muted));font-weight:400}.aes-lab__flag{font-weight:400;font-size:var(--mc-label-sm);color:rgb(var(--mc-accent));margin-left:.4rem}@media (prefers-reduced-motion:no-preference){.aes-lab__flag{animation:aes-rise .32s var(--mc-ease)}}.aes-lab__label-row{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.aes-lab__label-row .aes-lab__label{margin-bottom:0}.aes-lab__label-row+:is(textarea,input,.aes-lab__key-row){margin-top:.4rem}.aes-lab__grid{grid-template-columns:1fr;gap:1rem 1.4rem;margin-top:.9rem;display:grid}@media (min-width:640px){.aes-lab__grid{grid-template-columns:repeat(6,minmax(0,1fr))}.aes-lab__field--msg{grid-column:span 6}.aes-lab__field--secret{grid-column:span 4}.aes-lab__field--mode,.aes-lab__field--third{grid-column:span 2}.aes-lab__grid--micro{grid-template-columns:repeat(2,minmax(0,1fr))}}.aes-lab .aes-mono{font-family:var(--mc-font-mono);font-size:var(--mc-label-lg)}@media (max-width:639px){.aes-lab input.aes-mono,.aes-lab textarea.aes-mono{font-size:var(--mc-body)}}.aes-lab__key-row{gap:.6rem;display:flex}.aes-lab__key-row>:first-child{flex:1;min-width:0}.aes-lab__keybtn{flex:0 0 2.7rem;justify-content:center;align-self:stretch;padding:0}.aes-lab__actions button{justify-content:center;min-width:8.5rem}.aes-lab__output{border:1px solid var(--mc-line);background:rgb(var(--mc-surface) / .6);border-radius:4px;margin-top:1.3rem;padding:.85rem 1rem}@media (prefers-reduced-motion:no-preference){.aes-lab__output{animation:aes-rise .32s var(--mc-ease)}}.aes-lab__output-head{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.45rem;display:flex}.aes-lab__output-actions{flex-shrink:0;align-items:baseline;gap:1.1rem;display:flex}.aes-lab__copy{font-size:var(--mc-label-sm);color:rgb(var(--mc-ink-muted));transition:color .2s}.aes-lab__copy:hover{color:rgb(var(--mc-accent))}.aes-lab__copy[data-state=failed]{color:rgb(var(--mc-error))}.aes-lab__textbtn{font-size:var(--mc-label-sm);color:rgb(var(--mc-accent));transition:background-size .32s var(--mc-ease), color .2s ease;background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;padding-bottom:1px;font-weight:550}.aes-lab__textbtn:hover,.aes-lab__textbtn:focus-visible{background-size:100% 1px}.aes-lab__output code{word-break:break-all;color:rgb(var(--mc-ink));line-height:1.7;display:block}.aes-lab .aes-seg{border-radius:2px;padding:0 1px;transition:background-color .2s,color .2s}@media (prefers-reduced-motion:no-preference){.aes-lab .aes-seg{animation:aes-seg-in .3s var(--mc-ease) backwards;animation-delay:calc(var(--i,0) * 26ms)}}@keyframes aes-seg-in{0%{opacity:0}}.aes-lab .aes-sep{color:rgb(var(--mc-ink-muted) / .55);padding:0 1px}.aes-lab[data-view=dev] .aes-seg[data-seg="0"],.aes-lab[data-view=dev] .aes-seg[data-seg="1"],.aes-lab[data-view=dev] .aes-seg[data-seg="2"],.aes-lab[data-view=dev] .aes-seg[data-seg="3"],.aes-lab[data-view=dev] .aes-seg[data-seg="4"]{color:rgb(var(--mc-ink-soft))}.aes-lab[data-view=dev] .aes-seg[data-seg="5"],.aes-lab[data-view=dev] .aes-seg[data-seg="6"],.aes-lab[data-view=dev] .aes-seg[data-seg="7"]{background:rgb(var(--mc-ink) / .055);color:rgb(var(--mc-ink-soft))}.aes-lab[data-view=dev] .aes-seg[data-seg="9"]{color:rgb(var(--mc-accent));box-shadow:inset 0 -1px rgb(var(--mc-accent) / .4)}.aes-lab .aes-seg.is-hot{background:rgb(var(--mc-accent) / .13);color:rgb(var(--mc-ink))}.aes-lab__legend{flex-wrap:wrap;gap:.3rem 1rem;margin-top:.7rem;display:flex}.aes-lab__legend button{font-family:var(--mc-font-mono);font-size:var(--mc-label-xs);color:rgb(var(--mc-ink-muted));transition:color .2s}.aes-lab__legend button em{color:rgb(var(--mc-ink-muted));font-style:normal}.aes-lab__legend button:hover,.aes-lab__legend button.is-hot{color:rgb(var(--mc-accent))}.aes-lab__legend button[data-empty=true]{opacity:.45}.aes-lab__meta{max-width:var(--mc-measure);font-size:var(--mc-label-sm);color:rgb(var(--mc-ink-muted));word-break:break-word;margin-top:.45rem;line-height:1.6}.aes-lab__error{font-size:var(--mc-label-lg);color:rgb(var(--mc-error));margin-top:1rem}.aes-lab__micro-head{align-items:start;gap:1.4rem clamp(2rem,5vw,4.5rem);margin-top:.85rem;display:grid}@media (min-width:62rem){.aes-lab__micro-head{grid-template-columns:minmax(0,1fr) minmax(0,26rem);align-items:baseline}}.aes-lab__micro-head>.aes-lab__lede{margin-top:0}.aes-lab__micro-quiet{font-size:var(--mc-label);color:rgb(var(--mc-ink-muted));flex-wrap:wrap;align-items:baseline;gap:.35rem .55rem;margin-top:0;display:flex}.aes-lab__micro-quiet code{font-family:var(--mc-font-mono);font-size:var(--mc-label-sm);color:rgb(var(--mc-ink-soft))}.aes-lab__micro-quiet .aes-lab__textbtn{margin-left:.45rem}.aes-lab__transport{border-top:1px solid var(--mc-line);border-bottom:1px solid var(--mc-line);gap:.9rem 2rem;margin-top:1.75rem;padding:1.1rem 0;display:grid}@media (min-width:62rem){.aes-lab__transport{grid-template-columns:minmax(0,1fr) auto;align-items:center}.aes-lab__transport>.aes-lab__pipeline{grid-column:1/-1}.aes-lab__transport>.aes-lab__step-label{text-align:right;justify-self:end}}.aes-lab__pipeline{flex-wrap:wrap;align-items:center;gap:.3rem 0;margin:1.6rem 0 0;padding:0;list-style:none;display:flex}.aes-lab__pipeline li{align-items:center;display:flex}.aes-lab__pipeline li+li:before{content:"→";font-size:var(--mc-label-sm);color:rgb(var(--mc-ink-muted) / .5);margin:0 .7rem}.aes-lab__pipeline button{font-size:var(--mc-label-sm);color:rgb(var(--mc-ink-muted));background-image:linear-gradient(rgb(var(--mc-accent)), rgb(var(--mc-accent)));transition:color .2s ease, background-size .32s var(--mc-ease);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;padding-bottom:2px;font-weight:550}.aes-lab__pipeline button:hover,.aes-lab__pipeline button:focus-visible{color:rgb(var(--mc-ink))}.aes-lab__pipeline button.is-now{color:rgb(var(--mc-accent));background-size:100% 1px}.aes-lab__stepper{align-items:center;gap:.8rem;margin-top:0;display:flex}.aes-lab__play{border:1px solid var(--mc-line-control);min-width:4.2rem;height:1.9rem;font-size:var(--mc-label);color:rgb(var(--mc-ink));cursor:pointer;border-radius:3px;place-items:center;padding:0 .7rem;font-weight:550;transition:border-color .2s,background-color .2s;display:inline-grid}.aes-lab__play:hover{border-color:var(--mc-line-control-hover);background:rgb(var(--mc-ink) / .06)}.aes-lab__step-btn{border:1px solid var(--mc-line-control);width:1.9rem;height:1.9rem;color:rgb(var(--mc-ink-muted));border-radius:3px;place-items:center;transition:color .2s,border-color .2s;display:inline-grid}.aes-lab__step-btn:hover{color:rgb(var(--mc-ink));border-color:var(--mc-line-control-hover)}.aes-lab__stepper input[type=range]{appearance:none;background:linear-gradient(var(--mc-line-strong), var(--mc-line-strong)) center / 100% 2px no-repeat;outline-offset:2px;flex:1;height:1.5rem}.aes-lab__stepper input[type=range]::-webkit-slider-thumb{appearance:none;border-radius:var(--mc-radius-pill);background:rgb(var(--mc-accent));border:2px solid rgb(var(--mc-surface));width:16px;height:16px;box-shadow:0 0 0 1px rgb(var(--mc-accent) / .5);cursor:pointer;transition:transform .2s var(--mc-ease)}.aes-lab__stepper input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15)}.aes-lab__stepper input[type=range]::-moz-range-thumb{border-radius:var(--mc-radius-pill);background:rgb(var(--mc-accent));border:2px solid rgb(var(--mc-surface));width:16px;height:16px;box-shadow:0 0 0 1px rgb(var(--mc-accent) / .5);cursor:pointer}.aes-lab__step-label{font-size:var(--mc-label-lg);color:rgb(var(--mc-ink));font-variant-numeric:tabular-nums;margin-top:.85rem}.aes-lab__step-label strong{font-weight:600}.aes-lab__step-label span{color:rgb(var(--mc-ink-muted));font-weight:400}[data-aes-rk-wrap][data-dim=true] .aes-lab__state span{color:rgb(var(--mc-ink-muted) / .5);background:0 0;border-style:dashed}.aes-lab__figure{margin:1.4rem 0 0}.aes-lab__grids{flex-wrap:wrap;gap:1.8rem clamp(2rem,6vw,5rem);display:flex}@media (min-width:62rem){.aes-lab__figure{width:min(100%,46rem);margin-inline:auto}.aes-lab__grids{grid-template-columns:repeat(2,max-content);justify-content:space-between;align-items:start;display:grid}}.aes-lab__figcaption{margin-top:1.1rem}.aes-lab__what{max-width:var(--mc-measure);font-size:var(--mc-body-sm);color:rgb(var(--mc-ink-soft));line-height:1.6}.aes-lab__grid-title{font-size:var(--mc-label);color:rgb(var(--mc-ink-muted));margin-bottom:.55rem;font-weight:550}.aes-lab__state{--cell:2.35rem;grid-template-columns:repeat(4, var(--cell));grid-auto-rows:var(--cell);gap:4px;display:grid}@media (min-width:48rem){.aes-lab__state{--cell:3.25rem}}@media (min-width:62rem){.aes-lab__state{--cell:4.5rem}}.aes-lab__state>[role=row]{display:contents}.aes-lab__state span{font-family:var(--mc-font-mono);font-size:var(--mc-label);font-variant-numeric:tabular-nums;color:rgb(var(--mc-ink-soft));background:rgb(var(--mc-surface) / .7);border:1px solid var(--mc-line);transition:background-color .26s var(--mc-ease), color .26s var(--mc-ease), border-color .26s var(--mc-ease);border-radius:3px;place-items:center;display:grid}.aes-lab__state span.is-changed{background:rgb(var(--mc-accent) / .13);border-color:rgb(var(--mc-accent) / .45);color:rgb(var(--mc-ink))}@media (prefers-reduced-motion:no-preference){.aes-lab__state span.is-swap{animation:aes-cell-in .24s var(--mc-ease) both;animation-delay:calc(var(--i,0) * 10ms)}}@keyframes aes-cell-in{0%{opacity:.2;transform:translateY(2px)}}.aes-lab [data-aes-rk-wrap]{transition:opacity .26s var(--mc-ease)}.aes-lab [data-aes-rk-wrap][data-dim=true]{opacity:.32}@media (prefers-reduced-motion:reduce){.aes-lab__state span,.aes-lab [data-aes-rk-wrap],.aes-lab__inner{transition:none}}.aes-drop{border:1px dashed var(--mc-line);border-radius:2px;transition:border-color .2s,background-color .2s;position:relative}.aes-drop[data-over]{border-color:rgb(var(--mc-accent) / .6);background:rgb(var(--mc-accent) / .05)}.aes-drop__input{opacity:0;cursor:pointer;position:absolute;inset:0}.aes-drop__face{text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;min-height:5.1rem;padding:.9rem 1rem;display:flex}.aes-drop__line{font-size:var(--mc-label-lg);color:rgb(var(--mc-ink-soft));overflow-wrap:anywhere}.aes-drop__hint{font-size:var(--mc-label-sm);color:rgb(var(--mc-ink-muted))}.aes-drop:hover .aes-drop__line{color:rgb(var(--mc-ink))}.aes-lab__actions{flex-wrap:wrap;align-items:center;gap:.9rem;margin-top:1.4rem;display:flex}.aes-lab__actions>button{order:2;margin-left:auto}.aes-lab__actions-note{max-width:46ch;font-size:var(--mc-label);color:rgb(var(--mc-ink-muted));flex:18rem;margin:0;line-height:1.6}.aes-lab__progress{flex:1;min-width:6rem;max-width:12rem}.aes-lab__rule{margin-block:2rem}.aes-lab__toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:1.4rem;margin-top:1.3rem;display:flex}.aes-lab__toolbar-group{align-items:center;gap:.55rem;display:inline-flex}.aes-lab__toolbar-label{font-size:var(--mc-label-sm);color:rgb(var(--mc-ink-muted))}@media (min-width:640px){.aes-lab__field--full{grid-column:span 6}}.aes-lab .aes-seg__altered{background:rgb(var(--mc-error) / .24);color:rgb(var(--mc-ink));border-radius:2px;padding:0 1px;font-weight:600}.aes-lab__output[data-refused] .aes-lab__meta{color:rgb(var(--mc-ink-soft))}.aes-gallery{margin:1.6rem 0 0}.aes-gallery__control{width:min(100%,13rem)}.aes-gallery__panels{grid-template-columns:1fr;gap:1.5rem clamp(1.2rem,3vw,2.2rem);display:grid}@media (min-width:48rem){.aes-gallery__panels{grid-template-columns:repeat(3,minmax(0,1fr))}}.aes-gallery__panel{flex-direction:column;gap:.55rem;min-width:0;display:flex}.aes-gallery__panel-title{font-size:var(--mc-label);color:rgb(var(--mc-ink));flex-wrap:wrap;align-items:baseline;gap:.2rem .5rem;font-weight:550;display:flex}.aes-gallery__panel-note{font-weight:400;font-size:var(--mc-label-sm);color:rgb(var(--mc-ink-muted))}.aes-gallery__canvas{aspect-ratio:2;border:1px solid var(--mc-line);width:100%;height:auto;image-rendering:pixelated;border-radius:2px;display:block}.aes-gallery__reading{font-size:var(--mc-label-sm);color:rgb(var(--mc-ink-muted));font-variant-numeric:tabular-nums}.aes-gallery__reading strong{color:rgb(var(--mc-ink));font-weight:600}.aes-lab__diffusion{border-top:1px solid var(--mc-line);margin-top:1.8rem;padding-top:1.3rem}.aes-lab__diffusion>*{width:100%}.aes-lab__diffusion .aes-lab__grid-title{flex-wrap:wrap;align-items:baseline;gap:.2rem .6rem;display:flex}.aes-lab__diffusion .aes-lab__textbtn{margin-left:auto}.aes-lab__bits{grid-template-columns:repeat(32,minmax(0,1fr));gap:2px;margin-bottom:.7rem;display:grid}.aes-lab__bits span{aspect-ratio:1;border-radius:var(--mc-radius-xs);background:rgb(var(--mc-ink) / .16);transition:background-color .26s var(--mc-ease)}.aes-lab__bits span.is-on{background:rgb(var(--mc-accent) / .85)}@media (prefers-reduced-motion:reduce){.aes-lab__bits span{transition:none}}
