@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=UnifrakturCook:wght@700&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-void:oklch(10% .008 285);--color-copy:oklch(91% .018 70);--color-copy-muted:oklch(70% .014 70);--color-focus:oklch(78% .05 55);--color-surface:oklch(13% .01 285);--color-surface-raised:oklch(17% .012 285);--color-surface-input:oklch(11.5% .01 285);--color-rule:oklch(31% .012 285);--color-error:oklch(67% .17 28);--color-success:oklch(72% .11 145);--color-cinema-black:oklch(1% .002 285);--color-film-window:oklch(3% .004 285);--color-frame-top:oklch(20% .006 285);--color-frame-bottom:oklch(8% .006 285);--color-frame-return:oklch(18% .008 285);--color-frame-edge:oklch(12% .006 285);--color-frame-inset:oklch(39% .012 70);--color-frame-inset-deep:oklch(6% .004 285);--color-frame-glint:#ffffff29;--font-display:"UnifrakturCook", "Old English Text MT", "Blackletter", Georgia, serif;--font-body:"IBM Plex Mono", "SFMono-Regular", Consolas, monospace;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--text-sm:.8rem;--text-base:1rem;--text-md:1.25rem;--text-xl:1.953rem;--text-display:clamp(2.8rem, 6vw, 5.25rem);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:1rem;--rule-thin:1px;--z-base:1;--z-docs:4;--z-overlay:8;--hero-gutter:clamp(1rem, 4vw, 4rem)}*{box-sizing:border-box}html,body{background:var(--color-void);min-height:100%;margin:0;overflow-x:clip}body{min-width:320px;color:var(--color-copy);font-family:var(--font-body);text-rendering:optimizelegibility}#app,.page-shell{min-height:100dvh}.hero{--hero-pad-top:clamp(var(--space-4), 3vh, var(--space-8));--hero-pad-bottom:clamp(var(--space-8), 8vh, var(--space-20));--hero-copy-reserve:clamp(4rem, 10vh, 6rem);width:100%;height:100dvh;min-height:100svh;max-height:100dvh;padding:var(--hero-pad-top) var(--hero-gutter) var(--hero-pad-bottom);isolation:isolate;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:clip}.model-stage{width:min(100%,96rem);height:min(clamp(25rem, 70dvh, 50rem), calc(100dvh - var(--hero-pad-top) - var(--hero-pad-bottom) - var(--hero-copy-reserve)));z-index:1;pointer-events:none;flex:0 auto;place-items:center;min-height:0;max-height:100%;display:grid;position:relative}#view{z-index:0;pointer-events:none;touch-action:none;outline:none;width:100%;height:100dvh;display:block;position:fixed;inset:0}.hero-copy{width:min(100%,42rem);margin:var(--space-1) 0 0;color:var(--color-copy);font-family:var(--font-display);letter-spacing:.015em;text-align:center;text-wrap:balance;overflow-wrap:anywhere;z-index:2;min-width:0;font-size:clamp(1.35rem,2.25vw,2.45rem);font-weight:700;line-height:.98;position:relative}.hero-copy span{display:block}.hero-copy span+span{margin-top:var(--space-1);color:var(--color-copy-muted)}.badge-docs{z-index:var(--z-docs);min-height:100dvh;padding:clamp(var(--space-16), 10dvh, var(--space-24)) var(--hero-gutter) var(--space-24);background:var(--color-surface);color:var(--color-copy);position:relative}.badge-docs__article{width:min(100%,72rem);margin-inline:auto}.badge-docs__head,.badge-prose,.markdown-workbench{width:min(100%,65ch)}.badge-docs__head h2{overflow-wrap:anywhere;min-width:0;color:var(--color-copy);font-family:var(--font-display);margin:0;font-size:clamp(2.25rem,4.4vw,3.75rem);font-style:normal;font-weight:700;line-height:1}.badge-docs__head p,.badge-prose p,.markdown-workbench__head p,.badge-parameters dd{font-size:var(--text-base);line-height:1.7}.badge-docs__head>p:first-of-type{margin:var(--space-8) 0 0;color:var(--color-copy-muted)}.badge-docs__sample{min-height:2.5rem;margin:var(--space-6) 0 0;align-items:center;display:flex}.badge-docs__sample img,.markdown-preview img{image-rendering:auto;max-width:100%;height:auto;display:inline-block}.badge-prose{margin-block-start:var(--space-16)}.badge-prose h3,.markdown-workbench h3{margin:var(--space-12) 0 var(--space-4);color:var(--color-copy);font-family:var(--font-body);font-size:var(--text-md);font-style:normal;font-weight:500;line-height:1.3}.badge-prose pre,.markdown-preview pre{max-width:100%;margin:var(--space-4) 0 0;padding:var(--space-4);border-block:var(--rule-thin) solid var(--color-rule);background:var(--color-surface-input);color:var(--color-copy);font-family:var(--font-body);font-size:var(--text-sm);tab-size:2;line-height:1.65;overflow-x:auto}.badge-docs :not(pre)>code,.markdown-preview :not(pre)>code{border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-copy);font-family:var(--font-body);padding:.1em .35em;font-size:.9em}.badge-parameters{gap:0;margin:0;display:grid}.badge-parameters>div{gap:var(--space-4);padding-block:var(--space-4);border-block-start:var(--rule-thin) solid var(--color-rule);grid-template-columns:minmax(5.5rem,.28fr) minmax(0,1fr);display:grid}.badge-parameters>div:last-child{border-block-end:var(--rule-thin) solid var(--color-rule)}.badge-parameters dt,.badge-parameters dd{margin:0}.badge-parameters dd{color:var(--color-copy-muted)}.markdown-workbench{margin-block-start:var(--space-16)}.markdown-workbench__head h3{margin-block-end:0}.markdown-workbench__head p{margin:var(--space-2) 0 0;color:var(--color-copy-muted)}.markdown-workbench__grid{gap:var(--space-8);grid-template-columns:minmax(0,1fr);margin-block-start:var(--space-8);display:grid}.markdown-pane{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.markdown-pane__label{color:var(--color-copy);font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;font-weight:500}.markdown-pane__help{min-height:1lh;color:var(--color-copy-muted);font-size:var(--text-sm);line-height:1.5}.markdown-source,.markdown-preview{width:100%;min-height:18rem;padding:var(--space-4);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md);outline-offset:2px;background:var(--color-surface-input);color:var(--color-copy);font-family:var(--font-body);font-size:var(--text-base);outline:2px solid #0000;line-height:1.65}.markdown-source{resize:vertical;caret-color:var(--color-focus)}.markdown-source:focus-visible{outline-color:var(--color-focus);outline-offset:1px}.markdown-source:active{border-color:var(--color-focus)}.markdown-source:disabled,.markdown-source[aria-disabled=true]{cursor:not-allowed;opacity:.55}.markdown-source[aria-invalid=true],.markdown-source[data-state=error]{border-color:var(--color-error)}.markdown-source[data-state=success]{border-color:var(--color-success)}.markdown-source[data-state=loading]{cursor:progress;opacity:.72}.markdown-preview{overflow-wrap:anywhere}.markdown-preview>:first-child{margin-block-start:0}.markdown-preview>:last-child{margin-block-end:0}.markdown-preview p{margin-block:0 var(--space-4)}.markdown-preview__badges{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.markdown-preview a{color:var(--color-copy);-webkit-text-decoration-color:var(--color-focus);text-decoration-color:var(--color-focus);text-underline-offset:.22em}.markdown-preview a:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.markdown-preview a:active{color:var(--color-focus)}.markdown-preview__empty{color:var(--color-copy-muted)}@media (hover:hover) and (pointer:fine){.markdown-source:hover{background:var(--color-surface-raised)}.markdown-preview a:hover{text-decoration-thickness:.14em}}@media (width>=60rem){.badge-docs__article{column-gap:clamp(var(--space-12), 8vw, var(--space-24));grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);display:grid}.badge-docs__head,.badge-prose,.markdown-workbench{width:100%}.badge-docs__head{grid-column:1;align-self:start}.badge-prose{grid-area:1/2;margin-block-start:0}.badge-prose h3:first-child{margin-block-start:0}.markdown-workbench{grid-column:1/-1}.markdown-workbench__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.frame-sequence{z-index:8;pointer-events:none;visibility:hidden;background:var(--color-cinema-black);place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.frame-sequence.is-visible{visibility:visible;pointer-events:auto}.frame-rotor{width:100%;height:100%;transform-style:preserve-3d;perspective:1200px;perspective-origin:50%;transform-origin:50%;will-change:transform;place-items:center;display:grid}.sequence-frame{--frame-gutter:clamp(.75rem, 2vw, 1.5rem);width:calc(100% - var(--frame-gutter) - var(--frame-gutter));height:calc(100dvh - var(--frame-gutter) - var(--frame-gutter));aspect-ratio:auto;max-width:calc(100% - var(--frame-gutter) - var(--frame-gutter));max-height:calc(100dvh - var(--frame-gutter) - var(--frame-gutter));background:linear-gradient(90deg, var(--color-frame-glint), transparent .4rem) 0 0 / 100% 100% no-repeat, linear-gradient(180deg, var(--color-frame-top), var(--color-frame-bottom) 58%, var(--color-frame-return));border:clamp(.35rem, 1.25vw, 1.1rem) solid var(--color-frame-edge);box-shadow:inset 0 0 0 clamp(.12rem, .35vw, .3rem) var(--color-frame-inset), inset 0 0 0 clamp(.28rem, .7vw, .55rem) var(--color-frame-inset-deep), 0 0 0 100vmax var(--color-cinema-black);transform-style:preserve-3d;transform-origin:50% 50% 0;opacity:0;will-change:transform, opacity;border-radius:var(--radius-lg);padding:clamp(.7rem,2vw,2rem);transform:translate3d(0,2rem,-1500px)scale(.08)}.frame-sequence.is-visible .frame-rotor{animation:2.2s linear forwards frame-spin}.frame-sequence.is-visible .sequence-frame{animation:2.2s ease-out forwards frame-approach}.frame-sequence.is-countdown .frame-rotor,.frame-sequence.is-video .frame-rotor{animation:none;transform:rotate(1080deg)rotateX(0)rotateY(0)}.frame-sequence.is-countdown .sequence-frame,.frame-sequence.is-video .sequence-frame{opacity:1;animation:none;transform:translate(0,0)scale(1)}.film-window{background:var(--color-film-window);border-radius:var(--radius-md);place-items:center;width:100%;height:100%;display:grid;position:relative;overflow:hidden}.film-window img,.film-window video{object-fit:cover;background:var(--color-film-window);opacity:0;width:100%;height:100%;transition:opacity var(--dur-micro) linear;display:block;position:absolute;inset:0}.frame-sequence.is-visible #countdown-still,.frame-sequence.is-countdown #countdown-media,.frame-sequence.is-video #education-video{opacity:1}.frame-sequence.is-countdown #countdown-still,.frame-sequence.is-video #countdown-still,.frame-sequence.is-video #countdown-media{opacity:0}@keyframes frame-approach{0%{opacity:0;transform:translateZ(-1500px)scale(.08)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes frame-spin{0%{transform:rotate(0)}to{transform:rotate(1080deg)}}@media (width<=600px){.hero{--hero-pad-top:var(--space-3);--hero-pad-bottom:max(var(--space-8), env(safe-area-inset-bottom));--hero-copy-reserve:clamp(3rem, 12vh, 4.5rem)}.model-stage{width:112%;height:min(clamp(19rem, 61dvh, 34rem), calc(100dvh - var(--hero-pad-top) - var(--hero-pad-bottom) - var(--hero-copy-reserve)))}.hero-copy{font-size:clamp(1.15rem,5.7vw,1.8rem);line-height:1}}@media (orientation:landscape) and (height<=560px){.hero{--hero-pad-top:var(--space-2);--hero-pad-bottom:var(--space-4);--hero-copy-reserve:clamp(3rem, 12vh, 4rem)}.model-stage{height:min(70dvh, calc(100dvh - var(--hero-pad-top) - var(--hero-pad-bottom) - var(--hero-copy-reserve)))}.hero-copy{font-size:clamp(1rem,3vw,1.5rem)}}@media (prefers-reduced-motion:reduce){.frame-sequence.is-visible .sequence-frame,.frame-sequence.is-visible .frame-rotor{animation-duration:.32s;animation-timing-function:ease-out}}@media (prefers-contrast:more){:root{--color-copy:oklch(96% .012 70);--color-copy-muted:oklch(80% .012 70)}}
