:root{--background:#fff;--foreground:#09090b;--muted:#f4f4f5;--muted-foreground:#71717a;--border:#e4e4e7;--input:#e4e4e7;--ring:#a1a1aa;--primary:#18181b;--primary-foreground:#fafafa;--accent:#f4f4f5;--sidebar:#fafafa;--stage:#d4d4d8;--success:#16a34a;--warning:#d97706;--destructive:#dc2626;--radius:.5rem;--shadow-xs:0 1px 2px 0 #0000000d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--background:#09090b;--foreground:#fafafa;--muted:#27272a;--muted-foreground:#a1a1aa;--border:#27272a;--input:#3f3f46;--ring:#71717a;--primary:#fafafa;--primary-foreground:#18181b;--accent:#27272a;--sidebar:#0c0c0e;--stage:#000;--success:#22c55e;--warning:#f59e0b;--destructive:#ef4444;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--background);color:var(--foreground);-webkit-font-smoothing:antialiased;font:.875rem/1.45 ui-sans-serif,system-ui,-apple-system,Segoe UI,Inter,sans-serif}p{margin:0}.muted{color:var(--muted-foreground)}[hidden]{display:none!important}.icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1rem;height:1rem}.icon-github{fill:currentColor;stroke:none}.gallery{min-height:100%}.gallery-header{z-index:1;border-bottom:1px solid var(--border);background:color-mix(in oklab, var(--background) 85%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem max(1rem,50% - 35rem);display:flex;position:sticky;top:0}.gallery-brand{align-items:center;gap:.625rem;font:600 .8125rem ui-monospace,SFMono-Regular,Menlo,monospace;display:flex}.gallery-brand .brand-mark{width:1.75rem;height:1.75rem}.gallery-brand .brand-mark svg{width:1rem;height:1rem}.gallery-main{max-width:72rem;margin:0 auto;padding:3rem 1rem 4rem}.gallery-intro{max-width:40rem;margin-bottom:2rem}.gallery-intro h1{letter-spacing:-.025em;text-wrap:balance;margin:0 0 .75rem;font-size:clamp(1.625rem,1.2rem + 1.6vw,2.25rem);font-weight:700;line-height:1.15}.gallery-intro p{color:var(--muted-foreground);text-wrap:pretty;font-size:1rem;line-height:1.6}.gallery-intro p+p{margin-top:.75rem}.gallery-intro a,.gallery-footer p a{color:var(--foreground);font-weight:500;text-decoration:none;transition:opacity .15s}.gallery-intro a:hover,.gallery-footer p a:hover{opacity:.7}.gallery-intro code{border-radius:calc(var(--radius) - 4px);background:var(--muted);color:var(--foreground);padding:.125rem .375rem;font:.875em ui-monospace,SFMono-Regular,Menlo,monospace}.gallery-footer{color:var(--muted-foreground);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;padding:1.5rem max(1rem,50% - 35rem);font-size:.8125rem;display:flex}.footer-links{flex-wrap:wrap;gap:.5rem 1.25rem;display:flex}.footer-links .link{font-size:.8125rem}.gallery-footer .heart{vertical-align:-.125rem;fill:currentColor;width:.875rem;height:.875rem;margin:0 .0625rem}.scene-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));gap:1.25rem;display:grid}.scene-card{border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);background:var(--background);box-shadow:var(--shadow-xs);color:inherit;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.scene-card:hover{border-color:var(--ring)}.scene-card:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent);outline:none}.scene-thumb{aspect-ratio:3/2;border-bottom:1px solid var(--border);background:var(--muted);overflow:hidden}.scene-thumb img{object-fit:cover;width:100%;height:100%;display:block}.scene-body{flex-direction:column;flex:1;gap:.5rem;padding:1rem;display:flex}.scene-body h2{justify-content:space-between;align-items:center;gap:.5rem;margin:0;font-size:1rem;font-weight:600;line-height:1.3;display:flex}.scene-body h2 .icon{color:var(--muted-foreground)}.scene-body p{color:var(--muted-foreground);text-wrap:pretty;font-size:.8125rem}.viewer{grid-template-columns:minmax(0,1fr) 18.5rem;height:100%;display:grid;position:relative}.stage{background:var(--stage);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;min-width:0;position:relative;overflow:hidden}.stage:active{cursor:grabbing}.stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0}#preview{transition:filter .3s}.stage:is([data-state=busy],[data-state=paused]) #preview{filter:grayscale(.8)brightness(.55)}.stage.stale #output,.stage.interacting #output,.stage.interacting .buckets{opacity:0}.buckets{pointer-events:none;position:absolute;inset:0}.bucket{--corner:10px;background:linear-gradient(var(--worker), var(--worker)) top left / var(--corner) 2px, linear-gradient(var(--worker), var(--worker)) top left / 2px var(--corner), linear-gradient(var(--worker), var(--worker)) top right / var(--corner) 2px, linear-gradient(var(--worker), var(--worker)) top right / 2px var(--corner), linear-gradient(var(--worker), var(--worker)) bottom left / var(--corner) 2px, linear-gradient(var(--worker), var(--worker)) bottom left / 2px var(--corner), linear-gradient(var(--worker), var(--worker)) bottom right / var(--corner) 2px, linear-gradient(var(--worker), var(--worker)) bottom right / 2px var(--corner);outline:1px solid color-mix(in oklab, var(--worker) 35%, transparent);outline-offset:-1px;filter:drop-shadow(0 0 1px #0009);background-repeat:no-repeat;position:absolute}.bucket[hidden]{display:none}.bucket span{background:var(--worker);color:#09090b;border-radius:3px;padding:0 4px;font:600 10px/14px ui-monospace,SFMono-Regular,Menlo,monospace;position:absolute;top:4px;left:4px}.pill{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#e4e4e7;white-space:nowrap;background:#09090b99;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:.375rem;padding:.3rem .75rem .3rem .625rem;font-size:.75rem;display:inline-flex}.pill .icon{width:.875rem;height:.875rem}.stage-hint{pointer-events:none;opacity:.75;gap:.375rem;margin:0;padding:0;list-style:none;transition:opacity .2s;display:flex;position:absolute;bottom:.875rem;left:50%;transform:translate(-50%)}.stage-hint .pill{-webkit-backdrop-filter:none;backdrop-filter:none;text-shadow:0 1px 2px #0009;background:0 0;border:0;gap:.3125rem;padding:0 .375rem;font-size:.6875rem}.stage-hint .icon{filter:drop-shadow(0 1px 1.5px #0009);width:.75rem;height:.75rem}.stage.interacting .stage-hint{opacity:0}.progress{pointer-events:none;height:2px;position:absolute;inset:auto 0 0}#progress-bar{background:var(--primary);width:0;height:100%;transition:width .15s linear}.sidebar{background:var(--sidebar);border-left:1px solid var(--border);flex-direction:column;min-height:0;display:flex}.sidebar-header{border-bottom:1px solid var(--border);padding:1rem}.sidebar-brand{border-radius:var(--radius);color:inherit;align-items:center;gap:.75rem;margin:-.375rem;padding:.375rem;text-decoration:none;transition:background-color .15s;display:flex}.sidebar-brand:hover{background:var(--accent)}.sidebar-brand:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent);outline:none}.brand-mark{border-radius:var(--radius);background:var(--primary);width:2rem;height:2rem;color:var(--primary-foreground);flex:none;place-items:center;display:grid}.brand-mark svg{fill:currentColor;width:1.125rem;height:1.125rem}.sidebar-header h1{margin:0;font:600 .8125rem/1.25 ui-monospace,SFMono-Regular,Menlo,monospace}.sidebar-header p{color:var(--muted-foreground);font-size:.75rem}.sidebar-content{flex-direction:column;flex:1;gap:.25rem;min-height:0;padding:1rem;display:flex;overflow-y:auto}.sidebar-content>*{flex-shrink:0}.back-link{z-index:1;font-size:.8125rem;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s;position:absolute;top:1rem;left:1rem}.back-link:hover{color:#fafafa;background:#09090bcc}.back-link:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent);outline:none}.hint{color:var(--muted-foreground);font-size:.75rem}.group{border-bottom:1px solid var(--border)}.group:last-child{border-bottom:0}.group-trigger{border-radius:calc(var(--radius) - 2px);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;margin:0 -.5rem;padding:.5rem;font-size:.8125rem;font-weight:600;list-style:none;transition:background-color .15s;display:flex}.group-trigger::-webkit-details-marker{display:none}.group-trigger:hover{background:var(--accent)}.group-trigger:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent);outline:none}.group-trigger>span:first-of-type{flex:1}.group-trigger>.icon:first-child{color:var(--muted-foreground);transition:color .15s}.group-trigger:hover>.icon:first-child,.group[open]>.group-trigger>.icon:first-child{color:var(--foreground)}.chevron{color:var(--muted-foreground);transition:transform .15s;transform:rotate(-90deg)}.group[open]>.group-trigger .chevron{transform:none}.group-content{flex-direction:column;gap:.75rem;padding:.5rem 0 1rem;display:flex}.field{flex-direction:column;gap:.375rem;display:flex}.field-head{justify-content:space-between;align-items:center;display:flex}.field label,.switch-row>span{font-size:.875rem;font-weight:500;line-height:1}.field output{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font:.75rem ui-monospace,SFMono-Regular,Menlo,monospace}.is-disabled{opacity:.5}.is-disabled *{cursor:not-allowed!important}.select{border:1px solid var(--input);border-radius:calc(var(--radius) - 2px);background:var(--background) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right .625rem center;width:100%;height:2.25rem;box-shadow:var(--shadow-xs);color:inherit;font:inherit;appearance:none;cursor:pointer;padding:0 2rem 0 .75rem;transition:border-color .15s,box-shadow .15s}.select:focus-visible,.button:focus-visible,.switch:focus-visible,.slider:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent);outline:none}.select:focus-visible{border-color:var(--ring)}.select-trigger{text-align:left;background-image:none;justify-content:space-between;align-items:center;gap:.5rem;padding-right:.625rem;display:flex}.select-trigger .icon{color:var(--muted-foreground);transition:transform .15s}.select-trigger[aria-expanded=true] .icon{transform:rotate(180deg)}.select-trigger:disabled{cursor:not-allowed}.select-content{border:1px solid var(--border);border-radius:var(--radius);background:var(--background);max-height:16rem;color:var(--foreground);outline:none;margin:0;padding:.25rem;font:.875rem/1.45 ui-sans-serif,system-ui,-apple-system,Segoe UI,Inter,sans-serif;position:fixed;inset:auto;overflow-y:auto;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.select-content:popover-open{animation:.12s ease-out select-in}@keyframes select-in{0%{opacity:0;transform:scale(.96) translateY(var(--from-y,-4px))}}.select-item{border-radius:calc(var(--radius) - 4px);cursor:default;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:1rem;padding:.375rem .5rem;display:flex}.select-item.is-active{background:var(--accent)}.select-item .icon{visibility:hidden}.select-item[aria-selected=true] .icon{visibility:visible}.switch-row{cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.switch-row small{color:var(--muted-foreground);margin-top:.3rem;font-size:.75rem;font-weight:400;display:block}.switch{background:var(--input);width:2rem;height:1.15rem;box-shadow:var(--shadow-xs);appearance:none;cursor:pointer;border:1px solid #0000;border-radius:999px;flex:none;margin:0;transition:background-color .15s,box-shadow .15s;position:relative}.switch:before{content:"";background:var(--background);border-radius:50%;width:1rem;height:1rem;transition:transform .15s;position:absolute;top:50%;left:1px;transform:translateY(-50%)}.switch:checked{background:var(--primary)}.switch:checked:before{background:var(--primary-foreground);transform:translate(calc(1rem - 4px),-50%)}.slider{--fill:50%;appearance:none;cursor:pointer;background:0 0;width:100%;height:1rem;margin:0}.slider::-webkit-slider-runnable-track{background:linear-gradient(var(--primary), var(--primary)) 0 / var(--fill) 100% no-repeat, var(--muted);border-radius:999px;height:.375rem}.slider::-moz-range-track{background:var(--muted);border-radius:999px;height:.375rem}.slider::-moz-range-progress{background:var(--primary);border-radius:999px;height:.375rem}.slider::-webkit-slider-thumb{border:1px solid var(--primary);background:var(--background);width:1rem;height:1rem;box-shadow:var(--shadow-xs);appearance:none;border-radius:50%;margin-top:-.3125rem;transition:box-shadow .15s}.slider::-moz-range-thumb{border:1px solid var(--primary);background:var(--background);width:1rem;height:1rem;box-shadow:var(--shadow-xs);border-radius:50%}.slider:hover::-webkit-slider-thumb{box-shadow:0 0 0 4px color-mix(in oklab, var(--ring) 35%, transparent)}.badge{border-radius:calc(var(--radius) - 2px);background:var(--primary);color:var(--primary-foreground);border:1px solid #0000;align-items:center;gap:.375rem;padding:.125rem .5rem;font-size:.75rem;font-weight:500;line-height:1rem;display:inline-flex}.badge-outline{border-color:var(--border);color:var(--foreground);font-variant-numeric:tabular-nums;background:0 0}#phase:before{content:"";background:currentColor;border-radius:50%;width:.375rem;height:.375rem}#phase[data-state=busy]:before{animation:1s ease-in-out infinite pulse}#phase[data-state=done]{background:color-mix(in oklab, var(--success) 15%, transparent);color:var(--success)}#phase[data-state=paused],#phase[data-state=preview]{background:color-mix(in oklab, var(--warning) 15%, transparent);color:var(--warning)}#phase[data-state=error]{background:color-mix(in oklab, var(--destructive) 15%, transparent);color:var(--destructive)}@keyframes pulse{50%{opacity:.3}}.workers{grid-template-columns:repeat(auto-fill,minmax(4.5rem,1fr));gap:.375rem;display:grid}.worker{border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);background:var(--background);align-items:center;gap:.375rem;padding:.3rem .5rem;font-size:.75rem;transition:border-color .15s,background-color .15s;display:flex}.worker[data-active=true]{border-color:color-mix(in oklab, var(--worker) 60%, var(--border));background:color-mix(in oklab, var(--worker) 10%, var(--background))}.worker-dot{background:var(--worker);opacity:.35;border-radius:2px;flex:none;width:.5rem;height:.5rem}.worker[data-active=true] .worker-dot{opacity:1;box-shadow:0 0 0 3px color-mix(in oklab, var(--worker) 25%, transparent)}.worker-name{font-weight:500}.worker-count{color:var(--muted-foreground);font-variant-numeric:tabular-nums;margin-left:auto;font:.6875rem ui-monospace,SFMono-Regular,Menlo,monospace}.sidebar-footer{border-top:1px solid var(--border);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--background);box-shadow:var(--shadow-xs);padding:.75rem}.status-card{flex-direction:column;gap:.5rem;display:flex}.status-card p{font-size:.8125rem}.status-card p.muted{font-variant-numeric:tabular-nums;font-size:.75rem}.status-head{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.meter{background:var(--muted);border-radius:999px;height:.375rem;overflow:hidden}#meter-bar{border-radius:inherit;background:var(--primary);width:0;height:100%;transition:width .15s linear}.actions{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.button{border:1px solid var(--primary);border-radius:calc(var(--radius) - 2px);background:var(--primary);height:2.25rem;box-shadow:var(--shadow-xs);color:var(--primary-foreground);font:inherit;white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding:0 1rem;font-weight:500;transition:background-color .15s,opacity .15s;display:inline-flex}.button:hover{opacity:.9}.button-outline{border-color:var(--input);background:var(--background);color:var(--foreground)}.button-outline:hover{background:var(--accent);opacity:1}.link{color:var(--muted-foreground);text-align:center;justify-content:center;align-items:center;gap:.375rem;font-size:.75rem;text-decoration:none;transition:color .15s;display:inline-flex}.link:hover{color:var(--foreground)}@media (width<=48rem){.viewer{grid-template-rows:60vh auto;grid-template-columns:1fr;height:auto}.sidebar{border-top:1px solid var(--border);border-left:0}.sidebar-content{overflow:visible}}
