@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer noir{:root,[data-theme=dark]{--nc-bg:#1a1b26;--nc-sunk:#13141c;--nc-raised:#24283b;--nc-surface:#1f2130;--nc-fg:#a9b1d6;--nc-bright:#c0caf5;--nc-dim:#7f88b3;--nc-muted:#414868;--nc-line:#2c3048;--nc-green:#9ece6a;--nc-cyan:#7dcfff;--nc-red:#f7768e;--nc-magenta:#bb9af7;--nc-orange:#ff9e64;--nc-yellow:#e0af68;--nc-accent:var(--nc-green);--nc-on-accent:#13141c;--nc-focus:var(--nc-cyan);--nc-scrim:#0b0c128c;--nc-shadow:0 1px 0 #ffffff08 inset, 0 12px 32px -12px #0009;--nc-glass-bg:#1a1b268c;--nc-glass-strong:#13141cbd;--nc-glass-clear:#1a1b2624;--nc-glass-border:#c0caf524;--nc-glass-hi:#ffffff29;--nc-glass-edge:#00000073;--nc-glass-shadow:0 18px 40px -18px #000000bf;--nc-ambient:.3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--nc-bg:#fffcf0;--nc-sunk:#f2f0e5;--nc-raised:#e6e4d9;--nc-surface:#fbf8ec;--nc-fg:#282726;--nc-bright:#100f0f;--nc-dim:#6f6e69;--nc-muted:#cecdc3;--nc-line:#dad8ce;--nc-green:#536607;--nc-cyan:#24837b;--nc-red:#af3029;--nc-magenta:#a02f6f;--nc-orange:#bc5215;--nc-yellow:#ad8301;--nc-accent:var(--nc-green);--nc-on-accent:#fffcf0;--nc-focus:var(--nc-cyan);--nc-scrim:#100f0f38;--nc-shadow:0 1px 0 #fff9 inset, 0 12px 28px -14px #100f0f40;--nc-glass-bg:#fffcf094;--nc-glass-strong:#fffcf0cc;--nc-glass-clear:#fffcf029;--nc-glass-border:#ffffffb3;--nc-glass-hi:#ffffffe6;--nc-glass-edge:#100f0f1a;--nc-glass-shadow:0 18px 40px -20px #100f0f59;--nc-ambient:.28;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root{--nc-r-sm:8px;--nc-r-md:11px;--nc-r-lg:16px;--nc-r-xl:22px;--nc-r-2xl:28px;--nc-font-mono:"JetBrains Mono Variable", ui-monospace, SFMono-Regular, Menlo, monospace;--nc-ease-out:cubic-bezier(.22, 1, .36, 1);--nc-ease-spring:cubic-bezier(.34, 1.4, .64, 1)}:where([class^=nc-],[class*=\ nc-]),:where([class^=nc-],[class*=\ nc-]):before,:where([class^=nc-],[class*=\ nc-]):after{box-sizing:border-box}:where(.nc-btn,.nc-icon-btn,.nc-check,.nc-switch,.nc-segment,.nc-tab,.nc-tabbar-item,.nc-menu-item,.nc-row,.nc-toast-action){appearance:none;font:inherit;color:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;margin:0;text-decoration:none}:where([class^=nc-],[class*=\ nc-]):focus-visible{outline:2px solid var(--nc-focus);outline-offset:2px}.nc-grow{flex:1;min-width:0}@media (prefers-reduced-motion:reduce){:where([class^=nc-],[class*=\ nc-]),:where([class^=nc-],[class*=\ nc-]):before,:where([class^=nc-],[class*=\ nc-]):after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.nc-glass,.nc-glass-strong{isolation:isolate;background:var(--nc-glass-bg);-webkit-backdrop-filter:blur(22px)saturate(180%);backdrop-filter:blur(22px)saturate(180%);border:1px solid var(--nc-glass-border);box-shadow:inset 0 1px 0 var(--nc-glass-hi), inset 0 -14px 24px -18px var(--nc-glass-edge), var(--nc-glass-shadow);position:relative}.nc-glass-strong{background:var(--nc-glass-strong)}.nc-glass[data-variant=clear]{background:var(--nc-glass-clear);-webkit-backdrop-filter:blur(6px)saturate(160%);backdrop-filter:blur(6px)saturate(160%)}.nc-glass:before,.nc-glass-strong:before{content:"";z-index:-1;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg, var(--nc-glass-hi) 0%, transparent 38%);opacity:.35;transition:opacity .3s var(--nc-ease-out);position:absolute;inset:0}:is(.nc-glass,.nc-glass-strong)[data-interactive]:before{background:radial-gradient(140px circle at var(--nc-mx,25%) var(--nc-my,0%), var(--nc-glass-hi), transparent 70%), linear-gradient(135deg, var(--nc-glass-hi) 0%, transparent 38%)}:is(.nc-glass,.nc-glass-strong)[data-interactive]:hover:before{opacity:.6}@media (prefers-reduced-transparency:reduce){.nc-glass,.nc-glass-strong,.nc-glass[data-variant=clear]{background:var(--nc-sunk);-webkit-backdrop-filter:none;backdrop-filter:none}}.nc-ambient{z-index:-1;pointer-events:none;opacity:var(--nc-ambient);position:fixed;inset:0;overflow:hidden}.nc-ambient[data-contained]{z-index:0;position:absolute}.nc-ambient-blob{filter:blur(90px);border-radius:50%;position:absolute}.nc-btn{--h:40px;height:var(--h);border-radius:var(--nc-r-md);white-space:nowrap;transition:background-color .15s, border-color .15s, color .15s, filter .15s, transform .3s var(--nc-ease-spring);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:560;line-height:1;display:inline-flex;position:relative}.nc-btn:active{transition-duration:80ms;transform:scale(.97)}.nc-btn:disabled{opacity:.5;pointer-events:none}.nc-btn[data-size=sm]{--h:32px;border-radius:var(--nc-r-sm);padding:0 12px;font-size:13px}.nc-btn[data-size=lg]{--h:48px;border-radius:var(--nc-r-lg);padding:0 22px;font-size:15px}.nc-btn[data-tone=primary]{background:var(--nc-accent);color:var(--nc-on-accent)}.nc-btn[data-tone=primary]:hover{filter:brightness(1.08)}.nc-btn[data-tone=secondary]{background:var(--nc-sunk);border-color:var(--nc-line);color:var(--nc-bright)}.nc-btn[data-tone=secondary]:hover{background:var(--nc-raised);border-color:var(--nc-muted)}.nc-btn[data-tone=quiet]{color:var(--nc-dim)}.nc-btn[data-tone=quiet]:hover{background:var(--nc-raised);color:var(--nc-bright)}.nc-btn[data-tone=danger]{border-color:var(--nc-line);color:var(--nc-red)}.nc-btn[data-tone=danger]:hover{border-color:color-mix(in oklab, var(--nc-red) 50%, transparent);background:color-mix(in oklab, var(--nc-red) 10%, transparent)}.nc-btn[data-tone=glass]{color:var(--nc-bright);border-color:var(--nc-glass-border);background:var(--nc-glass-bg);border-radius:999px}.nc-btn[data-tone=glass]:active{transform:scale(1.04)}.nc-icon-btn{--s:36px;width:var(--s);height:var(--s);border-radius:var(--nc-r-md);color:var(--nc-dim);transition:background-color .15s, color .15s, transform .3s var(--nc-ease-spring);background:0 0;border:1px solid #0000;flex-shrink:0;place-items:center;padding:0;display:inline-grid;position:relative}.nc-icon-btn:hover{background:var(--nc-raised);color:var(--nc-bright)}.nc-icon-btn:active{transition-duration:80ms;transform:scale(.92)}.nc-icon-btn[data-size=sm]{--s:30px;border-radius:var(--nc-r-sm)}.nc-icon-btn[data-size=lg]{--s:44px}.nc-icon-btn[data-tone=secondary]{background:var(--nc-sunk);border-color:var(--nc-line);color:var(--nc-bright)}.nc-icon-btn[data-tone=glass]{color:var(--nc-bright);border-color:var(--nc-glass-border);background:var(--nc-glass-bg);border-radius:999px}.nc-icon-btn[data-tone=glass]:active{transform:scale(1.08)}.nc-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex-shrink:0;animation:.7s linear infinite nc-spin;display:inline-block}@keyframes nc-spin{to{transform:rotate(1turn)}}.nc-input{border:1px solid var(--nc-line);border-radius:var(--nc-r-md);background:var(--nc-sunk);width:100%;height:40px;color:var(--nc-bright);font:inherit;padding:0 12px;font-size:14px;transition:border-color .15s,box-shadow .2s}.nc-input::placeholder{color:color-mix(in oklab, var(--nc-dim) 75%, transparent)}.nc-input:hover{border-color:var(--nc-muted)}.nc-input:focus{border-color:var(--nc-focus);box-shadow:0 0 0 3px color-mix(in oklab, var(--nc-focus) 18%, transparent);outline:none}.nc-textarea{resize:vertical;height:auto;padding:10px 12px;line-height:1.55}.nc-field,.nc-field-control{gap:6px;display:grid}.nc-field-label{color:var(--nc-fg);font-size:13px;font-weight:550}.nc-field-note{color:var(--nc-dim);margin:0;font-size:12px}.nc-field[data-invalid] .nc-input{border-color:var(--nc-red)}.nc-field[data-invalid] .nc-field-note{color:var(--nc-red)}.nc-check{border:2px solid var(--nc-muted);width:22px;height:22px;transition:background-color .2s, border-color .2s, transform .3s var(--nc-ease-spring);background:0 0;border-radius:50%;flex-shrink:0;place-items:center;padding:0;display:grid}.nc-check[aria-checked=true]{background:var(--nc-accent);border-color:var(--nc-accent)}.nc-check:active{transform:scale(.88)}.nc-check svg{fill:none;width:13px;height:13px;stroke:var(--nc-on-accent);stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round}.nc-check:disabled,.nc-switch:disabled{opacity:.45;pointer-events:none}.nc-check-row{color:var(--nc-fg);cursor:pointer;align-items:center;gap:10px;font-size:14px;display:flex}.nc-check-row[data-disabled]{cursor:default;opacity:.6}.nc-switch{--w:52px;--h:32px;--t:28px;--stretch:0px;width:var(--w);height:var(--h);background:var(--nc-muted);border:0;border-radius:999px;flex-shrink:0;padding:0;transition:background-color .25s;position:relative}.nc-switch[aria-checked=true]{background:var(--nc-accent)}.nc-switch-thumb{width:calc(var(--t) + var(--stretch));height:var(--t);transition:transform .42s var(--nc-ease-spring), width .3s var(--nc-ease-spring), background-color .2s, box-shadow .2s;background:#fff;border-radius:999px;position:absolute;top:2px;left:2px;box-shadow:0 2px 6px #00000038,0 0 0 .5px #0000000d}.nc-switch[aria-checked=true] .nc-switch-thumb{transform:translateX(calc(var(--w) - var(--t) - var(--stretch) - 4px))}.nc-switch:active{--stretch:8px}.nc-switch:active .nc-switch-thumb{background:#ffffffb8;box-shadow:inset 0 1px #fffffff2,inset 0 -6px 10px -8px #00000059,0 6px 16px #00000040}.nc-slider{appearance:none;cursor:pointer;background:0 0;width:100%;height:28px;margin:0}.nc-slider::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--nc-accent) var(--nc-p,50%), var(--nc-muted) var(--nc-p,50%));border-radius:999px;height:6px}.nc-slider::-moz-range-track{background:var(--nc-muted);border-radius:999px;height:6px}.nc-slider::-moz-range-progress{background:var(--nc-accent);border-radius:999px;height:6px}.nc-slider::-webkit-slider-thumb{-webkit-appearance:none;width:30px;height:20px;transition:transform .35s var(--nc-ease-spring), background-color .2s;background:#fff;border-radius:999px;margin-top:-7px;box-shadow:0 2px 6px #00000040,0 0 0 .5px #0000000f}.nc-slider::-moz-range-thumb{width:30px;height:20px;transition:transform .35s var(--nc-ease-spring), background-color .2s;background:#fff;border:0;border-radius:999px;box-shadow:0 2px 6px #00000040,0 0 0 .5px #0000000f}.nc-slider:active::-webkit-slider-thumb{background:#ffffffb3;transform:scale(1.4,1.3)}.nc-slider:active::-moz-range-thumb{background:#ffffffb3;transform:scale(1.4,1.3)}.nc-slider:focus-visible{outline:none}.nc-slider:focus-visible::-webkit-slider-thumb{outline:2px solid var(--nc-focus);outline-offset:2px}.nc-slider:focus-visible::-moz-range-thumb{outline:2px solid var(--nc-focus);outline-offset:2px}.nc-segmented{border-radius:var(--nc-r-md);background:var(--nc-sunk);border:1px solid var(--nc-line);gap:2px;padding:3px;display:inline-flex}.nc-segment{height:32px;color:var(--nc-dim);white-space:nowrap;background:0 0;border:0;border-radius:8px;flex:1;padding:0 14px;font-size:13px;font-weight:550;transition:color .2s;position:relative}.nc-segmented[data-size=sm] .nc-segment{height:26px;padding:0 10px;font-size:12px}.nc-segment:hover,.nc-segment[aria-checked=true]{color:var(--nc-bright)}.nc-segment-pill{border-radius:inherit;background:var(--nc-raised);position:absolute;inset:0;box-shadow:inset 0 1px #ffffff0f,0 2px 8px -2px #00000059}[data-theme=light] .nc-segment-pill{background:#fff;box-shadow:0 2px 8px -2px #100f0f33}.nc-segment-label{align-items:center;gap:6px;display:inline-flex;position:relative}.nc-pill{color:var(--nc-tone);background:color-mix(in oklab, var(--nc-tone) 14%, transparent);border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:12px;font-weight:560;line-height:18px;display:inline-flex}.nc-kbd{border:1px solid var(--nc-muted);background:var(--nc-sunk);min-width:20px;height:20px;color:var(--nc-bright);font-family:var(--nc-font-mono);border-bottom-width:2px;border-radius:6px;place-items:center;padding:0 5px;font-size:11px;font-weight:600;line-height:1;display:inline-grid}.nc-avatar{color:var(--nc-tone,var(--nc-dim));background:color-mix(in oklab, var(--nc-tone,var(--nc-dim)) 22%, var(--nc-raised));border-radius:50%;flex-shrink:0;place-items:center;font-weight:650;display:inline-grid;position:relative;overflow:hidden}.nc-avatar img{object-fit:cover;width:100%;height:100%}.nc-avatar-stack{align-items:center;display:inline-flex}.nc-avatar-stack>.nc-avatar{box-shadow:0 0 0 2px var(--nc-bg)}.nc-avatar-stack>.nc-avatar+.nc-avatar{margin-left:-4px}.nc-avatar-more{color:var(--nc-dim);background:var(--nc-raised)}.nc-overlay{z-index:1000;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.nc-overlay[data-place=top]{place-items:start center;padding-top:min(15vh,120px)}.nc-overlay[data-place=bottom]{place-items:end center;padding:0}.nc-overlay[data-place=right]{place-items:stretch end;padding:0}.nc-scrim{background:var(--nc-scrim);position:absolute;inset:0}.nc-dialog{border-radius:var(--nc-r-2xl);width:100%;max-width:440px;max-height:88dvh;color:var(--nc-fg);outline:none;padding:22px;overflow-y:auto}.nc-dialog[data-size=sm]{max-width:380px}.nc-dialog[data-size=lg]{max-width:640px}.nc-dialog-head{justify-content:space-between;align-items:flex-start;gap:16px;margin:-2px -6px 14px 0;display:flex}.nc-dialog-title,.nc-sheet-title{letter-spacing:-.01em;color:var(--nc-bright);margin:0;font-size:18px;font-weight:650}.nc-dialog-desc{color:var(--nc-dim);margin:4px 0 0;font-size:14px}.nc-dialog-body{font-size:14px;line-height:1.6}.nc-dialog-foot{justify-content:flex-end;gap:8px;margin-top:22px;display:flex}.nc-sheet{width:100%;color:var(--nc-fg);outline:none;flex-direction:column;display:flex}.nc-sheet[data-side=bottom]{border-radius:var(--nc-r-2xl) var(--nc-r-2xl) 0 0;max-width:640px;max-height:86dvh;padding-bottom:env(safe-area-inset-bottom);border-bottom:0}.nc-sheet[data-side=right]{max-width:440px;height:100%}@media (width>=640px){.nc-sheet[data-side=right]{border-radius:var(--nc-r-2xl);height:calc(100% - 16px);margin:8px}.nc-sheet[data-side=bottom]{border-radius:var(--nc-r-2xl);border-bottom:1px solid var(--nc-glass-border);margin-bottom:8px}}.nc-sheet-head{justify-content:space-between;align-items:center;gap:12px;padding:18px 14px 10px 22px;display:flex;position:relative}.nc-sheet[data-side=bottom] .nc-sheet-head{cursor:grab;touch-action:none;padding-top:24px}.nc-sheet-grabber{background:var(--nc-muted);border-radius:999px;width:36px;height:5px;margin-left:-18px;position:absolute;top:8px;left:50%}.nc-sheet-body{flex:1;padding:4px 22px 22px;font-size:14px;line-height:1.6;overflow-y:auto}.nc-popover{z-index:1100;border-radius:var(--nc-r-xl);min-width:200px;max-width:calc(100vw - 16px);color:var(--nc-fg);padding:6px;position:fixed}.nc-menu{outline:none;display:grid}.nc-menu-item{width:100%;height:36px;color:var(--nc-bright);text-align:left;background:0 0;border:0;border-radius:14px;align-items:center;gap:10px;padding:0 10px;font-size:14px;transition:background-color .12s;display:flex}.nc-menu-item:hover,.nc-menu-item:focus-visible{background:color-mix(in oklab, var(--nc-bright) 9%, transparent);outline:none}.nc-menu-item[data-danger]{color:var(--nc-red)}.nc-menu-item:disabled{opacity:.4;pointer-events:none}.nc-menu-icon{color:var(--nc-dim);display:inline-grid}.nc-menu-item[data-danger] .nc-menu-icon{color:inherit}.nc-menu-hint{color:var(--nc-dim);font-size:12px}.nc-menu-sep{background:var(--nc-glass-border);height:1px;margin:5px 10px}.nc-tooltip-anchor{display:inline-flex}.nc-tooltip{z-index:1200;color:var(--nc-bright);white-space:nowrap;pointer-events:none;border-radius:10px;padding:6px 10px;font-size:12px;font-weight:550;position:fixed}.nc-toaster{z-index:1300;pointer-events:none;flex-direction:column;align-items:flex-end;gap:8px;margin:0;padding:0;list-style:none;display:flex;position:fixed;bottom:16px;left:16px;right:16px}@media (width>=640px){.nc-toaster[data-position=bottom-right]{bottom:20px;left:auto;right:20px}}.nc-toaster[data-position=bottom]{align-items:center}.nc-toaster[data-position=top]{flex-direction:column-reverse;align-items:center;top:16px;bottom:auto}.nc-toast{border-radius:var(--nc-r-xl);pointer-events:auto;touch-action:pan-y;cursor:grab;align-items:flex-start;gap:12px;width:100%;max-width:380px;padding:12px 8px 12px 14px;display:flex}.nc-toast-icon{width:28px;height:28px;color:var(--nc-tone);background:color-mix(in oklab, var(--nc-tone) 18%, transparent);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.nc-toast-title{color:var(--nc-bright);margin:4px 0 0;font-size:14px;font-weight:560}.nc-toast-body{color:var(--nc-dim);margin:2px 0 0;font-size:13px}.nc-toast-action{background:color-mix(in oklab, var(--nc-bright) 10%, transparent);height:30px;color:var(--nc-bright);border:0;border-radius:999px;align-self:center;padding:0 10px;font-size:13px;font-weight:560}.nc-toast-action:hover{background:color-mix(in oklab, var(--nc-bright) 16%, transparent)}.nc-tabbar{border-radius:999px;gap:2px;padding:5px;display:inline-flex}.nc-tabbar-item{min-width:64px;min-height:50px;color:var(--nc-dim);background:0 0;border:0;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;padding:6px 12px;transition:color .2s;display:flex;position:relative}.nc-tabbar[data-compact] .nc-tabbar-item{min-width:46px;min-height:40px;padding:6px 10px}.nc-tabbar-item:hover,.nc-tabbar-item[aria-current=page]{color:var(--nc-bright)}.nc-tabbar-item[aria-current=page]{color:var(--nc-accent)}.nc-tabbar-pill{border-radius:inherit;background:color-mix(in oklab, var(--nc-bright) 11%, transparent);box-shadow:inset 0 1px 0 color-mix(in oklab, var(--nc-glass-hi) 60%, transparent);position:absolute;inset:0}.nc-tabbar-icon{display:inline-grid;position:relative}.nc-tabbar-label{white-space:nowrap;font-size:11px;font-weight:600;line-height:16px;display:block;position:relative;overflow:hidden}.nc-toolbar{border-radius:var(--nc-r-xl);min-height:56px;color:var(--nc-fg);align-items:center;gap:12px;padding:8px 10px 8px 16px;display:flex}.nc-toolbar[data-sticky]{z-index:50;position:sticky;top:10px}.nc-toolbar-side{align-items:center;gap:6px;display:flex}.nc-toolbar-title{min-width:0;color:var(--nc-bright);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:15px;font-weight:620;overflow:hidden}.nc-toolbar-trailing{margin-left:auto}.nc-tablist{border-bottom:1px solid var(--nc-line);scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.nc-tab{height:40px;color:var(--nc-dim);white-space:nowrap;background:0 0;border:0;padding:0 12px;font-size:14px;font-weight:550;transition:color .15s;position:relative}.nc-tab:hover,.nc-tab[aria-selected=true]{color:var(--nc-bright)}.nc-tab-line{background:var(--nc-accent);border-radius:2px;height:2px;position:absolute;bottom:-1px;left:8px;right:8px}.nc-tabpanel{outline:none;padding-top:16px}.nc-palette{border-radius:var(--nc-r-2xl);width:100%;max-width:560px;max-height:min(480px,70dvh);color:var(--nc-fg);flex-direction:column;display:flex;overflow:hidden}.nc-palette-search{border-bottom:1px solid var(--nc-glass-border);color:var(--nc-dim);align-items:center;gap:10px;padding:0 18px;display:flex}.nc-palette-search input{height:54px;color:var(--nc-bright);font:inherit;background:0 0;border:0;outline:none;flex:1;font-size:16px}.nc-palette-search input::placeholder{color:var(--nc-dim)}.nc-palette-list{overscroll-behavior:contain;flex:1;margin:0;padding:6px;list-style:none;overflow-y:auto}.nc-palette-group{letter-spacing:.04em;text-transform:uppercase;color:var(--nc-dim);margin:0;padding:10px 12px 4px;font-size:11px;font-weight:650}.nc-palette-item{height:40px;color:var(--nc-bright);cursor:pointer;border-radius:14px;align-items:center;gap:10px;padding:0 12px;font-size:14px;display:flex;position:relative}.nc-palette-item>:not(.nc-palette-hl){position:relative}.nc-palette-hl{border-radius:inherit;background:color-mix(in oklab, var(--nc-bright) 10%, transparent);position:absolute;inset:0}.nc-palette-icon{color:var(--nc-dim);display:inline-grid}.nc-palette-empty{text-align:center;color:var(--nc-dim);padding:28px 12px;font-size:14px}.nc-card{border:1px solid var(--nc-line);border-radius:var(--nc-r-lg);background:var(--nc-surface);box-shadow:var(--nc-shadow);color:var(--nc-fg);transition:border-color .2s, transform .35s var(--nc-ease-spring);padding:18px}.nc-card[data-interactive]{cursor:pointer}.nc-card[data-interactive]:hover{border-color:var(--nc-muted);transform:translateY(-2px)}.nc-card-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.nc-card-title{color:var(--nc-bright);margin:0;font-size:15px;font-weight:620}.nc-card-desc{color:var(--nc-dim);margin:2px 0 0;font-size:13px}.nc-list-wrap{gap:6px;display:grid}.nc-list-note{color:var(--nc-dim);margin:0;padding:0 14px;font-size:12px}.nc-list{border:1px solid var(--nc-line);border-radius:var(--nc-r-lg);background:var(--nc-surface);margin:0;padding:0;list-style:none;overflow:hidden}.nc-row{width:100%;min-height:48px;color:var(--nc-fg);text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:8px 14px;transition:background-color .12s;display:flex;position:relative}.nc-list>li+li .nc-row:before{content:"";background:var(--nc-line);height:1px;position:absolute;top:0;left:14px;right:0}.nc-list>li+li .nc-row:has(.nc-row-icon):before{left:54px}.nc-row[data-action]:hover{background:color-mix(in oklab, var(--nc-bright) 5%, transparent)}.nc-row[data-action]:active{background:color-mix(in oklab, var(--nc-bright) 9%, transparent)}.nc-row-icon{width:28px;height:28px;color:var(--nc-on-accent);background:var(--nc-tone);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.nc-row-text{flex:1;min-width:0;display:grid}.nc-row-title{color:var(--nc-bright);font-size:14px}.nc-row-sub{color:var(--nc-dim);font-size:12px}.nc-row-trailing{color:var(--nc-dim);align-items:center;gap:8px;font-size:13px;display:inline-flex}.nc-row-chevron{color:var(--nc-muted);flex-shrink:0}.nc-empty{border:1px dashed var(--nc-line);border-radius:var(--nc-r-lg);text-align:center;flex-direction:column;align-items:center;gap:6px;padding:36px 24px;display:flex}.nc-empty-icon{color:var(--nc-dim);margin-bottom:4px}.nc-empty-title{color:var(--nc-bright);margin:0;font-weight:600}.nc-empty-body{max-width:340px;color:var(--nc-dim);margin-bottom:8px;font-size:13px}.nc-skeleton{background:linear-gradient(90deg, var(--nc-raised) 0%, color-mix(in oklab, var(--nc-raised) 50%, var(--nc-line)) 50%, var(--nc-raised) 100%) 0 0 / 200% 100%;border-radius:6px;animation:1.6s ease-in-out infinite nc-shimmer;display:block}.nc-skeleton-text{gap:8px;display:grid}@keyframes nc-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.nc-progress{background:var(--nc-muted);border-radius:999px;height:6px;position:relative;overflow:hidden}.nc-progress-bar{border-radius:inherit;background:var(--nc-accent);transform-origin:0;position:absolute;inset:0}.nc-progress[data-indeterminate] .nc-progress-bar{width:40%;animation:nc-indeterminate 1.3s var(--nc-ease-out) infinite}@keyframes nc-indeterminate{0%{transform:translate(-100%)}to{transform:translate(250%)}}.nc-ring{transform:rotate(-90deg)}.nc-ring circle{fill:none}.nc-ring-track{stroke:var(--nc-muted)}.nc-ring-bar{stroke:var(--nc-accent);stroke-linecap:round}}@font-face{font-family:Camiro;src:url(/assets/noirlang-font-CBV71Fnz.ttf)format("truetype");font-display:swap}html{background:var(--nc-bg);color:var(--nc-fg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-variation-settings:"opsz" 14;scroll-padding-top:88px;font-family:Bricolage Grotesque Variable,ui-sans-serif,system-ui,sans-serif;font-size:15px;line-height:1.55}body{background:0 0;min-height:100dvh;margin:0}h1,h2,h3{color:var(--nc-bright);font-variation-settings:"opsz" 96, "wdth" 85;letter-spacing:-.02em;text-wrap:balance;margin:0}p{margin:0}::selection{background:color-mix(in oklab, var(--nc-accent) 35%, transparent);color:var(--nc-bright)}.prerender{max-width:760px;margin:0 auto;padding:96px 24px}.prerender h1{font-size:clamp(36px,6vw,54px)}.prerender h2{text-transform:uppercase;letter-spacing:.1em;color:var(--nc-dim);margin-top:48px;font-size:13px}.prerender h3{margin-top:20px;font-size:19px}.prerender p{color:var(--nc-dim);margin-top:6px}.prerender nav{display:none}.topbar{width:calc(100% - 24px);max-width:1160px;margin:10px auto 0}.brand{color:var(--nc-bright);letter-spacing:-.01em;align-items:center;gap:10px;font-size:16px;font-weight:640;text-decoration:none;display:inline-flex}.brand-logo{font-family:"Camiro", var(--nc-font-mono);letter-spacing:.08em;color:var(--nc-accent);font-size:20px;font-weight:400;line-height:1}.brand-sep{background:var(--nc-line);width:1px;height:16px}.brand-name{color:var(--nc-dim);font-weight:560}.search-btn{border:1px solid var(--nc-glass-border);background:color-mix(in oklab, var(--nc-sunk) 40%, transparent);height:34px;color:var(--nc-dim);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 6px 0 12px;font-size:13px;transition:color .15s,border-color .15s;display:inline-flex}.search-btn:hover{color:var(--nc-bright);border-color:var(--nc-muted)}.search-btn:focus-visible{outline:2px solid var(--nc-focus);outline-offset:2px}.search-keys{gap:2px;margin-left:14px;display:inline-flex}.layout{grid-template-columns:188px minmax(0,1fr);gap:64px;max-width:1160px;margin:0 auto;padding:0 24px;display:grid}.sidebar{scrollbar-width:none;align-self:start;max-height:calc(100dvh - 110px);padding:40px 0 24px;position:sticky;top:90px;overflow-y:auto}.side-group+.side-group{margin-top:22px}.side-label{letter-spacing:.08em;text-transform:uppercase;color:var(--nc-dim);margin-bottom:6px;font-size:11px;font-weight:650}.side-link{border-left:1px solid var(--nc-line);color:var(--nc-dim);padding:3px 0 3px 12px;font-size:14px;text-decoration:none;transition:color .15s,border-color .15s;display:block;position:relative}.side-link:hover{color:var(--nc-bright)}.side-link[aria-current]{color:var(--nc-bright);border-left-color:var(--nc-accent)}.main{min-width:0}.intro{grid-template-columns:minmax(0,1fr);gap:18px;padding:72px 0 8px;display:grid}.intro h1{letter-spacing:-.035em;font-size:clamp(36px,6vw,54px);font-weight:720;line-height:1}.lede{max-width:60ch;color:var(--nc-fg);font-size:17px}.install{border:1px solid var(--nc-line);background:var(--nc-sunk);border-radius:12px;justify-self:start;align-items:center;gap:8px;padding:4px 4px 4px 14px;display:inline-flex}.install code{font-family:var(--nc-font-mono);color:var(--nc-bright);font-size:13px}.install code:before{content:"$ ";color:var(--nc-dim)}.group{border-top:1px solid var(--nc-line);margin-top:72px;padding-top:18px}.group-title{letter-spacing:.1em;text-transform:uppercase;color:var(--nc-dim);font-variation-settings:normal;font-size:12px;font-weight:650}.doc{margin-top:36px;scroll-margin-top:88px}.doc h3{font-size:21px;font-weight:650}.doc h3 a{color:inherit;text-decoration:none}.doc h3 a:hover:after{content:" #";color:var(--nc-muted)}.doc-desc{max-width:64ch;color:var(--nc-dim);margin-top:6px}.doc-demo{margin-top:16px}.demo-controls{flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:10px;display:flex}.demo-note{color:var(--nc-yellow);margin-top:10px;font-size:13px}.stage{border:1px solid var(--nc-line);background-color:var(--nc-surface);background-image:linear-gradient(to right, color-mix(in oklab, var(--nc-line) 55%, transparent) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in oklab, var(--nc-line) 55%, transparent) 1px, transparent 1px);background-position:-1px -1px;background-size:32px 32px;border-radius:16px 16px 0 0;flex-direction:column;min-height:200px;padding:36px 24px;display:flex;position:relative;overflow:hidden}.stage[data-tall]{min-height:380px}.stage-content{flex-direction:column;flex:1;gap:18px;width:100%;display:flex;position:relative}.stage[data-center] .stage-content{justify-content:center;align-items:center}.stage[data-backdrop=lines]{background-color:var(--nc-sunk);background-image:linear-gradient(90deg, color-mix(in oklab, var(--nc-bright) 70%, transparent) 2px, transparent 2px), linear-gradient(120deg, color-mix(in oklab, var(--nc-green) 55%, transparent), color-mix(in oklab, var(--nc-cyan) 45%, transparent) 45%, color-mix(in oklab, var(--nc-magenta) 55%, transparent));background-position:0 0;background-size:20px 100%,100% 100%}.stage[data-backdrop=color]{background-color:var(--nc-sunk);background-image:radial-gradient(circle at 18% 28%, color-mix(in oklab, var(--nc-green) 60%, transparent), transparent 38%), radial-gradient(circle at 82% 22%, color-mix(in oklab, var(--nc-magenta) 60%, transparent), transparent 40%), radial-gradient(circle at 62% 92%, color-mix(in oklab, var(--nc-orange) 55%, transparent), transparent 42%), radial-gradient(circle at 8% 96%, color-mix(in oklab, var(--nc-cyan) 55%, transparent), transparent 36%);background-size:auto}.stage[data-backdrop=type]{background:var(--nc-sunk)}.stage-type{letter-spacing:-.03em;color:color-mix(in oklab, var(--nc-fg) 32%, transparent);word-spacing:.1em;-webkit-user-select:none;user-select:none;pointer-events:none;font-size:42px;font-weight:700;line-height:1.02;position:absolute;inset:-8px -12px;overflow:hidden}.code{border:1px solid var(--nc-line);background:var(--nc-sunk);border-radius:0 0 16px 16px;margin-top:-1px;position:relative}.intro .code{border-radius:16px;max-width:640px;margin-top:4px}.code pre{font-family:var(--nc-font-mono);color:var(--nc-fg);tab-size:2;margin:0;padding:16px 52px 16px 18px;font-size:12.5px;line-height:1.65;overflow-x:auto}.code-copy{position:absolute;top:8px;right:8px}.row{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.stack{gap:14px;width:100%;display:grid}.narrow{width:100%;max-width:360px}.form{max-width:380px}.wide{width:100%;max-width:560px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:100%;max-width:620px;display:grid}.grow{flex:1;min-width:0}.mono{font-family:var(--nc-font-mono);font-variant-numeric:tabular-nums}.dim{color:var(--nc-dim)}.small{font-size:13px}.slider-row{color:var(--nc-dim);align-items:center;gap:12px;display:flex}.slider-row .mono{text-align:right;width:3ch}.pop-body{gap:10px;width:260px;padding:8px;display:grid}.pop-title{color:var(--nc-bright);font-size:13px;font-weight:600}.person{align-items:flex-start;gap:12px;display:flex}.person-text{font-size:14px}.stage[data-tall] .stage-content{flex-flow:wrap;gap:40px}.drag{cursor:grab;touch-action:none}.drag:active{cursor:grabbing}.glass-pane{border-radius:30px;flex-direction:column;justify-content:space-between;width:220px;height:132px;padding:16px 18px;display:flex}.glass-lens{border-radius:50%;place-items:center;width:140px;height:140px;display:grid}.glass-pane-label{font-family:var(--nc-font-mono);color:var(--nc-bright);font-size:12px}.glass-pane-hint{color:var(--nc-bright);font-size:14px;font-weight:560}.dock{left:50%;bottom:calc(14px + env(safe-area-inset-bottom));z-index:60;position:fixed;transform:translate(-50%)}.foot{border-top:1px solid var(--nc-line);color:var(--nc-dim);margin-top:96px;padding:24px 0 150px;font-size:13px}@media (width<=900px){.layout{grid-template-columns:minmax(0,1fr);padding:0 16px}.sidebar{display:none}.intro{padding-top:48px}}@media (width<=639px){.hide-sm{display:none}.search-btn{padding:0 10px}.cards{grid-template-columns:minmax(0,1fr)}.stage{padding:28px 16px}.nc-toaster{bottom:calc(96px + env(safe-area-inset-bottom))}.dock .nc-tabbar-item{min-width:0;padding:6px 9px}}
