@font-face{font-family:Inter;src:url('./fonts/inter-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('./fonts/inter-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Inter;src:url('./fonts/inter-600.woff2') format('woff2');font-weight:600;font-display:swap}
:root,.slate-ui{
  --sl-canvas:#181818;--sl-overlay:#242424;--sl-surface:#292929;--sl-raised:#2d2d2d;--sl-hover:#343434;
  --sl-ink:#eeeeee;--sl-muted:#aaaaaa;--sl-faint:#999999;--sl-ghost:#8a8a8a;--sl-on-accent:#ffffff;
  --sl-line:#363636;--sl-line-strong:#555555;--sl-accent:#2563eb;--sl-accent-hover:#1d4ed8;
  --sl-accent-soft:rgba(37,99,235,.16);--sl-ring:rgba(0,145,255,.28);
  --sl-green:#10b981;--sl-amber:#f5b95c;--sl-red:#f08080;
  --sl-radius-sm:10px;--sl-radius-md:12px;--sl-radius-lg:16px;--sl-radius-xl:20px;
  --sl-text-xs:11px;--sl-text-sm:13px;--sl-text-md:14px;--sl-text-lg:16px;--sl-text-xl:20px;
  --sl-space-1:4px;--sl-space-2:8px;--sl-space-3:12px;--sl-space-4:16px;--sl-space-6:24px;--sl-space-8:32px;--sl-space-10:40px;
  --sl-ease:cubic-bezier(.22,.61,.36,1);--sl-travel:190ms;--sl-color-time:120ms;
}
.slate-ui{font-family:Inter,'Segoe UI',sans-serif;font-size:var(--sl-text-sm);line-height:1.5;color:var(--sl-ink);background:var(--sl-canvas);color-scheme:dark;font-synthesis:none;-webkit-font-smoothing:antialiased}
.slate-ui *{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--sl-line-strong) transparent}
.slate-ui *::-webkit-scrollbar{width:8px;height:8px}.slate-ui *::-webkit-scrollbar-track{background:transparent}.slate-ui *::-webkit-scrollbar-thumb{background:var(--sl-line-strong);border:2px solid transparent;background-clip:padding-box;border-radius:8px}.slate-ui *::-webkit-scrollbar-button{display:none}
.slate-ui :focus-visible{outline:2px solid var(--sl-accent);outline-offset:3px}.slate-ui ::selection{background:var(--sl-accent);color:var(--sl-on-accent)}
.sl-icon{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sl-icon.material{fill:currentColor;stroke:none}.sl-icon g{transform-box:fill-box;transform-origin:center}
.sl-btn[aria-expanded=true] .sl-icon[data-sl-icon=chevron]{transform:rotate(180deg)}.sl-icon[data-sl-icon=chevron]{transition:transform 190ms var(--sl-ease)}
.sl-dialog[data-sl-phase=opening]::backdrop{animation:sl-backdrop-in 220ms ease both}.sl-dialog[data-sl-phase=closing]::backdrop{animation:sl-backdrop-out 150ms ease both}
@keyframes sl-backdrop-in{from{opacity:0}to{opacity:1}}@keyframes sl-backdrop-out{from{opacity:1}to{opacity:0}}
.sl-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:32px;padding:0 12px;border:1px solid var(--sl-line);border-radius:var(--sl-radius-md);background:var(--sl-surface);color:var(--sl-ink);font:500 13px Inter,sans-serif;white-space:nowrap;text-decoration:none;cursor:pointer;transition:background 120ms ease,border-color 120ms ease,color 120ms ease,transform 120ms ease}
.sl-btn:hover{background:var(--sl-hover);border-color:var(--sl-line-strong)}.sl-btn:active:not(:disabled){transform:translateY(1px) scale(.97)}.sl-btn:disabled{opacity:.45;cursor:not-allowed}.sl-btn:disabled:hover{background:var(--sl-surface);border-color:var(--sl-line)}
.sl-btn.primary{background:var(--sl-accent);border-color:var(--sl-accent);color:var(--sl-on-accent)}.sl-btn.primary:hover:not(:disabled){background:var(--sl-accent-hover);border-color:var(--sl-accent-hover)}
.sl-btn.ghost,.sl-btn.icon{background:transparent;border-color:transparent;color:var(--sl-muted)}.sl-btn.ghost:hover,.sl-btn.icon:hover{background:var(--sl-hover);color:var(--sl-ink)}.sl-btn.icon{width:32px;padding:0;border-radius:var(--sl-radius-sm)}.sl-btn.small{height:28px;padding:0 8px;font-size:11px}.sl-btn.large{height:36px;padding:0 16px}.sl-btn.danger{color:var(--sl-red)}
.sl-field{display:flex;flex-direction:column;gap:8px;min-width:0;font-weight:500}.sl-field small{font-size:11px;font-weight:400;color:var(--sl-faint)}
.sl-input{width:100%;height:34px;padding:0 11px;border:1px solid var(--sl-line);border-radius:var(--sl-radius-md);background:var(--sl-canvas);color:var(--sl-ink);font:400 13px Inter,sans-serif;outline:0;transition:border-color 120ms ease,box-shadow 120ms ease}.sl-input:hover:not(:disabled){border-color:var(--sl-line-strong)}.sl-input:focus{border-color:var(--sl-accent);box-shadow:0 0 0 3px var(--sl-ring)}.sl-input:disabled{opacity:.45}.sl-input::placeholder{color:var(--sl-faint)}textarea.sl-input{height:96px;padding-block:10px;resize:vertical}
.sl-switch{appearance:none;display:inline-block;vertical-align:middle;position:relative;width:34px;height:20px;border:0;border-radius:20px;background-color:var(--sl-line-strong);cursor:pointer;touch-action:pan-y;transition:background-color 240ms var(--sl-ease);--sl-switch-x:0px;--sl-switch-scale:.72;--sl-switch-stretch:1}.sl-switch:before{content:'';position:absolute;top:3px;left:3px;width:14px;height:14px;background:var(--sl-ink);border-radius:50%;transform:translateX(var(--sl-switch-x)) scale(var(--sl-switch-scale)) scaleX(var(--sl-switch-stretch));transition:transform 220ms var(--sl-ease)}.sl-switch:checked{background-color:var(--sl-accent);--sl-switch-x:14px;--sl-switch-scale:1}.sl-switch.sl-switch-moving{--sl-switch-stretch:1.22}.sl-switch.sl-switch-dragging{transition:none}.sl-switch.sl-switch-dragging:before{transition:none}.sl-switch:disabled{cursor:not-allowed;opacity:.5}@media(prefers-reduced-motion:reduce){.sl-switch,.sl-switch:before{transition:none}.sl-switch.sl-switch-moving{--sl-switch-stretch:1}}
.sl-check{appearance:none;vertical-align:middle;width:16px;height:16px;margin:0;border:1px solid var(--sl-line-strong);border-radius:5px;background:var(--sl-canvas);cursor:pointer;transition:background 150ms cubic-bezier(.22,1,.36,1),border-color 150ms cubic-bezier(.22,1,.36,1)}.sl-check:checked{background:var(--sl-accent);border-color:var(--sl-accent)}.sl-check:checked:after{content:'';display:block;width:7px;height:4px;border-left:2px solid white;border-bottom:2px solid white;transform:translate(3px,3px) rotate(-45deg)}
.sl-check-control{position:relative;display:inline-flex;vertical-align:middle;width:16px;height:16px;flex:none}.sl-check-control>.sl-check{position:absolute;inset:0}.sl-check-control>.sl-check:after{display:none}.sl-check-control>svg{position:absolute;left:2.5px;top:2.5px;width:11px;height:11px;pointer-events:none;fill:none;stroke:var(--sl-ink);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.sl-check-control>svg path{stroke-dasharray:15;stroke-dashoffset:15;transition:stroke-dashoffset 150ms cubic-bezier(.22,1,.36,1)}.sl-check-control>.sl-check:checked+svg path{stroke-dashoffset:0;transition:stroke-dashoffset 350ms cubic-bezier(.22,1,.36,1)}.sl-check-control>.sl-check:indeterminate+svg path{stroke-dasharray:none;stroke-dashoffset:0;d:path('M1 5.1H9.17')}.sl-check:disabled,.sl-check:disabled+svg{opacity:.55;cursor:not-allowed}@media(prefers-reduced-motion:reduce){.sl-check,.sl-check-control>svg path{transition:none}}
.sl-panel{background:var(--sl-surface);border-radius:var(--sl-radius-lg);padding:24px}.sl-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.sl-panel-head h3{margin:0;font-size:16px;font-weight:600}.sl-muted{color:var(--sl-muted)}.sl-hint{color:var(--sl-faint);font-size:11px}.sl-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.sl-stack{display:flex;flex-direction:column;gap:16px}.sl-divider{height:1px;background:var(--sl-line);border:0;margin:16px 0}
.sl-menu{min-width:200px;background:var(--sl-raised);border-radius:14px;padding:5px;box-shadow:0 10px 28px #0007}.sl-menu[hidden]{display:none}.sl-popover-host{position:relative;display:inline-block}.sl-popover-host>.sl-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:20;width:max-content;max-width:calc(100vw - 32px)}
.sl-menu-row{display:flex;align-items:center;gap:12px;width:100%;min-height:32px;padding:7px 9px;background:transparent;border:0;border-radius:10px;color:var(--sl-ink);font:400 13px Inter,sans-serif;text-align:left;text-decoration:none;cursor:pointer}.sl-menu-row .sl-icon{color:var(--sl-faint)}.sl-menu-row small,.sl-menu-row kbd{margin-left:auto;color:var(--sl-faint);font-size:11px;font-family:inherit}.sl-menu-row:hover{background:var(--sl-hover)}.sl-menu-row[aria-selected=true]{color:var(--sl-ink)}.sl-menu-row:disabled{opacity:.45;cursor:not-allowed}.sl-menu-row .sl-copy{display:flex;flex-direction:column;gap:2px}.sl-copy small{margin:0;font-size:12px}.sl-copy strong{font-weight:500}
[data-sl-hover]{position:relative;isolation:isolate}[data-sl-row]{position:relative;z-index:1}.sl-hover-pill{position:absolute;left:0;top:0;z-index:0;border-radius:10px;background:var(--sl-hover);pointer-events:none;opacity:0;transition:transform 190ms var(--sl-ease),width 190ms var(--sl-ease),height 190ms var(--sl-ease),opacity 120ms ease}.sl-hover-pill.visible{opacity:1}.sl-hover-pill.no-anim{transition:opacity 120ms ease}[data-sl-hover].sl-hovering [data-sl-row]:hover,[data-sl-hover].sl-hovering [data-sl-row]:focus-visible{background:transparent}[data-sl-hover].sl-hovering [data-sl-row]:focus-visible{outline:none}.sl-scroll{max-height:190px;overflow-y:auto;overflow-x:clip}
.sl-tooltip{position:fixed;top:0;left:0;z-index:120;max-width:calc(100vw - 16px);width:max-content;padding:6px 10px;background:var(--sl-raised);color:var(--sl-ink);border-radius:8px;box-shadow:0 4px 16px #0006;font-size:12px;visibility:hidden;opacity:0;pointer-events:none;overflow-wrap:anywhere;transition:transform 190ms var(--sl-ease),opacity 120ms ease}.sl-tooltip.visible{visibility:visible;opacity:1}.sl-tooltip.no-anim{transition:opacity 120ms ease}.sl-tooltip-label{display:block;transition:transform 190ms var(--sl-ease),opacity 120ms ease 70ms}.sl-tooltip-label.no-anim{transition:none}
.sl-dialog{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;overflow-x:clip;margin:auto;padding:24px;border:0;border-radius:16px;background:var(--sl-surface);color:var(--sl-ink);box-shadow:0 24px 64px #0009;font:400 13px/1.5 Inter,sans-serif}.sl-dialog::backdrop{background:#0009}.sl-dialog h2{font-size:20px;font-weight:600;margin:0 0 8px}.sl-dialog p{color:var(--sl-muted);margin:0 0 24px}.sl-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}
.sl-status{display:inline-flex;align-items:center;gap:7px;padding:4px 9px;border-radius:10px;background:var(--sl-hover);color:var(--sl-muted);font-size:11px}.sl-status:before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor}.sl-status.success{color:var(--sl-green)}.sl-status.warning{color:var(--sl-amber)}.sl-status.error{color:var(--sl-red)}.sl-notice{padding:12px 16px;border-radius:12px;background:var(--sl-accent-soft);color:var(--sl-ink)}.sl-notice.success{background:#10b98114}.sl-notice.error{background:#f0808014}
.sl-progress{appearance:none;width:100%;height:4px;border:0;border-radius:4px;overflow:hidden;background:var(--sl-line)}.sl-progress::-webkit-progress-bar{background:var(--sl-line)}.sl-progress::-webkit-progress-value{background:var(--sl-accent);border-radius:4px}.sl-progress::-moz-progress-bar{background:var(--sl-accent)}
.sl-range{appearance:none;height:3px;width:100%;margin:12px 0;background:var(--sl-line-strong);border-radius:3px;cursor:pointer}.sl-range::-webkit-slider-thumb{appearance:none;width:10px;height:10px;border-radius:50%;background:var(--sl-ink);border:0}.sl-range::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:var(--sl-ink);border:0}
.sl-shell{display:flex;min-width:0;height:100dvh;padding:12px 0 0;background:var(--sl-canvas)}.sl-sidebar{width:224px;flex:0 0 224px;display:flex;flex-direction:column;padding:0 8px 8px;transition:width 190ms var(--sl-ease),flex-basis 190ms var(--sl-ease)}.sl-sidebar-head{position:relative;height:42px;flex:none;display:flex;align-items:center;gap:6px;padding:0 4px}.sl-brand{display:flex;align-items:center;gap:8px;margin-right:auto;font-size:18px;font-weight:600;white-space:nowrap}.sl-brand>.sl-icon{width:30px;height:23px}.sl-nav{display:flex;flex-direction:column;gap:4px;margin-top:8px}.sl-nav-row{height:38px;display:flex;align-items:center;gap:12px;padding:0 10px;border-radius:10px;text-decoration:none;color:var(--sl-muted);font-weight:500;white-space:nowrap;border:0;background:transparent;font-family:inherit;font-size:13px;cursor:pointer}.sl-nav-row>.sl-icon{width:19px;height:19px}.sl-nav-row:hover{color:var(--sl-ink);background:var(--sl-hover)}.sl-nav-row[aria-current=page]{color:#d9e5ff;background:var(--sl-accent-soft)}.sl-sidebar-foot{margin-top:auto;padding-top:8px;border-top:1px solid var(--sl-line)}.sl-collapsed .sl-sidebar{width:56px;flex-basis:56px}.sl-collapsed .sl-nav-label,.sl-collapsed .sl-brand-name{display:none}.sl-collapsed .sl-collapse{position:absolute;left:3px;opacity:0}.sl-collapsed .sl-sidebar:is(:hover,:focus-within) .sl-collapse{opacity:1}.sl-collapsed .sl-sidebar:is(:hover,:focus-within) .sl-brand{opacity:0;pointer-events:none}
.sl-main{min-width:0;flex:1;display:flex;flex-direction:column}.sl-topbar{height:42px;flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 24px;color:var(--sl-muted);font-size:12px}.sl-topbar span span{margin:0 10px;color:var(--sl-ghost)}.sl-workspace{min-height:0;flex:1;display:flex;overflow:hidden;border-radius:24px 0 0 0;background:var(--sl-overlay);padding:8px 0 0}.sl-main-scroll{flex:1;min-width:0;overflow-y:auto;overflow-x:clip;scrollbar-gutter:stable;scroll-behavior:smooth}
.sl-windowbar{display:flex;align-items:center;justify-content:space-between;height:36px;color:var(--sl-muted);font-size:11px}.sl-window-actions{display:flex}.sl-window-control{height:36px;width:46px;display:grid;place-items:center;border:0;background:transparent;color:var(--sl-muted);cursor:pointer}.sl-window-control:hover{background:var(--sl-hover);color:var(--sl-ink)}.sl-window-control.close:hover{background:#452d2d;color:var(--sl-red)}
/* CWBridge press and changing-label feedback. */
.sl-character-group{display:inline-flex;align-items:baseline;flex-wrap:wrap;max-width:100%}.sl-character{display:inline-block;white-space:pre}
.sl-btn.icon:active:not(:disabled),.sl-collapse:active:not(:disabled){transform:scale(.92)}
.sl-arriving{display:inline-block;animation:sl-label-arrive 200ms cubic-bezier(.34,1.45,.64,1) both}
@keyframes sl-label-arrive{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.sl-btn:active,.sl-collapse:active{transform:none!important}.sl-arriving{animation:none!important}}
@media(max-width:750px){.sl-sidebar{width:184px;flex-basis:184px}.sl-topbar{padding:0 16px}}
@media(hover:none){.sl-collapsed .sl-collapse{opacity:1}.sl-collapsed .sl-brand{opacity:0}}
@media(prefers-reduced-motion:reduce){.slate-ui *,.slate-ui *:before,.slate-ui *:after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}}

/* Portable contextual navigation, disclosure and asynchronous feedback. */
.sl-tabs{display:flex;gap:4px;flex-wrap:wrap;padding:4px;background:var(--sl-canvas);border-radius:12px;width:fit-content;max-width:100%}
.sl-tabs{touch-action:pan-y}.sl-tabs[aria-orientation=vertical]{touch-action:pan-x}.sl-tabs>.sl-tab-indicator{scale:var(--sl-tab-scale-x,1) var(--sl-tab-scale-y,1);transition:transform 190ms var(--sl-ease),width 190ms var(--sl-ease),height 190ms var(--sl-ease),scale 220ms var(--sl-ease)}.sl-tabs-dragging{user-select:none}.sl-tabs-dragging>.sl-tab-indicator{transition:none}@media(prefers-reduced-motion:reduce){.sl-tabs-dragging>.sl-tab-indicator{scale:1}}
.sl-tabs[data-sl-tabs]>.sl-tab[aria-pressed=true]{background:transparent;color:var(--sl-ink)}
.sl-tab{border:0;border-radius:9px;padding:8px 12px;background:transparent;color:var(--sl-muted);font:inherit;cursor:pointer;transition:background 120ms,color 120ms}
.sl-tab[aria-selected=true]{background:var(--sl-hover);color:var(--sl-ink)}.sl-tab:disabled{opacity:.45;cursor:not-allowed}.sl-tabpanel{padding:16px 0}.sl-tabpanel[hidden]{display:none}
.sl-accordion{background:var(--sl-surface);border-radius:16px;padding:4px 16px}.sl-accordion details+details{border-top:1px solid var(--sl-line)}.sl-accordion summary{padding:14px 0;cursor:pointer;font-weight:500;list-style:none;display:flex;justify-content:space-between;gap:12px}.sl-accordion summary::-webkit-details-marker{display:none}.sl-accordion summary:after{content:'+';color:var(--sl-muted)}.sl-accordion details[open]>summary:after{content:'−'}.sl-accordion details>div{padding:0 0 16px;color:var(--sl-muted);line-height:1.6}
.sl-skeleton{display:block;background:var(--sl-hover);border-radius:8px;height:14px;animation:sl-skeleton-pulse 1.4s ease-in-out infinite}.sl-skeleton+.sl-skeleton{margin-top:12px}.sl-skeleton.avatar{width:40px;height:40px;border-radius:50%}.sl-skeleton.short{width:60%}@keyframes sl-skeleton-pulse{50%{opacity:.45}}
.sl-toasts{position:fixed;bottom:20px;right:20px;z-index:130;display:flex;flex-direction:column;gap:8px;width:min(400px,calc(100vw - 32px));max-height:none;overflow:visible}.sl-toast{flex:none;min-width:0;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:14px;background:var(--sl-raised);box-shadow:0 10px 28px #0007;animation:sl-toast-enter 220ms var(--sl-ease)}.sl-toast>span{flex:1;min-width:0;overflow-wrap:anywhere}.sl-toast.error>span{color:var(--sl-red)}.sl-toast.warning>span{color:var(--sl-amber)}.sl-toast .sl-btn{flex:none}@keyframes sl-toast-enter{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.sl-skeleton,.sl-toast{animation:none}}

.sl-tabs{position:relative;isolation:isolate}.sl-tab{position:relative;z-index:1}.sl-tab[aria-selected=true]{background:transparent}.sl-tab-indicator{position:absolute;left:0;top:0;z-index:0;background:var(--sl-hover);border-radius:9px;pointer-events:none;transition:transform 190ms var(--sl-ease),width 190ms var(--sl-ease),height 190ms var(--sl-ease)}
.sl-accordion details[open]>div,.sl-content-arrive{animation:sl-content-enter 220ms var(--sl-ease)}@keyframes sl-content-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.sl-tab-indicator{transition:none}.sl-accordion details[open]>div,.sl-content-arrive{animation:none}}
/* Progressive native disclosure sizing; older browsers retain instant native toggle. */
@supports (interpolate-size: allow-keywords){.sl-accordion details{interpolate-size:allow-keywords}.sl-accordion details::details-content{height:0;overflow:clip;transition:height 220ms var(--sl-ease),content-visibility 220ms;transition-behavior:allow-discrete}.sl-accordion details[open]::details-content{height:auto}}
@media(prefers-reduced-motion:reduce){.sl-accordion details::details-content{transition:none}}

/* Functional neutral scroll affordance: no decorative gradients. */
.sl-scroll-fade{position:fixed;z-index:4;pointer-events:none;user-select:none;--sl-scroll-fade-color:var(--sl-overlay)}.sl-scroll-fade[hidden]{display:none}.sl-scroll-fade-clip,.sl-scroll-fade-band{position:absolute;inset:0;pointer-events:none}.sl-scroll-fade-band{background-repeat:no-repeat}.sl-scroll-fade-band.top{background-image:linear-gradient(to bottom,var(--sl-scroll-fade-color),transparent);background-position:top}.sl-scroll-fade-band.bottom{background-image:linear-gradient(to top,var(--sl-scroll-fade-color),transparent);background-position:bottom}

/* Small notification stacks preserve rounded surfaces and their shadows. */
.sl-toasts.sl-toast-overflow{max-height:calc(100dvh - 40px);overflow-y:auto;overflow-x:hidden;padding:8px;scrollbar-gutter:stable}
@media(max-width:600px){.sl-toasts{right:16px;bottom:16px;width:calc(100vw - 32px)}.sl-toast{padding:12px;gap:8px}}

.sl-sidebar-foot .sl-nav-row{height:32px}
.sl-copy-feedback{white-space:nowrap;gap:6px}.sl-feedback-announcement{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.sl-feedback-icon{flex:none}

.icon-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:16px}.icon-preview-item{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:11px;color:var(--sl-muted)}.icon-preview-item>.sl-icon{width:24px;height:24px;color:var(--sl-ink)}
