twombly 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +461 -160
- package/dist/ui/assets/Landing-BKJA0CJt.js +111 -0
- package/dist/ui/assets/Landing-Da4YRp2T.css +1 -0
- package/dist/ui/assets/LandingStage-CqdIuQDE.css +1 -0
- package/dist/ui/assets/LandingStage-DyrNB5Ea.js +1 -0
- package/dist/ui/assets/index-B5osE1GC.js +10 -0
- package/dist/ui/assets/index-Dw-Z6e31.css +1 -0
- package/dist/ui/index.html +7 -4
- package/dist/ui/og.png +0 -0
- package/dist/ui/people/jaytel.jpg +0 -0
- package/dist/ui/people/marvin.jpg +0 -0
- package/package.json +1 -1
- package/dist/ui/assets/Landing-COHWYWgT.js +0 -109
- package/dist/ui/assets/Landing-I1VCX2fy.css +0 -1
- package/dist/ui/assets/LandingStage-D1WT-zxZ.css +0 -1
- package/dist/ui/assets/LandingStage-DQBFsXtF.js +0 -1
- package/dist/ui/assets/agentPrompt-CELnjtMR.js +0 -1
- package/dist/ui/assets/index-C8yZ6_xT.css +0 -1
- package/dist/ui/assets/index-NwhZOePg.js +0 -34
- package/dist/ui/assets/rolldown-runtime-WkwZ5CU-.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--canvas:oklch(97% 0 0);--surface:oklch(100% 0 0);--surface-2:oklch(95.5% 0 0);--surface-hover:oklch(0% 0 0/.05);--surface-pressed:oklch(0% 0 0/.09);--solid:oklch(0% 0 0);--on-solid:oklch(100% 0 0);--island:oklch(0% 0 0);--island-line:transparent;--island-hover:oklch(100% 0 0/.11);--text:oklch(0% 0 0);--secondary:oklch(42% 0 0);--muted:oklch(53% 0 0);--line:oklch(0% 0 0/.09);--line-subtle:oklch(0% 0 0/.06);--icon-muted:.58;--icon-secondary:.72;--frame-bg:oklch(100% 0 0);--accent:#06f;--selection:#0066ff1f;--guide:#06f9;--signal:#06f;--signal-soft:#0066ff21;--signal-soft-hover:#06f3;--danger:oklch(56% .21 27);--danger-soft:oklch(96% .025 25);--live:oklch(50% .14 150);--live-soft:oklch(96% .03 150);--backdrop:oklch(0% 0 0/.24);--shadow:0 0 0 .5px var(--line), 0 4px 8px -2px oklch(0% 0 0/.1), 0 14px 32px -8px oklch(0% 0 0/.3);--shadow-sm:0 0 0 1px var(--line);--pill:999px;--radius-menu:18px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--canvas:oklch(17.8% 0 0);--surface:oklch(16% 0 0);--surface-2:oklch(22% 0 0);--surface-hover:oklch(100% 0 0/.07);--surface-pressed:oklch(100% 0 0/.11);--solid:oklch(100% 0 0);--on-solid:oklch(0% 0 0);--island-line:oklch(100% 0 0/.13);--text:oklch(98.5% 0 0);--secondary:oklch(80% 0 0);--muted:oklch(66% 0 0);--line:oklch(100% 0 0/.09);--line-subtle:oklch(100% 0 0/.06);--icon-muted:.6;--icon-secondary:.74;--accent:#06f;--selection:#0066ff2e;--guide:#0066ffa6;--signal:#06f;--signal-soft:#06f3;--signal-soft-hover:#0066ff47;--danger:oklch(72% .18 25);--danger-soft:oklch(28% .06 25);--live:oklch(80% .15 150);--live-soft:oklch(28% .05 150);--backdrop:oklch(0% 0 0/.6);--shadow:0 0 0 .5px var(--line), 0 4px 8px -2px oklch(0% 0 0/.3), 0 14px 32px -8px oklch(0% 0 0/.5)}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--canvas);color:var(--text);font:400 13px/18px var(--font);-webkit-font-smoothing:antialiased;overflow:hidden}button,input,textarea{font:inherit;color:inherit}button{cursor:default;background:0 0;border:0;padding:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}a{color:inherit}.muted{color:var(--muted)}.spacer{flex:1}.full-message{height:100%;color:var(--muted);place-items:center;display:grid}.stage{background:var(--canvas);touch-action:none;-webkit-user-select:none;user-select:none;position:fixed;inset:0;overflow:hidden}.world{transform-origin:0 0;--inv:1;--zoom:1;width:0;height:0;position:absolute;top:0;left:0}.empty-canvas{color:var(--muted);pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.frame{transition:opacity .12s ease-out;position:absolute;top:0;left:0}.frame-surface{background:var(--frame-bg);box-shadow:0 0 0 calc(1px * var(--inv)) var(--line);position:absolute;inset:0;overflow:hidden}.frame iframe{background:#fff;border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.frame-poster{object-fit:cover;object-position:top left;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;position:absolute;inset:0}.frame-shield{cursor:var(--stage-cursor,default);position:absolute;inset:0}.stage[data-role=guest][data-tool=move] .frame-shield{cursor:pointer}.frame.selected .frame-surface,.frame.interacting .frame-surface{box-shadow:0 0 0 calc(1.5px * var(--inv)) var(--accent)}.frame-title{width:calc(100% * var(--zoom));height:26px;transform:scale(var(--inv));transform-origin:0 100%;color:var(--muted);white-space:nowrap;align-items:flex-end;padding-bottom:6px;font-size:12px;line-height:16px;display:flex;position:absolute;bottom:100%;left:0}.frame-title span{text-overflow:ellipsis;overflow:hidden}.frame.selected .frame-title,.frame.interacting .frame-title{color:var(--accent)}.frame-title input{border-radius:var(--pill);background:var(--surface-2);width:100%;max-width:280px;height:20px;color:var(--text);-webkit-user-select:text;user-select:text;border:0;outline:0;margin-left:-4px;padding:0 4px;font-size:12px}.frame-handle{border:1px solid var(--accent);border-radius:var(--pill);width:8px;height:8px;transform:scale(var(--inv));touch-action:none;background:#fff;position:absolute}.frame-handle.nw{cursor:nwse-resize;top:-4px;left:-4px}.frame-handle.ne{cursor:nesw-resize;top:-4px;right:-4px}.frame-handle.sw{cursor:nesw-resize;bottom:-4px;left:-4px}.frame-handle.se{cursor:nwse-resize;bottom:-4px;right:-4px}.frame-actions{z-index:1;transform:scale(var(--inv)) translate(var(--step-x,0), var(--step-y,0));transform-origin:100% 100%;opacity:0;pointer-events:none;padding-bottom:10px;transition:opacity .12s ease-out;display:flex;position:absolute;bottom:100%;right:0}.frame-actions[data-visible]{opacity:1;pointer-events:auto}.frame-actions:has(:focus-visible){opacity:1;pointer-events:auto}@media (hover:hover){.frame:hover>.frame-actions{opacity:1;pointer-events:auto}}.frame-focus{border-radius:var(--pill);background:var(--surface);width:28px;height:28px;box-shadow:var(--shadow-sm);color:var(--text);cursor:default;justify-content:center;align-items:center;transition:background-color .1s;display:flex}.frame-focus svg{opacity:var(--icon-muted);transition:opacity .1s}.frame-focus:hover{background:linear-gradient(var(--surface-hover) 0 0), var(--surface)}.frame-focus:hover svg{opacity:var(--icon-secondary)}.frame-focus:active{background:linear-gradient(var(--surface-pressed) 0 0), var(--surface)}.frame:hover>.frame-title,.frame.selected>.frame-title{padding-right:34px}.stage[data-tool=pencil] .frame:not(.focused) .frame-actions{display:none}.stage[data-focus] .frame:not(.focused){opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease-out,visibility 0s .12s}.stage[data-focus] .frame-surface{box-shadow:none}.frame-title{transition:opacity .12s ease-out}.stage[data-focus] .frame-title{opacity:0;pointer-events:none}.stage[data-returning] .frame,.stage[data-returning] .frame *{pointer-events:none!important}@media (prefers-reduced-motion:reduce){.frame,.stage[data-focus] .frame:not(.focused),.frame-actions{transition:none}}.guide{background:var(--guide);pointer-events:none;z-index:1000000;position:absolute}.marquee{background:var(--selection);box-shadow:0 0 0 calc(1px * var(--inv)) var(--accent);pointer-events:none;z-index:1000000;position:absolute}.cursors{pointer-events:none;z-index:40;position:absolute;inset:0;overflow:hidden}.cursor{will-change:transform;transition:opacity .18s ease-out;position:absolute;top:-4px;left:-3px}.cursor svg{filter:drop-shadow(0 1px 2px #00000040);display:block}.cursor-label{border-radius:var(--pill);color:#fff;white-space:nowrap;text-overflow:ellipsis;max-width:180px;padding:3px 7px;font-size:12px;font-weight:500;line-height:16px;position:absolute;top:18px;left:16px;overflow:hidden;box-shadow:0 1px 3px #0003}.follow-ring{pointer-events:none;z-index:60;position:fixed;inset:0}.follow-tab{border-radius:var(--pill);color:#fff;white-space:nowrap;z-index:61;align-items:center;gap:6px;height:28px;padding:0 10px;font-size:12px;font-weight:500;display:flex;position:fixed;top:50px;left:50%;transform:translate(-50%)}.face{color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:500;line-height:1;display:inline-flex;position:relative;overflow:hidden}.face img{object-fit:cover;width:100%;height:100%;display:block}.face.more{background:var(--surface-2);width:24px;height:24px;color:var(--text);font-size:10px}.faces{flex-direction:row-reverse;align-items:center;padding:0 6px 0 10px;display:flex}.face-button{box-shadow:0 0 0 2px var(--surface);border-radius:50%;margin-left:-6px;transition:transform .1s ease-out;position:relative}.face-button:hover{z-index:2;transform:translateY(-1px)}.face-button.following{box-shadow:0 0 0 2px var(--surface), 0 0 0 3.5px var(--peer);z-index:2}.face-button .face{display:flex}.chrome{z-index:50;-webkit-user-select:none;user-select:none;cursor:default}.shell{border-radius:var(--pill);background:var(--surface);height:38px;box-shadow:var(--shadow-sm);align-items:center;gap:2px;padding:3px;display:flex;position:fixed}:root[data-color-scheme=dark] .stage :is(.shell,.frame-focus){--surface:oklch(25% 0 0);box-shadow:none}.shell-divider{background:var(--line);flex:none;width:1px;height:20px;margin:0 4px}.top-left,.top-right,.toolbar{top:calc(6px + env(safe-area-inset-top))}.top-left{max-width:calc(50vw - 48px);padding-left:11px;left:6px}.top-right{right:6px}.wordmark{color:var(--text);flex:none;padding-right:2px;display:inline-flex}.wordmark svg{width:auto;height:14px;display:block}.top-left .wordmark svg{translate:0 1px}.canvas-name{border-radius:var(--pill);text-overflow:ellipsis;white-space:nowrap;min-width:0;height:32px;color:var(--muted);text-align:left;padding:0 8px;line-height:32px;transition:background-color .1s,color .1s;display:block;overflow:hidden}button.canvas-name:hover{background:var(--surface-hover);color:var(--text)}.canvas-name-field{border-radius:var(--pill);background:var(--surface-hover);flex:0 auto;grid-template-columns:minmax(0,max-content);min-width:48px;height:32px;display:inline-grid}.canvas-name-field:after{content:attr(data-value) " ";visibility:hidden;white-space:pre;grid-area:1/1;height:0;padding:0 8px;overflow:hidden}.canvas-name-input{-webkit-user-select:text;user-select:text;background:0 0;border:0;grid-area:1/1;width:0;min-width:100%;height:32px;padding:0 8px}.canvas-name-input:focus-visible,.frame-title input:focus-visible,.canvas-card-rename:focus-visible{outline:0}.canvas-name-input::selection{background:color-mix(in oklch, var(--accent) 32%, transparent)}.frame-title input::selection{background:color-mix(in oklch, var(--accent) 32%, transparent)}.canvas-card-rename::selection{background:color-mix(in oklch, var(--accent) 32%, transparent)}.primary-button{border-radius:var(--pill);background:var(--solid);height:32px;color:var(--on-solid);flex:none;justify-content:center;align-items:center;padding:0 12px;font-weight:500;transition:opacity .1s;display:inline-flex}.primary-button:hover{opacity:.85}.primary-button:disabled{opacity:.4}.sign-in{border-radius:var(--pill);height:32px;color:var(--secondary);align-items:center;padding:0 10px;font-weight:500;text-decoration:none;transition:background-color .1s;display:inline-flex}.sign-in:hover{background:var(--surface-hover)}.icon-button{border-radius:var(--pill);width:28px;height:28px;color:var(--text);flex:none;justify-content:center;align-items:center;transition:background-color .1s;display:inline-flex}.icon-button svg,.tool svg{opacity:var(--icon-muted);transition:opacity .1s}.icon-button:hover{background:var(--surface-hover)}.icon-button:hover svg,.tool:hover svg{opacity:var(--icon-secondary)}.icon-button:active:not(:disabled),.tool:active{background:var(--surface-pressed)}.icon-button:disabled{opacity:.4}.icon-button.small{border-radius:var(--pill);width:24px;height:24px}.icon-button.on,.icon-button.danger-text{background:0 0}.icon-button.on{color:var(--signal)}.icon-button.danger-text{color:var(--danger)}.icon-button.on svg,.icon-button.danger-text svg{opacity:1}.shell .icon-button{border-radius:var(--pill);width:32px;height:32px}.link-button{font-size:12px;font-weight:500;text-decoration:none}.link-button:hover{text-decoration:underline}.link-button.quiet{color:var(--muted)}.link-button.danger{color:var(--danger)}.toolbar{left:50%;transform:translate(-50%)}.tool{border-radius:var(--pill);width:32px;height:32px;color:var(--text);justify-content:center;align-items:center;transition:background-color .1s,color .1s;display:flex}.tool:hover{background:var(--surface-hover)}.tool.on,.shell .icon-button.on{background:var(--signal-soft);color:var(--signal)}.tool.on:hover,.shell .icon-button.on:hover{background:var(--signal-soft-hover)}.tool.on svg,.tool.on:hover svg{opacity:1}.zoom{right:6px;bottom:calc(6px + env(safe-area-inset-bottom))}.zoom-value{border-radius:var(--pill);min-width:44px;height:32px;color:var(--secondary);text-align:center;font-variant-numeric:tabular-nums;font-size:12px;transition:background-color .1s}.zoom-value:hover{background:var(--surface-hover)}.notice{border-radius:var(--pill);background:var(--island);color:#fff;height:32px;box-shadow:inset 0 0 0 1px var(--island-line);white-space:nowrap;align-items:center;gap:6px;padding:0 12px;display:flex;position:fixed;bottom:12px;left:50%;transform:translate(-50%)}.working-bubble{left:50%;bottom:calc(6px + env(safe-area-inset-bottom));color:var(--secondary);white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;gap:8px;padding:0 14px 0 12px;font-size:12px;transition:opacity .15s ease-out,transform .15s ease-out,visibility .15s;transform:translate(-50%)translateY(8px)scale(.97)}.working-bubble[data-show]{opacity:1;visibility:visible;transition:opacity .2s cubic-bezier(.22,1,.36,1),transform .2s cubic-bezier(.22,1,.36,1),visibility;transform:translate(-50%)}.working-scribble{flex:none}.working-scribble path{fill:none;stroke:var(--signal);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1 1;animation:1.8s cubic-bezier(.65,0,.35,1) infinite paused scribble}.working-bubble[data-show] .working-scribble path{animation-play-state:running}@keyframes scribble{0%{stroke-dashoffset:1px}55%{stroke-dashoffset:0}to{stroke-dashoffset:-1px}}.reconnecting{border-radius:var(--pill);background:var(--surface);height:28px;box-shadow:var(--shadow-sm);color:var(--muted);padding:5px 10px;font-size:12px;position:fixed;top:50px;left:50%;transform:translate(-50%)}.share-split{flex:none;gap:1px;display:inline-flex}.share-split .primary-button:first-child{border-radius:var(--pill) 6px 6px var(--pill);gap:4px;min-width:84px;padding:0 10px 0 12px}.share-split .primary-button:not(:first-child){border-radius:6px var(--pill) var(--pill) 6px;width:28px;padding:0 3px 0 0}.share-sharing,.share-sharing:hover{background:var(--surface-2);color:var(--muted);opacity:1;position:relative;overflow:hidden}.share-sharing i{background:var(--surface-pressed);transition:width .2s ease-out;position:absolute;inset:0 auto 0 0}.share-sharing span{position:relative}.share-note{max-width:240px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;padding:0 8px;font-size:12px;line-height:32px;overflow:hidden}.share-note.error{color:var(--danger)}.share-menu{width:212px}.share-menu .canvas-menu-item{padding:0 12px}.share-menu-link{color:oklch(100% 0 0/.6);text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:text;user-select:text;padding:6px 12px;font-size:12px;overflow:hidden}.modal-backdrop{background:var(--backdrop);z-index:70;place-items:center;display:grid;position:fixed;inset:0}.name-prompt{border-radius:var(--radius-menu);background:var(--surface);width:320px;max-width:calc(100vw - 32px);box-shadow:var(--shadow);gap:6px;padding:8px;display:flex}.name-prompt input{border-radius:var(--pill);background:var(--surface-2);-webkit-user-select:text;user-select:text;border:0;flex:1;min-width:0;height:32px;padding:0 10px}.name-prompt .primary-button{border-radius:var(--pill)}.huddle-faces{align-items:center;display:inline-flex}.huddle-bar{align-items:center;gap:2px;padding-left:7px;display:inline-flex}.huddle-bar .huddle-faces{padding-right:5px}.huddle-face{--level:0;box-shadow:0 0 0 2px var(--surface), 0 0 0 calc(2px + var(--level) * 2px) var(--live);border-radius:50%;margin-left:-5px;transition:box-shadow .1s ease-out;display:inline-flex;position:relative}.huddle-faces .huddle-face:first-child{margin-left:0}.huddle-face.muted{box-shadow:0 0 0 2px var(--surface)}.huddle-face.muted:after{content:"";width:12px;height:12px;box-shadow:0 0 0 1.5px var(--surface);background:var(--danger) no-repeat center / 8px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M3 3l18 18'/%3E%3Cpath d='M8 8v3.5a4 4 0 0 0 6.5 3.1M16 11.5V6.5a4 4 0 0 0-7.6-1.7'/%3E%3C/svg%3E");border-radius:50%;position:absolute;bottom:-3px;right:-3px}.huddle-bar.joining .huddle-face{opacity:.55}.shell .huddle-leave,.shell .huddle-leave:hover{background:var(--danger-soft);color:var(--danger)}.huddle-leave svg,.huddle-leave:hover svg{opacity:1}.huddle-button.live{border-radius:var(--pill);height:32px;color:var(--live);align-items:center;gap:6px;padding:0 6px 0 8px;transition:background-color .1s;display:inline-flex}.huddle-button.live:hover{background:var(--surface-hover)}.huddle-button.live .huddle-faces .face{box-shadow:0 0 0 2px var(--surface);margin-left:-5px}.huddle-button.live .huddle-faces .face:first-child{margin-left:0}.huddle-notice{white-space:nowrap;align-items:center;gap:8px;height:32px;padding:0 0 0 6px;display:inline-flex}.huddle-notice b{font-weight:500}.huddle-notice .join{border-radius:var(--pill);background:var(--live-soft);height:32px;color:var(--live);align-items:center;padding:0 10px;font-weight:500;display:inline-flex}.huddle-error{height:32px;color:var(--muted);white-space:nowrap;align-items:center;padding:0 8px;display:inline-flex}.comments-layer{pointer-events:none;z-index:30;position:absolute;inset:0;overflow:hidden}.comments-layer>*{pointer-events:auto}.comment-pin{background:var(--surface);width:32px;max-width:32px;height:32px;max-height:32px;box-shadow:var(--shadow);text-align:left;touch-action:none;border-radius:16px 16px 16px 0;align-items:flex-start;gap:8px;padding:4px;transition:max-width .1s ease-in-out,max-height .1s ease-in-out,padding .1s ease-in-out;display:flex;position:absolute;overflow:hidden;transform:translateY(-100%)}.comment-pin.new{background:var(--accent)}.comment-pin.active,.comment-pin.unread{box-shadow:0 0 0 2px var(--accent), var(--shadow)}.comment-pin.resolved .face{opacity:.45}.comment-pin-preview{opacity:0;flex-direction:column;gap:0;min-width:0;font-size:11px;line-height:16px;transition:opacity .1s ease-in-out;display:flex}.comment-pin-preview b{font-weight:500}.comment-pin-head{white-space:nowrap}.comment-pin-text{-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.comment-pin.expanded{z-index:5;width:240px;max-width:240px;height:auto;max-height:112px;padding:12px}.comment-pin.expanded .face{width:26px!important;height:26px!important}.comment-pin.expanded .comment-pin-preview{opacity:1;flex:1}.composer{background:var(--surface);box-shadow:0 0 0 1px var(--accent), var(--shadow);-webkit-user-select:text;user-select:text;cursor:auto;border-radius:13px;flex-direction:column;display:flex;position:absolute}.composer-input{align-items:flex-start;gap:8px;padding:8px 16px;display:flex}.composer-input textarea{flex:1;min-width:0}.composer textarea,.thread-reply textarea{resize:none;-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:0;width:100%;padding:0;font-size:13px;line-height:24px;display:block;overflow-y:auto}.composer textarea::placeholder,.thread-reply textarea::placeholder{color:var(--muted)}.composer-actions{border-top:1px solid var(--line);align-items:center;height:40px;padding:4px 8px;display:none}.composer.has-text .composer-actions{display:flex}.composer:not(.has-text) .composer-input{padding-right:8px}.send-button{background:var(--solid);width:24px;height:24px;color:var(--on-solid);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.send-button:disabled{background:var(--surface-2);color:var(--muted)}.emoji-wrap{display:inline-flex;position:relative}.emoji-menu{border-radius:var(--radius-menu);background:var(--surface);box-shadow:var(--shadow);z-index:5;grid-template-columns:repeat(6,28px);gap:2px;padding:4px;display:grid;position:absolute;top:calc(100% + 6px);left:0}.emoji-menu button{border-radius:var(--pill);width:28px;height:28px;font-size:16px}.emoji-menu button:hover{background:var(--surface-hover)}.comment-card{background:var(--surface);max-height:min(520px,100vh - 72px);box-shadow:var(--shadow);cursor:auto;border-radius:13px;flex-direction:column;font-size:11px;line-height:16px;display:flex;position:absolute}.thread-header{border-bottom:1px solid var(--line);flex:none;align-items:center;height:42px;padding:4px 8px 4px 16px;display:flex}.thread-title{flex:1;font-weight:550}.thread-actions{align-items:center;gap:4px;display:flex}.menu-wrap{display:inline-flex;position:relative}.menu{border-radius:var(--radius-menu);background:var(--island);min-width:140px;box-shadow:inset 0 0 0 1px var(--island-line), var(--shadow);z-index:6;padding:4px;position:absolute;top:calc(100% + 4px);right:0}.menu button{border-radius:var(--pill);color:#fff;text-align:left;white-space:nowrap;width:100%;height:28px;padding:0 8px;font-size:12px;display:block}.menu button:hover{background:var(--island-hover)}.thread-list{-webkit-user-select:text;user-select:text;flex:1;min-height:0;padding:8px 0 0;overflow-y:auto}.thread-comment{padding:4px 16px 8px;position:relative}.thread-comment-head{align-items:center;gap:8px;height:32px;display:flex}.thread-comment-name{font-size:13px;font-weight:500;line-height:24px}.thread-comment-time{font-size:13px;line-height:24px}.thread-comment-more{opacity:0;margin-left:auto;position:relative}.thread-comment:hover .thread-comment-more,.thread-comment-more:focus-within{opacity:1}.thread-comment-text{white-space:pre-wrap;word-break:break-word;padding-left:32px;font-size:13px;line-height:24px}.thread-reply{flex:none;align-items:flex-start;gap:8px;padding:8px 16px 16px;display:flex}.thread-reply>.face{margin-top:8px}.thread-reply-field{background:var(--surface-2);border-radius:8px;flex:1;align-items:flex-start;gap:8px;min-width:0;padding:8px 8px 8px 12px;display:flex;position:relative;box-shadow:inset 0 0 0 1px #0000}.thread-reply-field:focus-within{box-shadow:inset 0 0 0 1px var(--accent)}.thread-reply-field textarea{flex:1;min-width:0}.comments-panel{border-radius:var(--radius-menu);background:var(--surface);width:248px;box-shadow:var(--shadow-sm);flex-direction:column;display:flex;position:fixed;top:50px;bottom:50px;right:6px}.comments-panel-head{border-bottom:1px solid var(--line-subtle);flex:none;justify-content:space-between;align-items:center;height:42px;padding:0 12px 0 16px;font-size:12px;font-weight:500;display:flex}.resolved-toggle{color:var(--muted);align-items:center;gap:4px;font-weight:400;display:flex}.resolved-toggle input{accent-color:var(--accent);margin:0}.comments-panel-list{flex:1;min-height:0;padding:6px;overflow-y:auto}.comments-empty{margin:0;padding:10px;font-size:12px}.comments-panel-item{text-align:left;border-radius:8px;width:100%;padding:8px 10px;font-size:12px;line-height:16px;display:block}.comments-panel-item:hover{background:var(--surface-hover)}.comments-panel-item.active{background:var(--selection)}.comments-panel-item>span{display:block}.comments-panel-item b{font-weight:500}.comments-panel-face{width:24px;margin-bottom:4px;position:relative}.comments-panel-face .face{display:flex}.unread-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 1.5px var(--surface);border-radius:50%;position:absolute;top:-1px;right:-3px}.comments-panel-text{-webkit-line-clamp:3;word-break:break-word;-webkit-box-orient:vertical;overflow:hidden;display:-webkit-box!important}body:has(.home){overflow:auto}.home{flex-direction:column;min-height:100%;display:flex}.home-top .wordmark svg{height:18px}.home-top{justify-content:space-between;align-items:center;height:56px;padding:0 20px;display:flex}.home-me{align-items:center;gap:2px;display:flex}.home-main{flex:1;width:100%;max-width:1120px;margin:0 auto;padding:24px 20px}.install{text-align:center;flex-direction:column;align-items:center;gap:20px;padding-top:22vh;display:flex}.install h1{letter-spacing:-.028em;margin:0;font-size:24px;font-weight:500;line-height:32px}.canvas-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:28px 20px;margin:0;padding:0;list-style:none;display:grid}.canvas-card{min-width:0;display:block;position:relative}.canvas-card-link{z-index:1;border-radius:var(--radius-menu);outline:0;position:absolute;inset:0}.canvas-card-meta{font-size:12px;display:block}.canvas-card-name{text-overflow:ellipsis;white-space:nowrap;margin-top:10px;font-weight:500;display:block;overflow:hidden}.canvas-card-rename{z-index:2;border-radius:var(--pill);background:var(--surface-2);width:calc(100% + 8px);height:24px;color:var(--text);font:inherit;-webkit-user-select:text;user-select:text;border:0;outline:0;margin:7px 0 -3px -8px;padding:0 8px;font-weight:500;display:block;position:relative}.canvas-thumb{aspect-ratio:16/10;border-radius:var(--radius-menu);background:var(--surface-2);box-shadow:var(--shadow-sm);transition:box-shadow .18s cubic-bezier(.22,1,.36,1);overflow:hidden}.canvas-card:hover .canvas-thumb,.canvas-card[data-popup-open] .canvas-thumb{box-shadow:var(--shadow)}.canvas-card:has(.canvas-card-more[data-popup-open]) .canvas-thumb{box-shadow:var(--shadow)}.canvas-card-link:focus-visible~.canvas-thumb{box-shadow:0 0 0 2px var(--accent)}.canvas-thumb svg{width:100%;height:100%;display:block}.canvas-thumb rect{fill:var(--frame-bg);stroke:var(--line);stroke-width:1px;vector-effect:non-scaling-stroke}.canvas-thumb g:has(image) rect{fill:#0000}.canvas-thumb image{opacity:0;transition:opacity .2s}.canvas-thumb image.loaded{opacity:1}.canvas-card-more,.canvas-card-heart{z-index:2;border-radius:var(--pill);background:var(--surface);width:28px;height:28px;box-shadow:var(--shadow-sm);place-items:center;display:grid;position:absolute;top:8px}.canvas-card-more{color:var(--secondary);opacity:0;transition:opacity .1s,transform .18s cubic-bezier(.22,1,.36,1),color .1s;right:8px;transform:scale(.8)}.canvas-card-more:hover,.canvas-card-more[data-popup-open]{color:var(--text)}.canvas-card:hover .canvas-card-more,.canvas-card-more[data-popup-open],.canvas-card-more:focus-visible{opacity:1;transform:none}.canvas-card:hover .canvas-card-more:active{transform:scale(.92)}.canvas-card-heart{color:oklch(58% .22 12);pointer-events:none;animation:.18s cubic-bezier(.22,1,.36,1) tool-pop;left:8px}@media (hover:none){.canvas-card-more{opacity:1;transform:none}}.canvas-menu-positioner{z-index:60}.canvas-menu{border-radius:var(--radius-menu);background:var(--island);min-width:160px;box-shadow:inset 0 0 0 1px var(--island-line), var(--shadow);transform-origin:var(--transform-origin);outline:0;padding:4px;transition:opacity .1s,transform .18s cubic-bezier(.22,1,.36,1)}.canvas-menu[data-starting-style],.canvas-menu[data-ending-style]{opacity:0;transform:scale(.96)}.canvas-menu-item{border-radius:var(--pill);color:#fff;white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;outline:0;align-items:center;gap:8px;height:32px;padding:0 12px 0 7px;display:flex}.canvas-menu-item svg{stroke-width:2px;flex:none}.canvas-menu-item[data-highlighted]{background:var(--island-hover)}.canvas-menu-item.danger{color:oklch(72% .19 27)}.canvas-menu-item.danger[data-highlighted]{background:oklch(72% .19 27/.18)}.canvas-menu-separator{background:oklch(100% 0 0/.13);height:1px;margin:4px 8px}.canvas-menu-check{flex:none;display:flex}.canvas-menu-check[data-unchecked]{visibility:hidden}.shell .icon-button[data-popup-open]{background:var(--surface-pressed)}.shell .icon-button[data-popup-open] svg{opacity:1}.canvas-delete{z-index:71;border-radius:var(--radius-menu);background:var(--surface);width:320px;max-width:calc(100vw - 32px);box-shadow:var(--shadow);outline:0;flex-direction:column;gap:16px;padding:16px;transition:opacity .1s,transform .18s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.canvas-delete[data-starting-style],.canvas-delete[data-ending-style]{opacity:0;transform:translate(-50%,-50%)scale(.96)}.canvas-delete-backdrop{transition:opacity .15s}.canvas-delete-backdrop[data-starting-style],.canvas-delete-backdrop[data-ending-style]{opacity:0}.canvas-delete-title{overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:500;line-height:18px}.canvas-delete-error{color:var(--danger);margin:-8px 0 0;font-size:12px}.canvas-delete-actions{justify-content:flex-end;align-items:center;gap:4px;display:flex}.canvas-delete-cancel{border-radius:var(--pill);height:32px;color:var(--secondary);padding:0 12px;font-weight:500;transition:background-color .1s}.canvas-delete-cancel:hover{background:var(--surface-hover)}.primary-button.canvas-delete-confirm{background:var(--danger);color:#fff}.home-foot{color:var(--muted);justify-content:center;gap:16px;padding:16px;font-size:12px;display:flex}.home-foot a{text-decoration:none;transition:color .1s}.home-foot a:hover{color:var(--text)}@media (width<=700px){.toolbar{top:calc(50px + env(safe-area-inset-top));left:6px;transform:none}.top-left{max-width:calc(100vw - 150px)}.follow-tab,.reconnecting,.comments-panel{top:94px}}@media (width<=640px){.top-left .wordmark{display:none}.working-bubble{bottom:calc(50px + env(safe-area-inset-bottom))}.top-left{padding-left:3px}.comments-panel{display:none}.comment-card,.composer{width:calc(100vw - 16px)!important;left:8px!important}.faces .face-button:nth-child(n+4){display:none}}.toolbar{transition:width .24s cubic-bezier(.22,1,.36,1)}.toolbar-clip{border-radius:var(--pill);width:100%;height:32px;overflow:hidden}.toolbar-row{align-items:center;gap:2px;width:max-content;height:32px;display:flex;position:relative}.tool-slider{border-radius:var(--pill);background:var(--signal-soft);pointer-events:none;height:32px;transition:transform .24s cubic-bezier(.22,1,.36,1),width .24s cubic-bezier(.22,1,.36,1);position:absolute;top:0;left:0}.tool-slider[data-hidden]{opacity:0}.toolbar .tool{flex:none;position:relative}.toolbar .tool svg{stroke-width:2px}.toolbar .tool[aria-pressed=true]{color:var(--signal)}.toolbar .tool[aria-pressed=true] svg{opacity:1}.toolbar .tool.held{background:var(--signal-soft)}.toolbar .shell-divider{margin:0 4px}.mode-tool{touch-action:none;gap:4px;padding:0 8px;width:auto!important}.mode-chevron{align-items:center;height:100%;display:flex}.mode-menu{border-radius:var(--radius-menu);background:var(--island);min-width:160px;box-shadow:inset 0 0 0 1px var(--island-line), var(--shadow);z-index:6;padding:4px;position:absolute;top:calc(100% + 8px);left:0}.mode-menu button{border-radius:var(--pill);color:#fff;text-align:left;white-space:nowrap;align-items:center;gap:8px;width:100%;height:32px;padding:0 8px 0 7px;display:flex}.mode-menu button:hover,.mode-menu[data-hovered=edit] [data-mode-choice=edit],.mode-menu[data-hovered=preview] [data-mode-choice=preview]{background:var(--island-hover)}.mode-menu svg{stroke-width:2px;flex:none}.mode-menu span{flex:1}.pencil-tray{align-items:center;gap:6px;margin:0 6px 0 4px;display:flex}.swatch{width:20px;height:20px;box-shadow:inset 0 0 0 1px var(--line);animation:.18s cubic-bezier(.22,1,.36,1) backwards tool-pop;animation-delay:calc(var(--i,0) * 25ms);border-radius:50%;flex:none;transition:transform .1s}.swatch:hover{transform:scale(1.12)}.swatch:active{transform:scale(.9)}.swatch.closed{width:24px;height:24px}.swatch.current{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--signal)}.size-choice{border-radius:var(--pill);width:28px;height:28px;color:var(--secondary);animation:.18s cubic-bezier(.22,1,.36,1) backwards tool-pop;animation-delay:calc(var(--i,0) * 25ms);flex:none;justify-content:center;align-items:center;transition:background-color .1s;display:flex}.size-choice:hover{background:var(--surface-hover)}.size-choice.current{background:var(--surface-hover);color:var(--signal)}.size-choice.closed{width:24px;height:24px}@keyframes tool-pop{0%{opacity:0;transform:scale(.8)}}.strokes{pointer-events:none;z-index:1000000;position:absolute;top:0;left:0;overflow:visible}.stroke-selection{fill:none;stroke:var(--accent);stroke-width:1.5px;vector-effect:non-scaling-stroke}.stage[data-tool=move][data-mode=edit] .stroke-mine{pointer-events:auto;cursor:pointer}@media (prefers-reduced-motion:reduce){.toolbar,.tool-slider,.canvas-menu,.canvas-delete,.canvas-delete-backdrop,.canvas-card-more{transition:none}.canvas-card-heart,.swatch,.size-choice{animation:none}.working-bubble,.working-bubble[data-show]{transition:opacity .2s ease-out,visibility .2s;transform:translate(-50%)}.working-scribble path{stroke-dashoffset:0;animation:none}}
|
package/dist/ui/index.html
CHANGED
|
@@ -6,10 +6,13 @@
|
|
|
6
6
|
<meta name="color-scheme" content="light dark" />
|
|
7
7
|
<title>Twombly</title>
|
|
8
8
|
<link rel="icon" type="image/png" href="/favicon.png" />
|
|
9
|
-
<
|
|
10
|
-
<
|
|
11
|
-
<
|
|
12
|
-
<
|
|
9
|
+
<meta property="og:title" content="Twombly" />
|
|
10
|
+
<meta property="og:image" content="https://twombly.app/og.png" />
|
|
11
|
+
<meta property="og:image:width" content="1200" />
|
|
12
|
+
<meta property="og:image:height" content="630" />
|
|
13
|
+
<meta name="twitter:card" content="summary_large_image" />
|
|
14
|
+
<script type="module" crossorigin src="/assets/index-B5osE1GC.js"></script>
|
|
15
|
+
<link rel="stylesheet" crossorigin href="/assets/index-Dw-Z6e31.css">
|
|
13
16
|
</head>
|
|
14
17
|
<body>
|
|
15
18
|
<div id="root"></div>
|
package/dist/ui/og.png
ADDED
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/LandingStage-DQBFsXtF.js","assets/rolldown-runtime-WkwZ5CU-.js","assets/agentPrompt-CELnjtMR.js","assets/index-NwhZOePg.js","assets/index-C8yZ6_xT.css","assets/LandingStage-D1WT-zxZ.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{n as e}from"./rolldown-runtime-WkwZ5CU-.js";import{D as t,I as n,M as r,R as i,T as a,_ as o,f as s,h as c,j as l,jt as u,k as d,p as f,s as p,t as m,u as h}from"./agentPrompt-CELnjtMR.js";import{n as g,t as _}from"./index-NwhZOePg.js";var v=e(u(),1),y=i();function b(){return(0,y.jsxs)(`span`,{className:`landing-marks`,"aria-hidden":`true`,children:[(0,y.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,children:(0,y.jsx)(`path`,{d:`m4.7144 15.9555 4.7174-2.6471.079-.2307-.079-.1275h-.2307l-.7893-.0486-2.6956-.0729-2.3375-.0971-2.2646-.1214-.5707-.1215-.5343-.7042.0546-.3522.4797-.3218.686.0608 1.5179.1032 2.2767.1578 1.6514.0972 2.4468.255h.3886l.0546-.1579-.1336-.0971-.1032-.0972L6.973 9.8356l-2.55-1.6879-1.3356-.9714-.7225-.4918-.3643-.4614-.1578-1.0078.6557-.7225.8803.0607.2246.0607.8925.686 1.9064 1.4754 2.4893 1.8336.3643.3035.1457-.1032.0182-.0728-.164-.2733-1.3539-2.4467-1.445-2.4893-.6435-1.032-.17-.6194c-.0607-.255-.1032-.4674-.1032-.7285L6.287.1335 6.6997 0l.9957.1336.419.3642.6192 1.4147 1.0018 2.2282 1.5543 3.0296.4553.8985.2429.8318.091.255h.1579v-.1457l.1275-1.706.2368-2.0947.2307-2.6957.0789-.7589.3764-.9107.7468-.4918.5828.2793.4797.686-.0668.4433-.2853 1.8517-.5586 2.9021-.3643 1.9429h.2125l.2429-.2429.9835-1.3053 1.6514-2.0643.7286-.8196.85-.9046.5464-.4311h1.0321l.759 1.1293-.34 1.1657-1.0625 1.3478-.8804 1.1414-1.2628 1.7-.7893 1.36.0729.1093.1882-.0183 2.8535-.607 1.5421-.2794 1.8396-.3157.8318.3886.091.3946-.3278.8075-1.967.4857-2.3072.4614-3.4364.8136-.0425.0304.0486.0607 1.5482.1457.6618.0364h1.621l3.0175.2247.7892.522.4736.6376-.079.4857-1.2142.6193-1.6393-.3886-3.825-.9107-1.3113-.3279h-.1822v.1093l1.0929 1.0686 2.0035 1.8092 2.5075 2.3314.1275.5768-.3218.4554-.34-.0486-2.2039-1.6575-.85-.7468-1.9246-1.621h-.1275v.17l.4432.6496 2.3436 3.5214.1214 1.0807-.17.3521-.6071.2125-.6679-.1214-1.3721-1.9246L14.38 17.959l-1.1414-1.9428-.1397.079-.674 7.2552-.3156.3703-.7286.2793-.6071-.4614-.3218-.7468.3218-1.4753.3886-1.9246.3157-1.53.2853-1.9004.17-.6314-.0121-.0425-.1397.0182-1.4328 1.9672-2.1796 2.9446-1.7243 1.8456-.4128.164-.7164-.3704.0667-.6618.4008-.5889 2.386-3.0357 1.4389-1.882.929-1.0868-.0062-.1579h-.0546l-6.3385 4.1164-1.1293.1457-.4857-.4554.0608-.7467.2307-.2429 1.9064-1.3114Z`})}),(0,y.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,children:(0,y.jsx)(`path`,{d:`M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9847 0 0 0-3.9977 2.9 6.0462 6.0462 0 0 0 .7427 7.0966 5.98 5.98 0 0 0 .511 4.9107 6.051 6.051 0 0 0 6.5146 2.9001A5.9847 5.9847 0 0 0 13.2599 24a6.0557 6.0557 0 0 0 5.7718-4.2058 5.9894 5.9894 0 0 0 3.9977-2.9001 6.0557 6.0557 0 0 0-.7475-7.0729zm-9.022 12.6081a4.4755 4.4755 0 0 1-2.8764-1.0408l.1419-.0804 4.7783-2.7582a.7948.7948 0 0 0 .3927-.6813v-6.7369l2.02 1.1686a.071.071 0 0 1 .038.052v5.5826a4.504 4.504 0 0 1-4.4945 4.4944zm-9.6607-4.1254a4.4708 4.4708 0 0 1-.5346-3.0137l.142.0852 4.783 2.7582a.7712.7712 0 0 0 .7806 0l5.8428-3.3685v2.3324a.0804.0804 0 0 1-.0332.0615L9.74 19.9502a4.4992 4.4992 0 0 1-6.1408-1.6464zM2.3408 7.8956a4.485 4.485 0 0 1 2.3655-1.9728V11.6a.7664.7664 0 0 0 .3879.6765l5.8144 3.3543-2.0201 1.1685a.0757.0757 0 0 1-.071 0l-4.8303-2.7865A4.504 4.504 0 0 1 2.3408 7.872zm16.5963 3.8558L13.1038 8.364 15.1192 7.2a.0757.0757 0 0 1 .071 0l4.8303 2.7913a4.4944 4.4944 0 0 1-.6765 8.1042v-5.6772a.79.79 0 0 0-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759 0 0 0-.7854 0L9.409 9.2297V6.8974a.0662.0662 0 0 1 .0284-.0615l4.8303-2.7866a4.4992 4.4992 0 0 1 6.6802 4.66zM8.3065 12.863l-2.02-1.1638a.0804.0804 0 0 1-.038-.0567V6.0742a4.4992 4.4992 0 0 1 7.3757-3.4537l-.142.0805L8.704 5.459a.7948.7948 0 0 0-.3927.6813zm1.0976-2.3654l2.602-1.4998 2.6069 1.4998v2.9994l-2.5974 1.4997-2.6067-1.4997Z`})})]})}var x=`twombly:show-copied`,S=.41960295031576633,C=.15,w=.2765523188064277,T=.5783555327868779,E=-44*Math.PI/180,D={x:Math.sin(E),y:-Math.cos(E)},O=(e,t=0,n=1)=>Math.min(n,Math.max(t,e)),k=(e,t,n)=>({x:e.x+t.x*n,y:e.y+t.y*n}),A=e=>Math.hypot(e.x,e.y),j=e=>{let t=A(e);return t<.001?{x:1,y:0}:{x:e.x/t,y:e.y/t}},M=(e,t,n,r)=>({start:e,outgoing:t,incoming:n,end:r});function N(e,t){let n=1-t;return{x:n**3*e.start.x+3*n*n*t*e.outgoing.x+3*n*t*t*e.incoming.x+t**3*e.end.x,y:n**3*e.start.y+3*n*n*t*e.outgoing.y+3*n*t*t*e.incoming.y+t**3*e.end.y}}function P(e,t){let n=O(t),r=Math.min(e.curves.length-1,Math.floor(n*e.curves.length)),i=n===1?1:n*e.curves.length-r,a=e.curves[r],o=1-i,s={x:3*(o*o*(a.outgoing.x-a.start.x)+2*o*i*(a.incoming.x-a.outgoing.x)+i*i*(a.end.x-a.incoming.x))*e.curves.length,y:3*(o*o*(a.outgoing.y-a.start.y)+2*o*i*(a.incoming.y-a.outgoing.y)+i*i*(a.end.y-a.incoming.y))*e.curves.length},c=j(s),l=1-(1-O((n-.99)/.01))**3,u=j({x:c.x*(1-l)+D.x*l,y:c.y*(1-l)+D.y*l});return{point:N(a,i),derivative:s,heading:u}}function F(e,t){let n=e=>!t||e.x>=t.x+20&&e.x<t.x+t.width-20&&e.y>=t.y+20&&e.y<t.y+t.height-20,r=e[0].start,i,a=0,o=0,s=0,c=0,l=n(r);for(let t of e)for(let e=1;e<=24;e++){let u=N(t,e/24),d=u.x-r.x,f=u.y-r.y,p=Math.hypot(d,f);if(a+=p,l&&=n(u),p>.01){let e=Math.atan2(f,d);if(i!==void 0){let t=Math.atan2(Math.sin(e-i),Math.cos(e-i));o+=t*t,s+=Math.abs(t),c=Math.max(c,Math.abs(t))}i=e}r=u}return{length:a,turnEnergy:o,totalTurn:s,sharpestTurn:c,inBounds:l}}function ee(e,t,n){let r={x:t.x-e.x,y:t.y-e.y},i=A(r),a=j(r),o=[];if(i<=10)o.push([M(e,k(e,r,1/3),k(e,r,2/3),t)]);else{let n=Math.min(i*S,i*.9,640),r=Math.min(i*C,i*.9,640),s=k(e,D,n),c=k(t,D,-r);o.push([M(e,s,c,t)]),o.push([M(e,k(e,D,n*.65),k(t,D,-r*.65),t)]);let l=D.x*a.y-D.y*a.x<0?-1:1,u={x:a.y*l,y:-a.x*l},d=k({x:(e.x+t.x)/2,y:(e.y+t.y)/2},D,n*.16),f=Math.min(i*w,520),p=Math.min(i*T,440);for(let n of[.55,.8,1.05])for(let r of[.65,1,1.35])for(let i of[1,-1]){let l=k(d,u,f*n*i);o.push([M(e,s,k(l,a,-p*r),l),M(l,k(l,a,p*r),c,t)])}}let s=O((-.08-D.x*a.x-D.y*a.y)/.92);return o.map(e=>{let t=F(e,n),r=Math.max(0,t.length/Math.max(1,i)-1),a=e.length>1,o=t.length+320*r+140*t.turnEnergy+180*t.sharpestTurn+18*t.totalTurn+(a?45:0)+90*s,c=O(.42*O(r/.55)+.38*O(t.totalTurn/(1.4*Math.PI))+.2*O(t.turnEnergy/1.25))*.12,l=O((a?.9:1)*.9*((a?.04:0)+.28*s+.22*O((t.length-180)/760)+.42+c),.12,2.2);return{curves:e,...t,score:o,response:l}})}function I(e,t,n){let r=ee(e,t,n),i=r.filter(e=>e.inBounds);return(i.length?i:r).reduce((e,t)=>t.score<e.score?t:e)}var L=(e=0)=>({value:e,velocity:0}),R=Math.atan2(D.y,D.x)*180/Math.PI,z=1600;function B(e,t,n,r,i){let a=2*Math.PI/n,o=r*a,s=a*Math.sqrt(1-r*r),c=e.value-t,l=(e.velocity+o*c)/s,u=Math.cos(s*i),d=Math.sin(s*i),f=Math.exp(-o*i);e.value=t+f*(c*u+l*d),e.velocity=f*(-o*(c*u+l*d)+s*(-c*d+l*u))}function V(e,t){return e+Math.atan2(Math.sin((t-e)*Math.PI/180),Math.cos((t-e)*Math.PI/180))*180/Math.PI}var te=class{position;velocity={x:0,y:0};kind=`idle`;target;path;pathScale=1;progress=L();horizontal;vertical;axis=L();baseRotation=L();lean=L();stretch=L();heading=0;constructor(e){this.position={...e},this.target={...e},this.horizontal=L(e.x),this.vertical=L(e.y)}moveTo(e,t,n=!1){if(!Number.isFinite(e.x)||!Number.isFinite(e.y))return;if(this.target={...e},n){this.jumpTo(e);return}this.pathScale=Math.max(.001,t.z);let r=Math.hypot(e.x-this.position.x,e.y-this.position.y)*this.pathScale;if(r<.01&&Math.hypot(this.velocity.x,this.velocity.y)*this.pathScale<12){this.jumpTo(e);return}if(this.horizontal={value:this.position.x,velocity:this.velocity.x},this.vertical={value:this.position.y,velocity:this.velocity.y},this.kind=r<=196?`scoot`:`curve`,this.kind===`scoot`){this.path=void 0;return}let i=e=>({x:e.x*this.pathScale,y:e.y*this.pathScale});this.path=I(i(this.position),i(e),{x:-t.x,y:-t.y,width:t.width,height:t.height});let{derivative:a}=P(this.path,0),o=a.x**2+a.y**2,s=o?(this.velocity.x*a.x+this.velocity.y*a.y)*this.pathScale/o:0;this.progress={value:0,velocity:O(s,0,5/this.path.response)}}jumpTo(e){Object.assign(this.position,e),this.target={...e},this.velocity.x=this.velocity.y=0,this.horizontal=L(e.x),this.vertical=L(e.y),this.axis=L(),this.baseRotation=L(),this.lean=L(),this.stretch=L(),this.progress=L(),this.path=void 0,this.heading=0,this.kind=`idle`}translateBy(e,t){if(Number.isFinite(e)&&Number.isFinite(t)&&(e||t)&&(this.position.x+=e,this.position.y+=t,this.target.x+=e,this.target.y+=t,this.horizontal.value+=e,this.vertical.value+=t,this.path)){let n=n=>({x:n.x+e*this.pathScale,y:n.y+t*this.pathScale});this.path.curves=this.path.curves.map(e=>({start:n(e.start),outgoing:n(e.outgoing),incoming:n(e.incoming),end:n(e.end)}))}}advance(e,t=this.pathScale){if(!(e>0)||!Number.isFinite(e)||this.kind===`idle`&&this.deformationSettled())return!1;if(this.kind===`scoot`)B(this.horizontal,this.target.x,.24,.84,e),B(this.vertical,this.target.y,.24,.84,e),this.position.x=this.horizontal.value,this.position.y=this.vertical.value,this.velocity.x=this.horizontal.velocity,this.velocity.y=this.vertical.velocity;else if(this.kind===`curve`&&this.path){B(this.progress,1,this.path.response,.9,e);let{point:t,derivative:n,heading:r}=P(this.path,this.progress.value);this.position.x=t.x/this.pathScale,this.position.y=t.y/this.pathScale;let i=this.progress.value>=1?0:this.progress.velocity/this.pathScale;this.velocity.x=n.x*i,this.velocity.y=n.y*i,this.heading=V(this.heading,Math.atan2(r.y,r.x)*180/Math.PI-R)}let n=Math.hypot(this.velocity.x,this.velocity.y)*t,r=this.kind===`scoot`?O(n/z):0,i=n>12?Math.atan2(this.velocity.y,this.velocity.x)*180/Math.PI:this.axis.value;B(this.axis,V(this.axis.value,i),.07,.82,e),B(this.baseRotation,this.kind===`curve`?this.heading:V(this.baseRotation.value,0),.09,.86,e),B(this.stretch,r,.095,.72,e);let a=n>12?O(this.velocity.x*t/n*76*r,-76,76):0;return B(this.lean,a,.055,.76,e),Math.hypot(this.target.x-this.position.x,this.target.y-this.position.y)*t<.05&&n<12&&(this.kind!==`curve`||Math.abs(this.progress.value-1)<.001)&&(Object.assign(this.position,this.target),this.velocity.x=this.velocity.y=0,this.kind=`idle`,this.path=void 0),this.kind===`idle`&&this.deformationSettled()&&(this.baseRotation=L(),this.lean=L(),this.stretch=L()),!0}deformationSettled(){let e=V(0,this.baseRotation.value);return Math.abs(e)<.01&&Math.abs(this.baseRotation.velocity)<.1&&Math.abs(this.lean.value)<.01&&Math.abs(this.lean.velocity)<.1&&Math.abs(this.stretch.value)<1e-4&&Math.abs(this.stretch.velocity)<.001}get bodyTransform(){let e=O(this.stretch.value,0,1);return`rotate(${this.baseRotation.value+this.lean.value}deg) rotate(${this.axis.value}deg) scale(${1+.38*e}, ${1-.18*e}) rotate(${-this.axis.value}deg)`}};function H(e,t){let n=2*Math.PI/(e*1.2),r=Math.min(1,Math.max(.05,1-t)),i=e=>{let t=e/1e3;if(t<=0)return 0;if(r>=1)return 1-Math.exp(-n*t)*(1+n*t);let i=n*Math.sqrt(1-r*r);return 1-Math.exp(-r*n*t)*(Math.cos(i*t)+r*n/i*Math.sin(i*t))},a=10;for(;a<6e3&&!(Math.abs(1-i(a))<.001&&Math.abs(i(a)-i(a-10))<5e-4);)a+=10;let o=Array.from({length:61},(e,t)=>t===60?1:Number(i(a*t/60).toFixed(4)));return{ms:a,at:i,css:`linear(${o.join(`, `)})`}}var ne={wide:{width:1280,height:720,columns:3},narrow:{width:640,height:760,columns:2}},U=440,W=340,G={top:84,right:64,bottom:64,left:64},K=[1,2,3,4,5,6],q=[{name:`Avery Kim`,color:`#3b82f6`},{name:`Mo Rivera`,color:`#10b981`},{name:`Jules Sato`,color:`#f59e0b`}],re=[[`AK`,`#3b82f6`,`Avery Kim`,`commented on Checkout redesign`,`2m`],[`MR`,`#10b981`,`Mo Rivera`,`approved your pull request`,`14m`],[`JS`,`#f59e0b`,`Jules Sato`,`shared Q4 roadmap with you`,`1h`],[`TN`,`#ef4444`,`Tess Novak`,`mentioned you in Launch plan`,`3h`],[`RO`,`#8b5cf6`,`Rae Okafor`,`invited you to Brand review`,`5h`],[`LB`,`#0ea5e9`,`Lee Brandt`,`resolved your comment`,`1d`],[`NH`,`#ec4899`,`Noor Haddad`,`added you to Onboarding`,`2d`],[`IC`,`#14b8a6`,`Ines Costa`,`replied to your comment`,`2d`],[`DV`,`#f97316`,`Dev Varma`,`shared Pricing page with you`,`3d`]],ie=`#e5484d`,ae=5,oe=H(.45,.28),se=H(1.1,0),ce=H(.3,0),J=(e,t)=>({x:e%t*496,y:Math.floor(e/t)*412});function le(e,t,n){let r=.5,i=e-.5,a=t-.5;return`M ${r+n} ${r} H ${i-n} A ${n} ${n} 0 0 1 ${i} ${r+n} V ${a-n} A ${n} ${n} 0 0 1 ${i-n} ${a} H ${r+n} A ${n} ${n} 0 0 1 ${r} ${a-n} V ${r+n} A ${n} ${n} 0 0 1 ${r+n} ${r} Z`}function ue({version:e,rows:t=4}){return(0,y.jsxs)(`div`,{className:`ld-design`,"data-v":e,children:[(0,y.jsx)(`h1`,{children:`Notifications`}),re.slice(0,t).map(([e,t,n,r,i])=>(0,y.jsxs)(`div`,{className:`ld-n`,children:[(0,y.jsx)(`span`,{className:`ld-av`,style:{background:t},children:e}),(0,y.jsxs)(`div`,{children:[(0,y.jsx)(`div`,{className:`ld-t`,children:n}),(0,y.jsx)(`div`,{className:`ld-d`,children:r})]}),(0,y.jsx)(`span`,{className:`ld-w`,children:i})]},n))]})}function Y({color:e,name:t,id:n}){return(0,y.jsxs)(`div`,{className:`cursor ld-cursor`,"data-cursor":n,style:{color:e},children:[(0,y.jsx)(`svg`,{width:`22`,height:`22`,viewBox:`0 0 24 24`,children:(0,y.jsx)(`path`,{d:h,fill:`currentColor`,stroke:`#fff`,strokeWidth:`1.5`,strokeLinejoin:`round`})}),t&&(0,y.jsx)(`span`,{className:`cursor-label`,style:{background:e},children:t})]})}function de({id:e,person:t,text:r}){let{name:i,color:a}=q[t];return(0,y.jsxs)(`div`,{className:`comment-pin ld-pin`,"data-pin":e,children:[(0,y.jsx)(n,{name:i,picture:null,color:a}),(0,y.jsxs)(`span`,{className:`comment-pin-preview`,children:[(0,y.jsxs)(`span`,{className:`comment-pin-head`,children:[(0,y.jsx)(`b`,{children:i}),` `,(0,y.jsx)(`span`,{className:`muted`,children:`now`})]}),(0,y.jsx)(`span`,{className:`comment-pin-text`,children:r})]})]})}function fe(e,t){let n=ne[t],r=t=>e.querySelector(t),i=r(`.ld-world`),a=r(`[data-zoom]`),o=r(`.ld-scene`),s=r(`.faces`),c=r(`.share-button`),l=r(`.share-sharing`),u=r(`.share-sharing i`),d=r(`.share-split`),f=r(`.ld-strokes path`),m=[...e.querySelectorAll(`.ld-frame`)],h=[...s.children],g={a:r(`[data-pin="a"]`),b:r(`[data-pin="b"]`)},_={width:n.width,height:n.height,x:0,y:0,z:1},v=new Set,y=0,b=0,x=!1,S=e=>{y=requestAnimationFrame(S);let t=Math.min(50,e-b);b=e;for(let e of v)e(t)||v.delete(e)},C=e=>{e!==x&&(x=e,cancelAnimationFrame(y),e&&(b=performance.now(),y=requestAnimationFrame(S)))},w=e=>new Promise(t=>{let n=e;v.add(e=>(n-=e,n>0||(t(),!1)))}),T=(e,t)=>new Promise(n=>{let r=0;v.add(i=>(r+=i,r<e.ms?(t(e.at(r)),!0):(t(1),n(),!1)))}),E=(e,t)=>T({ms:e,at:t=>t/e,css:``},t),D={x:0,y:0,z:1},O=e=>{D=e,i.style.transform=`translate(${e.x}px, ${e.y}px) scale(${e.z})`,i.style.setProperty(`--inv`,String(1/e.z)),i.style.setProperty(`--zoom`,String(e.z)),a.textContent=`${Math.round(e.z*100)}%`},k=e=>{let t=K.slice(0,e).map((e,t)=>J(t,n.columns)),r=Math.max(...t.map(e=>e.x))+U,i=Math.max(...t.map(e=>e.y))+W,a={width:n.width-G.left-G.right,height:n.height-G.top-G.bottom},o=Math.min(1,a.width/r,a.height/i);return{z:o,x:G.left+(a.width-r*o)/2,y:G.top+(a.height-i*o)/2}},A=e=>{let t=D;return T(se,n=>O({x:t.x+(e.x-t.x)*n,y:t.y+(e.y-t.y)*n,z:t.z+(e.z-t.z)*n}))},j=(e,t,r,i=k(K.length))=>{let a=J(e-1,n.columns);return{x:i.x+(a.x+U*t)*i.z,y:i.y+(a.y+W*r)*i.z}},M=e=>{let t=r(`[data-cursor="${e}"]`),n=t.querySelector(`svg`),i=new te({x:0,y:0}),a=()=>{t.style.transform=`translate3d(${i.position.x}px, ${i.position.y}px, 0)`,n.style.transform=i.bodyTransform};return v.add(e=>(i.advance(e/1e3,1),a(),!0)),{el:t,place(e){i.jumpTo(e),t.style.opacity=`1`,a()},hide(){t.style.opacity=`0`},move(e){return i.moveTo(e,_),new Promise(e=>v.add(()=>i.kind!==`idle`||(e(),!1)))}}},N=M(`you`),P=[M(`0`),M(`1`),M(`2`)],F=e=>T(oe,t=>{e.style.opacity=String(Math.min(1,t*1.6)),e.style.scale=String(.6+.4*t)}),ee=async e=>{await E(90,t=>{e.style.scale=String(1-.05*t)}),await E(120,t=>{e.style.scale=String(.95+.05*t)})},I=e=>(s.style.display=``,e.style.display=``,F(e)),L=(e,t)=>{e.style.left=`${t.x}px`,e.style.top=`${t.y}px`},R=()=>{let e=j(3,.5,.5),t=k(K.length),n=U*t.z*.56,r=W*t.z*.58;return Array.from({length:110},(t,i)=>{let a=i/109,o=-2.4+a*1.85*Math.PI*2,s=1+.06*Math.sin(a*9)+a*.05;return[e.x+Math.cos(o)*n*s+a*8,e.y+Math.sin(o)*r*s-a*6,.5]})},z=()=>{for(let e of m)e.style.opacity=`0`,e.style.scale=`0.6`;for(let e of h)e.style.opacity=`0`,e.style.scale=`0.6`,e.style.display=`none`;s.style.display=`none`;for(let e of Object.values(g))e.style.opacity=`0`,e.style.scale=`0.6`,e.classList.remove(`expanded`);for(let e of[N,...P])e.hide();c.style.display=``,l.style.display=`none`,d.style.display=`none`,f.setAttribute(`d`,``),o.style.opacity=`1`,s.style.opacity=`1`,O(k(1))},B=()=>{for(let e of[...m,...h,...Object.values(g)])e.style.opacity=`1`,e.style.scale=`1`;for(let e of h)e.style.display=``;s.style.display=``,L(g.a,j(2,.72,.34)),L(g.b,j(5,.3,.36)),g.b.classList.add(`expanded`),O(k(K.length)),f.setAttribute(`d`,p({points:R(),size:ae})),P[0].place(j(2,.34,.8)),P[1].place(j(5,.86,.7)),P[2].place(j(3,.92,.9))},V=async()=>{let t=1500;for(;;){z(),await w(t),t=500;for(let e=0;e<m.length;e++)F(m[e]),e&&A(k(e+1)),await w(e?720:1e3);await w(700),N.place({x:n.width*.74,y:n.height+30});let r=e.getBoundingClientRect(),i=r.width/n.width;await N.move((e=>{let t=e.getBoundingClientRect();return{x:(t.left+t.width/2-r.left)/i,y:(t.top+t.height/2-r.top)/i}})(c)),await ee(c),c.style.display=`none`,l.style.display=``,u.style.width=`6%`,await T(H(1,0),e=>{u.style.width=`${6+94*e}%`}),l.style.display=`none`,d.style.display=``,d.dataset.copied=``,N.move(j(1,.8,1.08)),await w(1e3),delete d.dataset.copied,P[0].place({x:-30,y:n.height*.42}),I(h[2]),await P[0].move(j(2,.72,.34)),P[1].place({x:n.width*.3,y:n.height+30}),I(h[1]),L(g.a,j(2,.72,.34)),F(g.a),P[0].move(j(2,.34,.8)),await P[1].move(j(5,.3,.36)),L(g.b,j(5,.3,.36)),await F(g.b),await w(250),g.b.classList.add(`expanded`),P[1].move(j(5,.86,.7));let a=R();P[2].place({x:n.width+30,y:n.height*.3}),I(h[0]),await P[2].move({x:a[0][0],y:a[0][1]}),await E(1500,e=>{let t=Math.max(2,Math.ceil(e*a.length));f.setAttribute(`d`,p({points:a.slice(0,t),size:ae}));let[n,r]=a[t-1];P[2].place({x:n,y:r})}),await w(400),P[2].move(j(3,.92,.9)),await w(1400),P[0].move(j(1,.5,.42)),await w(1100),P[1].move(j(4,.72,.62)),await w(2200),await E(420,e=>{o.style.opacity=String(1-e),s.style.opacity=String(1-e)}),await T(ce,()=>{})}};if(matchMedia(`(prefers-reduced-motion: reduce)`).matches)return z(),B(),()=>{};V();let q=new IntersectionObserver(([e])=>C(e.isIntersecting));return q.observe(e),()=>{q.disconnect(),C(!1),v.clear()}}function pe(){let e=(0,v.useRef)(null),i=(0,v.useRef)(null),[u,p]=(0,v.useState)(0),m=u&&u<720?`narrow`:`wide`,h=ne[m];(0,v.useLayoutEffect)(()=>{let t=new ResizeObserver(([e])=>p(e.contentRect.width));return t.observe(e.current),()=>t.disconnect()},[]),(0,v.useEffect)(()=>{if(u)return fe(i.current,m)},[m,u>0]);let g=u/h.width,_=25*g,[b]=(0,v.useState)(()=>window.innerWidth*1.15/Math.min(1200,window.innerWidth-32)),x=(0,v.useMemo)(()=>K.map((e,t)=>J(t,h.columns)),[h.columns]);return(0,y.jsxs)(`div`,{ref:e,className:`ld-shell`,style:{height:u?h.height*g:void 0,borderRadius:_,"--ld-from":b},"aria-hidden":`true`,children:[u>0&&(0,y.jsx)(`svg`,{className:`ld-draw`,children:(0,y.jsx)(`path`,{d:le(u,h.height*g,_-.5),pathLength:`1`})}),u>0&&(0,y.jsxs)(`div`,{ref:i,className:`ld-stage ld-${m}`,style:{width:h.width,height:h.height,transform:`scale(${g})`},children:[(0,y.jsxs)(`div`,{className:`ld-scene`,children:[(0,y.jsx)(`div`,{className:`world ld-world`,children:K.map((e,t)=>(0,y.jsxs)(`div`,{className:`frame ld-frame`,style:{left:x[t].x,top:x[t].y,width:U,height:W},children:[(0,y.jsx)(`div`,{className:`frame-title`,children:(0,y.jsxs)(`span`,{children:[`V`,e]})}),(0,y.jsx)(`div`,{className:`frame-surface`,children:(0,y.jsx)(ue,{version:e})})]},e))}),(0,y.jsx)(`svg`,{className:`ld-strokes`,width:h.width,height:h.height,children:(0,y.jsx)(`path`,{fill:ie})}),(0,y.jsx)(de,{id:`a`,person:0,text:``}),(0,y.jsx)(de,{id:`b`,person:1,text:`Can we try this one darker?`})]}),(0,y.jsx)(`div`,{className:`chrome shell top-left ld-rise`,children:(0,y.jsx)(`span`,{className:`canvas-name`,children:`Notification Explorations`})}),(0,y.jsx)(`div`,{className:`chrome shell toolbar ld-rise`,children:(0,y.jsx)(`div`,{className:`toolbar-clip`,children:(0,y.jsxs)(`div`,{className:`toolbar-row`,children:[(0,y.jsx)(`span`,{className:`tool-slider`,style:{width:50}}),(0,y.jsxs)(`span`,{className:`tool mode-tool`,"aria-pressed":`true`,children:[(0,y.jsx)(t,{size:18}),(0,y.jsx)(`span`,{className:`mode-chevron`,children:(0,y.jsx)(f,{size:12})})]}),(0,y.jsx)(`span`,{className:`tool`,children:(0,y.jsx)(o,{size:18})}),(0,y.jsx)(`span`,{className:`tool`,children:(0,y.jsx)(c,{size:18})}),(0,y.jsx)(`span`,{className:`shell-divider`}),(0,y.jsx)(`span`,{className:`tool`,children:(0,y.jsx)(d,{size:18})})]})})}),(0,y.jsxs)(`div`,{className:`chrome shell top-right ld-rise`,children:[(0,y.jsx)(`div`,{className:`faces`,children:[2,1,0].map(e=>(0,y.jsx)(`span`,{className:`face-button`,children:(0,y.jsx)(n,{name:q[e].name,picture:null,color:q[e].color})},e))}),(0,y.jsx)(`span`,{className:`primary-button share-button`,children:`Share`}),(0,y.jsxs)(`span`,{className:`primary-button share-sharing`,style:{display:`none`},children:[(0,y.jsx)(`i`,{}),(0,y.jsx)(`span`,{children:`Share`})]}),(0,y.jsxs)(`span`,{className:`share-split`,style:{display:`none`},children:[(0,y.jsxs)(`span`,{className:`primary-button`,children:[(0,y.jsxs)(`span`,{className:`ld-copied`,children:[(0,y.jsx)(s,{size:14}),`Copied`]}),(0,y.jsx)(`span`,{className:`ld-copy`,children:`Copy link`})]}),(0,y.jsx)(`span`,{className:`primary-button`,children:(0,y.jsx)(f,{size:14})})]})]}),(0,y.jsxs)(`div`,{className:`chrome shell zoom ld-rise`,children:[(0,y.jsx)(`span`,{className:`icon-button`,children:(0,y.jsx)(r,{})}),(0,y.jsx)(`span`,{className:`shell-divider`}),(0,y.jsx)(`span`,{className:`icon-button`,children:(0,y.jsx)(a,{})}),(0,y.jsx)(`span`,{className:`zoom-value`,"data-zoom":!0,children:`100%`}),(0,y.jsx)(`span`,{className:`icon-button`,children:(0,y.jsx)(l,{})})]}),(0,y.jsxs)(`div`,{className:`ld-cursors`,children:[(0,y.jsx)(Y,{id:`0`,color:q[0].color,name:q[0].name}),(0,y.jsx)(Y,{id:`1`,color:q[1].color,name:q[1].name}),(0,y.jsx)(Y,{id:`2`,color:q[2].color,name:q[2].name}),(0,y.jsx)(Y,{id:`you`,color:`#000`})]})]},m)]})}var X=[[0,`#1f283c`,`#0f1421`,`#2a3755`,`#0c1220`],[4.5,`#1a2132`,`#0d111d`,`#25304c`,`#0a0f1b`],[5.5,`#555b7c`,`#2c3149`,`#8f91b4`,`#3a4252`],[6.5,`#efc4ae`,`#8a7a84`,`#ffe1c9`,`#a79a78`],[7.5,`#f8e2c8`,`#a89c94`,`#fff5e4`,`#b9c39a`],[10,`#fcfaf4`,`#adaca6`,`#ffffff`,`#c9d8bb`],[13,`#ffffff`,`#acadac`,`#ffffff`,`#d3e0c8`],[16,`#faf2e3`,`#aaa193`,`#fffbf1`,`#c7d0a7`],[18,`#e9bd95`,`#a07f62`,`#ffdcb2`,`#a89a62`],[19,`#da9570`,`#7a5a50`,`#ffb78c`,`#6d5f4b`],[19.75,`#84678a`,`#4a4262`,`#b78fa8`,`#3b3550`],[20.75,`#2f3756`,`#1a1f33`,`#3f4a70`,`#141a2c`],[24,`#1f283c`,`#0f1421`,`#2a3755`,`#0c1220`]],me=e=>[1,3,5].map(t=>(parseInt(e.slice(t,t+2),16)/255)**2.2),he=e=>`#${e.map(e=>Math.round(e**(1/2.2)*255).toString(16).padStart(2,`0`)).join(``)}`,ge=new URLSearchParams(location.search).get(`hour`),_e=()=>{if(ge!==null)return Number(ge);let e=new Date;return e.getHours()+e.getMinutes()/60};function ve(){let[e,t]=(0,v.useState)(_e);return(0,v.useEffect)(()=>{let e=()=>t(_e()),n=window.setInterval(e,3e4);return document.addEventListener(`visibilitychange`,e),()=>{window.clearInterval(n),document.removeEventListener(`visibilitychange`,e)}},[]),e}function ye(e){let{lit:t,shade:n}=be(e),[r,i,a]=t.map((e,t)=>n[t]+(e-n[t])*.6);return{lit:he(t),shade:he(n),dark:.2126*r+.7152*i+.0722*a<.18}}function be(e){let t=Math.max(1,X.findIndex(([t])=>t>=e)),[n,...r]=X[t-1],[i,...a]=X[t],o=(e-n)/(i-n),s=o*o*(3-2*o),[c,l,u,d]=r.map((e,t)=>{let n=me(a[t]);return me(e).map((e,t)=>e+(n[t]-e)*s)}),f=2*Math.PI*(e-12.5)/24,p=(9+36*Math.abs(Math.cos(f)))*Math.PI/180,m=Math.sin(f)*52*Math.PI/180;return{lit:c,shade:l,sky:u,leaf:d,sun:[-Math.cos(p)*Math.cos(m),Math.sin(p),Math.cos(p)*Math.sin(m)]}}var xe=`#version 300 es
|
|
3
|
-
in vec2 a;
|
|
4
|
-
void main() { gl_Position = vec4(a, 0., 1.); }`,Se=`#version 300 es
|
|
5
|
-
precision highp float;
|
|
6
|
-
out vec4 fragColor;
|
|
7
|
-
uniform vec2 uRes;
|
|
8
|
-
uniform float uTime;
|
|
9
|
-
uniform vec3 uSun, uLit, uShade, uSky, uLeaf;
|
|
10
|
-
uniform sampler2D uLeaves;
|
|
11
|
-
|
|
12
|
-
// How far the corners melt. Lower is softer.
|
|
13
|
-
const float CORNER = 5.5;
|
|
14
|
-
// Half the height of the box, and how much of the screen its far wall fills.
|
|
15
|
-
const float HALF = 3.;
|
|
16
|
-
const float FAR_WALL = .5;
|
|
17
|
-
|
|
18
|
-
float dither(vec2 p) {
|
|
19
|
-
vec3 h = fract(p.xyx * .1031);
|
|
20
|
-
h += dot(h, h.yzx + 33.33);
|
|
21
|
-
return fract((h.x + h.y) * h.z);
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
float band(float x, float a, float b, float soft) {
|
|
25
|
-
return smoothstep(a - soft, a + soft, x) * (1. - smoothstep(b - soft, b + soft, x));
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
// Wind moving through the trees: gusts travel along the canopy, leaning the branches as they pass,
|
|
29
|
-
// stirring the leaves and opening small gaps that let more light through.
|
|
30
|
-
float foliage(vec2 zy) {
|
|
31
|
-
float t = uTime;
|
|
32
|
-
float gust = sin(t * .42 - zy.x * .3) + .6 * sin(t * .67 - zy.x * .5 + zy.y * .2 + 1.3);
|
|
33
|
-
float stir = .12 + .2 * abs(gust);
|
|
34
|
-
vec2 lean = .6 * gust * vec2(1., .3);
|
|
35
|
-
vec2 flutter = stir * vec2(sin(t * 1.3 + zy.y * 1.7), cos(t * 1.1 + zy.x * 1.5));
|
|
36
|
-
float near = texture(uLeaves, (zy + lean + flutter) * .21 + vec2(.17, .31)).r;
|
|
37
|
-
float far = texture(uLeaves, (zy + lean * .4 + flutter * .3) * .09 + vec2(.61, .09)).r;
|
|
38
|
-
float gap = .03 * gust;
|
|
39
|
-
return max(smoothstep(.1 + gap, .42 + gap, near), .75 * smoothstep(.1, .4, far));
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
// Sun reaching a point through a tall opening down the left side, then through the leaves.
|
|
43
|
-
// The further the light has travelled from the opening, the wider its edges.
|
|
44
|
-
float sunlight(vec3 p, float wall) {
|
|
45
|
-
vec3 hit = p + uSun * ((-wall - p.x) / uSun.x);
|
|
46
|
-
float soft = .25 + .07 * length(hit - p);
|
|
47
|
-
float open = band(hit.y, -HALF + .3, HALF - .3, soft) * band(hit.z, -30., 60., soft);
|
|
48
|
-
float bar = mod(hit.z, 4.) - 2.;
|
|
49
|
-
open *= 1. - min(1., .22 / soft) * exp(-bar * bar / (soft * soft));
|
|
50
|
-
vec3 leaf = p + uSun * ((-wall - 3. - p.x) / uSun.x);
|
|
51
|
-
return open * (1. - .55 * foliage(leaf.zy));
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
void main() {
|
|
55
|
-
float aspect = uRes.x / uRes.y;
|
|
56
|
-
vec2 p = (gl_FragCoord.xy - uRes * .5) / uRes.y;
|
|
57
|
-
|
|
58
|
-
// The far wall has the same shape as the screen, so the corners run straight to the screen's corners.
|
|
59
|
-
vec2 back = vec2(aspect, 1.) * .5 * FAR_WALL;
|
|
60
|
-
float wall = HALF * aspect;
|
|
61
|
-
float depth = HALF / back.y;
|
|
62
|
-
|
|
63
|
-
// How far past the far wall's outline this pixel is, and how much it belongs to each face.
|
|
64
|
-
vec2 reach = abs(p) / back;
|
|
65
|
-
vec3 weights = exp(CORNER * vec3(reach, 1.));
|
|
66
|
-
weights /= weights.x + weights.y + weights.z;
|
|
67
|
-
float besides = weights.x;
|
|
68
|
-
float above = weights.y;
|
|
69
|
-
float ahead = weights.z;
|
|
70
|
-
|
|
71
|
-
float leftFace = besides * (1. - smoothstep(-.1, .1, p.x / back.x));
|
|
72
|
-
float rightFace = besides - leftFace;
|
|
73
|
-
float floorFace = above * (1. - smoothstep(-.1, .1, p.y / back.y));
|
|
74
|
-
float ceilingFace = above - floorFace;
|
|
75
|
-
|
|
76
|
-
// Points on each face, for the sun.
|
|
77
|
-
float tWall = min(wall / max(abs(p.x), .01), depth);
|
|
78
|
-
float tFlat = min(HALF / max(abs(p.y), .01), depth);
|
|
79
|
-
vec3 onRight = vec3(wall, p.y * tWall, tWall);
|
|
80
|
-
vec3 onLeft = vec3(-wall, p.y * tWall, tWall);
|
|
81
|
-
vec3 onFloor = vec3(p.x * tFlat, -HALF, tFlat);
|
|
82
|
-
vec3 onBack = vec3(p.x * depth, p.y * depth, depth);
|
|
83
|
-
|
|
84
|
-
// Daylight fills the box from the left, thinning toward the right.
|
|
85
|
-
float x = p.x / (back.x * 2.);
|
|
86
|
-
float fill = 1. - .55 * smoothstep(-1.2, 1.5, x);
|
|
87
|
-
fill *= leftFace + floorFace + ahead * .9 + ceilingFace * .74 + rightFace * .8;
|
|
88
|
-
|
|
89
|
-
// The corners are only a slight gathering of shade where two faces meet.
|
|
90
|
-
float crease = 1. - max(besides, max(above, ahead));
|
|
91
|
-
fill *= 1. - crease * .3;
|
|
92
|
-
vec3 color = mix(uShade, uLit, fill);
|
|
93
|
-
|
|
94
|
-
// Sun.
|
|
95
|
-
vec3 s = uSun;
|
|
96
|
-
float sun = 0.;
|
|
97
|
-
if (floorFace > .02) sun += floorFace * sunlight(onFloor, wall) * min(1., s.y * 3.);
|
|
98
|
-
if (ahead > .02) sun += ahead * sunlight(onBack, wall) * min(1., max(-s.z, 0.) * 2.5);
|
|
99
|
-
if (rightFace > .02) sun += rightFace * sunlight(onRight, wall) * min(1., -s.x * 2.);
|
|
100
|
-
color += uLit * sun * .5;
|
|
101
|
-
|
|
102
|
-
// The left side is the light itself: bright sky with trees far out of focus.
|
|
103
|
-
color = mix(color, mix(uSky, uLeaf, foliage(onLeft.zy) * .28), leftFace);
|
|
104
|
-
|
|
105
|
-
color = pow(min(color, vec3(1.)), vec3(1. / 2.2));
|
|
106
|
-
// A single level of 8-bit noise: invisible, but it stops the gradients from banding.
|
|
107
|
-
color += (dither(gl_FragCoord.xy + 17.) - .5) / 255.;
|
|
108
|
-
fragColor = vec4(color, 1.);
|
|
109
|
-
}`;function Ce(){let e=1024,t=document.createElement(`canvas`);t.width=t.height=e;let n=t.getContext(`2d`),r=606,i=()=>(r=r*16807%2147483647)/2147483647;n.fillStyle=`#000`,n.fillRect(0,0,e,e),n.fillStyle=n.strokeStyle=`#fff`,n.lineCap=`round`;for(let t=0;t<22;t++){let t=i()*e,r=i()*e,a=i()*Math.PI*2,o=260+i()*460;for(let e=0;e<o;e+=14){a+=(i()-.5)*.3;let s=t+Math.cos(a)*14,c=r+Math.sin(a)*14;if(n.lineWidth=Math.max(1.5,6*(1-e/o)),n.beginPath(),n.moveTo(t,r),n.lineTo(s,c),n.stroke(),t=s,r=c,!(i()>.42))for(let e of[-1,1]){if(i()>.8)continue;let o=a+e*(.5+i()*.7),s=34+i()*40;n.save(),n.translate(t+Math.cos(o)*s*.55,r+Math.sin(o)*s*.55),n.rotate(o),n.beginPath(),n.ellipse(0,0,s*.55,s*.2,0,0,Math.PI*2),n.fill(),n.restore()}}}return we(t)}function we(e){let t=document.createElement(`canvas`);t.width=t.height=128;let n=t.getContext(`2d`,{willReadFrequently:!0});n.drawImage(e,0,0,128,128);let r=n.getImageData(0,0,128,128),i=Float32Array.from({length:16384},(e,t)=>r.data[t*4]);for(let e=0;e<6;e++){let t=new Float32Array(16384);for(let n=0;n<128;n++)for(let r=0;r<128;r++){let a=0;for(let t=-13;t<=13;t++){let o=e%2?(n+t+128)%128*128+r:n*128+(r+t+128)%128;a+=i[o]}t[n*128+r]=a/27}i=t}return i.forEach((e,t)=>{r.data[t*4]=r.data[t*4+1]=r.data[t*4+2]=e}),n.putImageData(r,0,0),t}function Te({hour:e}){let t=(0,v.useRef)(null),n=(0,v.useRef)(e),r=(0,v.useRef)(null);return(0,v.useEffect)(()=>{n.current=e,r.current?.()},[e]),(0,v.useEffect)(()=>{let e=t.current,i=e.getContext(`webgl2`,{antialias:!1,alpha:!1});if(!i)return;let a=i.createProgram();for(let[e,t]of[[i.VERTEX_SHADER,xe],[i.FRAGMENT_SHADER,Se]]){let n=i.createShader(e);i.shaderSource(n,t),i.compileShader(n),i.attachShader(a,n)}i.bindAttribLocation(a,0,`a`),i.linkProgram(a),i.useProgram(a),i.bindBuffer(i.ARRAY_BUFFER,i.createBuffer()),i.bufferData(i.ARRAY_BUFFER,new Float32Array([-1,-1,3,-1,-1,3]),i.STATIC_DRAW),i.enableVertexAttribArray(0),i.vertexAttribPointer(0,2,i.FLOAT,!1,0,0),i.bindTexture(i.TEXTURE_2D,i.createTexture()),i.texImage2D(i.TEXTURE_2D,0,i.RGBA,i.RGBA,i.UNSIGNED_BYTE,Ce()),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MIN_FILTER,i.LINEAR),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_S,i.REPEAT),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_T,i.REPEAT);let o=e=>i.getUniformLocation(a,e),s=(t,n)=>{let{clientWidth:r,clientHeight:a}=e;(e.width!==r||e.height!==a)&&(e.width=r,e.height=a,i.viewport(0,0,r,a));let s=be(n);i.uniform2f(o(`uRes`),r,a),i.uniform1f(o(`uTime`),t/1e3),i.uniform3fv(o(`uSun`),s.sun),i.uniform3fv(o(`uLit`),s.lit),i.uniform3fv(o(`uShade`),s.shade),i.uniform3fv(o(`uSky`),s.sky),i.uniform3fv(o(`uLeaf`),s.leaf),i.drawArrays(i.TRIANGLES,0,3)};if(matchMedia(`(prefers-reduced-motion: reduce)`).matches){r.current=()=>s(0,n.current);let t=new ResizeObserver(()=>s(0,n.current));return t.observe(e),()=>{r.current=null,t.disconnect()}}let c=n.current,l=performance.now(),u=requestAnimationFrame(function e(t){c+=(n.current-c)*(1-Math.exp((l-t)*.002)),l=t,s(t,c),u=requestAnimationFrame(e)});return()=>cancelAnimationFrame(u)},[]),(0,y.jsx)(`canvas`,{ref:t,className:`window-light`,"aria-hidden":`true`})}var Ee=new URLSearchParams(location.search).get(`hero`)!==`1`,De=(0,v.lazy)(()=>_(()=>import(`./LandingStage-DQBFsXtF.js`),__vite__mapDeps([0,1,2,3,4,5]))),Oe=[[`A`,`damn`,`good`,`(sharable)`],[`canvas`,`for`,`your`,`agent`]],Z=H(.8,0),ke=H(1.1,0),Ae=.1,je=3,Me=.14,Q=8,Ne=500,$=32,Pe=1500;function Fe(){let e=(0,v.useRef)(null),t=(0,v.useRef)(null);return(0,v.useEffect)(()=>{if(matchMedia(`(prefers-reduced-motion: reduce)`).matches)return;let n=[0,0,0,0],r=[0,0,0,0],i=0,a=!1,o=()=>{let e=!0;r.forEach((t,i)=>{r[i]=t+(n[i]-t)*Me,Math.abs(n[i]-r[i])>.01&&(e=!1)}),e&&r.splice(0,4,...n);let[a,s,c,l]=r.map(e=>e.toFixed(2));t.current&&(t.current.style.transform=r.some(Boolean)?`perspective(${Ne}px) translate(${a}px, ${s}px) rotateX(${c}deg) rotateY(${l}deg)`:``),i=e?0:requestAnimationFrame(o)},s=()=>{i||=requestAnimationFrame(o)},c=(e,t)=>Math.max(-t,Math.min(t,e)),l=()=>{a&&(a=!1,n.fill(0),s())},u=t=>{if(t.pointerType!==`mouse`||!e.current)return;let r=e.current.getBoundingClientRect();if(t.clientX<=r.left-$||t.clientX>=r.right+$||t.clientY<=r.top-$||t.clientY>=r.bottom+$)return l();a=!0;let i=t.clientX-r.left-r.width/2,o=t.clientY-r.top-r.height/2;n[0]=c(i*Ae,je),n[1]=c(o*Ae,je),n[2]=c(-o/(r.height/2)*Q,Q),n[3]=c(i/(r.width/2)*Q,Q),s()};return window.addEventListener(`pointermove`,u),document.documentElement.addEventListener(`pointerleave`,l),()=>{cancelAnimationFrame(i),window.removeEventListener(`pointermove`,u),document.documentElement.removeEventListener(`pointerleave`,l)}},[]),[e,t]}function Ie(){let[e,t]=(0,v.useState)(!1),n=(0,v.useRef)(0);(0,v.useEffect)(()=>()=>window.clearTimeout(n.current),[]);let r=()=>{t(!0),window.clearTimeout(n.current),n.current=window.setTimeout(()=>t(!1),Pe)};return[e,e=>{navigator.clipboard?.writeText(e).then(r).catch(()=>{})},r]}function Le(){let[e,t,n]=Ie(),[r,i]=Fe();return(0,v.useEffect)(()=>(window.addEventListener(x,n),()=>window.removeEventListener(x,n)),[]),(0,y.jsx)(`span`,{ref:r,className:`landing-magnet`,children:(0,y.jsx)(`div`,{ref:i,className:`landing-cta`,children:(0,y.jsxs)(`button`,{type:`button`,className:`landing-button`,"data-copied":e||void 0,onClick:()=>t(m),children:[(0,y.jsxs)(`span`,{className:`landing-states`,children:[(0,y.jsxs)(`span`,{className:`landing-state`,children:[(0,y.jsx)(b,{}),(0,y.jsx)(`span`,{className:`landing-label`,children:`Copy agent prompt`})]}),(0,y.jsxs)(`span`,{className:`landing-state`,"aria-hidden":`true`,children:[(0,y.jsx)(`svg`,{className:`landing-check`,viewBox:`0 0 18 18`,children:(0,y.jsx)(`path`,{d:`M3.5 9.5 7.25 13.25 14.5 5`,pathLength:`1`})}),(0,y.jsx)(`span`,{className:`landing-done`,children:`Copied`})]})]}),(0,y.jsx)(`span`,{className:`landing-sr`,"aria-live":`polite`,children:e?`Copied`:``})]})})})}function Re(){let e=0;return(0,y.jsx)(`h1`,{className:`landing-title`,children:Oe.map((t,n)=>(0,y.jsxs)(v.Fragment,{children:[n>0&&(0,y.jsx)(`br`,{}),t.map(t=>(0,y.jsxs)(v.Fragment,{children:[(0,y.jsx)(`span`,{className:`landing-word`,style:{"--delay":`${100+e++*80}ms`},children:t}),` `]},t))]},n))})}function ze(){let e=ve(),{lit:t,shade:n,dark:r}=ye(e);return(0,v.useEffect)(()=>{document.body.style.background=t,document.body.style.colorScheme=r?`dark`:`light`},[t,r]),(0,y.jsxs)(`div`,{className:`landing`,"data-dark":r||void 0,style:{"--lit":t,"--shade":n,"--word-ease":Z.css,"--word-ms":`${Z.ms}ms`,"--rise-ease":ke.css,"--rise-ms":`${ke.ms}ms`},children:[(0,y.jsx)(Te,{hour:e}),(0,y.jsxs)(`nav`,{className:`landing-nav`,"aria-label":`Main`,children:[(0,y.jsx)(`a`,{className:`wordmark`,href:`/`,children:(0,y.jsx)(g,{})}),(0,y.jsx)(`a`,{className:`landing-sign-in`,href:`/auth/google/start?next=/`,children:`Sign in`})]}),(0,y.jsxs)(`main`,{className:`landing-hero`,children:[(0,y.jsx)(Re,{}),(0,y.jsx)(`p`,{className:`landing-body`,children:`Give your agent a canvas to explore design directions on. Then share it with your team to comment and huddle, right on the work.`}),(0,y.jsx)(`div`,{className:`landing-actions`,children:(0,y.jsx)(Le,{})}),Ee?(0,y.jsx)(v.Suspense,{fallback:null,children:(0,y.jsx)(De,{})}):(0,y.jsx)(pe,{})]}),(0,y.jsxs)(`footer`,{className:`landing-foot`,children:[(0,y.jsx)(`a`,{href:`/privacy`,children:`Privacy`}),(0,y.jsx)(`a`,{href:`/terms`,children:`Terms`})]})]})}export{ze as Landing,x as i,ve as n,ue as r,ye as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
body:has(.landing){text-wrap:balance;overflow:auto}.landing{isolation:isolate;min-height:100%;color:var(--text);--text:oklch(0% 0 0);--muted:oklch(40% 0 0);--solid:oklch(0% 0 0);--on-solid:oklch(100% 0 0);--surface-2:oklch(100% 0 0/.45);--surface-pressed:oklch(100% 0 0/.7);--signal:#06f;flex-direction:column;font-size:15px;line-height:1.4;transition:color .6s;display:flex;position:relative;overflow-x:clip}.landing[data-dark]{--text:oklch(98.5% 0 0);--muted:oklch(78% 0 0);--solid:oklch(100% 0 0);--on-solid:oklch(0% 0 0);--surface-2:oklch(100% 0 0/.12);--surface-pressed:oklch(100% 0 0/.2)}.window-light{z-index:-1;background:linear-gradient(90deg, var(--lit), var(--shade));pointer-events:none;width:100vw;height:100lvh;position:fixed;top:0;left:0}.landing a:not(.wordmark){text-decoration:none}.landing-nav{justify-content:space-between;align-items:center;width:100%;max-width:1248px;margin:0 auto;padding:20px 24px;display:flex}.landing-nav .wordmark svg{height:18px}.landing-sign-in{border-radius:var(--pill);background:var(--surface-2);align-items:center;height:40px;padding:0 16px;font-weight:500;transition:background-color .2s;display:inline-flex}.landing-sign-in:hover{background:var(--surface-pressed)}.landing-hero{text-align:center;flex-direction:column;flex:1;align-items:center;width:100%;max-width:1248px;margin:0 auto;padding:72px 24px 0;display:flex}.landing-title{perspective:1200px;letter-spacing:-.02em;margin:0;font-size:clamp(40px,6.6vw,76px);font-weight:700;line-height:.95}.landing-word{animation:landing-word var(--word-ms) var(--word-ease) var(--delay) both;display:inline-block}.landing-actions{animation:landing-rise var(--rise-ms) var(--rise-ease) .55s both;justify-content:center;margin-top:32px;display:flex}.landing-magnet{flex:none;display:inline-flex}.landing-cta{border-radius:var(--pill);will-change:transform;flex:none}.landing-button{border-radius:var(--pill);background:var(--solid);height:52px;color:var(--on-solid);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;padding:0 26px;font-size:15px;font-weight:500;transition:transform .16s ease-out;display:inline-flex}.landing-button:active{transform:scale(.97)}.landing-swap{justify-items:center;display:inline-grid}.landing-swap>span{grid-area:1/1;transition:opacity .15s}.landing-swap>[data-shown=false]{opacity:0}.landing-foot{color:var(--muted);justify-content:center;gap:24px;padding:48px 24px 32px;font-size:13px;display:flex}.landing-foot a:hover{color:var(--text)}.ld-shell{background:var(--canvas);text-align:left;text-wrap:initial;flex:none;width:100%;margin-top:64px;font-size:13px;line-height:18px;animation:2.6s cubic-bezier(.22,1,.36,1) both ld-settle,1.6s ease-out both ld-focus,.9s .5s both ld-fill;position:relative;overflow:hidden;box-shadow:0 40px 100px -40px #00000024,0 12px 32px -16px #0000000f}.ld-draw{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.ld-draw path{fill:none;stroke:var(--line);stroke-width:1px;stroke-dasharray:1;stroke-dashoffset:1px;animation:1.4s cubic-bezier(.65,0,.35,1) both ld-trace}.ld-stage{transform-origin:0 0;position:absolute;top:0;left:0;overflow:hidden}.ld-scene{position:absolute;inset:0}.ld-rise{animation:.9s cubic-bezier(.2,.8,.2,1) 1.1s both ld-rise}.ld-stage .shell{position:absolute}.ld-stage .top-left{max-width:none;padding-left:3px;top:6px;left:6px}.ld-stage .top-right{top:6px;right:6px}.ld-stage .toolbar{top:6px;left:50%;transform:translate(-50%)}.ld-stage .toolbar-clip{width:auto}.ld-stage .zoom{bottom:6px;right:6px}.ld-stage .canvas-name{line-height:32px}.ld-stage .zoom-value{justify-content:center;align-items:center;display:inline-flex}.ld-stage .tool-slider{top:0}.ld-stage .tool[aria-pressed=true]{color:var(--signal);position:relative}.ld-stage .tool[aria-pressed=true] svg{opacity:1}.ld-stage .face-button{transform-origin:50%;display:inline-flex}.ld-copied{align-items:center;gap:4px;display:inline-flex}.share-split[data-copied] .ld-copy,.share-split:not([data-copied]) .ld-copied{display:none}.ld-strokes{pointer-events:none;position:absolute;inset:0}.ld-pin{z-index:3;transform-origin:0 100%}.ld-cursors{pointer-events:none;z-index:6;position:absolute;inset:0}.ld-cursor{opacity:0;will-change:transform;transition:none;top:-4px;left:-3px}.ld-cursor svg{transform-origin:3px 4px}.ld-frame{transform-origin:50%}.ld-design{color:#111;background:#f3f2ef;flex-direction:column;gap:10px;height:100%;padding:22px;font:13px/18px -apple-system,system-ui,sans-serif;display:flex;overflow:hidden}.ld-design h1{margin:0 0 2px;font-size:14px;font-weight:600;line-height:20px}.ld-n{background:#fff;border-radius:12px;flex:none;align-items:flex-start;gap:12px;padding:11px 12px;display:flex;box-shadow:0 1px 2px #00000014}.ld-av{color:#fff;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:11px;font-weight:600;display:grid}.ld-t{font-weight:600}.ld-d{color:#666}.ld-w{color:#999;flex:none;margin-left:auto;font-size:11px}.ld-design[data-v="2"]{color:#eee;background:#101114}.ld-design[data-v="2"] .ld-n{box-shadow:none;background:#1b1d22}.ld-design[data-v="2"] .ld-d{color:#9aa}.ld-design[data-v="3"]{background:#fff;gap:0}.ld-design[data-v="3"] .ld-n{box-shadow:none;background:0 0;border-bottom:1px solid #ddd;border-radius:0;padding:11px 0}.ld-design[data-v="4"]{gap:6px;padding:16px}.ld-design[data-v="4"] .ld-n{border-radius:8px;align-items:center;padding:10px}.ld-design[data-v="4"] .ld-av{width:22px;height:22px;font-size:9px}.ld-design[data-v="4"] .ld-d{display:none}.ld-design[data-v="5"]{background:linear-gradient(160deg,#ffe8d6,#f6d6ff)}.ld-design[data-v="5"] .ld-n{box-shadow:none;background:#fff9;border-radius:18px}.ld-design[data-v="6"]{background:#fffbe9}.ld-design[data-v="6"] .ld-n{border:1.5px solid #111;border-radius:6px;box-shadow:3px 3px #111}.ld-design[data-v="6"] .ld-av{color:#111;border:1.5px solid #111;border-radius:6px;background:0 0!important}@keyframes landing-word{0%{opacity:0;transform:translateY(45%)rotateX(-40deg)}}@keyframes landing-rise{0%{opacity:0;filter:blur(12px);transform:translateY(10px)}}@keyframes ld-settle{0%{transform:translateY(40px) scale(var(--ld-from,1.3))}}@keyframes ld-focus{0%{filter:blur(6px);opacity:0}40%{opacity:1}}@keyframes ld-fill{0%{background-color:#0000;box-shadow:0 40px 100px -40px #0000,0 12px 32px -16px #0000}}@keyframes ld-trace{to{stroke-dashoffset:0}}@keyframes ld-rise{0%{opacity:0}}@media (width<=640px){.landing-nav{padding:12px 16px}.landing-hero{padding:40px 16px 0}.landing-title br{display:none}.ld-shell{margin-top:40px}}@media (prefers-reduced-motion:reduce){.landing-word,.landing-actions,.ld-shell,.ld-rise{animation:none}.ld-draw path{stroke-dashoffset:0;animation:none}}.landing .landing-button{position:relative}.landing-states{place-items:center;display:grid}.landing-state{white-space:nowrap;grid-area:1/1;align-items:center;gap:10px;display:inline-flex}.landing-marks{align-items:center;gap:6px;display:inline-flex}.landing-marks svg{width:16px;height:16px;display:block}.landing-sr{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.landing-marks svg,.landing-label,.landing-check,.landing-done{transition:opacity .18s ease-out,translate .32s cubic-bezier(.34,1.56,.64,1),scale .32s cubic-bezier(.34,1.56,.64,1),filter .18s ease-out}.landing-marks svg:nth-child(2){transition-delay:45ms}.landing-label{transition-delay:70ms;transition-timing-function:ease-out,cubic-bezier(.22,1,.36,1),ease-out,ease-out}.landing-button[data-copied] .landing-marks svg,.landing-button[data-copied] .landing-label{opacity:0;filter:blur(3px);transition:opacity .12s ease-in,translate .16s ease-in,scale .16s ease-in,filter .12s ease-in;translate:0 -10px;scale:.8}.landing-button[data-copied] .landing-marks svg:first-child{transition-delay:40ms}.landing-button[data-copied] .landing-label{translate:0 -8px;scale:1}.landing-check,.landing-done{opacity:0;filter:blur(3px);transition-duration:.12s;translate:0 10px}.landing-button[data-copied] .landing-check,.landing-button[data-copied] .landing-done{opacity:1;filter:blur();transition:opacity .18s ease-out 70ms,translate .36s cubic-bezier(.34,1.56,.64,1) 70ms,filter .18s ease-out 70ms;translate:0}.landing-check{fill:none;stroke:currentColor;stroke-width:2.25px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px;display:block}.landing-check path{stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset .1s ease-in}.landing-button[data-copied] .landing-check path{stroke-dashoffset:0;transition:stroke-dashoffset .3s cubic-bezier(.65,0,.35,1) .12s}.landing-button[data-copied]{animation:.48s cubic-bezier(.22,1,.36,1) landing-copied}@keyframes landing-copied{0%{scale:.97}45%{scale:1.035}to{scale:1}}@media (prefers-reduced-motion:reduce){.landing-marks svg,.landing-label,.landing-check,.landing-done,.landing-button[data-copied] .landing-marks svg,.landing-button[data-copied] .landing-label,.landing-button[data-copied] .landing-check,.landing-button[data-copied] .landing-done{filter:none;transition:opacity .15s;translate:none;scale:none}.landing-check path,.landing-button[data-copied] .landing-check path{stroke-dashoffset:0;transition:none}.landing-button[data-copied]{animation:none}}.landing-body{max-width:560px;color:var(--muted);animation:landing-rise var(--rise-ms) var(--rise-ease) .5s both;margin:24px 0 0;font-size:18px;line-height:1.45}@media (width<=640px){.landing-body{margin-top:16px;font-size:16px}}@media (prefers-reduced-motion:reduce){.landing-body{animation:none}}.landing .landing-button{transition:transform .16s ease-out,background-color .2s ease-out,color .2s ease-out}.landing .landing-button[data-copied]{color:#fff;background:#06f}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
@property --ls-x{syntax:"<number>";inherits:true;initial-value:0}@property --ls-y{syntax:"<number>";inherits:true;initial-value:0}@property --ls-z{syntax:"<number>";inherits:true;initial-value:1}.ls{margin-top:40px;margin-bottom:48px;animation:9s ease-in-out infinite alternate ls-float}@keyframes ls-float{0%{translate:0 8px}to{translate:0 -8px}}@media (prefers-reduced-motion:reduce){.ls{animation:none}}.ls .ss-stage{font-family:var(--font);--canvas:#111;--surface:oklch(16% 0 0);--surface-2:oklch(22% 0 0);--surface-hover:oklch(100% 0 0/.07);--surface-pressed:oklch(100% 0 0/.11);--solid:oklch(100% 0 0);--on-solid:oklch(0% 0 0);--text:oklch(98.5% 0 0);--secondary:oklch(80% 0 0);--muted:oklch(66% 0 0);--line:oklch(100% 0 0/.09);--line-subtle:oklch(100% 0 0/.06);--icon-muted:.6;--icon-secondary:.74;--signal:#06f;--signal-soft:#06f3;--shadow:0 0 0 .5px var(--line), 0 4px 8px -2px oklch(0% 0 0/.3), 0 14px 32px -8px oklch(0% 0 0/.5);--shadow-sm:0 0 0 1px var(--line);--ls-bar:#232323;--ls-chat:#111;--ls-control:#242424;--ls-composer:#2b2b2b;--ls-ink:#e8e8e8;--ls-ink-2:#a3a3a3;--ls-ink-3:#6e6e6e;color:var(--text);background:0 0;overflow:visible}.ls-window{background:var(--ls-chat);text-align:left;border-radius:20px;width:1152px;height:640px;font-size:13px;line-height:18px;display:flex;position:absolute;top:16px;left:24px;overflow:hidden;box-shadow:0 0 0 .5px #ffffff24,16px 40px 120px -32px #00000047,6px 14px 44px -18px #00000024}.ls-dim{opacity:.45}.ls-grow{flex:1}.ls-bar{background:var(--ls-bar);height:38px;color:var(--ls-ink-2);flex:none;align-items:center;padding:0 14px;display:flex}.ls-lights{gap:8px;display:flex}.ls-lights i{background:#ff5f57;border-radius:50%;width:11px;height:11px}.ls-lights i:nth-child(2){background:#febc2e}.ls-lights i:nth-child(3){background:#28c840}.ls-bar-icons{align-items:center;gap:12px;margin-left:20px;display:flex}.ls-bar-rule{background:var(--line);width:1px;height:14px;margin:0 10px}.ls-title{color:var(--ls-ink);font-weight:500}.ls-chat{flex-direction:column;flex:1 1 0;min-width:0;display:flex;position:relative}.ls-chat-body{flex-direction:column;flex:1;align-items:center;min-height:0;padding:16px 12px 12px;display:flex;position:relative}.ls-thread{flex:1;width:346px;min-height:0;position:relative}.ls-message{background:var(--ls-composer);width:fit-content;max-width:280px;color:var(--ls-ink);border-radius:18px;margin-left:auto;padding:9px 13px}.ls-activity{height:44px;color:var(--ls-ink);background:#1a1a1a;border-radius:14px;align-items:center;gap:10px;margin-top:14px;padding:0 12px;display:flex;box-shadow:inset 0 0 0 1px #ffffff0f}.ls-activity-text{white-space:nowrap;flex:1;min-width:0;font-weight:500}.ls-minis{flex:none;gap:4px;display:flex}.ls-minis i{background:#ffffff0f;border-radius:3px;width:14px;height:18px;transition:background .3s,scale .3s cubic-bezier(.25,.8,.25,1);scale:.9}.ls-minis i[data-on]{scale:1}.ls-minis i[data-on][data-v="1"]{background:#f3f2ef}.ls-minis i[data-on][data-v="2"]{background:#101114;box-shadow:inset 0 0 0 1px #fff3}.ls-minis i[data-on][data-v="3"]{background:#fff}.ls-minis i[data-on][data-v="4"]{background:#d9d8d3}.ls-minis i[data-on][data-v="5"]{background:linear-gradient(160deg,#ffe8d6,#f6d6ff)}.ls-minis i[data-on][data-v="6"]{background:#fffbe9}.ls-reply{color:var(--ls-ink);opacity:0;margin-top:10px;transition:opacity .3s}.ls-reply[data-on]{opacity:1}.ls-input{flex:none;width:346px}.ls-composer{background:var(--ls-composer);border-radius:18px;padding:11px 10px 9px;position:relative}.ls-composer-text{height:38px;color:var(--ls-ink);padding:0 0 0 1px;overflow:hidden}.ls-placeholder{color:var(--ls-ink-3)}.ls-caret{vertical-align:-2px;background:var(--ls-ink);width:1.5px;height:14px;margin-left:1px;display:inline-block}.ls-composer-row{color:var(--ls-ink-2);align-items:center;gap:12px;display:flex}.ls-model{color:var(--ls-ink);white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:inline-flex}.ls-model em{color:var(--ls-ink-3);font-style:normal}.ls-send{color:#000;background:#fff;border-radius:50%;flex:none;width:26px;height:26px;transition:scale .12s ease-out;position:relative}.ls-send[data-pressed]{scale:.92}.ls-send-glyph{opacity:0;place-items:center;transition:opacity .12s;display:grid;position:absolute;inset:0}.ls-send-glyph[data-on]{opacity:1}.ls-rest{width:1px;height:1px;position:absolute;bottom:150px;left:62%}.ls-pane{flex:none;width:0;transition:width .9s cubic-bezier(.45,0,.1,1);position:relative;overflow:hidden}.ls-pane[data-open]{width:781px}.ls-pane-inner{flex-direction:column;width:781px;display:flex;position:absolute;top:0;bottom:0;left:0}.ls-pane-inner:after{content:"";pointer-events:none;background:#ffffff14;width:1px;position:absolute;top:38px;bottom:0;left:0}.ls-tabs{gap:8px;padding:0 12px 0 6px}.ls-pane-icons{flex:none;align-items:center;gap:10px;margin-left:4px;display:flex}.ls-tab-close{width:18px;height:18px;color:var(--ls-ink-2);border-radius:50%;justify-self:end;place-items:center;transition:background-color .12s,scale .12s ease-out;display:grid}.ls-tab-close[data-hover]{background:#ffffff1a}.ls-tab-close[data-pressed]{scale:.9}.ls-url{border-radius:var(--pill);background:var(--ls-chat);min-width:0;height:26px;color:var(--ls-ink);text-align:center;white-space:nowrap;flex:1;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:0 4px 0 9px;font-size:12px;line-height:26px;display:grid;overflow:hidden}.ls-canvas{background:var(--canvas);--ls-x:240;--ls-y:150;--ls-z:1;flex:1;min-height:0;transition:--ls-x 1.1s cubic-bezier(.45,0,.1,1),--ls-y 1.1s cubic-bezier(.45,0,.1,1),--ls-z 1.1s cubic-bezier(.45,0,.1,1);position:relative;overflow:hidden}.ls-canvas[data-frames="2"]{--ls-x:74;--ls-y:150;--ls-z:.98}.ls-canvas:is([data-frames="3"],[data-frames="4"],[data-frames="5"],[data-frames="6"]){--ls-x:48;--ls-y:84;--ls-z:.69}.ls-world{transform:translate(calc(var(--ls-x) * 1px), calc(var(--ls-y) * 1px)) scale(var(--ls-z));--inv:calc(1 / var(--ls-z));--zoom:var(--ls-z);will-change:transform}.ls-frame{opacity:0;will-change:transform;transition:opacity .3s,translate .3s;translate:0 16px}.ls-frame[data-on]{opacity:1;transition:opacity .8s cubic-bezier(.25,.8,.25,1),translate .8s cubic-bezier(.25,.8,.25,1);translate:0}.ls .ld-design{padding:18px}.ls .ld-t,.ls .ld-d{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ls .ld-n>div{min-width:0}.ls .ld-d{margin-top:3px}.ls-blank{width:1px;height:1px;position:absolute;bottom:20px;left:50%}.ls .shell{position:absolute}.ls .top-left{max-width:none;padding-left:3px;top:6px;left:6px}.ls .top-right{will-change:transform;top:6px;right:6px}.ls .toolbar{top:6px;left:50%;transform:translate(-50%)}.ls .toolbar-clip{width:auto}.ls .canvas-name{line-height:32px}.ls .tool-slider{background:var(--surface-pressed)}.ls .tool[aria-pressed=true]{color:var(--text);position:relative}.ls .tool[aria-pressed=true] svg{opacity:1}.ls .share-button{will-change:transform;transition:opacity .1s,scale .12s ease-out}.ls .share-button[data-pressed]{scale:.96}.ls-faces{align-items:center;margin-right:6px;padding-left:7px;transition:padding .3s cubic-bezier(.25,.8,.25,1),margin .3s cubic-bezier(.25,.8,.25,1);display:flex}.ls-faces[data-count="0"]{margin-right:0;padding:0}.ls-face{opacity:0;will-change:transform;border-radius:50%;width:0;transition:width .3s cubic-bezier(.25,.8,.25,1),opacity .2s,scale .3s cubic-bezier(.25,.8,.25,1);display:inline-flex;scale:.6}.ls-face[data-on]{opacity:1;width:24px;scale:1}.ls-pin{z-index:3;transform-origin:0 100%;opacity:0;will-change:transform;max-width:none;max-height:none;color:var(--text);font-size:11px;line-height:16px;transition:opacity .16s,scale .26s cubic-bezier(.25,.8,.25,1),width .24s cubic-bezier(.25,.8,.25,1),height .24s cubic-bezier(.25,.8,.25,1),padding .24s cubic-bezier(.25,.8,.25,1);scale:.7}.ls-pin:not([data-state=off]){opacity:1;scale:1}.ls-pin .comment-pin-preview{opacity:0;flex:none;width:184px;transition:opacity .1s}.ls-pin[data-expanded]{width:240px;height:64px;padding:12px}.ls-pin[data-expanded] .comment-pin-preview{opacity:1;transition:opacity .16s .2s}.ls .share-sharing i{animation:.7s cubic-bezier(.45,0,.1,1) both ls-share-fill}@keyframes ls-share-fill{0%{width:6%}to{width:100%}}.ls-peer{z-index:6;pointer-events:none;will-change:transform;transition:transform .95s cubic-bezier(.45,0,.25,1);position:absolute;top:-4px;left:-3px}.ls-peer svg{filter:drop-shadow(0 1px 2px #00000040);display:block}.ls .ss-stage[data-layout=compact] .ls-window{width:342px;height:444px;top:8px;left:8px}.ls .ss-stage[data-layout=compact] .ls-thread,.ls .ss-stage[data-layout=compact] .ls-input{width:318px}.ls .ss-stage[data-layout=compact] .ls-pane{width:342px;transition:translate .7s cubic-bezier(.45,0,.1,1);position:absolute;top:0;bottom:0;right:0;translate:100%}.ls .ss-stage[data-layout=compact] .ls-pane[data-open]{translate:0}.ls .ss-stage[data-layout=compact] .ls-pane-inner{width:342px}.ls .ss-stage[data-layout=compact] .ls-tools,.ls .ss-stage[data-layout=compact] .ls-pane-icons{display:none}.ls .ss-stage[data-layout=compact] .ls-tabs{padding-right:6px}.ls .ss-stage[data-layout=compact] .ls-canvas{--ls-x:14;--ls-y:72;--ls-z:.95}.ls .ss-stage[data-layout=compact] .ls-canvas[data-frames="2"]{--ls-x:-315;--ls-y:72;--ls-z:.95}.ls .ss-stage[data-layout=compact] .ls-canvas[data-frames="3"]{--ls-x:-643;--ls-y:72;--ls-z:.95}.ls .ss-stage[data-layout=compact] .ls-canvas[data-frames="4"]{--ls-x:14;--ls-y:-274;--ls-z:.95}.ls .ss-stage[data-layout=compact] .ls-canvas[data-frames="5"]{--ls-x:-315;--ls-y:-274;--ls-z:.95}.ls .ss-stage[data-layout=compact] .ls-canvas[data-frames="6"]{--ls-x:-643;--ls-y:-274;--ls-z:.95}.ls .ss-stage[data-layout=compact] .ls-canvas:is([data-frames="4"],[data-frames="5"],[data-frames="6"]) :is([data-target=v1],[data-target=v2],[data-target=v3]){opacity:0}.ls .ss-stage[data-layout=compact] .ls-pin[data-expanded]{width:220px}.ls .ss-stage[data-layout=compact] .ls-pin .comment-pin-preview{width:164px}.landing:not([data-dark]) .ls .ss-stage{--canvas:#fff;--surface:#fff;--surface-2:#f1f1f1;--surface-hover:oklch(0% 0 0/.05);--surface-pressed:oklch(0% 0 0/.09);--solid:#000;--on-solid:#fff;--text:#000;--secondary:oklch(42% 0 0);--muted:oklch(53% 0 0);--line:oklch(0% 0 0/.09);--line-subtle:oklch(0% 0 0/.06);--icon-muted:.58;--icon-secondary:.72;--signal:#06f;--signal-soft:#0066ff21;--shadow:0 0 0 .5px var(--line), 0 4px 8px -2px oklch(0% 0 0/.1), 0 14px 32px -8px oklch(0% 0 0/.3);--ls-bar:#f0f0f0;--ls-chat:#fff;--ls-control:#e6e6e6;--ls-composer:#f3f3f3;--ls-ink:#1a1a1a;--ls-ink-2:#5f5f5f;--ls-ink-3:#8e8e8e}.landing:not([data-dark]) .ls-window{box-shadow:0 0 0 .5px #0000001a,16px 40px 120px -32px #00000029,6px 14px 44px -18px #00000012}.landing:not([data-dark]) .ls-pane-inner:after,.landing:not([data-dark]) .ls-tab-close[data-hover]{background:#00000014}.landing:not([data-dark]) .ls-send{color:#fff;background:#000}.landing:not([data-dark]) .ls-composer{box-shadow:inset 0 0 0 1px #0000000d}.landing:not([data-dark]) .ls-activity{background:#f7f7f7;box-shadow:inset 0 0 0 1px #0000000f}.landing:not([data-dark]) .ls-minis i{background:#0000000f}.landing:not([data-dark]) .ls-minis i[data-on]{box-shadow:inset 0 0 0 1px #0000001f}.landing:not([data-dark]) .ls-minis i[data-on][data-v="1"]{background:#f3f2ef}.landing:not([data-dark]) .ls-minis i[data-on][data-v="2"]{background:#101114}.landing:not([data-dark]) .ls-minis i[data-on][data-v="3"]{background:#fff}.landing:not([data-dark]) .ls-minis i[data-on][data-v="4"]{background:#d9d8d3}.landing:not([data-dark]) .ls-minis i[data-on][data-v="5"]{background:linear-gradient(160deg,#ffe8d6,#f6d6ff)}.landing:not([data-dark]) .ls-minis i[data-on][data-v="6"]{background:#fffbe9}.ls-window,.ls-bar,.ls-canvas,.ls-composer,.ls-activity,.ls-url,.ls-message{transition-property:background-color,color,box-shadow;transition-duration:.6s}.ls .ls-composer-text{scrollbar-width:none;height:36px;overflow-y:auto}.ls .ls-composer{padding-top:10px;padding-bottom:8px}.landing .ls .ls-send{transition:background-color .15s,color .15s,scale .12s ease-out}.landing .ls .ls-send:not([data-on]){background:var(--surface-pressed);color:var(--ls-ink-3)}.ls-pasted{animation:.16s ease-out both ls-pasted;display:block}.ls-placeholder .ls-caret{margin:0 1px 0 0}@keyframes ls-pasted{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.ls-pasted{animation:none}}.ls .ls-thread{flex-direction:column;display:flex}.ls .ls-thread>.ls-message+.ls-answer{margin-top:10px}.ls .ls-thread>.ls-answer+.ls-message{margin-top:18px}.ls .ls-thread>.ss-collapse{flex:none;margin-top:18px}.ls-answer{color:var(--ls-ink)}.ls .ss-stage[data-layout=compact] .ls-thread{justify-content:flex-end;overflow:hidden}@property --level{syntax:"<number>";inherits:true;initial-value:0}.landing[data-dark] .ls .ss-stage{--live:oklch(80% .15 150);--live-soft:oklch(28% .05 150);--danger:oklch(72% .18 25);--danger-soft:oklch(28% .06 25)}.landing:not([data-dark]) .ls .ss-stage{--live:oklch(50% .14 150);--live-soft:oklch(96% .03 150);--danger:oklch(56% .21 27);--danger-soft:oklch(96% .025 25)}.ls-huddle{animation:.26s cubic-bezier(.25,.8,.25,1) both ls-huddle}.ls .huddle-faces .huddle-face:not(:first-child){margin-left:-5px}.ls .huddle-face:nth-child(2){animation:2.6s ease-in-out .1s infinite ls-talk}.ls .huddle-face:nth-child(3){animation:3.4s ease-in-out 1.1s infinite ls-talk}.ls .huddle-face:nth-child(4){animation:3s ease-in-out 2s infinite ls-talk}.ls .huddle-notice .join{transition:scale .12s ease-out}.ls .huddle-notice .join[data-pressed]{scale:.96}.ls .ss-stage[data-layout=compact] .ls-canvas[data-crowded] .top-left{opacity:0;transition:opacity .2s}@keyframes ls-huddle{0%{opacity:0;translate:6px}}@keyframes ls-talk{0%,55%,to{--level:0}8%{--level:1}16%{--level:.35}26%{--level:.9}36%{--level:.25}46%{--level:.7}}@media (prefers-reduced-motion:reduce){.ls-huddle,.ls .huddle-face{animation:none}}.ls .ss-stage[data-layout=wide] .ls-tools{transition:left .32s cubic-bezier(.25,.8,.25,1)}.ls .ss-stage[data-layout=wide] .ls-canvas[data-crowded] .ls-tools{left:271px}.ls .ss-stage[data-layout=compact] .ls-faces:has(+.huddle-notice){display:none}@layer stageshow{.ss-fit{width:100%;margin-inline:auto;position:relative}.ss-stage{--ss-canvas:#f6f5f4;--ss-surface:#fff;--ss-chrome:#fff;--ss-ink-1:#0000000a;--ss-ink-2:#0000000f;--ss-ink-3:#00000014;--ss-fill:#ebebeb;--ss-ink-4:#0000001a;--ss-ink-5:#00000026;--ss-line:#0000000f;--ss-line-faint:#0000000a;--ss-text:#7a7a7d;--ss-text-strong:#262628;--ss-text-faint:#9a9a9d;--ss-icon:#707074;--ss-icon-faint:#c4c4c7;--ss-accent:#3b82f6;--ss-accent-soft:#3b82f61f;--ss-success:#22c55e;--ss-danger:#ef4444;--ss-warning:#f59e0b;--ss-well:#efeeec;--ss-success-soft:#22c55e1f;--ss-success-text:#15803d;--ss-danger-soft:#ef44441a;--ss-danger-text:#b91c1c;--ss-warning-soft:#f59e0b24;--ss-warning-text:#b45309;--ss-accent-2:#8b5cf6;--ss-accent-text:color-mix(in srgb, var(--ss-accent) 82%, #000);--ss-shadow-window:0 0 0 1px #0000000f, 0 4px 16px #00000014;--ss-shadow-float:0 0 0 1px #00000014, 0 4px 16px #0000001f, 0 12px 32px #00000014;--ss-shadow-card:0 1px 2px #0000000a;--ss-shadow-hero:0 0 0 1px #0000000f, 0 30px 60px -12px #32325d40, 0 18px 36px -18px #0000004d;--ss-shadow-lift:0 0 0 1px #0000000a, 0 12px 28px -6px #32325d47, 0 6px 12px -6px #00000029;--ss-raised:#fff;--ss-shadow-satellite:0 0 0 1px #0000000a, 0 14px 32px -8px #32325d3d, 0 4px 10px -4px #0000001a;--ss-shadow-ground:0 0 0 1px #32325d0f, 0 24px 48px -24px #32325d2e;--ss-font:system-ui, -apple-system, sans-serif;--ss-mono:"SF Mono", "SFMono-Regular", ui-monospace, Consolas, monospace;--ss-radius-sm:6px;--ss-radius-md:8px;--ss-radius-lg:10px;--ss-radius-window:12px;--ss-radius-pill:999px;--ss-control:34px;--ss-row:26px;transform-origin:0 0;font-family:var(--ss-font);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;letter-spacing:normal;word-spacing:normal;text-align:start;text-indent:0;text-transform:none;white-space:normal;color:#000;font-size:16px;font-style:normal;font-weight:400;line-height:normal;position:absolute;top:0;left:0}.ss-ground{--ss-orb-1:#c9b8ff;--ss-orb-2:#ffc59a;--ss-orb-3:#a9d8ff;z-index:-1;border-radius:var(--ss-ground-radius,20px);background:radial-gradient(60% 75% at 8% 4%, color-mix(in srgb, var(--ss-orb-1) 85%, transparent), transparent 70%), radial-gradient(55% 70% at 96% 92%, color-mix(in srgb, var(--ss-orb-2) 80%, transparent), transparent 70%), radial-gradient(45% 55% at 78% 8%, color-mix(in srgb, var(--ss-orb-3) 55%, transparent), transparent 70%), var(--ss-canvas);pointer-events:none;position:absolute;inset:0;overflow:hidden}.ss-stage[data-theme=dark] .ss-ground{background:radial-gradient(60% 75% at 8% 4%, color-mix(in srgb, var(--ss-orb-1) 30%, transparent), transparent 70%), radial-gradient(55% 70% at 96% 92%, color-mix(in srgb, var(--ss-orb-2) 24%, transparent), transparent 70%), radial-gradient(45% 55% at 78% 8%, color-mix(in srgb, var(--ss-orb-3) 18%, transparent), transparent 70%), var(--ss-canvas)}.ss-stage[data-theme=dark]{--ss-canvas:#111113;--ss-surface:#1a1a1d;--ss-chrome:#1d1d20;--ss-ink-1:#ffffff0d;--ss-ink-2:#ffffff12;--ss-ink-3:#ffffff1a;--ss-fill:#313134;--ss-ink-4:#ffffff21;--ss-ink-5:#fff3;--ss-line:#ffffff14;--ss-line-faint:#ffffff0d;--ss-text:#9d9da1;--ss-text-strong:#ececee;--ss-text-faint:#6c6c70;--ss-icon:#9a9aa0;--ss-icon-faint:#4a4a50;--ss-accent-soft:#3b82f633;--ss-accent-text:color-mix(in srgb, var(--ss-accent) 70%, #fff);--ss-well:#0a0a0b;--ss-success-soft:#22c55e29;--ss-success-text:#4ade80;--ss-danger-soft:#ef444429;--ss-danger-text:#f87171;--ss-warning-soft:#f59e0b2e;--ss-warning-text:#fbbf24;--ss-shadow-lift:0 0 0 1px #ffffff1a, 0 12px 28px -6px #0009;--ss-shadow-window:0 0 0 1px #ffffff14, 0 4px 16px #0006;--ss-shadow-float:0 0 0 1px #ffffff1a, 0 4px 16px #0006, 0 12px 32px #0000004d;--ss-shadow-card:0 0 0 1px #ffffff0d;--ss-shadow-hero:0 0 0 1px #ffffff14, 0 30px 60px -12px #0009;--ss-shadow-satellite:0 0 0 1px #ffffff1a, 0 14px 32px -8px #000000b3, 0 4px 10px -4px #00000080;--ss-shadow-ground:0 0 0 1px #ffffff1a, 0 24px 48px -24px #0009;--ss-raised:#26262a}.ss-stage[data-theme=blueprint]{--ss-canvas:transparent;--ss-surface:#1857bd;--ss-raised:#1b5cc4;--ss-chrome:transparent;--ss-ink-1:#d6e8ff1f;--ss-ink-2:#d6e8ff29;--ss-ink-3:#d6e8ff38;--ss-fill:#4277cc;--ss-ink-4:#d6e8ff4d;--ss-ink-5:#d6e8ff73;--ss-line:#d6e8ff59;--ss-line-faint:#d6e8ff33;--ss-text:#b3c9ec;--ss-text-strong:#f0f6ff;--ss-text-faint:#7fa1da;--ss-icon:#c9dcf7;--ss-icon-faint:#6f97d6;--ss-accent:#fff;--ss-accent-soft:#ffffff26;--ss-success:#e6f0ff;--ss-danger:#e6f0ff;--ss-warning:#e6f0ff;--ss-success-soft:#ffffff24;--ss-danger-soft:#ffffff24;--ss-warning-soft:#ffffff24;--ss-success-text:#fff;--ss-danger-text:#fff;--ss-warning-text:#fff;--ss-well:#1450b4;--ss-shadow-window:0 0 0 1px #d6e8ff8c;--ss-shadow-float:0 0 0 1px #d6e8ffb3;--ss-shadow-card:0 0 0 1px #d6e8ff59;--ss-shadow-hero:0 0 0 1px #d6e8ff8c;--ss-shadow-satellite:0 0 0 1px #d6e8ffcc;--ss-shadow-ground:0 0 0 1px #d6e8ffb3;background-color:var(--ss-well);background-image:linear-gradient(#d6e8ff14 1px,#0000 1px),linear-gradient(90deg,#d6e8ff14 1px,#0000 1px);background-size:16px 16px;background-position:var(--ss-grid-x,0) var(--ss-grid-y,0)}.ss-stage[data-theme=glass]{--ss-canvas:#ffffff80;--ss-surface:#ffffff9e;--ss-chrome:#ffffff61;--ss-raised:#ffffffbd;--ss-line:#ffffffa6;--ss-line-faint:#ffffff73;--ss-well:#ebe9f5;--ss-shadow-window:inset 0 0 0 1px #ffffffbf, 0 20px 50px -14px #28285a47;--ss-shadow-hero:inset 0 0 0 1px #ffffffbf, 0 30px 60px -16px #28285a4d;--ss-shadow-satellite:inset 0 0 0 1px #ffffffd9, 0 16px 36px -10px #28285a52;--ss-shadow-float:inset 0 0 0 1px #ffffffd9, 0 12px 32px -8px #28285a47;--ss-shadow-ground:inset 0 0 0 1px #ffffffd9, 0 24px 48px -24px #28285a3d;--ss-shadow-card:inset 0 0 0 1px #fff9;background:radial-gradient(55% 65% at 12% 18%, color-mix(in srgb, var(--ss-accent) 42%, transparent), transparent 70%), radial-gradient(50% 60% at 88% 28%, color-mix(in srgb, var(--ss-accent-2) 38%, transparent), transparent 70%), radial-gradient(60% 55% at 58% 100%, #ffa8786b, transparent 70%), var(--ss-well)}.ss-stage[data-theme=glass] .ss-window,.ss-stage[data-theme=glass] .ss-popover,.ss-stage[data-theme=glass] .ss-glass{-webkit-backdrop-filter:blur(24px)saturate(1.6)}.ss-stage[data-greys=cool]:not([data-theme=dark],[data-theme=blueprint],[data-theme=glass]){--ss-canvas:#f4f5f8;--ss-well:#eceef2}.ss-stage[data-palette=mono]{--ss-accent:#1a1a1a;--ss-accent-soft:#0000000f;--ss-success:#1a1a1a;--ss-danger:#1a1a1a;--ss-warning:#1a1a1a;--ss-accent-2:#1a1a1a;--ss-success-text:#1a1a1a;--ss-danger-text:#1a1a1a;--ss-success-soft:#0000000f;--ss-danger-soft:#0000000a}.ss-stage[data-palette=mono][data-theme=dark]{--ss-accent:#f2f2f2;--ss-accent-soft:#ffffff1a;--ss-success:#f2f2f2;--ss-danger:#f2f2f2;--ss-warning:#f2f2f2;--ss-accent-2:#f2f2f2;--ss-success-text:#f2f2f2;--ss-danger-text:#f2f2f2;--ss-success-soft:#ffffff1a;--ss-danger-soft:#ffffff0f}.ss-stage[data-palette=mono] img,.ss-stage[data-palette=mono] .ss-keep-mono{filter:grayscale()}.ss-fade-b{-webkit-mask-image:linear-gradient(to bottom, #000 calc(100% - var(--ss-fade,64px)), transparent);mask-image:linear-gradient(to bottom, #000 calc(100% - var(--ss-fade,64px)), transparent)}.ss-fade-r{-webkit-mask-image:linear-gradient(to right, #000 calc(100% - var(--ss-fade,64px)), transparent);mask-image:linear-gradient(to right, #000 calc(100% - var(--ss-fade,64px)), transparent)}.ss-fade-br{-webkit-mask-image:linear-gradient(to bottom, #000 calc(100% - var(--ss-fade,64px)), transparent), linear-gradient(to right, #000 calc(100% - var(--ss-fade,64px)), transparent);mask-image:linear-gradient(to bottom, #000 calc(100% - var(--ss-fade,64px)), transparent), linear-gradient(to right, #000 calc(100% - var(--ss-fade,64px)), transparent);-webkit-mask-composite:source-in;mask-composite:intersect}.ss-recede{transition:opacity .3s}.ss-recede[data-receded=true]{opacity:.4}.ss-stage [data-instant],.ss-stage[data-instant] *,.ss-stage [data-instant] *,.ss-stage[data-instant] :before,.ss-stage[data-instant] :after{transition:none!important}@keyframes ss-spin{to{transform:rotate(1turn)}}@keyframes ss-fade-in{0%{opacity:0;filter:blur(2px);transform:translateY(3px)}}.ss-stage[data-still] *,.ss-stage[data-still] :before,.ss-stage[data-still] :after{transition:none!important;animation:none!important}.ss-stage[data-offscreen],.ss-stage[data-offscreen] *,.ss-stage[data-offscreen] :before,.ss-stage[data-offscreen] :after{transition:none!important;animation-play-state:paused!important}.ss-stage[data-placing] *,.ss-stage[data-placing] :before,.ss-stage[data-placing] :after{transition:none!important}.ss-stage *,.ss-stage :before,.ss-stage :after{box-sizing:border-box}.ss-stage[data-hit] *{pointer-events:auto!important}.ss-keys{z-index:99;opacity:0;pointer-events:none;gap:4px;transition:opacity .16s,transform .2s cubic-bezier(.22,1,.36,1);display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%,6px)scale(.96)}.ss-keys[data-show=true]{opacity:1;transform:translate(-50%)scale(1)}.ss-keys[data-at=top]{top:16px;bottom:auto}.ss-keys[data-at=bottom-left],.ss-keys[data-at=bottom-right]{left:auto;transform:translateY(6px)scale(.96)}.ss-keys[data-at=bottom-left]{left:16px}.ss-keys[data-at=bottom-right]{right:16px}.ss-keys[data-at=bottom-left][data-show=true],.ss-keys[data-at=bottom-right][data-show=true]{transform:none}.ss-key{color:#fff;min-width:28px;height:28px;font:500 13px/1 var(--ss-font);background:#18181be0;border-radius:7px;place-items:center;padding:0 8px;transition:transform 80ms ease-out,box-shadow 80ms ease-out;display:grid;box-shadow:inset 0 -2px #0006,0 4px 12px #0000002e}.ss-key[data-down=true]{transform:translateY(1px)scale(.94);box-shadow:inset 0 -1px #0006,0 2px 6px #0000002e}.ss-cursor{z-index:100;pointer-events:none;will-change:transform;transition:opacity .25s;position:absolute;top:0;left:0}.ss-cursor[data-idle]{opacity:0;transition-duration:.6s}.ss-cursor__press{transform-origin:0 0;transition:transform .26s cubic-bezier(.22,1,.36,1);display:grid}.ss-cursor[data-pressed=true] .ss-cursor__press{transition:transform 80ms ease-out;transform:scale(.9)}.ss-cursor__glyph{opacity:0;grid-area:1/1;transition:transform .2s,opacity .2s;transform:scale(0)}.ss-cursor__glyph[data-active=true]{transform:scale(var(--ss-cursor-size,1));opacity:1}.ss-cursor__glyph[data-glyph^=resize]{transform:scale(calc(var(--ss-cursor-size,1) * .5))}.ss-cursor[data-kind^=resize] .ss-cursor__glyph:not([data-active=true]){transform:scale(calc(var(--ss-cursor-size,1) * .6))}.ss-cursor[data-kind^=resize] .ss-cursor__glyph,.ss-cursor__glyph[data-glyph^=resize]{transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .2s}.ss-cursor__glyph[data-glyph^=resize][data-active=true]{transform:scale(var(--ss-cursor-size,1))}.ss-cursor[data-kind^=resize] .ss-cursor__glyph:not([data-active=true]),.ss-cursor:not([data-kind^=resize]) .ss-cursor__glyph[data-glyph^=resize]{transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .1s}.ss-cursor:is([data-kind=open],[data-kind=grab]) .ss-cursor__glyph:is([data-glyph=open],[data-glyph=grab]){transform:scale(var(--ss-cursor-size,1));transition:opacity 80ms linear}.ss-cursor[data-style=large]{--ss-cursor-size:1.5}.ss-cursor[data-style=large] .ss-cursor__glyph[data-glyph=ibeam]{--ss-cursor-size:1.15}.ss-cursor__dot{-webkit-backdrop-filter:blur(5px)saturate(1.8)brightness(1.04);backdrop-filter:blur(5px)saturate(1.8)brightness(1.04);background:#76768042;border-radius:50%;width:22px;height:22px;margin:-11px 0 0 -11px;transition:background .15s,width .2s cubic-bezier(.22,1,.36,1),height .2s cubic-bezier(.22,1,.36,1),margin .2s cubic-bezier(.22,1,.36,1),border-radius .2s;display:block;box-shadow:inset 0 1px 1px #fff6,inset 0 -1px 1px #0000000d,0 2px 10px #0000001a}.ss-cursor[data-style=circle][data-kind=ibeam] .ss-cursor__dot{background:#3c3c438c;border-radius:2px;width:4px;height:20px;margin:-10px 0 0 -2px}.ss-stage[data-theme=dark] .ss-cursor__dot{background:#fff3;box-shadow:inset 0 1px 1px #ffffff4d,0 2px 10px #0000004d}.ss-cursor[data-style=circle][data-pressed=true] .ss-cursor__press{transform:scale(.8)}.ss-cursor[data-style=circle][data-pressed=true] .ss-cursor__dot{-webkit-backdrop-filter:none;backdrop-filter:none;background:#76768038}.ss-stage[data-theme=dark] .ss-cursor[data-style=circle][data-pressed=true] .ss-cursor__dot{background:#ffffff2e}.ss-cursor[data-style=circle][data-pressed=true] .ss-cursor__dot,.ss-cursor[data-style=circle][data-kind=grab] .ss-cursor__dot{background:#76768066}.ss-cursor[data-style=touch] .ss-cursor__dot{-webkit-backdrop-filter:none;backdrop-filter:none;opacity:0;background:#76768024;width:34px;height:34px;margin:-17px 0 0 -17px;transition:opacity .4s,transform .45s cubic-bezier(.22,1,.36,1);transform:scale(.7)}.ss-cursor__streak{transform-origin:100%;opacity:0;pointer-events:none;background:linear-gradient(90deg,#76768000,#76768029);border-radius:13px;width:0;height:26px;transition:opacity .16s;position:absolute;top:-13px;left:0}.ss-cursor[data-swiping] .ss-cursor__streak{opacity:1;transition:none}.ss-cursor[data-style=touch][data-touching] .ss-cursor__dot{opacity:1;transition:opacity .14s,transform .16s cubic-bezier(.22,1,.36,1);transform:scale(1)}.ss-cursor[data-style=touch][data-pressed=true] .ss-cursor__dot,.ss-cursor[data-style=touch][data-swiping] .ss-cursor__dot{background:#76768038;transition:background 80ms,transform .1s ease-out;transform:scale(.82)}.ss-cursor__glyph svg{filter:drop-shadow(0 1px 2px #0000004d);display:block}.ss-cursor__arrow path{fill:var(--ss-cursor-ink,#111);stroke:var(--ss-cursor-ink,#111);stroke-width:2.4px;stroke-linejoin:round}.ss-cursor__arrow{filter:drop-shadow(0 1px 1.5px #0000002e);display:block}.ss-stage[data-theme=dark] .ss-cursor__arrow,.ss-stage[data-theme=blueprint] .ss-cursor__arrow{--ss-cursor-ink:#fff}.ss-stage[data-theme=dark] .ss-cursor,.ss-stage[data-theme=blueprint] .ss-cursor{--ss-cursor-line:#fff;--ss-cursor-edge:#000000bf}.ss-ripple{z-index:99;border:1.5px solid var(--ss-accent);background:color-mix(in srgb, var(--ss-accent) 10%, transparent);pointer-events:none;border-radius:50%;width:36px;height:36px;margin:-18px 0 0 -18px;animation:.55s cubic-bezier(.25,.8,.25,1) forwards ss-ripple;position:absolute}@keyframes ss-ripple{0%{opacity:1;transform:scale(.2)}to{opacity:0;transform:scale(1)}}.ss-stage[data-palette=mono] .ss-ripple{border-color:var(--ss-text-strong);background:0 0}.ss-stage[data-hit] :is(.ss-cursor,.ss-cursor *){pointer-events:none!important}.ss-stage[data-theme=blueprint] .ss-window__dot{box-shadow:inset 0 0 0 1px var(--ss-line);background:0 0}.ss-stage[data-theme=blueprint] .ss-window__url{box-shadow:inset 0 0 0 1px var(--ss-line-faint);background:0 0}.ss-stage[data-palette=mono] .ss-window__dot{background:var(--ss-ink-5);box-shadow:none}:where(.ss-window){--ss-lights-y:19px;--ss-dot:9px;--ss-side-inset:0px;position:relative}.ss-window{background:var(--ss-canvas);border-radius:var(--ss-radius-window);box-shadow:var(--ss-shadow-window);flex-direction:column;display:flex;overflow:hidden}.ss-window__bar{height:38px;padding:0 calc(var(--ss-lights-y) - var(--ss-dot) / 2);background:var(--ss-chrome);border-bottom:1px solid var(--ss-line);flex-shrink:0;align-items:center;gap:6px;display:flex}.ss-window__lights{flex-shrink:0;gap:6px;display:flex}.ss-window__dot{width:var(--ss-dot);height:var(--ss-dot);border-radius:50%;box-shadow:inset 0 0 0 .5px #0000001f}.ss-window__dot:first-child{background:#ff5f57}.ss-window__dot:nth-child(2){background:#febc2e}.ss-window__dot:nth-child(3){background:#28c840}.ss-window__url{background:var(--ss-ink-1);min-width:0;color:var(--ss-text-faint);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;flex:1;margin-left:8px;padding:4px 10px;font-size:10.5px;line-height:1.4;overflow:hidden}.ss-window[data-url-shape=pill] .ss-window__url{border-radius:999px;padding-inline:12px}.ss-window__title{text-align:center;color:var(--ss-text-strong);flex:1;margin-right:36px;font-size:13px;font-weight:600}.ss-window__body{flex:1;min-height:0;position:relative}.ss-window__spacer{flex:1}.ss-window[data-lights=grey] .ss-window__dot{box-shadow:none;background:#bac8da80}.ss-window[data-lights=white] .ss-window__dot{box-shadow:none;background:#ffffff80}.ss-window[data-chrome=glass]{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f8fafd73;border-radius:12px;box-shadow:0 0 0 1px #e5edf580,0 15px 35px #17171714}.ss-window[data-chrome=glass]>.ss-window__bar{background:0 0;border:0;grid-template-columns:1fr minmax(0,262px) 1fr;gap:12px;height:35px;padding:0 20px;display:grid}.ss-window[data-chrome=glass] .ss-window__lights{gap:4px}.ss-window[data-chrome=glass] .ss-window__dot{width:8px;height:8px}.ss-window[data-chrome=glass] .ss-window__url{color:#50617a;background:#ffffff61;border-radius:999px;grid-column:2;justify-content:center;align-items:center;gap:4px;height:20px;margin:0;padding:0 8px;font-size:10px;display:flex;box-shadow:inset 0 0 0 1px #e5edf580}.ss-window__lock{color:#667691;flex-shrink:0}.ss-window__url-text{text-overflow:ellipsis;overflow:hidden}.ss-window[data-chrome=glass] .ss-window__end{grid-column:3;justify-content:flex-end;gap:6px;display:flex}.ss-window[data-chrome=glass]>.ss-window__body{background:#fff;border-radius:6px;margin:0 6px 6px;overflow:hidden;box-shadow:0 3px 6px #1717170f}.ss-window[data-chrome=card]{background:#fff;border-radius:8px;box-shadow:0 50px 100px -20px #32325d40,0 30px 60px -30px #0000004d}.ss-window[data-chrome=card]>.ss-window__bar{background:0 0;border:0;gap:14px;height:44px;padding:0 16px}.ss-window[data-chrome=card]:not([data-lights=color]) .ss-window__dot{box-shadow:none;background:#ecf2f7}.ss-window[data-chrome=card] .ss-window__url{height:24px;box-shadow:none;color:#425466;background:#ecf2f7;border-radius:4px;flex:1;margin:0;padding:0 10px;font-size:12px;font-weight:300;line-height:24px}.ss-window[data-chrome=card] .ss-window__end:empty{display:none}.ss-window[data-chrome=card]>.ss-window__body{background:#fff}.ss-window[data-chrome=hairline]{background:#fff;border-radius:8px;box-shadow:0 0 0 1px #0000000f,0 12px 28px -12px #32325d33}.ss-window[data-chrome=hairline]>.ss-window__bar{background:0 0;border:0;border-bottom:1px solid #0000000f;grid-template-columns:1fr auto 1fr;height:20px;padding:0 8px;display:grid}.ss-window[data-chrome=hairline] .ss-window__lights{gap:3px}.ss-window[data-chrome=hairline] .ss-window__dot{width:5px;height:5px}.ss-window[data-chrome=hairline]:not([data-lights=color]) .ss-window__dot{box-shadow:none;background:#e3e8ee}.ss-window[data-chrome=hairline] .ss-window__url{height:auto;box-shadow:none;color:#8792a2;background:0 0;grid-column:2;margin:0;padding:0;font-size:9px}.ss-window[data-chrome=hairline] .ss-window__end{grid-column:3;justify-self:end}.ss-window[data-chrome=terminal]{--ss-term-bg:#17171a;background:var(--ss-term-bg);box-shadow:inset 0 0 0 1px #ffffff12, var(--ss-shadow-hero,var(--ss-shadow-window))}.ss-window[data-chrome=terminal]>.ss-window__bar{background:0 0;border:0;position:relative}.ss-window[data-chrome=terminal][data-lights=grey] .ss-window__dot{box-shadow:none;background:#ffffff29}.ss-term__title{color:#ffffff6b;white-space:nowrap;font-size:11px;font-weight:500;position:absolute;left:50%;translate:-50%}.ss-term{color:#9d9da6;font:11.5px/1.65 var(--ss-mono);font-variant-ligatures:none;flex-direction:column;gap:3px;padding:4px 16px 16px;display:flex;overflow:hidden}.ss-term>*+.ss-term__prompt{margin-top:8px}.ss-term__line,.ss-term>div,.ss-term>p{white-space:pre;margin:0}.ss-term__path{color:var(--ss-term-path,#6f8ccf)}.ss-term__sigil{color:var(--ss-term-sigil,#6ee7a8);margin:0 7px}.ss-term__cmd{color:#f1f1f3}.ss-term .ok{color:var(--ss-term-ok,#6ee7a8)}.ss-term .err{color:var(--ss-term-err,#f87171)}.ss-term .dim{color:var(--ss-term-dim,#63636b)}.ss-term__caret{vertical-align:-.22em;background:#e8e8ec;width:.6em;height:1.2em;margin-left:1px;animation:1.06s step-end infinite ss-term-blink;display:inline-block}.ss-term__caret[data-still]{animation:none}@keyframes ss-term-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.ss-term__caret{animation:none}}.ss-window__title[data-toolbar]{text-align:left;margin:0 0 0 14px}.ss-window__nav{color:var(--ss-text-faint);flex-shrink:0;gap:6px;margin-left:10px;display:flex}.ss-window__nav+.ss-window__url{margin-left:4px}.ss-window__tabs{height:38px;padding:0 calc(var(--ss-lights-y) - var(--ss-dot) / 2);background:var(--ss-canvas);flex-shrink:0;align-items:flex-end;gap:2px;display:flex}.ss-window__tabs .ss-window__lights{align-self:center;margin-right:14px}.ss-window__tab{width:140px;min-width:0;height:30px;color:var(--ss-text-faint);border-radius:8px 8px 0 0;align-items:center;gap:7px;padding:0 12px;font-size:11px;display:flex}.ss-window__tab[data-active]{background:var(--ss-chrome);color:var(--ss-text-strong)}.ss-window__tab-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ss-window__favicon{background:var(--ss-ink-4);border-radius:3px;flex-shrink:0;width:10px;height:10px}.ss-window__tab[data-active] .ss-window__favicon{background:var(--ss-accent)}[data-kind=tabs]>.ss-window__bar .ss-window__url,[data-kind=tabs]>.ss-window__bar .ss-window__nav{margin-left:0}.ss-window[data-kind=sidebar]{flex-direction:row}.ss-window__side{background:var(--ss-canvas);border-right:1px solid var(--ss-line);flex-direction:column;flex-shrink:0;display:flex}.ss-window__side-top{height:calc((var(--ss-lights-y) - var(--ss-side-inset)) * 2);padding:0 calc(var(--ss-lights-y) - var(--ss-side-inset) - var(--ss-dot) / 2);flex-shrink:0;align-items:center;display:flex}.ss-window__main{background:var(--ss-surface);flex-direction:column;flex:1;min-width:0;display:flex}.ss-window__main>.ss-window__bar{padding:0 16px}.ss-window__heading{color:var(--ss-text-strong);font-size:13px;font-weight:600}.ss-bar{flex-shrink:0;display:block}.ss-bar[data-shrink]{flex-shrink:1;min-width:0;max-width:100%}.ss-window[data-lights-size=large]{--ss-dot:12px}.ss-window[data-lights-size=large] .ss-window__lights{gap:8px}.ss-window[data-bar=tall]{--ss-lights-y:26px}.ss-window[data-bar=tall]>.ss-window__bar,.ss-window[data-bar=tall] .ss-window__main>.ss-window__bar{background:0 0;border-bottom:0;align-items:flex-start;height:64px;padding-top:10px}.ss-window[data-bar=tall]>.ss-window__bar>.ss-window__lights{margin-top:calc(16px - var(--ss-dot) / 2)}.ss-window[data-bar=tall] .ss-window__url{margin-top:5px}.ss-window[data-bar=tall] .ss-window__title,.ss-window[data-bar=tall] .ss-window__heading{line-height:32px}.ss-window[data-side=floating]{--ss-side-inset:8px;background:var(--ss-surface);border-radius:24px}.ss-window[data-side=floating]>.ss-window__side{z-index:1;margin:var(--ss-side-inset) 0 var(--ss-side-inset) var(--ss-side-inset);border-right:0;border-radius:16px;position:relative;box-shadow:0 0 0 .5px #00000012,inset 0 .5px #fff,0 3px 14px #14234612}.ss-stage[data-theme=dark] .ss-window[data-side=floating]>.ss-window__side{background:var(--ss-raised);box-shadow:0 0 0 1px #ffffff14,0 3px 14px #0000004d}.ss-text{white-space:nowrap}.ss-text[data-wrap]{white-space:normal}:where(.ss-phone){position:relative}.ss-phone{box-shadow:0 calc(var(--ps) * 40) calc(var(--ps) * 80) calc(var(--ps) * -16) #32325d40, 0 calc(var(--ps) * 24) calc(var(--ps) * 48) calc(var(--ps) * -24) #0000004d;flex-shrink:0}.ss-phone__glass{height:100%}.ss-phone__window{isolation:isolate;position:relative;overflow:hidden}.ss-phone:is([data-frame=pro],[data-frame=silver],[data-frame=bezel],[data-frame=clay],[data-frame=outline],[data-frame=bare]){--ss-phone-glass:#0b0b0c;--ss-phone-rim:#2c2c2d;--ss-phone-seam:#e0dfdc;--ss-phone-line:var(--ss-text-faint,#9a9a9d);background:0 0}.ss-phone__bands{pointer-events:none;position:absolute;inset:0;overflow:visible}.ss-phone:is([data-frame=pro],[data-frame=silver],[data-frame=bezel],[data-frame=clay],[data-frame=outline]) .ss-phone__glass{position:relative}.ss-phone[data-frame=pro]{--ss-phone-band-1:#e3e3e6;--ss-phone-band-2:#9a9ba0;--ss-phone-band-3:#cfd0d4;--ss-phone-band-4:#85868b;--ss-phone-band-5:#c9cacd}.ss-stage[data-theme=dark] .ss-phone[data-frame=pro],.ss-stage[data-theme=glass] .ss-phone[data-frame=pro][data-dark]{--ss-phone-band-1:#5b5c61;--ss-phone-band-2:#2b2c2f;--ss-phone-band-3:#48494d;--ss-phone-band-4:#232427;--ss-phone-band-5:#404145}.ss-phone[data-frame=silver]{--ss-phone-band-1:#f4f4f6;--ss-phone-band-2:#c9cacf;--ss-phone-band-3:#eeeef1;--ss-phone-band-4:#b9babf;--ss-phone-band-5:#e6e6ea}.ss-phone[data-frame=bezel]{--ss-phone-glass:#111113}.ss-phone[data-frame=clay]{--ss-phone-clay-top:color-mix(in srgb, var(--ss-phone-clay,#ecebe8), #fff 45%);--ss-phone-clay-bottom:color-mix(in srgb, var(--ss-phone-clay,#ecebe8), #000 6%);box-shadow:0 calc(var(--ps) * 30) calc(var(--ps) * 60) calc(var(--ps) * -12) #32325d33, 0 calc(var(--ps) * 16) calc(var(--ps) * 32) calc(var(--ps) * -16) #00000029}.ss-stage[data-theme=dark] .ss-phone[data-frame=clay]{--ss-phone-clay-top:color-mix(in srgb, var(--ss-phone-clay,#2a2a2e), #fff 6%);--ss-phone-clay-bottom:var(--ss-phone-clay,#2a2a2e);--ss-phone-seam:#333338}.ss-phone[data-frame=outline]{box-shadow:none}.ss-stage[data-theme=blueprint] .ss-phone[data-frame=outline]{--ss-phone-line:var(--ss-line)}.ss-phone:not([data-frame=android],[data-frame=soft]) .ss-phone__status{height:62px;padding:0}.ss-phone:not([data-frame=android],[data-frame=soft]) .ss-phone__time{text-align:center;width:138.5px;line-height:22px;position:absolute;top:21.5px;left:0}.ss-phone:not([data-frame=android],[data-frame=soft]) .ss-phone__glyphs{align-items:flex-start;gap:8px;position:absolute;top:25.33px;left:285.25px}.ss-phone:not([data-frame=android],[data-frame=soft]) .ss-phone__signal{margin-top:1px}.ss-phone:not([data-frame=android],[data-frame=soft]) .ss-phone__battery{margin-top:.33px}.ss-phone[data-frame=photo]{background:0 0;position:relative}.ss-phone__photo{z-index:4;background:var(--ss-phone-photo-light,none) center / 100% 100% no-repeat;pointer-events:none;position:absolute}.ss-stage[data-theme=dark] .ss-phone__photo,.ss-phone[data-dark] .ss-phone__photo{background-image:var(--ss-phone-photo-dark,var(--ss-phone-photo-light,none))}.ss-phone[data-frame=android]{background:linear-gradient(150deg,#3a3b3f,#1d1e21 40%,#2f3034 70%,#1a1b1e)}.ss-phone[data-frame=android] .ss-phone__glass{background:#050505}.ss-phone[data-frame=android] .ss-phone__island{border-radius:50%;width:24px;height:24px;top:14px}.ss-phone[data-frame=android] .ss-phone__status{height:48px;padding:0 26px}.ss-phone[data-frame=android] .ss-phone__time{font-family:system-ui,sans-serif;font-size:15px;font-weight:500}.ss-phone[data-frame=android] .ss-phone__content[data-status]{padding-top:48px}.ss-phone[data-frame=android] .ss-phone__home{width:108px;height:4px}.ss-phone[data-frame=soft]{box-shadow:0 0 0 calc(var(--ps) * 1.5) #0a25400d, 0 calc(var(--ps) * 30) calc(var(--ps) * 60) calc(var(--ps) * -12) #32325d2e, 0 calc(var(--ps) * 18) calc(var(--ps) * 36) calc(var(--ps) * -18) #0000001f}.ss-phone[data-frame=soft] .ss-phone__glass{box-shadow:inset 0 calc(var(--ps) * -2.9) calc(var(--ps) * 7.2) #0a254038;background:#f6f9fc}.ss-stage[data-theme=dark] .ss-phone[data-frame=soft] .ss-phone__glass{box-shadow:inset 0 calc(var(--ps) * -2.9) calc(var(--ps) * 7.2) #00000073;background:#1c2433}.ss-phone__screen{--pt:1px;color:#000;letter-spacing:-.015em;transform-origin:0 0;-webkit-font-smoothing:antialiased;background:#fff;flex-direction:column;font-family:-apple-system,system-ui,sans-serif;font-size:15px;display:flex;position:absolute;top:0;left:0;overflow:hidden}.ss-phone[data-dark] .ss-phone__screen{color:#fff;background:#000}.ss-phone__status{z-index:2;will-change:transform;justify-content:space-between;align-items:center;height:54px;padding:0 34px 0 52px;transition:color .3s;display:flex;position:absolute;top:0;left:0;right:0}.ss-phone__time{font-variation-settings:"opsz" 17;letter-spacing:0;font-family:SF Pro Text,-apple-system,system-ui,sans-serif;font-size:17.67px;font-weight:590}.ss-phone__island{top:var(--ss-island-top,14px);z-index:3;width:var(--ss-island-w,95px);background:#000;border-radius:18.5px;height:37px;position:absolute;left:50%;transform:translate(-50%)}.ss-phone__glyphs{align-items:center;gap:8px;display:flex}.ss-phone__glyph{display:block}.ss-phone__content{flex:1;min-height:0;position:relative}.ss-phone__content[data-status]{padding-top:62px}.ss-phone__content:not([data-status]){padding-top:44px}.ss-phone[data-frame=bare] .ss-phone__content{padding-left:8px;padding-right:8px}.ss-phone__home{z-index:2;will-change:transform;background:currentColor;border-radius:2.5px;width:144px;height:5px;transition:color .3s;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.ss-lock{color:#fff;text-align:center;position:absolute;inset:0}.ss-lock__date{letter-spacing:-.01em;opacity:.85;margin-top:66px;font-size:22px;font-weight:600}.ss-lock__clock{letter-spacing:-.035em;font-variant-numeric:tabular-nums;opacity:.92;margin-top:-4px;font-size:112px;font-weight:700;line-height:1}.ss-lock__stack{text-align:left;flex-direction:column;gap:8px;display:flex;position:absolute;bottom:118px;left:0;right:0}.ss-lock__stack[data-at=top]{top:290px;bottom:auto}.ss-lock__controls{justify-content:space-between;display:flex;position:absolute;bottom:48px;left:46px;right:46px}.ss-lock__control{-webkit-backdrop-filter:blur(24px)saturate(1.3);backdrop-filter:blur(24px)saturate(1.3);color:#fff;background:#0a0c1842;border-radius:50%;place-items:center;width:50px;height:50px;display:grid}.ss-notification{-webkit-backdrop-filter:blur(30px)saturate(1.25);backdrop-filter:blur(30px)saturate(1.25);color:#000;text-align:left;background:#fcfcfdc2;border-radius:23px;align-items:center;gap:13px;margin:0 18px;padding:14px 17px 14px 14px;display:flex;box-shadow:0 4px 24px #0000000f}.ss-notification[data-banner]{z-index:2;animation:.52s cubic-bezier(.2,.9,.25,1) both ss-banner-in;position:absolute;top:56px;left:0;right:0}@keyframes ss-banner-in{0%{transform:translateY(-110px)}}.ss-notification__icon{background:var(--ss-accent);color:#fff;border-radius:9px;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid;overflow:hidden}.ss-notification__icon:has(>img){background:0 0}.ss-notification__icon>img{width:100%;height:100%;display:block}.ss-notification__text{letter-spacing:-.016em;flex-direction:column;flex:1;min-width:0;font-size:15px;line-height:18px;display:flex}.ss-notification__head{align-items:baseline;gap:8px;display:flex}.ss-notification__title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:600;overflow:hidden}.ss-notification__time{letter-spacing:-.005em;color:#3c3c4399;flex-shrink:0;font-size:12px}.ss-notification__body{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ss-lock[data-size=satellite] .ss-lock__stack{top:232px;bottom:auto}.ss-lock[data-size=satellite][data-clock=off] .ss-lock__stack{top:74px}.ss-notification{will-change:transform}.ss-phone:not([data-dark]) .ss-notification{background:#ffffffeb;box-shadow:0 0 0 .5px #00000014,0 8px 24px #0000001f}.ss-phone__time-bar{opacity:.5;background:currentColor;border-radius:4px;width:30px;height:7px;display:inline-block}.ss-kb{--ss-kb-sheet:#e3e4e9;--ss-kb-key:#fff;--ss-kb-down:#c4c6cd;--ss-kb-ink:#000;--ss-kb-faint:#3c3c43;background:color-mix(in srgb, var(--ss-kb-sheet) 94%, transparent);color:var(--ss-kb-ink);-webkit-user-select:none;user-select:none;border-radius:28px 28px 52px 52px;flex:none;margin:0 3px 4px;padding:0 3px;font-family:-apple-system,SF Pro Text,system-ui,sans-serif;position:relative;box-shadow:inset 0 .5px #ffffffb3,0 -.5px #0000000f}.ss-kb[data-dark]{--ss-kb-sheet:#2a2a2c;--ss-kb-key:#4a4a4c;--ss-kb-down:#6b6b6e;--ss-kb-ink:#fff;--ss-kb-faint:#ebebf5;box-shadow:inset 0 .5px #ffffff1a}.ss-kb__suggest{letter-spacing:-.01em;text-align:center;grid-template-columns:repeat(3,1fr);align-items:center;height:50px;font-size:17px;display:grid}.ss-kb__suggest span+span{border-left:1px solid color-mix(in srgb, var(--ss-kb-faint) 22%, transparent)}.ss-kb__row{--k:calc((100% - 54px) / 10);justify-content:center;gap:6px;height:42.5px;margin-bottom:11px;display:flex}.ss-kb__key{width:var(--k);background:var(--ss-kb-key);border-radius:8.5px;flex:none;place-items:center;font-size:23px;line-height:1;transition:background-color .12s;display:grid;position:relative}.ss-kb[data-dark] .ss-kb__key{font-weight:400}.ss-kb__key[data-down]{background:var(--ss-kb-down);transition:none}.ss-kb__row:not(.ss-kb__row--bottom) .ss-kb__key:not(.ss-kb__key--wide)[data-down]{background:var(--ss-kb-key)}.ss-kb__key--wide{width:calc(var(--k) * 1.36)}.ss-kb__row[data-row="2"]>.ss-kb__key--wide:first-child{margin-right:7.2px}.ss-kb__row[data-row="2"]>.ss-kb__key--wide:last-child{margin-left:7.2px}.ss-kb__key--mode{width:calc(var(--k) * 2.78);font-size:17px}.ss-kb__key--space{flex:1;width:auto}.ss-kb__callout{background:var(--ss-kb-key);pointer-events:none;z-index:2;border-radius:12px;place-items:center;width:145%;height:54px;padding-bottom:6px;font-size:34px;display:grid;position:absolute;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 1px 6px #00000029}.ss-kb__callout:after{content:"";background:var(--ss-kb-key);width:69%;height:14px;margin-top:-4px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.ss-kb__row:first-of-type .ss-kb__key:first-child .ss-kb__callout,.ss-kb__row[data-row="0"] .ss-kb__key:first-child .ss-kb__callout,.ss-kb__row[data-row="0"] .ss-kb__key:first-child .ss-kb__callout:after{left:0;transform:none}.ss-kb__row[data-row="0"] .ss-kb__key:last-child .ss-kb__callout,.ss-kb__row[data-row="0"] .ss-kb__key:last-child .ss-kb__callout:after{left:auto;right:0;transform:none}.ss-kb__row--bottom{margin-bottom:0}.ss-kb__below{height:72px;color:var(--ss-kb-faint);justify-content:space-between;align-items:center;padding:0 22px 6px;display:flex}.ss-roll{white-space:pre}.ss-roll__mid{vertical-align:bottom;margin-block:-.45em;padding-block:.45em;transition:width .5s cubic-bezier(.22,1,.36,1);display:inline-grid;-webkit-mask-image:linear-gradient(#0000,#000 .5em calc(100% - .5em),#0000);mask-image:linear-gradient(#0000,#000 .5em calc(100% - .5em),#0000)}.ss-roll__item{grid-area:1/1;justify-self:start;width:max-content}.ss-roll[data-align=end] .ss-roll__mid{grid-template-columns:100%}.ss-roll[data-align=end] .ss-roll__item{justify-self:unsafe end}.ss-roll__char{white-space:pre;animation:.42s cubic-bezier(.32,.72,0,1) both ss-roll-in;display:inline-block}.ss-roll__item[data-out]{animation:.42s cubic-bezier(.32,.72,0,1) both ss-roll-out}@keyframes ss-roll-in{0%{opacity:0;transform:translateY(100%)}}@keyframes ss-roll-out{to{opacity:0;transform:translateY(-100%)}}.ss-roll[data-variant=fade] .ss-roll__char{animation-name:ss-fade-in;animation-duration:.35s;animation-delay:.12s}.ss-roll[data-variant=fade] .ss-roll__item[data-out]{animation-name:ss-fade-out;animation-duration:.16s}.ss-roll[data-variant=fade] .ss-roll__mid{clip-path:inset(0);margin-block:0;padding-block:0;transition-duration:.4s;-webkit-mask-image:none;mask-image:none}@keyframes ss-fade-out{to{opacity:0;filter:blur(2px);transform:translateY(-3px)}}.ss-thread{--ss-thread-size:15px;--ss-me:#0a84ff;--ss-me-text:#fff;--ss-them:#e9e9eb;--ss-them-text:#000;--ss-scroll:.55s cubic-bezier(.25, 1, .5, 1);clip-path:inset(0 -100vw -100vh);min-height:0;font-size:var(--ss-thread-size);letter-spacing:-.01em;flex-direction:column;justify-content:flex-end;gap:3px;line-height:1.3;display:flex}.ss-phone__content .ss-thread{--ss-thread-size:17px}.ss-phone__content .ss-stamp,.ss-phone__content .ss-receipt{font-size:14px}.ss-thread[data-app=sms]{--ss-me:#34c759}.ss-stage[data-theme=dark] .ss-thread,.ss-phone[data-dark] .ss-thread{--ss-them:#26252a;--ss-them-text:#fff}.ss-bubble-row{will-change:transform;transition:top var(--ss-scroll);flex:none;display:flex;position:relative;top:0}.ss-bubble-row[data-from=me]{justify-content:flex-end}.ss-bubble-row[data-from=me]+.ss-bubble-row[data-from=them],.ss-bubble-row[data-from=them]+.ss-bubble-row[data-from=me]{margin-top:8px}.ss-bubble{isolation:isolate;max-width:75%;color:var(--t);overflow-wrap:break-word;border-radius:1.06em;padding:.42em .76em;transition:width .35s cubic-bezier(.22,1,.36,1),height .35s cubic-bezier(.22,1,.36,1);position:relative;top:0;left:0}.ss-bubble:before{content:"";z-index:-1;border-radius:inherit;background:var(--b);transform-origin:inherit;transition:opacity .3s 60ms;position:absolute;inset:0}.ss-bubble-row[data-avatar]{align-items:flex-end}.ss-bubble__avatar{flex:none;margin-right:8px;transition:margin-bottom .45s cubic-bezier(.22,1,.36,1);display:inline-flex}.ss-bubble-row:has(.ss-bubble[data-tapback]) .ss-bubble__avatar{margin-bottom:21px}.ss-bubble[data-tapback]{margin-bottom:21px}.ss-bubble{transition:width .35s cubic-bezier(.22,1,.36,1),height .35s cubic-bezier(.22,1,.36,1),margin-bottom .3s cubic-bezier(.22,1,.36,1) .12s}.ss-bubble[data-tapback]{transition:width .35s cubic-bezier(.22,1,.36,1),height .35s cubic-bezier(.22,1,.36,1),margin-bottom .45s cubic-bezier(.22,1,.36,1)}.ss-tapback{z-index:1;background:var(--ss-thread-ground,#fff);pointer-events:none;transform-origin:50%;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:13px;line-height:1;transition:transform .45s cubic-bezier(.22,1.4,.36,1),opacity .1s;display:flex;position:absolute;bottom:-17px;left:8px;transform:scale(0);box-shadow:0 1px 2px #00000014,0 0 0 .5px #0000000d}.ss-bubble-row[data-from=me] .ss-tapback{left:auto;right:8px}.ss-stage[data-theme=dark] .ss-tapback{background:var(--ss-thread-ground,#2c2c2e);box-shadow:0 1px 3px #0006}.ss-tapback[data-show]{transform:scale(1)}.ss-tapback:not([data-show]){opacity:0;transition:transform .16s,opacity .14s;transform:scale(.5)}.ss-tapback__emoji{text-align:center;width:1em;height:1em;line-height:1;display:block}.ss-bubble[data-arrived]{animation:.45s cubic-bezier(.22,1,.36,1) both ss-bubble-in}.ss-bubble[data-arrived]:before{animation:.45s cubic-bezier(.22,1,.36,1) both ss-bubble-fill}.ss-bubble[data-arrived][data-source],.ss-bubble[data-arrived][data-source]:before{animation:none}.ss-bubble[data-flying]:before{opacity:0;transition:none}.ss-bubble[data-arrived][data-source][data-tail]>.ss-bubble__tail{animation-delay:.32s}[data-from=me]>.ss-bubble{--b:var(--ss-me);--t:var(--ss-me-text);transform-origin:100% 100%}[data-from=them]>.ss-bubble{--b:var(--ss-them);--t:var(--ss-them-text);transform-origin:0 100%}@keyframes ss-bubble-in{0%{opacity:0;top:6px}}@keyframes ss-bubble-fill{0%{transform:scale(.8)}}[data-from=them]>.ss-bubble[style*=width]{clip-path:inset(0 0 -1em -1em)}[data-from=me]>.ss-bubble[style*=width]{clip-path:inset(0 -1em -1em 0)}.ss-bubble__text{display:block}.ss-bubble[data-grew]>.ss-bubble__text{animation:.28s both ss-fade-in}.ss-bubble__tail{width:1.06em;height:.94em;fill:var(--b);pointer-events:none;opacity:0;transition:transform .3s cubic-bezier(.25,1,.5,1),opacity .18s;position:absolute;bottom:0;transform:scale(.2)}.ss-bubble[data-tail]>.ss-bubble__tail{opacity:1;transform:none}[data-from=me]>.ss-bubble>.ss-bubble__tail{transform-origin:15% 85%;right:-.36em}[data-from=them]>.ss-bubble>.ss-bubble__tail{transform-origin:85% 85%;left:-.36em}.ss-bubble[data-arrived][data-tail]>.ss-bubble__tail{animation:.32s cubic-bezier(.25,1,.5,1) .2s backwards ss-tail-in}@keyframes ss-tail-in{0%{opacity:0;transform:scale(.2)}}.ss-bubble__bar{opacity:.35;vertical-align:middle;background:currentColor;border-radius:.2em;height:.4em;display:inline-block}.ss-bubble[data-typing]{padding:.84em .8em}.ss-bubble__dots{gap:.24em;display:flex}.ss-bubble__dots i{background:#8e8e93;border-radius:50%;width:.46em;height:.46em;animation:1.2s ease-in-out infinite ss-typing}.ss-bubble__dots i:nth-child(2){animation-delay:.16s}.ss-bubble__dots i:nth-child(3){animation-delay:.32s}@keyframes ss-typing{0%,60%,to{opacity:.4;transform:none}30%{opacity:1;transform:translateY(-.12em)}}.ss-stamp{will-change:transform;transition:top var(--ss-scroll);color:#8e8e93;text-align:center;flex:none;margin:10px 0 6px;font-size:.7em;font-weight:500;position:relative;top:0}.ss-receipt{color:#8e8e93;will-change:transform;transition:top var(--ss-scroll), grid-template-rows var(--ss-scroll), opacity .25s ease;opacity:0;flex:none;grid-template-rows:0fr;justify-items:end;font-size:.66em;font-weight:500;display:grid;position:relative;top:0}.ss-receipt .ss-roll[data-variant=fade] .ss-roll__item[data-out]{animation:.3s both ss-receipt-out}.ss-receipt .ss-roll[data-variant=fade] .ss-roll__char{animation:.4s cubic-bezier(.25,1,.5,1) 80ms both ss-receipt-in}.ss-receipt .ss-roll[data-variant=fade] .ss-roll__mid{transition-duration:.45s}@keyframes ss-receipt-out{to{opacity:0;filter:blur(1.5px);transform:translateY(-.5em)}}@keyframes ss-receipt-in{0%{opacity:0;filter:blur(1.5px);transform:translateY(.5em)}}.ss-receipt>span{min-height:0;padding-right:.3em;overflow:hidden}.ss-receipt[data-show]{opacity:1;grid-template-rows:1fr}.ss-thread[data-app=chat]{--ss-me:var(--ss-ink-1);--ss-me-text:var(--ss-text-strong);gap:18px;line-height:1.55}.ss-thread[data-app=chat] .ss-bubble{border-radius:1.2em;padding:.5em .9em}.ss-thread[data-app=chat] .ss-bubble__tail{display:none}.ss-thread[data-app=chat] [data-from=them]>.ss-bubble{--b:transparent;max-width:100%;color:var(--ss-text);background:0 0;border-radius:0;padding:0;transition:none}.ss-thread[data-app=chat] .ss-bubble-row+.ss-bubble-row{margin-top:0}@media (prefers-reduced-motion:reduce){.ss-bubble,.ss-bubble__text{animation-duration:10ms}.ss-bubble__dots i{opacity:.6;animation:none}.ss-bubble-row,.ss-bubble{transition-duration:10ms}}.ss-connector{z-index:20;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.ss-connector__line{fill:none;stroke:var(--ss-accent);stroke-width:1.5px;stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset 1s cubic-bezier(.65,0,.35,1),opacity .25s}.ss-connector[data-dashed] .ss-connector__line{stroke-dasharray:4 4;stroke-dashoffset:0}.ss-connector__reveal{stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset 1s cubic-bezier(.65,0,.35,1)}.ss-connector[data-show] .ss-connector__reveal{stroke-dashoffset:0}.ss-connector:not([data-show]) .ss-connector__reveal{transition:stroke-dashoffset 0s .25s}.ss-connector[data-show] .ss-connector__line{stroke-dashoffset:0}.ss-connector[data-show][data-dashed] .ss-connector__line{opacity:1}.ss-connector:not([data-show]) .ss-connector__line{opacity:0;transition:opacity .25s,stroke-dashoffset 0s .25s}.ss-connector__dot{fill:var(--ss-accent);stroke:#fff;stroke-width:2px;filter:drop-shadow(0 1px 1px #14233729);opacity:0;transform-box:fill-box;transform-origin:50%;transition:opacity .2s,transform .3s cubic-bezier(.22,1,.36,1);transform:scale(.4)}.ss-connector[data-arrived] .ss-connector__dot,.ss-connector[data-show] .ss-connector__dot--start{opacity:1;transform:scale(1)}.ss-connector__arrow{fill:none;stroke:var(--ss-accent);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .2s}.ss-connector[data-arrived] .ss-connector__arrow{opacity:1}.ss-connector__arrow{stroke-dasharray:none;stroke-dashoffset:0;transition:opacity .2s}.ss-connector__label{z-index:21;background:var(--ss-raised);box-shadow:0 0 0 1px var(--ss-line), var(--ss-shadow-card);color:var(--ss-text-strong);white-space:nowrap;opacity:0;pointer-events:none;border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:500;line-height:14px;transition:opacity .2s;position:absolute;transform:translate(-50%,-50%)}.ss-connector__label[data-step]{font-variant-numeric:tabular-nums;place-items:center;width:18px;height:18px;padding:0;display:grid}.ss-connector__label[data-arrived]{opacity:1;transition:opacity .2s}.ss-count{font-variant-numeric:tabular-nums;white-space:nowrap;align-items:baseline;display:inline-flex}.ss-count__char{display:inline-block}.ss-count__unit{margin-left:var(--ss-count-unit-gap,.08em);display:inline-block}.ss-count__unit[data-space]{margin-left:.28em}.ss-count__digit{vertical-align:baseline;height:1em;line-height:1;display:inline-block;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 8% 92%,#0000);mask-image:linear-gradient(#0000,#000 8% 92%,#0000)}.ss-count__strip{will-change:transform;flex-direction:column;transition-property:transform;transition-timing-function:cubic-bezier(.3,.75,.1,1);display:flex}.ss-count__strip>span{text-align:left;height:1em;line-height:1;display:block}.ss-count[data-snap] .ss-count__strip{transition:none}@media (prefers-reduced-motion:reduce){.ss-count__strip{transition:none}}.ss-swap{vertical-align:top;display:inline-block;position:relative;overflow:clip visible}.ss-swap[data-swapping]{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 8px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 8px),#0000)}.ss-swap__in,.ss-swap__out{text-box:inherit;width:max-content;max-width:100%;display:block}.ss-swap__out{animation:forwards ss-swap-out;position:absolute;top:0;left:0}.ss-swap__in{animation:cubic-bezier(.25,.8,.25,1) both ss-swap-in}@keyframes ss-swap-out{to{opacity:0;filter:blur(2px)}}@keyframes ss-swap-in{0%,30%{opacity:0;filter:blur(2px)}to{opacity:1;filter:none}}@media (prefers-reduced-motion:reduce){.ss-swap__in,.ss-swap__out{animation-duration:1ms!important}}.ss-collapse{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .42s cubic-bezier(.4,0,.2,1) 50ms,opacity .42s cubic-bezier(0,.8,.5,1);display:grid}.ss-collapse[data-open]{opacity:1;grid-template-rows:1fr;transition:grid-template-rows .46s cubic-bezier(.4,0,.2,1),opacity .24s ease-out .15s}.ss-collapse[data-solid],.ss-collapse[data-solid][data-open]{opacity:1}.ss-collapse__inner{overflow-clip-margin:3px;min-height:0;overflow:clip}.ss-collapse[data-reveal=clip]>.ss-collapse__inner{overflow-clip-margin:0;flex-direction:column;justify-content:center;display:flex}.ss-collapse[data-reveal=clip][data-tall]>.ss-collapse__inner{justify-content:flex-start}.ss-collapse[data-reveal=clip][data-tall][data-open]{transition:grid-template-rows .46s cubic-bezier(.4,0,.2,1),opacity .24s ease-out .3s}.ss-collapse[data-open]:not([data-moving])>.ss-collapse__inner,.ss-collapse[data-reveal=drop]>.ss-collapse__inner{overflow:visible}.ss-collapse__glide{min-width:0;display:grid}.ss-collapse[data-reveal=drop]>.ss-collapse__inner>.ss-collapse__glide{will-change:transform;transition:transform .3s;transform:translateY(-10px)}.ss-collapse[data-reveal=drop][data-from=below]>.ss-collapse__inner>.ss-collapse__glide{transform:translateY(10px)}.ss-collapse[data-reveal=drop][data-open]>.ss-collapse__inner>.ss-collapse__glide{transition:transform .6s cubic-bezier(.22,1,.36,1) .2s;transform:none}.ss-collapse[data-reveal=drop][data-open]{transition:grid-template-rows .5s cubic-bezier(.45,0,.2,1),opacity .3s .24s}.ss-fly{z-index:30;pointer-events:none;position:absolute}.ss-fly>div,.ss-fly__lift{width:100%;height:100%}.ss-fly__lift{display:flex}.ss-fly__lift>*{flex:auto;max-width:100%;max-height:100%}.ss-fly[data-held]:not([data-go]) .ss-fly__lift{animation:.2s ease-out both ss-fly-bud}@keyframes ss-fly-bud{0%{opacity:0}}.ss-fly[data-go] .ss-fly__lift{animation-name:ss-fly-lift;animation-timing-function:cubic-bezier(.33,1,.68,1);animation-fill-mode:both}@keyframes ss-fly-lift{30%{filter:drop-shadow(0 6px 10px #0000002e);transform:scale(1.12)}85%,to{filter:none;transform:none}}.ss-follow{opacity:0;pointer-events:none;will-change:transform;transition:opacity .18s;position:absolute;top:0;left:0}.ss-follow[data-show]{opacity:1}.ss-states{place-items:center;display:inline-grid}.ss-states__item{opacity:0;filter:blur(2px);will-change:transform;grid-area:1/1;align-items:center;gap:6px;transition:opacity .15s,filter .15s,transform 0s .15s;display:inline-flex;transform:translateY(4px)}.ss-states__item[data-on]{opacity:1;filter:none;transition:opacity .25s ease-out 70ms,filter .25s ease-out 70ms,transform .3s cubic-bezier(.22,1,.36,1) 70ms;transform:translate(0,0)}.ss-states[data-align=start]{justify-items:start}.ss-states[data-align=end]{justify-items:end}.ss-states[data-reduced]>.ss-states__item{filter:none;transition:opacity .12s;transform:translate(0,0)}.ss-stream__w{opacity:0;filter:blur(3px);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:3px;transition:opacity .35s,filter .35s,background-color .3s}.ss-stream__w[data-on]{opacity:1;filter:none}.ss-stream__w[data-mark]{background-color:var(--ss-success-soft)}.ss-stream__w[data-join]{border-top-right-radius:0;border-bottom-right-radius:0}.ss-stream__w[data-joined]{border-top-left-radius:0;border-bottom-left-radius:0}.ss-popover{z-index:25;isolation:isolate;border-radius:var(--ss-radius-lg);opacity:0;pointer-events:none;padding:4px;transition:opacity .3s;position:absolute;overflow:visible!important}.ss-popover:before{content:"";z-index:-1;border-radius:inherit;background:var(--ss-popover-bg,var(--ss-raised));box-shadow:var(--ss-popover-shadow,var(--ss-shadow-float));transform-origin:var(--ss-popover-origin,top left);pointer-events:none;transition:transform .3s;position:absolute;inset:0;transform:scale(.96)}.ss-popover[data-show]{opacity:1;transition:opacity .18s}.ss-popover[data-show]:before{transition:transform .24s cubic-bezier(.22,1,.36,1);transform:none}.ss-popover:not([data-show]):not([data-instant]){transform-origin:var(--ss-popover-origin,top left);transition:opacity .24s,transform .24s cubic-bezier(.4,0,1,1);transform:scale(.96)}.ss-popover:not([data-show]):not([data-instant]):before{transition:none;transform:none}.ss-camera-view{-webkit-mask-image:linear-gradient(to right, transparent, #000 var(--ss-feather), #000 calc(100% - var(--ss-feather)), transparent), linear-gradient(to bottom, transparent, #000 var(--ss-feather), #000 calc(100% - var(--ss-feather)), transparent);mask-image:linear-gradient(to right, transparent, #000 var(--ss-feather), #000 calc(100% - var(--ss-feather)), transparent), linear-gradient(to bottom, transparent, #000 var(--ss-feather), #000 calc(100% - var(--ss-feather)), transparent);position:absolute;inset:0;overflow:clip;-webkit-mask-composite:source-in;mask-composite:intersect}.ss-camera{transform-origin:0 0;position:absolute;inset:0}.ss-scroll{overflow:hidden}.ss-scroll[data-scrolled]{-webkit-mask-image:linear-gradient(#0000,#000 18px calc(100% - 18px),#0000);mask-image:linear-gradient(#0000,#000 18px calc(100% - 18px),#0000)}.ss-scroller{flex-direction:column;min-height:0;display:flex;position:relative}.ss-scroller>.ss-scroll{flex:1;min-height:0}.ss-scroller__thumb{width:6px;height:var(--ss-thumb-h,0);background:var(--ss-ink-5);transform:translateY(var(--ss-thumb-y,0));opacity:0;pointer-events:none;border-radius:3px;transition:opacity .5s .6s;position:absolute;top:0;right:2px}.ss-scroller[data-scrolling] .ss-scroller__thumb,.ss-scroller[data-bar=always] .ss-scroller__thumb{opacity:1;transition:opacity .15s}.ss-stage[data-theme=dark] .ss-scroller__thumb{background:#ffffff47}.ss-expand{position:absolute;inset:0;overflow:hidden}.ss-expand__content{position:absolute;inset:0}.ss-expand[data-launch]{transform-origin:0 0;will-change:transform;transition:transform var(--ss-expand-ms) var(--ss-expand-ease), clip-path var(--ss-expand-ms) var(--ss-expand-ease), background-color calc(var(--ss-expand-ms) * .25) ease calc(var(--ss-expand-ms) * .7);background-color:#0000}.ss-expand[data-launch][data-open]{background-color:var(--ss-expand-bg,var(--ss-surface));transition:transform var(--ss-expand-ms) var(--ss-expand-ease), clip-path var(--ss-expand-ms) var(--ss-expand-ease), background-color calc(var(--ss-expand-ms) * .4) ease}.ss-expand[data-launch]>.ss-expand__content{opacity:0;transition:opacity calc(var(--ss-expand-ms) * .25) ease calc(var(--ss-expand-ms) * .6)}.ss-expand[data-launch][data-open]>.ss-expand__content{opacity:1;transition:opacity calc(var(--ss-expand-ms) * .4) ease calc(var(--ss-expand-ms) * .3)}.ss-expand__face{transform-origin:0 0;pointer-events:none;transition:opacity calc(var(--ss-expand-ms) * .3) ease calc(var(--ss-expand-ms) * .65);position:absolute;top:0;left:0}.ss-expand__face>*{box-sizing:border-box;width:100%;height:100%;margin:0}.ss-expand[data-open]>.ss-expand__face{opacity:0;transition:opacity calc(var(--ss-expand-ms) * .4) ease}.ss-avatar{will-change:transform;background:var(--ss-fill,var(--ss-ink-3));color:var(--ss-text-strong);border-radius:50%;flex-shrink:0;place-items:center;font-weight:600;line-height:1;transition:background .3s,color .3s;display:inline-grid;overflow:hidden}.ss-avatar[data-tone=accent]{background:var(--ss-accent);color:#fff}.ss-avatar[data-tone=ios]{color:#fff;letter-spacing:.01em;background:linear-gradient(#a5abb8,#858a96);font-family:ui-rounded,SF Pro Rounded,-apple-system,system-ui,sans-serif;font-weight:600}.ss-avatar[data-tone=success]{background:var(--ss-success);color:#fff}.ss-avatar__initial{text-box:trim-both cap alphabetic;display:block}.ss-avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.ss-avatar[data-ring]{box-shadow:0 0 0 1.5px var(--ss-ring-bg,var(--ss-surface)), 0 0 0 3px var(--ss-ring,var(--ss-ink-3));transition:box-shadow .35s}.ss-avatar[data-ring=confirmed]{--ss-ring:var(--ss-success)}.ss-avatar[data-ring=declined]{--ss-ring:var(--ss-danger)}.ss-avatar[data-ring]{position:relative;overflow:visible}.ss-avatar[data-ring]:after{content:"";background:conic-gradient(from 0deg, transparent 0 62%, var(--ss-accent) 100%);opacity:0;pointer-events:none;border-radius:50%;transition:opacity .3s;animation:1.1s linear infinite ss-avatar-wait;position:absolute;inset:-3px;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 1.5px),#000 calc(100% - 1.5px));mask:radial-gradient(farthest-side,#0000 calc(100% - 1.5px),#000 calc(100% - 1.5px))}.ss-avatar[data-ring=waiting]:after{opacity:1}@keyframes ss-avatar-wait{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.ss-avatar[data-ring]:after{animation:none}}.ss-check{flex-shrink:0;place-items:center;display:inline-grid}.ss-check svg{overflow:visible}.ss-check__ring{fill:none;stroke:var(--ss-ink-4);stroke-width:1.5px;transition:opacity .2s}.ss-check__arc{fill:none;stroke:var(--ss-text-strong);stroke-width:1.5px;stroke-linecap:round;stroke-dasharray:.28 1;opacity:0;transform-origin:8px 8px;transition:opacity .18s;animation:.8s linear infinite ss-spin}.ss-check[data-pending] .ss-check__arc{opacity:1}.ss-check__fill{fill:var(--ss-success);opacity:0;transform-origin:8px 8px;transition:opacity .2s,transform .2s;transform:scale(.35)}.ss-check[data-on] .ss-check__fill{opacity:1;transition:transform .4s cubic-bezier(.22,1,.36,1),opacity;transform:scale(1)}.ss-check[data-on] .ss-check__arc{transition-duration:80ms}.ss-check[data-on] .ss-check__ring{opacity:0}.ss-check__tick{fill:none;stroke:#fff;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px;opacity:0;transition:opacity .2s}.ss-stage[data-theme=blueprint] .ss-check__tick{stroke:var(--ss-well)}.ss-check[data-on] .ss-check__tick{stroke-dashoffset:0;opacity:1;transition:stroke-dashoffset .32s cubic-bezier(.65,0,.35,1) .16s,opacity 10ms .16s}.ss-stage[data-palette=mono][data-theme=dark] .ss-check__tick{stroke:#111}@media (prefers-reduced-motion:reduce){.ss-check__arc{animation:none}}.ss-icon{flex-shrink:0;display:block}.ss-spinner{flex:none;animation:.8s linear infinite ss-spin}@media (prefers-reduced-motion:reduce){.ss-spinner{animation:none}}.ss-toast{border-radius:var(--ss-radius-lg);box-shadow:var(--ss-shadow-satellite);color:#fff;opacity:0;will-change:transform;margin-block:var(--ss-toast-rise,10px) calc(-1 * var(--ss-toast-rise,10px));background:#1c1c1f;align-items:center;gap:8px;padding:8px 12px;font-size:12px;transition:opacity .35s,margin .6s cubic-bezier(.22,1,.36,1);display:inline-flex}.ss-toast[data-show]{opacity:1;margin-block:0}.ss-toast__icon{opacity:.8;display:grid}.ss-toast__action{color:#fff9;margin-left:6px;font-weight:500}[data-theme=dark] .ss-toast,.ss-stage[data-theme=dark] .ss-toast{background:var(--ss-raised);color:var(--ss-text-strong)}.ss-tooltip{z-index:20;border-radius:var(--ss-radius-sm);color:#fff;white-space:nowrap;pointer-events:none;opacity:0;background:#26262a;align-items:center;height:22px;padding:0 8px;font-size:11px;font-weight:500;transition:opacity .1s,transform .1s;display:flex;position:absolute;transform:translate(-50%,-2px)}.ss-tooltip[data-side=above]{transform:translate(-50%,calc(2px - 100%))}.ss-tooltip[data-show]{opacity:1;transition-duration:.15s;transform:translate(-50%)}.ss-tooltip[data-side=above][data-show]{transform:translate(-50%,-100%)}.ss-tooltip__label{text-box:trim-both cap alphabetic;display:block}.ss-meter{background:var(--ss-ink-1);border-radius:3px;height:6px;display:block;overflow:hidden}.ss-meter__fill{background:linear-gradient(90deg, var(--ss-accent), var(--ss-accent-2,var(--ss-accent)));width:100%;height:100%;transition:clip-path .8s cubic-bezier(.45,0,.2,1);display:block;position:relative}.ss-meter__fill:after{content:"";background-color:var(--ss-meter-tone,var(--ss-accent));opacity:0;transition:opacity .4s,background-color .4s;position:absolute;inset:0}.ss-meter[data-tone=danger]{--ss-meter-tone:var(--ss-danger)}.ss-meter[data-tone=warning]{--ss-meter-tone:var(--ss-warning)}.ss-meter[data-tone=success]{--ss-meter-tone:var(--ss-success)}.ss-meter[data-tone=ink]{--ss-meter-tone:var(--ss-ink-5)}.ss-meter:not([data-tone=accent]) .ss-meter__fill:after{opacity:1}.ss-menu{flex-direction:column;display:flex}.ss-menu__item{height:var(--ss-row);border-radius:var(--ss-radius-sm);color:var(--ss-text-strong);align-items:center;gap:8px;padding:0 8px;font-size:12px;transition:background-color .12s;display:flex}.ss-menu__item[data-active]{background-color:var(--ss-ink-2)}.ss-menu__item{transition:background-color .15s}.ss-menu__item[data-hover]{background-color:var(--ss-ink-2);transition-duration:0s}.ss-facepile{align-items:center;display:inline-flex}.ss-facepile__face{display:flex}.ss-facepile__face+.ss-facepile__face{margin-left:var(--ss-overlap)}.ss-chip{will-change:transform}.ss-chip-slot{border-radius:var(--ss-radius-pill);opacity:0;flex:none;transition:width .4s cubic-bezier(.25,.8,.25,1) .1s,margin .4s cubic-bezier(.25,.8,.25,1) .1s,opacity .14s;display:inline-flex;overflow:hidden}.ss-chip-slot[data-show]{opacity:1;transition:width .4s cubic-bezier(.25,.8,.25,1),margin .4s cubic-bezier(.25,.8,.25,1),opacity .22s .16s}.ss-chip-slot>.ss-chip{flex:none}.ss-chip{border-radius:var(--ss-radius-pill);background:var(--ss-accent-soft);height:24px;color:var(--ss-text-strong);white-space:nowrap;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:500;display:inline-flex}.ss-chip[data-removable]{padding-right:4px}.ss-chip__x{width:16px;height:16px;color:var(--ss-text);border-radius:50%;place-items:center;transition:background-color .15s;display:inline-grid}.ss-chip__x[data-hover]{background:var(--ss-ink-2);transition-duration:0s}.ss-brand{flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.ss-brand[data-tile]{background:var(--ss-surface);box-shadow:inset 0 0 0 1px var(--ss-line)}.ss-brand[data-tile][data-light-tile]{background:#fff;box-shadow:inset 0 0 0 1px #00000014}.ss-brand img{object-fit:contain;flex:none;width:62%;min-width:0;height:62%;min-height:0;display:block}.ss-brand__initial{color:var(--ss-text-strong);font-weight:600}.ss-brand:not([data-tile]) img{width:100%;height:100%}.ss-pin{--ss-pin-r:50% 50% 50% 0;box-sizing:border-box;border-radius:var(--ss-pin-r);background:var(--ss-surface);will-change:transform;flex-shrink:0;place-items:center;padding:2px;transition:box-shadow .3s;display:inline-grid;position:relative;box-shadow:0 0 0 1px #0000000f,0 2px 6px -1px #00000040}.ss-pin[data-corner=br]{--ss-pin-r:50% 50% 0 50%}.ss-pin[data-corner=tl]{--ss-pin-r:0 50% 50% 50%}.ss-pin[data-corner=tr]{--ss-pin-r:50% 0 50% 50%}.ss-pin__face{border-radius:var(--ss-pin-r);background:var(--ss-ink-3);width:100%;height:100%;color:var(--ss-text-strong);place-items:center;font-weight:600;line-height:1;display:grid;overflow:hidden}.ss-pin[data-tone=accent] .ss-pin__face{background:var(--ss-accent);color:#fff}.ss-pin__face img{object-fit:cover;width:100%;height:100%}.ss-pin[data-selected]{box-shadow:0 0 0 1.5px var(--ss-surface), 0 0 0 3px var(--ss-accent), 0 2px 6px -1px #00000040}.ss-pin[data-selected][data-tone=ink]{box-shadow:0 0 0 1.5px var(--ss-surface), 0 0 0 3px var(--ss-ink-5), 0 2px 6px -1px #00000040}.ss-row{--ss-row-pad:12px;--ss-row-title:12px;--ss-row-subtitle:11.5px;--ss-row-meta:11px;--ss-row-line:16px;--ss-row-line-2:16px;--ss-row-gap:2px;--ss-row-dot:6px;padding:var(--ss-row-pad) var(--ss-row-pad);border-radius:var(--ss-radius-lg);will-change:transform;grid-template-columns:minmax(0,1fr);align-items:center;column-gap:10px;transition:background .2s;display:grid;position:relative}.ss-row[data-selected],.ss-row[data-hover]{background:var(--ss-ink-1)}.ss-row[data-lead]{grid-template-columns:auto minmax(0,1fr)}.ss-row>:not(.ss-row__lead):not(.ss-row__body):not(.ss-row__dot):not(.ss-row__preview){grid-row:1;place-self:center end}.ss-row__dot{z-index:1;left:calc(-7px - var(--ss-row-dot));width:var(--ss-row-dot);height:var(--ss-row-dot);margin-top:calc(3px - var(--ss-row-dot) / 2);background:var(--ss-accent);border-radius:50%;grid-area:1/1/2/2;position:absolute;top:calc(50% - 3px)}.ss-phone__screen .ss-row{--ss-row-title:17px;--ss-row-subtitle:15px;--ss-row-meta:15px;--ss-row-line:22px;--ss-row-line-2:20px;--ss-row-gap:0px;--ss-row-dot:10px}.ss-row__lead{grid-area:1/1/2/2;align-items:center;display:inline-flex}.ss-row__body{gap:var(--ss-row-gap);flex-direction:column;grid-row:1;justify-content:center;min-width:0;display:flex}.ss-row:has(.ss-row__subtitle,.ss-row__preview) .ss-row__body{min-height:calc(var(--ss-row-line) + var(--ss-row-line-2) + var(--ss-row-gap))}.ss-row__head{min-height:var(--ss-row-line);align-items:center;gap:8px;display:flex}.ss-row__title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--ss-row-title);font-weight:600;line-height:var(--ss-row-line);color:var(--ss-text-strong);flex:1;overflow:hidden}.ss-row__meta{font-size:var(--ss-row-meta);line-height:var(--ss-row-line);color:var(--ss-text-faint);flex:none}.ss-row__subtitle{text-overflow:ellipsis;white-space:nowrap;font-size:var(--ss-row-subtitle);line-height:var(--ss-row-line-2);color:var(--ss-text);display:block;overflow:hidden}.ss-row__preview{justify-items:start;row-gap:calc(var(--ss-row-line-2) - 6px);padding-top:calc((var(--ss-row-line-2) - 6px) / 2);grid-row:2;display:grid}.ss-row__preview[data-text]{-webkit-line-clamp:2;font-size:var(--ss-row-subtitle);line-height:var(--ss-row-line-2);color:var(--ss-text);-webkit-box-orient:vertical;padding-top:0;display:-webkit-box;overflow:hidden}.ss-row[data-lead] .ss-row__preview{grid-column:2}.ss-row__preview>.ss-bar{display:block}:is(.ss-row:has(.ss-row__preview) .ss-row__lead,.ss-row:has(.ss-row__preview) .ss-row__dot){grid-row:1/3;align-self:start}.ss-row:has(.ss-row__preview){--ss-row-lead-h:calc(var(--ss-row-line) + var(--ss-row-line-2) * 2 + var(--ss-row-gap))}.ss-row:has(.ss-row__preview) .ss-row__lead{height:var(--ss-row-lead-h)}.ss-row:has(.ss-row__preview) .ss-row__dot{top:calc(var(--ss-row-lead-h) / 2 - 3px)}.ss-row__title>.ss-bar{margin:calc((var(--ss-row-line) - 6px) / 2) 0;display:block}.ss-row__subtitle>.ss-bar{margin:calc((var(--ss-row-line-2) - 6px) / 2) 0;display:block}.ss-row__meta>.ss-bar{margin:calc((var(--ss-row-line) - 6px) / 2) 0;display:block}.ss-card{--ss-card-pad:16px;--ss-card-radius:calc(var(--ss-radius-md) + 4px);--ss-card-inner:max(4px, calc(var(--ss-card-radius) - var(--ss-card-pad)));align-content:start;gap:var(--ss-card-gap,12px);box-sizing:border-box;min-width:0;padding:var(--ss-card-pad);border-radius:var(--ss-card-radius);background:var(--ss-surface);box-shadow:inset 0 0 0 1px var(--ss-line), var(--ss-shadow-card);display:grid}.ss-card[data-pad=small]{--ss-card-pad:12px;--ss-card-radius:var(--ss-radius-lg)}.ss-card[data-pad=large]{--ss-card-pad:20px;--ss-card-radius:calc(var(--ss-radius-lg) + 6px)}.ss-card[data-tone=sunken]{background:var(--ss-ink-1);box-shadow:none}.ss-card[data-lift]{box-shadow:inset 0 0 0 1px var(--ss-line), var(--ss-shadow-satellite)}.ss-card[data-flush]{gap:0;padding:0}.ss-card[data-flush]>*{padding:var(--ss-card-pad)}.ss-card[data-flush]>*+*{border-top:1px solid var(--ss-line)}.ss-card>:first-child{margin-top:0}.ss-card>:last-child{margin-bottom:0}.ss-kbd{vertical-align:middle;flex:none;align-items:center;gap:3px;display:inline-flex}.ss-kbd__key{box-sizing:border-box;font-variant-numeric:tabular-nums;min-width:18px;height:18px;color:var(--ss-text);background:var(--ss-ink-1);box-shadow:inset 0 0 0 1px var(--ss-ink-3), inset 0 -1px 0 var(--ss-ink-3);border-radius:4px;place-items:center;padding:0 4px;font-family:inherit;font-size:11px;font-weight:500;line-height:1;display:inline-grid}.ss-kbd[data-plain]{gap:1px}.ss-kbd[data-plain] .ss-kbd__key{min-width:0;box-shadow:none;background:0 0;padding:0;font-size:12px}.ss-divider{background:var(--ss-line);flex:none;align-self:stretch;height:1px;display:block}.ss-divider[data-vertical]{width:1px;height:auto;margin-block:4px}.ss-field{grid-template-columns:minmax(0,1fr);gap:6px;display:grid}.ss-field__label{color:var(--ss-text-strong);font-size:11.5px;font-weight:500}.ss-field__box{height:var(--ss-control);border-radius:var(--ss-radius-md);background:var(--ss-surface);box-shadow:inset 0 0 0 1px var(--ss-ink-4), 0 0 0 0 transparent;color:var(--ss-text-strong);align-items:center;gap:8px;padding:0 11px;font-size:13px;transition:box-shadow .2s,padding .35s cubic-bezier(.45,0,.1,1);display:flex}.ss-field__box:has(.ss-field__value[data-chip]){padding-left:calc((var(--ss-control) - 24px) / 2)}.ss-field[data-focused] .ss-field__box{box-shadow:inset 0 0 0 1px var(--ss-accent), 0 0 0 3px var(--ss-accent-soft)}.ss-field[data-status=error] .ss-field__box{box-shadow:inset 0 0 0 1px var(--ss-danger), 0 0 0 3px var(--ss-danger-soft)}.ss-field__text{white-space:pre;flex:1;align-items:center;min-width:0;height:100%;display:flex;position:relative;overflow:hidden}.ss-field__placeholder{color:var(--ss-text-faint);transition:opacity .2s;position:absolute;top:50%;left:0;translate:0 -50%}.ss-field[data-filled] .ss-field__placeholder{opacity:0;transition:none}.ss-field__value[data-password]{letter-spacing:1.5px}.ss-field__value{border-radius:var(--ss-radius-pill);background-color:#0000;flex:none;align-items:center;height:24px;padding:0;transition:none;display:inline-flex}.ss-field__chars,.ss-field__placeholder{text-box:trim-both cap alphabetic;line-height:1}.ss-field__chars{display:block}.ss-field__value[data-chip]{padding:0 calc(11px - (var(--ss-control) - 24px) / 2);background-color:var(--ss-chip-bg,var(--ss-accent-soft));color:var(--ss-chip-text,var(--ss-text-strong));transition:padding .35s cubic-bezier(.45,0,.1,1),background-color .3s,color .3s}.ss-field__value[data-chip][data-removable]{padding-right:4px}.ss-field__value[data-leaving]{opacity:0;transition:opacity .25s}.ss-field:has(.ss-field__value[data-leaving]) .ss-field__placeholder{opacity:0;transition:none}.ss-field__x{width:16px;height:16px;color:inherit;opacity:0;border-radius:50%;flex:none;place-items:center;margin-left:-16px;transition:background-color .15s;display:inline-grid}.ss-field__value[data-chip] .ss-field__x{opacity:.75;margin-left:4px;transition:margin .35s cubic-bezier(.45,0,.1,1),opacity .25s .12s,background-color .15s}.ss-field__x[data-hover]{opacity:1;background-color:var(--ss-ink-2);transition-duration:0s}.ss-field__value[data-chip]+.ss-field__caret{margin-left:6px}.ss-field__caret{background:var(--ss-accent);border-radius:1px;flex-shrink:0;width:1.5px;height:16px;margin-left:1px;transition:margin .35s cubic-bezier(.45,0,.1,1);animation:1.06s step-end .5s infinite ss-caret}@keyframes ss-caret{50%{opacity:0}}.ss-field__ok{flex-shrink:0}.ss-field__ok path{fill:none;stroke:var(--ss-success);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;animation:.35s cubic-bezier(.65,0,.35,1) both ss-draw}@keyframes ss-draw{0%{stroke-dashoffset:1px}}.ss-seg{grid-template-columns:repeat(var(--n), 1fr);border-radius:var(--ss-radius-md);background:var(--ss-ink-2);padding:2px;display:grid;position:relative}.ss-seg__thumb{width:calc((100% - 4px) / var(--n));border-radius:var(--ss-radius-sm);background:var(--ss-raised);transition:transform .3s cubic-bezier(.22,1,.36,1);position:absolute;top:2px;bottom:2px;left:2px;box-shadow:0 1px 2px #00000014,0 0 0 .5px #0000000f}.ss-seg__option{height:var(--ss-row);color:var(--ss-text);place-items:center;padding:0 10px;font-size:12px;font-weight:500;transition:color .2s;display:grid;position:relative}.ss-seg__option[data-on]{color:var(--ss-text-strong)}.ss-toggle{background:var(--ss-ink-5);border-radius:9px;flex-shrink:0;width:30px;height:18px;transition:background-color .2s;display:inline-block;position:relative}.ss-toggle[data-on]{background:var(--ss-accent)}.ss-toggle__knob{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .25s cubic-bezier(.22,1,.36,1);position:absolute;top:2px;left:2px;box-shadow:0 .5px 1.5px #00000024,0 0 0 .5px #0000000a}.ss-toggle[data-on] .ss-toggle__knob{transform:translate(12px)}.ss-stage[data-palette=mono][data-theme=dark] .ss-toggle[data-on] .ss-toggle__knob{background:#111}.ss-stage[data-theme=blueprint] .ss-toggle[data-on] .ss-toggle__knob{background:var(--ss-well);box-shadow:none}.ss-tabs{border-bottom:1px solid var(--ss-line);gap:18px;display:flex;position:relative}.ss-tabs__tab{color:var(--ss-text);padding-bottom:9px;font-size:12.5px;font-weight:500;transition:color .2s}.ss-tabs__tab[data-on]{color:var(--ss-text-strong)}.ss-tabs__bar{background:var(--ss-text-strong);transform-origin:0 0;width:1px;height:2px;transition:transform .35s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-1px;left:0}.ss-badge{will-change:transform;border-radius:var(--ss-radius-pill);background:var(--ss-ink-2);height:20px;color:var(--ss-text-strong);white-space:nowrap;align-items:center;gap:5px;padding:0 9px;font-size:11px;font-weight:500;transition:background-color .35s,color .35s;display:inline-flex}.ss-badge[data-lead]{padding-left:7px}.ss-badge[data-tone=accent]{background:var(--ss-accent-soft);color:var(--ss-accent-text)}.ss-badge[data-tone=success]{background:var(--ss-success-soft);color:var(--ss-success-text)}.ss-badge[data-tone=danger]{background:var(--ss-danger-soft);color:var(--ss-danger-text)}.ss-badge[data-tone=warning]{background:var(--ss-warning-soft);color:var(--ss-warning-text)}.ss-badge__label{text-box:trim-both cap alphabetic;display:block}.ss-badge__dot{background:currentColor;border-radius:50%;width:6px;height:6px}.ss-button{will-change:transform;--ss-button-height:28px;--ss-button-pad:12px;--ss-button-pad-icon:9px;--ss-button-icon:14px;--ss-button-gap:6px;justify-content:center;align-items:center;gap:var(--ss-button-gap);box-sizing:border-box;min-height:var(--ss-button-height);padding:0 var(--ss-button-pad);border-radius:var(--ss-radius-sm);letter-spacing:-.005em;white-space:nowrap;color:var(--ss-text-strong);background:var(--ss-surface);box-shadow:inset 0 0 0 1px var(--ss-ink-4);flex:none;font-size:13px;font-weight:500;line-height:1.25;transition:transform .18s cubic-bezier(.2,.8,.2,1),background-color .16s,color .16s,padding .22s cubic-bezier(.22,1,.36,1);display:inline-flex}.ss-button[data-size=small]{--ss-button-height:24px;--ss-button-pad:8px;--ss-button-pad-icon:6px;--ss-button-icon:12px;--ss-button-gap:5px;font-size:12px}.ss-button[data-size=large]{--ss-button-height:32px;--ss-button-pad:14px;--ss-button-pad-icon:11px;--ss-button-icon:16px;--ss-button-gap:7px;border-radius:var(--ss-radius-md);font-size:14px}.ss-button[data-leading]{padding-left:var(--ss-button-pad-icon)}.ss-button[data-trailing]{padding-right:var(--ss-button-pad-icon)}.ss-button[data-hover]{background:color-mix(in srgb, var(--ss-surface), #000 4%)}.ss-button[data-variant=primary]{background:var(--ss-accent);color:#fff;box-shadow:none}.ss-button[data-variant=primary][data-hover]{background:color-mix(in srgb, var(--ss-accent), #000 10%)}.ss-button[data-variant=danger]{background:var(--ss-danger);color:#fff;box-shadow:none}.ss-button[data-variant=danger][data-hover]{background:color-mix(in srgb, var(--ss-danger), #000 10%)}.ss-button[data-variant=tertiary]{background:var(--ss-ink-2);box-shadow:none}.ss-button[data-variant=tertiary][data-hover]{background:var(--ss-ink-3)}.ss-button[data-variant=ghost]{box-shadow:none;background:0 0}.ss-button[data-variant=ghost][data-hover]{background:var(--ss-ink-2)}.ss-button[data-pressed]{transform:scale(.97)}.ss-button__icon{width:var(--ss-button-icon);height:var(--ss-button-icon);flex:none;place-items:center;display:grid}.ss-button__lead{margin-right:calc(-1 * var(--ss-button-gap,6px));opacity:0;width:0;transition:width .22s cubic-bezier(.22,1,.36,1),margin .22s cubic-bezier(.22,1,.36,1),opacity .16s,scale .22s cubic-bezier(.22,1,.36,1);scale:.6}.ss-button__lead[data-open]{width:var(--ss-button-icon);opacity:1;margin-right:0;scale:1}.ss-button__icon>svg{width:var(--ss-button-icon);height:var(--ss-button-icon);flex:none}.ss-button__label{text-box:trim-both cap alphabetic;display:block}.ss-draft{--ss-draft-pad-y:7px;--ss-draft-pad-x:10px;--ss-draft-ring:var(--ss-accent);--ss-draft-radius:var(--ss-radius-sm);min-width:0;display:block;position:relative}.ss-draft[data-editing]{transition:none!important}.ss-draft__box{box-sizing:border-box;border-radius:var(--ss-draft-radius);padding:0;transition:padding .35s cubic-bezier(.4,0,.2,1),box-shadow .25s;display:block;box-shadow:inset 0 0 0 1.5px #0000}.ss-draft[data-editing]>.ss-draft__box{padding:var(--ss-draft-pad-y) var(--ss-draft-pad-x);box-shadow:inset 0 0 0 1.5px var(--ss-draft-ring);transition:none}.ss-draft__words{display:grid;position:relative}.ss-draft__size,.ss-draft__typed,.ss-draft__ph{overflow-wrap:anywhere;grid-area:1/1;min-width:0}.ss-draft__size{visibility:hidden}.ss-draft__ph{color:var(--ss-text-faint);white-space:nowrap;text-overflow:ellipsis;opacity:0;pointer-events:none;transition:opacity .12s;overflow:hidden}.ss-draft[data-editing][data-empty] .ss-draft__ph{opacity:1}.ss-draft:not([data-empty]) .ss-draft__ph{transition:none}.ss-draft__caret{vertical-align:-.2em;background:var(--ss-draft-ring);border-radius:1px;width:1.5px;height:1.1em;margin-left:1px;animation:1.06s step-end .5s infinite ss-draft-caret;display:inline-block}@keyframes ss-draft-caret{50%{opacity:0}}.ss-slot{border-radius:var(--ss-radius-md);flex-shrink:0;transition:height .45s cubic-bezier(.45,0,.2,1),margin-top .45s cubic-bezier(.45,0,.2,1);position:relative}.ss-slot__clip{border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:clip}.ss-slot__mark{border:1.5px dashed var(--ss-ink-5);border-radius:inherit;opacity:0;transition:opacity .15s ease-out;position:absolute;inset:0 0 auto}.ss-slot[data-open][data-dashed] .ss-slot__mark{opacity:1;transition:opacity .16s ease-out .3s}.ss-code{--ss-code-key:#7c3aed;--ss-code-str:#15803d;--ss-code-num:#b45309;--ss-code-fn:#2563eb;color:var(--ss-text-strong);font:11.5px/19px ui-monospace,SF Mono,Menlo,monospace}.ss-stage[data-theme=dark] .ss-code{--ss-code-key:#c4b5fd;--ss-code-str:#86efac;--ss-code-num:#fdba74;--ss-code-fn:#93c5fd}.ss-stage[data-palette=mono] .ss-code,.ss-stage[data-theme=blueprint] .ss-code{--ss-code-key:var(--ss-text-strong);--ss-code-str:var(--ss-text);--ss-code-num:var(--ss-text-strong);--ss-code-fn:var(--ss-text-strong)}.ss-code__line{opacity:0;padding-right:12px;transition:opacity .3s;display:flex}.ss-code__line[data-on]{opacity:1}.ss-code__num{text-align:right;font-variant-numeric:tabular-nums;width:30px;color:var(--ss-text-faint);flex-shrink:0;padding-right:10px}.ss-code__mark{width:16px;color:var(--ss-text-faint);flex-shrink:0}.ss-code__text{white-space:pre;flex:1;min-width:0;overflow:hidden}.ss-code__text[data-over]{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 14px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 14px),#0000)}.ss-code__line[data-kind=add]{background:var(--ss-success-soft)}.ss-code__line[data-kind=add] .ss-code__mark{color:var(--ss-success-text)}.ss-code__line[data-kind=del]{background:var(--ss-danger-soft)}.ss-code__line[data-kind=del] .ss-code__mark{color:var(--ss-danger-text)}.ss-code__key{color:var(--ss-code-key)}.ss-code__str{color:var(--ss-code-str)}.ss-code__num+.ss-code__mark+.ss-code__text .ss-code__num,.ss-code__text .ss-code__num{width:auto;text-align:inherit;color:var(--ss-code-num);padding:0}.ss-code__fn{color:var(--ss-code-fn)}.ss-code__com{color:var(--ss-text-faint)}.ss-chart{display:block;overflow:visible}.ss-chart__draw{opacity:0;transition:opacity .25s}.ss-chart[data-show] .ss-chart__draw{opacity:1;transition:opacity .15s}.ss-chart__line{fill:none;stroke:var(--ss-accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;transition:d .8s cubic-bezier(.45,0,.2,1)}.ss-chart__area{transition:d .8s cubic-bezier(.45,0,.2,1)}.ss-chart__dot{fill:var(--ss-accent);stroke:var(--ss-surface);stroke-width:2px;opacity:0;transform-box:fill-box;transform-origin:50%;transition:opacity .2s,transform .2s,cx .8s cubic-bezier(.45,0,.2,1),cy .8s cubic-bezier(.45,0,.2,1);transform:scale(.4)}.ss-chart[data-show] .ss-chart__dot{opacity:1;transform:none}.ss-chart__bar{fill:var(--ss-accent);transition:y .7s cubic-bezier(.25,.8,.25,1),height .7s cubic-bezier(.25,.8,.25,1)}.ss-chart[data-still] *{transition:none!important}}:where(.ss-stage) :is(p,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,a,figure,figcaption,blockquote,pre,code,hr,table,th,td,button,input,label):not(html):not(body){all:revert}:where(.ss-stage,.ss-stage *):not(html){border-width:revert-layer;border-style:revert-layer;border-color:revert-layer;box-sizing:revert-layer;padding:revert-layer;margin:revert-layer}:where(.ss-stage) :is(svg,img):not(html):not(body){max-width:none;vertical-align:revert-layer}:where(.ss-stage :is(.ss-fly__lift,.ss-expand__face))>:is(svg,img):not(html):not(body):not(head){max-width:100%}@property --ss-feather{syntax:"<length>";inherits:false;initial-value:0}
|