:root{--bg: #000000;--bg-card: #0a0a0a;--bg-elevated: #111111;--bg-input: #0d0d0d;--panel-bg: var(--bg-card);--shadow-float: 0 16px 48px rgba(0, 0, 0, .22);--border: #1f1f1f;--border-hover: #333333;--border-strong: #2a2a2a;--card-ink: #ffffff;--text: #ededed;--text-secondary: #a1a1a1;--text-muted: #666666;--accent: #0070f3;--accent-contrast: #ffffff;--success: #3ecf8e;--danger: #ff6b6b;--warn: #f5a623;--info: #8b7dff;--accent-pro: var(--success);--inp-text: #ededed;--inp-placeholder: #5a5a5a;--inp-border: #2a2a2a;--inp-border-hover: #3d3d3d;--inp-accent: #ededed;--inp-ring: 255 255 255;--badge-solid-fg: #0b0b0b;--inp-hover-bg: rgba(255, 255, 255, .05);--inp-readonly-bg: rgba(255, 255, 255, .02);--inp-prefix: #7a7a7a;--inp-btn: #8a8a8a;--inp-btn-hover-bg: rgba(255, 255, 255, .08);--inp-hint: #7a7a7a;--inp-label: #6a6a6a;--sel-fill: transparent;--sel-hover-base: transparent;--sel-menu-bg: #000000;--sel-menu-border: rgba(255, 255, 255, .09);--sel-menu-shadow: 0 12px 40px rgba(0, 0, 0, .5), 0 2px 8px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .06);--sel-opt-hover: rgb(20, 20, 20);--vsn-surface: #121214;--vsn-desc: rgba(255, 255, 255, .62);--vsn-fg: #ededed;--vsn-shadow: 0 12px 34px rgba(0, 0, 0, .55), 0 2px 8px rgba(0, 0, 0, .4);--sw-off: #39393d;--sw-track-shadow: inset 0 0 0 1px rgba(255, 255, 255, .06);--ds-bar-track: rgba(255, 255, 255, .16);--ds-dot-off: rgba(255, 255, 255, .16);--ds-dot-hover: rgba(255, 255, 255, .28);--fx-tint: 255 255 255;--btn-primary-bg: #ededed;--btn-primary-bg-hover: #ffffff;--btn-primary-fg: #000000;--btn-primary-rip: 0 0 0;--btn-primary-glow: 0 0 0;--btn-secondary-bg: #1a1a1a;--btn-secondary-bg-hover: #242424;--radius-card: 12px;--radius-control: 8px;--radius-input: 6px;--ctrl-h-sm: 32px;--ctrl-h-md: 40px;--ctrl-h-lg: 48px;--ctrl-r-sm: 10px;--ctrl-r-md: 12px;--ctrl-r-lg: 14px;--ctrl-fs-sm: 13px;--ctrl-fs-md: 14px;--ctrl-fs-lg: 15px;--ctrl-px-sm: 12px;--ctrl-px-md: 14px;--ctrl-px-lg: 18px;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur-fast: .2s;--dur-mid: .26s;--dur-slow: .32s;--grid-line: rgba(255, 255, 255, .02);--grid-size: 32px;--frame-inner-shadow: inset 0 0 150px 0 rgba(0, 0, 0, .65);--font-sans: "Outfit Variable", system-ui, -apple-system, sans-serif;--font-mono: "Geist Mono Variable", ui-monospace, "SF Mono", monospace;--panel-width: 300px;--header-h: 56px}:root[data-theme=light]{--bg: #ffffff;--bg-card: #fafafa;--bg-elevated: #f0f0f0;--bg-input: #f5f5f5;--panel-bg: #ffffff;--shadow-float: 0 10px 30px -6px rgba(17, 24, 39, .14), 0 2px 6px -1px rgba(17, 24, 39, .08);--border: #e4e4e4;--border-hover: #cccccc;--border-strong: #d4d4d4;--card-ink: #000000;--text: #171717;--text-secondary: #5a5a5a;--text-muted: #999999;--grid-line: rgba(0, 0, 0, .02);--frame-inner-shadow: inset 0 0 150px 0 rgba(255, 255, 255, .75);--inp-text: #171717;--inp-placeholder: #3a3a3a;--inp-border: #d4d4d4;--inp-border-hover: #a3a3a3;--inp-accent: #171717;--inp-ring: 0 0 0;--badge-solid-fg: #f5f5f5;--inp-hover-bg: rgba(0, 0, 0, .04);--inp-readonly-bg: rgba(0, 0, 0, .02);--inp-prefix: #888888;--inp-btn: #777777;--inp-btn-hover-bg: rgba(0, 0, 0, .06);--inp-hint: #888888;--inp-label: #888888;--sel-fill: transparent;--sel-hover-base: transparent;--sel-menu-bg: #ffffff;--sel-menu-border: rgba(0, 0, 0, .1);--sel-menu-shadow: 0 12px 40px rgba(0, 0, 0, .12), 0 2px 8px rgba(0, 0, 0, .08), inset 0 1px 0 rgba(255, 255, 255, .8);--sel-opt-hover: #f0f0f0;--vsn-surface: #ffffff;--vsn-desc: rgba(0, 0, 0, .6);--vsn-fg: #1a1a1a;--vsn-shadow: 0 12px 30px rgba(0, 0, 0, .16), 0 2px 8px rgba(0, 0, 0, .1);--sw-off: #e2e2e2;--sw-track-shadow: inset 0 0 0 1px rgba(0, 0, 0, .08);--sw-thumb-shadow: 0 1px 2px rgba(0, 0, 0, .12), 0 2px 4px rgba(0, 0, 0, .08);--ds-bar-track: rgba(0, 0, 0, .12);--ds-dot-off: rgba(0, 0, 0, .12);--ds-dot-hover: rgba(0, 0, 0, .22);--inp-t-danger-rest: #ef565b;--inp-t-warn-rest: #e09414;--inp-t-success-rest: #2fa86e;--inp-t-danger-hint: #cc2d33;--inp-t-warn-hint: #8a5e0a;--inp-t-success-hint: #1d7a4e;--fx-tint: 0 0 0;--glow-boost: 1.6;--fx-rip-a: .55;--btn-primary-bg: #171717;--btn-primary-bg-hover: #000000;--btn-primary-fg: #ffffff;--btn-primary-rip: 255 255 255;--btn-primary-glow: 255 255 255;--btn-secondary-bg: #f0f0f0;--btn-secondary-bg-hover: #e6e6e6}@media(prefers-reduced-motion:reduce){:root{--dur-fast: 0ms;--dur-mid: 0ms;--dur-slow: 0ms}}.fx-ripples{position:absolute;inset:0;z-index:0;border-radius:inherit;overflow:hidden;pointer-events:none}.fx-ripple{position:absolute;border-radius:50%;transform:translate(-50%,-50%) scale(0);background:radial-gradient(circle,rgb(var(--fx-rip, var(--fx-tint, 255 255 255)) / calc(.3 * var(--fx-rip-a, 1))) 0%,rgb(var(--fx-rip, var(--fx-tint, 255 255 255)) / calc(.16 * var(--fx-rip-a, 1))) 30%,rgb(var(--fx-rip, var(--fx-tint, 255 255 255)) / calc(.06 * var(--fx-rip-a, 1))) 52%,transparent 72%);opacity:0;will-change:transform,opacity;animation:fx-ripple-scale .7s cubic-bezier(.22,1,.36,1) forwards,fx-ripple-fade .7s cubic-bezier(.25,.1,.25,1) forwards}@keyframes fx-ripple-scale{0%{transform:translate(-50%,-50%) scale(0)}to{transform:translate(-50%,-50%) scale(1)}}@keyframes fx-ripple-fade{0%{opacity:.8}to{opacity:0}}.fx-glow{position:absolute;inset:var(--glow-inset, 0);z-index:1;border-radius:inherit;padding:var(--glow-ring, 1.5px);pointer-events:none;background:radial-gradient(var(--glow-r-core, 60px) circle at var(--gx, 50%) var(--gy, 50%),rgb(var(--fx-tint, 255 255 255) / .6),rgb(var(--fx-tint, 255 255 255) / .42) 30%,rgb(var(--fx-tint, 255 255 255) / .16) 58%,rgb(var(--fx-tint, 255 255 255) / 0) 82%),radial-gradient(var(--glow-r-soft, 200px) circle at var(--gx, 50%) var(--gy, 50%),rgb(var(--fx-tint-soft, var(--fx-tint, 255 255 255)) / var(--glow-soft-a, .6)),rgb(var(--fx-tint-soft, var(--fx-tint, 255 255 255)) / calc(var(--glow-soft-a, .6) * .45)) 42%,rgb(var(--fx-tint-soft, var(--fx-tint, 255 255 255)) / calc(var(--glow-soft-a, .6) * .14)) 66%,rgb(var(--fx-tint-soft, var(--fx-tint, 255 255 255)) / 0) 85%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;opacity:calc(var(--glow, 0) * var(--glow-strength, .4) * var(--glow-boost, 1) * var(--glow-soften, .7));transition:opacity .14s ease}@media(prefers-reduced-motion:reduce){.fx-ripple{display:none}}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/outfit-latin-ext-wght-normal.DdQaqQDo.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/outfit-latin-wght-normal.Bc-8i84L.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-ext-wght-normal.DjL33-gN.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-wght-normal.BEAKL7Jp.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-vietnamese-wght-normal.6IgcOCM7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-ext-wght-normal.DC-KSUi6.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-wght-normal.BgDaEnEv.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-cyrillic-ext-wght-normal.X_5orZeX.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-cyrillic-wght-normal.DiZS0aHC.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-symbols2-wght-normal.CO5SzqOn.woff2) format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-vietnamese-wght-normal.DadHysG0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-latin-ext-wght-normal.Bwz-egvJ.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-latin-wght-normal.XN7g48iV.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box}h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd{margin:0}ul,ol{margin:0;padding:0}img,picture,video,canvas,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}pre,code,kbd,samp{font-family:var(--font-mono)}button{background:none;border:none;padding:0;cursor:pointer}@view-transition{navigation:auto}html[data-vt=theme-ripple]::view-transition-old(root),html[data-vt=theme-ripple]::view-transition-new(root){animation:none;mix-blend-mode:normal}html,body{margin:0;padding:0}html{height:100%;background-color:var(--bg)}body{min-height:100%}body{display:flex;flex-direction:column;background-color:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}::selection{background:#ffffff6b;color:#fff}:root[data-theme=light] ::selection{background:#00000047;color:#000}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:6px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.fdy-input,.fdy-select{width:100%;height:32px;padding:0 10px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-input);color:var(--text);font-family:inherit;font-size:13px;transition:border-color var(--dur-fast) var(--ease-out)}.fdy-input:hover,.fdy-select:hover{border-color:var(--border-hover)}.fdy-input:focus,.fdy-select:focus{outline:none;border-color:var(--accent)}.fdy-select-host,.fdy-select-host .sel.sel{width:100%}.fdy-toggle{position:relative;width:40px;height:24px;border:none;border-radius:999px;background:#2a2a2a;cursor:pointer;flex-shrink:0;transition:background-color var(--dur-mid) var(--ease-out)}.fdy-toggle[data-checked=true]{background:var(--text)}.fdy-toggle-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0006;transition:transform var(--dur-slow) var(--ease-spring)}.fdy-toggle[data-checked=true] .fdy-toggle-thumb{transform:translate(16px)}.fdy-segmented{display:inline-flex;padding:3px;gap:2px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-control)}.fdy-segment{flex:1;border:none;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:12px;font-weight:500;padding:5px 10px;border-radius:5px;cursor:pointer;white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.fdy-segment:hover{color:var(--text)}.fdy-segment[data-active=true]{background:var(--bg-elevated);color:var(--text);box-shadow:0 1px 2px #0000004d}.fdy-number{display:flex;align-items:center;gap:10px}.fdy-number-input{width:64px;flex-shrink:0}.fdy-number-slider{flex:1;min-width:0}.fdy-number .fdy-number-slider .vsf{width:100%}.fdy-number-stepper{flex:none}.fdy-slider{flex:1;appearance:none;height:4px;border-radius:999px;background:var(--border-strong);cursor:pointer}.fdy-slider::-webkit-slider-thumb{appearance:none;width:14px;height:14px;border-radius:50%;background:var(--text);cursor:pointer;transition:transform var(--dur-fast) var(--ease-spring)}.fdy-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.fdy-color{display:flex;align-items:center;gap:8px}.fdy-color-swatch{width:32px;height:32px;padding:0;border:1px solid var(--border);border-radius:var(--radius-input);background:none;cursor:pointer;flex-shrink:0}.fdy-color-hex{flex:1}.fdy-field{display:flex;flex-direction:column;gap:8px}.fdy-field:has(.fdy-toggle-host){flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.fdy-field:has(.fdy-toggle-host) .fdy-toggle-host{width:auto;flex:none}.fdy-field-label{font-size:12px;color:var(--text-secondary);font-weight:500}.fdy-controls{display:flex;flex-direction:column;gap:18px}.fdy-controls-sb{flex:1;min-height:0}#controls-root .fdy-controls-vsb.vs-sb{height:100%;max-width:none;border:none;border-radius:0;background:transparent}#controls-root .fdy-controls-vsb.vs-sb>.vs-sb__vp>.vs-sb__content{display:flex;flex-direction:column;gap:20px;padding:20px}.fdy-reset{width:100%;margin-top:4px}.fdy-reset .btn.btn--ghost{border:1px solid var(--border-strong, #2a2a2a)}.fdy-button-host--block,.fdy-button-host--block vs-button{width:100%}#panel-collapse vs-button::part(label){filter:none}.fdy-propsblock{display:flex;flex-direction:column;gap:8px}.fdy-propsblock-head{display:flex;align-items:center;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-top:6px}.fdy-propsblock-toggle{display:flex;align-items:center;gap:6px;flex:1;min-width:0;padding:2px 0;border:none;background:transparent;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer}.fdy-propsblock-toggle:hover{color:var(--text)}.fdy-propsblock-chev{display:inline-flex;transition:transform var(--dur-mid) var(--ease-out)}.fdy-propsblock-chev svg{display:block;width:13px;height:13px}.fdy-propsblock-toggle[aria-expanded=false] .fdy-propsblock-chev{transform:rotate(-90deg)}.fdy-propsblock-panel{display:grid;grid-template-rows:1fr;transition:grid-template-rows var(--dur-mid) var(--ease-out)}.fdy-propsblock-panel.is-closed{grid-template-rows:0fr}.fdy-propsblock-clip{overflow:hidden;min-height:0}@media(prefers-reduced-motion:reduce){.fdy-propsblock-panel,.fdy-propsblock-chev{transition:none}}.fdy-copy{background:transparent;border:none;color:var(--text-secondary);font-family:inherit;font-size:11px;cursor:pointer;padding:2px 6px;border-radius:4px}.fdy-copy:hover{color:var(--text);background:var(--bg-elevated)}.fdy-copy svg{display:block;width:15px;height:15px}.fdy-copy.is-ok{color:var(--success)}@keyframes fdy-tick-pop{0%{transform:scale(.4);opacity:0}55%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}@keyframes fdy-tick-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.fdy-copy.is-ok svg,.fdy-copy-icon.is-ok svg{animation:fdy-tick-pop .34s cubic-bezier(.34,1.56,.64,1) both}.fdy-copy.is-ok svg path,.fdy-copy-icon.is-ok svg path{stroke-dasharray:1;stroke-dashoffset:1;animation:fdy-tick-draw .42s cubic-bezier(.22,1,.36,1) .08s forwards}@media(prefers-reduced-motion:reduce){.fdy-copy.is-ok svg,.fdy-copy-icon.is-ok svg,.fdy-copy.is-ok svg path,.fdy-copy-icon.is-ok svg path{animation:none;stroke-dashoffset:0}}.fdy-json{margin:0;padding:10px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-input);font-family:var(--font-mono);font-size:12px;line-height:1.5;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word}.fdy-code-actions{display:flex;align-items:center;gap:8px}.fdy-action-icon{display:inline-flex;align-items:center;justify-content:center}.fdy-action-icon svg{width:19px;height:19px;display:block}.vsb-ico{display:inline-flex;align-items:center;flex:none}.vsb-ico svg{width:16px;height:16px;display:block}.vsb-txt{white-space:nowrap}.fdy-action-label{font-size:13px;font-weight:600;letter-spacing:-.01em;white-space:nowrap}.fdy-code-actions .fdy-action-btn:hover:not(:disabled){background:#fff!important;border-color:transparent!important;color:#000!important;box-shadow:0 6px 20px -8px #00000080}.fdy-split{display:inline-flex;align-items:center}.fdy-code-actions .fdy-split>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.fdy-split__fab{position:relative;display:inline-flex;margin-left:-1px}.fdy-code-actions .fdy-split__fab .btn{border-top-left-radius:0;border-bottom-left-radius:0}.fdy-split>.btn:hover,.fdy-split__fab:hover{z-index:1}.fdy-split__fab .fdy-action-icon svg{width:16px;height:16px}.fdy-ai-menu.dd--p-bottom-start .dd__panel{border-top-left-radius:0}.fdy-ai-menu.dd--p-bottom-end .dd__panel{border-top-right-radius:0}.fdy-ai-menu.dd--p-top-start .dd__panel{border-bottom-left-radius:0}.fdy-ai-menu.dd--p-top-end .dd__panel{border-bottom-right-radius:0}.fdy-ai-list{padding:6px}.fdy-ai-list__title{margin:2px 8px 8px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted, #888)}.fdy-ai-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:0;border-radius:12px;corner-shape:squircle;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .14s ease}.fdy-ai-item:hover,.fdy-ai-item:focus-visible{background:color-mix(in srgb,var(--text) 8%,transparent);outline:none}.fdy-ai-item__logo{display:inline-flex;flex:none;width:30px;height:30px;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:9px;corner-shape:squircle}.fdy-ai-item__logo svg{display:block;width:auto;height:auto;max-width:18px;max-height:16px}.fdy-ai-item__text{display:flex;flex-direction:column;gap:1px;min-width:0}.fdy-ai-item__label{font-size:13px;font-weight:600;letter-spacing:-.01em}.fdy-ai-item__hint{font-size:11px;color:var(--text-muted, #888);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fdy-card-act{position:absolute;top:10px;z-index:3;display:block;opacity:0;transform:scale(.7);filter:blur(6px);transition:opacity var(--dur-fast, .2s) var(--ease-out, ease),filter var(--dur-fast, .2s) var(--ease-out, ease),transform var(--dur-mid, .24s) var(--ease-spring, cubic-bezier(.34, 1.56, .64, 1));--ctrl-h-sm: 36px}.fdy-card-act--like{right:10px}.fdy-card-act--copy{right:52px}.fdy-card-act--dl{right:94px}.fdy-card-act--dl.is-solo{right:52px}.card:hover .fdy-card-act,.fdy-card-act:focus-within,.fdy-card-act--like.is-on{opacity:1;transform:none;filter:none}@media(hover:none){.fdy-card-act{opacity:1;transform:none;filter:none}}@media(prefers-reduced-motion:reduce){.fdy-card-act{transition:opacity var(--dur-fast, .2s) var(--ease-out, ease);transform:none;filter:none}}.fdy-card-act .btn{backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%)}.fdy-card-act .fdy-like-icon svg,.fdy-card-act .fdy-copy-icon svg{width:18px!important;height:18px!important}.fdy-card-act .btn{border-color:transparent!important;border-width:0!important;background:color-mix(in srgb,var(--bg-card) 45%,transparent)!important}.fdy-card-act .btn .fx-glow{display:none!important}.fdy-card-act .btn:hover:not(:disabled){border-color:transparent!important;background:color-mix(in srgb,var(--bg-card) 65%,transparent)!important}@keyframes fdy-like-pop{0%{transform:scale(.55)}55%{transform:scale(1.3)}to{transform:scale(1)}}.fdy-copy-icon svg{display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.fdy-copy-icon.is-ok{color:var(--success, #51cf66)}.fdy-copy-icon.is-pop svg{animation:fdy-like-pop .48s var(--ease-spring, cubic-bezier(.34, 1.56, .64, 1))}@media(prefers-reduced-motion:reduce){.fdy-copy-icon.is-pop svg{animation:none}}.nav__tools vs-button[borderless]::part(label),.navauth vs-button[borderless]::part(label){opacity:1!important;filter:none!important}.nav__tools .btn--borderless .btn__label,.navauth .btn--borderless .btn__label{opacity:1!important;filter:none!important}.nav__tools .btn--borderless .fdy-action-icon,.navauth .btn--borderless .fdy-action-icon,.nav__tools vs-button[borderless] .fdy-action-icon,.navauth vs-button[borderless] .fdy-action-icon{filter:drop-shadow(0 0 5px rgb(255 255 255 / .7));opacity:calc(.5 + .5 * var(--glow, 0));transition:opacity .16s ease}.nav__tools .btn--borderless .fdy-like-icon.is-on,.navauth .btn--borderless .fdy-like-icon.is-on,.nav__tools vs-button[borderless] .fdy-like-icon.is-on,.navauth vs-button[borderless] .fdy-like-icon.is-on{opacity:1;filter:drop-shadow(0 0 5px rgb(255 107 107 / .5))}.nav__more .navmore__trigger{position:relative;z-index:0;display:inline-flex;align-items:center;gap:5px;height:var(--ctrl-h-sm, 32px);padding:0 9px 0 12px;border-radius:999px;color:var(--text);cursor:pointer}.nav__more .navmore__trigger:before,.nav__more .navmore__trigger:after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;pointer-events:none;transition:opacity var(--dur-fast, .2s) var(--ease-out, ease),transform .32s var(--ease-spring, cubic-bezier(.34, 1.56, .64, 1))}.nav__more .navmore__trigger:before{z-index:-1;background:radial-gradient(90px circle at var(--mx, 50%) var(--my, 50%),color-mix(in srgb,var(--text) 16%,transparent),transparent 68%),color-mix(in srgb,var(--text) 6%,transparent);backdrop-filter:blur(14px) saturate(170%);-webkit-backdrop-filter:blur(14px) saturate(170%);transform:scale(.9)}.nav__more .navmore__trigger:after{z-index:-1;padding:1px;background:radial-gradient(70px circle at var(--mx, 50%) var(--my, 50%),color-mix(in srgb,var(--text) 55%,transparent),transparent 60%);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;-webkit-mask-composite:xor;transform:scale(.94)}.nav__more .navmore__trigger:hover:before,.nav__more .navmore__trigger:hover:after,#nav-more vs-dropdown[open] .navmore__trigger:before,#nav-more vs-dropdown[open] .navmore__trigger:after{opacity:1;transform:none}.nav__more .navmore__trigger:active:before{transform:scale(.97)}@media(prefers-reduced-motion:reduce){.nav__more .navmore__trigger:before,.nav__more .navmore__trigger:after{transform:none;transition:opacity .16s ease}.nav__more .navmore__trigger:active:before{transform:none}}.nav__more .navmore__label{font-size:13px;font-weight:500;line-height:1;letter-spacing:-.01em;color:var(--text);opacity:.6;transition:opacity .16s ease}.nav__more .navmore__caret{width:15px;height:15px;display:block;opacity:.5;transition:transform .26s var(--ease-spring, cubic-bezier(.34, 1.56, .64, 1)),opacity .16s ease}.nav__more .navmore__trigger:hover .navmore__label,#nav-more vs-dropdown[open] .navmore__label{opacity:1}.nav__more .navmore__trigger:hover .navmore__caret,.nav__more .navmore__trigger:active .navmore__caret{opacity:.9}#nav-more vs-dropdown[open] .navmore__caret{opacity:1;transform:rotate(180deg)}@media(prefers-reduced-motion:reduce){.nav__more .navmore__caret{transition:opacity .16s ease}}.navmore__panel{--dd-item-h: 42px;--dd-pad: 7px;--dd-item-gap: 13px;--dd-item-px: 12px;--dd-item-r: 11px;--dd-icon-sz: 19px;--fs: 13.5px}.navmore__nohdr{display:none}.bgdev{position:absolute;left:8px;right:8px;bottom:8px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px;border-radius:12px;background:color-mix(in srgb,#000 62%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgb(255 255 255 / .12);opacity:0;transform:translateY(6px);transition:opacity .16s ease,transform .22s cubic-bezier(.22,1,.36,1),border-color .16s ease;pointer-events:none}.card:hover .bgdev,.bgdev:focus-within{opacity:1;transform:none;pointer-events:auto}.bgdev.is-busy{opacity:.55;pointer-events:none}.bgdev.is-error{border-color:#ff6369}.bgdev__tier{display:inline-flex;padding:2px;border-radius:9px;background:#ffffff14}.bgdev__seg{appearance:none;border:0;cursor:pointer;font:inherit;font-size:11px;font-weight:600;line-height:1;padding:5px 9px;border-radius:7px;color:#ffffffb3;background:transparent;transition:background .14s ease,color .14s ease}.bgdev__seg.is-on{color:#0a0a0a;background:#fff}.bgdev__seg[data-act=pro].is-on{color:#fff;background:var(--accent, #6354f6)}.bgdev__use{appearance:none;border:1px solid rgb(255 255 255 / .18);cursor:pointer;font:inherit;font-size:11px;font-weight:700;line-height:1;padding:6px 12px;border-radius:8px;color:#ffffffd9;background:#ffffff0f;transition:background .14s ease,color .14s ease,border-color .14s ease}.bgdev__use.is-on{color:#05130b;background:#30c46c;border-color:#30c46c}.fdy-nav-badge{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 4px;display:grid;place-items:center;border-radius:999px;font-size:10px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;color:#fff;background:var(--danger, #e5484d);box-shadow:0 0 0 2px var(--bg);pointer-events:none;z-index:2}.fdy-like-icon svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round;transition:fill var(--dur-fast, .2s) var(--ease-out, ease)}.fdy-like-icon.is-on{color:var(--danger, #ff6b6b)}.fdy-like-icon.is-on svg{fill:currentColor}.fdy-like-icon.is-pop svg{animation:fdy-like-pop .48s var(--ease-spring, cubic-bezier(.34, 1.56, .64, 1))}@media(prefers-reduced-motion:reduce){.fdy-like-icon.is-pop svg{animation:none}}.play .panel{width:calc(var(--panel-width) - 14px)}html[data-panel=collapsed] .play{grid-template-columns:1fr 0px}html.fdy-panel-anim .play{transition:grid-template-columns .34s var(--ease-out, ease)}.panel__collapse{margin-left:auto;flex:none}.panel__collapse svg{width:17px;height:17px;display:block}.fdy-panel-tab{position:fixed;top:18px;right:0;z-index:40;opacity:0;pointer-events:none;transform:translate(100%);transition:transform .34s var(--ease-spring, cubic-bezier(.34, 1.56, .64, 1)),opacity .2s var(--ease-out, ease)}.fdy-panel-tab vs-button::part(button){border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.fdy-panel-tab svg{width:16px;height:16px;display:block}html[data-panel=collapsed] .fdy-panel-tab{opacity:1;pointer-events:auto;transform:translate(0)}@media(prefers-reduced-motion:reduce){html.fdy-panel-anim .play,.fdy-panel-tab{transition:none}}@media(max-width:900px){.play .panel{width:auto}html[data-panel=collapsed] .play{grid-template-columns:1fr}.fdy-panel-tab,.panel__collapse{display:none}}.fdy-rail-tab{position:fixed;top:50%;left:0;z-index:40;opacity:0;pointer-events:none;transform:translate(-100%,-50%);transition:transform .34s var(--ease-spring, cubic-bezier(.34, 1.56, .64, 1)),opacity .2s var(--ease-out, ease)}.fdy-rail-tab vs-button::part(button){border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.fdy-rail-tab svg{width:16px;height:16px;display:block}html[data-rail=collapsed] .fdy-rail-tab{opacity:1;pointer-events:auto;transform:translateY(-50%)}@media(prefers-reduced-motion:reduce){.fdy-rail-tab{transition:none}}@media(max-width:900px){.fdy-rail-tab{display:none}}html.fdy-sheet .play .stage__center{padding:0}html.fdy-sheet .play .frame,html.fdy-sheet .play .frame[data-vp=mobile],html.fdy-sheet .play .frame[data-vp=tablet],html.fdy-sheet .play .frame[data-vp=desktop]{width:100%;max-width:none;height:100%;min-height:0;max-height:none;aspect-ratio:auto;border:0;border-radius:0;background:transparent}html.fdy-sheet .play .stage .frame[data-vp] .frame__inner{padding:var(--sheet-inset, 0);overflow:hidden;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);place-items:var(--sheet-place, stretch)}html.fdy-sheet .play .stage .frame__inner>.vp-host{width:100%;max-width:100%;min-width:0;height:var(--sheet-host-h, 100%);min-height:0}html.fdy-sheet .play .stage .frame__inner .vp-host>*{width:var(--sheet-child-w, 100%);max-width:100%;min-width:0;height:var(--sheet-host-h, 100%);min-height:0}html.fdy-sheet .play .frame[data-vp] .frame__bar,html.fdy-sheet .play .frame[data-vp] .frame__cam,html.fdy-sheet .play .frame[data-vp] .frame__island,html.fdy-sheet .play .frame[data-vp] .frame__home,html.fdy-sheet .play .stage__vp,html.fdy-sheet .play .stage__nav{display:none}html.fdy-sheet .play{grid-template-rows:1fr}html.fdy-sheet .play .panel{position:fixed;left:0;right:0;bottom:0;z-index:45;margin:0;width:auto;height:88dvh;max-height:none;overflow:visible;border-radius:20px 20px 0 0;border-bottom:none;box-shadow:0 -18px 50px -18px #000000a6;transform:translateY(var(--sheet-y, 100%))}html.fdy-sheet[data-sheet=closed] .play .panel{pointer-events:none}html.fdy-sheet .play .stage__bar{position:fixed;left:12px;right:12px;bottom:calc(max(var(--sheet-visible, 0px),var(--strip-h, 0px)) + 12px);z-index:46;display:flex;align-items:center;justify-content:space-around;gap:2px;padding:5px 6px;border-radius:999px;border:1px solid var(--border);background:color-mix(in srgb,var(--bg) 70%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 12px 34px -14px #000000b3}html.fdy-sheet.fdy-sheet-anim .play .stage__bar{transition:bottom .34s cubic-bezier(.32,.72,0,1),opacity var(--dur-fast, .2s) var(--ease-out, ease)}html.fdy-sheet[data-sheet=full] .play .stage__bar{opacity:0;pointer-events:none}html.fdy-sheet .play .stage__bar>*{position:static;flex:0 0 auto;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:0;inset:auto}html.fdy-sheet .play .stage__bar #code-actions{display:contents}html.fdy-sheet .play .stage__bar .btn{background:transparent;border-color:transparent;box-shadow:none;color:var(--text)}@media(max-width:400px){html.fdy-sheet .play .stage__bar .fdy-action-label{display:none}}html.fdy-sheet .play .stage__topright:empty{display:none}html.fdy-sheet .play .stage__theme,html.fdy-sheet .play .stage__tokens,html.fdy-sheet .play .stage__license{display:none}html.fdy-sheet .play .stage__bar .stage__next-btn[data-disabled]{opacity:.35;pointer-events:none}html.fdy-sheet.fdy-sheet-anim .play .panel{transition:transform .34s cubic-bezier(.32,.72,0,1)}@media(prefers-reduced-motion:reduce){html.fdy-sheet.fdy-sheet-anim .play .panel{transition-duration:1ms}}.panel__grab{display:none}html.fdy-sheet .play .panel__grab{display:block;width:100%;height:26px;padding:10px 0 0;border:0;background:none;cursor:grab;touch-action:none;-webkit-tap-highlight-color:transparent}html.fdy-sheet .play .panel__grab:active{cursor:grabbing}html.fdy-sheet .play .panel__grip{display:block;width:38px;height:4px;margin:0 auto;border-radius:999px;background:var(--border-strong, #3a3a3a);transition:background var(--dur-fast, .2s) var(--ease-out, ease)}html.fdy-sheet .play .panel__grab:hover .panel__grip,html.fdy-sheet .play .panel__grab:focus-visible .panel__grip{background:var(--text-muted, #888)}html.fdy-sheet .play .panel__head{touch-action:none}html.fdy-sheet .play .panel__grab:focus-visible{outline:none}html.fdy-sheet .play .panel__body{overflow:hidden}html.fdy-sheet #controls-root .fdy-controls-vsb.vs-sb>.vs-sb__vp>.vs-sb__content{padding-bottom:calc(20px + var(--sheet-hidden, 0px))}@media(prefers-reduced-motion:reduce){html.fdy-sheet.fdy-sheet-anim .play .stage__theme,html.fdy-sheet.fdy-sheet-anim .play .stage__tokens,html.fdy-sheet.fdy-sheet-anim .play .stage__vp,html.fdy-sheet.fdy-sheet-anim .play .stage__topright{transition-duration:1ms}}.fdy-variants__face{display:inline-flex;align-items:center;gap:8px;height:var(--ctrl-h-sm, 32px);padding:0 var(--ctrl-px-sm, 12px);border:1px solid var(--inp-border, #2a2a2a);border-radius:var(--ctrl-r-sm, 10px);background:var(--btn-secondary-bg, #1a1a1a);color:var(--inp-text, #ededed);font-size:var(--ctrl-fs-sm, 13px);font-weight:500;line-height:1;white-space:nowrap;transition:background-color .2s var(--ease-out, ease),border-color .2s var(--ease-out, ease)}@supports (corner-shape: squircle){.fdy-variants__face{corner-shape:squircle;border-radius:calc(var(--ctrl-r-sm, 10px) * 1.7)}}.fdy-variants__face:hover{background:var(--btn-secondary-bg-hover, #242424);border-color:var(--inp-border-hover, #3d3d3d)}.fdy-variants__icon{display:inline-flex}.fdy-variants__icon svg{width:16px;height:16px;display:block}.fdy-variants__count{font-size:11px;color:var(--text-muted, #888);font-variant-numeric:tabular-nums}.fdy-variants__head{display:flex;flex-direction:column;gap:2px;padding:8px 10px 6px}.fdy-variants__head-title{font-size:13px;font-weight:600;color:var(--text)}.fdy-variants__head-sub{font-size:11px;color:var(--text-muted, #888)}.dd.vgrid-panel{--vgrid-max: min(80vh, 660px)}.dd.vgrid-panel .dd__panel{max-height:var(--vgrid-max)}.fdy-code-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:70vh;padding:32px;text-align:center}.fdy-code-state__msg{margin:0;font-size:13px;color:var(--text-muted)}.fdy-code-msg{padding:40px 24px;text-align:center;color:var(--text-muted);font-size:14px}.fdy-code-gate{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:70vh;padding:44px 32px;text-align:center}.fdy-code-gate__lock{display:inline-flex;color:var(--text-secondary)}.fdy-code-gate__lock svg{width:40px;height:40px}.fdy-code-gate__title{margin:6px 0 0;font-size:17px;font-weight:600;color:var(--text)}.fdy-code-gate__sub{margin:0 0 8px;max-width:320px;font-size:13px;line-height:1.5;color:var(--text-muted)}#back-btn .btn{background:transparent;border-color:var(--border);color:var(--text)}#back-btn .btn .btn__label{color:var(--text)}#back-btn .btn:hover:not(:disabled){background:color-mix(in srgb,var(--text) 8%,transparent);border-color:var(--border-hover)}.vp-fade{opacity:0;transition:opacity .22s ease}.vp-fade.vp-fade--in{opacity:1}@media(prefers-reduced-motion:reduce){.vp-fade{transition:none}}.plan__rim{position:absolute;inset:0;z-index:4;display:block;pointer-events:none;--ctrl-h-md: 100%;--ctrl-r-md: 18px}.plan__rim vs-button-chrome{display:block;width:100%;height:100%}.plan__badge{position:absolute;top:-11px;left:50%;transform:translate(-50%);z-index:5;display:inline-flex;align-items:center;justify-content:center;padding:4px 11px;border-radius:999px;overflow:hidden;isolation:isolate;white-space:nowrap;background:#07060c;box-shadow:inset 0 0 0 1px #ffffff24}.plan__badge-txt{position:relative;z-index:4;font-size:11px;font-weight:600;letter-spacing:.02em;color:#fff;text-shadow:0 0 6px rgba(0,0,0,.7)}.plan__badge-sheen{position:absolute;inset:0;z-index:3;border-radius:inherit;background:radial-gradient(103% 135% at 65% 50%,#d9d9d900 27%,#ffffff42)}.plan__badge-blobs{position:absolute;inset:0;z-index:1;border-radius:inherit;filter:saturate(1.35) brightness(1.06)}.plan__badge-blobs i{position:absolute;top:50%;left:50%;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;filter:blur(10px);will-change:transform}.plan__badge-blobs i:nth-child(1){background:#02defc;animation:pro-blob-a 5s ease-in-out infinite}.plan__badge-blobs i:nth-child(2){background:#7ffe00;animation:pro-blob-b 6.5s ease-in-out infinite}.plan__badge-blobs i:nth-child(3){background:#fdf301;animation:pro-blob-c 6s ease-in-out infinite}.plan__badge-blobs i:nth-child(4){background:#f66315;animation:pro-blob-d 7.5s ease-in-out infinite}.plan__badge-blobs i:nth-child(5){background:#fc0197;animation:pro-blob-e 8s ease-in-out infinite}.plan__badge-blobs i:nth-child(6){background:#fe9efb;animation:pro-blob-f 9s ease-in-out infinite}@keyframes pro-blob-a{0%,to{transform:translate(-70%,-40%)}33%{transform:translate(40%,30%)}66%{transform:translate(-10%,-60%)}}@keyframes pro-blob-b{0%,to{transform:translate(60%,35%)}33%{transform:translate(-50%,-30%)}66%{transform:translate(20%,55%)}}@keyframes pro-blob-c{0%,to{transform:translate(10%,-55%)}33%{transform:translate(-65%,25%)}66%{transform:translate(55%,-15%)}}@keyframes pro-blob-d{0%,to{transform:translate(-30%,50%)}33%{transform:translate(45%,-45%)}66%{transform:translate(-55%,5%)}}@keyframes pro-blob-e{0%,to{transform:translate(55%,-25%)}33%{transform:translate(-40%,40%)}66%{transform:translate(15%,-50%)}}@keyframes pro-blob-f{0%,to{transform:translate(-45%,20%)}33%{transform:translate(35%,-35%)}66%{transform:translate(-20%,55%)}}@media(prefers-reduced-motion:reduce){.plan__badge-blobs i,.card__pro-blobs i{animation:none}}
