body{--base-font: "Space Mono", monospace;--primary: #1e88e5;--error: #ef5350;--bg-primary: light-dark(#fff, #000);--bg-secondary: light-dark(#f8f9fa, #111);--bg-tertiary: light-dark(#f4f4f4, #222);--bg-quaternary: light-dark(#dee2e6, #333);--bg-quinary: light-dark(#ced4da, #444);--bg-senary: light-dark(#111, #eee);--bg-septenary: light-dark(#e9ecef, #3d3d3d);--bg-octonary: light-dark(#495057, #dbdbdb);--text-primary: light-dark(#111, #fff);--text-secondary: light-dark(#495057, #ccc);--text-tertiary: light-dark(#6c757d, #aaa);--text-quaternary: light-dark(#adb5bd, #777);--text-quinary: light-dark(#fff, #111);--text-senary: light-dark(#6c757d, #999);--border-primary: light-dark(#dee2e6, #333);--border-secondary: light-dark(#ced4da, #444);--border-tertiary: light-dark(#adb5bd, #777);--selection-bg: light-dark(#111, #fff);--selection-text: light-dark(#fff, #111);--tooltip-bg: light-dark(#111, #fff);--tooltip-text: light-dark(#fff, #000);--tooltip-border: light-dark(#495057, #ddd);--hover-brightness: light-dark(.8, 1.3)}.bg-primary{background:var(--bg-primary)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-quaternary{color:var(--text-quaternary)}.border-primary{border-color:var(--border-primary)}.border-secondary{border-color:var(--border-secondary)}.border-tertiary{border-color:var(--border-tertiary)}::selection{background:var(--selection-bg);color:var(--selection-text)}body{font-family:var(--base-font);font-size:12px;background:var(--bg-primary)}#root>div{min-height:100dvh}h1,h2,h3,h4,h5,h6{font-weight:400}li{list-style:none}input,textarea{font-family:var(--base-font);background:none;color:var(--text-primary);border:none;outline:none;font-size:inherit;resize:none;-webkit-user-select:text;user-select:text}input::placeholder,textarea::placeholder{-webkit-user-select:none;user-select:none}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;padding:10px;background:var(--bg-primary);color:var(--text-primary);border:none;font-size:inherit;cursor:pointer}select:focus{outline:none}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;width:100%}input[type=range]::-webkit-slider-runnable-track{height:8px;background:var(--bg-quinary);border-radius:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;background:var(--primary);border-radius:50%;margin-top:-6px}.selectWrapper{position:relative;padding-right:20px;border:1px solid var(--border-primary);border-radius:4px}.selectWrapper:after{content:"▾";position:absolute;scale:1.4 1;top:50%;right:10px;transform:translateY(-50%);color:var(--text-tertiary)}button{display:flex;gap:5px;font-family:var(--base-font);background:none;color:var(--text-primary);border:none;font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;padding:0}button:focus{outline:none}button[disabled]{opacity:.5;cursor:not-allowed;pointer-events:none}button .icon{display:block}.button{display:inline-flex;padding:10px;border-radius:8px;gap:4px;align-items:center;justify-content:center;background:var(--bg-senary);color:var(--text-quinary);position:relative;transition:filter .1s ease-in-out}.button.primary{background:var(--primary);color:#fff}.button.minor{font-size:11px;background:var(--bg-quinary);color:var(--text-secondary)}.button.floating{animation:float 2s ease-in-out infinite}.button:active{top:1px;filter:brightness(.9)!important}.button:hover{filter:brightness(1.1)}.icon{font-family:Material Symbols Outlined;font-weight:300;line-height:1}.iconButton{display:flex;align-items:center;justify-content:center;background:var(--bg-quaternary);color:var(--text-senary);border-radius:100px;padding:5px;aspect-ratio:1;width:30px;font-size:17px;transition:all .2s ease-out}.iconButton:hover{background:var(--bg-quinary);color:var(--text-primary)}h1{font-size:22px;white-space:nowrap}main{color:var(--text-primary);padding:20px 20px 100px}summary{cursor:pointer}.toggle{display:flex;gap:1px;white-space:nowrap}.toggle button{background:var(--bg-quaternary);color:var(--text-tertiary);font-size:12px}.toggle button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.toggle button:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.chip{background:var(--bg-septenary);color:var(--text-secondary);padding:4px 10px;font-size:12px;border-radius:100px;display:inline-block;display:flex;align-items:center;gap:4px;white-space:nowrap}.chip.active{background:var(--bg-octonary);color:var(--bg-septenary)}.chip.primary{background:var(--primary);color:#fff}:has(>.tooltip){position:relative}@media(hover:hover){:has(>.tooltip):hover .tooltip{opacity:1}}.tooltip{position:absolute;top:calc(100% + 7px);left:50%;transform:translate(-50%);background:var(--tooltip-bg);padding:6px;border-radius:4px;color:var(--tooltip-text);font-size:11px;opacity:0;pointer-events:none;transition:opacity .2s ease-in-out;width:max-content;max-width:150px;text-align:center;z-index:9999;box-shadow:0 0 10px #0000001a;border:1px solid var(--tooltip-border)}.tooltip.right{left:unset;right:0;transform:translate(0)}.intro{display:flex;flex-direction:column;gap:40px;align-items:start;justify-content:center;text-align:left;max-width:820px;margin:60px auto;padding:0 16px}.intro h2{font-size:22px}.intro p{font-size:14px;line-height:1.8;padding:0}.intro .presets{justify-content:start}@keyframes float{0%{transform:translateY(-2px)}50%{transform:translateY(1px)}to{transform:translateY(-2px)}}.loginContainer{display:flex;align-items:center;justify-content:center;min-height:100dvh;background:var(--bg-primary)}.loginCard{display:flex;flex-direction:column;align-items:center;gap:30px;padding:60px 40px;background:var(--bg-secondary);border-radius:16px;border:1px solid var(--border-primary);max-width:400px;text-align:center}.loginCard h1{display:flex;gap:10px;color:var(--text-primary);margin:0}.loginSubtitle{font-size:14px;color:var(--text-secondary);margin:-10px 0 0}.loginButton{font-size:14px;padding:12px 24px}.loadingContainer{display:flex;align-items:center;justify-content:center;min-height:100dvh;background:var(--bg-primary);color:var(--text-primary);font-size:14px}.error{color:#f44;font-size:12px;margin:-10px 0 0}.export-import-footer .chip,.fullscreen-controls .chip{cursor:pointer;padding:8px 10px;background:var(--bg-quaternary);color:var(--text-primary);text-align:left;line-height:1.5;white-space:nowrap;display:flex;align-items:center;border:1px solid var(--border-primary)}.export-import-footer .chip .icon,.fullscreen-controls .chip .icon{font-size:14px}@media(hover:hover){.export-import-footer .chip:hover,.fullscreen-controls .chip:hover{filter:brightness(var(--hover-brightness))}}.p5Renderer canvas{display:block;width:100%;height:100%}.fullscreen .htmlRenderer{scale:1}.fullscreen .renderer{width:100%;height:100%;display:flex;align-items:center}.fullscreen .renderer iframe{border:none;width:100%;height:100%;background:#000}.fullscreen .set-aspect iframe{aspect-ratio:4/3;height:auto}header.hide .header-toggle{display:none}header{position:sticky;top:0;left:0;right:0;z-index:200;min-height:82px;background:var(--bg-primary);color:var(--text-primary);border-bottom:1px solid var(--border-primary);display:flex}header .inner-header{display:flex;flex-grow:1;flex-wrap:wrap;gap:15px;align-items:stretch;padding:12px 20px}header .inner-header h1{display:flex;flex-direction:column;justify-content:center;margin-right:10px;font-size:15px;text-transform:uppercase;background-size:100% 500%;color:transparent;background-image:linear-gradient(0deg,#4158d0,#c850c0,#ffcc70,#c850c0,#4158d0);-webkit-background-clip:text;background-clip:text;animation:gradientFlow 10s ease infinite alternate}header .inner-header h1 span{color:var(--text-primary);font-size:.9em;position:relative;top:-2px}header .inner-header>div{display:flex;flex-direction:column;justify-content:space-between}header .inner-header>div:has(.toggle),header .inner-header>div:has(.resetButton){gap:5px}header .inner-header .label{font-size:12px;color:var(--text-tertiary)}header .inner-header .rangeWrap{flex:1;display:flex;align-items:center}header .inner-header .prompt{flex:1 1 200px;min-width:200px}header .inner-header .promptInput{border:1px solid var(--primary);padding:10px;border-radius:4px;font-size:12px;height:36px;width:100%;overflow:hidden}header .inner-header .promptInput:focus{background:#ffffff08}header .inner-header .batchSize{display:flex;align-items:center;gap:8px;margin-bottom:5px}header .inner-header .batchSize input{width:70px;padding:0}.selectorWrapper{position:relative;display:flex;flex-direction:column;gap:5px}.selectorWrapper>p{align-items:center;display:flex;border:1px solid var(--border-primary);white-space:nowrap;border-radius:4px;padding:10px 35px 10px 10px;min-width:145px;cursor:default;height:36px}@media(max-width:768px){.selectorWrapper>p{min-width:unset}}.selectorWrapper:after{content:"▾";position:absolute;scale:1.4 1;top:18px;right:10px;transform:translateY(-50%);color:var(--text-tertiary)}.selectorWrapper.prompt:after{content:""}.selectorWrapper.shorter:after{top:14px}.selector{position:absolute;top:40px;width:fit-content;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:4px;padding:10px;max-height:30vh;max-height:370px;overflow:auto;opacity:0;transition:all .2s ease-out;pointer-events:none;z-index:10;transform:translateY(-6px);transform-origin:top;max-width:70vw;will-change:opacity,transform}.selector.active{opacity:1;pointer-events:auto;transform:translateY(0)}.selector ul{display:flex;flex-direction:column;gap:8px}.selector ul.wrapped{flex-wrap:wrap;flex-direction:row}.selector ul.presets{flex-wrap:wrap}.selector ul.presets .chip{white-space:normal}.selector .chip{padding:8px 10px;border-radius:4px;background:var(--bg-quaternary);color:var(--text-primary);text-align:left;line-height:1.5;white-space:nowrap}.selector .chip.active{background:var(--bg-octonary);color:var(--bg-septenary)}.selector .chip.primary{background:var(--primary);color:#fff}@media(hover:hover){.selector .chip:hover{filter:brightness(var(--hover-brightness))}}.selector.presetList{opacity:1;pointer-events:auto;position:static;transform:none;background:none;border:none;padding:0;max-height:none;max-width:none;width:auto;height:auto}.dropZone{border:1px dashed var(--border-tertiary);color:var(--border-tertiary);border-radius:4px;padding:10px;text-align:center;cursor:pointer;margin-bottom:5px;position:relative}.dropZone:has(img){border:1px solid var(--primary)}.dropZone img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:4px}.imageInput input{display:none}.resetButton,.toggleHeaderButton{display:flex;align-items:center;justify-content:center;font-size:15px;padding:2px;aspect-ratio:1;border-radius:50%;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-primary)}.resetButton:hover,.toggleHeaderButton:hover{background:var(--bg-quaternary);color:var(--text-primary);border:1px solid var(--border-secondary)}.toggleHeaderButton{width:36px}@keyframes gradientFlow{0%{background-position:0% 0%}to{background-position:0% 300%}}.feed{display:flex;flex-direction:column;gap:20px;align-items:center}.feed>li{width:100%;display:flex;flex-direction:column;border:1px solid var(--border-primary);gap:10px;background:var(--bg-tertiary);padding:12px 20px;border-radius:10px;animation:.5s fadeInUp ease-out}.feed>li .anchorTop{align-items:flex-start!important}.feed .header{display:flex;gap:15px}.feed .header .prompt{display:flex;flex-direction:column;gap:5px;align-items:flex-start}.feed .header .systemInstruction{color:var(--text-secondary)}.feed .header h3{font-size:13px;line-height:1.5;display:flex;align-items:center;gap:10px;flex-grow:1}@media(max-width:768px){.feed .header h3{flex-direction:column;align-items:flex-start}}.feed .header div,.feed .actions{display:flex;align-items:center;gap:10px}.outputs{gap:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.outputs>li:only-child{margin-right:auto;width:100%;max-width:700px}.modelOutput{display:flex;flex-direction:column;gap:10px}.modelOutput .renderer{position:relative;width:100%;height:100%;animation:.5s fadeIn ease-out}.modelOutput .error{position:absolute;top:0;right:0;bottom:0;left:0;padding:20px;background:var(--bg-primary);z-index:100;display:flex;align-items:flex-start;flex-direction:column}.modelOutput .error p{display:flex;align-items:center;gap:5px;padding:5px;color:var(--text-secondary);line-height:2}.modelOutput .error .icon{color:var(--text-primary);font-size:26px}.outputRendering{z-index:20;flex:1;aspect-ratio:4/3;position:relative;perspective:2000px;transform-style:preserve-3d;border-radius:4px}.outputRendering.flipped>div{transform:rotateY(180deg)}.outputRendering.flipped>div.back{transform:rotateY(0)}.outputRendering>div{display:flex;align-items:center;justify-content:center;outline:3px solid rgba(255,255,255,0);transition:outline .2s ease-out;border:1px solid var(--border-secondary);border-radius:inherit;overflow:hidden;position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;transition:transform .3s ease-out,outline .2s ease-out}.outputRendering>div.back{transform:rotateY(-180deg);background:var(--bg-tertiary);z-index:1}.outputRendering>div.back pre{width:100%;height:100%;padding:10px;font-size:12px;line-height:1.6;overflow:auto}.outputRendering iframe{border:none;height:100.9%;aspect-ratio:4/3;transform-origin:0 0;position:absolute;top:0;left:0;overflow:hidden;background:var(--bg-primary)}.outputRendering .loader{font-size:24px;transform-origin:50% 50%;animation:spin 1.2s infinite ease-in-out;line-height:0}.htmlRenderer{scale:.5;transform-origin:0 0}.htmlRenderer .error{scale:2;transform-origin:0 0}.htmlRenderer iframe{width:200%;height:200%}.imageRenderer{background:var(--bg-primary);width:100%;height:100%}.imageRenderer img{width:100%;height:100%;object-fit:contain}.modelInfo{display:flex;justify-content:space-between;align-items:flex-start;font-size:12px;color:var(--text-primary);gap:15px}.timer{color:var(--text-tertiary)}.modelName{display:flex;flex-direction:column;gap:5px}.outputActions{display:flex;align-items:center;gap:8px;opacity:0;transition:opacity .2s ease-out;pointer-events:none}.outputActions.active{opacity:1;pointer-events:auto}@keyframes spin{0%,20%{transform:rotate(0)}80%,to{transform:rotate(360deg)}}@keyframes fadeInUp{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
