.lab-carousel{--ec-ink:#141418;--ec-muted:#5f5f68;--ec-faint:#8c8c94;--ec-line:#1414181f;--ec-line-soft:#14141812;--ec-surface:#fff;--ec-accent:#4f27e0;flex-direction:column;gap:12px;display:flex}.lab-carousel-viewport{overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x mandatory;padding-inline:max(0px, calc((100% - var(--ec-slide-w)) / 2));-webkit-overflow-scrolling:touch;overflow-x:auto}.lab-carousel-viewport::-webkit-scrollbar{display:none}.lab-carousel-viewport:focus-visible{outline:2px solid var(--ec-accent);outline-offset:4px;border-radius:4px}.lab-carousel-viewport[data-dragging=true]{scroll-snap-type:none;cursor:grabbing}.lab-carousel-viewport[data-dragging=true] .lab-carousel-slide{-webkit-user-select:none;user-select:none}.lab-carousel-track{gap:14px;margin:0;padding:0;list-style:none;display:flex}.lab-carousel-slide{width:var(--ec-slide-w);scroll-snap-align:center;opacity:.45;flex:none;transition:opacity .32s cubic-bezier(.22,1,.36,1)}.lab-carousel-slide[data-active=true]{opacity:1}.lab-carousel{--ec-slide-w:100%}.lab-carousel[data-peek=true]{--ec-slide-w:74%}.lab-carousel-media{aspect-ratio:var(--ec-ratio,16 / 10);border:1px solid var(--ec-line-soft);background:#ededeb;border-radius:12px;overflow:hidden}.lab-carousel-media>*{width:100%;height:100%}.lab-carousel-bar{align-items:center;gap:14px;padding-inline:2px;display:flex}.lab-carousel-controls{gap:6px;display:flex}.lab-carousel-btn{appearance:none;border:1px solid var(--ec-line);background:var(--ec-surface);color:var(--ec-ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;width:34px;height:34px;font-size:.9rem;line-height:1;transition:border-color .15s,color .15s,opacity .15s;display:inline-flex}.lab-carousel-btn:hover:not(:disabled){border-color:#1414188c}.lab-carousel-btn:disabled{opacity:.35;cursor:not-allowed}.lab-carousel-caption{min-width:0;color:var(--ec-muted);flex-wrap:wrap;flex:1;align-items:baseline;gap:4px 10px;margin:0;font-size:.875rem;line-height:1.45;display:flex}.lab-carousel-caption-text{color:var(--ec-ink)}.lab-carousel-meta{letter-spacing:.09em;text-transform:uppercase;color:var(--ec-faint);font-family:ui-monospace,SF Mono,Cascadia Mono,Consolas,monospace;font-size:.625rem}.lab-carousel-count{letter-spacing:.05em;color:var(--ec-faint);align-items:baseline;gap:3px;margin:0;font-family:ui-monospace,SF Mono,Cascadia Mono,Consolas,monospace;font-size:.6875rem;display:flex}.lab-carousel-count-now{color:var(--ec-ink)}.lab-carousel-count-sep{opacity:.6}.lab-carousel-progress{background:var(--ec-line-soft);border-radius:2px;height:2px;overflow:hidden}.lab-carousel-progress span{background:var(--ec-ink);transform-origin:0;height:100%;transition:transform .32s cubic-bezier(.22,1,.36,1);display:block}@media (max-width:640px){.lab-carousel[data-peek=true]{--ec-slide-w:88%}.lab-carousel-bar{flex-wrap:wrap}.lab-carousel-caption{flex-basis:100%;order:3}}@media (prefers-reduced-motion:reduce){.lab-carousel-slide,.lab-carousel-progress span{transition:none}}
.dm-ec-root{background:#fbfbfa;flex-direction:column;gap:14px;height:100%;padding:clamp(16px,3vw,28px);display:flex;overflow-y:auto}.dm-ec-head{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.dm-ec-eyebrow{font-family:var(--lab-font-mono,ui-monospace, monospace);letter-spacing:.11em;text-transform:uppercase;color:var(--lab-faint,#8c8c94);margin:0;font-size:.625rem}.dm-ec-title{letter-spacing:-.02em;margin:5px 0 0;font-size:1.0625rem;font-weight:600}.dm-ec-note{font-family:var(--lab-font-mono,ui-monospace, monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--lab-faint,#8c8c94);white-space:nowrap;margin:0;font-size:.625rem}.dm-ec-stage{flex-direction:column;flex:1;justify-content:center;width:100%;max-width:680px;min-height:0;margin-inline:auto;display:flex}.dm-ec-foot p{max-width:62ch;color:var(--lab-muted,#5f5f68);margin:0;font-size:.8125rem;line-height:1.6}.dm-ec-foot code{font-family:var(--lab-font-mono,ui-monospace, monospace);background:#1414180e;border-radius:4px;padding:1px 5px;font-size:.6875rem}.dm-ec-plate{border-radius:inherit;background:#e7e7e3;width:100%;height:100%;position:relative;overflow:hidden}.dm-ec-photo{object-fit:cover;width:100%;height:100%;display:block}@media (max-width:640px){.dm-ec-root{padding:14px 16px}.dm-ec-note{display:none}}
