:root{color-scheme:light;font-synthesis:none;--color-paper: oklch(98.5% .004 250);--color-paper-2: oklch(95.5% .008 250);--color-panel: oklch(99% .003 250);--color-control: oklch(97% .006 250);--color-ink: oklch(25% .018 258);--color-ink-2: oklch(37% .018 257);--color-muted: oklch(54% .016 257);--color-rule: oklch(87% .012 250);--color-rule-strong: oklch(79% .014 250);--color-accent: oklch(52% .105 256);--color-accent-soft: oklch(91% .028 256);--color-accent-ink: oklch(99% .003 250);--color-focus: oklch(48% .12 256);--color-viewer: oklch(95.5% .008 250);--color-viewer-ink: oklch(37% .018 257);--color-viewer-muted: oklch(52% .016 257);--color-viewer-rule: oklch(87% .012 250);--color-code: oklch(24% .018 258);--color-code-ink: oklch(92% .008 250);--color-code-muted: oklch(70% .012 250);--color-code-rule: oklch(36% .015 258);--color-notice: oklch(95% .009 250);--color-notice-rule: oklch(80% .016 250);--color-notice-ink: oklch(32% .018 258);--font-display: "Space Grotesk", "Helvetica Neue", ui-sans-serif, sans-serif;--font-body: "Inter", "Helvetica Neue", ui-sans-serif, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--space-3xs: .25rem;--space-2xs: .5rem;--space-xs: .75rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--space-2xl: 4.5rem;--text-2xs: .6875rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-md: 1.125rem;--text-lg: 1.375rem;--text-xl: 1.75rem;--text-2xl: 2.25rem;--text-display: clamp(2.25rem, 3.8vw, 3.75rem);--ease-out: cubic-bezier(.16, 1, .3, 1);--dur-short: .18s;--dur-none: 0ms;--radius-input: .375rem;--radius-panel: .625rem;--rule-thin: 1px solid var(--color-rule);--rule-strong: 1px solid var(--color-rule-strong);--rule-viewer: 1px solid var(--color-viewer-rule);--size-shell: 92rem;--size-hit: 2.75rem;--size-control: 2.25rem;--size-chip: 2rem;--size-workspace-min: 39rem;--size-viewer-min: 35rem;--size-viewer-mobile: 28rem;--size-select-min: 12rem;--size-status: 2.5rem}*{box-sizing:border-box}html,body{overflow-x:clip}html{min-width:320px}body{min-width:320px;min-height:100vh;margin:0;background:var(--color-paper);color:var(--color-ink-2);font-family:var(--font-body);font-size:var(--text-base);line-height:1.55;font-synthesis:none}button,select{font:inherit}button,select{min-height:var(--size-control);color:var(--color-ink);background-color:var(--color-control);border:var(--rule-thin);border-radius:var(--radius-input)}button{cursor:pointer;white-space:nowrap}button:hover,select:hover{border-color:var(--color-rule-strong);background-color:var(--color-paper-2)}button:active{transform:translateY(1px)}button:disabled,select:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,select:focus-visible,canvas:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}canvas{cursor:grab}canvas:active{cursor:grabbing}.shell{width:min(100%,var(--size-shell));margin:0 auto;padding:0 var(--space-lg) var(--space-2xl)}.hero{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg);padding-block:var(--space-lg) var(--space-xl);border-bottom:var(--rule-thin)}.hero-copy{min-width:0}.github-link{display:inline-flex;flex:0 0 auto;align-items:center;gap:var(--space-3xs);min-height:var(--size-control);padding:var(--space-2xs) var(--space-sm);border:var(--rule-thin);border-radius:var(--radius-input);color:var(--color-ink-2);background-color:var(--color-panel);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.06em;line-height:1.35;text-decoration:none;text-transform:uppercase}.github-link:hover{border-color:var(--color-rule-strong);color:var(--color-accent);background-color:var(--color-paper-2)}.github-link:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.eyebrow,label,legend,dt{font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:500;letter-spacing:.1em;line-height:1.35;text-transform:uppercase}.eyebrow{margin:0;color:var(--color-accent)}h1,h2{color:var(--color-ink);font-family:var(--font-display);font-weight:600}h1{max-width:18ch;min-width:0;margin:var(--space-sm) 0 0;overflow-wrap:anywhere;font-size:var(--text-display);letter-spacing:-.035em;line-height:1.06}.intro{max-width:55ch;margin:var(--space-sm) 0 0;color:var(--color-ink-2);font-size:var(--text-md);line-height:1.55}.workspace{display:grid;grid-template-columns:minmax(11rem,13rem) minmax(0,1fr) minmax(15rem,17rem);min-height:var(--size-workspace-min);margin-top:var(--space-lg);overflow:clip;border:var(--rule-strong);border-radius:var(--radius-panel);background-color:var(--color-panel)}.panel{min-width:0;padding:var(--space-md);background-color:var(--color-panel)}.controls-panel{display:flex;flex-direction:column;gap:var(--space-sm);border-right:var(--rule-thin)}.detail-panel{display:flex;flex-direction:column;border-left:var(--rule-thin)}.field{display:grid;min-width:0;gap:var(--space-3xs)}.field.grow{min-height:0;flex:1}label,legend,dt{color:var(--color-muted)}select{width:100%;padding:var(--space-3xs) var(--space-2xs)}select[size]{height:100%;min-height:var(--size-select-min);padding:var(--space-2xs)}select[size] option{padding:var(--space-2xs);font-size:var(--text-sm);border-radius:var(--radius-input)}select[size] option:checked{background-color:var(--color-accent-soft);color:var(--color-ink)}fieldset{min-width:0;margin:0;padding:0;border:0}legend{margin-bottom:var(--space-2xs)}.chip-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3xs)}.chip-row button{min-height:var(--size-chip);padding:var(--space-3xs) var(--space-2xs);color:var(--color-ink-2);line-height:1;text-transform:capitalize}.chip-row button[aria-pressed=true]{border-color:var(--color-accent);background-color:var(--color-accent-soft);color:var(--color-accent)}.mode-switch{max-width:14rem}.reset-button{width:100%;padding:var(--space-3xs) var(--space-2xs)}.viewer-column{display:grid;grid-template-rows:minmax(0,1fr) auto auto;min-width:0;background-color:var(--color-viewer);color:var(--color-viewer-ink)}.viewer{position:relative;min-height:var(--size-viewer-min);min-width:0}.viewer-loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:grid;place-items:center;padding:var(--space-md);background-color:var(--color-viewer);background-color:color-mix(in srgb,var(--color-viewer) 88%,transparent);pointer-events:none}.viewer-loading[hidden]{display:none}.viewer-loading-card{display:inline-flex;align-items:center;gap:var(--space-xs);max-width:min(100%,20rem);padding:var(--space-xs) var(--space-sm);border:var(--rule-viewer);border-radius:var(--radius-input);background-color:var(--color-panel);background-color:color-mix(in srgb,var(--color-panel) 94%,transparent);color:var(--color-viewer-ink);box-shadow:0 .75rem 2rem #00000014;font-size:var(--text-sm)}.viewer-spinner{width:1rem;height:1rem;flex:0 0 auto;border:2px solid var(--color-rule);border-top-color:var(--color-accent);border-radius:50%;animation:somakine-spin .8s linear infinite}@keyframes somakine-spin{to{transform:rotate(360deg)}}.viewer-help,.status{margin:0;border-top:var(--rule-viewer)}.viewer-help{padding:var(--space-xs) var(--space-md);color:var(--color-viewer-muted);font-size:var(--text-xs);line-height:1.4}.status{min-height:var(--size-status);padding:var(--space-sm) var(--space-md);color:var(--color-viewer-ink);font-size:var(--text-sm);line-height:1.45}.detail-panel h2{max-width:14ch;min-width:0;margin:var(--space-sm) 0 var(--space-xl);overflow-wrap:anywhere;font-size:var(--text-xl);letter-spacing:-.025em;line-height:1.1}dl{display:grid;gap:var(--space-md);margin:0}dl div{display:grid;min-width:0;gap:var(--space-3xs);padding-bottom:var(--space-sm);border-bottom:var(--rule-thin)}dd{margin:0;overflow-wrap:anywhere;color:var(--color-ink);font-size:var(--text-sm);line-height:1.45}.notice{margin-top:auto;padding-top:var(--space-sm);border-top:var(--rule-thin);color:var(--color-muted);font-size:var(--text-xs);line-height:1.5}.notice-label{margin-right:var(--space-2xs);color:var(--color-ink-2);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.notice .attribution{font-size:inherit;line-height:inherit;color:var(--color-muted)}.api-section{margin-top:var(--space-2xl);padding-top:var(--space-xl);border-top:var(--rule-thin)}.section-head{max-width:58ch}.section-head .eyebrow{margin:0}.section-head h2{max-width:22ch;min-width:0;margin:var(--space-sm) 0 0;overflow-wrap:anywhere;font-size:var(--text-2xl);letter-spacing:-.03em;line-height:1.08}.section-lede{max-width:58ch;margin:var(--space-sm) 0 0;color:var(--color-ink-2);font-size:var(--text-md);line-height:1.55}.api-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr);gap:var(--space-md);margin-top:var(--space-lg)}.api-card{min-width:0;overflow:clip;border:var(--rule-thin);border-radius:var(--radius-panel)}.api-example{color:var(--color-code-ink);background-color:var(--color-code);border-color:var(--color-code-rule)}.api-reference{background-color:var(--color-panel)}.api-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);min-height:var(--size-control);padding:var(--space-xs) var(--space-md);border-bottom:var(--rule-thin)}.api-example .api-card-head{border-bottom-color:var(--color-code-rule)}.api-label,.api-file{font-family:var(--font-mono);font-size:var(--text-2xs);line-height:1.35;text-transform:uppercase}.api-label{color:var(--color-accent);font-weight:600;letter-spacing:.08em}.api-file{color:var(--color-code-muted);letter-spacing:.04em}.api-reference .api-file{color:var(--color-muted)}pre{margin:0;padding:var(--space-md);overflow-x:auto;color:var(--color-code-ink);font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.65;-moz-tab-size:2;tab-size:2}pre code{font-family:inherit}.code-keyword{color:var(--color-accent)}.code-string{color:var(--color-code-ink)}.code-comment{color:var(--color-code-muted)}.api-list{display:grid;gap:0;margin:0;padding:0 var(--space-md)}.api-list div{display:grid;gap:var(--space-3xs);padding-block:var(--space-sm);border-bottom:var(--rule-thin)}.api-list div:last-child{border-bottom:0}.api-list dt{color:var(--color-ink);font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:0;text-transform:none}.api-list dd{color:var(--color-muted);font-size:var(--text-sm)}.api-options{margin:0;padding:var(--space-sm) var(--space-md) var(--space-md);border-top:var(--rule-thin);color:var(--color-muted);font-size:var(--text-xs);line-height:1.55}.api-options code,.api-list code{color:var(--color-ink);font-family:var(--font-mono);font-size:inherit}@media(max-width:64rem){.workspace{grid-template-columns:minmax(11rem,12rem) minmax(0,1fr)}.detail-panel{grid-column:1 / -1;border-top:var(--rule-thin);border-left:0}}@media(max-width:48rem){.shell{padding-inline:var(--space-md)}.hero{padding-block:var(--space-lg) var(--space-lg)}.workspace{display:flex;flex-direction:column;min-height:0;margin-top:var(--space-lg)}.controls-panel{border-right:0;border-bottom:var(--rule-thin)}.viewer{min-height:var(--size-viewer-mobile)}select[size]{height:auto}.detail-panel{border-top:var(--rule-thin)}.api-grid{grid-template-columns:1fr}}@media(max-width:25rem){.shell{padding-inline:var(--space-sm)}h1{font-size:var(--text-2xl)}.intro{font-size:var(--text-base)}.panel{padding:var(--space-md)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:var(--dur-none)!important;animation-duration:var(--dur-none)!important;animation-iteration-count:1!important}.viewer-spinner{animation:none}}
