:root{--ink: #282624;--body: #474645;--muted: #848281;--line: #ebe8e4;--sand: #f6f4f0;--paper: #ffffff;--btn: #171717;--accent: #e2570f;--accent-soft: #fff1e8;--accent-line: #ffdcc7;--accent-ink: #9a3a05;--good: #1a7f4b;--bad: #c0392b;--page: 72rem;--measure: 42rem;--gutter: 1.25rem;--header: 3.6rem;--ease: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html{background:var(--paper);color:var(--body);font-family:Inter,-apple-system,system-ui,Segoe UI,Helvetica,Arial,sans-serif;font-size:16px;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;scroll-behavior:smooth}body{margin:0;min-height:100vh;display:flex;flex-direction:column}main{flex:1}a{color:inherit;text-decoration:none}a:hover{color:var(--ink)}code,pre,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}code{font-size:.875em;background:var(--sand);border-radius:6px;padding:.1em .4em;color:var(--ink)}.wrap{width:min(var(--page),calc(100% - (2 * var(--gutter))));margin-inline:auto}.banner{background:var(--sand);font-size:.8125rem;line-height:1.4;padding:.55rem var(--gutter);display:flex;flex-wrap:wrap;gap:.1rem 1rem;justify-content:center;align-items:center;text-align:center}.banner a{color:var(--ink);font-weight:500;white-space:nowrap}.banner a:hover{text-decoration:underline}.header{position:sticky;top:0;z-index:20;background:#ffffffd1;-webkit-backdrop-filter:saturate(180%) blur(14px);backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--line)}.header .wrap{height:var(--header);display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:.6rem;font-size:.9375rem;font-weight:600;color:var(--ink);letter-spacing:-.02em}.brand-mark{width:1.75rem;height:1.75rem;border-radius:50%;transition:transform .45s var(--ease)}.brand:hover .brand-mark{transform:rotate(-10deg) scale(1.08)}.nav{display:flex;align-items:center;gap:.6rem}.nav-links{display:flex;align-items:center;gap:.1rem;padding:.25rem;background:#f6f4f0bf;border:1px solid var(--line);border-radius:999px}.nav-link{padding:.4rem .85rem;border-radius:999px;font-size:.9rem;font-weight:500;color:var(--body);transition:color .2s var(--ease),background-color .2s var(--ease),box-shadow .2s var(--ease)}.nav-link:hover{color:var(--ink);background:var(--paper);box-shadow:0 1px 2px #28262414,0 6px 14px #2826240f}.nav-cta{display:inline-flex;align-items:center;height:2.1rem;padding:0 .95rem;border-radius:999px;background:var(--btn);color:#fff;font-size:.9rem;font-weight:500;transition:transform .2s var(--ease),box-shadow .2s var(--ease)}.nav-cta:hover{color:#fff;background:#000;transform:translateY(-1px);box-shadow:0 8px 18px #17171729}h1,h2,h3{color:var(--ink);font-weight:500;letter-spacing:-.04em;margin:0}h1{font-size:clamp(2.25rem,5.2vw,3.65rem);line-height:1.08;max-width:16ch}h2{font-size:clamp(1.5rem,3vw,1.85rem);line-height:1.2;letter-spacing:-.03em}h3{font-size:1.125rem;letter-spacing:-.025em;line-height:1.35}.kicker{font-size:.8125rem;font-weight:500;color:var(--muted);margin:0 0 1.25rem}.lede{font-size:1.0625rem;line-height:1.55;color:var(--body);max-width:34rem;margin:1.25rem 0 0;letter-spacing:-.013em}.lede a{color:var(--ink);text-decoration:underline;text-underline-offset:.16em}.sub{font-size:1.0625rem;line-height:1.55;color:var(--muted);max-width:36rem;margin:.6rem 0 2rem}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:.85rem 1.25rem;margin-top:2rem}.btn{display:inline-flex;align-items:center;height:2.25rem;padding:0 1.05rem;border-radius:999px;background:var(--btn);color:#fff;font-size:.9375rem;font-weight:500;border:1px solid var(--btn);transition:transform .2s var(--ease),box-shadow .2s var(--ease),border-color .2s var(--ease)}.btn:hover{background:#000;color:#fff;transform:translateY(-2px);box-shadow:0 8px 18px #17171729}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}.btn-ghost:hover{background:transparent;color:var(--ink);border-color:var(--ink);box-shadow:none}.hero{position:relative;padding:3.5rem 0 4rem}.hero-glow{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 9rem);mask-image:linear-gradient(to bottom,transparent 0,#000 9rem)}.hero-glow:before,.hero-glow:after{content:"";position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;animation:glow 14s ease-in-out infinite}.hero-glow:before{width:34rem;height:34rem;right:4%;top:-8rem;background:radial-gradient(circle,#ffd9bf,#ffd9bf00 70%)}.hero-glow:after{width:28rem;height:28rem;right:28%;top:6rem;background:radial-gradient(circle,#dfe6ff,#dfe6ff00 70%);animation-delay:-6s}.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:3rem 4rem;align-items:center}.hero-copy>*{animation:rise .8s var(--ease) both}.hero-copy>:nth-child(2){animation-delay:.08s}.hero-copy>:nth-child(3){animation-delay:.16s}.hero-copy>:nth-child(4){animation-delay:.24s}.product-mark{display:inline-flex;align-items:center;gap:.65rem;margin:0 0 1.75rem;color:var(--ink);font-size:1.05rem;font-weight:600;letter-spacing:-.03em}.product-mark img{width:2.5rem;height:2.5rem;border-radius:50%}.product-mark small{font-size:.8125rem;font-weight:500;color:var(--muted);letter-spacing:-.01em}.vis-card{background:#ffffffeb;border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 60px #2826241a;animation:drift 9s ease-in-out infinite}.vis-bar{display:flex;align-items:center;gap:.35rem;padding:.7rem 1rem;border-bottom:1px solid var(--line);font-size:.75rem;font-weight:500;color:var(--muted)}.vis-bar i{width:.55rem;height:.55rem;border-radius:50%;background:#ddd8d2}.vis-bar span{margin-left:.5rem}.vis-body{margin:0;padding:1rem 1.1rem 1.15rem;font-size:.8125rem;line-height:1.7;color:var(--body);overflow-x:auto;white-space:pre}.vis-body .you{color:var(--ink);font-weight:600}.vis-body .tool{color:var(--muted)}.vis-body .ai{color:var(--ink)}.vis-body .perm{color:var(--accent);font-weight:600}.vis-body .add{color:var(--good)}.vis-body .del{color:var(--bad)}.vis-caret{display:inline-block;width:.5rem;height:.95rem;margin-left:.2rem;vertical-align:-.15rem;background:var(--ink);animation:caret 1s steps(1) infinite}.section{padding:4rem 0;border-top:1px solid var(--line)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(15.5rem,100%),1fr));gap:1rem}.card{padding:1.25rem 1.35rem 1.4rem;background:var(--paper);border:1px solid var(--line);border-radius:16px;transition:transform .3s var(--ease),border-color .3s var(--ease),box-shadow .3s var(--ease)}.card:hover{transform:translateY(-4px);border-color:#dcd7d0;box-shadow:0 14px 34px #28262414}.card p{margin:.3rem 0 0;font-size:.9375rem;color:var(--muted);line-height:1.45}.num{font-size:2.6rem;font-weight:500;letter-spacing:-.05em;color:var(--accent);line-height:1;margin-bottom:.5rem}.tag{display:inline-flex;padding:.18rem .6rem;border-radius:999px;background:var(--sand);color:var(--body);font-size:.75rem;font-weight:500}.tag-hot{background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-ink)}.note{margin:1.25rem 0 0;padding:.9rem 1.1rem;background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:14px;font-size:.9375rem;line-height:1.5;color:var(--body)}.note strong{color:var(--ink);font-weight:600}.install h3{margin:1.75rem 0 .6rem}.install h3:first-of-type{margin-top:0}pre.cmd{margin:0;padding:.85rem 1rem;background:var(--sand);border-radius:10px;overflow-x:auto;font-size:.875rem;line-height:1.7;color:var(--ink)}pre.cmd .p{color:var(--accent);user-select:none}.soon{opacity:.6}.soon-label{margin-left:.5rem;vertical-align:.1em}.table-wrap{overflow-x:auto}table{width:100%;min-width:30rem;border-collapse:collapse;font-size:.9375rem;line-height:1.5;text-align:left}th,td{padding:.7rem .9rem;vertical-align:top;border-bottom:1px solid var(--line)}thead th{background:var(--sand);color:var(--ink);font-weight:600}tbody td:first-child{color:var(--ink)}td{color:var(--muted)}td.ok{color:var(--good)}td.no{color:var(--accent-ink)}tbody tr:last-child td{border-bottom:0}.footer{border-top:1px solid var(--line);padding:1.4rem 0 2rem}.footer-inner{width:min(var(--measure),calc(100% - (2 * var(--gutter))));margin-inline:auto;display:flex;flex-direction:column;align-items:center;gap:.65rem;text-align:center;font-size:.875rem;color:var(--muted)}.socials{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1.2rem}.socials a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:.16em}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes drift{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,-10px,0)}}@keyframes glow{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(3%,4%,0) scale(1.08)}}@keyframes caret{50%{opacity:0}}@media(max-width:960px){.hero-grid{grid-template-columns:minmax(0,1fr)}.hero-glow:before{width:22rem;height:22rem}}@media(max-width:560px){.vis-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.75rem}}@media(max-width:720px){.nav-links{display:none}.hero{padding-top:2.5rem}.section{padding:3rem 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.install-box{border:1px solid var(--line);border-radius:16px;background:var(--paper);box-shadow:0 14px 34px #2826240f;overflow:hidden}.install-tabs{display:none;background:var(--sand);border-bottom:1px solid var(--line);overflow-x:auto}.is-tabbed .install-tabs{display:flex}.install-tab{appearance:none;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:.875rem;font-weight:500;padding:.85rem 1.15rem;cursor:pointer;white-space:nowrap;position:relative;transition:color .2s var(--ease),background-color .2s var(--ease)}.install-tab:hover{color:var(--ink)}.install-tab[aria-selected=true]{background:var(--paper);color:var(--ink)}.install-tab[aria-selected=true]:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent)}.install-tab:focus-visible,.copy-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.install-panel{padding:1.25rem 1.35rem 1.1rem}.install-panel+.install-panel{border-top:1px solid var(--line)}.install-panel[hidden]{display:none}.install-cmd{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;background:var(--sand);border-radius:12px;padding:.9rem 1rem}.install-cmd pre{margin:0;font-size:.9rem;line-height:1.8;color:var(--ink);overflow-x:auto;flex:1;min-width:0}.install-cmd .ln{display:block;white-space:pre}.install-cmd .p{color:var(--accent);user-select:none}.copy-btn{appearance:none;flex:none;height:2rem;padding:0 .9rem;border-radius:999px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:border-color .2s var(--ease),transform .2s var(--ease)}.copy-btn:hover{border-color:var(--ink);transform:translateY(-1px)}.install-note{margin:.85rem 0 0;font-size:.875rem;line-height:1.5;color:var(--muted)}.install-next{margin:1.25rem 0 0;font-size:.9375rem;line-height:1.6;color:var(--muted)}.install-next a{color:var(--ink);text-decoration:underline;text-underline-offset:.16em}@media(max-width:560px){.install-cmd{flex-direction:column}.copy-btn{align-self:flex-end}}.demo-box{width:min(100%,46rem);border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#282a36;box-shadow:0 14px 34px #2826241a;min-height:6rem}.demo-hint{display:none;margin:.8rem 0 0;font-size:.875rem;color:var(--muted)}@media(max-width:720px){.demo-hint{display:block}.demo-box{overflow-x:auto;-webkit-overflow-scrolling:touch}}.demo-box .ap-wrapper,.demo-box .ap-player{border-radius:0}.demo-links{margin:.9rem 0 0;font-size:.875rem;color:var(--muted)}.demo-links a{color:var(--ink);text-decoration:underline;text-underline-offset:.16em}.progress{position:fixed;inset:0 0 auto;height:3px;z-index:40;pointer-events:none;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--accent),#ff8a3d,#ffb27a)}html:not(.motion-ok) .progress{display:none}.wm{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.14em;margin-bottom:-.14em}.w{display:inline-block}html.motion-ok .w{opacity:0;transform:translateY(110%)}html.motion-ok html.motion-ok .hero-copy>:not(h1),html.motion-ok .hero .vis-card,html.motion-ok .section .kicker,html.motion-ok .section h2,html.motion-ok .section .sub,html.motion-ok .grid .card,html.motion-ok .num,html.motion-ok .note,html.motion-ok .install-box,html.motion-ok .demo-box,html.motion-ok .install-next,html.motion-ok .demo-links,html.motion-ok .table-wrap tbody tr{opacity:0}html.motion-ok .hero-copy>*,html.motion-ok .vis-card{animation:none}html.motion-ok .vis-body [data-line]{opacity:0}html.motion-ok .num{transform-origin:0 100%}html.motion-ok .hero-grid{perspective:1100px}html.motion-ok .grid{perspective:900px}html.motion-ok .card{transition:border-color .3s var(--ease),box-shadow .3s var(--ease);will-change:transform}html.motion-ok .card:hover{transform:none}html.motion-ok .btn,html.motion-ok .nav-cta{transition:box-shadow .2s var(--ease),border-color .2s var(--ease)}html.motion-ok .btn:hover,html.motion-ok .nav-cta:hover{transform:none}.install-tabs{position:relative}.install-ink{position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--accent);border-radius:2px;pointer-events:none}.has-ink .install-tab[aria-selected=true]:after{display:none}
