@font-face{font-family:Geist;font-style:normal;font-weight:400 600;font-display:swap;src:url(/projects/wisp/geist-latin.woff2)format("woff2")}@font-face{font-family:Geist Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/projects/wisp/geist-mono-latin.woff2)format("woff2")}.wisp-page,.wisp-page[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#000;--hover:#ffffff12;--border:#ffffff17;--border-strong:#ffffff24;--border-hover:#ffffff3d;--fg:#ededed;--fg-muted:#a0a0a0;--fg-faint:#8f8f8f;--chip-bg:#ffffff12;--code-bg:#ffffff12;--code-border:#ffffff17;--focus:#47a8ff;--up:#00ac3a;--up-text:#00ca50;--up-bg:#002608;--primary:var(--fg);--primary-fg:var(--bg);--card-shadow:0 1px 2px #00000029;--popover-shadow:0 1px 1px #00000005, 0 4px 8px -4px #0000000a, 0 16px 24px -8px #0000000f;--surface:#0b0b0b;--surface-raised:#111;--fade:linear-gradient(to bottom, transparent, #000)}.wisp-page[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff;--hover:#0000000d;--border:#ebebeb;--border-strong:#eaeaea;--border-hover:#c9c9c9;--fg:#171717;--fg-muted:#4d4d4d;--fg-faint:#8f8f8f;--chip-bg:#f2f2f2;--code-bg:#fafafa;--code-border:#eaeaea;--focus:#006bff;--up:#28a948;--up-text:#107d32;--up-bg:#ecfdec;--card-shadow:0 2px 2px #0000000a;--surface:#fafafa;--surface-raised:#fff;--fade:linear-gradient(to bottom, transparent, #fff)}.wisp-page *{box-sizing:border-box;min-width:auto}.wisp-page{--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.4, .64, 1);--vw:1vw}@supports (animation-timing-function:linear(0, 1)){.wisp-page{--ease-spring:linear(0, .006, .025 2.8%, .101 6.1%, .539 18.9%, .721 25.3%, .849 31.5%, .937 38.1%, .968 41.8%, .991 45.7%, 1.006 50.1%, 1.015 55%, 1.017 63.9%, 1.001)}}html:has(#wisp-page){scroll-behavior:smooth;scrollbar-gutter:stable}.wisp-page::selection,.wisp-page ::selection{background:color-mix(in srgb, var(--focus) 32%, transparent)}.wisp-page{background:var(--bg);width:100%;min-width:320px;min-height:100vh;color:var(--fg);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Geist,Arial,sans-serif;font-size:14px;line-height:1.45;display:block;overflow-x:clip}.wisp-page button{color:inherit;font:inherit;cursor:pointer;border:0}.wisp-page button,.wisp-page a,.wisp-page summary{outline:none}.wisp-page button:focus-visible,.wisp-page a:focus-visible{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--focus)}.wisp-page a{color:inherit;text-decoration:none}.wisp-page p,.wisp-page h1,.wisp-page h2,.wisp-page h3,.wisp-page ul,.wisp-page ol,.wisp-page figure{margin:0}.wisp-page h1,.wisp-page h2,.wisp-page h3,.wisp-page h4,.wisp-page h5,.wisp-page h6{color:inherit;font-family:Geist,Arial,sans-serif;line-height:inherit;gap:normal;display:block}.wisp-page article{color:inherit;font:inherit}.wisp-page article p{text-wrap:wrap}.wisp-page ul,.wisp-page ol{padding:0;list-style:none}.wisp-page img{max-width:100%;height:auto;display:block}.wisp-page code{font-family:Geist Mono,ui-monospace,monospace;font-size:.92em}.wisp-page .skip-link{z-index:200;background:var(--primary);color:var(--primary-fg);opacity:0;pointer-events:none;border-radius:6px;padding:8px 12px;position:fixed;top:12px;left:12px}.wisp-page .skip-link:focus-visible{opacity:1;pointer-events:auto}.wisp-page .shell{width:min(1264px,100% - 72px);margin-inline:auto}.wisp-page .mono,.wisp-page .section-number,.wisp-page .app-kicker,.wisp-page .meta-heading,.wisp-page .price-chip{font-variant-numeric:tabular-nums;font-family:Geist Mono,ui-monospace,monospace}.wisp-page .site-header{z-index:110;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(20px)saturate(140%);backdrop-filter:blur(20px)saturate(140%);position:sticky;top:0}.wisp-page .site-header:after{background:linear-gradient(90deg, transparent 0%, color-mix(in srgb, var(--border) 70%, transparent) 50%, transparent 100%);content:"";opacity:0;height:1px;transition:opacity .3s;position:absolute;bottom:0;left:0;right:0}.wisp-page .site-header.scrolled:after{opacity:1}.wisp-page .nav{align-items:center;gap:42px;min-height:72px;display:flex}.wisp-page .brand{letter-spacing:-.02em;align-items:center;gap:10px;font-size:16px;font-weight:600;display:inline-flex}.wisp-page .app-icon{flex:none;width:26px;height:26px;display:inline-block;position:relative}.wisp-page .app-icon img{width:100%;height:100%;position:absolute;inset:0}.wisp-page .app-icon-large{width:128px;height:128px}.wisp-page[data-theme=dark] .app-icon-light,.wisp-page[data-theme=light] .app-icon-dark{display:none}.wisp-page .nav-links{color:var(--fg-muted);align-items:center;gap:28px;margin-left:auto;font-size:13px;display:flex}.wisp-page .nav-links a,.wisp-page .footer a,.wisp-page .text-link{color:var(--fg-muted);transition:color .15s}.wisp-page .nav-links a:hover,.wisp-page .footer a:hover,.wisp-page .text-link:hover{color:var(--fg)}.wisp-page .nav-links .menu-cta{display:none}.wisp-page .nav-actions{align-items:center;gap:8px;display:flex}.wisp-page .price-chip{background:var(--primary-fg);color:var(--primary);border-radius:999px;padding:2px 7px;font-size:11px;font-weight:500}.wisp-page .button,.wisp-page .icon-button{border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:40px;font-weight:500;transition:border-color .15s,background .15s,color .15s,opacity .15s,transform .15s;display:inline-flex}.wisp-page .button:active,.wisp-page .icon-button:active{transform:scale(.97)}.wisp-page .button svg,.wisp-page .icon-button svg{flex:none;width:16px;height:16px}.wisp-page .button{padding:0 16px}.wisp-page .button.primary{background:var(--primary);color:var(--primary-fg)}.wisp-page .button.primary:hover{opacity:.9}.wisp-page .button.secondary{border:1px solid var(--border-strong);background:var(--bg);color:var(--fg)}.wisp-page .button.secondary:hover,.wisp-page .icon-button:hover{border-color:var(--border-hover);background:var(--hover)}.wisp-page .button.full{width:100%}.wisp-page .nav-buy{min-height:36px;padding-inline:12px;font-size:13px}.wisp-page .icon-button{border:1px solid var(--border-strong);background:0 0;width:36px;min-height:36px;position:relative}.wisp-page .icon-button[data-tooltip]:after{z-index:20;border:1px solid var(--border-strong);background:var(--surface-raised);width:max-content;color:var(--fg);content:attr(data-tooltip);opacity:0;pointer-events:none;border-radius:6px;padding:5px 8px;font-size:11px;transition:opacity .15s,transform .15s;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%,-3px)}.wisp-page .icon-button[data-tooltip]:hover:after,.wisp-page .icon-button[data-tooltip]:focus-visible:after{opacity:1;transform:translate(-50%)}.wisp-page .menu-toggle{display:none}.wisp-page .text-link{align-items:center;gap:6px;font-weight:500;display:inline-flex}.wisp-page .arrow-icon{width:13px;height:13px;transition:transform .15s}.wisp-page .text-link:hover .arrow-icon{transform:translate(1px,-1px)}.wisp-page .theme-toggle-icon{transition:opacity .25s,transform .4s cubic-bezier(.2,.7,.2,1);position:absolute}.wisp-page[data-theme=dark] .icon-sun{opacity:1;transform:none}.wisp-page[data-theme=dark] .icon-moon{opacity:0;transform:rotate(-90deg)scale(.6)}.wisp-page[data-theme=light] .icon-sun{opacity:0;transform:rotate(90deg)scale(.6)}.wisp-page[data-theme=light] .icon-moon{opacity:1;transform:none}.wisp-page .menu-line{transform-box:fill-box;transform-origin:50%;transition:transform .25s}.wisp-page .menu-toggle[aria-expanded=true] .menu-line-top{transform:translateY(2.5px)rotate(45deg)}.wisp-page .menu-toggle[aria-expanded=true] .menu-line-bottom{transform:translateY(-2.5px)rotate(-45deg)}.wisp-page .eyebrow,.wisp-page .section-number,.wisp-page .app-kicker,.wisp-page .meta-heading{color:var(--fg-faint);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:500}.wisp-page .eyebrow{color:var(--fg-muted);align-items:center;gap:8px;display:inline-flex}.wisp-page .eyebrow .arrow-icon{width:12px;height:12px}.wisp-page h1{max-width:860px;font-size:clamp(62px, calc(9 * var(--vw,1vw)), 112px);letter-spacing:-.072em;margin-top:18px;font-weight:500;line-height:.91}.wisp-page .hero-headline{margin-top:18px;display:block}.wisp-page .hero-headline h1{margin-top:0}.wisp-page .lede{margin-top:28px;max-width:none;color:var(--fg-muted);font-size:clamp(18px, calc(2.2 * var(--vw,1vw)), 22px);letter-spacing:-.02em;margin-inline:auto;line-height:1.45}.wisp-page .hero-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:32px;display:flex}.wisp-page .hero-actions.centered{justify-content:center;margin-top:40px}.wisp-page .hero{padding-top:clamp(55px, calc(7.5 * var(--vw,1vw)), 95px);padding-bottom:clamp(80px, calc(10 * var(--vw,1vw)), 140px)}.wisp-page .hero-copy{text-align:center;max-width:920px;margin-inline:auto}.wisp-page .hero-copy h1{margin-inline:auto}.wisp-page .product-frame{border:1px solid var(--border-strong);background:var(--surface);box-shadow:var(--card-shadow);border-radius:12px;position:relative;overflow:hidden}.wisp-page .product-frame img{width:100%}.wisp-page .hero-shot{margin-top:96px}.wisp-page .shareware{gap:clamp(44px, calc(8 * var(--vw,1vw)), 120px);padding-block:clamp(72px, calc(9 * var(--vw,1vw)), 120px);scroll-margin-top:calc(95px - clamp(72px, calc(9 * var(--vw,1vw)), 120px));grid-template-columns:1.15fr 1fr;align-items:center;display:grid}.wisp-page .shareware-inner{max-width:640px}.wisp-page .shareware .price-card{width:100%;max-width:460px;margin-left:auto}.wisp-page .shareware-inner h2{font-size:clamp(32px, calc(4.4 * var(--vw,1vw)), 52px);letter-spacing:-.05em;margin-top:18px;font-weight:500;line-height:1.02}.wisp-page .shareware-inner>p:not(.section-number){max-width:560px;color:var(--fg-muted);font-size:clamp(18px, calc(2.1 * var(--vw,1vw)), 24px);letter-spacing:-.025em;margin-top:24px;line-height:1.4}.wisp-page .section-rule{border-top:1px solid color-mix(in srgb, var(--border) 50%, transparent)}.wisp-page .story{padding-block:clamp(110px, calc(15 * var(--vw,1vw)), 190px);scroll-margin-top:calc(95px - clamp(110px, calc(15 * var(--vw,1vw)), 190px))}.wisp-page .section-intro{gap:clamp(44px, calc(10 * var(--vw,1vw)), 130px);grid-template-columns:1fr 1fr;align-items:start;display:grid}.wisp-page .section-intro h2,.wisp-page .final-cta h2{max-width:540px;font-size:clamp(42px, calc(6 * var(--vw,1vw)), 72px);letter-spacing:-.058em;margin-top:18px;font-weight:500;line-height:.98}.wisp-page .section-intro>p{max-width:520px;color:var(--fg-muted);font-size:clamp(18px, calc(2.1 * var(--vw,1vw)), 24px);letter-spacing:-.025em;padding-top:34px;line-height:1.4}.wisp-page .feature-grid{margin-top:clamp(56px, calc(7 * var(--vw,1vw)), 96px);border:1px solid color-mix(in srgb, var(--border) 60%, transparent);border-radius:12px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.wisp-page .callout{border-right:1px solid color-mix(in srgb, var(--border) 60%, transparent);border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);background:var(--bg);padding:30px 28px 36px;transition:background .2s;position:relative}.wisp-page .callout:hover{background:var(--surface)}.wisp-page .callout-mark{width:28px;height:28px;color:var(--fg-faint);margin-bottom:26px;transition:color .2s,transform .3s cubic-bezier(.2,.7,.2,1);display:block}.wisp-page .callout:hover .callout-mark{color:var(--fg);transform:translateY(-2px)}.wisp-page kbd{border:1px solid var(--border-strong);background:var(--surface-raised);color:var(--fg);letter-spacing:0;vertical-align:.12em;white-space:nowrap;border-bottom-width:2px;border-radius:6px;padding:0 7px;font-family:Geist Mono,ui-monospace,monospace;font-size:.72em;font-weight:500;line-height:1.7;display:inline-block}.wisp-page .callout:nth-child(3n){border-right:0}.wisp-page .callout:nth-last-child(-n+3){border-bottom:0}.wisp-page .callout h3{letter-spacing:-.01em;font-size:15px;font-weight:500}.wisp-page .callout p{max-width:300px;color:var(--fg-muted);margin-top:10px;line-height:1.5}.wisp-page .split{gap:clamp(32px, calc(5 * var(--vw,1vw)), 72px);margin-top:clamp(56px, calc(7 * var(--vw,1vw)), 96px);grid-template-columns:1.25fr 1fr;align-items:center;display:grid}.wisp-page .split.reverse{grid-template-columns:1fr 1.25fr}.wisp-page .split-lead{margin-top:0}.wisp-page .split-copy .section-number{margin-bottom:18px}.wisp-page .split-copy h2{max-width:420px;font-size:clamp(34px, calc(3.6 * var(--vw,1vw)), 46px);letter-spacing:-.05em;font-weight:500;line-height:1.02}.wisp-page .split-lede{max-width:380px;color:var(--fg-muted);font-size:clamp(17px, calc(1.7 * var(--vw,1vw)), 20px);letter-spacing:-.02em;margin-top:18px;line-height:1.4}.wisp-page .split-copy h3{font-size:clamp(20px, calc(2.2 * var(--vw,1vw)), 26px);letter-spacing:-.03em;font-weight:500;line-height:1.15}.wisp-page .split-copy>p{color:var(--fg-muted);margin-top:14px;font-size:15px;line-height:1.55}.wisp-page .icon-list{gap:16px;margin-top:24px;display:grid}.wisp-page .icon-list li{color:var(--fg-muted);align-items:center;gap:14px;line-height:1.45;display:flex}.wisp-page .icon-list svg{fill:none;width:20px;height:20px;stroke:var(--fg);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex:none}.wisp-page .icon-list .sf-glyph{width:auto;height:20px;fill:var(--fg);stroke:none}.wisp-page .quick-features{grid-template-columns:repeat(3,1fr);gap:32px;margin-top:48px;display:grid}.wisp-page .quick svg,.wisp-page .quick-key{height:32px;color:var(--fg);align-items:center;display:inline-flex}.wisp-page .quick svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:30px}.wisp-page .quick .sf-glyph{fill:currentColor;stroke:none;width:auto;height:30px}.wisp-page .quick-key{border:1.5px solid var(--fg);border-radius:7px;padding:0 8px;font-family:Geist Mono,ui-monospace,monospace;font-size:15px;font-weight:500}.wisp-page .quick h3{letter-spacing:-.02em;margin-top:16px;font-size:20px;font-weight:500}.wisp-page .quick p{color:var(--fg-muted);margin-top:10px;font-size:15px;line-height:1.5}.wisp-page .tile-row{margin-top:clamp(56px, calc(7 * var(--vw,1vw)), 96px);grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.wisp-page .tile{--accent:var(--fg);--glass:#ffffff12;--glass-line:#ffffff1c;--tile-base:#0a0a0a;--mx:50%;--my:0%;background:radial-gradient(90% 60% at 20% 0%, color-mix(in srgb, var(--accent) 55%, transparent), transparent 70%), radial-gradient(80% 50% at 90% 10%, color-mix(in srgb, var(--accent) 30%, transparent), transparent 70%), linear-gradient(180deg, color-mix(in srgb, var(--accent) 26%, var(--tile-base)) 0%, color-mix(in srgb, var(--accent) 10%, var(--tile-base)) 55%, var(--tile-base) 100%);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 28%, #ffffff14), inset 0 1px 0 #ffffff1a, 0 30px 60px -40px #000c;color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;isolation:isolate;border-radius:24px;outline:none;flex-direction:column;display:flex;position:relative;overflow:hidden}.wisp-page .tile:before{z-index:2;border-radius:inherit;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 50%, #ffffff1f), 0 40px 70px -40px #000000d9;content:"";opacity:0;pointer-events:none;transition:opacity .22s var(--ease-out);position:absolute;inset:0}.wisp-page .tile[data-hover]:before,.wisp-page .tile:focus-visible:before{opacity:1}.wisp-page .tile:after{z-index:2;border-radius:inherit;background:radial-gradient(420px circle at var(--mx) var(--my), #ffffff09, transparent 70%);content:"";opacity:0;pointer-events:none;transition:opacity .4s;position:absolute;inset:0}.wisp-page .tile[data-hover]:after{opacity:1}.wisp-page .tile.deep{background:radial-gradient(90% 60% at 20% 0%, color-mix(in srgb, var(--accent) 75%, transparent), transparent 70%), radial-gradient(80% 50% at 90% 10%, color-mix(in srgb, var(--accent) 45%, transparent), transparent 70%), linear-gradient(180deg, color-mix(in srgb, var(--accent) 40%, var(--tile-base)) 0%, color-mix(in srgb, var(--accent) 18%, var(--tile-base)) 55%, var(--tile-base) 100%)}.wisp-page[data-theme=light] .tile{--glass:#ffffff8c;--glass-line:#0000001a;--tile-base:#f6f6f7;color:#1a1a1a;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 30%, #0000000f), 0 30px 60px -44px #0006}.wisp-page .tile-art{contain:layout paint;height:276px;transition:transform .22s var(--ease-out);flex:none;position:relative;overflow:hidden}.wisp-page .tile:active .tile-art{transition-duration:90ms;transform:scale(.995)}.wisp-page .glass{border:1px solid var(--glass-line);background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 14px 30px -20px #000000b3}.wisp-page .tile-copy{transition:transform .26s var(--ease-out);padding:2px 24px 26px}.wisp-page .tile[data-hover] .tile-copy{transform:translateY(-2px)}.wisp-page .tile-copy h3{color:var(--accent);letter-spacing:-.015em;align-items:center;gap:10px;font-size:17px;font-weight:500;display:flex}.wisp-page .tile-icon{background:var(--accent);color:#fff;border-radius:7px;flex:none;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex;box-shadow:inset 0 1px #ffffff40}.wisp-page .tile-icon svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.wisp-page .tile-copy p{color:#ffffff80;letter-spacing:0;margin-top:10px;font-size:14px;line-height:1.6}.wisp-page .tile-copy .tile-punch{color:inherit;margin-top:0}.wisp-page .art-wifi{align-items:center;display:flex}.wisp-page .wifi-pill{letter-spacing:-.03em;white-space:nowrap;border-radius:999px;flex:none;justify-content:space-between;align-items:center;width:104%;height:122px;padding:0 20px 0 52px;font-size:44px;font-weight:300;display:flex;transform:translate(-12%)}.wisp-page .wifi-toggle{background:#00000059;border-radius:999px;flex:none;width:148px;height:84px;position:relative;box-shadow:inset 0 0 0 1.5px #ffffff24,inset 0 4px 12px #0000004d}.wisp-page .wifi-toggle i{background:#fff;border-radius:999px;width:70px;height:70px;position:absolute;top:7px;left:7px;box-shadow:0 6px 16px #0006}.wisp-page .art-words{align-content:start;gap:10px;padding:22px 22px 0;display:grid;-webkit-mask-image:linear-gradient(#000 62%,#0000 100%);mask-image:linear-gradient(#000 62%,#0000 100%)}.wisp-page .words-add{border-radius:14px;gap:12px;padding:14px;display:grid}.wisp-page .words-title{font-size:15px;font-weight:500}.wisp-page .words-form{gap:10px;display:flex}.wisp-page .words-input{border:1.5px solid var(--accent);background:#00000040;border-radius:9px;flex:1;align-items:center;height:36px;padding:0 12px;font-size:14px;display:grid;overflow:hidden}.wisp-page .words-input>*{grid-area:1/1}.wisp-page .words-input-placeholder{color:#ffffff73}.wisp-page .words-input-text{color:#fff;opacity:0}.wisp-page .art-words{grid-auto-rows:max-content}.wisp-page .words-create{background:color-mix(in srgb, var(--accent) 55%, transparent);border-radius:9px;align-items:center;gap:6px;height:36px;padding:0 12px;font-size:14px;font-weight:500;display:inline-flex}.wisp-page .words-create b{opacity:.7;font-weight:400}.wisp-page .words-row{border-radius:12px;justify-content:space-between;align-items:center;height:46px;padding:0 14px;font-size:15px;display:flex}.wisp-page .words-row .trash{fill:none;width:16px;height:16px;stroke:color-mix(in srgb, var(--accent) 75%, #fff);stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;flex:none}.wisp-page[data-theme=light] .words-row .trash{stroke:color-mix(in srgb, var(--accent) 65%, #000)}.wisp-page .art-modes{align-items:center;padding-left:36px;display:flex}.wisp-page .modes-strip{white-space:nowrap;transform:translateX(calc(var(--strip-x,0px) + var(--peek,0px)));transition:transform .48s var(--ease-out);border-right:0;border-radius:22px 0 0 22px;gap:22px;padding:24px 28px;display:flex;position:relative}.wisp-page .mode-pill{z-index:0;background:var(--accent);opacity:0;pointer-events:none;border-radius:999px;height:28px;position:absolute;top:0;left:0}.wisp-page .mode{z-index:1;flex:none;justify-items:center;gap:12px;display:grid;position:relative}.wisp-page .mode-tile{color:#111;background:#d4d4d8;border-radius:24px;justify-content:center;align-items:center;width:92px;height:92px;transition:background .25s,transform .12s;display:inline-flex;position:relative;box-shadow:inset 0 1px #fff9}.wisp-page .mode-tile:before{border:2px solid var(--accent);content:"";opacity:0;transition:opacity .22s ease, transform .35s var(--ease-spring);border-radius:29px;position:absolute;inset:-5px;transform:scale(.92);box-shadow:inset 0 0 0 3px #111}.wisp-page .mode-tile svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:44px;height:44px}.wisp-page .mode.selected .mode-tile{background:#fff}.wisp-page .mode.selected .mode-tile:before{opacity:1;transform:none}.wisp-page .mode-label{color:#ffffffb3;white-space:nowrap;border-radius:999px;padding:4px 14px;font-family:Geist,Arial,sans-serif;font-size:15px;line-height:20px;transition:color .25s}.wisp-page .mode.selected .mode-label{color:#fff}.wisp-page .art-english{letter-spacing:-.03em;font-size:36px;font-weight:500;line-height:1.25;display:grid;-webkit-mask-image:linear-gradient(#000 55%,#0000 100%);mask-image:linear-gradient(#000 55%,#0000 100%)}.wisp-page .word-layer{flex-wrap:wrap;grid-area:1/1;align-content:flex-start;gap:4px 26px;padding:24px 22px 0;display:flex}.wisp-page .word-layer .w{transition:opacity .32s,text-shadow .32s}.wisp-page .art-english .w{white-space:nowrap;opacity:.45}.wisp-page .art-english .mono-w{letter-spacing:-.04em;font-family:Geist Mono,ui-monospace,monospace}.wisp-page .art-english .hi{opacity:1}.wisp-page .art-english .mid{opacity:.7}.wisp-page .art-english .accent{color:var(--accent);opacity:1}.wisp-page .art-paste{padding:22px 22px 0}.wisp-page .ghost-bubble{border-radius:16px;align-items:center;gap:10px;height:42px;margin-bottom:12px;padding:0 18px;display:flex}.wisp-page .ghost-bubble.b1{width:82%}.wisp-page .ghost-bubble.b2{width:62%}.wisp-page .ghost-bubble i{background:#ffffff4d;border-radius:3px;height:5px}.wisp-page .ghost-bubble i:first-child{width:44px}.wisp-page .ghost-bubble i:nth-child(2){width:30px}.wisp-page .ghost-bubble i:nth-child(3){width:52px}.wisp-page .ghost-bubble i:nth-child(4){width:22px}.wisp-page .composer{align-items:center;gap:14px;margin-top:18px;padding:14px 6px 14px 10px;display:flex}.wisp-page .composer-plus{color:#ffffff8c;font-size:26px;line-height:1}.wisp-page .composer-field{border-radius:16px;flex:1;min-height:93px;padding:14px 16px;font-size:15px;line-height:1.45}@supports (min-height:1lh){.wisp-page .composer-field{min-height:calc(3lh + 28px)}}.wisp-page .composer-send svg{fill:none;width:26px;height:26px;stroke:var(--accent);stroke-width:1.6px;stroke-linejoin:round}.wisp-page .art-clean{align-content:center;padding:0 26px;display:grid}.wisp-page .morph-line{color:#ffffff8c;letter-spacing:-.025em;flex-wrap:wrap;gap:0 .32em;font-size:30px;font-weight:500;line-height:1.25;transition:color .4s;display:flex}.wisp-page .art-clean.collapsed .morph-line{color:#fff}.wisp-page .morph-line .tok{white-space:nowrap;display:inline-block}.wisp-page .morph-line .filler{color:var(--accent);text-decoration-thickness:2px;transition:opacity .2s}.wisp-page .art-clean.collapsed .filler{display:none}.wisp-page .art-history{align-content:start;gap:10px;padding:22px 22px 0;display:grid;position:relative;-webkit-mask-image:linear-gradient(#000 62%,#0000 100%);mask-image:linear-gradient(#000 62%,#0000 100%)}.wisp-page .hist-search{border:1.5px solid var(--accent);background:#00000040;border-radius:12px;align-items:center;gap:10px;height:44px;padding:0 14px;font-size:16px;display:flex}.wisp-page .hist-search svg{fill:none;stroke:#fff9;stroke-width:1.8px;stroke-linecap:round;width:18px;height:18px}.wisp-page .hist-search i{vertical-align:-3px;background:currentColor;width:1.5px;height:18px;margin-left:1px;animation:1s steps(2,end) infinite caret;display:inline-block}@keyframes caret{to{opacity:0}}.wisp-page .hist-row{border-radius:12px;gap:5px;padding:12px 14px;font-size:15px;display:grid}.wisp-page .hist-row small{color:#ffffff73;font-size:12px}.wisp-page .art-safe{align-content:start;gap:18px;padding:24px 22px 0;display:grid}.wisp-page .pw-field{border:1.5px solid color-mix(in srgb, var(--accent) 80%, transparent);background:#00000052;border-radius:16px;grid-template-columns:1fr auto;align-items:center;gap:6px 16px;padding:22px 20px;display:grid;box-shadow:inset 0 2px 8px #0000004d}.wisp-page .pw-label{color:#ffffff73;font-size:14px}.wisp-page .pw-dots{letter-spacing:.14em;font-size:28px;line-height:1}.wisp-page .pw-field svg{fill:none;width:30px;height:30px;stroke:var(--accent);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;grid-row:1/span 2}.wisp-page .pw-toast{color:#111;background:#fff;border-radius:16px;justify-self:end;align-items:center;gap:12px;margin-right:-6px;padding:16px 20px;font-size:17px;display:flex;box-shadow:0 18px 40px -14px #000000b3}.wisp-page .pw-toast svg{fill:none;width:22px;height:22px;stroke:var(--accent);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.wisp-page .pw-toast b{font-family:Geist Mono,ui-monospace,monospace;font-weight:500}.wisp-page .art-score{align-content:end;gap:26px;padding:0 24px 26px;display:grid}.wisp-page .score-row{grid-template-columns:repeat(3,minmax(0,1fr));justify-items:start;gap:16px;display:grid}.wisp-page .score-stat{gap:6px;display:grid}.wisp-page .score-stat b{letter-spacing:-.04em;font-variant-numeric:tabular-nums;white-space:nowrap;min-inline-size:4ch;font-size:30px;font-weight:500;line-height:1}.wisp-page .score-stat b i{color:#ffffff8c;letter-spacing:0;margin:0 3px 0 2px;font-size:16px;font-style:normal}.wisp-page .score-stat small{color:#ffffff8c;letter-spacing:.01em;font-size:13px}.wisp-page .score-bars{align-items:flex-end;gap:8px;height:120px;display:flex}.wisp-page .score-bars i{height:100%;transform:scaleY(var(--h));transform-origin:bottom;transition:transform .6s var(--ease-out);background:linear-gradient(to top, color-mix(in srgb, var(--accent) 30%, transparent), var(--accent));border-radius:4px 4px 2px 2px;flex:1}.wisp-page .score-bars i:last-child{background:#fff}.wisp-page .tile-icon{transition:transform .2s var(--ease-out), filter .2s ease}.wisp-page .tile[data-hover] .tile-icon{filter:brightness(1.12);transform:translateY(-1px)}.wisp-page .wifi-toggle{transition:background .3s}.wisp-page .wifi-toggle i{transition:transform .38s var(--ease-spring)}.wisp-page .wifi-pill[data-on=true] .wifi-toggle{background:color-mix(in srgb, var(--accent) 80%, transparent)}.wisp-page .wifi-pill[data-on=true] .wifi-toggle i{transform:translate(64px)}.wisp-page .wifi-note{color:#fffc;opacity:0;transition:opacity .25s ease, transform .25s var(--ease-out);background:#ffffff1a;border-radius:999px;padding:6px 12px;font-size:13px;position:absolute;bottom:22px;left:50%;transform:translate(-50%,6px)}.wisp-page .tile[data-touched] .wifi-pill[data-on=false]~.wifi-note{opacity:1;transform:translate(-50%)}.wisp-page .words-input{transition:box-shadow .2s}.wisp-page .words-caret{vertical-align:-3px;opacity:0;background:#fff;width:1.5px;height:16px;margin-left:2px;animation:1s steps(2,end) infinite paused caret;display:inline-block}.wisp-page .words-input.typing .words-input-text{opacity:1}.wisp-page .words-input.typing .words-input-placeholder{opacity:0}.wisp-page .words-input.typing .words-caret{opacity:1}.wisp-page .words-create{transition:transform .12s,filter .12s}.wisp-page .words-create.pressed{filter:brightness(1.2);transform:scale(.96)}.wisp-page .hist-term{font-weight:500}.wisp-page .hist-row[hidden]{display:none}.wisp-page .hist-text mark{background:color-mix(in srgb, var(--accent) 45%, transparent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 45%, transparent);color:#fff;border-radius:3px;padding:0}.wisp-page .pw-field{transition:box-shadow .22s}.wisp-page .pw-field svg{transform-origin:50% 60%;transition:transform .22s var(--ease-out)}.wisp-page .pw-dots{display:inline-block}.wisp-page .art-safe.attempt .pw-dots{animation:.4s shake}.wisp-page .art-safe.attempt .pw-field svg{animation:snap .35s var(--ease-spring)}.wisp-page .pw-toast b{border-radius:4px;padding:0 4px;transition:background .3s}.wisp-page .art-safe.attempt .pw-toast b{background:color-mix(in srgb, var(--accent) 30%, transparent)}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@keyframes snap{0%{transform:scale(1)}40%{transform:scale(1.25)}to{transform:scale(1)}}.wisp-page.js .tile[data-tile=score]:not(.grow) .score-bars i{transform:scaleY(0)}.wisp-page.js .tile[data-tile=score].grow .score-bars i:nth-child(2){transition-delay:40ms}.wisp-page.js .tile[data-tile=score].grow .score-bars i:nth-child(3){transition-delay:80ms}.wisp-page.js .tile[data-tile=score].grow .score-bars i:nth-child(4){transition-delay:.12s}.wisp-page.js .tile[data-tile=score].grow .score-bars i:nth-child(5){transition-delay:.16s}.wisp-page.js .tile[data-tile=score].grow .score-bars i:nth-child(6){transition-delay:.2s}.wisp-page.js .tile[data-tile=score].grow .score-bars i:nth-child(7){transition-delay:.24s}.wisp-page.js .tile[data-tile=score].grow .score-bars i:nth-child(8){transition-delay:.28s}.wisp-page.js .tile[data-tile=score].grow .score-bars i:nth-child(9){transition-delay:.32s}.wisp-page.js .tile[data-tile=score].grow .score-bars i:nth-child(10){transition-delay:.36s}@media (hover:hover) and (pointer:fine){.wisp-page .tile[data-hover]:not([data-touched])[data-tile=offline] .wifi-toggle i{transform:translate(10px)}.wisp-page .tile[data-hover]:not([data-touched])[data-tile=offline] .wifi-toggle{background:color-mix(in srgb, var(--accent) 30%, #00000059)}.wisp-page .tile[data-hover][data-tile=words] .words-input{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}.wisp-page .tile[data-hover][data-tile=words] .words-caret{opacity:1;animation-play-state:running}.wisp-page .tile[data-hover]:not([data-touched])[data-tile=styles] .modes-strip{--peek:-24px}.wisp-page .tile[data-hover][data-tile=english] .word-layer .w{opacity:.65}.wisp-page .tile[data-hover][data-tile=english] .word-layer .w.mid{opacity:.85}.wisp-page .tile[data-hover][data-tile=english] .word-layer .w.hi,.wisp-page .tile[data-hover][data-tile=english] .word-layer .w.accent{opacity:1}.wisp-page .tile[data-hover][data-tile=english] .word-layer .w.accent{text-shadow:0 0 24px color-mix(in srgb, var(--accent) 65%, transparent)}.wisp-page .tile[data-hover][data-tile=paste] .composer-send svg{transform:rotate(15deg)translate(3px)}.wisp-page .tile[data-hover][data-tile=paste] .composer-field{border-color:#ffffff47}.wisp-page .tile[data-hover]:not([data-touched])[data-tile=clean] .filler{opacity:.35}.wisp-page .tile[data-hover][data-tile=history] .hist-search i{animation-duration:.6s}.wisp-page .tile[data-hover][data-tile=safe] .pw-field svg{transform:rotate(-4deg)}.wisp-page .tile[data-hover][data-tile=safe] .pw-field{box-shadow:inset 0 2px 8px #0000004d, 0 0 0 3px color-mix(in srgb, var(--accent) 40%, transparent)}}.wisp-page .composer-send svg{transition:transform .25s var(--ease-out)}.wisp-page .composer-field{transition:border-color .2s}.wisp-page .composer-caret{vertical-align:-3px;background:#fff;width:1.5px;height:16px;animation:1s steps(2,end) infinite caret;display:none}.wisp-page .composer-field.empty .composer-caret{display:inline-block}.wisp-page .thread{align-content:end;gap:16px;height:112px;display:grid;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 55%);mask-image:linear-gradient(#0000,#000 55%)}.wisp-page .thread .ghost-bubble{margin-bottom:0}.wisp-page .sent-bubble{background:color-mix(in srgb, var(--accent) 70%, #000);color:#fff;border-radius:16px 16px 4px;justify-self:end;max-width:88%;padding:10px 14px;font-size:14px;line-height:1.4}@media (max-width:980px){.wisp-page .quick-features{grid-template-columns:1fr;gap:24px}.wisp-page .tile-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.wisp-page .tile-row{grid-template-columns:1fr}}.wisp-page .price-card{border:1px solid var(--border-strong);background:var(--surface);border-radius:28px;flex-direction:column;padding:44px 40px 40px;display:flex}.wisp-page .price-name{letter-spacing:-.02em;font-size:22px;font-weight:500}.wisp-page .price{align-items:flex-start;margin-top:26px;line-height:1;display:flex}.wisp-page .price-currency,.wisp-page .price-cents{letter-spacing:-.02em;padding-top:6px;font-size:28px;font-weight:500}.wisp-page .price-currency{margin-right:2px}.wisp-page .price-amount{letter-spacing:-.06em;font-size:72px;font-weight:500}.wisp-page .price-period{color:var(--fg-muted);align-self:flex-end;margin-left:12px;padding-bottom:8px;font-size:17px}.wisp-page .price-tagline{color:var(--fg-muted);letter-spacing:-.01em;margin-top:26px;font-size:18px}.wisp-page .price-rule{background:var(--border);border:0;height:1px;margin:30px 0 24px}.wisp-page .price-list{color:var(--fg-muted);letter-spacing:-.01em;flex:1;gap:20px;margin-bottom:36px;font-size:17px;display:grid}.wisp-page .pill-button{background:var(--primary);height:60px;color:var(--primary-fg);border-radius:999px;justify-content:space-between;align-items:center;padding:0 28px 0 30px;font-size:18px;font-weight:500;transition:opacity .15s,transform .15s;display:flex}.wisp-page .pill-button:hover{opacity:.9}.wisp-page .pill-button:active{transform:scale(.99)}.wisp-page .pill-button svg{width:20px;height:20px;transition:transform .15s}.wisp-page .pill-button:hover svg{transform:translate(3px)}.wisp-page .price-note{width:max-content;color:var(--fg-muted);text-align:center;transition:color .15s ease, background-size .32s var(--ease-out);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;margin:20px auto 0;font-size:15px;text-decoration:none;display:block}.wisp-page .price-note:hover{color:var(--fg);background-size:100% 1px}.wisp-page .final-cta{text-align:center}.wisp-page .final-cta .shell{padding-block:clamp(140px, calc(18 * var(--vw,1vw)), 240px)}.wisp-page .final-cta h2{max-width:820px;margin-inline:auto}.wisp-page .cta-icon{margin:0 auto 36px;display:block}.wisp-page .footer{padding:36px 0}.wisp-page .footer-inner{color:var(--fg-muted);align-items:center;gap:32px;font-size:12px;line-height:1;display:flex}.wisp-page .footer-brand{align-items:center;gap:14px;display:flex}.wisp-page .footer-brand .app-icon{width:48px;height:48px}.wisp-page .footer-brand-text{gap:6px;display:grid}.wisp-page .footer-inner .brand{color:var(--fg);font-size:14px}.wisp-page .footer-inner div{flex-wrap:wrap;gap:20px;margin-left:auto;display:flex}.wisp-page .toast{z-index:300;border:1px solid var(--border-strong);background:var(--surface-raised);max-width:300px;box-shadow:var(--popover-shadow);color:var(--fg);opacity:0;pointer-events:none;border-radius:8px;align-items:center;gap:9px;padding:11px 14px;font-size:12px;transition:opacity .15s,transform .15s;display:flex;position:fixed;bottom:20px;right:20px;transform:translateY(8px)}.wisp-page .toast.visible{opacity:1;transform:none}.wisp-page.is-entering .site-header{animation:wisp-nav-enter .65s var(--ease-out) both}.wisp-page.is-entering>main{animation:wisp-content-enter .75s 80ms var(--ease-out) both}@keyframes wisp-nav-enter{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}@keyframes wisp-content-enter{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.wisp-page.js [data-reveal]{opacity:0;transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transform:translateY(14px)}.wisp-page.js [data-reveal].is-visible{opacity:1;transform:none}.wisp-page.js .feature-grid[data-reveal] .callout{opacity:0;transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1),background .2s;transform:translateY(10px)}.wisp-page.js .feature-grid[data-reveal].is-visible .callout{opacity:1;transform:none}.wisp-page.js .feature-grid[data-reveal] .callout:nth-child(2){transition-delay:90ms}.wisp-page.js .feature-grid[data-reveal] .callout:nth-child(3){transition-delay:.18s}.wisp-page.js .feature-grid[data-reveal] .callout:nth-child(4){transition-delay:.27s}.wisp-page.js .feature-grid[data-reveal] .callout:nth-child(5){transition-delay:.36s}.wisp-page.js .feature-grid[data-reveal] .callout:nth-child(6){transition-delay:.45s}.wisp-page.js .callout-mark .draw{stroke-dasharray:120;stroke-dashoffset:120px}.wisp-page.js .feature-grid[data-reveal].is-visible .callout-mark .draw{animation:1.1s cubic-bezier(.4,0,.2,1) forwards mark-draw}.wisp-page.js .feature-grid[data-reveal].is-visible .callout:nth-child(2) .callout-mark .draw{animation-delay:90ms}.wisp-page.js .feature-grid[data-reveal].is-visible .callout:nth-child(3) .callout-mark .draw{animation-delay:.18s}.wisp-page.js .feature-grid[data-reveal].is-visible .callout:nth-child(4) .callout-mark .draw{animation-delay:.27s}.wisp-page.js .feature-grid[data-reveal].is-visible .callout:nth-child(5) .callout-mark .draw{animation-delay:.36s}.wisp-page.js .feature-grid[data-reveal].is-visible .callout:nth-child(6) .callout-mark .draw{animation-delay:.45s}@keyframes mark-draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){html:has(#wisp-page){scroll-behavior:auto}.wisp-page.is-entering .site-header,.wisp-page.is-entering>main{animation:none}.wisp-page.js .callout-mark .draw{stroke-dashoffset:0}.wisp-page *,.wisp-page :before,.wisp-page :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:980px){.wisp-page .feature-grid{grid-template-columns:repeat(2,1fr)}.wisp-page .callout:nth-child(3n){border-right:1px solid color-mix(in srgb, var(--border) 60%, transparent)}.wisp-page .callout:nth-child(2n){border-right:0}.wisp-page .callout:nth-last-child(-n+3){border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent)}.wisp-page .callout:nth-last-child(-n+2){border-bottom:0}.wisp-page .split,.wisp-page .split.reverse{grid-template-columns:1fr}.wisp-page .split.reverse .split-copy{order:2}}@media (max-width:760px){.wisp-page .nav{gap:16px;position:relative}.wisp-page .nav-buy{display:none}.wisp-page .menu-toggle{display:inline-flex}.wisp-page .nav-actions{margin-left:auto}.wisp-page .nav-links{z-index:100;width:100%;max-height:calc(100dvh - var(--wisp-header-height,72px) - 16px);border:1px solid var(--border-strong);background:color-mix(in srgb, var(--surface-raised) 88%, transparent);-webkit-backdrop-filter:blur(20px)saturate(140%);backdrop-filter:blur(20px)saturate(140%);box-shadow:var(--popover-shadow);overscroll-behavior:contain;border-radius:16px;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;font-size:16px;display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto}.wisp-page .nav-links.open{display:flex}.wisp-page .nav-links a{border-radius:10px;justify-content:space-between;align-items:center;width:100%;min-height:52px;padding:14px 16px;line-height:1.25;display:flex}.wisp-page .nav-links a:not(.menu-cta):hover{background:var(--hover)}.wisp-page .nav-links a.menu-cta,.wisp-page .nav-links a.menu-cta:hover{color:var(--primary-fg);margin-top:8px;font-size:16px;display:flex}.wisp-page .hero-shot{margin-top:56px}.wisp-page .section-intro{grid-template-columns:1fr;gap:0}.wisp-page .section-intro>p{padding-top:22px}.wisp-page .feature-grid{grid-template-columns:1fr}.wisp-page .callout,.wisp-page .callout:nth-child(2n),.wisp-page .callout:nth-child(3n){border-right:0;border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent)}.wisp-page .callout:last-child{border-bottom:0}.wisp-page .shareware{grid-template-columns:1fr}.wisp-page .shareware .price-card{max-width:none;margin-left:0}.wisp-page .footer-inner{flex-wrap:wrap;line-height:1.6}.wisp-page .footer-inner div{width:100%;margin-left:0}}@media (max-width:480px){.wisp-page .shell{width:calc(100% - 32px)}.wisp-page h1{font-size:clamp(48px, calc(15 * var(--vw,1vw)), 62px)}.wisp-page .hero-actions .button{width:100%}.wisp-page .price-card{border-radius:22px;padding:32px 26px 28px}.wisp-page .price-amount{font-size:60px}}.wisp-page .wisp-app{--win:#1e1e1e;--win-side:#262626;--win-line:#ffffff14;--win-row:#ffffff0f;--win-card:#ffffff0a;--win-tile:#ffffff26;--win-fg:#f2f2f2;--win-muted:#a3a3a3;--win-faint:#7a7a7a;--win-field:#ffffff0d;--win-accent:#fff;--win-accent-fg:#111;aspect-ratio:2;background:var(--win);height:auto;max-height:720px;color:var(--win-fg);-webkit-font-smoothing:antialiased;border:1px solid #fff2;border-radius:12px;margin-top:96px;font-size:13px;overflow:hidden;box-shadow:0 1px 2px #0000004d,0 40px 90px -40px #000000b3}.wisp-page[data-theme=light] .wisp-app{--win:#f4f4f5;--win-side:#e9e9eb;--win-line:#00000014;--win-row:#0000000a;--win-card:#ffffffb0;--win-tile:#00000018;--win-fg:#1a1a1a;--win-muted:#5c5c5c;--win-faint:#8a8a8a;--win-field:#fff;--win-accent:#1a1a1a;--win-accent-fg:#fff;border-color:#00000024;box-shadow:0 1px 2px #0000000f,0 24px 48px -24px #0000002e}.wisp-page .wisp-app button{color:inherit}.wisp-page .mac-window{grid-template-columns:236px 1fr;height:100%;transition:grid-template-columns .26s cubic-bezier(.2,.7,.2,1);display:grid}.wisp-page .mac-window.sidebar-hidden{grid-template-columns:0 1fr}.wisp-page .mac-window.sidebar-hidden .mac-sidebar{border-right:0}.wisp-page .mac-window:not(.sidebar-hidden) .toolbar-sidebar-toggle{display:none}.wisp-page .mac-window.sidebar-hidden .toolbar-sidebar-toggle{margin-right:4px;display:inline-flex}.wisp-page .mac-title{margin-right:auto}.wisp-page .mac-sidebar{border-right:1px solid var(--win-line);background:var(--win-side);white-space:nowrap;flex-direction:column;min-width:0;display:flex;overflow:hidden}.wisp-page .mac-chrome{flex:none;justify-content:space-between;align-items:center;height:64px;padding:0 18px 0 20px;display:flex}.wisp-page .traffic{gap:8px;display:inline-flex}.wisp-page .traffic i{border-radius:999px;width:12px;height:12px;box-shadow:inset 0 0 0 .5px #00000026}.wisp-page .traffic i:first-child{background:#ff5f57}.wisp-page .traffic i:nth-child(2){background:#febc2e}.wisp-page .traffic i:nth-child(3){background:#28c840}.wisp-page .mac-icon-btn{min-width:30px;height:30px;color:var(--win-muted);background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:2px;padding:0 4px;transition:background .15s,color .15s;display:inline-flex;position:relative}.wisp-page .mac-icon-btn:hover{background:var(--win-row);color:var(--win-fg)}.wisp-page .mac-icon-btn:active{transform:scale(.95)}.wisp-page .mac-icon-btn svg,.wisp-page .mac-picker svg,.wisp-page .show-all svg,.wisp-page .models-loaded svg,.wisp-page .arrow-glyph{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.wisp-page .mac-icon-btn.wide svg+svg{width:12px;height:12px}.wisp-page .mac-icon-btn[data-tip]:after{z-index:5;color:#fff;content:attr(data-tip);white-space:nowrap;opacity:0;pointer-events:none;background:#000;border-radius:5px;padding:4px 8px;font-size:11px;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%,-2px)}.wisp-page .mac-icon-btn[data-tip]:hover:after{opacity:1;transform:translate(-50%)}.wisp-page .mac-icon-btn[data-spin].spinning svg{animation:.7s linear spin}@keyframes spin{to{transform:rotate(360deg)}}.wisp-page .side-nav{flex-direction:column;gap:2px;padding:2px 12px;display:flex}.wisp-page .side-gap{height:16px}.wisp-page .side-item{height:44px;color:var(--win-fg);text-align:left;background:0 0;border-radius:8px;align-items:center;gap:14px;padding:0 10px;font-size:15px;transition:background .15s;display:flex}.wisp-page .side-item:hover{background:var(--win-row)}.wisp-page .side-item.active{background:#ffffff1f}.wisp-page[data-theme=light] .side-item.active{background:#00000014}.wisp-page .side-icon{background:var(--win-tile);width:26px;height:26px;color:var(--win-fg);border-radius:6px;flex:none;justify-content:center;align-items:center;display:inline-flex}.wisp-page .side-icon svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.wisp-page .side-icon{color:#fff;background-image:linear-gradient(#ffffff2e,#0000 55%,#00000014);box-shadow:inset 0 0 0 .5px #ffffff1f}.wisp-page .side-item[data-pane=home] .side-icon{background-color:#33a854}.wisp-page .side-item[data-pane=history] .side-icon{background-color:#bf5af2}.wisp-page .side-item[data-pane=vocabulary] .side-icon{background-color:#0a84ff}.wisp-page .side-item[data-pane=engine] .side-icon,.wisp-page .side-item[data-pane=settings] .side-icon{background-color:#737373}.wisp-page[data-theme=light] .side-item[data-pane=history] .side-icon{background-color:#af52de}.wisp-page[data-theme=light] .side-item[data-pane=vocabulary] .side-icon{background-color:#007aff}.wisp-page[data-theme=light] .side-item[data-pane=engine] .side-icon,.wisp-page[data-theme=light] .side-item[data-pane=settings] .side-icon{background-color:#8c8c8c}.wisp-page .mac-main{flex-direction:column;min-width:0;display:flex}.wisp-page .mac-toolbar{border-bottom:1px solid var(--win-line);flex:none;justify-content:space-between;align-items:center;gap:16px;height:64px;padding:0 16px 0 22px;display:flex}.wisp-page .mac-title{gap:2px;line-height:1.15;display:grid}.wisp-page .mac-title strong{letter-spacing:-.01em;font-size:15px;font-weight:600}.wisp-page .mac-title span{color:var(--win-muted);font-size:13px}.wisp-page .mac-tools{align-items:center;gap:8px;display:none}.wisp-page .mac-tools.active{display:flex}.wisp-page .mac-picker{border:1px solid var(--win-line);background:var(--win-field);height:32px;color:var(--win-fg);border-radius:7px;align-items:center;gap:8px;padding:0 12px;font-size:14px;transition:background .15s,border-color .15s;display:inline-flex}.wisp-page .mac-picker:hover{background:var(--win-row)}.wisp-page .mac-picker:active{transform:scale(.98)}.wisp-page .mac-picker svg{width:13px;height:13px;color:var(--win-muted)}.wisp-page .mac-picker.plain{background:0 0;border-color:#0000;height:28px;padding:0 4px 0 8px;font-size:14px}.wisp-page .mac-picker.plain svg{background:var(--win-tile);width:16px;height:16px;color:var(--win-fg);border-radius:4px;padding:2px}.wisp-page .mac-search{border:1px solid var(--win-line);background:var(--win-field);border-radius:8px;align-items:center;width:300px;height:34px;padding:0 12px;display:flex}.wisp-page .mac-search:focus-within{border-color:#fff5}.wisp-page .mac-search input,.wisp-page .mac-field{width:100%;min-width:0;color:var(--win-fg);font:inherit;background:0 0;border:0;outline:none;font-size:15px}.wisp-page .mac-search input::placeholder,.wisp-page .mac-field::placeholder{color:var(--win-faint)}.wisp-page .mac-content{flex:1;min-height:0;position:relative}.wisp-page .pane{opacity:0;pointer-events:none;scrollbar-width:thin;scrollbar-color:#ffffff30 transparent;padding:22px 28px 32px;transition:opacity .22s,transform .22s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0;overflow-y:auto;transform:translateY(6px)}.wisp-page .pane.active{opacity:1;pointer-events:auto;transform:none}.wisp-page .pane[data-pane=home]:before{z-index:2;background:linear-gradient(to bottom, var(--win) 0%, var(--win) 40%, transparent 100%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);content:"";pointer-events:none;height:234px;margin:0 -28px -234px;display:block;position:sticky;top:-22px;-webkit-mask-image:linear-gradient(#000 0% 45%,#0000 100%);mask-image:linear-gradient(#000 0% 45%,#0000 100%)}.wisp-page .recorder{background:#1a1a1a;border-radius:14px;width:min(560px,100%);margin:14px auto 0;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff12,0 24px 50px -18px #000000b3}.wisp-page .pane[data-pane=home] .recorder{z-index:3;position:sticky;top:0}.wisp-page .recorder-wave{background:#0f0f0f;justify-content:center;align-items:center;gap:5px;height:80px;padding:0 26px;display:flex}.wisp-page .recorder-wave i{opacity:.32;background:#d9d9d9;border-radius:999px;flex:none;width:2px;height:2px;transition:height 90ms linear,opacity .2s;display:block}.wisp-page .recorder[data-recording=true] .recorder-wave i{opacity:.95}.wisp-page .recorder-foot{justify-content:center;align-items:center;height:100px;display:flex;position:relative}.wisp-page .recorder-timer{color:#a3a3a3;opacity:0;font-size:12px;transition:opacity .2s;position:absolute;top:50%;left:22px;transform:translateY(-50%)}.wisp-page .recorder[data-recording=true] .recorder-timer{opacity:1}.wisp-page .wisp-app .mic-button{color:#111;background:#f2f2f2;border-radius:999px;width:52px;height:52px;transition:transform .15s;position:relative;box-shadow:0 8px 20px -8px #000000b3}.wisp-page .mic-button:hover{transform:scale(1.04)}.wisp-page .mic-button:active{transform:scale(.96)}.wisp-page .mic-button:before{border-radius:inherit;content:"";opacity:0;border:1.5px solid #f2f2f2;position:absolute;inset:-6px}.wisp-page .recorder[data-recording=true] .mic-button:before{animation:1.6s ease-out infinite mic-ring}.wisp-page .mic-glyph,.wisp-page .stop-glyph{margin:auto;transition:opacity .15s,transform .2s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0}.wisp-page .mic-glyph{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.wisp-page .stop-glyph{opacity:0;background:currentColor;border-radius:4px;width:18px;height:18px;transform:scale(.6)}.wisp-page .recorder[data-recording=true] .mic-glyph{opacity:0;transform:scale(.6)}.wisp-page .recorder[data-recording=true] .stop-glyph{opacity:1;transform:none}@keyframes mic-ring{0%{opacity:.6;transform:scale(.9)}to{opacity:0;transform:scale(1.5)}}.wisp-page .row-head{justify-content:space-between;align-items:center;margin-top:38px;display:flex}.wisp-page .row-head h3{letter-spacing:-.01em;font-size:17px;font-weight:600}.wisp-page .stats{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:26px;display:grid}.wisp-page .stat{background:0 0;border-radius:12px;align-content:center;justify-items:center;gap:10px;min-height:104px;padding:14px 12px;transition:background .15s;display:grid}.wisp-page .stat:hover{background:var(--win-row)}.wisp-page .stat.active{background:#ffffff14}.wisp-page[data-theme=light] .stat.active{background:#00000010}.wisp-page .stat-value{color:var(--win-fg);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:27px;font-weight:600;line-height:1}.wisp-page .stat-label{color:var(--win-muted);font-size:14px}.wisp-page .app-stack{align-items:center;display:inline-flex}.wisp-page .app-stack .mini-app{border:2px solid var(--win);color:#d8d8d8;background:#3a3a3a;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;margin-left:-9px;display:inline-flex}.wisp-page[data-theme=light] .app-stack .mini-app{color:#333;background:#d6d6d8}.wisp-page .stat.active .app-stack .mini-app{border-color:#303030}.wisp-page[data-theme=light] .stat.active .app-stack .mini-app{border-color:#e4e4e6}.wisp-page .app-stack .mini-app:first-child{margin-left:0}.wisp-page .app-stack .mini-app.more{background:#4a4a4a;border-radius:999px;font-size:12px;font-weight:500}.wisp-page[data-theme=light] .app-stack .mini-app.more{color:#222;background:#c4c4c7}.wisp-page .app-stack.small .mini-app{color:#bdbdbd;background:#333;border-width:1.5px;border-radius:6px;width:24px;height:24px;margin-left:-7px}.wisp-page[data-theme=light] .app-stack.small .mini-app{color:#444;background:#dcdcde}.wisp-page .app-glyph{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:58%;height:58%}.wisp-page .app-glyph.app-glyph-fill{fill:currentColor;stroke:none;width:52%;height:52%}.wisp-page .stat-details{margin-top:26px;position:relative}.wisp-page .stat-detail{display:none}.wisp-page .stat-detail.active{animation:.26s cubic-bezier(.2,.7,.2,1) detail-in;display:block}@keyframes detail-in{0%{opacity:0;transform:translateY(-4px)}}.wisp-page .app-grid{grid-template-columns:1fr 1fr;gap:2px 40px;padding:0 4px;display:grid}.wisp-page .app-row{border-radius:8px;align-items:center;gap:16px;height:50px;padding:0 8px;font-size:15px;transition:background .15s;display:flex}.wisp-page .app-row:hover{background:var(--win-row)}.wisp-page .app-tile{background:var(--win-tile);width:34px;height:34px;color:var(--win-fg);border-radius:9px;flex:none;justify-content:center;align-items:center;display:inline-flex}.wisp-page .app-row .count{color:var(--win-muted);font-variant-numeric:tabular-nums;margin-left:auto}.wisp-page .spark-row{align-items:center;gap:24px;padding:8px 12px 0;display:flex}.wisp-page .spark{flex:1;width:100%;height:56px}.wisp-page .spark polyline{fill:none;stroke:var(--win-muted);stroke-width:1.6px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.wisp-page .detail-caption{color:var(--win-muted);white-space:nowrap;font-size:15px}.wisp-page .detail-caption.centered{text-align:center;white-space:normal;padding-top:12px}.wisp-page .show-all{color:var(--win-muted);background:0 0;align-items:center;gap:4px;font-size:15px;transition:color .15s;display:inline-flex}.wisp-page .show-all:hover{color:var(--win-fg)}.wisp-page .show-all svg{width:14px;height:14px}.wisp-page .recent{gap:4px;margin-top:10px;display:grid}.wisp-page .recent li{border-radius:8px;padding:12px 10px;transition:background .15s}.wisp-page .recent li:hover{background:var(--win-row)}.wisp-page .recent p,.wisp-page .history-list p{font-size:15px;line-height:1.4}.wisp-page .recent time{color:var(--win-muted);margin-top:6px;font-size:13px;display:block}.wisp-page .fresh{animation:.5s cubic-bezier(.2,.7,.2,1) row-in}@keyframes row-in{0%{opacity:0;transform:translateY(-8px)}}.wisp-page .pane[data-pane=history]{padding-top:0}.wisp-page .group-head{z-index:2;background:color-mix(in srgb, var(--win) 92%, #000);margin:0 -28px;padding:16px 40px 14px;font-size:17px;font-weight:600;position:sticky;top:0}.wisp-page[data-theme=light] .group-head{background:#e3e3e5}.wisp-page .history-list{padding:8px 12px 0;display:grid}.wisp-page .history-list li{border-bottom:1px solid var(--win-line);padding:16px 0 14px}.wisp-page .history-list li:last-child{border-bottom:0}.wisp-page .history-meta{color:var(--win-muted);font-variant-numeric:tabular-nums;gap:10px;margin-top:6px;font-size:14px;display:flex}.wisp-page .history-meta span+span:before{content:"·";margin-right:10px}.wisp-page .empty-note{color:var(--win-faint);padding:18px 0;font-size:14px}.wisp-page .vocab-pane{padding-top:0}.wisp-page .vocab-bar{z-index:2;border-bottom:1px solid var(--win-line);background:var(--win);grid-template-columns:1fr auto 1fr auto;align-items:center;gap:12px;margin:0 -28px;padding:26px 40px;display:grid;position:sticky;top:0}.wisp-page .vocab-bar .mac-field{border:1px solid var(--win-line);background:var(--win-field);border-radius:7px;height:34px;padding:0 10px}.wisp-page .vocab-bar .mac-field:focus{border-color:#fff5}.wisp-page .arrow-glyph{color:var(--win-muted)}.wisp-page .mac-button{height:32px;color:var(--win-fg);background:#fff2;border-radius:7px;align-items:center;padding:0 14px;font-size:14px;transition:background .15s;display:inline-flex}.wisp-page[data-theme=light] .mac-button{background:#0000000f}.wisp-page .mac-button:hover{background:#fff3}.wisp-page .mac-button:active{transform:scale(.98)}.wisp-page .vocab-list{padding:10px 12px 0;display:grid}.wisp-page .vocab-list li{border-bottom:1px solid var(--win-line);align-items:center;gap:14px;height:52px;font-size:16px;font-weight:600;display:flex}.wisp-page .vocab-list li:last-child{border-bottom:0}.wisp-page .vocab-list .arrow-glyph{width:16px;height:16px}.wisp-page .vocab-list .replacement{font-weight:400}.wisp-page .models-loaded{align-items:center;gap:12px;padding:12px 14px 4px;font-size:16px;display:flex}.wisp-page .models-loaded svg{width:20px;height:20px;color:var(--win-muted)}.wisp-page .toggle-list{padding:6px 14px 0;display:grid}.wisp-page .toggle-list li{justify-content:space-between;align-items:center;gap:24px;padding:16px 0;display:flex}.wisp-page .toggle-text{gap:3px;font-size:16px;display:grid}.wisp-page .toggle-text small{color:var(--win-muted);font-size:14px}.wisp-page .group-title{margin:30px 14px 10px;font-size:17px;font-weight:600}.wisp-page .group-title.first{margin-top:8px}.wisp-page .model-list{padding:0 14px;display:grid}.wisp-page .model-list li{border-radius:8px;align-items:center;gap:18px;padding:18px 8px 18px 20px;transition:background .15s;display:flex}.wisp-page .model-list li:hover{background:var(--win-row)}.wisp-page .model-tile{background:var(--win-tile);border-radius:10px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;font-weight:600;display:inline-flex}.wisp-page .model-text{gap:4px;display:grid}.wisp-page .model-text strong{font-size:16px;font-weight:600}.wisp-page .model-text small{color:var(--win-muted);font-size:14px}.wisp-page .model-actions{color:var(--win-muted);gap:18px;margin-left:auto;display:inline-flex}.wisp-page .badge-glyph,.wisp-page .more-glyph,.wisp-page .undo-glyph,.wisp-page .clear-glyph{fill:none;stroke:currentColor;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.wisp-page .badge-glyph circle{fill:#cfcfcf;stroke:none}.wisp-page .badge-glyph path{stroke:#1f1f1f;stroke-width:1.6px}.wisp-page[data-theme=light] .badge-glyph circle{fill:#444}.wisp-page[data-theme=light] .badge-glyph path{stroke:#fff}.wisp-page .more-glyph .dot{fill:currentColor;stroke:none}.wisp-page .settings-card{border:1px solid var(--win-line);background:var(--win-card);border-radius:10px;margin:0 14px;padding:0 14px}.wisp-page .setting-row,.wisp-page .setting-block{border-bottom:1px solid var(--win-line)}.wisp-page .setting-row{justify-content:space-between;align-items:center;gap:20px;min-height:58px;padding:10px 0;font-size:16px;display:flex}.wisp-page .settings-card>:last-child{border-bottom:0}.wisp-page .setting-block{padding:16px 0 20px}.wisp-page .setting-title{margin-bottom:14px;font-size:16px;display:block}.wisp-page .option-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.wisp-page .option{border:1px solid var(--win-line);color:var(--win-fg);background:0 0;border-radius:12px;justify-items:center;gap:16px;padding:24px 12px 20px;font-size:16px;transition:border-color .15s,background .15s;display:grid}.wisp-page .option:hover{background:var(--win-row)}.wisp-page .option[aria-pressed=true]{border-color:var(--win-accent);box-shadow:inset 0 0 0 1px var(--win-accent)}.wisp-page .option-label{align-items:center;gap:8px;display:inline-flex}.wisp-page .check-glyph{width:15px;height:15px;display:none}.wisp-page .check-glyph circle{fill:var(--win-fg)}.wisp-page .check-glyph path{fill:none;stroke:var(--win);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.wisp-page .option[aria-pressed=true] .check-glyph{display:inline-block}.wisp-page .dock-icon{width:88px;height:88px;position:relative}.wisp-page .dock-icon img{width:100%;height:100%;position:absolute;inset:0}.wisp-page .dock-icon.system .half.light{clip-path:polygon(0 0,100% 0,0 100%)}.wisp-page .dock-icon.system .half.dark{clip-path:polygon(100% 0,100% 100%,0 100%)}.wisp-page .split-line{background:#8a8a8a;width:150%;height:1.5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-45deg)}.wisp-page .rec-preview{justify-content:center;align-items:center;height:72px;display:inline-flex}.wisp-page .rec-preview.classic{background:#0f0f0f;border-radius:8px;flex-direction:column;width:100%;max-width:300px;height:66px;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}.wisp-page .rec-dots{opacity:.6;background-image:radial-gradient(circle,#8a8a8a .6px,#0000 .9px);background-size:5px 2px;flex:none;width:84%;height:2px;margin:18px 0 16px;display:block}.wisp-page .rec-foot{color:#9a9a9a;background:#1c1c1c;flex:1;justify-content:space-between;align-items:center;width:100%;padding:0 10px;font-size:7.5px;display:flex}.wisp-page .rec-foot small{align-items:center;gap:4px;display:inline-flex}.wisp-page .rec-foot svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;width:8px;height:8px}.wisp-page .rec-foot b{color:#eee;background:#fff2;border-radius:2px;padding:0 3px;font-weight:500}.wisp-page .rec-preview.mini{background:#050505;border-radius:999px;gap:9px;width:120px;height:46px;box-shadow:inset 0 0 0 1px #ffffff1a}.wisp-page .rec-preview.mini i{background:#f2f2f2;border-radius:999px;width:9px;height:9px}.wisp-page .rec-preview.hidden{border:1.5px dashed var(--win-faint);width:120px;height:46px;color:var(--win-faint);border-radius:999px}.wisp-page .rec-preview.hidden svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.wisp-page .shortcut-cell{color:var(--win-muted);align-items:center;gap:18px;display:inline-flex}.wisp-page .shortcut-cap{border:1px solid var(--win-line);background:var(--win-field);height:44px;color:var(--win-fg);border-radius:12px;align-items:center;padding:0 70px;font-size:15px;font-weight:600;display:inline-flex}.wisp-page .style-row{gap:18px}.wisp-page .style-row .toggle-text{flex:1}.wisp-page .setting-actions{gap:12px;padding:16px 0 20px;display:flex}.wisp-page .switch{background:#ffffff2a;border-radius:999px;flex:none;width:44px;height:26px;transition:background .2s;position:relative}.wisp-page[data-theme=light] .switch{background:#0002}.wisp-page .switch:after{content:"";background:#fff;border-radius:999px;width:22px;height:22px;transition:transform .2s cubic-bezier(.2,.7,.2,1);position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000059}.wisp-page .switch[aria-pressed=true]{background:var(--win-accent)}.wisp-page .switch[aria-pressed=true]:after{transform:translate(18px)}.wisp-page[data-theme=dark] .switch[aria-pressed=true]:after,.wisp-page .switch[aria-pressed=true]:after{background:var(--win-accent-fg)}@media (max-width:980px){.wisp-page .wisp-app{height:640px}.wisp-page .mac-window{grid-template-columns:190px 1fr}.wisp-page .stats{grid-template-columns:repeat(2,1fr)}.wisp-page .option-grid{gap:10px}.wisp-page .shortcut-cap{padding:0 28px}}@media (max-width:760px){.wisp-page .wisp-app{height:600px;margin-top:56px}.wisp-page .mac-window{grid-template-columns:190px 1fr}.wisp-page .mac-toolbar{padding-left:14px}.wisp-page .mic-picker span{display:none}.wisp-page .mac-search{width:160px}.wisp-page .app-grid{grid-template-columns:1fr}.wisp-page .vocab-bar{grid-template-columns:1fr auto}.wisp-page .vocab-bar .arrow-glyph,.wisp-page .vocab-bar #vocab-replacement{display:none}.wisp-page .option-grid{grid-template-columns:1fr}.wisp-page .spark-row{flex-direction:column;align-items:stretch}.wisp-page .detail-caption{white-space:normal}}.wisp-page .demo-launch{justify-content:center;margin-top:20px;display:flex}.wisp-page .play-button{border:1px solid var(--border-strong);background:var(--surface);height:52px;color:var(--fg);transition:border-color .2s ease, background .2s ease, transform .2s var(--ease-out);border-radius:999px;align-items:center;gap:14px;padding:0 22px 0 8px;font-size:15px;font-weight:500;display:inline-flex}.wisp-page .play-button:hover{border-color:var(--border-hover);background:var(--surface-raised)}.wisp-page .play-button:active{transform:scale(.98)}.wisp-page .play-glyph{background:var(--primary);width:36px;height:36px;color:var(--primary-fg);transition:transform .2s var(--ease-spring);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.wisp-page .play-button:hover .play-glyph{transform:scale(1.08)}.wisp-page .play-glyph svg{fill:currentColor;width:16px;height:16px;margin-left:2px}.wisp-page .demo-stage{--desk-fg:#f2f2f2;aspect-ratio:2;height:auto;max-height:720px;color:var(--desk-fg);-webkit-font-smoothing:antialiased;background:radial-gradient(70% 60% at 20% 100%,#5a2a7a 0%,#0000 60%),radial-gradient(60% 50% at 85% 0,#2a3f8f 0%,#0000 60%),radial-gradient(50% 50% at 60% 60%,#7a2b4f 0%,#0000 65%),linear-gradient(#0b0d1f 0%,#1a1231 55%,#050308 100%);border:1px solid #fff2;border-radius:12px;outline:none;margin-top:96px;font-size:13px;position:relative;overflow:hidden;box-shadow:0 1px 2px #0000004d,0 40px 90px -40px #000000b3}.wisp-page .hero-view{margin-top:96px;display:grid}.wisp-page .hero-view>*{grid-area:1/1;margin-top:0}.wisp-page .demo-stage[hidden]{visibility:hidden;pointer-events:none;display:block}.wisp-page .wisp-app.is-hidden{visibility:hidden;pointer-events:none}.wisp-page .menubar{z-index:80;color:#fff;background:0 0;align-items:center;gap:18px;height:30px;padding:0 16px;font-size:13px;display:flex;position:relative}.wisp-page .mb-apple svg{width:15px;height:15px;display:block}.wisp-page .mb-app{font-weight:600}.wisp-page .mb-item{opacity:.9}.wisp-page .mb-right{align-items:center;gap:14px;margin-left:auto;display:flex}.wisp-page .mb-wisp{height:22px;color:inherit;background:0 0;border-radius:5px;align-items:center;padding:0 6px;transition:background .15s;display:inline-flex}.wisp-page .mb-wisp:hover,.wisp-page .mb-wisp[aria-expanded=true]{background:#ffffff29}.wisp-page .mb-wisp svg{fill:currentColor;width:auto;height:15px;display:block}.wisp-page .mb-wifi svg{width:auto;height:12px;display:block}.wisp-page .mb-wifi .wifi-glyph{transition:opacity .3s}.wisp-page .mb-wifi .wifi-slash{opacity:0;transition:opacity .3s}.wisp-page .mb-wifi.off .wifi-glyph{opacity:.3}.wisp-page .mb-wifi.off .wifi-slash{opacity:1}.wisp-page .mb-battery{align-items:center;display:inline-flex}.wisp-page .mb-battery svg{fill:currentColor;width:auto;height:12px;display:block}.wisp-page .mb-clock{height:22px;color:inherit;font:inherit;font-variant-numeric:tabular-nums;background:0 0;border-radius:5px;align-items:center;gap:7px;padding:0 7px;transition:background .15s;display:inline-flex}.wisp-page .mb-clock:hover,.wisp-page .mb-clock[aria-expanded=true]{background:#ffffff29}.wisp-page .mb-right{position:relative}.wisp-page .daybar{z-index:60;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);color:#fff;width:300px;animation:row-in .18s var(--ease-out);background:#28282ce0;border-radius:12px;padding:12px 8px 6px;font-size:13px;position:absolute;top:34px;right:0;box-shadow:inset 0 0 0 .5px #ffffff2e,0 20px 50px -18px #000c}.wisp-page .daybar[hidden]{display:none}.wisp-page .daybar-head{justify-content:space-between;align-items:center;padding:2px 8px 10px;display:flex}.wisp-page .daybar-month{color:#fff;font-size:15px;font-weight:600}.wisp-page .daybar-nav{align-items:center;gap:4px;display:inline-flex}.wisp-page .daybar-nav a{color:#ffffffbf;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.wisp-page .daybar-nav a:hover{background:#ffffff1a}.wisp-page .daybar-nav svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.wisp-page .daybar-today:before{content:"";background:#3478f6;border-radius:999px;width:7px;height:7px}.wisp-page .daybar-grid{grid-template-columns:repeat(7,1fr);gap:2px 0;padding:0 4px;display:grid}.wisp-page .daybar-grid span{color:#fff;font-variant-numeric:tabular-nums;justify-content:center;align-items:center;height:30px;font-size:13px;font-weight:500;display:flex}.wisp-page .daybar-grid .dow{color:#ffffff73;height:24px;font-size:12px}.wisp-page .daybar-grid .dim{color:#ffffff4d}.wisp-page .daybar-grid .today{color:#fff;position:relative}.wisp-page .daybar-grid .today:before{z-index:-1;content:"";background:#3478f6;border-radius:999px;width:28px;height:28px;position:absolute}.wisp-page .daybar-grid .today{isolation:isolate}.wisp-page .daybar-sep{background:#ffffff1f;height:1px;margin:8px}.wisp-page .daybar-item{color:#fff;border-radius:6px;justify-content:space-between;align-items:center;height:30px;padding:0 10px;font-size:14px;display:flex}.wisp-page .daybar-item:hover{background:#3478f6}.wisp-page .daybar-item span{color:#ffffff8c;font-size:13px}.wisp-page .daybar-item:hover span{color:#ffffffd9}.wisp-page .wisp-menu{z-index:60;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);color:#fff;width:300px;animation:row-in .18s var(--ease-out);background:#28282ce0;border-radius:12px;padding:6px 8px;font-size:13px;position:absolute;top:34px;left:0;right:auto;box-shadow:inset 0 0 0 .5px #ffffff2e,0 20px 50px -18px #000c}.wisp-page .wisp-menu[hidden]{display:none}.wisp-page .wisp-sep{background:#ffffff1f;height:1px;margin:8px}.wisp-page .wisp-item{color:#fff;text-align:left;white-space:nowrap;background:0 0;border-radius:6px;justify-content:space-between;align-items:center;width:100%;height:30px;padding:0 10px;font-size:14px;display:flex}.wisp-page .wisp-item:hover{background:#3478f6}.wisp-page .wisp-item[aria-disabled=true]{color:#fff6;cursor:default}.wisp-page .wisp-item[aria-disabled=true]:hover{background:0 0}.wisp-page .wisp-key{color:#ffffff8c;font-size:13px}.wisp-page .wisp-chevron{font-size:15px;line-height:1}.wisp-page .wisp-item:hover .wisp-key{color:#ffffffd9}.wisp-page .wisp-item[aria-disabled=true] .wisp-key{color:#fff6}.wisp-page[data-theme=light] .demo-stage .daybar{color:#1d1d1f;background:#f6f6f6e6;box-shadow:inset 0 0 0 .5px #0000001f,0 20px 50px -18px #00000059}.wisp-page[data-theme=light] .demo-stage .daybar-month,.wisp-page[data-theme=light] .demo-stage .daybar-grid span,.wisp-page[data-theme=light] .demo-stage .daybar-item{color:#1d1d1f}.wisp-page[data-theme=light] .demo-stage .daybar-grid .dow{color:#00000073}.wisp-page[data-theme=light] .demo-stage .daybar-grid .dim{color:#0000004d}.wisp-page[data-theme=light] .demo-stage .daybar-grid .today,.wisp-page[data-theme=light] .demo-stage .daybar-item:hover{color:#fff}.wisp-page[data-theme=light] .demo-stage .daybar-nav a{color:#000000a6}.wisp-page[data-theme=light] .demo-stage .daybar-sep{background:#0000001a}.wisp-page[data-theme=light] .demo-stage .daybar-item span{color:#00000080}.wisp-page[data-theme=light] .demo-stage .mb-clock:hover,.wisp-page[data-theme=light] .demo-stage .mb-clock[aria-expanded=true],.wisp-page[data-theme=light] .demo-stage .mb-wisp:hover,.wisp-page[data-theme=light] .demo-stage .mb-wisp[aria-expanded=true]{background:#0000001a}.wisp-page[data-theme=light] .demo-stage .wisp-menu{color:#1d1d1f;background:#f6f6f6e6;box-shadow:inset 0 0 0 .5px #0000001f,0 20px 50px -18px #00000059}.wisp-page[data-theme=light] .demo-stage .wisp-item{color:#1d1d1f}.wisp-page[data-theme=light] .demo-stage .wisp-item:hover{color:#fff}.wisp-page[data-theme=light] .demo-stage .wisp-item[aria-disabled=true],.wisp-page[data-theme=light] .demo-stage .wisp-item[aria-disabled=true] .wisp-key{color:#0006}.wisp-page[data-theme=light] .demo-stage .wisp-sep{background:#0000001a}.wisp-page[data-theme=light] .demo-stage .wisp-key{color:#00000080}.wisp-page[data-theme=light] .demo-stage .wisp-item:hover .wisp-key{color:#ffffffd9}.wisp-page .mb-cal{border:1px solid #fff;border-radius:3.5px;justify-content:center;align-items:flex-end;width:17px;height:14px;display:inline-flex;position:relative}.wisp-page .mb-cal i{background:#fff;border-radius:2.5px 2.5px 0 0;height:3px;position:absolute;top:-1px;left:-1px;right:-1px}.wisp-page .mb-cal i:before,.wisp-page .mb-cal i:after{content:"";background:#fff;width:1px;height:3px;position:absolute;top:-2px}.wisp-page .mb-cal i:before{left:3px;box-shadow:5px 0 #fff}.wisp-page .mb-cal i:after{right:3px}.wisp-page .mb-cal b{padding-bottom:1px;font-size:8px;font-weight:600;line-height:1}.wisp-page .desk{position:absolute;inset:30px 0 0}.wisp-page .dwin{opacity:0;filter:brightness(.72)saturate(.85);pointer-events:none;background:#1f1f22;border-radius:12px;flex-direction:column;transition:filter .4s;display:flex;position:absolute;overflow:hidden;transform:translateY(24px)scale(.98);box-shadow:0 0 0 1px #ffffff1a,0 30px 70px -20px #000000b3}.wisp-page .dwin.shown{opacity:1;pointer-events:auto;transform:none}.wisp-page .dwin.active{filter:none}.wisp-page .win-messages{z-index:10;width:46%;height:430px;top:70px;left:3%}.wisp-page .win-mail{z-index:11;width:46%;height:400px;top:150px;left:27%}.wisp-page .win-zed{z-index:12;background:#282c34;width:47%;height:480px;top:50px;left:50%}.wisp-page .dwin-bar{cursor:pointer;background:#ffffff0a;border-bottom:1px solid #ffffff14;flex:none;align-items:center;gap:14px;height:44px;padding:0 14px;display:flex}.wisp-page .dwin-bar .traffic i{width:12px;height:12px}.wisp-page .dwin-title{font-weight:600}.wisp-page .style-tag{color:#ffffffb3;letter-spacing:.02em;opacity:0;transition:opacity .25s ease, transform .25s var(--ease-out), background .25s ease, color .25s ease;background:#ffffff1a;border-radius:999px;margin-left:auto;padding:3px 9px;font-size:11px;font-weight:500;transform:translateY(4px)}.wisp-page .dwin.tagged .style-tag{opacity:1;color:#111;background:#fff;transform:none}.wisp-page .dcaret{vertical-align:-.15em;opacity:0;background:currentColor;width:1.5px;height:1em;margin-left:1px;animation:1s steps(2,end) infinite caret;display:inline-block}.wisp-page .dwin.active .dcaret{opacity:1}.wisp-page .msg-body{flex:1;grid-template-columns:170px 1fr;min-height:0;display:grid}.wisp-page .msg-side{background:#00000026;border-right:1px solid #ffffff14;padding:10px 8px}.wisp-page .msg-search{color:#fff6;background:#ffffff14;border-radius:7px;height:26px;margin:0 4px 10px;padding:0 10px;font-size:12px;line-height:26px}.wisp-page .msg-contact{width:100%;color:inherit;text-align:left;background:0 0;border-radius:8px;align-items:center;gap:10px;padding:8px;transition:background .15s;display:flex}.wisp-page .msg-contact:hover{background:#ffffff0f}.wisp-page .msg-contact.active{background:#2f6bff}.wisp-page .msg-contact b{font-size:12.5px;font-weight:600;display:block}.wisp-page .msg-contact small{color:#fff9;text-overflow:ellipsis;white-space:nowrap;max-width:96px;font-size:11px;display:block;overflow:hidden}.wisp-page .avatar{color:#fff;background:linear-gradient(#9aa3b5,#6b7385);border-radius:999px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;font-weight:600;display:inline-flex}.wisp-page .msg-thread{flex-direction:column;justify-content:flex-end;gap:8px;padding:14px 16px;display:flex;overflow:hidden}.wisp-page .bubble{border-radius:16px;max-width:78%;padding:8px 12px;font-size:13.5px;line-height:1.35}.wisp-page .bubble.in{background:#3a3a3f;border-bottom-left-radius:5px;align-self:flex-start}.wisp-page .bubble.out{color:#fff;background:#2f6bff;border-bottom-right-radius:5px;align-self:flex-end}.wisp-page .msg-compose{flex:none;align-items:center;gap:10px;padding:10px 14px 12px 184px;display:flex}.wisp-page .msg-field{border:1px solid #ffffff29;border-radius:15px;flex:1;min-height:30px;padding:6px 12px;font-size:13px;line-height:1.35}.wisp-page .msg-send{background:#2f6bff;border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.wisp-page .msg-send svg{fill:none;stroke:#fff;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.wisp-page .mail-head{border-bottom:1px solid #ffffff14;padding:6px 16px}.wisp-page .mail-head>div{border-bottom:1px solid #ffffff0f;align-items:center;gap:10px;height:32px;font-size:13px;display:flex}.wisp-page .mail-head>div:last-child{border-bottom:0}.wisp-page .mail-label{color:#ffffff73;min-width:56px}.wisp-page .mail-pill{color:#fff;background:#2f6bff;border-radius:999px;padding:2px 9px;font-size:12px}.wisp-page .mail-body{white-space:pre-wrap;flex:1;padding:16px;font-size:14px;line-height:1.55}.wisp-page .zed-bar{background:#21252b}.wisp-page .zed-tabs{gap:2px;display:flex}.wisp-page .zed-tab{color:#ffffff8c;border-radius:6px;padding:6px 12px;font-family:Geist Mono,ui-monospace,monospace;font-size:12px}.wisp-page .zed-tab.active{color:#e6e6e6;background:#282c34}.wisp-page .zed-body{flex:1;grid-template-columns:1fr 250px;min-height:0;display:grid}.wisp-page .zed-code{color:#abb2bf;background:0 0;border:0;border-radius:0;margin:0;padding:14px 0 14px 12px;font-family:Geist Mono,ui-monospace,monospace;font-size:11.5px;line-height:1.7;overflow:hidden}.wisp-page .zed-code .ln{color:#4b5263;text-align:right;width:26px;margin-right:10px;display:inline-block}.wisp-page .zed-code .kw{color:#c678dd}.wisp-page .zed-code .fn{color:#61afef}.wisp-page .zed-code .var{color:#e06c75}.wisp-page .zed-code .ty{color:#e5c07b}.wisp-page .zed-code .str{color:#98c379}.wisp-page .zed-code .num{color:#d19a66}.wisp-page .zed-agent{background:#21252b;border-left:1px solid #ffffff14;flex-direction:column;display:flex}.wisp-page .zed-agent-head{border-bottom:1px solid #ffffff14;justify-content:space-between;padding:10px 12px;font-size:12px;font-weight:600;display:flex}.wisp-page .zed-agent-head span{color:#ffffff73;font-weight:400}.wisp-page .zed-agent-log{flex-direction:column;flex:1;justify-content:flex-end;gap:8px;padding:12px;font-size:12px;line-height:1.45;display:flex;overflow:hidden}.wisp-page .zed-msg{background:#ffffff0f;border-radius:8px;padding:8px 10px}.wisp-page .zed-msg.user{background:#2f6bff33;border:1px solid #2f6bff66}.wisp-page .zed-msg .think{color:#ffffff8c;align-items:center;gap:4px;display:inline-flex}.wisp-page .zed-msg .think i{background:currentColor;border-radius:999px;width:4px;height:4px;animation:.9s ease-in-out infinite think}.wisp-page .zed-msg .think i:nth-child(2){animation-delay:.15s}.wisp-page .zed-msg .think i:nth-child(3){animation-delay:.3s}@keyframes think{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.wisp-page .zed-agent-input{background:#00000040;border:1px solid #ffffff24;border-radius:8px;min-height:44px;margin:10px;padding:8px 10px;font-size:12px;line-height:1.45}.wisp-page .drecorder{z-index:40;opacity:0;width:min(560px,80%);transition:opacity .22s ease, transform .32s var(--ease-spring), grid-template-rows .24s var(--ease-spring);pointer-events:none;background:#0f0f10;border-radius:18px;grid-template-rows:0fr auto;display:grid;position:absolute;bottom:118px;left:50%;overflow:hidden;transform:translate(-50%,10px)scale(.98);box-shadow:inset 0 0 0 1px #ffffff1f,0 30px 60px -20px #000c}.wisp-page .drecorder:has(>.dpreview.has-text){grid-template-rows:1fr auto}.wisp-page .drecorder[data-state=recording],.wisp-page .drecorder[data-state=settling]{opacity:1;transform:translate(-50%)}.wisp-page .dpreview{letter-spacing:-.01em;min-height:0;padding:16px 20px 6px;font-size:17px;line-height:1.4;overflow:hidden}.wisp-page .dpreview.has-text{min-height:calc(1.4em + 22px)}.wisp-page .dpreview .pw{color:#fff6;transition:color .32s;animation:.19s cubic-bezier(.22,1,.36,1) backwards pwin;display:inline-block}@keyframes pwin{0%{opacity:0;transform:translateY(5px)scale(.96)}to{opacity:1;transform:none}}.wisp-page .dpreview .pw.settled{color:#fff}.wisp-page .dpreview .pw.filler{-webkit-text-decoration:line-through #ffffff80;text-decoration:line-through #ffffff80;text-decoration-thickness:1.5px}.wisp-page .dpreview .pw.pw-fixed{color:#7fb0ff}.wisp-page .ddots{justify-content:center;align-items:center;gap:5px;height:56px;padding:0 26px;display:flex}.wisp-page .ddots i{opacity:.85;background:#e8e8e8;border-radius:999px;width:3px;height:3px;transition:height 90ms linear;display:block}.wisp-page .dfoot{z-index:40;opacity:0;pointer-events:none;transition:opacity .25s ease, transform .36s var(--ease-out);justify-items:center;gap:12px;display:grid;position:absolute;bottom:26px;left:0;right:0;transform:translateY(18px)}.wisp-page .demo-stage.finished .dfoot{opacity:1;pointer-events:auto;transform:translateY(0)}@property --sweep{syntax:"<angle>";inherits:false;initial-value:0deg}.wisp-page .dkey{color:#fff;height:54px;transition:transform .18s var(--ease-out), box-shadow .18s var(--ease-out), border-color .3s ease;-webkit-user-select:none;user-select:none;touch-action:none;--spark:#ffffff8c;--spark-fade:#fff0;--spark-still:#ffffff29;background:linear-gradient(#2a2a2e,#1a1a1d);border:1px solid #ffffff38;border-radius:14px;align-items:center;padding:0 34px;font-family:Geist Mono,ui-monospace,monospace;font-size:16px;font-weight:500;display:inline-flex;position:relative;box-shadow:inset 0 1px #ffffff2e,0 6px #0c0c0e,0 14px 30px -12px #000c}.wisp-page .dkey:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff38,0 7px #0c0c0e,0 16px 32px -12px #000c}.wisp-page .dkey:after{content:"";z-index:1;background:conic-gradient(from var(--sweep), var(--spark-fade) 0deg, var(--spark) 28deg, var(--spark-fade) 56deg, var(--spark-fade) 360deg);-webkit-mask-composite:xor;opacity:0;pointer-events:none;will-change:opacity;border:1px solid #0000;border-radius:15px;padding:0;transition:opacity .3s;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.wisp-page .dkey:hover:after{opacity:1;animation:5s linear infinite dkey-sweep}@keyframes dkey-sweep{0%{--sweep:0deg}to{--sweep:360deg}}.wisp-page .dkey.down,.wisp-page .dkey:active{transition:transform 90ms,box-shadow 90ms,border-color .3s;transform:translateY(5px);box-shadow:inset 0 1px #ffffff1a,0 1px #0c0c0e,0 6px 20px -12px #000c}@media (prefers-reduced-motion:reduce){.wisp-page .dkey:hover:after{background:var(--spark-still);animation:none}.wisp-page .dpreview .pw{animation:none}}.wisp-page .dkey.glow{border-color:#7fb0ffcc;animation:1.8s ease-in-out infinite keyglow}@keyframes keyglow{0%,to{box-shadow:inset 0 1px #ffffff2e,0 6px #0c0c0e,0 0 #7fb0ff00,0 14px 30px -12px #000c}50%{box-shadow:inset 0 1px #ffffff2e,0 6px #0c0c0e,0 0 0 8px #7fb0ff2e,0 14px 30px -12px #000c}}.wisp-page .dhint{color:#fff9;font-size:13px;transition:opacity .2s}.wisp-page .dhandoff{z-index:41;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);animation:row-in .4s var(--ease-out);background:#0a0a0cc7;border-radius:18px;justify-items:center;gap:14px;padding:22px 28px 18px;display:grid;position:absolute;bottom:118px;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 1px #ffffff1f,0 30px 60px -20px #000c}.wisp-page .dhandoff[hidden]{display:none}.wisp-page .dhandoff-title{align-items:center;gap:8px;font-size:17px;font-weight:500;display:flex}.wisp-page .dhandoff-title kbd{font-size:.8em}.wisp-page .dtargets{background:#ffffff14;border-radius:999px;gap:6px;padding:4px;display:flex}.wisp-page .dtarget{color:#ffffffb3;background:0 0;border-radius:999px;height:30px;padding:0 14px;font-size:13px;transition:background .2s,color .2s}.wisp-page .dtarget.active{color:#111;background:#fff}.wisp-page .dhandoff-note{color:#ffffff73;font-size:12px}.wisp-page .dcontrols{z-index:50;opacity:0;pointer-events:none;transition:opacity .32s ease, transform .32s var(--ease-out);gap:8px;display:flex;position:absolute;top:14px;right:16px;transform:translateY(-4px)}.wisp-page .demo-stage.finished .dcontrols{opacity:1;pointer-events:auto;transform:none}.wisp-page .dctl{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;background:#00000073;border-radius:999px;align-items:center;gap:8px;height:32px;padding:0 12px;font-size:12.5px;transition:background .2s;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff24}.wisp-page .dctl:hover{background:#000000a6}.wisp-page .dctl svg{fill:currentColor;width:14px;height:14px}@media (max-width:980px){.wisp-page .demo-stage{height:640px}.wisp-page .win-messages{width:60%;left:2%}.wisp-page .win-mail{width:60%;left:20%}.wisp-page .win-zed{width:60%;left:38%}}@media (max-width:760px){.wisp-page .demo-stage{height:600px}.wisp-page .hero-view{margin-top:56px}.wisp-page .menubar .mb-item,.wisp-page .mb-clock{display:none}.wisp-page .win-messages,.wisp-page .win-mail,.wisp-page .win-zed{width:92%;height:380px;top:40px;left:4%}.wisp-page .msg-body{grid-template-columns:1fr}.wisp-page .msg-side{display:none}.wisp-page .msg-compose{padding-left:14px}.wisp-page .zed-body{grid-template-columns:1fr}.wisp-page .zed-code{display:none}}.wisp-page[data-theme=light] .demo-stage{--desk-fg:#1d1d1f;background:radial-gradient(70% 60% at 18% 100%,#ffd1bad9 0%,#0000 62%),radial-gradient(62% 55% at 86% 0,#bed8ffe6 0%,#0000 60%),radial-gradient(52% 50% at 58% 52%,#e2d4ffb3 0%,#0000 66%),linear-gradient(#cfe1fb 0%,#ded8f7 54%,#fbdbcf 100%);border-color:#0000001a;box-shadow:0 1px 2px #00000014,0 40px 90px -40px #00000047}.wisp-page[data-theme=light] .demo-stage .menubar{color:#1d1d1f;background:0 0}.wisp-page[data-theme=light] .demo-stage .mb-cal{border-color:#1d1d1f}.wisp-page[data-theme=light] .demo-stage .mb-cal i,.wisp-page[data-theme=light] .demo-stage .mb-cal i:before,.wisp-page[data-theme=light] .demo-stage .mb-cal i:after{background:#1d1d1f}.wisp-page[data-theme=light] .demo-stage .mb-cal i:before{box-shadow:5px 0 #1d1d1f}.wisp-page[data-theme=light] .demo-stage .dwin{filter:brightness(.96)saturate(.9);background:#fff;box-shadow:0 0 0 1px #00000014,0 20px 46px -18px #00000038}.wisp-page[data-theme=light] .demo-stage .dwin.active{filter:none;box-shadow:0 0 0 1px #00000014,0 30px 70px -20px #00000057}.wisp-page[data-theme=light] .demo-stage .dwin-bar{background:#f6f6f6;border-bottom-color:#00000014}.wisp-page[data-theme=light] .demo-stage .style-tag{color:#0009;background:#00000012}.wisp-page[data-theme=light] .demo-stage .dwin.tagged .style-tag{color:#fff;background:#1d1d1f}.wisp-page[data-theme=light] .demo-stage .msg-side{background:#f3f3f5;border-right-color:#00000014}.wisp-page[data-theme=light] .demo-stage .msg-search{color:#00000073;background:#e9e9eb}.wisp-page[data-theme=light] .demo-stage .msg-contact:hover{background:#0000000d}.wisp-page[data-theme=light] .demo-stage .msg-contact.active{color:#fff;background:#2f6bff}.wisp-page[data-theme=light] .demo-stage .msg-contact small{color:#0000008c}.wisp-page[data-theme=light] .demo-stage .msg-contact.active small{color:#ffffffbf}.wisp-page[data-theme=light] .demo-stage .bubble.in{color:#1d1d1f;background:#e9e9eb}.wisp-page[data-theme=light] .demo-stage .msg-field{background:#fff;border-color:#00000026}.wisp-page[data-theme=light] .demo-stage .mail-head,.wisp-page[data-theme=light] .demo-stage .mail-head>div{border-bottom-color:#00000014}.wisp-page[data-theme=light] .demo-stage .mail-label{color:#00000080}.wisp-page[data-theme=light] .demo-stage .win-zed{background:#fafafa}.wisp-page[data-theme=light] .demo-stage .zed-bar{background:#f0f0f1}.wisp-page[data-theme=light] .demo-stage .zed-tab{color:#0000008c}.wisp-page[data-theme=light] .demo-stage .zed-tab.active{color:#1d1d1f;background:#fafafa}.wisp-page[data-theme=light] .demo-stage .zed-code{color:#383a42}.wisp-page[data-theme=light] .demo-stage .zed-code .ln{color:#9d9d9f}.wisp-page[data-theme=light] .demo-stage .zed-code .kw{color:#a626a4}.wisp-page[data-theme=light] .demo-stage .zed-code .fn{color:#4078f2}.wisp-page[data-theme=light] .demo-stage .zed-code .var{color:#e45649}.wisp-page[data-theme=light] .demo-stage .zed-code .ty{color:#c18401}.wisp-page[data-theme=light] .demo-stage .zed-code .str{color:#50a14f}.wisp-page[data-theme=light] .demo-stage .zed-code .num{color:#986801}.wisp-page[data-theme=light] .demo-stage .zed-agent{background:#f0f0f1;border-left-color:#00000014}.wisp-page[data-theme=light] .demo-stage .zed-agent-head{border-bottom-color:#00000014}.wisp-page[data-theme=light] .demo-stage .zed-agent-head span{color:#00000073}.wisp-page[data-theme=light] .demo-stage .zed-msg{background:#0000000d}.wisp-page[data-theme=light] .demo-stage .zed-msg.user{color:#1d1d1f;background:#2f6bff1a;border-color:#2f6bff55}.wisp-page[data-theme=light] .demo-stage .zed-msg .think{color:#00000073}.wisp-page[data-theme=light] .demo-stage .zed-agent-input{background:#fff;border-color:#00000024}.wisp-page[data-theme=light] .demo-stage .dkey{color:#1d1d1f;--spark:#00000057;--spark-fade:#0000;--spark-still:#0000001f;background:linear-gradient(#fcfcfc,#ececee);border-color:#00000024;box-shadow:inset 0 1px #ffffffe6,0 6px #c9c9cc,0 14px 30px -12px #00000059}.wisp-page[data-theme=light] .demo-stage .dkey:hover{box-shadow:inset 0 1px #ffffffe6,0 7px #c9c9cc,0 16px 32px -12px #00000061}.wisp-page[data-theme=light] .demo-stage .dkey.down,.wisp-page[data-theme=light] .demo-stage .dkey:active{box-shadow:inset 0 1px #ffffffb3,0 1px #c9c9cc,0 6px 20px -12px #00000059}.wisp-page[data-theme=light] .demo-stage .dkey.glow{border-color:#2f6bffb3;animation-name:keyglow-light}@keyframes keyglow-light{0%,to{box-shadow:inset 0 1px #ffffffe6,0 6px #c9c9cc,0 0 #2f6bff00,0 14px 30px -12px #00000059}50%{box-shadow:inset 0 1px #ffffffe6,0 6px #c9c9cc,0 0 0 8px #2f6bff38,0 14px 30px -12px #00000059}}.wisp-page[data-theme=light] .demo-stage .dhandoff{color:#1d1d1f;background:#ffffffb8;box-shadow:inset 0 0 0 1px #0000001a,0 30px 60px -20px #00000040}.wisp-page[data-theme=light] .demo-stage .dtargets{background:#0000000f}.wisp-page[data-theme=light] .demo-stage .dtarget{color:#0009}.wisp-page[data-theme=light] .demo-stage .dtarget.active{color:#fff;background:#1d1d1f}.wisp-page[data-theme=light] .demo-stage .dctl{color:#1d1d1f;background:#ffffffb3;box-shadow:inset 0 0 0 1px #0000001a}.wisp-page[data-theme=light] .demo-stage .dctl:hover{background:#ffffffe6}.wisp-page[data-theme=light] .demo-stage .dhandoff-title kbd{color:#1d1d1f;background:#fff;border-color:#00000038}.wisp-page .cmd-glyph,.wisp-page .quick .quick-key svg.cmd-glyph,.wisp-page .pw-toast b svg.cmd-glyph,.wisp-page .icon-list li svg.cmd-glyph{vertical-align:-.05em;fill:currentColor;stroke:none;width:auto;height:.78em;margin:0;display:inline-block}.wisp-page[data-theme=light] .tile{--glass:#ffffffb8;--glass-line:#0000001a;--tile-ink:#1a1a1a;--tile-ink-soft:#0009;--tile-ink-faint:#0000006b;--tile-accent-ink:color-mix(in srgb, var(--accent) 58%, #000);--tile-accent-solid:color-mix(in srgb, var(--accent) 72%, #000)}.wisp-page[data-theme=light] .tile.deep,.wisp-page[data-theme=light] .tile[data-tile=safe]{--deep-base:color-mix(in srgb, var(--accent) 7%, #fff);background:radial-gradient(90% 60% at 20% 0%, color-mix(in srgb, var(--accent) 45%, transparent), transparent 70%), radial-gradient(80% 50% at 90% 10%, color-mix(in srgb, var(--accent) 26%, transparent), transparent 70%), linear-gradient(180deg, color-mix(in srgb, var(--accent) 22%, var(--deep-base)) 0%, color-mix(in srgb, var(--accent) 9%, var(--deep-base)) 55%, var(--deep-base) 100%);color:var(--tile-ink)}.wisp-page[data-theme=light] .tile:before{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 55%, #0000001f), 0 40px 70px -40px #00000059}.wisp-page[data-theme=light] .tile:after{background:radial-gradient(420px circle at var(--mx) var(--my), #0000000a, transparent 70%)}.wisp-page[data-theme=light] .tile .glass{border:1px solid #0000001a;box-shadow:0 4px 12px -10px #0000001a}.wisp-page[data-theme=light] .tile-copy h3{color:var(--tile-accent-ink)}.wisp-page[data-theme=light] .tile-icon{background:var(--tile-accent-solid);color:#fff}.wisp-page[data-theme=light] .tile-copy p{color:var(--tile-ink-soft)}.wisp-page[data-theme=light] .tile-copy .tile-punch{color:var(--tile-ink)}.wisp-page[data-theme=light] .wifi-toggle{background:#00000024;box-shadow:inset 0 0 0 1px #00000024,inset 0 2px 6px #00000014}.wisp-page[data-theme=light] .wifi-toggle i{background:#fff;box-shadow:0 0 0 .5px #00000014,0 4px 10px #0000002e}.wisp-page[data-theme=light] .wifi-pill[data-on=true] .wifi-toggle{background:color-mix(in srgb, var(--accent) 78%, #000);box-shadow:inset 0 0 0 1px #0000002e}.wisp-page[data-theme=light] .wifi-note{color:var(--tile-ink-soft);background:#ffffffe0;border:1px solid #00000014}.wisp-page[data-theme=light] .words-input{border-color:color-mix(in srgb, var(--accent) 70%, #000);background:#ffffffeb}.wisp-page[data-theme=light] .words-input-placeholder{color:var(--tile-ink-faint)}.wisp-page[data-theme=light] .words-input-text{color:var(--tile-ink)}.wisp-page[data-theme=light] .words-caret{background:var(--tile-ink)}.wisp-page[data-theme=light] .words-create{background:color-mix(in srgb, var(--accent) 26%, #fff);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 45%, transparent);color:var(--tile-accent-ink)}.wisp-page[data-theme=light] .words-create.pressed{filter:brightness(.94)}.wisp-page[data-theme=light] .words-row i{border-color:color-mix(in srgb, var(--accent) 62%, #000)}.wisp-page[data-theme=light] .mode-tile{color:#00000073;background:#0000000f;box-shadow:inset 0 0 0 1px #00000014}.wisp-page[data-theme=light] .mode.selected .mode-tile{color:#111;background:#fff;box-shadow:inset 0 0 0 1px #0000001a,0 6px 14px -8px #0000002e}.wisp-page[data-theme=light] .mode-tile:before{border-color:color-mix(in srgb, var(--accent) 85%, #000);box-shadow:none;border-width:2px}.wisp-page[data-theme=light] .mode-label{color:var(--tile-ink-soft)}.wisp-page[data-theme=light] .mode.selected .mode-label{color:#fff}.wisp-page[data-theme=light] .mode-pill{background:color-mix(in srgb, var(--accent) 78%, #000)}.wisp-page[data-theme=light] .art-english .w{opacity:.62}.wisp-page[data-theme=light] .art-english .mid{opacity:.8}.wisp-page[data-theme=light] .art-english .hi{opacity:1}.wisp-page[data-theme=light] .art-english .accent{color:color-mix(in srgb, var(--accent) 70%, #000);opacity:1}.wisp-page[data-theme=light] .ghost-bubble{background:#ffffffdb}.wisp-page[data-theme=light] .ghost-bubble i{background:#00000042}.wisp-page[data-theme=light] .composer-plus{color:#00000073}.wisp-page[data-theme=light] .composer-caret{background:var(--tile-ink)}.wisp-page[data-theme=light] .composer-send svg{stroke:var(--tile-accent-solid)}.wisp-page[data-theme=light] .sent-bubble{background:color-mix(in srgb, var(--accent) 58%, #000);color:#fff}.wisp-page[data-theme=light] .morph-line{color:#0000008c}.wisp-page[data-theme=light] .art-clean.collapsed .morph-line{color:#111}.wisp-page[data-theme=light] .morph-line .filler{color:var(--tile-accent-ink)}.wisp-page[data-theme=light] .hist-search{border-color:color-mix(in srgb, var(--accent) 70%, #000);background:#ffffffeb}.wisp-page[data-theme=light] .hist-search svg{stroke:#00000073}.wisp-page[data-theme=light] .hist-row small{color:var(--tile-ink-faint)}.wisp-page[data-theme=light] .hist-text mark{background:color-mix(in srgb, var(--accent) 30%, #fff);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 30%, #fff);color:var(--tile-accent-ink)}.wisp-page[data-theme=light] .pw-field{border-color:color-mix(in srgb, var(--accent) 70%, #000);background:#ffffffe6;box-shadow:inset 0 1px 3px #00000014}.wisp-page[data-theme=light] .pw-label{color:#00000080}.wisp-page[data-theme=light] .pw-field svg{stroke:color-mix(in srgb, var(--accent) 82%, #000)}.wisp-page[data-theme=light] .pw-toast{color:#111;background:#fff;box-shadow:inset 0 0 0 1px #0000000f,0 1px 2px #00000014,0 8px 20px -10px #0000002e}.wisp-page[data-theme=light] .pw-toast svg{stroke:color-mix(in srgb, var(--accent) 82%, #000)}.wisp-page[data-theme=light] .art-safe.attempt .pw-toast b{background:color-mix(in srgb, var(--accent) 28%, #fff)}.wisp-page[data-theme=light] .score-stat b i{color:#00000080}.wisp-page[data-theme=light] .score-stat small{color:var(--tile-ink-soft)}.wisp-page[data-theme=light] .score-bars i{background:linear-gradient(to top, color-mix(in srgb, var(--accent) 55%, #fff), color-mix(in srgb, var(--accent) 72%, #000))}.wisp-page[data-theme=light] .score-bars i:last-child{background:#1a1a1a}@media (hover:hover) and (pointer:fine){.wisp-page[data-theme=light] .tile[data-hover]:not([data-touched])[data-tile=offline] .wifi-toggle{background:color-mix(in srgb, var(--accent) 30%, #00000024)}.wisp-page[data-theme=light] .tile[data-hover][data-tile=words] .words-input{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 30%, #fff)}.wisp-page[data-theme=light] .tile[data-hover][data-tile=english] .word-layer .w{opacity:.78}.wisp-page[data-theme=light] .tile[data-hover][data-tile=english] .word-layer .w.mid{opacity:.9}.wisp-page[data-theme=light] .tile[data-hover][data-tile=english] .word-layer .w.hi,.wisp-page[data-theme=light] .tile[data-hover][data-tile=english] .word-layer .w.accent{opacity:1}.wisp-page[data-theme=light] .tile[data-hover][data-tile=paste] .composer-field{border-color:#0000002e}.wisp-page[data-theme=light] .tile[data-hover][data-tile=safe] .pw-field{box-shadow:inset 0 1px 3px #00000014, 0 0 0 3px color-mix(in srgb, var(--accent) 35%, #fff)}}.wisp-page .changelog{padding-block:clamp(110px, calc(15 * var(--vw,1vw)), 190px);scroll-margin-top:calc(95px - clamp(110px, calc(15 * var(--vw,1vw)), 190px))}.wisp-page .releases{gap:0;margin-top:18px;display:grid}.wisp-page .release{border-top:1px solid color-mix(in srgb, var(--border) 60%, transparent);grid-template-columns:96px 1fr minmax(240px,40%);align-items:center;gap:24px;padding:28px 0;display:grid}.wisp-page .release-art{z-index:1;height:96px;color:var(--fg);position:relative}.wisp-page .release-art svg{width:100%;height:100%;display:block;overflow:visible}.wisp-page .release-art .cd{fill:currentColor;opacity:.14;transition:opacity .6s}.wisp-page .release-art .cd.hi{opacity:.55}.wisp-page .release-art .halo{fill:currentColor;opacity:0;transition:opacity .6s}.wisp-page .release-art .cl{fill:none;stroke:currentColor;stroke-width:1px;opacity:.12;transition:opacity .6s}.wisp-page .release:hover .release-art .cl{opacity:.28}.wisp-page .release:hover .release-art .halo{opacity:.08}.wisp-page .release:hover .release-art .cd.hi{animation:3.2s ease-in-out infinite breathe;animation-delay:calc(var(--d) * 1ms)}@keyframes breathe{0%,to{opacity:.45}50%{opacity:.85}}@media (prefers-reduced-motion:reduce){.wisp-page .release:hover .release-art .cd.hi{opacity:.7;animation:none}}.wisp-page .release{position:relative}.wisp-page .release-version,.wisp-page .release-body{z-index:2;position:relative}.wisp-page .release-body ul{opacity:.82}.wisp-page .release-dust{z-index:0;color:var(--fg);pointer-events:none;position:absolute;inset:28px 0;-webkit-mask-image:linear-gradient(90deg,#00000052 0% 34%,#000 52% 100%);mask-image:linear-gradient(90deg,#00000052 0% 34%,#000 52% 100%)}.wisp-page .release-dust svg{width:100%;height:100%;display:block}.wisp-page .release-dust .cd{fill:currentColor;opacity:.14}@media (max-width:760px){.wisp-page .release-dust{display:none}.wisp-page .release{grid-template-columns:1fr;gap:8px}.wisp-page .release-art{display:none}}.wisp-page[data-theme=light] .recorder{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#e8e8ebd9;box-shadow:inset 0 0 0 1px #00000012,0 18px 40px -22px #0000004d}.wisp-page[data-theme=light] .recorder-wave{background:#0000000d}.wisp-page[data-theme=light] .recorder-wave i{opacity:.32;background:#3a3a3c}.wisp-page[data-theme=light] .recorder[data-recording=true] .recorder-wave i{opacity:.9}.wisp-page[data-theme=light] .recorder-foot{background:0 0;border-top:1px solid #00000014}.wisp-page[data-theme=light] .recorder-timer{color:#0000008c}.wisp-page[data-theme=light] .wisp-app .mic-button{color:#fff;background:#2b2b2e;box-shadow:0 6px 16px -6px #00000059}.wisp-page[data-theme=light] .wisp-app .mic-button:before{border-color:#2b2b2e}.wisp-page[data-theme=light] .demo-stage .drecorder{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);color:#1d1d1f;background:#f0f0f3e0;box-shadow:inset 0 0 0 1px #00000014,0 24px 50px -24px #0000004d}.wisp-page[data-theme=light] .demo-stage .dpreview .pw{color:#00000073}.wisp-page[data-theme=light] .demo-stage .dpreview .pw.settled{color:#1d1d1f}.wisp-page[data-theme=light] .demo-stage .dpreview .pw.filler{text-decoration-color:#00000073}.wisp-page[data-theme=light] .demo-stage .dpreview .pw.pw-fixed{color:#2f6bff}.wisp-page[data-theme=light] .demo-stage .ddots i{opacity:.32;background:#3a3a3c}.wisp-page[data-theme=light] .demo-stage .drecorder[data-state=recording] .ddots i{opacity:.9}.wisp-page .wisp-sub{position:relative}.wisp-page .wisp-menu.wisp-submenu{width:360px;animation:none;display:none;top:-8px;left:auto;right:calc(100% + 4px)}.wisp-page .wisp-sub.open>.wisp-submenu,.wisp-page .wisp-sub:hover>.wisp-submenu{display:block}.wisp-page .wisp-sub.open>.wisp-sub-trigger,.wisp-page .wisp-sub:hover>.wisp-sub-trigger{color:#fff;background:#3478f6}.wisp-page .wisp-sub.open>.wisp-sub-trigger .wisp-key,.wisp-page .wisp-sub:hover>.wisp-sub-trigger .wisp-key{color:#ffffffd9}.wisp-page .wisp-recent{text-align:left;text-overflow:clip;white-space:nowrap;width:100%;display:block;overflow:hidden}.wisp-page .zed-tab{color:#ffffff8c;cursor:pointer;font:inherit;background:0 0;border:0;font-family:Geist Mono,ui-monospace,monospace;font-size:12px;transition:background .12s,color .12s}.wisp-page .zed-tab:not(.active):hover{color:#fffc;background:#ffffff0f}.wisp-page[data-theme=light] .demo-stage .zed-tab:not(.active):hover{color:#000c;background:#0000000f}.wisp-page .win-messages{grid-template-rows:44px minmax(0,1fr) auto;grid-template-columns:170px 1fr;display:grid}.wisp-page .win-messages .dwin-bar{grid-column:1/-1}.wisp-page .win-messages .msg-body{display:contents}.wisp-page .win-messages .msg-side{grid-area:2/1/span 2}.wisp-page .win-messages .msg-thread{grid-area:2/2;min-height:0}.wisp-page .win-messages .msg-compose{grid-area:3/2;padding-left:14px}@media (max-width:760px){.wisp-page .win-messages{grid-template-columns:1fr}.wisp-page .win-messages .msg-thread,.wisp-page .win-messages .msg-compose{grid-column:1}}
