img.svelte-1hoglcg{opacity:0;max-width:100%;height:auto}img.fade-in.svelte-1hoglcg{opacity:1;transition:opacity .3s ease-in-out}img.visible.svelte-1hoglcg{opacity:1;transition:none}img.error.svelte-1hoglcg{opacity:.5;filter:grayscale()}div.svelte-clyidt{width:100%;height:100%;position:relative;overflow:hidden}canvas.svelte-clyidt{width:100%;height:100%;display:block;position:relative}:root{--page-title-height:4.5rem}.page{grid-template-rows:auto 1fr;min-height:100%;display:grid}.threlte-view{background:radial-gradient(circle at top,#123a67b7,#0000 80%),linear-gradient(#020712 0%,#050b18 100%);grid-template-columns:minmax(0,1fr) 320px;gap:1rem;min-height:0;padding:1rem 1rem 0;display:grid}.canvas-shell{aspect-ratio:1;width:min(100%,90vh - 1rem);max-height:calc(90vh - 4rem);top:calc(var(--page-title-height) + 1rem);z-index:0;background:#01040b;border:1px solid #8eb4dd;border-radius:18px;justify-self:start;position:sticky;overflow:hidden}.canvas-shell canvas{width:100%;height:100%;display:block}.canvas-shell:fullscreen{aspect-ratio:auto;border:none;border-radius:0;width:100%;height:100%;max-height:none}.controls{z-index:1;align-content:start;gap:1rem;padding-bottom:1rem;display:grid;position:relative}fieldset{color:#d7e4f4;background:#050c19e0;border:1px solid #8eb4dd;border-radius:14px;gap:.85rem;margin:0;padding:1rem;display:grid}legend{color:#f0f6ff;letter-spacing:.03em;padding:0 .35rem;font-weight:600}label{gap:.35rem;font-size:.88rem;display:grid}.label-row{grid-template-columns:1fr auto;align-items:center;column-gap:.75rem;display:grid}.label-value{text-align:right;opacity:.7;font-variant-numeric:tabular-nums;letter-spacing:.02em;padding-right:.2rem}select,input,button{color:#f0f6ff;background:#0a1222f2;border:1px solid #8eb4dd;border-radius:10px;padding:.55rem .7rem}.save-actions{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.export-actions{background:linear-gradient(#162643b3,#080f1dbf);border-radius:12px;grid-auto-columns:max-content;grid-auto-flow:column;gap:.55rem;display:grid}.action{-webkit-user-select:none;user-select:none;cursor:pointer;letter-spacing:.08em;text-transform:uppercase;color:#e8f5ff;background:linear-gradient(#3e659ee6 0%,#162f59f2 100%),radial-gradient(circle at 24% 16%,#b4e2ff33,#0000 58%);border:1px solid #7faddb7a;border-radius:9px;justify-content:center;align-items:center;min-width:2.9rem;height:2.1rem;padding:0 .65rem;font-size:.76rem;font-weight:700;line-height:1;transition:transform .12s,box-shadow .12s,border-color .12s,filter .12s;display:inline-flex;box-shadow:inset 0 1px #e4f5ff33,0 6px 14px #02081073}.action:hover:not(:disabled){filter:brightness(1.06);border-color:#a7d2f4d9;box-shadow:inset 0 1px #eefaff47,0 10px 18px #06101f8c}.action:active:not(:disabled){filter:brightness(.98);box-shadow:inset 0 1px #f5fcff2e,0 4px 9px #040a1480}.action:focus-visible{outline-offset:1px;outline:2px solid #7fcbfff2}.action:disabled{cursor:not-allowed;opacity:.55;filter:saturate(.55);box-shadow:inset 0 1px #f5fcff1a}.preset-menu{margin-left:auto;position:relative}.preset-menu summary{list-style:none}.preset-menu summary::-webkit-details-marker{display:none}.preset-menu-trigger{letter-spacing:.06em;color:#eef5ff;background:linear-gradient(#3e79d4f2 0%,#204e9bfa 100%),radial-gradient(circle at 22% 18%,#c1e1ff33,#0000 60%);min-width:2.9rem;padding-inline:.55rem}.preset-menu-dropdown{z-index:20;background:linear-gradient(#1c2e4efa 0%,#091121fa 100%),radial-gradient(circle at 20% 0,#78b0ff29,#0000 60%);border:1px solid #a7d2f4a6;border-radius:10px;gap:.25rem;width:13.5rem;padding:.35rem;display:grid;position:absolute;top:calc(100% + .35rem);right:0;box-shadow:0 10px 30px #0000008c,0 0 0 1px #02060e66}.preset-menu-item{text-align:left;cursor:pointer;border-radius:8px;width:100%;padding:.5rem .6rem;font-size:.82rem}.preset-menu-item:hover{background:#467eec3d}.preset-menu-item:focus-visible{outline-offset:1px;outline:2px solid #6cb3ff}.preset-manager-backdrop{z-index:200;background:#020814b3;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.preset-manager-panel{color:#dbe9f7;background:#070e1cfa;border:1px solid #8eb4dd73;border-radius:14px;width:min(520px,100%);max-height:min(85vh,700px);padding:1rem;overflow:auto;box-shadow:0 20px 40px #00000073}.preset-manager-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.9rem;display:flex}.preset-manager-header h2{margin:0;font-size:1rem}.close-manager-button{width:auto;padding:.45rem .65rem;font-size:.82rem}.preset-group{gap:.45rem;margin-bottom:1rem;display:grid}.preset-group h3{opacity:.92;text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.86rem}.preset-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.preset-row{background:#101c36a6;border-radius:8px;justify-content:space-between;align-items:center;gap:.6rem;padding:.5rem .55rem;display:flex}.preset-row-actions{gap:.35rem;display:flex}.preset-row-button{border-radius:7px;width:auto;padding:.35rem .5rem;font-size:.76rem}.preset-row-button.delete{color:#ffd4db;border-color:#da6278cc}.preset-empty{opacity:.75;margin:0;font-size:.82rem}input[type=color]{width:100%;min-height:2.75rem;padding:.2rem}.toggle-row{grid-template-columns:1fr auto;align-items:center}.compact-number-row{grid-template-columns:1fr auto;align-items:center;column-gap:.75rem}.compact-number-row input[type=number]{text-align:left;font-variant-numeric:tabular-nums;width:6.5rem;min-width:6.5rem;padding-right:.25rem}.toggle-row input[type=checkbox]{width:1rem;height:1rem;padding:0}.control-grid{gap:.75rem;display:grid}@media (width>=1200px){.canvas-shell{width:100%;height:calc(100dvh - var(--page-title-height) - 2rem);aspect-ratio:auto;justify-self:stretch;max-height:none}}@media (width<=900px){.threlte-view{grid-template-columns:1fr}.canvas-shell{justify-self:center;width:min(100%,100vh - 2rem);position:static}}.control-section.svelte-1ez0ijy{background:#070e1c8c;border:1px solid #8eb4dd2e;border-radius:10px;padding:.35rem .75rem}summary.svelte-1ez0ijy{cursor:pointer;box-sizing:border-box;color:#f0f6ff;align-items:center;gap:.45rem;width:100%;margin:0;font-size:.9rem;font-weight:600;list-style:none;display:inline-flex}.control-content.svelte-1ez0ijy{margin-top:.6rem}summary.svelte-1ez0ijy::-webkit-details-marker{display:none}.summary-with-toggle.svelte-1ez0ijy{gap:.5rem;display:flex}.summary-main.svelte-1ez0ijy{flex:auto;align-items:center;gap:.45rem;min-width:0;display:flex}.summary-chevron.svelte-1ez0ijy{opacity:.82;transform-origin:50%;flex:none;place-items:center;width:1rem;height:1rem;transition:transform .14s;display:inline-grid;transform:rotate(0)}.summary-chevron.svelte-1ez0ijy:before{content:"";clip-path:polygon(0 0,100% 50%,0 100%);background:#f0f6ff;width:.45rem;height:.6rem}.summary-title.svelte-1ez0ijy{transform:translateY(-1px)}.control-section[open].svelte-1ez0ijy .summary-chevron:where(.svelte-1ez0ijy){transform:rotate(90deg)}.summary-toggle.svelte-1ez0ijy{justify-content:center;align-items:center;margin-left:auto;display:inline-flex}.summary-toggle.svelte-1ez0ijy input:where(.svelte-1ez0ijy){width:1rem;height:1rem;padding:0}.export-split.svelte-1nbs26l{border-radius:9px;align-items:stretch;height:2.1rem;display:inline-flex;position:relative;box-shadow:0 6px 14px #02081073}.export-split-main.svelte-1nbs26l,.export-single-main.svelte-1nbs26l{box-sizing:border-box;background:linear-gradient(#257c9ceb 0%,#164660f5 100%),radial-gradient(circle at 30% 20%,#b0efff38,#0000 58%);border-color:#70d6ff8c;min-width:5rem;height:2.1rem}.export-split-main.svelte-1nbs26l{border-radius:9px 0 0 9px}.export-single-main.svelte-1nbs26l{border-radius:9px}.export-split-menu.svelte-1nbs26l{margin-left:0}.export-split-trigger.svelte-1nbs26l{box-sizing:border-box;background:linear-gradient(#257c9ceb 0%,#164660f5 100%),radial-gradient(circle at 30% 20%,#b0efff38,#0000 58%);border-left-color:#0f3141d9;border-radius:0 9px 9px 0;width:2rem;min-width:2rem;height:2.1rem;padding:0}.export-split-chevron.svelte-1nbs26l{border-bottom:2px solid;border-right:2px solid;width:.42rem;height:.42rem;margin-top:-.2rem;transform:rotate(45deg)}.export-split-menu[open].svelte-1nbs26l .export-split-chevron:where(.svelte-1nbs26l){margin-top:.2rem;transform:rotate(225deg)}.export-menu-dropdown.svelte-1nbs26l{width:14.5rem}.fullscreen-toggle.svelte-e700wh{z-index:2;color:#d7e4f4;cursor:pointer;background:#050c1973;border:1px solid #0000;border-radius:8px;place-items:center;width:2rem;height:2rem;padding:0;font-size:1rem;line-height:1;display:grid;position:absolute;top:.6rem;right:.6rem}.fullscreen-toggle.svelte-e700wh:hover{color:#fff;background:#122846cc;border-color:#8eb4dd73}.fullscreen-toggle.svelte-e700wh:focus-visible{outline-offset:2px;outline:2px solid #6cb3ff}.webgl-failure.svelte-1d0gfk4{pointer-events:none;background:#01040b;flex-direction:column;justify-content:center;align-items:center;gap:1.25rem;padding:1.5rem;display:flex;position:absolute;inset:0}.webgl-failure-details.svelte-1d0gfk4{text-align:center;color:#dbe9f7;pointer-events:auto;-webkit-user-select:text;user-select:text;max-width:min(90%,36rem);max-height:40%;overflow:auto}.webgl-failure-title.svelte-1d0gfk4{color:#ff8a93;margin:0 0 .4rem;font-weight:600}.webgl-failure-message.svelte-1d0gfk4{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-family:ui-monospace,Consolas,monospace;font-size:.85rem}.webgl-failure-cross.svelte-1d0gfk4{aspect-ratio:1;width:min(58%,20rem);position:relative}.webgl-failure-cross.svelte-1d0gfk4:before,.webgl-failure-cross.svelte-1d0gfk4:after{content:"";background:#ff3947;border-radius:999px;width:100%;height:6%;position:absolute;top:47%;left:0;box-shadow:0 0 24px #ff39478c}.webgl-failure-cross.svelte-1d0gfk4:before{transform:rotate(45deg)}.webgl-failure-cross.svelte-1d0gfk4:after{transform:rotate(-45deg)}.palette-picker.svelte-15aevlw,label.svelte-15aevlw{gap:.35rem;display:grid}.palette-picker.svelte-15aevlw{margin-bottom:.75rem}label.svelte-15aevlw{font-size:.88rem}.palette-preview.svelte-15aevlw{border:1px solid #8eb4dd;border-radius:10px;width:100%;height:2rem;margin-top:.5rem;box-shadow:inset 0 0 0 1px #040a1440,0 4px 14px #0003}.edit-button.svelte-15aevlw{justify-self:end}dialog.svelte-15aevlw{color:#e8f2ff;background:#101a29;border:1px solid #8eb4dd;border-radius:8px;width:min(36rem,100vw - 2rem);max-height:calc(100vh - 2rem);padding:0;box-shadow:0 20px 60px #0000008c}dialog.svelte-15aevlw::backdrop{background:#02060cb8}form.svelte-15aevlw{gap:1rem;padding:1rem;display:grid}header.svelte-15aevlw,footer.svelte-15aevlw,.stop-row.svelte-15aevlw{align-items:center;gap:.75rem;display:flex}footer.svelte-15aevlw{flex-wrap:wrap}h2.svelte-15aevlw{flex:1;margin:0;font-size:1.1rem}.editor-preview.svelte-15aevlw{border:1px solid #8eb4dd;border-radius:6px;height:3rem}.stop-list.svelte-15aevlw{gap:.55rem;display:grid;overflow-y:auto}.stop-color.svelte-15aevlw{background:0 0;border:0;width:2.5rem;height:2rem;padding:0}.stop-position.svelte-15aevlw{flex:1;min-width:6rem}output.svelte-15aevlw{text-align:right;font-variant-numeric:tabular-nums;width:3rem}button.svelte-15aevlw{min-height:2rem}.icon-button.svelte-15aevlw{width:2rem;padding:0;font-size:1.25rem;line-height:1}.footer-spacer.svelte-15aevlw{flex:1}.copy-status.svelte-15aevlw{color:#a9d4ff;font-size:.8rem}.primary-button.svelte-15aevlw{font-weight:700}.seed-control.svelte-p3lagd{grid-template-columns:1fr auto;align-items:center;column-gap:.75rem;font-size:.88rem;display:grid}.seed-input-group.svelte-p3lagd{gap:.35rem;display:flex}input.svelte-p3lagd{text-align:left;font-variant-numeric:tabular-nums;width:6.5rem;min-width:0;padding-right:.25rem}button.svelte-p3lagd{cursor:pointer;place-items:center;width:2.1rem;height:2.1rem;padding:0;line-height:1;display:inline-grid}button.svelte-p3lagd:focus-visible{outline-offset:1px;outline:2px solid #7fcbfff2}.color-picker.svelte-2p6mms{gap:.35rem;margin-bottom:.75rem;font-size:.88rem;display:grid}.color-picker-swatch.svelte-2p6mms{cursor:pointer;border:1px solid #8eb4dd;border-radius:10px;justify-content:center;align-items:center;height:2rem;display:flex;position:relative;overflow:hidden}.color-picker-value.svelte-2p6mms{font-variant-numeric:tabular-nums;letter-spacing:.04em;color:#f0f6ff;text-shadow:0 1px 2px #000000e6,0 0 6px #000000b3;pointer-events:none;font-weight:600}.color-picker-swatch.svelte-2p6mms input[type=color]:where(.svelte-2p6mms){opacity:0;cursor:pointer;border:none;width:100%;height:100%;padding:0;position:absolute;inset:0}.view-mode-group.svelte-s3jfgy{gap:.3rem;display:grid}.radio-row.svelte-s3jfgy{grid-template-columns:auto 1fr;place-items:center start;column-gap:.45rem;font-size:.85rem;display:grid}.radio-row.svelte-s3jfgy input[type=radio]:where(.svelte-s3jfgy){flex:none;width:1rem;height:1rem;margin:0;padding:0}.page-title.svelte-1elf7ji{z-index:2;color:#f2f8ff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:radial-gradient(circle at 0 20%,#2a68a659,#0000 55%),linear-gradient(120deg,#1b325d,#122443),#060d1cb8;border-top:1px solid #b0d0ef59;border-bottom:1px solid #b0d0ef42;justify-content:space-between;align-items:center;gap:.8rem;margin:0;padding:1.1rem 1.25rem;display:flex;position:sticky;top:0;box-shadow:inset 0 1px #ffffff0f,0 8px 26px #00000059}h1.svelte-1elf7ji{letter-spacing:.03em;text-transform:uppercase;margin:0;font-size:clamp(1.2rem,2vw,1.9rem);font-weight:760;line-height:1.1}.page-title-actions.svelte-1elf7ji,.desktop-nav.svelte-1elf7ji{align-items:center;gap:.55rem;display:flex}.page-title-link.svelte-1elf7ji{color:#eaf3ff;letter-spacing:.07em;background:#050e1e8c;border:1px solid #b0d0ef73;border-radius:999px;padding:.4rem .8rem;font-size:.72rem;text-decoration:none;transition:transform .12s,border-color .12s,background-color .12s}.page-title-link.svelte-1elf7ji:hover{background:#0a1831d1;border-color:#deeeffd9}.page-title-link[aria-current=page].svelte-1elf7ji{background:#3c70acb8;border-color:#deeeffe6}.page-title-link.svelte-1elf7ji:focus-visible{outline-offset:2px;outline:2px solid #6cb3ff}.page-title-github-link.svelte-1elf7ji{color:#eaf3ff;background:#050e1e8c;border:1px solid #b0d0ef73;border-radius:999px;justify-content:center;align-items:center;width:2rem;min-width:2rem;height:2rem;transition:transform .12s,border-color .12s,background-color .12s;display:inline-flex}.page-title-github-link.svelte-1elf7ji:hover{background:#0a1831d1;border-color:#deeeffd9}.page-title-github-link.svelte-1elf7ji:focus-visible{outline-offset:2px;outline:2px solid #6cb3ff}.page-title-help-button.svelte-1elf7ji{color:#eaf3ff;cursor:pointer;background:#050e1e8c;border:1px solid #b0d0ef73;border-radius:999px;justify-content:center;align-items:center;width:2rem;min-width:2rem;height:2rem;font-size:.9rem;font-weight:700;line-height:1;transition:transform .12s,border-color .12s,background-color .12s;display:inline-flex}.page-title-help-button.svelte-1elf7ji:hover{background:#0a1831d1;border-color:#deeeffd9}.page-title-help-button.svelte-1elf7ji:focus-visible{outline-offset:2px;outline:2px solid #6cb3ff}.mobile-nav.svelte-1elf7ji{display:none;position:relative}.mobile-nav.svelte-1elf7ji summary:where(.svelte-1elf7ji){color:#eaf3ff;cursor:pointer;background:#050e1e8c;border:1px solid #b0d0ef73;border-radius:999px;place-items:center;width:2rem;height:2rem;font-size:1rem;line-height:1;list-style:none;display:inline-grid}.mobile-nav.svelte-1elf7ji summary:where(.svelte-1elf7ji)::-webkit-details-marker{display:none}.mobile-nav.svelte-1elf7ji summary:where(.svelte-1elf7ji):focus-visible{outline-offset:2px;outline:2px solid #6cb3ff}.mobile-nav.svelte-1elf7ji nav:where(.svelte-1elf7ji){z-index:30;background:#070e1cfa;border:1px solid #b0d0ef73;border-radius:10px;gap:.35rem;width:max-content;min-width:12rem;padding:.45rem;display:grid;position:absolute;top:calc(100% + .45rem);right:0;box-shadow:0 10px 30px #0006}.mobile-nav.svelte-1elf7ji .page-title-link:where(.svelte-1elf7ji){border-radius:7px}@media (width<=900px){.page-title.svelte-1elf7ji{gap:.6rem;padding:.95rem 1rem}.page-title-actions.svelte-1elf7ji{flex-shrink:0}.desktop-nav.svelte-1elf7ji{display:none}.mobile-nav.svelte-1elf7ji{display:block}}.hint.svelte-1rq8aa5{color:#a9c0da;margin:0;font-size:.85rem;line-height:1.4}.body-list.svelte-1rq8aa5{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.body-row.svelte-1rq8aa5{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:.4rem;display:grid}.body-row.svelte-1rq8aa5 select:where(.svelte-1rq8aa5){min-width:0;padding:.35rem .4rem;font-size:.8rem}.remove.svelte-1rq8aa5{cursor:pointer;padding:.35rem .5rem;font-size:.8rem;line-height:1}body,html,#app{margin:0;padding:0}body{color:#0f172a;background:#f3f7fb;font-family:Segoe UI,Inter,system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif}.app-shell.svelte-1n46o8q{grid-template-rows:1fr;height:100dvh;display:grid}main.svelte-1n46o8q{scrollbar-color:#174477 #020712;scrollbar-width:thin;scrollbar-gutter:stable;min-height:0;overflow:hidden scroll}.welcome-dialog.svelte-1n46o8q{background:0 0;border:none;width:min(680px,100% - 2rem);max-height:min(86vh,760px);padding:0;overflow:visible}.welcome-dialog.svelte-1n46o8q::backdrop{background:#020814b8}.welcome-dialog-panel.svelte-1n46o8q{color:#dbe9f7;background:#070e1cfa;border:1px solid #8eb4dd80;border-radius:14px;width:100%;max-height:min(86vh,760px);overflow:auto;box-shadow:0 24px 50px #00000073}.welcome-dialog-header.svelte-1n46o8q{z-index:2;background:#070e1cf5;border-bottom:1px solid #8eb4dd47;justify-content:space-between;align-items:center;gap:.75rem;margin:0;padding:.9rem 1rem;display:flex;position:sticky;top:0}.welcome-dialog-header.svelte-1n46o8q h2:where(.svelte-1n46o8q){letter-spacing:.03em;text-transform:uppercase;margin:0;font-size:1rem}.welcome-dialog-close.svelte-1n46o8q{color:#f0f6ff;cursor:pointer;background:#0a1222f2;border:1px solid #b0d0ef73;border-radius:10px;padding:.45rem .68rem}.welcome-dialog-close.svelte-1n46o8q:focus-visible{outline-offset:2px;outline:2px solid #6cb3ff}.welcome-dialog-content.svelte-1n46o8q{padding:1rem;font-size:.95rem;line-height:1.5}.welcome-dialog-content.svelte-1n46o8q h1{color:#f0f6ff;margin:0 0 .8rem;font-size:1.4rem;line-height:1.2}.welcome-dialog-content.svelte-1n46o8q h2{color:#e8f2ff;margin:1.15rem 0 .45rem;font-size:1.05rem}.welcome-dialog-content.svelte-1n46o8q p{margin:.45rem 0}.welcome-dialog-content.svelte-1n46o8q ul,.welcome-dialog-content.svelte-1n46o8q ol{margin:.45rem 0;padding-left:1.35rem}.welcome-dialog-content.svelte-1n46o8q li{margin:.2rem 0}.welcome-dialog-content.svelte-1n46o8q code{color:#f4f9ff;background:#1c355f94;border-radius:6px;padding:.08rem .34rem}
