@font-face{font-family:Uncut Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/uncut-sans-latin-400-normal-Bh4SDAJ9.woff2) format("woff2"),url(/assets/uncut-sans-latin-400-normal-DDpABNsP.woff) format("woff")}@font-face{font-family:Uncut Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/uncut-sans-latin-600-normal-D7n88xVk.woff2) format("woff2"),url(/assets/uncut-sans-latin-600-normal-DuWPV3LV.woff) format("woff")}@font-face{font-family:Uncut Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/uncut-sans-latin-700-normal-BFLYO-JK.woff2) format("woff2"),url(/assets/uncut-sans-latin-700-normal-CUg-0Xs8.woff) format("woff")}@font-face{font-family:Commit Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/commit-mono-latin-400-normal-wzhe4RuD.woff2) format("woff2"),url(/assets/commit-mono-latin-400-normal-s0S3qwFW.woff) format("woff")}@font-face{font-family:Commit Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/commit-mono-latin-500-normal-5uPfnx7h.woff2) format("woff2"),url(/assets/commit-mono-latin-500-normal-DSlnSK8M.woff) format("woff")}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-serif-4-latin-400-normal-DJ5YJwmz.woff2) format("woff2"),url(/assets/source-serif-4-latin-400-normal-Dn3IlU-Z.woff) format("woff")}@font-face{font-family:"Source Serif 4";font-style:italic;font-display:swap;font-weight:400;src:url(/assets/source-serif-4-latin-400-italic-0j97Jm6B.woff2) format("woff2"),url(/assets/source-serif-4-latin-400-italic-Dv9jnFA_.woff) format("woff")}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-serif-4-latin-600-normal-DouSKlru.woff2) format("woff2"),url(/assets/source-serif-4-latin-600-normal-DMD1h6_f.woff) format("woff")}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Uncut Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:Commit Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--bg-base: #ffffff;--bg-grouped: #f2f2f7;--bg-elevated: #ffffff;--label: #000000;--label-secondary: rgba(60, 60, 67, .84);--label-tertiary: rgba(60, 60, 67, .3);--separator: rgba(60, 60, 67, .29);--fill-tertiary: rgba(118, 118, 128, .12);--fill-quaternary: rgba(116, 116, 128, .08);--tint: #0071e3;--gutter: 1rem;--r-group: 10px;--r-sheet: 12px;--r-pill: 980px;--tap: 44px;--spring-curve: linear( 0, .0454, .1499, .2791, .4114, .5345, .6423, .7326, .8054, .8625, .906, .9382, .9615, .9777, .9887, .9958, 1.0002, 1.0026, 1.0038, 1.0041, 1.0039, 1.0035, 1.003, 1.0025, 1.002 );--wp-1: #3b5fd9;--wp-2: #c41e63;--wp-3: #1e7a63;--wp-4: #1a5c99;--pass-1: #3b5fd9;--pass-2: #c41e63;--pass-3: #1e7a63;--pass-4: #1a5c99;--wallpaper: radial-gradient(75% 60% at 12% 8%, color-mix(in oklab, var(--wp-1) 70%, var(--bg-base)) 0%, transparent 74%), radial-gradient(70% 72% at 92% 20%, color-mix(in oklab, var(--wp-2) 64%, var(--bg-base)) 0%, transparent 74%), radial-gradient(85% 62% at 16% 92%, color-mix(in oklab, var(--wp-3) 62%, var(--bg-base)) 0%, transparent 76%), radial-gradient(80% 72% at 88% 94%, color-mix(in oklab, var(--wp-4) 68%, var(--bg-base)) 0%, transparent 74%), radial-gradient(100% 80% at 50% 50%, color-mix(in oklab, var(--wp-4) 34%, var(--bg-base)) 0%, transparent 100%);color-scheme:light}.dark{--wp-1: #7ea6ff;--wp-2: #ff6ea0;--wp-3: #4fc9a6;--wp-4: #64aef0;--bg-base: #000000;--bg-grouped: #000000;--bg-elevated: #1c1c1e;--label: #ffffff;--label-secondary: rgba(235, 235, 245, .72);--label-tertiary: rgba(235, 235, 245, .3);--separator: rgba(84, 84, 88, .65);--fill-tertiary: rgba(118, 118, 128, .24);--fill-quaternary: rgba(118, 118, 128, .18);--tint: #0a84ff;color-scheme:dark}@media (min-width: 768px){:root{--gutter: 1.5rem}}html{scroll-behavior:smooth;scroll-padding-top:6rem;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-grouped)}body{background-color:var(--bg-grouped);font-size:1.0625rem;line-height:1.47;color:var(--label);font-family:Uncut Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a,button,[role=button]{touch-action:manipulation;-webkit-tap-highlight-color:transparent}h1,h2,h3,h4{font-weight:600;text-wrap:balance}p{text-wrap:pretty}::-moz-selection{background:var(--tint);color:#fff}::selection{background:var(--tint);color:#fff}:focus-visible{outline:2px solid var(--tint);outline-offset:3px;border-radius:4px}a,button,[style*=--tint]{transition:color .4s,background-color .4s,border-color .4s}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.page{margin-left:auto;margin-right:auto;width:100%;max-width:44rem;padding-inline:var(--gutter)}.list-group{overflow:hidden;border-radius:var(--r-group);background-color:var(--bg-elevated)}.list-row{position:relative;display:flex;min-height:var(--tap);width:100%;align-items:center;gap:1rem;padding:.75rem 1rem;text-align:left;transition:background-color .16s var(--spring-curve)}.list-group>*,.disclosure-body>*{position:relative}.list-group>*+*:before,.disclosure-body>*:before{content:"";position:absolute;inset-inline:var(--row-inset, 1rem) 0;top:0;height:1px;background:var(--separator);transform:scaleY(.5);transform-origin:top}.list-group>.list-row-inset,.list-group>*:has(>.list-row-inset){--row-inset: 4.25rem}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.list-group summary .chevron{transition:transform .3s var(--spring-curve)}.list-group details[open]>summary .chevron{transform:rotate(90deg)}.nav-link{transition:color .16s var(--spring-curve)}.eyebrow{padding-left:1rem;padding-right:1rem;padding-bottom:.5rem;font-family:Commit Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem;line-height:1.3;font-weight:500;text-transform:uppercase;color:var(--label-secondary);letter-spacing:.06em}.app-icon{flex-shrink:0;-o-object-fit:cover;object-fit:cover;border-radius:22.37%}@supports (corner-shape: squircle){.app-icon{corner-shape:squircle;border-radius:45%}}@supports selector(::details-content){.list-group details::details-content{opacity:0;overflow:hidden;transition:opacity .24s var(--spring-curve),content-visibility .4s var(--spring-curve) allow-discrete}.list-group details[open]::details-content{opacity:1;transition-delay:.1s,0ms}.disclosure-body{min-height:0;overflow:hidden}}@supports (interpolate-size: allow-keywords){:root{interpolate-size:allow-keywords}.list-group details::details-content{height:0;transition:height .4s var(--spring-curve),opacity .24s var(--spring-curve),content-visibility .4s var(--spring-curve) allow-discrete}.list-group details[open]::details-content{height:auto;transition-delay:0ms,.1s,0ms}}@supports selector(::details-content) and (not (interpolate-size: allow-keywords)){.list-group details::details-content{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--spring-curve),opacity .24s var(--spring-curve),content-visibility .4s var(--spring-curve) allow-discrete}.list-group details[open]::details-content{grid-template-rows:1fr;transition-delay:0ms,.1s,0ms}}.chevron{flex-shrink:0;color:var(--label-tertiary)}.badge{display:inline-flex;align-items:center;border-radius:var(--r-pill);padding:.125rem .5rem;font-family:Commit Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem;line-height:1.3;font-weight:500;text-transform:uppercase;letter-spacing:.04em;background:var(--fill-quaternary);color:var(--label-secondary)}.btn-tint{display:inline-flex;min-height:var(--tap);align-items:center;justify-content:center;gap:.5rem;border-radius:var(--r-pill);padding-left:1.25rem;padding-right:1.25rem;font-size:1.0625rem;line-height:1.3;font-weight:600;background:var(--tint);color:#fff}.btn-plain{display:inline-flex;min-height:var(--tap);align-items:center;gap:.5rem;font-size:1.0625rem;line-height:1.3;font-weight:600;color:var(--tint)}.prose{font-family:"Source Serif 4",Iowan Old Style,Charter,Georgia,serif;font-size:1.125rem;line-height:1.65;max-width:62ch;min-width:0;color:var(--label);text-wrap:pretty;hanging-punctuation:first;font-feature-settings:"onum","pnum","kern"}@media (min-width: 768px){.prose{font-size:1.1875rem}}.prose>*+*{margin-top:1em}.prose h2,.prose h3,.prose h4{font-family:Uncut Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-feature-settings:normal}.prose h2{font-size:1.25rem;line-height:1.25;font-weight:600;margin-top:2em}.prose h3{font-size:1.0625rem;line-height:1.3;font-weight:600;margin-top:1.75em}.prose h4{font-size:1.0625rem;line-height:1.3;font-weight:600;color:var(--label-secondary);margin-top:1.5em}.prose h2+*,.prose h3+*,.prose h4+*{margin-top:.5em}.prose>:first-child{margin-top:0}.prose ol{list-style:decimal;padding-left:1.5em}.prose ol::marker,.prose li::marker{color:var(--label-secondary);font-variant-numeric:tabular-nums}.prose ul{list-style:none}.prose li+li{margin-top:.5em}.prose ul>li{display:flex;gap:.75em}.prose ul>li>[aria-hidden]{margin-top:.7em;width:.3em;height:.3em;flex-shrink:0;border-radius:var(--r-pill);background:var(--tint)}.prose blockquote{padding-left:1.25em;border-left:1px solid var(--separator);font-style:italic}.prose a{color:var(--tint);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.16em}.prose a,.prose code{overflow-wrap:anywhere}.prose strong{font-weight:600}.prose code{border-radius:.25rem;font-family:Commit Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em;padding:.1em .35em;background:var(--fill-quaternary)}.prose pre{overflow-x:auto;border-radius:var(--r-sheet);font-family:Commit Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem;letter-spacing:.02em;padding:.75rem;background:var(--fill-quaternary);line-height:1.5}.prose pre code{font-size:inherit;padding:0;background:none}.prose hr{border:0;height:1px;margin-block:2em;background:var(--separator)}.stack-chip{display:inline-flex;align-items:center;gap:.375rem;border-radius:var(--r-pill);font-family:Commit Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9375rem;line-height:1.4;min-height:2.25rem;padding-inline:.25rem}.stack-chip-button{padding-inline:.75rem;background:var(--fill-quaternary);color:var(--label);transition:background-color .16s var(--spring-curve),color .16s var(--spring-curve)}.stack-chip-button:hover{background:var(--fill-tertiary)}.stack-chip-button[aria-pressed=true]{background:var(--tint);color:#fff}.stack-chip-count{font-size:.8em;color:var(--label-secondary);font-variant-numeric:tabular-nums}.stack-chip-button[aria-pressed=true] .stack-chip-count{color:#ffffffc7}.stack-use{display:inline-flex;min-height:var(--tap);align-items:center;gap:.5rem;color:var(--label);text-decoration:none}.stack-use:hover{color:var(--tint)}.wallet{display:flex;flex-direction:column;padding-top:4px}.pass{position:relative;border-radius:var(--r-sheet);background:var(--bg-elevated);box-shadow:0 -1px color-mix(in srgb,#fff 18%,transparent),0 -6px 16px color-mix(in srgb,#000 10%,transparent);overflow:hidden;transition:transform .16s var(--spring-curve)}.dark .pass{box-shadow:0 -1px color-mix(in srgb,#fff 10%,transparent),0 -6px 16px color-mix(in srgb,#000 40%,transparent)}@media (hover: hover){.pass:not([data-open]):hover{transform:translateY(-4px)}}.pass-head{display:flex;width:100%;flex-direction:column;gap:.25rem;min-height:5.25rem;padding:.75rem 1rem 1.75rem;text-align:left;background:var(--pass);color:#fff}.pass[data-open] .pass-head{padding-bottom:.75rem;min-height:4.25rem}.pass-meta{display:flex;justify-content:space-between;font-family:Commit Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem;line-height:1.3;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:#ffffffd1}.pass-title{font-size:1.0625rem;line-height:1.3;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pass-body{overflow:hidden}.pass-link{display:flex;min-height:var(--tap);align-items:center;gap:.75rem;padding-left:1rem;padding-right:1rem;font-size:1.0625rem;line-height:1.47;height:56px;color:var(--tint);text-decoration:none}.pass-link>:first-child{flex:1}.hero{margin-left:auto;margin-right:auto;width:100%}.hero-grid{display:grid;grid-template-areas:"screen" "text";row-gap:3rem}.hero-text{grid-area:text}.hero-screen{grid-area:screen;position:relative;perspective:1400px}.screen{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;container-type:inline-size;color:var(--label);background:var(--bg-base);min-height:100dvh;padding-top:calc(env(safe-area-inset-top) + 5.25rem);padding-bottom:calc(env(safe-area-inset-bottom) + 1.5rem)}.wallpaper{position:absolute;top:-12%;right:-12%;bottom:-12%;left:-12%;z-index:-1;background:var(--wallpaper),var(--bg-base)}.wallpaper:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.16;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.dark .wallpaper:after{opacity:.22}.status-bar,.island,.phone-glow{display:none}.springboard{display:grid;grid-template-columns:repeat(4,15.3cqw);-moz-column-gap:8.4cqw;column-gap:8.4cqw;row-gap:5.5cqw;justify-content:center;align-content:start;padding-inline:6.9cqw;padding-bottom:10cqw}.widget{display:flex;flex-direction:column;justify-content:space-between;min-width:0;overflow:hidden;padding:3.8cqw 4.2cqw;border-radius:5.6cqw;background:color-mix(in srgb,var(--bg-elevated) 74%,transparent);backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);box-shadow:inset 0 0 0 .5px color-mix(in srgb,var(--label) 8%,transparent),0 1cqw 3cqw color-mix(in srgb,#000 8%,transparent);color:var(--label);text-align:left}.widget-small{grid-column:span 2;height:39cqw}.widget-medium{grid-column:span 4;height:39cqw}.widget-eyebrow{font-family:Commit Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:500;text-transform:uppercase;color:var(--label-secondary);font-size:max(10px,2.6cqw);letter-spacing:.06em;line-height:1.2}.widget-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:max(13px,3.6cqw);font-weight:600;line-height:1.25;letter-spacing:-.01em}.widget-caption{font-size:max(11px,3cqw);line-height:1.3;color:var(--label-secondary)}.widget-figure{font-size:12cqw;font-weight:700;line-height:.95;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.widget-code{font-family:Commit Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:max(9.5px,2.75cqw);line-height:1.5;white-space:pre;overflow:hidden;color:var(--label)}.widget-code .kw{color:var(--tint)}.widget-code .ty{color:var(--label);font-weight:500}.widget-code .mb{color:var(--label-secondary)}.sb-tile{display:flex;flex-direction:column;align-items:center;gap:1.6cqw;min-width:0;color:var(--label);text-decoration:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sb-tile-wrap{min-width:0}.sb-tile-wrap[data-lifted]{position:relative;z-index:6}.app-preview{position:absolute;z-index:8;display:flex;flex-direction:column;gap:2.4cqw;padding:3.6cqw;border-radius:5.6cqw;background:color-mix(in srgb,var(--bg-elevated) 82%,transparent);backdrop-filter:blur(30px) saturate(1.5);-webkit-backdrop-filter:blur(30px) saturate(1.5);box-shadow:inset 0 0 0 .5px color-mix(in srgb,var(--label) 8%,transparent),0 3cqw 8cqw color-mix(in srgb,#000 22%,transparent);color:var(--label);text-align:left}.app-preview-head{display:flex;flex-wrap:wrap;align-items:center;gap:1.2cqw 2cqw}.app-preview-title{font-size:max(14px,4cqw);font-weight:600;line-height:1.2;letter-spacing:-.01em}.app-preview-head .badge{font-size:max(9px,2.4cqw);padding-block:.4cqw}.app-preview-body{flex-basis:100%;font-size:max(12px,3.1cqw);line-height:1.35;color:var(--label-secondary)}.app-preview-rows{display:flex;flex-direction:column;margin-inline:-3.6cqw;margin-bottom:-3.6cqw;border-top:.5px solid var(--separator)}.app-preview-row{display:flex;align-items:center;justify-content:space-between;gap:2cqw;min-height:11cqw;padding:2cqw 3.6cqw;font-size:max(13px,3.4cqw);font-weight:500;color:var(--label);text-decoration:none;transition:background-color .16s var(--spring-curve)}.app-preview-row+.app-preview-row{border-top:.5px solid var(--separator)}.app-preview-row:hover{background:var(--fill-quaternary)}.app-preview-row svg{width:4.2cqw;height:4.2cqw;color:var(--label-secondary)}.sb-tile .app-icon,.sb-folder-face{width:15.3cqw;height:15.3cqw;box-shadow:0 .6cqw 1.6cqw color-mix(in srgb,#000 18%,transparent)}.sb-label{max-width:22cqw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:max(11px,2.8cqw);line-height:1.2;font-weight:500;letter-spacing:-.005em}.sb-folder-face{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2cqw;padding:2.2cqw;border-radius:22.37%;background:color-mix(in srgb,var(--bg-elevated) 55%,transparent);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4)}@supports (corner-shape: squircle){.sb-folder-face{corner-shape:squircle;border-radius:45%}}.sb-folder-face .app-icon{width:100%;height:100%;box-shadow:none}.screen-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;border:0;padding:0;cursor:default;background:color-mix(in srgb,var(--bg-base) 28%,transparent);backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2)}.sb-folder-panel{position:absolute;left:50%;top:50%;translate:-50% -50%;z-index:6;width:80cqw;padding:5cqw 5.5cqw 6cqw;border-radius:9cqw;display:flex;flex-direction:column;gap:5cqw;background:color-mix(in srgb,var(--bg-elevated) 72%,transparent);backdrop-filter:blur(30px) saturate(1.5);-webkit-backdrop-filter:blur(30px) saturate(1.5);box-shadow:inset 0 0 0 .5px color-mix(in srgb,var(--label) 8%,transparent),0 3cqw 8cqw color-mix(in srgb,#000 20%,transparent);outline:none}.sb-folder-title{text-align:center;font-size:max(13px,4cqw);font-weight:600;letter-spacing:-.01em}.sb-folder-grid{display:grid;grid-template-columns:repeat(3,15.3cqw);justify-content:space-between;row-gap:5cqw}.sb-folder-grid .sb-label{max-width:25cqw}.dock{display:flex;justify-content:space-evenly;align-items:center;margin:auto 4.6cqw 0;padding:3.8cqw 0;border-radius:9cqw;background:color-mix(in srgb,var(--bg-elevated) 42%,transparent);backdrop-filter:blur(30px) saturate(1.6);-webkit-backdrop-filter:blur(30px) saturate(1.6);box-shadow:inset 0 0 0 .5px color-mix(in srgb,var(--label) 8%,transparent)}.dock-tile{display:grid;place-items:center;width:15.3cqw;height:15.3cqw;border-radius:22.37%;color:#fff;box-shadow:0 .6cqw 1.6cqw color-mix(in srgb,#000 18%,transparent)}@supports (corner-shape: squircle){.dock-tile{corner-shape:squircle;border-radius:45%}}.dock-tile svg{width:52%;height:52%}.app-screen{min-height:0;aspect-ratio:393 / 852;padding:0}.app-rail{display:flex;scroll-snap-type:x var(--tw-scroll-snap-strictness);--tw-scroll-snap-strictness: mandatory;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}.app-rail::-webkit-scrollbar{display:none}.app-rail{position:absolute;top:0;right:0;bottom:0;left:0;scroll-behavior:smooth;outline:none}.app-rail:focus-visible{box-shadow:inset 0 0 0 2px var(--tint)}.app-frame{flex:0 0 100%;width:100%;height:100%;scroll-snap-align:start;scroll-snap-stop:always;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.app-dots{position:absolute;inset-inline:0;bottom:3cqw;z-index:2;display:flex;justify-content:center;gap:2.2cqw;padding:1.6cqw}.app-dot{width:2cqw;height:2cqw;padding:0;border:0;border-radius:var(--r-pill);background:#ffffff73;box-shadow:0 0 0 1.4cqw transparent;outline-offset:1.6cqw;transition:background-color .16s var(--spring-curve)}.app-dot[aria-selected=true]{background:#fff;box-shadow:0 0 0 .6cqw #0000002e}.app-launch{background:radial-gradient(80% 60% at 50% 30%,color-mix(in oklab,var(--tint) 55%,var(--bg-base)) 0%,transparent 75%),radial-gradient(90% 70% at 50% 100%,color-mix(in oklab,var(--tint) 30%,var(--bg-base)) 0%,transparent 80%),var(--bg-base)}.app-launch-body{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5cqw}.app-launch .app-launch-icon{width:32cqw;height:32cqw;box-shadow:0 3cqw 8cqw color-mix(in srgb,#000 25%,transparent)}.app-launch-name{font-size:max(14px,4.4cqw);font-weight:600;letter-spacing:-.01em;color:var(--label)}.project{margin-left:auto;margin-right:auto;width:100%}.project-phone{display:none}@media (min-width: 640px) and (max-width: 1023.98px){.hero-screen{margin-inline:auto;width:min(100%,30rem)}.screen{min-height:0;aspect-ratio:393 / 852;border-radius:var(--r-sheet)}}@media (max-width: 1023.98px){.hero{margin-top:-7rem}.widget-medium{height:36cqw}}@media (min-width: 1024px){.hero{max-width:72rem;padding-inline:var(--gutter)}.hero-grid{grid-template-areas:"screen text";grid-template-columns:minmax(0,26rem) minmax(0,1fr);-moz-column-gap:4.5rem;column-gap:4.5rem;align-items:center}.hero-screen{display:flex;justify-content:center}.phone{position:relative;isolation:isolate;width:clamp(280px,min(26vw,36dvh),390px);container-type:inline-size;will-change:transform;view-transition-name:phone}.project{display:grid;grid-template-columns:minmax(0,24rem) minmax(0,44rem);-moz-column-gap:4rem;column-gap:4rem;align-items:start;max-width:72rem;padding-inline:var(--gutter)}.project-phone{display:flex;justify-content:center;position:sticky;top:7rem}.project .phone{width:clamp(280px,min(22vw,34dvh),360px)}.project-body>.page{max-width:none;padding-inline:0}.phone-body{position:relative;padding:3.1cqw;border-radius:14.5cqw;background:#0b0b0c;box-shadow:inset 0 0 0 1px #ffffff17,inset 0 0 0 3px #1a1a1c,0 40px 80px -30px #0000008c}.phone-body:before,.phone-body:after{content:"";position:absolute;width:.9cqw;background:#161618;border-radius:.4cqw}.phone-body:before{left:-.9cqw;top:22cqw;height:9cqw;box-shadow:0 12cqw #161618}.phone-body:after{right:-.9cqw;top:28cqw;height:15cqw}.phone .screen{min-height:0;aspect-ratio:393 / 852;border-radius:11.5cqw;padding-top:0;padding-bottom:2.4cqw}.phone .island{display:block;position:absolute;left:50%;top:2.8cqw;width:32cqw;height:9.4cqw;transform:translate(-50%);border-radius:9999px;background:#000;z-index:2}.phone .status-bar{display:flex;align-items:center;justify-content:space-between;height:14cqw;padding:3.6cqw 8.6cqw 0;font-size:4.2cqw;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.phone .status-bar svg{width:4.6cqw;height:4.6cqw}.phone-glow{display:block;position:absolute;top:6%;right:12%;bottom:6%;left:12%;z-index:-1;border-radius:50%;background:var(--wallpaper);filter:blur(56px);opacity:calc(.5 * var(--glow, 1));pointer-events:none}.dark .phone-glow{opacity:calc(.45 * var(--glow, 1))}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.bottom-0{bottom:0}.top-\[max\(0\.75rem\,env\(safe-area-inset-top\)\)\]{top:max(.75rem,env(safe-area-inset-top))}.-z-10{z-index:-10}.z-50{z-index:50}.-mx-4{margin-left:-1rem;margin-right:-1rem}.-my-2{margin-top:-.5rem;margin-bottom:-.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-3{margin-top:.75rem;margin-bottom:.75rem}.ml-1{margin-left:.25rem}.mr-1\.5{margin-right:.375rem}.ms-1{margin-inline-start:.25rem}.ms-2{margin-inline-start:.5rem}.ms-3{margin-inline-start:.75rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.size-1{width:.25rem;height:.25rem}.size-1\.5{width:.375rem;height:.375rem}.size-24{width:6rem;height:6rem}.size-8{width:2rem;height:2rem}.size-\[1\.8cqw\]{width:1.8cqw;height:1.8cqw}.size-\[2cqw\]{width:2cqw;height:2cqw}.h-1{height:.25rem}.min-h-\[100dvh\]{min-height:100dvh}.min-h-tap{min-height:var(--tap)}.w-12{width:3rem}.w-9{width:2.25rem}.w-\[62\%\]{width:62%}.w-\[calc\(100\%\+2rem\)\]{width:calc(100% + 2rem)}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-tap{min-width:var(--tap)}.max-w-\[320px\]{max-width:320px}.max-w-\[9rem\]{max-width:9rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-crosshair{cursor:crosshair}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.snap-start{scroll-snap-align:start}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-10{gap:2.5rem}.gap-14{gap:3.5rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-\[1\.4cqw\]{gap:1.4cqw}.gap-\[1\.6cqw\]{gap:1.6cqw}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.gap-y-1\.5{row-gap:.375rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.overflow-hidden{overflow:hidden}.overscroll-contain{overscroll-behavior:contain}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.rounded{border-radius:.25rem}.rounded-pill{border-radius:var(--r-pill)}.rounded-sheet{border-radius:var(--r-sheet)}.rounded-t-sheet{border-top-left-radius:var(--r-sheet);border-top-right-radius:var(--r-sheet)}.border{border-width:1px}.border-t{border-top-width:1px}.border-separator{border-color:var(--separator)}.bg-bg-elevated{background-color:var(--bg-elevated)}.bg-black\/40{background-color:#0006}.bg-fill-tertiary{background-color:var(--fill-tertiary)}.bg-label-tertiary{background-color:var(--label-tertiary)}.bg-tint{background-color:var(--tint)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-4{padding:1rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-\[max\(var\(--gutter\)\,env\(safe-area-inset-left\)\)\]{padding-left:max(var(--gutter),env(safe-area-inset-left));padding-right:max(var(--gutter),env(safe-area-inset-left))}.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-0{padding-bottom:0}.pb-16{padding-bottom:4rem}.pb-24{padding-bottom:6rem}.pb-4{padding-bottom:1rem}.pb-\[env\(safe-area-inset-bottom\)\]{padding-bottom:env(safe-area-inset-bottom)}.pl-1{padding-left:.25rem}.pl-2{padding-left:.5rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-2{padding-top:.5rem}.pt-28{padding-top:7rem}.pt-4{padding-top:1rem}.font-mono{font-family:Commit Mono,ui-monospace,SFMono-Regular,Menlo,monospace}.text-body{font-size:1.0625rem;line-height:1.47}.text-caption{font-size:.8125rem;line-height:1.3;letter-spacing:.02em}.text-display{font-size:clamp(2.75rem,8vw,4.75rem);line-height:.95;letter-spacing:-.03em;font-weight:700}.text-footnote{font-size:.9375rem;line-height:1.4}.text-headline{font-size:1.0625rem;line-height:1.3;font-weight:600}.text-large{font-size:2.125rem;line-height:1.1;letter-spacing:-.02em;font-weight:700}.text-title-1{font-size:1.75rem;line-height:1.15;letter-spacing:-.01em;font-weight:600}.text-title-3{font-size:1.25rem;line-height:1.25;font-weight:600}.font-medium{font-weight:500}.font-normal{font-weight:400}.uppercase{text-transform:uppercase}.normal-case{text-transform:none}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.tracking-\[0\.06em\]{letter-spacing:.06em}.tracking-normal{letter-spacing:0em}.text-label{color:var(--label)}.text-label-secondary{color:var(--label-secondary)}.text-label-tertiary{color:var(--label-tertiary)}.text-tint{color:var(--tint)}.mix-blend-overlay{mix-blend-mode:overlay}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-2xl{--tw-backdrop-blur: blur(40px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-saturate-150{--tw-backdrop-saturate: saturate(1.5);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.measure{max-width:68ch}.enter{animation:enter 493ms var(--spring-curve) backwards}@keyframes enter{0%{opacity:0;transform:translateY(10px)}}.snap-rail{display:flex;scroll-snap-type:x var(--tw-scroll-snap-strictness);--tw-scroll-snap-strictness: mandatory;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}.snap-rail::-webkit-scrollbar{display:none}.\[animation-delay\:120ms\]{animation-delay:.12s}.\[animation-delay\:180ms\]{animation-delay:.18s}.\[animation-delay\:60ms\]{animation-delay:60ms}.nav-pill{view-transition-name:nav-pill}@media (max-width: 1023.98px){:root[data-nav=forward]::view-transition-old(root),:root[data-nav=forward]::view-transition-new(root),:root[data-nav=back]::view-transition-old(root),:root[data-nav=back]::view-transition-new(root){mix-blend-mode:normal}:root[data-nav=forward]::view-transition-old(root){animation:nav-push-under .42s var(--spring-curve)}:root[data-nav=forward]::view-transition-new(root){animation:nav-push-in .42s var(--spring-curve);box-shadow:-8px 0 32px #00000038}:root[data-nav=back]::view-transition-old(root){z-index:1;animation:nav-pop-out .42s var(--spring-curve);box-shadow:-8px 0 32px #00000038}:root[data-nav=back]::view-transition-new(root){animation:nav-pop-from-under .42s var(--spring-curve)}}@keyframes nav-push-in{0%{transform:translate(100%)}}@keyframes nav-push-under{to{transform:translate(-28%);opacity:.6}}@keyframes nav-pop-out{to{transform:translate(100%)}}@keyframes nav-pop-from-under{0%{transform:translate(-28%);opacity:.6}}:root.theme-reveal::view-transition-old(root),:root.theme-reveal::view-transition-new(root){animation:none;mix-blend-mode:normal;box-shadow:none}:root.theme-reveal::view-transition-old(root){z-index:0}:root.theme-reveal::view-transition-new(root){z-index:1;animation:theme-reveal .56s var(--spring-curve)}@keyframes theme-reveal{0%{clip-path:circle(0 at var(--reveal-x) var(--reveal-y))}to{clip-path:circle(var(--reveal-r) at var(--reveal-x) var(--reveal-y))}}:root.theme-reveal a,:root.theme-reveal button,:root.theme-reveal [style*=--tint]{transition:none}:root.theme-reveal .phone,:root.theme-reveal .nav-pill{view-transition-name:none}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}details::details-content{transition-duration:.01ms!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}.hover\:bg-fill-quaternary:hover{background-color:var(--fill-quaternary)}.hover\:text-label:hover{color:var(--label)}.focus-visible\:not-sr-only:focus-visible{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}.focus-visible\:absolute:focus-visible{position:absolute}.focus-visible\:left-4:focus-visible{left:1rem}.focus-visible\:top-4:focus-visible{top:1rem}.focus-visible\:z-\[60\]:focus-visible{z-index:60}.focus-visible\:rounded-pill:focus-visible{border-radius:var(--r-pill)}.focus-visible\:bg-bg-elevated:focus-visible{background-color:var(--bg-elevated)}.focus-visible\:px-4:focus-visible{padding-left:1rem;padding-right:1rem}.focus-visible\:py-3:focus-visible{padding-top:.75rem;padding-bottom:.75rem}.focus-visible\:text-headline:focus-visible{font-size:1.0625rem;line-height:1.3;font-weight:600}.dark\:opacity-40:is(.dark *){opacity:.4}@media (min-width: 640px){.sm\:line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.sm\:block{display:block}.sm\:hidden{display:none}.sm\:w-64{width:16rem}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:gap-6{gap:1.5rem}.sm\:p-5{padding:1.25rem}}@media (min-width: 1024px){.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}}
