:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg:oklch(16% .005 264);--surface:oklch(20% .006 264);--surface-raised:oklch(24% .007 264);--canvas:oklch(12% .004 264);--line:oklch(100% 0 0/.08);--line-strong:oklch(100% 0 0/.14);--fg:oklch(93% .004 264);--muted:oklch(68% .008 264);--faint:oklch(52% .008 264);--accent:oklch(92% .22 122);--accent-soft:oklch(92% .22 122/.14);--on-accent:oklch(20% .03 122);--mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace;--ease:cubic-bezier(.23, 1, .32, 1);color:var(--fg);background:var(--bg);font-family:Helvetica Neue,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}a{color:inherit}.panel-section-header h2,.stage-hint,.scroll-demo-spacer p{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:500}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--line);align-items:center;gap:24px;height:60px;padding:0 20px;display:flex}.wordmark{letter-spacing:-.01em;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.wordmark-mark{background:var(--accent);width:14px;height:14px;box-shadow:inset -5px 0 0 var(--bg);border-radius:50%}.topbar-tagline{color:var(--faint);letter-spacing:.01em;margin:0;font-size:12px}.topbar-actions{gap:8px;margin-inline-start:auto;display:flex}.ghost-button{min-height:40px;color:var(--muted);cursor:pointer;transition:color .14s var(--ease), background-color .14s var(--ease), transform .14s var(--ease);background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;padding:0 14px;font-size:13px;text-decoration:none;display:inline-flex}.ghost-button:hover{color:var(--fg);background:oklch(100% 0 0/.06)}.ghost-button:active{transform:scale(.96)}.github-button{color:var(--fg);background:oklch(100% 0 0/.07);gap:8px}.github-button:hover{background:oklch(100% 0 0/.12)}.text-button{color:var(--muted);cursor:pointer;text-underline-offset:3px;transition:color .14s var(--ease);background:0 0;border:0;padding:8px 0;font-size:12px;text-decoration:underline}.text-button:hover{color:var(--fg)}.disclosure{min-height:28px;color:var(--faint);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:color .14s var(--ease), background-color .14s var(--ease);background:0 0;border:0;border-radius:7px;padding:0 10px;font-size:10px}.disclosure:hover{color:var(--fg);background:oklch(100% 0 0/.06)}.disclosure:after{content:"";position:absolute;inset:-6px}.disclosure{position:relative}.reset-all{min-height:40px;color:var(--muted);cursor:pointer;transition:color .14s var(--ease), background-color .14s var(--ease), transform .14s var(--ease);background:oklch(100% 0 0/.05);border:0;border-radius:10px;margin:4px 16px 16px;font-size:13px}.reset-all:hover{color:var(--fg);background:oklch(100% 0 0/.09)}.reset-all:active{transform:scale(.98)}.workspace{flex:1;grid-template-columns:minmax(0,1fr) 320px;min-height:0;display:grid}.stage-area{flex-direction:column;gap:16px;min-width:0;padding:20px;display:flex}.stage{background:var(--canvas);border-radius:20px;flex:1;justify-content:center;align-items:center;min-height:55vh;padding:16px;display:flex;position:relative;box-shadow:inset 0 0 0 1px oklch(100% 0 0/.06),0 1px 2px oklch(0% 0 0/.3)}.shader-frame{aspect-ratio:var(--ratio,1.6);width:auto;max-width:100%;height:min(66vh, calc((100vw - 400px) / var(--ratio,1.6)));background:var(--canvas);-webkit-user-select:none;user-select:none;outline-offset:-1px;border-radius:12px;outline:1px solid oklch(100% 0 0/.1);overflow:hidden}.stage-hint{color:oklch(70% .005 264);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none;-webkit-user-select:none;user-select:none;background:oklch(14% .004 264/.7);border-radius:8px;margin:0;padding:8px 12px;position:absolute;bottom:14px;left:50%;translate:-50%}.stage-footer{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.usage{flex:1;min-width:0}.usage summary{min-height:40px;color:var(--muted);cursor:pointer;transition:color .14s var(--ease), background-color .14s var(--ease);border-radius:10px;align-items:center;padding:0 14px;font-size:13px;list-style:none;display:inline-flex}.usage summary::-webkit-details-marker{display:none}.usage summary:before{content:"‹›";font-family:var(--mono);color:var(--faint);margin-inline-end:10px}.usage summary:hover{color:var(--fg);background:oklch(100% 0 0/.06)}.usage pre{background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);color:oklch(78% .005 264);font:12px/1.6 var(--mono);border-radius:12px;margin:10px 0 0;padding:16px;overflow:auto}.inspector{border-inline-start:1px solid var(--line);background:oklch(18% .005 264);flex-direction:column;display:flex;overflow-y:auto}.panel-section{border-bottom:1px solid var(--line);padding:16px}.panel-section-header{justify-content:space-between;align-items:center;min-height:28px;margin-bottom:12px;display:flex}.panel-section-header h2{color:var(--faint);margin:0}.segmented{background:oklch(0% 0 0/.25);border-radius:10px;gap:3px;padding:3px;display:flex}.segment{min-height:34px;color:var(--muted);white-space:nowrap;cursor:pointer;transition:color .14s var(--ease), background-color .14s var(--ease), transform .14s var(--ease);background:0 0;border:0;border-radius:7px;flex:1;padding:0 10px;font-size:13px}.segment:hover{color:var(--fg)}.segment:active{transform:scale(.96)}.segment.is-active{color:var(--fg);background:var(--surface-raised);box-shadow:0 1px 2px oklch(0% 0 0/.35),inset 0 0 0 1px oklch(100% 0 0/.06)}.effect-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.effect-chip{min-height:40px;color:var(--muted);cursor:pointer;transition:color .14s var(--ease), background-color .14s var(--ease), transform .14s var(--ease);background:oklch(100% 0 0/.04);border:0;border-radius:10px;padding:0 12px;font-size:13px}.effect-chip:hover{color:var(--fg);background:oklch(100% 0 0/.08)}.effect-chip:active{transform:scale(.96)}.effect-chip.is-active{color:var(--on-accent);background:var(--accent);font-weight:500}.slider-stack{gap:14px;display:grid}.slider-control{gap:8px;display:grid}.slider-meta{color:var(--muted);justify-content:space-between;gap:14px;font-size:12px;display:flex}.slider-meta output{color:var(--fg);font:11px/1.4 var(--mono);font-variant-numeric:tabular-nums}.range{appearance:none;background:linear-gradient(to right, var(--accent) 0%, var(--accent) var(--progress,0%), oklch(100% 0 0/.14) var(--progress,0%), oklch(100% 0 0/.14) 100%);cursor:ew-resize;background-position:50%;background-repeat:no-repeat;background-size:100% 3px;border-radius:2px;width:100%;height:24px;margin:0}.range::-webkit-slider-thumb{appearance:none;border:2px solid var(--bg);background:var(--accent);width:14px;height:14px;box-shadow:0 0 0 1px var(--accent-soft);transition:transform .12s var(--ease), box-shadow .12s var(--ease);border-radius:50%}.range:active::-webkit-slider-thumb{box-shadow:0 0 0 6px var(--accent-soft);transform:scale(.92)}.range::-moz-range-thumb{border:2px solid var(--bg);background:var(--accent);border-radius:50%;width:12px;height:12px}.range:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}.color-pickers{gap:8px;margin-top:12px;display:grid}.color-control{min-height:40px;color:var(--muted);cursor:pointer;transition:background-color .14s var(--ease);border-radius:10px;align-items:center;gap:12px;padding:0 10px;font-size:13px;display:flex}.color-control:hover{background:oklch(100% 0 0/.05)}.color-control input[type=color]{cursor:pointer;outline-offset:-1px;background:0 0;border:0;border-radius:7px;outline:1px solid oklch(100% 0 0/.14);width:28px;height:28px;padding:0}.color-control input[type=color]::-webkit-color-swatch-wrapper{padding:3px}.color-control input[type=color]::-webkit-color-swatch{border:none;border-radius:4px}.upload-control{cursor:pointer;min-height:44px;transition:background-color .14s var(--ease), color .14s var(--ease);background:oklch(100% 0 0/.05);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin-top:12px;padding:0 14px;font-size:13px;display:flex;position:relative}.upload-control:hover{background:oklch(100% 0 0/.09)}.upload-control span:last-child{color:var(--faint)}.upload-control input{opacity:0;width:1px;height:1px;position:absolute}.text-input{width:100%;box-shadow:inset 0 0 0 1px var(--line);color:var(--fg);font:500 16px/1.2 var(--mono);letter-spacing:.06em;transition:box-shadow .14s var(--ease);background:oklch(0% 0 0/.25);border:0;border-radius:10px;margin-top:12px;padding:11px 14px}.text-input:focus{box-shadow:inset 0 0 0 1px var(--accent);outline:none}.text-input::placeholder{color:var(--faint)}.scroll-demo{border-top:1px solid var(--line)}.scroll-demo-spacer{height:80vh;color:var(--faint);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.scroll-demo-spacer p{margin:0}.scroll-demo-spacer span{color:var(--accent);font-size:20px}.scroll-demo-track{height:260vh}.scroll-demo-sticky{background:var(--canvas);border-radius:20px;justify-content:center;padding:16px;display:flex;position:sticky;top:8vh;overflow:hidden;box-shadow:inset 0 0 0 1px oklch(100% 0 0/.06)}@media (width<=960px){.topbar{gap:14px;padding:0 14px}.topbar-tagline{display:none}.workspace{grid-template-columns:1fr}.inspector{border-inline-start:0;border-top:1px solid var(--line)}.stage-area{padding:14px}.stage{min-height:0}.shader-frame{width:100%;height:auto;max-height:60vh}.segment{font-size:13px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ghost-button,.segment,.effect-chip,.reset-all{transition:none}}
