:root{--sn-font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sn-font-sans: "Geist", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--sn-font-body: var(--sn-font-mono);--sn-font-display: var(--sn-font-mono);--sn-font-control: var(--sn-font-mono);--sn-display-weight: 500;--sn-display-tracking: -.045em;--sn-body-size: var(--sn-text-base);--sn-text-2xs: 11px;--sn-text-xs: 12px;--sn-text-sm: 13px;--sn-text-base: 14px;--sn-text-md: 15px;--sn-text-lg: 17px;--sn-text-xl: 20px;--sn-text-2xl: 24px;--sn-text-3xl: 28px;--sn-text-4xl: 36px;--sn-text-5xl: 48px;--sn-leading-tight: 1.2;--sn-leading-normal: 1.55;--sn-leading-relaxed: 1.75;--sn-s-1: 4px;--sn-s-2: 8px;--sn-s-3: 12px;--sn-s-4: 16px;--sn-s-5: 20px;--sn-s-6: 24px;--sn-s-7: 32px;--sn-s-8: 40px;--sn-s-9: 48px;--sn-s-10: 64px;--sn-s-11: 80px;--sn-s-12: 96px;--sn-r-none: 0;--sn-r-xs: 2px;--sn-r-sm: 4px;--sn-r-md: 6px;--sn-r-lg: 8px;--sn-r-xl: 12px;--sn-control-sm: 28px;--sn-control-md: 36px;--sn-control-lg: 44px;--sn-radius-chip: 4px;--sn-radius-control: 6px;--sn-radius-surface: 10px;--sn-pad-surface: var(--sn-s-5);--sn-container: 1080px;--sn-gutter: var(--sn-s-5);--sn-fast: .1s;--sn-base: .16s;--sn-ease: cubic-bezier(.2, 0, 0, 1);--sn-transition: var(--sn-fast) var(--sn-ease)}:root,[data-theme=dark]{--sn-bg: #0a0a0a;--sn-bg-elev-1: #111111;--sn-bg-elev-2: #181818;--sn-bg-inset: #050505;--sn-border: #1f1f1f;--sn-border-strong: #2a2a2a;--sn-border-subtle: #161616;--sn-fg: #e8e8e8;--sn-fg-muted: #a1a1a1;--sn-fg-subtle: #848484;--sn-fg-faint: #646464;--sn-fg-inverse: #0a0a0a;--sn-success: #7fc77f;--sn-warning: #d4a857;--sn-danger: #d77070;--sn-success-soft: rgba(127, 199, 127, .1);--sn-warning-soft: rgba(212, 168, 87, .1);--sn-danger-soft: rgba(215, 112, 112, .1);--sn-accent-on-dark: #8ab4f8;--sn-accent-on-light: #2a64d6}[data-theme=light]{--sn-bg: #f7f7f5;--sn-bg-elev-1: #ffffff;--sn-bg-elev-2: #ffffff;--sn-bg-inset: #efefec;--sn-border: #e2e2dd;--sn-border-strong: #c8c8c2;--sn-border-subtle: #ececea;--sn-fg: #161616;--sn-fg-muted: #545454;--sn-fg-subtle: #6b6b6b;--sn-fg-faint: #8e8e8b;--sn-fg-inverse: #ffffff;--sn-success: #257a36;--sn-warning: #8c5900;--sn-danger: #c03a3a;--sn-success-soft: rgba(37, 122, 54, .08);--sn-warning-soft: rgba(140, 89, 0, .08);--sn-danger-soft: rgba(192, 58, 58, .08)}@media(prefers-color-scheme:light){[data-theme=system]{--sn-bg: #f7f7f5;--sn-bg-elev-1: #ffffff;--sn-bg-elev-2: #ffffff;--sn-bg-inset: #efefec;--sn-border: #e2e2dd;--sn-border-strong: #c8c8c2;--sn-border-subtle: #ececea;--sn-fg: #161616;--sn-fg-muted: #545454;--sn-fg-subtle: #6b6b6b;--sn-fg-faint: #8e8e8b;--sn-fg-inverse: #ffffff;--sn-success: #257a36;--sn-warning: #8c5900;--sn-danger: #c03a3a;--sn-success-soft: rgba(37, 122, 54, .08);--sn-warning-soft: rgba(140, 89, 0, .08);--sn-danger-soft: rgba(192, 58, 58, .08)}}:root,[data-theme]{--sn-hover: color-mix(in srgb, var(--sn-fg) 6%, transparent);--sn-pressed: color-mix(in srgb, var(--sn-fg) 10%, transparent)}[data-sn-mode=powder]{--sn-font-sans: "Geist", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--sn-font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sn-font-body: var(--sn-font-sans);--sn-font-display: var(--sn-font-sans);--sn-font-control: var(--sn-font-sans);--sn-display-weight: 600;--sn-display-tracking: -.025em;--sn-body-size: var(--sn-text-md)}[data-sn-mode=frost]{--sn-font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sn-font-body: var(--sn-font-mono);--sn-font-display: var(--sn-font-mono);--sn-font-control: var(--sn-font-mono);--sn-display-weight: 500;--sn-display-tracking: -.045em;--sn-body-size: var(--sn-text-base)}[data-sn-accent=ice]{--sn-accent-on-dark: #8ab4f8;--sn-accent-on-light: #2a64d6}[data-sn-accent=glacier]{--sn-accent-on-dark: #52c3b8;--sn-accent-on-light: #0f6e68}[data-sn-accent=neutral]{--sn-accent-on-dark: #e8e8e8;--sn-accent-on-light: #161616}:root,[data-theme=dark],[data-sn-accent]{--sn-focus-ring: 0 0 0 3px color-mix(in srgb, var(--sn-accent) 35%, transparent);--sn-accent: var(--sn-accent-on-dark);--sn-accent-fg: #0a0a0a;--sn-accent-hover: color-mix(in srgb, var(--sn-accent) 85%, #ffffff);--sn-accent-active: color-mix(in srgb, var(--sn-accent) 85%, #000000);--sn-accent-soft: color-mix(in srgb, var(--sn-accent) 10%, transparent);--sn-accent-border: color-mix(in srgb, var(--sn-accent) 26%, transparent)}[data-theme=light],[data-theme=light] [data-sn-accent]{--sn-accent: var(--sn-accent-on-light);--sn-accent-fg: #ffffff;--sn-accent-hover: color-mix(in srgb, var(--sn-accent) 85%, #000000);--sn-accent-active: color-mix(in srgb, var(--sn-accent) 72%, #000000);--sn-accent-soft: color-mix(in srgb, var(--sn-accent) 8%, transparent)}@media(prefers-color-scheme:light){[data-theme=system],[data-theme=system] [data-sn-accent]{--sn-accent: var(--sn-accent-on-light);--sn-accent-fg: #ffffff;--sn-accent-hover: color-mix(in srgb, var(--sn-accent) 85%, #000000);--sn-accent-active: color-mix(in srgb, var(--sn-accent) 72%, #000000);--sn-accent-soft: color-mix(in srgb, var(--sn-accent) 8%, transparent)}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{height:100%}body{min-height:100%}body{font-family:var(--sn-font-body);font-size:var(--sn-body-size);line-height:var(--sn-leading-normal);color:var(--sn-fg);background:var(--sn-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-sn-mode]{font-family:var(--sn-font-body);font-size:var(--sn-body-size)}h1,h2{font-family:var(--sn-font-display);font-weight:var(--sn-display-weight);letter-spacing:var(--sn-display-tracking);line-height:var(--sn-leading-tight);text-wrap:balance}h3,h4{font-family:var(--sn-font-body);font-weight:600;letter-spacing:-.01em}p{text-wrap:pretty}code,kbd,pre,samp{font-family:var(--sn-font-mono);font-variant-ligatures:none}::selection{background:var(--sn-accent-soft);color:var(--sn-fg)}a{color:var(--sn-accent);text-decoration:none}a:hover{color:var(--sn-accent-hover)}:focus-visible{outline:2px solid var(--sn-accent);outline-offset:2px}a:not([class]):focus-visible{outline:none;text-decoration:underline 2px var(--sn-accent);text-underline-offset:4px}@keyframes sn-spin{to{transform:rotate(360deg)}}@keyframes sn-pulse{0%,to{opacity:.3}50%{opacity:1}}@keyframes sn-blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.sn-container{width:100%;max-width:var(--sn-container);margin-inline:auto;padding-inline:max(var(--sn-gutter),env(safe-area-inset-left,0px)) max(var(--sn-gutter),env(safe-area-inset-right,0px))}.sn-container--narrow{max-width:720px}.sn-lede{margin:0;max-width:52ch;color:var(--sn-fg-muted);font-size:var(--sn-text-lg);line-height:var(--sn-leading-normal);text-wrap:pretty}.sn-fine{margin:0;color:var(--sn-fg-subtle);font-size:var(--sn-text-xs)}.sn-fine a{color:var(--sn-fg-muted);text-decoration:underline;text-underline-offset:3px}.sn-fine a:hover{color:var(--sn-fg)}.sn-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sn-s-6);min-height:64px}.sn-brand{display:inline-flex;align-items:center;gap:10px;color:var(--sn-fg);font-family:var(--sn-font-display);font-size:var(--sn-text-md);font-weight:600;letter-spacing:-.02em;text-decoration:none}.sn-brand:hover{color:var(--sn-fg)}.sn-brand>:is(img,svg){width:24px;height:24px;flex-shrink:0}.sn-nav{display:flex;align-items:center;gap:var(--sn-s-5);font-size:var(--sn-text-base)}.sn-nav a{display:inline-flex;align-items:center;gap:6px;color:var(--sn-fg-muted);text-decoration:none;transition:color var(--sn-transition)}.sn-nav a:hover,.sn-nav a[aria-current]{color:var(--sn-fg)}@media(max-width:420px){.sn-header,.sn-nav{gap:var(--sn-s-3)}}.sn-footer{margin-top:var(--sn-s-12);padding-block:var(--sn-s-7) var(--sn-s-8);border-top:1px solid var(--sn-border-subtle);color:var(--sn-fg-subtle);font-size:var(--sn-text-xs)}.sn-footer a{color:var(--sn-fg-muted);text-decoration:none;transition:color var(--sn-transition)}.sn-footer a:hover{color:var(--sn-fg)}.sn-footer .sn-brand{color:var(--sn-fg);font-size:var(--sn-text-base)}.sn-footer__row,.sn-footer__top,.sn-footer__legal{display:flex;justify-content:space-between;flex-wrap:wrap}.sn-footer__row{align-items:center;gap:var(--sn-s-4)}.sn-footer__top{gap:var(--sn-s-8) var(--sn-s-10)}.sn-footer__top p{margin:var(--sn-s-3) 0 0}.sn-footer__legal{gap:var(--sn-s-2);margin-top:var(--sn-s-9)}.sn-footer__cols{display:flex;flex-wrap:wrap;gap:var(--sn-s-7) var(--sn-s-10)}.sn-footer__cols h2{margin:0 0 var(--sn-s-3);padding:0;border:0;color:var(--sn-fg);font:500 var(--sn-text-xs) var(--sn-font-body);letter-spacing:0}.sn-footer__cols ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--sn-s-2)}.sn-footer__links{display:flex;flex-wrap:wrap;gap:var(--sn-s-5)}.sn-faq details{border-bottom:1px solid var(--sn-border-subtle)}.sn-faq summary{display:flex;justify-content:space-between;gap:var(--sn-s-4);padding:var(--sn-s-4) 0;cursor:pointer;list-style:none;font-weight:500;transition:color var(--sn-transition)}.sn-faq summary:hover{color:var(--sn-accent)}.sn-faq summary::-webkit-details-marker{display:none}.sn-faq summary:after{content:"+";color:var(--sn-fg-subtle);font-family:var(--sn-font-mono);transition:transform var(--sn-transition)}.sn-faq details[open] summary:after{transform:rotate(45deg)}.sn-faq details>:not(summary){margin:0;padding:0 0 var(--sn-s-4);max-width:62ch;color:var(--sn-fg-muted);font-size:var(--sn-text-base)}.sn-navlist{display:flex;flex-direction:column;gap:2px}.sn-navlist__title{margin:var(--sn-s-6) 0 var(--sn-s-2);padding:0 var(--sn-s-3);color:var(--sn-fg-subtle);font-family:var(--sn-font-mono);font-size:var(--sn-text-2xs);font-weight:500;letter-spacing:.08em;text-transform:uppercase}.sn-navlist__title:first-child{margin-top:0}.sn-navlist>:is(a,button){appearance:none;display:flex;align-items:center;gap:var(--sn-s-2);min-height:var(--sn-control-sm);padding:0 var(--sn-s-3);border:0;border-radius:var(--sn-radius-control);background:none;color:var(--sn-fg-muted);font-family:var(--sn-font-body);font-size:var(--sn-text-sm);text-align:left;text-decoration:none;cursor:pointer;transition:color var(--sn-transition),background var(--sn-transition)}.sn-navlist>:is(a,button):hover{color:var(--sn-fg);background:var(--sn-hover)}.sn-navlist>:is(a,button):focus-visible{outline:none;text-decoration:none;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--sn-accent) 55%,transparent)}.sn-navlist>:is([aria-current],[aria-pressed=true]){color:var(--sn-fg);background:var(--sn-pressed)}.sn-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--sn-font-control);font-size:var(--sn-text-sm);font-weight:500;line-height:1;border-radius:var(--sn-radius-control);padding:0 var(--sn-s-4);height:var(--sn-control-md);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:background var(--sn-transition),border-color var(--sn-transition),color var(--sn-transition),box-shadow var(--sn-transition);white-space:nowrap;user-select:none;background:transparent;color:var(--sn-fg)}.sn-btn:focus-visible{outline:none;border-color:var(--sn-accent);box-shadow:var(--sn-focus-ring)}.sn-btn[disabled]{opacity:.4;cursor:not-allowed}.sn-btn--sm{height:var(--sn-control-sm);font-size:var(--sn-text-xs);padding:0 var(--sn-s-3)}.sn-btn--lg{height:var(--sn-control-lg);font-size:var(--sn-text-base);padding:0 var(--sn-s-5)}.sn-btn--primary{background:var(--sn-fg);color:var(--sn-fg-inverse);border-color:var(--sn-fg)}.sn-btn--primary:hover{color:var(--sn-fg-inverse);background:color-mix(in srgb,var(--sn-fg) 85%,var(--sn-bg))}.sn-btn--primary:active:not([disabled]){background:color-mix(in srgb,var(--sn-fg) 72%,var(--sn-bg))}.sn-btn--secondary{background:transparent;color:var(--sn-fg);border-color:var(--sn-border-strong)}.sn-btn--secondary:hover{color:var(--sn-fg);border-color:var(--sn-fg-subtle);background:var(--sn-hover)}.sn-btn--secondary:active:not([disabled]){background:var(--sn-pressed)}.sn-btn--ghost{background:transparent;color:var(--sn-fg-muted)}.sn-btn--ghost:hover{color:var(--sn-fg);background:var(--sn-hover)}.sn-btn--ghost:active:not([disabled]){color:var(--sn-fg);background:var(--sn-pressed)}.sn-btn--accent{background:var(--sn-accent);color:var(--sn-accent-fg);border-color:var(--sn-accent)}.sn-btn--accent:hover{color:var(--sn-accent-fg);background:var(--sn-accent-hover);border-color:var(--sn-accent-hover)}.sn-btn--accent:active:not([disabled]){background:var(--sn-accent-active);border-color:var(--sn-accent-active)}.sn-btn--danger{background:transparent;color:var(--sn-danger);border-color:var(--sn-border-strong)}.sn-btn--danger:hover{color:var(--sn-danger);border-color:var(--sn-danger)}.sn-btn--danger:active:not([disabled]){border-color:var(--sn-danger);background:var(--sn-danger-soft)}.sn-icon-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--sn-control-md);height:var(--sn-control-md);padding:0;border:1px solid transparent;border-radius:var(--sn-radius-control);background:transparent;color:var(--sn-fg-muted);cursor:pointer;text-decoration:none;transition:color var(--sn-transition),background var(--sn-transition),border-color var(--sn-transition)}.sn-icon-btn:hover{color:var(--sn-fg);background:var(--sn-hover)}.sn-icon-btn:active,.sn-icon-btn[aria-pressed=true]{color:var(--sn-fg);background:var(--sn-pressed)}.sn-icon-btn:focus-visible{outline:none;border-color:var(--sn-accent);box-shadow:var(--sn-focus-ring)}.sn-icon-btn:disabled,.sn-icon-btn[aria-disabled=true]{opacity:.4;cursor:not-allowed;background:transparent}.sn-icon-btn--sm{width:var(--sn-control-sm);height:var(--sn-control-sm)}.sn-icon-btn--lg{width:var(--sn-control-lg);height:var(--sn-control-lg)}.sn-icon-btn--bordered{border-color:var(--sn-border-strong)}.sn-icon-btn--bordered:hover{border-color:var(--sn-fg-subtle)}.sn-segmented{display:inline-flex;align-items:stretch;gap:2px;height:var(--sn-control-md);padding:2px;border:1px solid var(--sn-border-strong);border-radius:var(--sn-radius-control)}.sn-segmented>:is(button,a){appearance:none;display:inline-flex;align-items:center;gap:6px;padding:0 var(--sn-s-3);border:0;border-radius:calc(var(--sn-radius-control) - 2px);background:transparent;color:var(--sn-fg-muted);font-family:var(--sn-font-control);font-size:var(--sn-text-xs);font-weight:500;line-height:1;white-space:nowrap;text-decoration:none;cursor:pointer;transition:color var(--sn-transition),background var(--sn-transition)}.sn-segmented>:is(button,a):hover{color:var(--sn-fg);background:var(--sn-hover)}.sn-segmented>:is(button,a):focus-visible{outline:none;text-decoration:none;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--sn-accent) 55%,transparent)}.sn-segmented>:is([aria-pressed=true],[aria-current]),.sn-segmented>:is([aria-pressed=true],[aria-current]):hover{background:var(--sn-fg);color:var(--sn-fg-inverse)}.sn-segmented__label{display:inline-flex;align-items:center;padding:0 var(--sn-s-2);color:var(--sn-fg-subtle);font-size:var(--sn-text-xs)}.sn-segmented--sm{height:var(--sn-control-sm)}.sn-segmented--sm>:is(button,a){padding:0 var(--sn-s-2)}.sn-tabs{display:flex;gap:var(--sn-s-1);overflow-x:auto;border-bottom:1px solid var(--sn-border-subtle);scrollbar-width:none}.sn-tabs>:is(button,a){appearance:none;display:inline-flex;align-items:center;height:var(--sn-control-md);margin-bottom:-1px;padding:0 var(--sn-s-3);border:0;border-bottom:2px solid transparent;border-radius:var(--sn-radius-chip) var(--sn-radius-chip) 0 0;background:none;color:var(--sn-fg-muted);font-family:var(--sn-font-control);font-size:var(--sn-text-sm);font-weight:500;white-space:nowrap;text-decoration:none;cursor:pointer;transition:color var(--sn-transition),border-color var(--sn-transition)}.sn-tabs>:is(button,a):hover{color:var(--sn-fg)}.sn-tabs>:is(button,a):focus-visible{outline:none;text-decoration:none;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--sn-accent) 55%,transparent)}.sn-tabs>:is([aria-selected=true],[aria-current]){color:var(--sn-fg);border-bottom-color:var(--sn-fg)}.sn-tabs--sm>:is(button,a){height:var(--sn-control-sm);font-size:var(--sn-text-xs)}.sn-input,.sn-textarea{font-family:var(--sn-font-body);font-size:var(--sn-text-base);color:var(--sn-fg);background:transparent;border:1px solid var(--sn-border-strong);border-radius:var(--sn-radius-control);padding:0 var(--sn-s-3);height:var(--sn-control-md);width:100%;transition:border-color var(--sn-transition),box-shadow var(--sn-transition)}.sn-input::placeholder,.sn-textarea::placeholder{color:var(--sn-fg-subtle)}.sn-input:hover,.sn-textarea:hover{border-color:var(--sn-fg-subtle)}.sn-input:focus,.sn-textarea:focus{outline:none;border-color:var(--sn-accent);box-shadow:var(--sn-focus-ring)}.sn-input:disabled,.sn-textarea:disabled{color:var(--sn-fg-faint);cursor:not-allowed;background:var(--sn-bg-inset)}.sn-input--sm{height:var(--sn-control-sm);font-size:var(--sn-text-sm);padding:0 var(--sn-s-2)}.sn-input--lg{height:var(--sn-control-lg);font-size:var(--sn-text-md);padding:0 var(--sn-s-4)}.sn-textarea{height:auto;min-height:80px;padding:var(--sn-s-2) var(--sn-s-3);line-height:var(--sn-leading-normal);resize:vertical}.sn-input--invalid,.sn-input--invalid:hover,.sn-input--invalid:focus,.sn-textarea--invalid,.sn-textarea--invalid:hover,.sn-textarea--invalid:focus{border-color:var(--sn-danger)}.sn-input--invalid:focus,.sn-textarea--invalid:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--sn-danger) 30%,transparent)}.sn-field{display:flex;flex-direction:column;gap:6px;width:100%}.sn-label{font-family:var(--sn-font-mono);font-size:var(--sn-text-xs);color:var(--sn-fg-muted);letter-spacing:.02em}.sn-label__required{color:var(--sn-danger);margin-left:2px}.sn-hint{font-family:var(--sn-font-body);font-size:var(--sn-text-xs);color:var(--sn-fg-subtle);line-height:var(--sn-leading-normal)}.sn-error{font-family:var(--sn-font-body);font-size:var(--sn-text-xs);color:var(--sn-danger);line-height:var(--sn-leading-normal)}.sn-file{font-family:var(--sn-font-body);font-size:var(--sn-text-base);color:var(--sn-fg-muted);background:transparent;border:1px solid var(--sn-border-strong);border-radius:var(--sn-radius-control);overflow:hidden;width:100%;height:var(--sn-control-md);padding:0;display:inline-flex;align-items:center;cursor:pointer;transition:border-color var(--sn-transition),box-shadow var(--sn-transition)}.sn-file:hover{border-color:var(--sn-fg-subtle)}.sn-file:focus-within{outline:none;border-color:var(--sn-accent);box-shadow:var(--sn-focus-ring)}.sn-file::file-selector-button,.sn-file::-webkit-file-upload-button{font-family:var(--sn-font-control);font-size:var(--sn-text-xs);color:var(--sn-fg);background:var(--sn-bg-elev-1);border:none;border-right:1px solid var(--sn-border-strong);height:100%;padding:0 var(--sn-s-3);margin-right:var(--sn-s-3);cursor:pointer;transition:background var(--sn-transition)}.sn-file:hover::file-selector-button,.sn-file:hover::-webkit-file-upload-button{background:var(--sn-hover)}.sn-file:disabled{cursor:not-allowed;color:var(--sn-fg-faint);background:var(--sn-bg-inset)}.sn-file:disabled::file-selector-button,.sn-file:disabled::-webkit-file-upload-button{cursor:not-allowed;color:var(--sn-fg-faint)}.sn-card{background:transparent;border:1px solid var(--sn-border);border-radius:var(--sn-radius-surface);padding:var(--sn-pad-surface)}.sn-card--rounded{border-radius:var(--sn-radius-surface)}.sn-card--raised{background:var(--sn-bg-elev-1)}.sn-card--accent{border-color:var(--sn-accent-border);background:var(--sn-accent-soft)}.sn-card--inset{background:var(--sn-bg-inset)}.sn-table-wrap{overflow-x:auto;border:1px solid var(--sn-border);border-radius:var(--sn-radius-surface)}.sn-table{width:100%;border-collapse:collapse;font-size:var(--sn-text-sm)}.sn-table :is(th,td){padding:var(--sn-s-3) var(--sn-s-4);border-bottom:1px solid var(--sn-border-subtle);text-align:left;vertical-align:top}.sn-table thead th{color:var(--sn-fg-subtle);font-family:var(--sn-font-mono);font-size:var(--sn-text-2xs);font-weight:500;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.sn-table td{color:var(--sn-fg-muted)}.sn-table :is(tbody th,td:first-child){color:var(--sn-fg);font-weight:500}.sn-table tbody tr:last-child :is(th,td){border-bottom:0}.sn-table tbody tr{transition:background var(--sn-transition)}.sn-table--hover tbody tr:hover{background:var(--sn-hover)}.sn-table .sn-num{text-align:right;font-family:var(--sn-font-mono);font-variant-numeric:tabular-nums}.sn-badge{display:inline-flex;align-items:center;gap:4px;font-family:var(--sn-font-mono);font-size:var(--sn-text-2xs);font-weight:400;padding:2px 6px;border-radius:var(--sn-radius-chip);border:1px solid var(--sn-border);color:var(--sn-fg-muted);height:20px;text-transform:lowercase}.sn-badge--accent{color:var(--sn-accent);border-color:var(--sn-accent-border)}.sn-badge--success{color:var(--sn-success);border-color:color-mix(in srgb,var(--sn-success) 35%,transparent)}.sn-badge--warning{color:var(--sn-warning);border-color:color-mix(in srgb,var(--sn-warning) 35%,transparent)}.sn-badge--danger{color:var(--sn-danger);border-color:color-mix(in srgb,var(--sn-danger) 35%,transparent)}.sn-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:1.9em;height:1.9em;padding:0 .45em;font-family:var(--sn-font-mono);font-size:var(--sn-text-xs);font-weight:500;line-height:1;color:var(--sn-fg-muted);background:var(--sn-bg-elev-1);border:1px solid var(--sn-border-strong);border-bottom-width:2px;border-radius:var(--sn-radius-chip);vertical-align:middle}.sn-divider{height:1px;background:var(--sn-border);border:0;margin:0}.sn-meta{font-family:var(--sn-font-mono);font-size:var(--sn-text-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--sn-fg-muted)}.sn-meta--accent{color:var(--sn-accent)}.sn-meta--subtle{color:var(--sn-fg-subtle)}.sn-prompt{color:var(--sn-fg-faint);user-select:none}.sn-prompt:before{content:"\203a  "}.sn-icon{display:inline-block;vertical-align:middle;flex-shrink:0;color:currentColor}.sn-mark{display:inline-block;vertical-align:middle;flex-shrink:0;color:currentColor;width:var(--sn-mark-size, 32px);height:var(--sn-mark-size, 32px)}.sn-mark--xs{--sn-mark-size: 16px}.sn-mark--sm{--sn-mark-size: 24px}.sn-mark--md{--sn-mark-size: 32px}.sn-mark--lg{--sn-mark-size: 48px}.sn-mark--xl{--sn-mark-size: 64px}.sn-mark--accent{color:var(--sn-accent)}.sn-mark--muted{color:var(--sn-fg-muted)}.sn-wordmark{font-family:var(--sn-font-mono);font-size:var(--sn-wordmark-size, 18px);font-weight:700;letter-spacing:-.01em;color:currentColor;line-height:1}.sn-wordmark__dot{color:var(--sn-accent)}.sn-monogram{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--sn-monogram-bg, var(--sn-bg));color:var(--sn-monogram-fg, var(--sn-fg));width:var(--sn-monogram-size, 64px);height:var(--sn-monogram-size, 64px);border-radius:var(--sn-monogram-radius, calc(var(--sn-monogram-size, 64px) / 10))}.sn-monogram--xs{--sn-monogram-size: 32px}.sn-monogram--sm{--sn-monogram-size: 48px}.sn-monogram--md{--sn-monogram-size: 64px}.sn-monogram--lg{--sn-monogram-size: 96px}.sn-monogram--inverse{--sn-monogram-bg: var(--sn-fg);--sn-monogram-fg: var(--sn-bg)}.sn-avatar{display:inline-flex;align-items:center;justify-content:center;width:var(--sn-avatar-size, 32px);height:var(--sn-avatar-size, 32px);border-radius:50%;background:var(--sn-pressed);color:var(--sn-fg-muted);font-family:var(--sn-font-mono);font-size:max(10px,calc(var(--sn-avatar-size, 32px) * .38));font-weight:500;overflow:hidden;flex-shrink:0;vertical-align:middle}.sn-avatar--square{border-radius:var(--sn-radius-control)}.sn-avatar--ring{box-shadow:0 0 0 1px var(--sn-border-strong)}.sn-avatar--xs{--sn-avatar-size: 20px}.sn-avatar--sm{--sn-avatar-size: 28px}.sn-avatar--md{--sn-avatar-size: 32px}.sn-avatar--lg{--sn-avatar-size: 48px}.sn-avatar--xl{--sn-avatar-size: 64px}.sn-avatar>img{width:100%;height:100%;object-fit:cover;display:block}.sn-avatar-stack{display:inline-flex}.sn-avatar-stack>*+*{margin-left:var(--sn-avatar-overlap, -8px)}.sn-pulse{display:inline-flex;align-items:center;gap:var(--sn-s-2);color:var(--sn-fg-muted);font-size:var(--sn-text-sm)}.sn-pulse__dot{position:relative;display:inline-flex;width:var(--sn-pulse-size, 8px);height:var(--sn-pulse-size, 8px);flex-shrink:0}.sn-pulse__dot:before,.sn-pulse__dot:after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--sn-pulse-color, var(--sn-success))}.sn-pulse__dot:before{opacity:.6;animation:sn-pulse 2s ease-in-out infinite}.sn-pulse--success{--sn-pulse-color: var(--sn-success)}.sn-pulse--warning{--sn-pulse-color: var(--sn-warning)}.sn-pulse--danger{--sn-pulse-color: var(--sn-danger)}.sn-pulse--accent{--sn-pulse-color: var(--sn-accent)}.sn-copy-btn{appearance:none;border:1px solid transparent;background:transparent;color:var(--sn-fg-muted);padding:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--sn-radius-chip);transition:color var(--sn-transition),background var(--sn-transition)}.sn-copy-btn:hover{color:var(--sn-fg);background:var(--sn-hover)}.sn-copy-btn:focus-visible{outline:none;border-color:var(--sn-accent);box-shadow:var(--sn-focus-ring)}.sn-copy-btn[data-copied=true],.sn-copy-btn[data-copied=true]:hover{color:var(--sn-success)}.sn-copy-btn:empty:before{content:"";width:var(--sn-copy-btn-size, 14px);height:var(--sn-copy-btn-size, 14px);background:currentColor;-webkit-mask:var(--sn-copy-btn-icon) center / contain no-repeat;mask:var(--sn-copy-btn-icon) center / contain no-repeat}.sn-copy-btn:empty{--sn-copy-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='9' width='11' height='11' rx='1.5'/%3E%3Cpath d='M5 15V5a1 1 0 0 1 1-1h10'/%3E%3C/svg%3E")}.sn-copy-btn:empty[data-copied=true]{--sn-copy-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 12 5 5L20 6'/%3E%3C/svg%3E")}.sn-copy-btn .sn-copy-btn__copied{display:none}.sn-copy-btn[data-copied=true] .sn-copy-btn__copied{display:inline-flex}.sn-copy-btn[data-copied=true] .sn-copy-btn__idle{display:none}.sn-copy-btn:active{background:var(--sn-pressed)}.sn-prose{max-width:680px;font-size:var(--sn-body-size);line-height:var(--sn-leading-relaxed);color:var(--sn-fg-muted)}.sn-prose h1,.sn-prose h2,.sn-prose h3{color:var(--sn-fg);font-weight:600}.sn-prose :is(h1,h2){font-family:var(--sn-font-display);font-weight:var(--sn-display-weight);letter-spacing:var(--sn-display-tracking)}.sn-prose h3{font-family:var(--sn-font-body)}.sn-prose h1{margin:0 0 var(--sn-s-6);font-size:var(--sn-text-3xl);line-height:1.25}.sn-prose h2{margin:var(--sn-s-9) 0 var(--sn-s-4);font-size:var(--sn-text-xl);line-height:var(--sn-leading-tight)}.sn-prose h3{margin:var(--sn-s-7) 0 var(--sn-s-2);font-size:inherit}.sn-prose :is(h2,h3)[id]{scroll-margin-top:var(--sn-s-6)}.sn-prose :is(p,ul,ol,blockquote,pre,table,figure){margin:0 0 var(--sn-s-4)}.sn-prose :is(ul,ol){padding-left:var(--sn-s-5)}.sn-prose li+li{margin-top:var(--sn-s-2)}.sn-prose a{color:var(--sn-fg);text-decoration:underline;text-underline-offset:3px}.sn-prose a:hover{color:var(--sn-accent)}.sn-prose strong{color:var(--sn-fg);font-weight:600}.sn-prose code{padding:1px 5px;border:1px solid var(--sn-border-subtle);border-radius:var(--sn-radius-chip);background:var(--sn-bg-inset);color:var(--sn-fg);font-family:var(--sn-font-mono);font-size:.88em;overflow-wrap:anywhere}.sn-prose pre{padding:var(--sn-s-4);overflow-x:auto;border:1px solid var(--sn-border-subtle);border-radius:var(--sn-radius-surface);background:var(--sn-bg-inset);color:var(--sn-fg);font-size:var(--sn-text-sm);line-height:1.6;tab-size:4}.sn-prose pre code{padding:0;border:0;background:none;overflow-wrap:normal}.sn-prose blockquote{padding-left:var(--sn-s-4);border-left:2px solid var(--sn-border-strong);color:var(--sn-fg)}.sn-prose img{max-width:100%;height:auto}.sn-prose hr{height:1px;margin:var(--sn-s-9) 0;border:0;background:var(--sn-border)}.sn-prose table{width:100%;border-collapse:collapse;font-size:var(--sn-text-sm)}.sn-prose :is(th,td){padding:var(--sn-s-3);text-align:left;vertical-align:top;border-bottom:1px solid var(--sn-border-subtle)}.sn-prose thead th{color:var(--sn-fg);font-weight:600;background:var(--sn-bg-elev-1)}.sn-prose tbody th{color:var(--sn-fg);font-weight:500}.sn-prose tr:last-child :is(th,td){border-bottom:0}@media(max-width:600px){.sn-prose h1{font-size:var(--sn-text-2xl)}.sn-prose h2{margin-top:var(--sn-s-8);font-size:var(--sn-text-lg)}.sn-prose pre{padding:var(--sn-s-3);font-size:var(--sn-text-xs)}}.sn-callout{--sn-callout-color: var(--sn-fg-muted);--sn-callout-bg: var(--sn-bg-elev-1);margin:0 0 var(--sn-s-4);padding:var(--sn-s-3) var(--sn-s-4);border:1px solid var(--sn-border);border-left:2px solid var(--sn-callout-color);border-radius:var(--sn-radius-control);background:var(--sn-callout-bg);color:var(--sn-fg-muted);font-size:var(--sn-text-sm);line-height:var(--sn-leading-normal)}.sn-callout--note{--sn-callout-color: var(--sn-accent);--sn-callout-bg: var(--sn-accent-soft)}.sn-callout--tip{--sn-callout-color: var(--sn-success);--sn-callout-bg: var(--sn-success-soft)}.sn-callout--warning{--sn-callout-color: var(--sn-warning);--sn-callout-bg: var(--sn-warning-soft)}.sn-callout--danger{--sn-callout-color: var(--sn-danger);--sn-callout-bg: var(--sn-danger-soft)}.sn-callout__title{display:block;margin-bottom:var(--sn-s-1);color:var(--sn-callout-color);font-family:var(--sn-font-mono);font-size:var(--sn-text-2xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.sn-callout>:last-child{margin-bottom:0}.sn-code{width:100%;min-width:0;margin:0 0 var(--sn-s-4);overflow:hidden;border:1px solid var(--sn-border-subtle);border-radius:var(--sn-radius-surface);background:var(--sn-bg-inset)}.sn-code__bar{display:flex;align-items:center;justify-content:space-between;gap:var(--sn-s-2);min-height:var(--sn-control-md);padding:0 var(--sn-s-1) 0 var(--sn-s-4);border-bottom:1px solid var(--sn-border-subtle);color:var(--sn-fg-subtle);font-family:var(--sn-font-mono);font-size:var(--sn-text-xs)}.sn-code__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sn-code pre{margin:0;padding:var(--sn-s-4);overflow-x:auto;border:0;border-radius:0;background:none;color:var(--sn-fg);font-family:var(--sn-font-mono);font-size:var(--sn-text-sm);line-height:1.6;tab-size:4}.sn-code pre code{padding:0;border:0;background:none;font:inherit}pre.sn-code{padding:var(--sn-s-4);overflow-x:auto;color:var(--sn-fg);font-family:var(--sn-font-mono);font-size:var(--sn-text-sm);line-height:1.6}pre.sn-code code{font:inherit}@media(max-width:600px){.sn-code pre{padding:var(--sn-s-3);font-size:var(--sn-text-xs)}}.sn-terminal{width:100%;min-width:0;overflow:hidden;border:1px solid var(--sn-border-strong);border-radius:var(--sn-radius-surface);background:var(--sn-bg-inset);font-family:var(--sn-font-mono)}.sn-terminal__bar{position:relative;display:flex;align-items:center;justify-content:center;height:var(--sn-control-md);padding:0 60px;border-bottom:1px solid var(--sn-border);background:var(--sn-bg-elev-1);color:var(--sn-fg-subtle);font-size:var(--sn-text-xs)}.sn-terminal__bar:before{content:"";position:absolute;left:14px;width:8px;height:8px;border-radius:50%;background:var(--sn-fg-faint);box-shadow:14px 0 var(--sn-fg-faint),28px 0 var(--sn-fg-faint)}.sn-terminal__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sn-terminal__body{margin:0;padding:var(--sn-s-4);overflow-x:auto;color:var(--sn-fg);font-size:var(--sn-text-sm);line-height:1.6}.sn-terminal__body>*{margin:0;white-space:pre-wrap}.sn-terminal__body:has(>img,>video){padding:0}.sn-terminal__body>:is(img,video){display:block;width:100%;height:auto}.sn-terminal__out{color:var(--sn-fg-muted)}@media(max-width:600px){.sn-terminal__body{padding:var(--sn-s-3);font-size:var(--sn-text-xs)}}.sn-toc{margin-bottom:var(--sn-s-7);font-size:var(--sn-text-sm)}.sn-toc details{padding:var(--sn-s-3) var(--sn-s-4);border:1px solid var(--sn-border-subtle);border-radius:var(--sn-radius-surface)}.sn-toc summary{cursor:pointer;color:var(--sn-fg);font-weight:500}.sn-toc ul{list-style:none;margin:var(--sn-s-3) 0 0;padding:0}.sn-toc li+li{margin-top:var(--sn-s-2)}.sn-toc a{color:var(--sn-fg-muted);text-decoration:none}.sn-toc a:hover,.sn-toc a[aria-current]{color:var(--sn-fg)}.sn-toc-layout{display:grid;grid-template-columns:minmax(0,1fr)}@media(min-width:1000px){.sn-toc-layout{grid-template-columns:minmax(0,680px) 220px;column-gap:var(--sn-s-10);justify-content:center}.sn-toc-layout>*{grid-column:1}.sn-toc-layout>.sn-toc{grid-column:2;grid-row:1 / span 2;align-self:start;position:sticky;top:var(--sn-s-6);margin:0;padding-top:var(--sn-s-2)}.sn-toc-layout>.sn-toc details{padding:0;border:0}.sn-toc-layout>.sn-toc summary{list-style:none;pointer-events:none;color:var(--sn-fg);font-weight:500}.sn-toc-layout>.sn-toc summary::-webkit-details-marker{display:none}.sn-toc-layout>.sn-toc ul{border-left:1px solid var(--sn-border-subtle)}.sn-toc-layout>.sn-toc li+li{margin-top:0}.sn-toc-layout>.sn-toc a{display:block;margin-left:-1px;padding:5px 0 5px var(--sn-s-4);border-left:2px solid transparent;transition:color var(--sn-transition),border-color var(--sn-transition)}.sn-toc-layout>.sn-toc a[aria-current]{border-left-color:var(--sn-accent)}}.sn-theme-toggle{appearance:none;border:1px solid transparent;background:transparent;min-width:var(--sn-control-md);min-height:var(--sn-control-md);padding:0;border-radius:var(--sn-radius-control);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background var(--sn-transition),border-color var(--sn-transition),box-shadow var(--sn-transition)}.sn-theme-toggle:hover{background:var(--sn-hover)}.sn-theme-toggle:active{background:var(--sn-pressed)}.sn-theme-toggle:focus-visible{outline:none;border-color:var(--sn-accent);box-shadow:var(--sn-focus-ring)}.sn-theme-toggle__indicator{display:inline-block;width:var(--sn-theme-toggle-size, 12px);height:var(--sn-theme-toggle-size, 12px);border-radius:50%;border:1px solid var(--sn-fg-muted);background:var(--sn-fg);transition:background var(--sn-transition),border-color var(--sn-transition),box-shadow var(--sn-transition)}[data-theme=light] .sn-theme-toggle__indicator{background:transparent}@media(prefers-color-scheme:light){[data-theme=system] .sn-theme-toggle__indicator{background:transparent}}.sn-theme-toggle--sm{min-width:var(--sn-control-sm);min-height:var(--sn-control-sm)}[data-theme=light] [data-theme=dark] .sn-theme-toggle__indicator{background:var(--sn-fg)}
