@font-face{font-family:Courier Prime;src:url(/fonts/courier-prime/CourierPrime-Regular.ttf)format("truetype");font-display:swap}@font-face{font-family:TT2020 Base;src:url(/fonts/tt2020/TT2020Base-Regular.ttf)format("truetype");font-display:swap}@font-face{font-family:Special Elite;src:url(/fonts/special-elite/SpecialElite-Regular.ttf)format("truetype");font-display:swap}@font-face{font-family:Lekton;src:url(/fonts/lekton/Lekton-Regular.ttf)format("truetype");font-display:swap}@font-face{font-family:Noto Sans SC;src:url(/fonts/noto-sans-sc/NotoSansSC-subset.woff2)format("woff2");font-weight:400 600;font-display:swap}:root{--ground:#eee7d8;--ground-deep:#e5dccb;--text:#18141c;--text-quiet:#5d5850;--hairline:#18141c1f;--wash:#2c5c5b14;--button:#18141c;--button-text:#f2ecdf;--shadow:#3c2d144d;--paper:#f7f2e7;--ink:#18141c;--guide:#2c5c5b;--rubber:#151515;--chrome:#cfd2cf;--latin:"Courier Prime";--cjk:"PingFang SC", "Noto Sans SC", sans-serif;--ui:var(--latin), var(--cjk);--gutter:clamp(20px, 4vw, 56px);--measure:34em;color-scheme:light;background:var(--ground);color:var(--text);font-family:var(--ui);font-synthesis-weight:none;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:17px;line-height:1.6}:root:lang(zh-Hans){--measure:31em;--ui:var(--cjk), var(--latin);font-size:16px;line-height:1.85}*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p,dl,dd,figure{margin:0}img{max-width:100%;height:auto;display:block}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--text);outline-offset:3px;border-radius:3px}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}h2{text-wrap:balance;font-size:clamp(1.6rem,1.2rem + 1.4vw,2.2rem);font-weight:400;line-height:1.25}:lang(zh-Hans) h2{letter-spacing:.04em;font-weight:600;line-height:1.4}.lede{max-width:var(--measure);color:var(--text-quiet);text-wrap:pretty}.quiet{color:var(--text-quiet)}.small{font-size:.85rem}.masthead{z-index:10;padding:18px var(--gutter);justify-content:space-between;align-items:center;font-size:.95rem;display:flex;position:absolute;inset:0 0 auto}.wordmark{align-items:center;gap:12px;text-decoration:none;display:inline-flex}.wordmark img{filter:drop-shadow(0 0 .5px #3c2d1473)drop-shadow(0 2px 5px #3c2d142e)}.wordmark span{letter-spacing:.01em;-webkit-text-stroke:.6px currentColor;font:400 26px/1 TT2020 Base,Courier Prime,monospace;translate:0 .06em}.tools{align-items:center;gap:clamp(14px,2vw,26px);display:flex}.sections{display:none}@media (width>=900px){.sections{align-items:center;gap:clamp(14px,2vw,26px);margin-right:clamp(4px,1vw,14px);display:flex}}.sections a{color:var(--text-quiet);text-decoration:none}.sections a:hover,.sections a:focus-visible{color:var(--text)}.sections .get{color:var(--text);border:1px solid;border-radius:999px;padding:5px 14px}.sections .get:hover{background:var(--text);color:var(--ground);border-color:var(--text)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}section[id],footer[id]{scroll-margin-top:24px}.sound{cursor:pointer;color:var(--text-quiet);background:0 0;border:0;align-items:center;gap:8px;padding:4px 2px;font-size:.95rem;display:inline-flex}.sound:hover,.sound[data-state=on]{color:var(--text)}.sound[data-state=on] .mute,.sound:not([data-state=on]) .waves,.sound:not([data-state=waiting]) .label{display:none}@media (width<=420px){.sound .label{display:none}}.languages{position:relative}.languages summary{cursor:pointer;color:var(--text-quiet);align-items:center;gap:8px;list-style:none;display:flex}.languages summary::-webkit-details-marker{display:none}.languages summary:hover,.languages[open] summary{color:var(--text)}.languages[open] svg{rotate:180deg}.languages ul{z-index:20;background:var(--ground-deep);min-width:150px;box-shadow:0 0 0 1px var(--hairline), 0 18px 40px -16px var(--shadow);border-radius:10px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 10px);right:-14px}.languages a{color:var(--text-quiet);border-radius:6px;padding:7px 12px;text-decoration:none;display:block}.languages a:hover,.languages a:focus-visible{color:var(--text);background:var(--wash)}.languages a[aria-current]{color:var(--text)}.languages a[aria-current]:after{content:"";vertical-align:middle;background:currentColor;border-radius:50%;width:5px;height:5px;margin-left:10px;display:inline-block}.hero{--layout:stack;--platen-h:clamp(40px, 6svh, 64px);--stage-h:clamp(170px, 26svh, 300px);--pitch:14px;--line:23.3px;--strike-x:50%;grid-template:"show"minmax(0,1fr)"room""caption"/minmax(0,1fr);height:100svh;min-height:620px;display:grid;position:relative;overflow:hidden}@media (width>=1024px){.hero{--layout:side;--strike-x:70%;--stage-h:clamp(300px, 60svh, 680px);padding-inline:var(--gutter);grid-template:"show room"minmax(0,1fr)"caption caption"/minmax(0,1.1fr) minmax(0,1fr);column-gap:clamp(16px,3vw,48px)}.hero .room{align-self:end}.hero .stage,.hero .rail{-webkit-mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000);mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000)}.hero .showcase{padding-inline:0;justify-content:flex-end;padding-bottom:0}.hero .type-hint{white-space:nowrap;max-width:none;translate:-76%}.hero .machines{flex:0 auto;height:min(62svh,640px)}.hero .caption{padding-top:clamp(24px,5svh,56px)}}.showcase{min-height:0;padding:84px var(--gutter) 6px;flex-direction:column;grid-area:show;align-items:center;display:flex}.machines{flex:1;width:100%;max-width:1000px;min-height:0;position:relative}.machines img{object-fit:contain;object-position:50% 100%;width:100%;height:100%;scale:var(--scale,1);transform-origin:50% 100%;opacity:0;transition:opacity .6s;position:absolute;inset:0}.machines img.on{opacity:1}.look-label{letter-spacing:.02em;min-height:1.6em;margin-top:12px;font-size:.95rem}.room{grid-area:room;min-width:0;position:relative}.stage{height:var(--stage-h);position:relative;overflow:hidden}.platen{height:var(--platen-h);background:linear-gradient(180deg, #ffffff1a, transparent 9%, transparent 40%, #ffffff0d 52%, transparent 66%), linear-gradient(180deg, #2b2b2b 0%, var(--rubber) 30%, #1f1f1f 52%, #0d0d0d 100%);position:absolute;inset:auto 0 0}[data-carriage]{left:var(--strike-x);will-change:transform;transition:transform 30ms cubic-bezier(.2,.7,.3,1);position:absolute}.stage>[data-carriage]{top:calc(100% - var(--platen-h) + var(--line) * .25)}[data-feed]{will-change:transform;transition:transform .12s cubic-bezier(.3,.6,.3,1)}.sheet{width:var(--sheet-w,1008px);height:var(--sheet-h,1426px);background:var(--paper) var(--stock) center top / 100% auto no-repeat;box-shadow:0 0 0 1px #3c2d141a, 0 2px 3px #3c2d1414, 0 24px 50px -20px var(--shadow);position:relative}.sheet canvas{position:absolute;inset:0}.curve{height:var(--platen-h);pointer-events:none;background:linear-gradient(#0000 0%,#0000000d 35%,#0000004d 78%,#0000008c 100%);position:absolute;inset:auto 0 0}.guide{left:var(--strike-x);top:calc(100% - var(--platen-h) + var(--line) * .25 - var(--line) * .95);width:calc(var(--pitch) * 1.9);height:calc(var(--line) * 1.2);border:2.5px solid var(--guide);pointer-events:none;border-top:0;border-radius:0 0 4px 4px;position:absolute;translate:-50%}.guide:after{content:"";border:5px solid #0000;border-bottom-color:var(--guide);width:0;height:0;position:absolute;bottom:-1.5px;left:50%;translate:-50%}.rail{background:linear-gradient(#0b0b0b,#232323 30%,#191919);height:26px;position:relative}.rail [data-carriage]{top:0}.scale{width:var(--sheet-w);background:repeating-linear-gradient(90deg, #cfd2cf73 0 1px, transparent 1px var(--pitch)) 0 0 / 100% 5px no-repeat, repeating-linear-gradient(90deg, #cfd2cfb3 0 1px, transparent 1px calc(var(--pitch) * 5)) 0 0 / 100% 8px no-repeat;height:16px;position:absolute;top:5px;left:0}.stop{background:#050505;border:1px solid #cfd2cf59;border-radius:1px;width:7px;height:12px;position:absolute;top:-3px;translate:-50%}.stop.left{left:var(--margin-l)}.stop.right{left:var(--margin-r)}.pointer{left:var(--strike-x);border:5px solid #0000;border-bottom-color:var(--chrome);position:absolute;top:2px;translate:-50%}.type-hint{left:var(--strike-x);width:max-content;max-width:90%;color:var(--text-quiet);text-align:center;margin:12px 0 0;font-size:.9rem;transition:opacity .8s;position:relative;translate:-50%}.type-hint.used{opacity:0}.caption{padding:clamp(14px, 2.5svh, 26px) var(--gutter) clamp(18px, 3.5svh, 36px);text-align:center;grid-area:caption;justify-items:center;gap:8px;display:grid}.caption h1{text-wrap:balance;font-size:clamp(1.4rem,1rem + 1.4vw,2.25rem);font-weight:500;line-height:1.3}:lang(zh-Hans) .caption h1{letter-spacing:.03em;font-weight:600}.caption .line{display:block}.caption .phrase{display:inline-block}.caption .phrase+.phrase{margin-left:.6em}:lang(zh-Hans) .caption .phrase+.phrase{margin-left:0}@media (hover:none) and (pointer:coarse){.hint-keys{display:none}}.section{padding:clamp(90px, 16vh, 180px) var(--gutter)}.section-head h2 .phrase{display:inline-block}.section-head h2 .phrase:not(:last-child){margin-right:.6em}:lang(zh-Hans) .section-head h2 .phrase{margin-right:0}.section-head{gap:18px;max-width:1320px;margin:0 auto clamp(48px,8vh,96px);display:grid}@media (width>=900px){.section-head{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:baseline;column-gap:48px}}.film-frame{aspect-ratio:16/9;background:var(--ground-deep);max-width:1320px;box-shadow:0 40px 80px -40px var(--shadow);border-radius:12px;margin:0 auto;overflow:hidden}.film-frame video{object-fit:cover;width:100%;height:100%;display:block}@media (width<=700px){.film-frame{aspect-ratio:4/3}}.film-apps{flex-wrap:wrap;justify-content:center;gap:6px clamp(12px,3vw,40px);margin:22px 0 0;padding:0;list-style:none;display:flex}.film-apps button{cursor:pointer;font:inherit;color:var(--text-quiet);background:0 0;border:0;border-bottom:2px solid #0000;padding:6px 2px;transition:color .3s,border-color .3s}.film-apps button:hover{color:var(--text)}.film-apps button[aria-current]{color:var(--text);border-bottom-color:var(--guide)}.film-missing{text-align:center;border:1px dashed color-mix(in srgb, var(--text-quiet) 45%, transparent);border-radius:inherit;height:100%;color:var(--text-quiet);place-items:center;padding:24px;display:grid}.faq{padding-top:0}.faq-inner{max-width:46rem;margin:0 auto}.faq h2{margin:0 0 clamp(20px,3vw,32px)}.faq-list{border-bottom:1px solid var(--hairline)}.faq-list details{border-top:1px solid var(--hairline)}.faq-list summary{cursor:pointer;color:var(--text);justify-content:space-between;align-items:baseline;gap:24px;padding:18px 0;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";color:var(--text-quiet);flex:none;transition:rotate .2s}.faq-list details[open] summary:after{rotate:45deg}.faq-list summary:hover:after{color:var(--text)}.faq-list details p{color:var(--text-quiet);text-wrap:pretty;margin:-4px 0 22px;padding-right:32px}:lang(zh-Hans) .faq-list summary{font-weight:500}.faq-contact{margin:22px 0 0}.colophon{background:var(--ground-deep);text-align:center}.colophon .inner{justify-items:center;gap:16px;max-width:40em;margin:0 auto;display:grid}.colophon .app-icon{margin-bottom:8px}.store{background:var(--button);color:var(--button-text);border-radius:10px;margin-top:18px;padding:12px 22px;font-weight:600;text-decoration:none;display:inline-block}.footer{flex-wrap:wrap;justify-content:center;gap:10px 28px;margin-top:clamp(60px,10vh,120px);display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
