:root{--bg:#f6f3ec;--paper:#fffdf8;--cream:#fffdf8;--gh0:#ebe5d8;--ink:#161616;--text:#161616;--ink-2:#4a4740;--muted:#8a857a;--line:#e3ddd0;--accent:#c2337a;--lilac:#ddd6fe;--font:"Bricolage Grotesque", system-ui, sans-serif;--serif:"Instrument Serif", Georgia, serif;--mono:"JetBrains Mono", ui-monospace, monospace;--stroke:3px;--shadow:0 5px 0 var(--ink);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--gutter:clamp(16px, 4vw, 48px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:80px}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.55;overflow-x:hidden}img,svg{max-width:100%;display:block}a{color:inherit}button{font:inherit;color:inherit;cursor:pointer}kbd{font-family:var(--mono);border:1.5px solid var(--ink);background:var(--paper);box-shadow:0 2px 0 var(--ink);white-space:nowrap;border-radius:6px;padding:1px 6px;font-size:.78em}em{font-family:var(--serif);color:var(--accent);letter-spacing:0;font-style:italic;font-weight:400}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}.skip{z-index:100;background:var(--ink);color:var(--cream);border-radius:8px;padding:8px 14px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.muted{color:var(--muted)}.nav{z-index:50;padding:14px var(--gutter);background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #0000;justify-content:space-between;align-items:center;transition:border-color .3s;display:flex;position:sticky;top:0}.nav.scrolled{border-bottom-color:var(--line)}.logo{letter-spacing:-.03em;font-size:22px;font-weight:800;text-decoration:none}.logo span{color:var(--accent)}.nav-links{align-items:center;gap:clamp(10px,2.4vw,28px);font-size:15px;display:flex}.nav-links>a{text-decoration:none;position:relative}.nav-links>a:not(.nav-cta):after{content:"";background:var(--ink);transform-origin:100%;height:2px;transition:transform .35s var(--ease-out);position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}.nav-links>a:hover:after{transform-origin:0;transform:scaleX(1)}.nav-cta{text-underline-offset:4px;font-weight:700;text-decoration:underline;text-decoration-thickness:2px}.nav-cta:hover{color:var(--accent)}.sound-toggle{border:1.5px solid var(--ink);background:var(--paper);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;display:inline-flex}.sound-bars{align-items:flex-end;gap:2px;height:12px;display:inline-flex}.sound-bars i{background:var(--ink);border-radius:2px;width:3px;height:100%;animation:1s ease-in-out infinite eq}.sound-bars i:nth-child(2){animation-delay:-.3s}.sound-bars i:nth-child(3){animation-delay:-.6s}.sound-toggle[aria-pressed=false] .sound-bars i{height:3px;animation:none}.sound-toggle[aria-pressed=false]{color:var(--muted)}@media (width<=640px){.nav-links>a:not(.nav-cta){display:none}}.hero{min-height:calc(100svh - 64px);padding:clamp(28px, 6vh, 72px) var(--gutter) 24px;flex-direction:column;gap:clamp(20px,4vh,44px);display:flex}.hero-title{letter-spacing:-.035em;max-width:17ch;margin:0;font-size:clamp(38px,6.6vw,84px);font-weight:800;line-height:1.02}.hero-title .line{padding-bottom:.06em;display:block;overflow:hidden}.hero-title .line>span{animation:rise .9s var(--ease-out) forwards;display:inline-block;transform:translateY(105%)}.hero-title .line:nth-child(2)>span{animation-delay:80ms}.hero-title .line:nth-child(3)>span{animation-delay:.16s}.hero-title em{padding-right:.05em;font-size:1.08em}@keyframes rise{to{transform:translateY(0)}}.keyboard-wrap{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:18px;display:flex}.keyboard{aspect-ratio:585/206;-webkit-user-select:none;user-select:none;touch-action:manipulation;width:min(100%,860px);position:relative;container-type:inline-size}.key{left:calc((var(--x) + 4) / 585 * 100%);top:calc((var(--y) + 4) / 206 * 100%);border:var(--stroke) solid var(--ink);background:var(--d);width:15.7265%;height:44.6602%;box-shadow:0 1.1cqw 0 var(--ink);transition:transform .12s var(--ease-out), box-shadow .12s var(--ease-out);-webkit-tap-highlight-color:transparent;opacity:0;animation:key-in .7s var(--ease-spring) forwards;animation-delay:calc(.35s + var(--i) * 60ms);border-radius:15%;padding:0;position:absolute}@keyframes key-in{0%{opacity:0;transform:translateY(-40%) rotate(var(--r,-6deg))}to{opacity:1;transform:none}}.key-top{border:2.5px solid var(--ink);background:linear-gradient(180deg, color-mix(in srgb, var(--c) 70%, #fff) 0%, var(--c) 55%);transition:transform .12s var(--ease-out);border-radius:13%;flex-direction:column;justify-content:center;align-items:center;gap:.6cqw;display:flex;position:absolute;inset:6% 7% 17%}.key-letter{letter-spacing:-.04em;font-size:7cqw;font-weight:800;line-height:.9}.key-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.02em;text-align:center;padding:0 6%;font-size:max(1.15cqw,7px);font-weight:600;line-height:1.1}.key:hover .key-top{transform:translateY(-3%)}.key.down,.key:active{box-shadow:0 .3cqw 0 var(--ink);transform:translateY(.8cqw)!important}.key.down .key-top,.key:active .key-top{transform:translateY(2%)}.key.glow .key-top{box-shadow:inset 0 0 0 3px #fff}.enter{pointer-events:none;opacity:0;width:100%;height:auto;animation:enter-in .8s var(--ease-spring) .95s forwards;position:absolute;inset:0;overflow:visible}.enter-key{transition:transform .12s var(--ease-out)}@keyframes enter-in{0%{opacity:0;transform:translateY(-30px)rotate(4deg)}to{opacity:1;transform:none}}.enter-body{fill:#f3c83a;stroke:var(--ink);stroke-width:3px;filter:drop-shadow(0 6.4px 0 var(--ink))}.enter-top{fill:#fde68a;stroke:var(--ink);stroke-width:2.5px}.enter-cap{transition:transform .12s var(--ease-out)}.enter-glyph{fill:none;stroke:var(--ink);stroke-width:6px;stroke-linecap:round;stroke-linejoin:round}.enter-label{font-family:var(--mono);letter-spacing:.08em;fill:var(--ink);font-size:10.5px;font-weight:600}.enter-hit{clip-path:polygon(0 0,100% 0,100% 100%,46% 100%,46% 48%,0 48%);-webkit-tap-highlight-color:transparent;background:0 0;border:0;width:24.2735%;height:93.2039%;padding:0;position:absolute;top:1.94175%;left:75.0427%}.enter-hit:hover~.enter .enter-cap,.keyboard.enter-hover .enter-cap{transform:translateY(-2px)}.keyboard.enter-down .enter-key{transform:translateY(5px)}.keyboard.enter-down .enter-body{filter:drop-shadow(0 1.5px 0 var(--ink))}.enter-hit:focus-visible{outline:none}.keyboard:has(.enter-hit:focus-visible) .enter-body{stroke:var(--accent)}.keyboard-hint{color:var(--ink-2);text-align:center;margin:10px 0 0;font-size:14px}.ribbon{margin:0 calc(var(--gutter) * -.5);border:2px solid var(--ink);background:var(--lilac);box-shadow:0 4px 0 var(--ink);border-radius:999px;padding:10px 0;overflow:hidden}.ribbon-track{gap:28px;width:max-content;font-size:15px;font-weight:500;animation:38s linear infinite marquee;display:flex}.ribbon-track b{color:var(--accent)}.ribbon:hover .ribbon-track{animation-play-state:paused}@keyframes marquee{to{transform:translate(-50%)}}.section{padding:clamp(80px, 13vw, 160px) var(--gutter) 0;max-width:1280px;margin:0 auto}.section-head{margin-bottom:clamp(32px,5vw,64px)}.section h2{letter-spacing:-.04em;max-width:18ch;margin:0;font-size:clamp(32px,5vw,64px);font-weight:800;line-height:1.04}.section h2 em{font-size:1.06em}.eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);align-items:center;gap:8px;margin:0 0 18px;font-size:12.5px;display:inline-flex}.eyebrow.light{color:#d8d3c8}.dot{background:var(--c);border:2px solid var(--ink);border-radius:4px;width:12px;height:12px}.eyebrow.light .dot{border-color:var(--cream)}.lead{color:var(--ink-2);margin:0 0 22px;font-size:clamp(18px,1.6vw,21px);line-height:1.5}.lead.narrow{max-width:60ch;margin-top:22px}.reveal{opacity:0;transition:opacity .8s var(--ease-out), transform .8s var(--ease-out);transition-delay:var(--d,0s);transform:translateY(28px)}.reveal.in{opacity:1;transform:none}.chips{flex-wrap:wrap;gap:8px;margin:22px 0;display:flex}.chips span{font-family:var(--mono);border:1.5px solid var(--ink);background:var(--paper);border-radius:999px;padding:4px 10px;font-size:12.5px}.btn-row{flex-wrap:wrap;gap:12px;display:flex}.btn{border:2.5px solid var(--ink);background:var(--paper);box-shadow:var(--shadow);transition:transform .15s var(--ease-out), box-shadow .15s var(--ease-out);border-radius:14px;align-items:center;gap:8px;padding:12px 20px;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{box-shadow:0 7px 0 var(--ink);transform:translateY(-2px)}.btn:active{box-shadow:0 1px 0 var(--ink);transform:translateY(4px)}.btn-dark{background:var(--ink);color:var(--cream);box-shadow:0 5px 0 var(--accent)}.btn-dark:hover{box-shadow:0 7px 0 var(--accent)}.link{border-bottom:2px solid;font-weight:700;text-decoration:none}.link:hover{color:var(--accent)}.notch-grid{grid-template-columns:1fr 1.15fr;align-items:center;gap:clamp(32px,5vw,72px);display:grid}.feature-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.feature-list li{color:var(--ink-2);padding-left:28px;position:relative}.feature-list li:before{content:"";border:2px solid var(--ink);background:var(--lilac);border-radius:5px;width:14px;height:14px;position:absolute;top:.45em;left:0}.feature-list b{color:var(--text)}.mac{min-width:0}.mac .nd-caption{margin-top:18px}.mac-base{z-index:1;border:var(--stroke) solid var(--ink);background:linear-gradient(#e4e4e7,#a1a1aa);border-radius:0 0 18px 18px;height:14px;margin:-2px -4% 0;position:relative}.mac-base:after{content:"";background:#8b8b93;border-radius:0 0 8px 8px;height:6px;position:absolute;top:-3px;left:42%;right:42%}.mac .nd-screen{box-shadow:0 0 0 var(--stroke) var(--ink);border-radius:22px 22px 6px 6px}.mascot{--s:46%;width:var(--s);aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#fffef6,#f5ecd6 70%);border-radius:50%;justify-content:center;align-items:center;gap:14%;animation:2.6s ease-in-out infinite bob;display:inline-flex;position:relative;box-shadow:inset -4px -6px #0000000f}.mascot .eye{background:#1a1a1a;border-radius:50%;width:16%;height:24%;animation:4.5s infinite blink;display:block;position:relative;overflow:hidden}.mascot .eye>i{width:40%;height:30%;transform:translate(var(--ex,0), var(--ey,0));background:#fff;border-radius:50%;transition:transform .12s linear;position:absolute;top:18%;left:20%}.mascot-big{--s:auto;flex:none;width:clamp(34px,5vw,60px)}.mascot-xl{width:58%}.mascot.happy .eye{border-radius:50% 50% 0 0;height:14%;animation:none}.mascot.happy .eye>i{display:none}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4%)}}@keyframes dance{0%{transform:rotate(-8deg)translateY(2%)}to{transform:rotate(8deg)translateY(-4%)}}@keyframes blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}.apps{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.app{border:var(--stroke) solid var(--ink);background:var(--paper);box-shadow:0 6px 0 var(--ink);transition:transform .25s var(--ease-out), box-shadow .25s var(--ease-out);border-radius:22px;flex-direction:column;text-decoration:none;display:flex;position:relative;overflow:hidden}.app:hover{transform:translateY(-6px) rotate(var(--tilt,-1deg));box-shadow:0 12px 0 var(--ink)}.app-visual{aspect-ratio:4/3;background:var(--c);border-bottom:var(--stroke) solid var(--ink);position:relative;overflow:hidden}.app-visual>div{position:absolute;inset:0}.app-body{flex-direction:column;flex:1;gap:8px;padding:18px 20px 20px;display:flex}.app-body h3{letter-spacing:-.03em;justify-content:space-between;align-items:center;margin:0;font-size:24px;display:flex}.app-body h3 span{transition:transform .25s var(--ease-spring);font-size:18px}.app:hover h3 span{transform:translate(3px,-3px)}.app-tag{font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);font-size:12px}.app-body p{color:var(--ink-2);margin:0;font-size:15px}.app-detail{color:var(--muted)!important;font-size:13.5px!important}.app-stack{flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:8px;display:flex}.app-more{text-underline-offset:3px;margin-top:12px;font-size:14px;font-weight:700;text-decoration:underline;text-decoration-thickness:2px}.app:hover .app-more{color:var(--accent)}.app-stack span{font-family:var(--mono);border:1.5px solid var(--ink);border-radius:999px;padding:2px 8px;font-size:11.5px}.v-party{justify-content:center;align-items:flex-end;gap:6%;padding:18% 14%;display:flex}.v-party i{background:var(--ink);transform-origin:bottom;border-radius:6px 6px 2px 2px;flex:1;height:100%;animation:1s ease-in-out infinite eq}.v-party i:nth-child(2n){animation-duration:.8s}.v-party i:nth-child(3n){animation-duration:1.3s}.v-pin{font-family:var(--mono);background:var(--paper);border:2px solid var(--ink);letter-spacing:.15em;white-space:nowrap;border-radius:8px;padding:2px 10px;font-size:14px;font-weight:600;position:absolute;top:10%;left:50%;transform:translate(-50%)}.v-drop{justify-content:space-between;align-items:center;padding:0 12%;display:flex}.device{aspect-ratio:.62;border:var(--stroke) solid var(--ink);background:var(--paper);border-radius:12px;width:26%;position:relative}.device.laptop{aspect-ratio:1.4;border-radius:8px;width:34%}.packet{background:var(--paper);border:2.5px solid var(--ink);width:22px;height:26px;animation:fly 2.4s var(--ease-out) infinite;border-radius:4px 9px 4px 4px;position:absolute;top:46%;left:30%}@keyframes fly{0%{opacity:0;left:28%;transform:translateY(0)scale(.6)}15%{opacity:1;transform:scale(1)}50%{transform:translateY(-40px)rotate(12deg)}85%{opacity:1}to{opacity:0;left:64%;transform:translateY(0)scale(.6)}}.v-code{font-family:var(--mono);letter-spacing:.3em;background:var(--ink);color:var(--cream);border-radius:8px;padding:3px 6px 3px 12px;font-size:15px;font-weight:600;position:absolute;bottom:9%;left:50%;transform:translate(-50%)}.v-cast{place-items:center;display:grid}.v-cast .screen{aspect-ratio:16/10;background:var(--paper);border:var(--stroke) solid var(--ink);border-radius:10px;width:66%;position:relative;overflow:hidden}.v-cast .screen:before{content:"";background:var(--c);opacity:.6;border-radius:4px;height:12%;position:absolute;inset:14% 12% auto;box-shadow:0 18px #e5e7eb,0 34px #e5e7eb}.ripple{border:2.5px solid var(--ink);border-radius:50%;width:18px;height:18px;animation:1.8s ease-out infinite ripple;position:absolute;top:60%;left:62%}@keyframes ripple{0%{opacity:1;transform:translate(-50%,-50%)scale(.4)}to{opacity:0;transform:translate(-50%,-50%)scale(3)}}.live{font-family:var(--mono);color:#fff;border:2px solid var(--ink);background:#ef4444;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:600;position:absolute;top:9%;left:9%}.v-board svg{width:84%;height:84%;position:absolute;inset:8%}.v-board path{fill:none;stroke:var(--ink);stroke-width:5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:600;stroke-dashoffset:600px;animation:4s ease-in-out infinite draw;stroke-width:3.5px!important;stroke-dasharray:7 6!important;animation:1s linear infinite d-flow-home!important}@keyframes d-flow-home{to{stroke-dashoffset:-26px}}.v-node{border:2.5px solid var(--ink);background:var(--paper);box-shadow:0 4px 0 var(--ink);border-radius:12px;align-items:center;gap:8px;padding:8px 12px;font-size:14px;font-weight:700;display:flex;position:absolute}.v-node b{border:1.5px solid var(--ink);width:22px;height:22px;font-family:var(--mono);background:#fde68a;border-radius:6px;place-items:center;font-size:11px;display:grid}.v-cur{color:#fff;border:1.5px solid var(--ink);background:#60a5fa;border-radius:6px;padding:1px 7px;font-size:11px;font-weight:700;animation:5s ease-in-out infinite cur;position:absolute;top:30%;left:40%}@keyframes cur{50%{transform:translate(60px,40px)}}@keyframes draw{50%,80%{stroke-dashoffset:0}to{stroke-dashoffset:-600px}}.v-board{background-image:radial-gradient(#0000002e 1.5px,#0000 1.5px)!important;background-size:18px 18px!important;background-color:var(--c)!important}.lab-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.lab{border:var(--stroke) solid var(--ink);background:var(--paper);box-shadow:0 6px 0 var(--ink);border-radius:28px;grid-column:1/-1;grid-template-columns:1fr 1.1fr;align-items:center;gap:clamp(24px,4vw,56px);padding:clamp(22px,4vw,48px);display:grid}.lab h3{letter-spacing:-.04em;margin:4px 0 12px;font-size:clamp(30px,3.6vw,46px);line-height:1}.lab p{color:var(--ink-2);margin:0 0 14px}.tag{font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--accent)!important;font-size:12.5px!important}.lab-clavio{background:#effbe9}.lab-openpod{background:#f1edff;grid-template-columns:.8fr 1.2fr}.lab-term{background:#fff6e8}.piano-card{border:var(--stroke) solid var(--ink);background:var(--paper);box-shadow:0 5px 0 var(--ink);border-radius:20px;padding:16px}.piano-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.piano-head p{margin:0;font-size:14.5px}.clavi{color:#fff;border:2.5px solid var(--ink);background:#58cc02;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;font-size:22px;animation:2s ease-in-out infinite bob;display:grid}.piano-progress{border:2px solid var(--ink);background:#e5e7eb;border-radius:999px;height:12px;margin-bottom:14px;overflow:hidden}.piano-progress i{width:0;height:100%;transition:width .35s var(--ease-out);background:#58cc02;display:block}.piano{touch-action:none;-webkit-user-select:none;user-select:none;height:clamp(130px,16vw,180px);display:flex;position:relative}.pk-white{border:2.5px solid var(--ink);font-family:var(--mono);color:var(--ink-2);-webkit-tap-highlight-color:transparent;background:#fff;border-left-width:0;border-radius:0 0 10px 10px;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;padding-bottom:10px;font-size:12px;font-weight:600;transition:background .1s,box-shadow .1s;display:flex;position:relative;box-shadow:inset 0 -8px #ecebe6}.pk-white:first-child{border-left-width:2.5px;border-radius:0 0 10px 10px}.pk-white small{color:var(--muted);font-size:10px;font-weight:400}.pk-black{background:var(--ink);z-index:2;-webkit-tap-highlight-color:transparent;border-radius:0 0 7px 7px;width:7.5%;height:60%;position:absolute;top:0;transform:translate(-50%);box-shadow:inset 0 -7px #3a3a3a}.pk-white.down{background:#d9f7c3;box-shadow:inset 0 -2px #ecebe6}.pk-black.down{background:#333;box-shadow:inset 0 -2px #3a3a3a}.pk-white.next{background:#fff7c2;animation:1s ease-in-out infinite pulse}@keyframes pulse{50%{background:#fde68a}}.pk-white.wrong{background:#fecaca!important}.pod{aspect-ratio:.58;border:var(--stroke) solid var(--ink);width:min(100%,230px);box-shadow:0 6px 0 var(--ink), inset 0 2px 0 #fff;transition:transform .4s var(--ease-spring);background:linear-gradient(160deg,#fafafa,#e4e4e7);border-radius:30px;flex-direction:column;justify-self:center;gap:18px;padding:16px;display:flex;transform:rotate(-4deg)}.pod:hover{transform:rotate(0)scale(1.02)}.pod-screen{aspect-ratio:240/320;border:2.5px solid var(--ink);color:#f5f5f4;font-family:var(--mono);background:#0b0b0c;border-radius:10px;position:relative;overflow:hidden}.pod-boot{z-index:2;background:#0b0b0c;flex-direction:column;justify-content:center;align-items:center;gap:4px;transition:opacity .5s;display:flex;position:absolute;inset:0}.pod-boot b{font-family:var(--font);letter-spacing:-.03em;font-size:22px}.pod-boot small{color:#a1a1aa;font-size:10px}.pod.booted .pod-boot{opacity:0;pointer-events:none}.pod-menu{margin:0;padding:26px 0 0;font-size:12.5px;list-style:none}.pod-menu:before{content:"OpenPod  ▮▮▮▯";color:#a1a1aa;border-bottom:1px solid #27272a;padding:4px 8px;font-size:9.5px;position:absolute;top:0;left:0;right:0}.pod-menu li{padding:6px 10px}.pod-menu li.on{color:#0b0b0c;background:#f5f5f4;font-weight:600}.pod-controls{flex:1;justify-content:center;align-items:center;gap:10px;display:flex}.pod-controls button{border:2.5px solid var(--ink);background:var(--paper);width:42px;height:42px;box-shadow:0 3px 0 var(--ink);border-radius:50%;font-size:12px;transition:transform .1s,box-shadow .1s}.pod-controls button[data-pod=ok]{width:52px;height:52px;color:var(--ink);background:#f97316}.pod-controls button:active{box-shadow:0 0 0 var(--ink);transform:translateY(3px)}.terminal{border:var(--stroke) solid var(--ink);color:#e7e5e4;box-shadow:0 5px 0 var(--ink);background:#141414;border-radius:16px;overflow:hidden}.term-bar{font-family:var(--mono);color:#a3a3a3;background:#262626;align-items:center;gap:6px;padding:10px 12px;font-size:12px;display:flex}.term-bar i{background:#ef4444;border-radius:50%;width:11px;height:11px}.term-bar i:nth-child(2){background:#f59e0b}.term-bar i:nth-child(3){background:#22c55e}.term-bar span{margin-left:8px}.terminal pre{min-height:270px;font-family:var(--mono);white-space:pre-wrap;margin:0;padding:16px 18px;font-size:13px;line-height:1.6}.terminal .c-ok{color:#86efac}.terminal .c-acc{color:#fcc48b}.terminal .c-dim{color:#737373}.terminal .c-err{color:#fca5a5}.cursor{vertical-align:text-bottom;background:#e7e5e4;width:8px;height:1.1em;animation:1s step-end infinite caret;display:inline-block}@keyframes caret{50%{opacity:0}}.lab-mini{border:var(--stroke) solid var(--ink);background:var(--paper);box-shadow:0 5px 0 var(--ink);transition:transform .25s var(--ease-out);border-radius:22px;padding:22px}.lab-mini:hover{transform:translateY(-4px)rotate(-.6deg)}.lab-mini h3{letter-spacing:-.02em;margin:14px 0 6px;font-size:21px}.lab-mini p{color:var(--ink-2);margin:0;font-size:15px}.mini-key{border:var(--stroke) solid var(--ink);background:var(--c);width:52px;height:52px;box-shadow:0 4px 0 var(--ink);border-radius:14px;place-items:center;font-size:24px;display:inline-grid}.about-grid{grid-template-columns:.8fr 1.2fr;align-items:center;gap:clamp(32px,6vw,88px);display:grid}.blob{aspect-ratio:1;border:var(--stroke) solid var(--ink);box-shadow:0 8px 0 var(--ink);background:#f9a8a8;border-radius:42% 58% 55% 45%/50% 42% 58% 50%;place-items:center;animation:9s ease-in-out infinite morph;display:grid}@keyframes morph{50%{border-radius:58% 42% 45% 55%/42% 58%}}.caption{text-align:center;font-family:var(--serif);color:var(--ink-2);margin:18px 0 0;font-size:20px;font-style:italic}.about-copy p a{font-weight:700}.stats{grid-template-columns:repeat(4,1fr);gap:12px;margin:30px 0 0;display:grid}.stats div{border:2.5px solid var(--ink);background:var(--paper);box-shadow:0 4px 0 var(--ink);border-radius:16px;padding:14px}.stats dt{letter-spacing:-.04em;font-size:clamp(30px,3.4vw,44px);font-weight:800;line-height:1}.stats dd{color:var(--ink-2);margin:6px 0 0;font-size:13px;line-height:1.3}.method{counter-reset:m;grid-template-columns:repeat(4,1fr);gap:18px;margin:0;padding:0;list-style:none;display:grid}.method li{padding-top:8px;position:relative}.method .mk{border:var(--stroke) solid var(--ink);background:var(--c);width:84px;height:84px;box-shadow:0 6px 0 var(--ink);border-radius:18px;place-items:center;margin-bottom:22px;font-size:36px;font-weight:700;transition:transform .12s,box-shadow .12s;display:grid}.method li.in .mk{animation:tap .5s var(--ease-out) both;animation-delay:calc(var(--i) * .25s + .3s)}@keyframes tap{40%{box-shadow:0 1px 0 var(--ink);transform:translateY(5px)}}.method h3{letter-spacing:-.02em;margin:0 0 8px;font-size:22px}.method h3 small{font-family:var(--mono);color:var(--muted);margin-right:6px;font-size:12px;font-weight:400}.method p{color:var(--ink-2);margin:0;font-size:15.5px}.method li:not(:last-child):after{content:"";border-top:2.5px dashed var(--ink);opacity:.35;position:absolute;top:50px;left:104px;right:6px}.keycaps{flex-wrap:wrap;gap:14px 12px;display:flex}.cap{border:var(--stroke) solid var(--ink);background:color-mix(in srgb, var(--c) 72%, #000 14%);box-shadow:0 5px 0 var(--ink);transition:transform .1s var(--ease-out), box-shadow .1s var(--ease-out);-webkit-tap-highlight-color:transparent;border-radius:14px;padding:0;position:relative}.cap span{border:2px solid var(--ink);background:linear-gradient(180deg, color-mix(in srgb, var(--c) 55%, #fff), var(--c));border-radius:10px;margin:3px 4px 9px;padding:10px 16px;font-size:16px;font-weight:700;transition:transform .1s;display:block}.cap:hover span{transform:translateY(-2px)}.cap:active,.cap.down{box-shadow:0 1px 0 var(--ink);transform:translateY(4px)}.timeline{gap:0;margin:0;padding:0;list-style:none;display:grid;position:relative}.timeline:before{content:"";background:var(--ink);transform-origin:top;width:3px;transform:scaleY(var(--p,0));border-radius:3px;position:absolute;top:10px;bottom:10px;left:92px}.timeline li{grid-template-columns:70px 44px 1fr;align-items:start;gap:0 22px;padding:0 0 36px;display:grid}.timeline .yr{font-family:var(--mono);text-align:right;padding-top:6px;font-size:15px;font-weight:600}.timeline .pin{border:var(--stroke) solid var(--ink);background:var(--c);width:44px;height:44px;box-shadow:0 4px 0 var(--ink);z-index:1;opacity:0;transition:transform .5s var(--ease-spring), opacity .3s;border-radius:12px;margin-left:-1.5px;position:relative;transform:scale(.4)rotate(-20deg)}.timeline li.in .pin{opacity:1;transform:none}.timeline h3{letter-spacing:-.02em;margin:4px 0 6px;font-size:24px}.timeline p{color:var(--ink-2);max-width:58ch;margin:0}.contact{padding-bottom:clamp(60px,8vw,100px)}.contact-card{background:var(--ink);color:var(--cream);box-shadow:0 10px 0 var(--accent);border-radius:36px;padding:clamp(28px,6vw,80px);position:relative;overflow:hidden}.contact-card h2{color:var(--cream);max-width:16ch}.contact-card em{color:#f9a8d4}.contact-card .lead{color:#c9c4b8;margin-top:20px}.contact-actions{grid-template-columns:auto 1fr;align-items:center;gap:clamp(24px,5vw,64px);margin-top:36px;display:grid}.big-enter{aspect-ratio:1.15;border:var(--stroke) solid var(--paper);width:clamp(180px,22vw,260px);box-shadow:0 10px 0 #000, 0 10px 0 2px var(--paper);transition:transform .12s var(--ease-out), box-shadow .12s var(--ease-out);color:var(--ink);background:#f3c83a;border-radius:24px;text-decoration:none;display:block}.big-enter-top{border:2.5px solid var(--ink);letter-spacing:-.03em;background:#fde68a;border-radius:18px;flex-direction:column;justify-content:space-between;height:76%;margin:6% 7% 0;padding:12%;font-size:clamp(22px,2.4vw,30px);font-weight:800;display:flex}.big-enter svg{fill:none;width:46%;stroke:var(--ink);stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round;align-self:flex-end}.big-enter:hover{transform:translateY(-3px)rotate(-2deg)}.big-enter:active{box-shadow:0 2px 0 #000, 0 2px 0 2px var(--paper);transform:translateY(8px)}.contact-links{margin:0;padding:0;list-style:none;display:grid}.contact-links a,.contact-links button{text-align:left;width:100%;color:var(--cream);background:0 0;border:0;border-bottom:1.5px solid #3a3833;align-items:baseline;gap:16px;padding:16px 0;text-decoration:none;display:flex}.contact-links span{font-family:var(--mono);text-transform:uppercase;color:#8f8a7e;flex:none;width:74px;font-size:12.5px}.contact-links b{letter-spacing:-.03em;transition:transform .3s var(--ease-out), color .2s;font-size:clamp(20px,2.4vw,30px)}.contact-links em{color:#8f8a7e;margin-left:auto;font-size:18px}.contact-links a:hover b,.contact-links button:hover b{color:#f9a8d4;transform:translate(8px)}.footer{padding:28px var(--gutter) 40px;border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:10px;max-width:1280px;margin:0 auto;font-size:14px;display:flex}.footer p{margin:0}.footer kbd{margin:0 1px;font-size:11px}.toast{z-index:90;background:var(--ink);color:var(--cream);box-shadow:0 5px 0 var(--accent);transition:transform .5s var(--ease-spring), visibility 0s .5s;pointer-events:none;text-align:center;visibility:hidden;border-radius:14px;max-width:calc(100% - 32px);padding:12px 20px;font-weight:600;position:fixed;bottom:24px;left:50%;transform:translate(-50%,calc(100% + 40px))}.toast.show{visibility:visible;transition-delay:0s;transform:translate(-50%)}.confetti{pointer-events:none;z-index:80;width:100%;height:100%;position:fixed;inset:0}@media (width<=1080px){.apps{grid-template-columns:repeat(2,1fr)}.method{grid-template-columns:repeat(2,1fr);gap:36px 18px}.method li:after{display:none}.stats{grid-template-columns:repeat(2,1fr)}}@media (width<=860px){.notch-grid,.lab,.lab-openpod,.about-grid{grid-template-columns:1fr}.mac{order:-1}.lab-grid{grid-template-columns:1fr}.about-portrait{width:100%;max-width:320px;margin:0 auto}.contact-actions{grid-template-columns:1fr}}@media (width<=560px){body{font-size:16px}.hero-title{font-size:8.4vw}.apps,.method{grid-template-columns:1fr}.key{border-width:2px}.key-top{border-width:1.5px}.key-label{display:none}.key-letter{font-size:8.4cqw}.timeline:before{left:22px}.timeline li{grid-template-columns:44px 1fr;gap:0 16px}.timeline .yr{text-align:left;color:var(--accent);order:-1;grid-column:2;padding:0}.timeline .pin{grid-area:1/1/span 3}.terminal pre{min-height:240px;font-size:11.5px}.contact-links span{width:62px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}.ribbon-track{animation:none}}.gh{gap:18px;display:grid}.gh-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.gh-profile{border:var(--stroke) solid var(--ink);background:var(--paper);box-shadow:0 5px 0 var(--ink);transition:transform .2s var(--ease-out), box-shadow .2s var(--ease-out);border-radius:22px;align-items:center;gap:16px;padding:10px 18px 10px 10px;text-decoration:none;display:flex}.gh-profile:hover{box-shadow:0 8px 0 var(--ink);transform:translateY(-3px)}.gh-avatar{border:2.5px solid var(--ink);background:var(--lilac);border-radius:16px;flex:none;width:64px;height:64px;overflow:hidden}.gh-avatar img{object-fit:cover;width:100%;height:100%}.gh-id{flex-direction:column;line-height:1.25;display:flex}.gh-id b{letter-spacing:-.02em;font-size:21px}.gh-id span{font-family:var(--mono);color:var(--ink-2);font-size:13px}.gh-follow{background:var(--ink);color:var(--cream);border-radius:10px;margin-left:10px;padding:6px 12px;font-size:14px;font-weight:700}.gh-status{font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.gh-status:before{content:"";background:var(--muted);border-radius:50%;width:9px;height:9px}.gh-status.is-live{color:var(--text)}.gh-status.is-live:before{background:#22c55e;animation:1.8s infinite live;box-shadow:0 0 #22c55e99}@keyframes live{70%{box-shadow:0 0 0 8px #22c55e00}to{box-shadow:0 0 #22c55e00}}.gh-stats{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.gh-stats div{border:2.5px solid var(--ink);background:var(--paper);box-shadow:0 4px 0 var(--ink);border-radius:16px;padding:14px 16px}.gh-stats b{letter-spacing:-.04em;font-size:clamp(28px,3vw,40px);font-weight:800;line-height:1;display:block}.gh-stats span{color:var(--ink-2);margin-top:6px;font-size:13px;line-height:1.3;display:block}.gh-card{border:var(--stroke) solid var(--ink);background:var(--paper);box-shadow:0 5px 0 var(--ink);border-radius:22px;min-width:0;padding:20px 22px}.gh-card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.gh-card-head h3{letter-spacing:-.02em;margin:0;font-size:19px}.gh-card-head a{font-size:14px;font-weight:700;text-decoration:none}.gh-card-head a:hover{color:var(--accent)}.gh-legend{font-family:var(--mono);color:var(--muted);align-items:center;gap:3px;font-size:11px;display:inline-flex}.gh-legend i{border:1px solid #00000014;border-radius:3px;width:11px;height:11px}.gh-legend i:first-child{margin-left:5px}.gh-legend i:last-child{margin-right:5px}.gh-graph{scrollbar-width:thin;padding-bottom:6px;overflow-x:auto}.gh-graph:focus-visible{outline-offset:6px}.gh-months,.gh-weeks{grid-auto-columns:minmax(11px,1fr);grid-auto-flow:column;gap:3px;min-width:690px;display:grid}.gh-months{font-family:var(--mono);color:var(--muted);height:14px;margin-bottom:6px;font-size:11px}.gh-months span{white-space:nowrap;width:0;overflow:visible}.gh-week{grid-template-rows:repeat(7,1fr);gap:3px;display:grid}.gh-week i{aspect-ratio:1;border:1px solid #0000000f;border-radius:3px;transition:transform .15s}.gh-week i.empty{visibility:hidden}.gh-week i:not(.empty):hover{border-color:var(--ink);z-index:1;position:relative;transform:scale(1.5)}.gh-done .gh-week{animation:none!important}.gh-in .gh-week{animation:gh-col .5s var(--ease-out) both;animation-delay:calc(var(--w) * 12ms)}@keyframes gh-col{0%{opacity:0;transform:translateY(6px)}}.gh-split{grid-template-columns:1.4fr 1fr;align-items:start;gap:18px;display:grid}.gh-side{gap:18px;display:grid}.gh-repos{grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:0;list-style:none;display:grid}.gh-repos a{border:2px solid var(--ink);background:var(--bg);height:100%;transition:transform .2s var(--ease-out), background .2s;border-radius:14px;flex-direction:column;gap:6px;padding:14px;text-decoration:none;display:flex}.gh-repos a:hover{background:#fff;transform:translateY(-3px)}.gh-repo-name{font-family:var(--mono);overflow-wrap:anywhere;font-size:14px;font-weight:600}.gh-repo-desc{color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13.5px;line-height:1.4;display:-webkit-box;overflow:hidden}.gh-repo-meta{color:var(--muted);flex-wrap:wrap;gap:4px 12px;margin-top:auto;font-size:12px;display:flex}.gh-repo-meta span{align-items:center;gap:5px;display:inline-flex}.gh-repo-meta i,.gh-langs i{border:1.5px solid var(--ink);border-radius:50%;width:10px;height:10px}.gh-langbar{border:2px solid var(--ink);border-radius:999px;height:16px;display:flex;overflow:hidden}.gh-langbar span+span{border-left:2px solid var(--ink)}.gh-langs{flex-wrap:wrap;gap:8px 16px;margin:14px 0 0;padding:0;font-size:14px;list-style:none;display:flex}.gh-langs li{align-items:center;gap:6px;display:inline-flex}.gh-langs b{font-family:var(--mono);color:var(--muted);font-size:12px;font-weight:400}.gh-feed{margin:0;padding:0;list-style:none;display:grid}.gh-feed li{border-bottom:1px dashed var(--line);grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:9px 0;font-size:14.5px;display:grid}.gh-feed li:last-child{border-bottom:0}.gh-feed a{font-family:var(--mono);font-size:13px;font-weight:600}.gh-feed a:hover{color:var(--accent)}.gh-feed time{color:var(--muted);white-space:nowrap;font-size:12px}.gh-ev-icon{border:2px solid var(--ink);background:var(--lilac);border-radius:8px;place-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:grid}@media (width<=1080px){.gh-split{grid-template-columns:1fr}.gh-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.gh-repos{grid-template-columns:1fr}.gh-card{padding:16px}.gh-follow,.gh-legend{display:none}}body:after{content:"";z-index:70;pointer-events:none;opacity:.07;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:1.2s steps(4,end) infinite grain;position:fixed;inset:-50%}@keyframes grain{25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-2%,-2%)}}.read-progress{z-index:75;transform-origin:0;pointer-events:none;background:linear-gradient(90deg,#f3a6cf,#c4b5fd,#93c5fd,#a7e8bd,#fde68a);height:4px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.tilt{transform-style:preserve-3d;will-change:transform;position:relative}.tilt.tilting{transition:transform 80ms linear, box-shadow .25s var(--ease-out)!important}.tilt:not(.tilting){transition:transform .6s var(--ease-spring), box-shadow .25s var(--ease-out)}.tilt-glare{z-index:5;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(circle at var(--gx,50%) var(--gy,50%), #ffffff8c, #fff0 45%);mix-blend-mode:soft-light;transition:opacity .35s;position:absolute;inset:0}.tilt.tilting .tilt-glare{opacity:1}.app,.lab-mini,.challenge,.frame-browser,.frame-shot,.stats div,.cs-stat,.gh-stats div{position:relative}.hero{isolation:isolate;position:relative}.floaters{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.cube{--s:74px;width:var(--s);height:var(--s);perspective:600px;translate:var(--px,0) var(--py,0);position:absolute}.cube-in{transform-style:preserve-3d;animation:18s linear infinite spin;position:absolute;inset:0}.cube i{font-style:normal;font-weight:800;font-size:calc(var(--s) * .42);border:2.5px solid var(--ink);background:var(--fc,#fff);color:var(--ink);backface-visibility:hidden;border-radius:18%;place-items:center;display:grid;position:absolute;inset:0}.cube .f0{transform:translateZ(calc(var(--s) / 2))}.cube .f1{transform:rotateY(180deg) translateZ(calc(var(--s) / 2))}.cube .f2{transform:rotateY(90deg) translateZ(calc(var(--s) / 2));filter:brightness(.92)}.cube .f3{transform:rotateY(-90deg) translateZ(calc(var(--s) / 2));filter:brightness(.92)}.cube .f4{transform:rotateX(90deg) translateZ(calc(var(--s) / 2));filter:brightness(1.05)}.cube .f5{transform:rotateX(-90deg) translateZ(calc(var(--s) / 2));filter:brightness(.85)}.c1{--s:84px;--fc:#c4b5fd;top:7%;right:9%}.c2{--s:56px;--fc:#fde68a;top:30%;right:30%}.c2 .cube-in{animation-duration:13s;animation-direction:reverse}.c3{--s:66px;--fc:#a7e8bd;bottom:20%;left:3%}.c3 .cube-in{animation-duration:22s}@keyframes spin{0%{transform:rotateX(-18deg)rotateY(0)rotate(6deg)}to{transform:rotateX(-18deg)rotateY(360deg)rotate(6deg)}}.orb{border:2.5px solid var(--ink);translate:var(--px,0) var(--py,0);border-radius:50%;position:absolute}.o1{background:#f3a6cf;width:26px;height:26px;top:12%;right:22%;box-shadow:inset -5px -6px #00000026}.o2{background:#93c5fd;width:16px;height:16px;top:6%;left:46%;box-shadow:inset -3px -4px #00000026}@media (width<=860px){.c2,.o2{display:none}.c1{--s:58px;top:3%;right:5%}.c3{--s:46px;bottom:26%}}@media (width<=560px){.floaters{display:none}}.keyboard-wrap{perspective:1400px}.keyboard{transform:rotateX(var(--krx,14deg)) rotateY(var(--kry,0deg)) rotateZ(var(--krz,0deg));transform-style:preserve-3d;transition:transform .1s linear}.keyboard:before{content:"";z-index:-1;filter:blur(8px);background:radial-gradient(60% 60% at 50% 60%,#16161629,#0000 70%);border-radius:28px;position:absolute;inset:-6% -4% -10%;transform:translateZ(-40px)}.k3{border:var(--stroke) solid var(--ink);height:clamp(340px,46vw,560px);box-shadow:0 10px 0 var(--ink);background:radial-gradient(70% 80% at 50% 0,#ffffffe6,#0000 70%),radial-gradient(#00000024 1.3px,#0000 1.4px) 0 0/24px 24px,linear-gradient(#efe9ff,#fdeef6 60%,#fff3e6);border-radius:32px;position:relative;overflow:hidden}.k3 canvas{cursor:grab;touch-action:pan-y;opacity:0;width:100%;height:100%;transition:opacity .8s;display:block}.k3.ready canvas{opacity:1}.k3-fallback{font-family:var(--mono);color:var(--ink-2);pointer-events:none;place-items:center;font-size:13px;transition:opacity .4s;display:grid;position:absolute;inset:0}.k3.ready .k3-fallback{opacity:0}.k3-tip{z-index:2;pointer-events:none;border:2.5px solid var(--ink);background:var(--paper);box-shadow:0 4px 0 var(--ink);white-space:nowrap;opacity:0;border-radius:14px;flex-direction:column;gap:2px;margin-top:-10px;padding:9px 14px;transition:opacity .2s;display:flex;position:absolute;top:0;left:0}.k3-tip:before{content:"";background:var(--c);border-radius:11px 0 0 11px;width:8px;position:absolute;top:0;bottom:0;left:0}.k3-tip b{letter-spacing:-.02em;padding-left:6px;font-size:17px}.k3-tip span{font-family:var(--mono);color:var(--ink-2);padding-left:6px;font-size:11.5px}.k3-tip.show{opacity:1}.k3-hint{font-family:var(--mono);color:var(--ink-2);pointer-events:none;white-space:nowrap;background:#ffffffb3;border:1.5px solid #16161626;border-radius:999px;margin:0;padding:4px 12px;font-size:12px;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.k3-hint span{animation:3s linear infinite spin-flat;display:inline-block}@keyframes spin-flat{to{transform:rotate(-360deg)}}.k3-list{flex-wrap:wrap;justify-content:center;gap:10px;margin:22px 0 0;padding:0;list-style:none;display:flex}.k3-list a{border:2px solid var(--ink);background:var(--paper);box-shadow:0 3px 0 var(--ink);transition:transform .15s var(--ease-out), background .2s;border-radius:12px;align-items:center;gap:8px;padding:6px 14px 6px 6px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.k3-list a b{border:1.5px solid var(--ink);background:var(--c);border-radius:7px;place-items:center;width:26px;height:26px;font-size:13px;display:grid}.k3-list a:hover,.k3-list a.on{background:color-mix(in srgb, var(--c) 35%, var(--paper));transform:translateY(-3px)}.k3-list a:active{box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}.mac{perspective:1600px;perspective-origin:50% 20%}.mac .nd-screen{transform-origin:50% 100%;transform:rotateX(calc(var(--lid,1) * -82deg));transition:transform .12s linear}.mac .nd-screen:after{content:"";z-index:9;pointer-events:none;background:linear-gradient(180deg, rgba(0, 0, 0, calc(var(--lid,1) * .85)), rgba(0, 0, 0, calc(var(--lid,1) * .6)));position:absolute;inset:0}@view-transition{navigation:auto}::view-transition-old(root){animation:vt-out .35s var(--ease-out) both}::view-transition-new(root){animation:vt-in .5s var(--ease-out) both}@keyframes vt-out{to{opacity:0;transform:translateY(-24px)scale(.98)}}@keyframes vt-in{0%{opacity:0;transform:translateY(32px)scale(.98)}}::view-transition-group(*){animation-duration:.55s;animation-timing-function:var(--ease-out)}.w{transform-origin:50% 100%;display:inline-block}.reveal .w{opacity:0;transform:perspective(500px)rotateX(-70deg)translateY(.3em)}.reveal.in .w{animation:word-in .7s var(--ease-out) both;animation-delay:calc(var(--wi) * 55ms + .1s)}@keyframes word-in{to{opacity:1;transform:none}}.keycaps.reveal{opacity:1;transform:none}.keycaps .cap{opacity:0}.keycaps.in .cap{animation:cap-drop .65s var(--ease-spring) both;animation-delay:calc(var(--i) * 45ms)}@keyframes cap-drop{0%{opacity:0;transform:translateY(-60px) rotateX(70deg) rotateZ(var(--r,-8deg))}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.reveal .w,.keycaps .cap{opacity:1!important;animation:none!important;transform:none!important}body:after{animation:none}.cube-in,.k3-hint span{animation:none!important}.keyboard,.mac .nd-screen{transform:none}.mac .nd-screen:after{display:none}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}}.theme-toggle{border:1.5px solid var(--ink);background:var(--paper);width:34px;height:30px;color:var(--text);box-shadow:0 2px 0 var(--ink);border-radius:9px;padding:0;transition:transform .12s;position:relative;overflow:hidden}.theme-toggle:active{box-shadow:0 0 0 var(--ink);transform:translateY(2px)}.theme-toggle span{transition:transform .45s var(--ease-spring), opacity .3s;place-items:center;font-size:16px;display:grid;position:absolute;inset:0}.tt-moon{opacity:0;transform:translateY(120%)rotate(-40deg)}html.dark .tt-sun{opacity:0;transform:translateY(-120%)rotate(40deg)}html.dark .tt-moon{opacity:1;transform:none}html.theme-anim,html.theme-anim body,html.theme-anim body *{transition:background-color .45s,color .45s,border-color .45s,fill .45s,stroke .45s!important}html.dark{--bg:#121110;--paper:#23211e;--text:#f1ece2;--ink:#050505;--ink-2:#bdb6a8;--muted:#8d8679;--line:#3a3630;--accent:#f472b6;--lilac:#2f2a47;--gh0:#2e2b27;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html.dark body:after{mix-blend-mode:screen;opacity:.045}html.dark .nav{background:color-mix(in srgb, var(--bg) 84%, transparent)}html.dark .sound-toggle{background:var(--paper);color:var(--text)}html.dark .sound-toggle .sound-bars i,html.dark .nav-links>a:not(.nav-cta):after{background:var(--text)}html.dark :focus-visible{outline-color:var(--accent)}html.dark :is(.key,.cap,.mini-key,.method .mk,.step-key,.eyebrow .num,.k3-list a b,.pager-key,.cs-key,.blob,.timeline .pin,.cube i,.gh-ev-icon,.ch-tag,.pd-av,.dd-seg button.on,.dd-state,.pd-off,.bd-node header,.bd-toolbar button span,.nd-file,.app-visual,.lab-mini .mini-key,.v-pin,.v-node b,.big-enter,.wd-angle){color:#161616;--ink-2:#4a4740;--muted:#6f695e}html.dark :is(.v-node,.v-pin){color:#161616;background:#fffdf8}html.dark .v-code{color:var(--cream);background:#161616}html.dark .wd-angle{background:color-mix(in srgb, var(--p) 55%, #fff)!important}html.dark .nd-file{background:#fffdf8}html.dark .btn{background:var(--paper);color:var(--text)}html.dark .btn-dark{background:var(--text);color:#161616;box-shadow:0 5px 0 var(--accent)}html.dark .btn-dark:hover{box-shadow:0 7px 0 var(--accent)}html.dark .gh-follow,html.dark .toast,html.dark .skip{background:var(--text);color:#161616}html.dark .ribbon{color:var(--text)}html.dark .ribbon-track b{color:var(--accent)}html.dark .lab-clavio{background:color-mix(in srgb, #a7e8bd 9%, var(--paper))}html.dark .lab-openpod{background:color-mix(in srgb, #c4b5fd 10%, var(--paper))}html.dark .lab-term{background:color-mix(in srgb, #fcc48b 8%, var(--paper))}html.dark .pk-white{color:#4a4740}html.dark .piano-progress{background:#3a3630}html.dark .pod-controls button{color:#161616;background:#e4e4e7}html.dark .gh-repos a:hover{background:color-mix(in srgb, var(--paper) 70%, #fff 6%)}html.dark .gh-legend i,html.dark .gh-week i{border-color:#ffffff0d}html.dark .k3{background:radial-gradient(70% 80% at 50% 0,#c4b5fd24,#0000 70%),radial-gradient(#ffffff12 1.3px,#0000 1.4px) 0 0/24px 24px,linear-gradient(#1d1a2b,#22171f 60%,#221b14)}html.dark .k3-hint{color:var(--ink-2);background:#00000073;border-color:#ffffff1f}html.dark .stats div,html.dark .gh-stats div{background:var(--paper)}html.dark .timeline:before,html.dark .journal:before{background:#4a463e}html.dark .method li:not(:last-child):after{border-color:var(--text);opacity:.3}html.dark .cs-meta{border-top-color:#4a463e}html.dark .cs-meta>div+div,html.dark .cs-meta>div:nth-child(2n){border-left-color:#f1ece233}html.dark .contact-card,html.dark .cs-next-card{border:2px solid var(--line);background:#0a0a09}html.dark .cs-next-card li{border-color:var(--line)}html.dark .terminal,html.dark .td,html.dark .frame-browser,html.dark .frame-phone,html.dark .frame-shot,html.dark .frame-image{box-shadow:0 0 0 1.5px #3a3630,0 8px #000}html.dark .orb{border-color:#050505}html.dark .keyboard:before{background:radial-gradient(60% 60% at 50% 60%,#0009,#0000 70%)}html.dark .mac .nd-screen{box-shadow:0 0 0 1.5px #3a3630}html.dark .mac-base{background:linear-gradient(#71717a,#3f3f46);border-color:#050505}html.dark .mac-base:after{background:#27272a}html.dark .cs-page .nav{background:color-mix(in srgb, color-mix(in srgb, var(--p) 8%, var(--bg)) 86%, transparent)}html.dark .cs-hero{background:radial-gradient(color-mix(in srgb, var(--p) 22%, transparent) 1.2px, transparent 1.3px) 0 0 / 22px 22px, color-mix(in srgb, var(--p) 10%, var(--bg));border-bottom-color:#050505}html.dark .cs-page em{color:var(--p)}html.dark .cs-stat:nth-child(odd){background:color-mix(in srgb, var(--p) 16%, var(--paper))}html.dark :is(.cs-prose,.cs-steps,.challenge) code{color:var(--text);background:color-mix(in srgb, var(--p) 18%, var(--paper));border-color:#f1ece21f}html.dark .demo{background:radial-gradient(color-mix(in srgb, var(--p) 16%, transparent) 1.2px, transparent 1.3px) 0 0 / 20px 20px, color-mix(in srgb, var(--p) 7%, var(--bg))}html.dark .diagram-card{background:radial-gradient(#ffffff12 1.2px, transparent 1.3px) 0 0 / 20px 20px, var(--paper)}html.dark .d-edge{stroke:#d6d0c4}html.dark .d-edge.thick{stroke:var(--p)}html.dark .d-arrow{fill:#d6d0c4}html.dark .d-elabel rect{fill:#2f2c28;stroke:#d6d0c4}html.dark .d-elabel text{fill:var(--text)}html.dark .d-sub{fill:#4a4740}html.dark .fb-bar{background:#2f2c28}html.dark .ch-tag.bad{background:#fca5a5}html.dark .ch-tag.good{background:#86efac}html.dark .pd-switch span,html.dark .pd-bar,html.dark .dd-ring circle{stroke:#3a3630;background:#3a3630}html.dark .pd-switch input:checked+span{background:#22c55e}html.dark .pd-row.host{background:#0a0a09}html.dark .hs-life{border-left-color:#ffffff2e}html.dark .hs-msg path{stroke:#d6d0c4}html.dark .hs-arrows marker path{fill:#d6d0c4}html.dark .hs-msg rect{fill:#2f2c28;stroke:#d6d0c4}html.dark .hs-msg.last rect{fill:var(--p)}html.dark .hs-msg text{fill:var(--text)}html.dark .hs-msg.last text{fill:#161616}html.dark .hs-srv{color:var(--text);background:#3a3630}html.dark .bd-canvas{background:radial-gradient(#ffffff1a 1.3px,#0000 1.4px) 0 0/22px 22px,#1b1a17}html.dark .bd-body button{background:var(--bg)}html.dark .bd-body [contenteditable]:focus{background:#3a3326}html.dark .dd-pipe{background:repeating-linear-gradient(90deg, transparent 0 18px, #ffffff0d 18px 20px), var(--paper)}html.dark .dd-gauge,html.dark .dd-stats div{background:var(--bg)}html.dark .nd-tour:hover{color:#161616;background:#ddd6fe}@media (prefers-reduced-motion:reduce){html.theme-anim body *{transition:none!important}}html.dark .dd-ring em,html.dark .fd-head .btn{color:var(--text)}html.dark .feature-list li:before{background:#c4b5fd}html.dark .gh-ev-icon{background:#ddd6fe}html.dark :is(.theme-toggle,.sound-toggle){border-color:#4a463e;box-shadow:0 2px #000}html.dark .island-tabs button,html.dark .nd-tour{border-color:#4a463e}.signature{letter-spacing:0;padding:0 .12em 0 0;font-family:Mrs Saint Delafield,Brush Script MT,cursive;font-size:2.05em;font-style:normal;font-weight:400;line-height:.7;display:inline-block;transform:rotate(-4deg)translateY(.08em);color:inherit!important}
