:root{--gray-50: #ffffff;--gray-100: oklch(98.12% 0 0);--gray-200: oklch(95.2% 0 0);--gray-300: oklch(91.14% 0 0);--gray-400: oklch(85.18% 0 0);--gray-500: oklch(79.18% 0 0);--gray-600: oklch(72.33% 0 0);--gray-700: oklch(67.01% 0 0);--gray-800: oklch(62.3% 0 0);--gray-900: oklch(57.97% 0 0);--gray-1000: oklch(51.91% 0 0);--gray-1100: oklch(46.91% 0 0);--gray-1200: oklch(41.08% 0 0);--gray-1300: oklch(35.36% 0 0);--gray-1400: oklch(29.67% 0 0);--gray-1500: oklch(24.54% 0 0);--gray-1600: oklch(16.7% 0 0);--color-bg: #ffffff;--color-surface: var(--gray-100);--color-hover: var(--gray-300);--color-fg: #000000;--color-fg-muted: var(--gray-1100);--color-border: var(--gray-400);--color-border-strong: #000000;--color-platform-android: #00794c;--color-platform-ios: #00449e;--color-platform-react-native: #087ea4;--color-platform-flutter: #a80012;--color-platform-web: #ffb700;--graph-curve: var(--color-fg);--graph-grid: var(--gray-300);--graph-target: var(--gray-800);--graph-peak: var(--color-fg);--graph-label: var(--gray-1100);--preview-ball-bg: transparent;--preview-ball-dot: var(--color-fg);--preview-ball-dot-radius: 1px;--preview-ball-dot-grid: 4px;--radius: 0px;--font-sans: system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{color-scheme:light}body{font-family:var(--font-sans);font-size:.875rem;line-height:1.5;background-color:var(--color-bg);color:var(--color-fg);-webkit-font-smoothing:antialiased}h1,h2{font-size:1rem;font-weight:600;line-height:1.3}a{color:inherit}button,input,select{font:inherit;color:inherit}code{font-family:var(--font-mono)}canvas{display:block}:focus-visible{outline:2px solid var(--color-fg);outline-offset:2px}.Layout{max-width:72rem;min-height:100vh;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) 22.5rem}.OutputColumn{min-width:0;padding:1.5rem;display:flex;flex-direction:column;gap:2rem}.InputColumn{position:sticky;top:0;height:100vh;max-height:100vh;overflow-y:hidden;padding:1.5rem 1.5rem 0;display:flex;flex-direction:column;gap:0;border-left:1px solid var(--color-border)}.InputColumnTop{position:relative;background:var(--color-bg);display:flex;flex-direction:column;gap:1.5rem}.InputColumnBody{flex:1;min-height:0;display:flex;flex-direction:column;gap:1.5rem;margin-inline:-.25rem;padding-inline:.25rem;padding-top:1rem;padding-bottom:1.5rem;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.InputColumnBody::-webkit-scrollbar{display:none}.InputFooter{margin-top:auto;padding-top:.75rem;font-size:.6875rem;color:var(--color-fg-muted)}.InputFooter a{color:inherit;text-underline-offset:3px}.InputFooter a:hover{color:var(--color-fg)}@media(max-width:900px){.Layout{grid-template-columns:1fr}.InputColumn{order:-1;border-left:none;border-bottom:1px solid var(--color-border);position:static;max-height:none;height:auto;overflow:visible}.InputColumnBody{padding-top:1.5rem;padding-bottom:1.5rem;overflow:visible;max-height:none}}.Header{display:flex;flex-direction:column;gap:.75rem}.HeaderTitle p{color:var(--color-fg-muted)}.HeaderActions{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.SocialLinks{display:flex;gap:.25rem}.IconLink{width:1.75rem;height:1.75rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border-strong);border-radius:var(--radius);background-color:var(--color-bg)}.IconLink:hover{background-color:var(--color-hover)}.IconLink:active{background-color:var(--color-fg);color:var(--color-bg)}.Button{padding:.3125rem .75rem;font-size:.8125rem;background-color:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:var(--radius);cursor:pointer}.Button:hover{background-color:var(--color-hover)}.Button:active{background-color:var(--color-fg);color:var(--color-bg)}.CopyLink{width:1.75rem;height:1.75rem;padding:0;display:inline-flex;align-items:center;justify-content:center;flex:none}.CopyLink svg{display:block}.CopyLink .AnimatedCheckPath,.CodeSnippetCopy .AnimatedCheckPath{stroke-dasharray:20;stroke-dashoffset:20}.CopyLink.is-copied .AnimatedCheckPath,.CodeSnippetCopy.is-copied .AnimatedCheckPath{animation:code-snippet-check-draw .3s ease forwards}.Field{display:flex;flex-direction:column;gap:.375rem}.Field[hidden]{display:none}.FieldLabel{font-size:.6875rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-fg-muted)}.Select{width:100%;height:2.25rem;padding:0 2rem 0 .75rem;appearance:none;background-color:var(--color-bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5 6 8l3.5-3.5' fill='none' stroke='%23000' stroke-width='1'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .625rem center;border:1px solid var(--color-border-strong);border-radius:var(--radius);cursor:pointer}.SegmentGroup{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;border:1px solid var(--color-border-strong);border-radius:var(--radius)}.Segment{height:2.25rem;padding:0 .5rem;font-size:.8125rem;background-color:var(--color-bg);border:0;border-right:1px solid var(--color-border-strong);border-radius:var(--radius);cursor:pointer}.Segment:last-child{border-right:0}.Segment:hover:not(.isSelected):not(:active){background-color:var(--color-hover)}.Segment:active,.Segment.isSelected{background-color:var(--color-fg);color:var(--color-bg)}.InputSection{display:flex;flex-direction:column;gap:1rem}.ParamFields{display:flex;flex-direction:column;gap:.75rem}.SliderInput{display:grid;grid-template-columns:6rem 1fr 4.5rem;align-items:center;gap:.625rem}.SliderInputLabel{font-size:.75rem;font-family:var(--font-mono);color:var(--color-fg-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.SliderInputRange{appearance:none;width:100%;height:1.25rem;margin:0;background:transparent;cursor:pointer}.SliderInputRange::-webkit-slider-runnable-track{height:1px;background-color:var(--color-border-strong)}.SliderInputRange::-webkit-slider-thumb{appearance:none;width:.75rem;height:.75rem;margin-top:-.375rem;background-color:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:var(--radius)}.SliderInputRange::-webkit-slider-thumb:hover,.SliderInputRange:active::-webkit-slider-thumb{background-color:var(--color-fg)}.SliderInputRange::-moz-range-track{height:1px;background-color:var(--color-border-strong)}.SliderInputRange::-moz-range-thumb{width:.75rem;height:.75rem;background-color:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:var(--radius)}.SliderInputRange::-moz-range-thumb:hover,.SliderInputRange:active::-moz-range-thumb{background-color:var(--color-fg)}.SliderInputRange.isOutOfRange::-webkit-slider-thumb{border-style:dashed}.SliderInputRange.isOutOfRange::-moz-range-thumb{border-style:dashed}.SliderInputField{position:relative;display:flex;align-items:center}.SliderInputKnob{position:absolute;left:.1rem;top:50%;z-index:1;display:flex;align-items:center;justify-content:center;width:.625rem;height:1rem;cursor:ew-resize;touch-action:none;user-select:none;transform:translateY(-50%)}.SliderInputKnob:before{content:"";width:2px;height:100%;background-color:var(--color-border-strong)}.SliderInputKnob:hover:before{background-color:var(--color-fg)}.SliderInputNumber{width:100%;height:1.75rem;padding:0 .375rem 0 1rem;font-family:var(--font-mono);font-size:.75rem;text-align:right;background-color:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:var(--radius);appearance:textfield;-moz-appearance:textfield}.SliderInputNumber::-webkit-outer-spin-button,.SliderInputNumber::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}body.is-scrubbing,body.is-scrubbing *{cursor:ew-resize!important}.PreviewSection{display:flex;flex-direction:column;gap:.75rem}.GraphCard{border:1px solid var(--color-border-strong);border-radius:var(--radius);cursor:pointer;background-color:var(--color-bg)}.GraphCanvas{width:100%;aspect-ratio:1 / 1;touch-action:none}.PreviewTrack{position:relative;height:2.5rem;overflow:clip;padding-inline:.5rem;display:flex;align-items:center;border-top:1px solid var(--color-border-strong)}.PreviewPath{position:absolute;left:1.25rem;right:1.25rem;top:50%;border-top:1px dashed var(--color-border);pointer-events:none}.PreviewPath:before,.PreviewPath:after{content:"";position:absolute;top:0;width:5px;height:5px;border-radius:50%;background-color:var(--color-border-strong);transform:translate(-50%,-50%)}.PreviewPath:before{left:0}.PreviewPath:after{left:100%}.PreviewBall{position:relative;z-index:1;width:1.5rem;height:1.5rem;background-color:var(--preview-ball-bg);background-image:radial-gradient(circle,var(--preview-ball-dot) 0 var(--preview-ball-dot-radius),transparent calc(var(--preview-ball-dot-radius) + .25px));background-size:var(--preview-ball-dot-grid) var(--preview-ball-dot-grid);background-position:center;background-clip:padding-box;border:1px solid var(--color-border-strong);border-radius:var(--radius);will-change:transform}.Notice{padding:.5rem .625rem;font-size:.75rem;line-height:1.5;color:var(--color-fg-muted);border:1px solid var(--color-border-strong);border-radius:var(--radius);background-color:var(--color-bg)}.CopyNotice{padding-block:.3125rem;font-size:.6875rem}.VisuallyHidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.OutputSection{display:flex;flex-direction:column;gap:.75rem}.OutputSectionTitle{padding:.25rem .5rem;font-size:.6875rem;text-transform:uppercase;letter-spacing:.06em;border-radius:var(--radius);background-color:var(--color-surface);color:var(--color-fg-muted)}.OutputSectionTitle[data-platform=Android]{background-color:var(--color-platform-android);color:var(--color-bg)}.OutputSectionTitle[data-platform=iOS]{background-color:var(--color-platform-ios);color:var(--color-bg)}.OutputSectionTitle[data-platform="React Native"]{background-color:var(--color-platform-react-native);color:var(--color-bg)}.OutputSectionTitle[data-platform=Flutter]{background-color:var(--color-platform-flutter);color:var(--color-bg)}.OutputSectionTitle[data-platform=Web]{background-color:var(--color-platform-web);color:var(--color-fg)}.OutputSnippets{display:flex;flex-direction:column;gap:1rem}.CodeSnippet{border:1px solid var(--color-border-strong);border-radius:var(--radius);background-color:var(--color-bg)}.CodeSnippetHeader{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.375rem .375rem .375rem .75rem;border-bottom:1px solid var(--color-border-strong)}.CodeSnippetApi{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-family:var(--font-mono);font-size:.75rem;text-decoration-thickness:1px;text-underline-offset:3px}.CodeSnippetApi:hover{background-color:var(--color-hover)}.CodeSnippetApi:active{background-color:var(--color-fg);color:var(--color-bg)}.CodeSnippetMeta{flex:none;display:flex;align-items:center;gap:.375rem}.CodeSnippetLanguage{padding:.125rem .375rem;font-size:.625rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-fg-muted);background-color:var(--gray-200);border-radius:var(--radius);user-select:none}.CodeSnippetCopy{width:1.3125rem;height:1.3125rem;padding:0;display:inline-flex;align-items:center;justify-content:center;flex:none}.CodeSnippetCopy svg{display:block;width:12px;height:12px}@keyframes code-snippet-check-draw{0%{stroke-dashoffset:20}to{stroke-dashoffset:0}}.CodeSnippetContent{padding:.75rem 1rem;font-family:var(--font-mono);font-size:.75rem;line-height:1.6;overflow-x:auto}
