:root{color-scheme:light dark}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*,:after,:before{box-sizing:border-box}body{margin:0;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}html{scroll-behavior:smooth}h1,h2,h3{text-wrap:balance}dd,li,p{text-wrap:pretty}.skip{position:absolute;top:8px;left:8px;z-index:60;padding:8px 12px;border-radius:8px;background:var(--ink);color:var(--cloud);font:14px system-ui,sans-serif;transform:translateY(-200%)}.skip:focus{transform:none}:focus-visible{outline:2px solid currentColor;outline-offset:3px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}:root{--mist:#a7a8b1;--ink:#393b45;--cloud:#f4f4f6;--mist-type:light-dark(#8a8b96,var(--mist));--ease:cubic-bezier(0.2,0.8,0.2,1);--head:"Helvetica Neue",Helvetica,Arial,sans-serif;--body:-apple-system,BlinkMacSystemFont,"Helvetica Neue",system-ui,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,monospace}.btn{-webkit-tap-highlight-color:transparent;transition:background-color .2s,border-color .2s,color .2s,box-shadow .2s,transform .2s var(--ease)}.btn:active{transform:translateY(1px) scale(.98)}.btn .i{width:1.15em;height:1.15em}.more{display:inline-flex;gap:.35em;align-items:center;font-weight:600;text-decoration:none;-webkit-tap-highlight-color:transparent}.more:after{content:"→";transition:transform .2s var(--ease)}.more:hover:after{transform:translateX(3px)}.more:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}.i{width:1em;height:1em;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}:root{--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .22 0 0 0 0 .23 0 0 0 0 .27 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}:root[data-theme=dark]{--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .96 0 0 0 0 .96 0 0 0 0 .97 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .96 0 0 0 0 .96 0 0 0 0 .97 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}}.grain:before{content:"";position:fixed;inset:0;z-index:-1;background:var(--grain);pointer-events:none}.wm{--m-bg:light-dark(#fff,#1e1e1e);--m-fg:light-dark(#1d1d1f,#e8e8ea);--m-soft:light-dark(#6e6e73,#98989d);--m-side:light-dark(#ececee,#2a2a2d);--m-line:light-dark(#0000001a,#ffffff1a);--m-field:light-dark(#e4e4e7,#3a3a3d);--m-blue:light-dark(#0a6cff,#0a84ff);--m-sel:light-dark(#d8d8dc,#4a4a4e);display:flex;flex-direction:column;width:1280px;height:800px;overflow:hidden;border-radius:12px;background:var(--m-bg);color:var(--m-fg);box-shadow:0 0 0 .5px light-dark(rgb(57 59 69/.28),rgb(255 255 255/.14)),0 2px 6px light-dark(rgb(57 59 69/.1),rgb(0 0 0/.4)),0 36px 90px -16px light-dark(rgb(57 59 69/.42),rgb(0 0 0/.75));font:13px/1.4 -apple-system,BlinkMacSystemFont,Helvetica Neue,sans-serif;text-align:start;transform-origin:0 0;user-select:none}.wm-fit{position:relative;width:100%;min-width:0;aspect-ratio:1280/800;min-height:400px}.wm-fit:not(.fitted)>.wm{visibility:hidden}.wm-fit.wm-cropped{overflow:hidden;border-radius:12px}.wm-fit>.wm{position:absolute;top:0;left:0;transform-origin:0 0}.wm-i{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.wm-title{display:flex;gap:8px;align-items:center;height:38px;padding:0 14px;border-bottom:1px solid var(--m-line);background:var(--m-side);font-weight:600}.wm-title i{width:12px;height:12px;border-radius:50%;background:#ff5f57;box-shadow:inset 0 0 0 .5px rgb(0 0 0/.12)}.wm-title i:nth-child(2){background:#febc2e}.wm-title i:nth-child(3){background:#28c840}.wm-title span{flex:1;margin-right:60px;text-align:center}.wm-body{display:flex;flex:1;min-height:0}.wm-side{width:220px;flex:none;padding:10px;border-right:1px solid var(--m-line);background:var(--m-side)}.wm-section{margin:12px 8px 4px;color:var(--m-soft);font-size:11px;font-weight:600}.wm-row{display:flex;gap:8px;align-items:center;margin:0;padding:4px 8px;border-radius:6px}.wm-row .wm-i{color:var(--m-blue)}.wm-row--child{padding-left:30px}.wm-row--on{background:var(--m-sel)}.wm-main{display:flex;flex:1;flex-direction:column;min-width:0}.wm-filter{padding:8px 12px;border-bottom:1px solid var(--m-line)}.wm-search{display:flex;gap:6px;align-items:center;width:240px;height:26px;padding:0 8px;border-radius:6px;background:var(--m-field);color:var(--m-soft);transition:box-shadow .2s}.wm-search .wm-i{width:13px;height:13px}.wm-search input{width:100%;border:0;background:none;color:var(--m-fg);font:inherit;outline:0}.wm-grid{display:grid;flex:1;grid-template-columns:repeat(auto-fill,150px);grid-auto-rows:min-content;gap:6px 10px;align-content:start;justify-content:space-between;overflow:hidden;padding:14px 18px}.wm-cell{display:grid;justify-items:center;gap:4px;margin:0;padding:6px;border-radius:8px;transition:opacity .25s,transform .25s var(--ease)}.wm-cell.is-gone,.wm-cell[hidden]{display:none}.wm-thumb{display:grid;place-items:center;width:128px;height:128px}.wm-thumb img{max-width:128px;max-height:128px;background:var(--m-field);box-shadow:0 1px 3px rgb(0 0 0/.25)}.wm-cell figcaption{max-width:138px;overflow:hidden;padding:0 6px;border-radius:4px;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.wm-cell.is-selected{background:var(--m-sel)}.wm-cell.is-selected figcaption{background:var(--m-blue);color:#fff}.wm-status{position:relative;display:flex;justify-content:center;align-items:center;height:28px;border-top:1px solid var(--m-line);background:var(--m-side);color:var(--m-soft);font-size:12px;font-variant-numeric:tabular-nums}.wm-slider{position:absolute;top:50%;right:16px;width:92px;height:4px;border-radius:2px;background:linear-gradient(to right,var(--m-blue) 0 58%,var(--m-field) 58%);transform:translateY(-50%)}.wm-slider:after{content:"";position:absolute;top:50%;left:58%;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 0 0 .5px rgb(0 0 0/.2),0 1px 3px rgb(0 0 0/.3);transform:translate(-50%,-50%)}.show{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#000;color:#eee;font:14px/1.4 -apple-system,BlinkMacSystemFont,Helvetica Neue,sans-serif}.show::backdrop{background:#000}.show[open]{animation:show-in .28s var(--ease)}@keyframes show-in{0%{opacity:0}}.show-img{width:100%;height:100%;max-width:none;object-fit:contain;user-select:none;-webkit-user-drag:none}.show-toast{position:absolute;bottom:28px;left:50%;margin:0;padding:6px 14px;border-radius:8px;background:rgb(30 30 30/.75);font-variant-numeric:tabular-nums;white-space:nowrap;transform:translateX(-50%)}.show-btn{position:absolute;display:grid;place-items:center;min-width:44px;height:44px;padding:0 12px;border:0;border-radius:22px;background:rgb(30 30 30/.75);color:#eee;font:inherit;cursor:pointer;transition:background-color .2s}.show-btn:hover{background:rgb(60 60 64/.9)}.show-btn .i{width:18px;height:18px}.show-close{top:16px;right:16px}.show-next,.show-prev{top:50%;transform:translateY(-50%)}.show-prev{left:16px}.show-next{right:16px}@media (hover:hover) and (pointer:fine){.show-next,.show-prev{opacity:0;transition:opacity .2s,background-color .2s}.show-next:focus-visible,.show-prev:focus-visible,.show:hover .show-next,.show:hover .show-prev{opacity:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.more:after,.show-btn,.wm-cell{transition:none}.btn:active{transform:none}.show[open]{animation:none}}.w-mark,.w-word{display:inline-block;background:currentColor;mask:url(/wene/mark.png) center/contain no-repeat}.w-mark{width:1em;height:1em}.w-word{width:3.33em;height:1em;mask-image:url(/wene/wordmark.svg)}:root{--bg:light-dark(#f7f7f9,#121317);--fg:light-dark(var(--ink),#f2f2f5);--soft:light-dark(#5f606b,#a7a8b1);--line:light-dark(rgb(57 59 69/0.12),rgb(255 255 255/0.1));--key:light-dark(#fff,#2a2b31);--key-line:light-dark(rgb(57 59 69/0.2),rgb(255 255 255/0.14));--cap-fg:light-dark(var(--ink),#f2f2f5);--cap-edge:light-dark(#c3c4cc,#15161a);--slab:light-dark(#e3e3e8,#26272d);--slab-edge:light-dark(#d2d3da,#1a1b1f)}body{background:var(--bg);color:var(--fg);font:17px/1.55 var(--body)}body:after{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(70rem 44rem at 8% -12%,light-dark(rgb(167 168 177/.32),rgb(167 168 177/.1)),transparent 70%),radial-gradient(48rem 32rem at 100% 38%,light-dark(rgb(57 59 69/.06),rgb(244 244 246/.03)),transparent 70%);pointer-events:none}a{color:inherit}.wrap{width:min(1200px,100% - 2 * clamp(16px,3vw,40px));margin-inline:auto}h1,h2,h3{margin:0;font-family:var(--head);font-weight:700}.top{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);background:light-dark(rgb(247 247 249/.72),rgb(18 19 23/.72));backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px)}.top .wrap{gap:22px;height:54px}.brand,.top .wrap{display:flex;align-items:center}.brand{gap:10px;margin-inline-end:auto;font-size:22px;text-decoration:none}.brand .w-word{margin-inline-start:-.71em;font-size:26px}.top nav{display:flex;gap:22px;align-items:center;font-size:14px}.top nav a:not(.btn){color:var(--soft);text-decoration:none;transition:color .2s}.top nav a:not(.btn):is(:hover,[aria-current]){color:var(--fg)}.top .theme-toggle{display:inline-flex;padding:4px;border:0;background:none;color:var(--soft);cursor:pointer;transition:color .2s}.top .theme-toggle:hover{color:var(--fg)}.btn{display:inline-flex;gap:9px;align-items:center;min-height:48px;padding:0 24px;border-radius:999px;background:var(--fg);color:var(--bg);font-size:17px;font-weight:600;text-decoration:none}.btn:hover{background:light-dark(#262830,#fff);box-shadow:0 10px 30px -10px light-dark(rgb(57 59 69/.7),rgb(0 0 0/.8))}.btn--small{min-height:32px;padding:0 14px;font-size:13px}kbd{display:inline-grid;place-items:center;min-width:1.9em;height:1.9em;padding:0 .45em;border:solid var(--key-line);border-width:1px 1px 2px;border-radius:7px;background:var(--key);color:var(--fg);font:500 14px/1 var(--body)}.hero{overflow-x:clip;padding-block:clamp(48px,7vw,96px) 0}.hero .wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,4vw,64px);align-items:center}.hero-text{display:grid;justify-items:start;gap:22px;animation:lift .9s var(--ease) both}@keyframes lift{0%{opacity:0;transform:translateY(16px)}}.hero .icon{width:88px;height:88px;margin-bottom:4px;filter:drop-shadow(0 12px 20px light-dark(rgb(57 59 69/.22),rgb(0 0 0/.6)))}h1{font-size:clamp(44px,5.8vw,70px);letter-spacing:-.045em;line-height:.95}.lede{max-width:30ch;margin:0;color:var(--soft);font-size:clamp(19px,1.7vw,22px);line-height:1.45}.lede b{color:var(--fg);font-weight:600}.cta{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center}.meta{margin:0;color:var(--soft);font-size:14px;font-variant-numeric:tabular-nums}.demo{display:grid;gap:18px;border-radius:16px;outline-offset:10px;animation:lift .8s var(--ease) .12s both}.demo .wm-grid{position:relative;scroll-behavior:smooth}.demo .wm-cell.is-leaving{opacity:0;transform:scale(.6) translateY(20px)}.demo.is-typing .wm-search{box-shadow:0 0 0 3px light-dark(#0a6cff55,#0a84ff77)}.slab{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;justify-self:center;margin:0;padding:14px 16px 10px;border-radius:18px;background:linear-gradient(var(--slab),var(--slab-edge));box-shadow:inset 0 1px 0 light-dark(rgb(255 255 255/.7),rgb(255 255 255/.06)),0 1px 2px light-dark(rgb(57 59 69/.15),rgb(0 0 0/.5));list-style:none}.cap{display:grid;justify-items:center;gap:6px;padding:0;border:0;background:none;color:var(--fg);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.cap-face{display:grid;place-items:center;min-width:64px;height:60px;padding:0 14px;border-radius:10px;background:linear-gradient(light-dark(#fff,#44454e),light-dark(#f4f4f6,#393a42));color:var(--cap-fg);font:500 24px/1 var(--body);box-shadow:0 3px 0 var(--cap-edge),0 4px 8px light-dark(rgb(57 59 69/.18),rgb(0 0 0/.5));transition:transform .08s,box-shadow .08s,background-color .15s}.cap-face--wide{min-width:92px}.cap:hover .cap-face{background:light-dark(#fff,#4b4c56)}.cap.is-down .cap-face,.cap:active .cap-face{transform:translateY(3px);box-shadow:0 0 0 var(--cap-edge),0 1px 2px light-dark(rgb(57 59 69/.2),rgb(0 0 0/.5))}.cap-label{color:var(--soft);font-size:12px;font-weight:500}.cap-label b{color:var(--fg);font-variant-numeric:tabular-nums}.hint{display:flex;gap:10px;align-items:center;justify-content:center;min-height:24px;margin:0;color:var(--soft);font-size:14px;text-align:center}.hint:before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--mist);transition:background-color .3s}.demo.is-live .hint:before{background:#28c840;box-shadow:0 0 0 4px rgb(40 200 64/.18)}section{padding-top:clamp(80px,10vw,128px)}.sec-head{max-width:46rem;margin-bottom:40px}h2{margin-bottom:14px;font-size:clamp(34px,4.6vw,60px);letter-spacing:-.04em;line-height:1}.intro{margin:0;color:var(--soft);font-size:20px}.parts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:48px 24px}.part{display:grid;align-content:start;gap:14px;padding-top:14px;border-top:2px solid var(--fg)}.part .n,.part h3{font-family:var(--head);font-weight:700;letter-spacing:-.035em;line-height:.92}.part .n{color:var(--mist-type);font-size:64px}.part h3{font-size:36px}.part .sum{margin:0;font-size:19px;font-weight:700;letter-spacing:-.01em;line-height:1.3}.part ul{display:grid;gap:8px;margin:0;padding:0;list-style:none;color:var(--soft);font-size:15px}.safe{position:relative}.safe blockquote{max-width:18ch;margin:0 0 22px;font-family:var(--head);font-size:clamp(36px,5.6vw,80px);font-weight:700;letter-spacing:-.045em;line-height:1}.safe blockquote span{color:var(--mist-type)}.safe p{max-width:40rem;margin:0;color:var(--soft)}.big-mark{position:absolute;right:0;bottom:-40px;z-index:-1;color:light-dark(rgb(57 59 69/.06),rgb(244 244 246/.05));font-size:clamp(200px,30vw,420px);pointer-events:none}.built{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:32px clamp(32px,5vw,72px)}.built>div{padding-top:22px;border-top:1px solid var(--line)}.label{margin:0 0 8px;color:var(--soft);font-size:14px;font-weight:600}.built h3{margin-bottom:12px;font-size:clamp(26px,2.6vw,34px);letter-spacing:-.03em;line-height:1.05}.built p{margin:0;color:var(--soft)}.built .formats-box h3{max-width:16ch;margin-bottom:22px;font-size:clamp(34px,4.6vw,64px);letter-spacing:-.035em;line-height:1}.formats{display:flex;flex-wrap:wrap;gap:4px 0;margin:26px 0 0;padding:0;list-style:none;font:600 15px/1.6 var(--mono)}.formats li:not(:last-child):after{content:"·";margin:0 12px;color:var(--soft);font-weight:400}.gh{display:inline-flex;gap:10px;align-items:center;margin-top:20px;font-weight:600;text-decoration:none}.gh:hover{text-decoration:underline}.gh svg{width:22px;height:22px;fill:currentColor}.sheet-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px 48px;align-items:end;max-width:none}.sheet-head h2{margin-bottom:0}.keys{display:inline-flex;flex-wrap:wrap;gap:5px;align-items:center}.keys .or{color:var(--soft);font-size:13px}.hud-stage{padding:clamp(16px,5vw,64px);border-radius:20px;background:linear-gradient(rgb(0 0 0/.35),rgb(0 0 0/.55)),url(/sample-photos/houseboats.jpg) 50% /cover}.hud{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(290px,100%),1fr));gap:36px 40px;padding:clamp(20px,3vw,36px);border-radius:16px;background:rgb(24 24 28/.82);color:#ececf0;box-shadow:inset 0 0 0 1px rgb(255 255 255/.08),0 30px 60px -20px rgb(0 0 0/.6);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);--key:#3a3b43;--key-line:rgb(0 0 0/0.6);--fg:#f2f2f5;--soft:#a7a8b1;--line:rgb(255 255 255/0.1)}.hud h3{margin-bottom:10px;font-size:22px;letter-spacing:-.02em}.hud table{width:100%;border-collapse:collapse}.hud td{padding:7px 0;border-top:1px solid var(--line);vertical-align:top}.hud td:first-child{width:48%;padding-inline-end:12px}.hud td:last-child{color:var(--soft);font-size:14px}.get{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center}.get img{width:168px;height:168px;filter:drop-shadow(0 18px 30px light-dark(rgb(57 59 69/.25),rgb(0 0 0/.6)))}.get h2{margin-bottom:12px}.get .meta{margin-bottom:26px;font-size:15px}.btn small{font-size:13px;font-weight:500;opacity:.7}.note{display:flex;gap:10px;max-width:44rem;margin:28px 0 0;color:var(--soft);font-size:15px}.note .i{flex:none;width:18px;height:18px;margin-top:3px;color:var(--fg)}.credit{max-width:42rem;margin:0 auto;padding-top:clamp(96px,12vw,152px);color:var(--soft);font-size:19px;text-align:center}.credit .w-mark{display:block;margin:0 auto 20px;color:var(--mist-type);font-size:56px}body>footer{margin-top:clamp(80px,10vw,120px);padding:24px 0 100px;border-top:1px solid var(--line);color:var(--soft);font-size:13px}body>footer .wrap{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between}body>footer a{text-decoration:none}body>footer a:hover{color:var(--fg);text-decoration:underline}@media (max-width:960px){.built,.hero .wrap,.sheet-head{grid-template-columns:minmax(0,1fr)}.parts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.slab{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:14px 10px}.cap-face,.cap-face--wide{width:100%;min-width:0;height:56px;font-size:22px}}@media (max-width:600px){.top nav a:not(.btn){display:none}.get,.parts{grid-template-columns:minmax(0,1fr)}.get img{width:112px;height:112px}}@media (prefers-reduced-motion:reduce){.demo,.hero-text{animation:none}.cap-face,.demo .wm-cell,.hint:before{transition:none}.demo .wm-grid{scroll-behavior:auto}}