:root{--bg-color:#000;--text-color:#ffffffe6;--accent-color:#4a9eff;--menu-bg:#0a0a1cb8;--panel-bg:#0a0a1ce0;--border-color:#ffffff1a;--border-highlight:#ffffff29;--panel-shadow:0 8px 40px #0000008c, 0 2px 10px #00000059, inset 0 1px 0 #ffffff12;--backdrop:blur(24px) saturate(160%);--slider-bg:#ffffff1a;--slider-thumb:#fff;--input-bg:#ffffff0d;--hover-bg:#ffffff1f;--active-bg:#4a9eff33;--toggle-bg:#0074f980;--green:#00ff0040;--green-hover:#00ff0080;--yellow:#ffff0040;--yellow-hover:#ffff0080;--red:#ff000040;--red-hover:#ff000080;--warning:#ff960054}html,body{color:var(--text-color);background:#000;margin:0;padding:0;font-family:Inter,Segoe UI,sans-serif}canvas{z-index:-1;position:fixed;top:0;left:0}*{-webkit-user-select:none!important;user-select:none!important}.panel-buttons{flex-direction:row;gap:10px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.panel-button{background:linear-gradient(145deg, #ffffff14 0%, #ffffff05 100%), var(--menu-bg);border:1px solid var(--border-color);border-top-color:var(--border-highlight);color:var(--text-color);cursor:pointer;text-align:center;-webkit-backdrop-filter:var(--backdrop);backdrop-filter:var(--backdrop);opacity:0;border-radius:12px;padding:10px 14px;font-size:13px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);animation:.5s cubic-bezier(.4,0,.2,1) forwards slideInButtonHorizontal;transform:translate(20px);box-shadow:0 4px 16px #0006,0 1px 4px #00000040,inset 0 1px #ffffff12}.panel-button:nth-child(5){animation-delay:.1s}.panel-button:nth-child(4){animation-delay:.2s}.panel-button:nth-child(3){animation-delay:.3s}.panel-button:nth-child(2){animation-delay:.4s}.panel-button:first-child{animation-delay:.5s}@keyframes slideInButtonHorizontal{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.panel-button.hide{animation:.5s cubic-bezier(.4,0,.2,1) forwards slideOutButtonHorizontal}@keyframes slideOutButtonHorizontal{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}.panel-button:hover{background:var(--menu-bg);transform:translateY(-2px)}.panel-button.active{background:var(--menu-bg);border-color:var(--accent-color)}.panel-button.menu-button{background:var(--menu-bg);border:1px solid var(--border-color);justify-content:center;align-items:center;margin-left:10px;display:flex;animation-delay:0s!important}.panel-button.menu-button:hover{background:var(--menu-bg);border-color:var(--accent-color)}.menu-icon{font-size:16px;line-height:1}@media (width<=768px){.panel-buttons{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000c;border-top:1px solid #ffffff1a;flex-direction:row;justify-content:space-around;padding:10px;position:fixed;inset:auto 0 0;overflow:auto hidden;transform:none}.panel-button{opacity:0;white-space:nowrap;color:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;flex:1;justify-content:center;align-items:center;margin:0 5px;padding:12px 8px;font-size:.9em;animation:none;display:flex;transform:translateY(100%)}.panel-button:not(.hide){opacity:1;animation:.3s cubic-bezier(.4,0,.2,1) forwards slideInButtonVertical;transform:translateY(0)}.panel-button.hide{animation:.3s cubic-bezier(.4,0,.2,1) forwards slideOutButtonVertical;transform:translateY(100%)}@keyframes slideInButtonVertical{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideOutButtonVertical{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}.panel-button:hover{background:#ffffff1a;transform:none}.panel-button.active{background:#fff3;border:none}.panel-button.menu-button{background:0 0;border:none;margin-left:0}.menu-icon{font-size:18px}}.control-panel-container{z-index:2000;width:350px;position:fixed;top:64px;right:20px}.control-panel{background:linear-gradient(145deg, #ffffff0e 0%, transparent 55%), var(--menu-bg);width:100%;-webkit-backdrop-filter:var(--backdrop);backdrop-filter:var(--backdrop);color:var(--text-color);box-sizing:border-box;border:1px solid var(--border-color);border-top-color:var(--border-highlight);box-shadow:var(--panel-shadow);z-index:2000;opacity:0;pointer-events:none;border-radius:16px;height:calc(100vh - 72px);padding:20px 22px;transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0;overflow:hidden;transform:translate(100%)}.panel-content.visible::-webkit-scrollbar{width:4px}.panel-content.visible::-webkit-scrollbar-track{background:0 0}.panel-content.visible::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:2px}.panel-content.visible::-webkit-scrollbar-thumb:hover{background-color:var(--accent-color)}.control-panel.active{opacity:1;pointer-events:all;transform:translate(0)}.control-group{border-bottom:1px solid var(--border-color);margin-bottom:18px;padding-bottom:18px}.control-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.control-group h3{color:var(--text-color);letter-spacing:.5px;align-items:center;margin:0 0 12px;font-size:15px;font-weight:600;display:flex}@media (width<=768px){.control-panel-container{width:auto;transition:none;position:static}.control-panel:not(.active){opacity:0;pointer-events:none}.control-panel{height:calc(100vh - 150px);overflow:hidden}}.shader-clock-wrapper{z-index:2;pointer-events:none;-webkit-user-select:none;user-select:none;width:100vw;height:36vh;position:fixed;top:6vh;left:0}.shader-clock-canvas{display:block}.crossfade-overlay{z-index:1;opacity:1;pointer-events:none;background-position:50%;background-size:cover;animation:.65s ease-out forwards crossfadeOut;position:fixed;inset:0}@keyframes crossfadeOut{0%{opacity:1}40%{opacity:.6}to{opacity:0}}.rendering-dialog{background:var(--menu-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-color);text-align:center;z-index:1000;opacity:0;border-radius:10px;width:400px;max-width:90%;padding:2rem;animation:.3s ease-out forwards dialogFadeIn;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes dialogFadeIn{0%{opacity:0;transform:translate(-50%,-60%)}to{opacity:1;transform:translate(-50%,-50%)}}.rendering-dialog-content{flex-direction:column;gap:1rem;display:flex}.rendering-dialog h2{color:var(--text-color);margin:0 0 1rem}.rendering-buttons{flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}.rendering-button{cursor:pointer;border:none;border-radius:5px;padding:.75rem 1.5rem;font-size:1rem;transition:background-color .2s}.gpu-button{background:var(--green);color:var(--text-color)}.software-button{background:var(--yellow);color:var(--text-color)}.cpu-button{background:var(--red);color:var(--text-color)}.gpu-button:hover{background:var(--green-hover);color:var(--text-color)}.software-button:hover{background:var(--yellow-hover);color:var(--text-color)}.cpu-button:hover{background:var(--red-hover);color:var(--text-color)}.error-dialog{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-color);text-align:center;z-index:1000;opacity:0;background:#00000080;border-radius:10px;width:400px;max-width:90%;padding:2rem;animation:.3s ease-out forwards errorDialogFadeIn;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes errorDialogFadeIn{0%{opacity:0;transform:translate(-50%,-60%)scale(.95)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.error-dialog-content{flex-direction:column;gap:1rem;display:flex}.error-dialog h2{color:var(--text-color);margin:0 0 1rem}.error-dialog ul{text-align:left;margin:1rem 0;padding-left:1.5rem}.error-dialog li{margin:.5rem 0}.rendering-warning{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-color);text-align:center;z-index:2500;opacity:0;border-radius:5px;max-width:300px;padding:1rem;animation:.3s ease-out forwards warningSlideIn;position:fixed;top:20px;left:20px}.green{background:var(--green)}.red{background:var(--red)}.yellow{background:var(--yellow)}@keyframes warningSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.rendering-dialog.hide,.error-dialog.hide,.rendering-warning.hide{animation:.3s ease-in forwards dialogFadeOut}@keyframes dialogFadeOut{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(.95)}}.rendering-warning.hide{animation:.3s ease-in forwards warningFadeOut}@keyframes warningFadeOut{0%{opacity:1}to{opacity:0}}.slider-container{margin-bottom:.85rem}.slider-container:last-child{margin-bottom:0}.slider-container label{color:var(--text-color);opacity:.9;margin-bottom:4px;font-size:13px;display:block}.slider-label-row{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.slider-input-group{align-items:center;gap:8px;margin-bottom:4px;display:flex}.slider-input-group input[type=range]{-webkit-appearance:none;background:var(--slider-bg);border-radius:3px;outline:none;flex:1;height:6px;transition:all .2s}.slider-input-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--slider-thumb);cursor:pointer;border-radius:50%;width:18px;height:18px;transition:all .2s;box-shadow:0 2px 6px #0003}.slider-input-group input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 3px 8px #0000004d}.slider-input-group input[type=number]{border:1px solid var(--border-color);background:var(--input-bg);width:70px;color:var(--text-color);border-radius:8px;padding:6px 8px;font-size:13px;transition:all .2s}.slider-input-group input[type=number]:focus{border-color:var(--accent-color);outline:none}.value-display{color:var(--text-color);opacity:.8;text-align:center;min-width:40px;font-size:12px}.slider-anim-btn{color:#ffffff59;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:4px;flex-shrink:0;margin-left:auto;margin-right:6px;padding:2px 5px;font-size:9px;line-height:1;transition:all .15s}.slider-anim-btn:hover{border-color:var(--accent-color);color:var(--accent-color)}.slider-anim-btn.active{border-color:var(--accent-color);color:var(--accent-color);background:var(--active-bg);animation:1.4s ease-in-out infinite animPulse}@keyframes animPulse{0%,to{opacity:1}50%{opacity:.55}}.type-button,.preset-button,.resolution-button,.generate-random-button{background:var(--input-bg);border:1px solid var(--border-color);color:var(--text-color);cursor:pointer;text-align:center;border-radius:8px;min-height:36px;padding:6px 4px;font-size:12px;font-weight:500;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1)}.type-button:hover,.preset-button:hover,.resolution-button:hover,.generate-random-button:hover{background:var(--hover-bg)}.type-button.active,.preset-button.active,.resolution-button.active{background:var(--active-bg);border-color:var(--accent-color)}.shader-type-selector,.preset-grid,.resolution-buttons{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:8px;display:grid}.performance-toggle{background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;justify-content:space-between;align-items:center;margin-top:8px;padding:6px 10px;display:flex}.performance-toggle.expandable{flex-direction:column;align-items:stretch}.performance-toggle .toggle-main-row{justify-content:space-between;align-items:center;width:100%;display:flex}.toggle-expand{grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.4,0,.2,1);display:grid;overflow:hidden}.performance-toggle.expanded .toggle-expand{border-top:1px solid var(--border-color);grid-template-rows:1fr;margin-top:8px}.toggle-expand>div{padding-top:0;transition:padding-top .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.performance-toggle.expanded .toggle-expand>div{padding-top:8px}.performance-toggle label{color:var(--text-color);font-size:13px}.toggle-switch{width:44px;height:24px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background-color:var(--slider-bg);border-radius:24px;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}.toggle-slider:before{content:"";background-color:var(--slider-thumb);border-radius:50%;width:18px;height:18px;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;bottom:3px;left:3px}input:checked+.toggle-slider{background-color:var(--toggle-bg)}input:checked+.toggle-slider:before{transform:translate(20px)}@media (width<=768px){.performance-toggle{padding:16px 15px}.toggle-switch{width:52px;height:30px}.toggle-slider:before{width:24px;height:24px;bottom:3px;left:3px}input:checked+.toggle-slider:before{transform:translate(22px)}}.custom-color-section{border-top:1px solid var(--border-color);margin-top:12px;padding-top:8px}.custom-color-section h4{color:var(--text-color);opacity:.9;margin:0 0 6px;font-size:14px;font-weight:600}.color-picker-group{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex;position:relative}.color-picker-group label{color:var(--text-color);opacity:.8;font-size:13px}.color-picker-trigger{align-items:center;gap:6px;display:flex}.color-swatch-btn{border:1px solid var(--border-color);cursor:pointer;border-radius:6px;flex-shrink:0;width:28px;height:28px;padding:0;transition:border-color .15s,transform .15s}.color-swatch-btn:hover{border-color:var(--accent-color);transform:scale(1.08)}.color-hex-input{background:var(--input-bg);border:1px solid var(--border-color);width:64px;color:var(--text-color);border-radius:4px;outline:none;padding:3px 6px;font-family:monospace;font-size:12px;transition:border-color .15s}.color-hex-input:focus{border-color:var(--accent-color)}.cp-popover{z-index:3000;background:var(--menu-bg);-webkit-backdrop-filter:var(--backdrop);backdrop-filter:var(--backdrop);border:1px solid var(--border-color);border-top-color:var(--border-highlight);box-shadow:var(--panel-shadow);border-radius:12px;flex-direction:column;gap:8px;width:220px;padding:10px;display:flex}.cp-sv-canvas{cursor:crosshair;border-radius:6px;width:200px;height:140px;display:block}.cp-hue-canvas{cursor:ew-resize;border-radius:4px;width:200px;height:14px;display:block}.cp-bottom-row{align-items:center;gap:8px;display:flex}.cp-preview{border:1px solid var(--border-color);border-radius:6px;flex-shrink:0;width:28px;height:28px}.cp-hex-full{flex:1;width:auto}.type-button.large-button{padding:10px 8px}.shader-thumb-btn{flex-direction:column;align-items:stretch;min-height:56px;padding:0;display:flex;position:relative;overflow:hidden}.shader-thumb-img{object-fit:cover;opacity:.85;border-radius:6px 6px 0 0;width:100%;height:44px;transition:opacity .2s;display:block}.shader-thumb-btn:hover .shader-thumb-img,.shader-thumb-btn.active .shader-thumb-img{opacity:1}.shader-thumb-label{text-align:center;padding:4px 6px;font-size:11px;font-weight:500;line-height:1.3;display:block}.generate-random-button{width:100%;min-height:40px;margin-bottom:12px;padding:8px 12px;font-size:13px}.reset-button{background:var(--red);border:1px solid var(--red-hover);color:var(--text-color);cursor:pointer;text-align:center;border-radius:8px;width:100%;min-height:36px;margin-top:8px;padding:8px 12px;font-size:13px;font-weight:500;transition:background .2s cubic-bezier(.4,0,.2,1)}.reset-button:hover{background:var(--red-hover)}.accent-color-presets{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.accent-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;flex-shrink:0;width:26px;height:26px;transition:transform .15s,border-color .15s,box-shadow .15s}.accent-swatch:hover{transform:scale(1.18);box-shadow:0 2px 8px #0006}.accent-swatch.active{border-color:#fffc;transform:scale(1.12);box-shadow:0 0 0 3px #ffffff26,0 2px 8px #0006}.accent-custom-picker{appearance:none;cursor:pointer;background:0 0;border:2px solid #ffffff40;border-radius:50%;width:26px;height:26px;padding:0;transition:transform .15s}.accent-custom-picker:hover{transform:scale(1.18)}.accent-custom-picker::-webkit-color-swatch-wrapper{padding:0}.accent-custom-picker::-webkit-color-swatch{border:none;border-radius:50%}.accent-custom-picker::-moz-color-swatch{border:none;border-radius:50%}.resolution-button{padding:8px 12px;position:relative}.debug-menu{z-index:1000;background-color:var(--menu-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:12px;flex-direction:column;width:300px;height:auto;max-height:80vh;transition:transform .3s ease-in-out;display:flex;position:fixed;top:20px;left:20px;overflow:hidden;transform:translate(0)}.debug-menu .panel-header{border-bottom:1px solid var(--border-color);border-top-left-radius:12px;border-top-right-radius:12px;justify-content:space-between;align-items:center;padding:15px;display:flex}.debug-menu .panel-header h3{color:var(--text-color);margin:0;font-size:16px;font-weight:500}.debug-menu .panel-content{border-bottom-right-radius:12px;border-bottom-left-radius:12px;flex:1;padding:15px;overflow-y:auto}.debug-menu .debug-item{color:var(--text-color);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px;display:flex}.debug-menu .debug-label{color:var(--text-color);font-weight:500}.debug-menu .debug-value{color:var(--text-color);background:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;padding:2px 6px;font-family:monospace}.debug-menu .debug-section-title{color:var(--text-color);text-transform:uppercase;letter-spacing:.5px;margin:15px 0 8px;font-size:14px;font-weight:500}.debug-menu .debug-uniforms-grid{grid-template-columns:1fr;gap:8px;max-height:300px;margin-top:10px;display:grid;overflow-y:auto}.debug-menu .debug-uniform-item{color:var(--text-color);background:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:4px;padding:6px 8px;font-size:13px;display:flex}.debug-menu .debug-uniform-label{color:var(--text-color);font-weight:500}.debug-menu .debug-uniform-value{color:var(--text-color);word-break:break-all;text-align:right;text-overflow:ellipsis;flex-grow:1;max-width:60%;margin-left:8px;font-family:monospace;overflow:hidden}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-track:horizontal{background:0 0}::-webkit-scrollbar-thumb{background:#ffffffbf;border:4px solid #fff0;border-radius:8px}::-webkit-scrollbar-thumb:horizontal{background:#ffffffbf;border:4px solid #fff0;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#fff}::-webkit-scrollbar-thumb:horizontal:hover{background:#fff}.hidden-ui{display:none}.presentation-mode-hint{color:#fff;opacity:.7;cursor:pointer;background-color:#000000b3;border-radius:5px;padding:10px 20px;font-size:14px;transition:opacity .3s,transform .3s;animation:5s forwards fadeInOut;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.presentation-mode-hint:hover{opacity:1;transform:translate(-50%)}@keyframes fadeInOut{0%{opacity:0}10%{opacity:.7}80%{opacity:.7}to{opacity:0;display:none}}.hardware-warning{color:#fff;text-align:center;z-index:1000;background-color:#000000e6;border-radius:10px;max-width:90%;padding:20px 30px;font-size:16px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 20px #00000080}.hardware-warning h2{color:#f55;margin-top:0;margin-bottom:15px}.hardware-warning p{margin-bottom:15px}.hardware-warning button{color:#fff;cursor:pointer;background-color:#555;border:none;border-radius:4px;margin-top:10px;padding:8px 16px;transition:background-color .3s}.hardware-warning button:hover{background-color:#777}:root{--critical-color:#ff2d2d;--high-color:#ff6b2d;--medium-color:#ffaa2d;--low-color:#ffcc2d;--glass-bg:#1e1e1e66;--glass-border:#ffffff1f;--glass-shadow:0 8px 32px #0003;--glass-blur:blur(10px)}.error-boundary{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);z-index:9999;width:100%;height:100%;color:var(--text-color,#fff);background:linear-gradient(135deg,#141414d9 0%,#0a0a0ae0 100%);justify-content:center;align-items:center;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;display:flex;position:fixed;top:0;left:0;overflow:hidden}.error-boundary:before{content:"";opacity:.5;z-index:-1;background:url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM12 60c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z' fill='%23ffffff' fill-opacity='0.03' fill-rule='evenodd'/%3E%3C/svg%3E");position:absolute;inset:0}.error-boundary-content{border:1px solid var(--border-color,#ffffff26);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1e1e1e80;border-radius:16px;width:90%;max-width:1500px;max-height:90vh;padding:2rem;animation:.5s ease-out forwards errorFadeIn;position:relative;overflow-y:auto;box-shadow:0 10px 30px #0000004d}.debug-mode .error-boundary-content{flex-direction:column;display:flex}@media (width>=992px){.debug-mode .error-boundary-content{flex-direction:row;align-items:stretch;gap:2rem;padding:2.5rem}.error-main-column{flex-direction:column;flex:1;max-width:50%;display:flex}.error-details-column{border-left:1px solid var(--glass-border);flex:1;max-height:80vh;padding-left:2rem;position:relative;overflow-y:auto}.error-details-column:before{content:"";background:linear-gradient(#fff0,#ffffff26,#ffffff26,#fff0);width:1px;position:absolute;top:0;bottom:0;left:0}.error-main-column .error-actions{margin-top:auto;padding-top:2rem}}@keyframes errorFadeIn{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.error-header{border-bottom:1px solid var(--border-color,#ffffff1a);justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.error-title-group{flex-direction:column;gap:.5rem;display:flex}.error-header h1{color:var(--accent-color,#ff5252);margin:0;font-size:1.8rem;font-weight:600}.error-type-badge{color:#fff;text-shadow:0 1px 2px #0000004d;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid #ffffff1a;border-radius:6px;padding:.4rem .8rem;font-size:.9rem;font-weight:500;display:inline-block;box-shadow:0 2px 4px #0003}.error-count{color:var(--accent-color,#ff5252);background:#ff525233;border-radius:20px;padding:.4rem .8rem;font-size:.9rem;font-weight:500}.error-message{margin-bottom:2rem;font-size:1.1rem;line-height:1.6}.error-location{background-color:#0003;border-radius:6px;margin-top:1rem;padding:.8rem;font-size:.95rem}.error-details{background:#00000026;border:1px solid #ffffff14;border-radius:12px;margin-bottom:2rem;padding:1rem}.error-details-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.error-details-controls{gap:.5rem;display:flex}.error-details-header h3{margin:0;font-size:1.2rem;font-weight:500}.toggle-details-btn{border:1px solid var(--border-color,#fff3);color:var(--text-color,#fff);cursor:pointer;background:0 0;border-radius:6px;padding:.4rem .8rem;font-size:.9rem;transition:all .2s}.toggle-details-btn:hover{background:#ffffff1a}.error-technical-details{animation:.3s ease-out forwards detailsFadeIn}@keyframes detailsFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.error-section{margin-bottom:1.5rem}.error-section h4{color:var(--accent-color,#ff5252);margin:0 0 .5rem;font-size:1rem;font-weight:500}.error-message-text{white-space:pre-wrap;word-break:break-word;background:#0003;border:1px solid #ffffff0d;border-radius:6px;margin:0;padding:1rem;font-family:monospace;overflow-x:auto}.error-detail-text{white-space:pre-wrap;word-break:break-word;background:#0003;border:1px solid #ffffff0d;border-radius:6px;margin:0;padding:.8rem;font-family:monospace;overflow-x:auto}.error-stack{white-space:pre-wrap;word-break:break-word;background:#0003;border:1px solid #ffffff0d;border-radius:6px;max-height:300px;margin:0;padding:1rem;font-family:monospace;font-size:.9rem;overflow:auto}.error-actions{flex-wrap:wrap;gap:1rem;display:flex}.error-action-btn{cursor:pointer;border:none;border-radius:8px;outline:none;padding:.8rem 1.2rem;font-size:1rem;font-weight:500;transition:all .2s}.error-action-btn.primary{color:#fff;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ff5252cc;border:1px solid #ffffff1a}.error-action-btn.primary:hover{background:#ff7070e6;transform:translateY(-2px);box-shadow:0 5px 15px #ff52524d}.error-action-btn.secondary{color:var(--text-color,#fff);border:1px solid var(--border-color,#ffffff26);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff14}.error-action-btn.secondary:hover{background:#ffffff26;transform:translateY(-2px);box-shadow:0 5px 15px #ffffff1a}.error-action-btn.tertiary{color:var(--text-color,#fff);background:0 0;padding:.8rem 0;text-decoration:underline}.error-action-btn.tertiary:hover{color:var(--accent-color,#ff5252)}.error-close-btn{border:1px solid var(--border-color,#ffffff26);width:2rem;height:2rem;color:var(--text-color,#fff);cursor:pointer;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff14;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.error-close-btn:hover{background:#ffffff26;transform:scale(1.1);box-shadow:0 0 10px #fff3}.error-boundary.minimal-mode{background:linear-gradient(135deg,#1e1e1eb3 0%,#141414bf 100%)}.minimal-content{text-align:center;background:var(--glass-bg);max-width:500px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);padding:2.5rem 2rem;position:relative;overflow:hidden}.minimal-content:before{content:"";background:linear-gradient(90deg,#fff0,#fff3,#fff0);height:1px;position:absolute;top:0;left:0;right:0}.minimal-content:after{content:"";background:linear-gradient(90deg,#fff0,#ffffff1a,#fff0);height:1px;position:absolute;bottom:0;left:0;right:0}.minimal-header{border-bottom:none;justify-content:center;margin-bottom:2rem}.minimal-header h1{text-align:center;font-size:1.6rem}.minimal-actions{justify-content:center;gap:1rem;margin-top:2rem;display:flex}.minimal-mode .error-action-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0f;border:1px solid #ffffff1a;padding:.8rem 1.5rem;transition:all .3s}.minimal-mode .error-action-btn.primary{background:#ff525299;border:1px solid #ffffff26}.minimal-mode .error-action-btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px #0003}.minimal-mode .error-action-btn.primary:hover{background:#ff5252cc;box-shadow:0 8px 20px #ff525240}.debug-mode-trigger{cursor:pointer;opacity:.1;background-color:#0000;border-radius:50%;width:20px;height:20px;position:absolute;bottom:10px;right:10px}.debug-mode-trigger:hover{opacity:.2}@media (width<=768px){.error-boundary-content{padding:1.5rem}.error-header{flex-direction:column;align-items:flex-start;gap:.5rem}.error-header h1{font-size:1.5rem}.error-details-controls{flex-direction:column;gap:.5rem}.error-actions{flex-direction:column}.error-action-btn{width:100%}}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:28px;right:28px}.toast{color:#fffffff2;-webkit-backdrop-filter:blur(20px)saturate(150%);backdrop-filter:blur(20px)saturate(150%);cursor:pointer;pointer-events:auto;background:linear-gradient(145deg,#ffffff17 0%,#0000 60%),#121224eb;border:1px solid #ffffff1f;border-top-color:#ffffff2e;border-radius:12px;align-items:center;gap:10px;min-width:200px;max-width:340px;padding:11px 16px;font-size:13px;font-weight:500;animation:.28s cubic-bezier(.16,1,.3,1) forwards toastIn;display:flex;box-shadow:0 8px 24px #00000073,0 2px 6px #00000040,inset 0 1px #ffffff12}.toast-icon{text-align:center;flex-shrink:0;width:18px;font-size:15px}.toast-message{flex:1;line-height:1.4}.toast:before{content:"";border-radius:0 2px 2px 0;width:3px;position:absolute;top:8px;bottom:8px;left:0}.toast{position:relative}.toast-success:before{background:#34d399}.toast-success .toast-icon{color:#34d399}.toast-error:before{background:#f87171}.toast-error .toast-icon{color:#f87171}.toast-warning:before{background:#f59e0b}.toast-warning .toast-icon{color:#f59e0b}.toast-info:before{background:var(--accent-color)}.toast-info .toast-icon{color:var(--accent-color)}@keyframes toastIn{0%{opacity:0;transform:translate(24px)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}@media (width<=768px){.toast-container{bottom:90px;left:16px;right:16px}.toast{max-width:none}}.action-bar{z-index:1400;flex-direction:column;gap:8px;animation:.5s cubic-bezier(.4,0,.2,1) forwards slideInButtonHorizontal;display:flex;position:fixed;bottom:28px;left:24px}.action-btn{border:1px solid var(--border-color);border-top-color:var(--border-highlight);background:linear-gradient(145deg, #ffffff14 0%, #ffffff05 100%), var(--menu-bg);width:40px;height:40px;-webkit-backdrop-filter:var(--backdrop);backdrop-filter:var(--backdrop);box-shadow:var(--panel-shadow);color:#ffffffb3;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.action-btn svg{width:16px;height:16px;transition:transform .2s}.action-btn:hover{color:var(--text-color);border-color:var(--accent-color);transform:translateY(-1px);box-shadow:0 4px 16px #00000080,0 0 12px #4a9eff33,inset 0 1px #ffffff1a}.action-btn:hover svg{transform:scale(1.12)}.action-btn:active{transform:translateY(0)scale(.95)}.action-btn--recording{color:#ff4d4d;border-color:#ff4d4d99;animation:1.4s ease-in-out infinite recording-pulse;box-shadow:0 4px 16px #00000080,0 0 12px #ff4d4d4d,inset 0 1px #ffffff1a}.action-btn--recording:hover{border-color:#ff4d4de6;box-shadow:0 4px 16px #00000080,0 0 16px #ff4d4d80,inset 0 1px #ffffff1a}@keyframes recording-pulse{0%,to{box-shadow:0 4px 16px #00000080,0 0 8px #ff4d4d33,inset 0 1px #ffffff1a}50%{box-shadow:0 4px 16px #00000080,0 0 18px #ff4d4d80,inset 0 1px #ffffff1a}}@media (width<=768px){.action-bar{flex-direction:row;bottom:90px;left:16px}}.tooltip-container{z-index:9999;pointer-events:none;-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);color:#ffffffe0;text-align:center;white-space:normal;word-break:break-word;will-change:opacity, transform;background:linear-gradient(145deg,#ffffff12 0%,#0000 55%),#0a0a1cf0;border:1px solid #ffffff1c;border-top-color:#ffffff2e;border-radius:10px;max-width:210px;padding:7px 12px;font-family:inherit;font-size:12px;font-weight:500;line-height:1.5;transition:opacity .16s cubic-bezier(.16,1,.3,1),transform .16s cubic-bezier(.16,1,.3,1);position:fixed;box-shadow:0 6px 24px #0000008c,0 2px 6px #0000004d,inset 0 1px #ffffff12}.tooltip-arrow{z-index:-1;background:#0e0e22f0;width:8px;height:8px;position:absolute;transform:rotate(45deg)}.tooltip-top .tooltip-arrow{border-bottom:1px solid #ffffff1c;border-right:1px solid #ffffff1c;margin-left:-4px;bottom:-5px;left:50%}.tooltip-bottom .tooltip-arrow{border-top:1px solid #ffffff29;border-left:1px solid #ffffff29;margin-left:-4px;top:-5px;left:50%}.tooltip-left .tooltip-arrow{border-top:1px solid #ffffff1c;border-right:1px solid #ffffff1c;margin-top:-4px;top:50%;right:-5px}.tooltip-right .tooltip-arrow{border-bottom:1px solid #ffffff29;border-left:1px solid #ffffff29;margin-top:-4px;top:50%;left:-5px}.radio-group{max-width:100%;margin-bottom:12px}.radio-group-label{color:var(--text-color);opacity:.9;margin-bottom:8px;font-size:13px;font-weight:500}.radio-options{gap:12px;display:flex}.radio-stack{flex-direction:column}.radio-inline{flex-flow:wrap;gap:16px}.radio-option{cursor:pointer;-webkit-user-select:none;user-select:none;box-sizing:border-box;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.radio-option:hover{background-color:var(--hover-bg)}.radio-option.selected{background-color:var(--active-bg)}.radio-option input[type=radio]{appearance:none;border:2px solid var(--border-color);background-color:var(--input-bg);box-sizing:border-box;border-radius:50%;flex-shrink:0;width:16px;height:16px;margin:0;padding:0;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.radio-option input[type=radio]:checked,.radio-option.selected input[type=radio]{border-color:var(--accent-color)}.radio-option input[type=radio]:checked:after,.radio-option.selected input[type=radio]:after{content:"";background-color:var(--accent-color);border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.radio-option input[type=radio]:focus{outline:none;box-shadow:0 0 0 2px #4a9eff4d}.radio-option label{color:var(--text-color);cursor:pointer;pointer-events:none;white-space:nowrap;text-overflow:ellipsis;flex:1;margin-right:2px;font-size:13px;transition:all .2s;overflow:hidden}.radio-option:hover label{color:var(--accent-color)}.radio-option.selected label{color:var(--accent-color);font-weight:500}.resolution-section{margin-bottom:16px}.resolution-section .radio-group{border-bottom:1px solid var(--border-color);margin-bottom:8px;padding-bottom:8px}.resolution-section .radio-group:last-child{border-bottom:none}.resolution-section .radio-option{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;flex:1;justify-content:center;min-width:100px;padding:8px 12px;transition:all .2s}.resolution-section .radio-option:hover{background-color:var(--hover-bg)}.resolution-section .radio-option.selected{background-color:var(--active-bg);border-color:var(--accent-color)}.resolution-section .radio-option input[type=radio]{margin-right:8px}.resolution-section .radio-option label{text-align:center;padding:2px 0}@media (width<=768px){.radio-option{padding:8px 12px}.radio-option input[type=radio]{width:20px;height:20px}.radio-option input[type=radio]:checked:after,.radio-option.selected input[type=radio]:after{width:10px;height:10px}.radio-option label{font-size:14px}.radio-inline{flex-direction:column;gap:10px}.resolution-section .radio-option{width:100%}}.app-header{-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);z-index:1500;background:0 0;justify-content:space-between;align-items:center;height:56px;padding:0 20px;display:flex;position:fixed;top:0;left:0;right:0}.app-header__logo{background:linear-gradient(145deg, #ffffff14 0%, #ffffff05 100%), var(--menu-bg);border:1px solid var(--border-color);border-top-color:var(--border-highlight);color:var(--text-color);text-align:center;-webkit-backdrop-filter:var(--backdrop);backdrop-filter:var(--backdrop);border-radius:12px;padding:10px 14px;font-size:13px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px #0006,0 1px 4px #00000040,inset 0 1px #ffffff12}@media (width<=768px){.app-header{height:48px;padding:0 16px}}.language-panel{flex-direction:column;gap:1.5rem;display:flex}.panel-title{color:var(--text-color);margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.language-selection{flex-direction:column;gap:1rem;display:flex}.language-description{color:var(--text-color);opacity:.8;margin:0;font-size:.875rem}.language-info{background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;margin-top:1rem;padding:.875rem}.language-info h4{color:var(--text-color);margin:0 0 .5rem;font-size:.9rem;font-weight:600}.language-info p{color:var(--text-color);opacity:.75;margin:0;font-size:.875rem;line-height:1.5}.language-radio-group .radio-option{border:1px solid var(--border-color);background:var(--input-bg);border-radius:8px;padding:10px 12px;transition:all .2s cubic-bezier(.4,0,.2,1)}.language-radio-group .radio-option:hover{background:var(--hover-bg);border-color:var(--border-highlight)}.language-radio-group .radio-option.selected{background:var(--active-bg);border-color:var(--accent-color)}.language-radio-group .radio-option label{font-size:.95rem;font-weight:500}@media (width<=768px){.language-radio-group .radio-option{padding:12px 15px}.language-radio-group .radio-option label{font-size:1rem}}.preset-save-row{align-items:center;gap:8px;display:flex}.preset-name-input{background:var(--input-bg);border:1px solid var(--border-color);color:var(--text-color);border-radius:8px;flex:1;min-width:0;padding:7px 10px;font-family:inherit;font-size:13px;transition:border-color .2s}.preset-name-input:focus{border-color:var(--accent-color);outline:none}.preset-name-input::placeholder{color:#ffffff4d}.preset-save-btn{background:var(--active-bg);border:1px solid var(--accent-color);color:var(--accent-color);cursor:pointer;white-space:nowrap;border-radius:8px;padding:7px 12px;font-family:inherit;font-size:12px;font-weight:600;transition:all .2s}.preset-save-btn:hover{background:var(--accent-color);color:#000}.preset-list{flex-direction:column;gap:6px;display:flex}.preset-item{background:var(--input-bg);border:1px solid var(--border-color);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;transition:all .18s;display:flex}.preset-item:hover{background:var(--hover-bg);border-color:var(--accent-color)}.preset-item-info{flex-direction:column;gap:2px;min-width:0;display:flex}.preset-item-name{color:var(--text-color);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.preset-item-shader{color:var(--accent-color);opacity:.8;text-transform:capitalize;font-size:11px}.preset-delete-btn{color:#ffffff73;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:16px;line-height:1;transition:all .15s;display:flex}.preset-delete-btn:hover{color:#f87171;background:#f8717133;border-color:#f87171}.preset-empty{color:#ffffff59;text-align:center;padding:12px 0 4px;font-size:12px;font-style:italic}.panel-content-wrapper{width:100%;height:100%;position:relative;overflow:hidden}.panel-content{opacity:0;visibility:hidden;will-change:transform, opacity, visibility;pointer-events:none;width:100%;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),visibility 0s .3s;position:absolute;top:0;left:0;transform:translate(100%)}.panel-content.visible{opacity:1;visibility:visible;pointer-events:auto;z-index:1;height:100%;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),visibility;position:relative;overflow-y:auto;transform:translate(0)}.panel-content.hidden{opacity:0;visibility:hidden;pointer-events:none;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),visibility 0s .3s;position:absolute;transform:translate(-100%)}.panel-content.next-in{animation:.3s cubic-bezier(.4,0,.2,1) forwards slideInFromRight}.panel-content.next-out{animation:.3s cubic-bezier(.4,0,.2,1) forwards slideOutToLeft}.panel-content.prev-in{animation:.3s cubic-bezier(.4,0,.2,1) forwards slideInFromLeft}.panel-content.prev-out{animation:.3s cubic-bezier(.4,0,.2,1) forwards slideOutToRight}@keyframes slideInFromRight{0%{opacity:0;visibility:visible;transform:translate(100%)}to{opacity:1;visibility:visible;transform:translate(0)}}@keyframes slideOutToLeft{0%{opacity:1;visibility:visible;transform:translate(0)}to{opacity:0;visibility:visible;transform:translate(-100%)}}@keyframes slideInFromLeft{0%{opacity:0;visibility:visible;transform:translate(-100%)}to{opacity:1;visibility:visible;transform:translate(0)}}@keyframes slideOutToRight{0%{opacity:1;visibility:visible;transform:translate(0)}to{opacity:0;visibility:visible;transform:translate(100%)}}.control-panel{flex-direction:column;display:flex}@media (width<=768px){#dynamicPanel{width:90%!important;max-width:500px!important;position:fixed!important;bottom:75px!important;left:50%!important;overflow:hidden!important;transform:translate(-50%)!important}#dynamicPanel:not(.active){opacity:0!important;transform:translate(-50%)translateY(100%)!important}#dynamicPanel.active{opacity:1!important;transform:translate(-50%)translateY(0)!important}}.debug-menu-tabs{z-index:1000;background:linear-gradient(145deg, #ffffff0d 0%, transparent 55%), var(--menu-bg);width:300px;-webkit-backdrop-filter:var(--backdrop);backdrop-filter:var(--backdrop);border:1px solid var(--border-color);border-top-color:var(--border-highlight);box-shadow:var(--panel-shadow);border-radius:12px;animation:.3s ease-out fadeIn;position:fixed;top:64px;left:20px;overflow:hidden}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.debug-tabs-header{border-bottom:1px solid var(--border-color);display:flex}.debug-tab-button{color:var(--text-color);cursor:pointer;background:0 0;border:none;flex:1;padding:12px 16px;font-size:14px;font-weight:500;transition:all .2s;position:relative}.debug-tab-button:hover{background:#ffffff0d}.debug-tab-button.active{color:var(--accent-color)}.debug-tab-button.active:after{content:"";background-color:var(--accent-color);height:2px;animation:.2s ease-out slideIn;position:absolute;bottom:0;left:0;right:0}@keyframes slideIn{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.debug-tabs-content{max-height:80vh;overflow-y:auto}.debug-tab-panel{padding:15px;animation:.2s ease-out fadeIn}.debug-item{color:var(--text-color);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px;display:flex}.debug-label{color:var(--text-color);font-weight:500}.debug-value{color:var(--text-color);background:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;padding:2px 6px;font-family:monospace}.debug-section-title{color:var(--text-color);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color);margin:15px 0 8px;padding-bottom:5px;font-size:14px;font-weight:500}.debug-uniforms-grid{grid-template-columns:1fr;gap:8px;max-height:70vh;margin-top:10px;display:grid;overflow-y:auto}.debug-uniform-item{color:var(--text-color);background:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:4px;padding:6px 8px;font-size:13px;display:flex}.debug-uniform-label{color:var(--text-color);font-weight:500}.debug-uniform-value{color:var(--text-color);word-break:break-all;text-align:right;text-overflow:ellipsis;flex-grow:1;max-width:60%;margin-left:8px;font-family:monospace;overflow:hidden}.debug-message{text-align:center;color:var(--text-color);padding:20px;font-style:italic}.fps-graph{border:1px solid var(--border-color);background:#0000004d;border-radius:6px;width:100%;height:52px;display:block}.settings-popup-overlay{-webkit-backdrop-filter:blur(12px)saturate(140%);backdrop-filter:blur(12px)saturate(140%);z-index:2000;background-color:#000000a6;justify-content:center;align-items:center;animation:.25s ease-out fadeIn;display:flex;position:fixed;inset:0}.settings-popup{background:linear-gradient(145deg, #ffffff0e 0%, transparent 40%), var(--panel-bg);border:1px solid var(--border-color);border-top-color:var(--border-highlight);-webkit-backdrop-filter:var(--backdrop);backdrop-filter:var(--backdrop);border-radius:20px;flex-direction:column;width:90%;max-width:1500px;height:80%;max-height:800px;animation:.3s cubic-bezier(.16,1,.3,1) scaleIn;display:flex;overflow:hidden;box-shadow:0 24px 80px #0009,0 8px 24px #0006,inset 0 1px #ffffff14}.settings-popup-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.settings-popup-header h2{color:var(--text-color);margin:0;font-size:1.5rem;font-weight:500}.settings-popup-close{color:var(--text-color);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:24px;transition:all .2s;display:flex}.settings-popup-close:hover{background:#ffffff1a}.settings-popup-content{flex:1;display:flex;overflow:hidden}.settings-popup-content-inner{max-width:600px;margin:0 auto}.settings-popup-sidebar{border-right:1px solid var(--border-color);background:#0003;flex-direction:column;width:300px;display:flex;overflow-y:auto}.settings-popup-nav-list{flex:1}.settings-popup-legal{border-top:1px solid var(--border-color);gap:14px;padding:14px 20px;display:flex}.settings-popup-legal a{color:#ffffff59;font-size:12px;text-decoration:none;transition:color .2s}.settings-popup-legal a:hover{color:#ffffffa6}.settings-popup-nav-item{color:var(--text-color);border-left:3px solid #0000;justify-content:space-between;align-items:center;padding:16px 20px;font-weight:500;transition:all .2s;display:flex}.settings-popup-nav-item:hover{background:#ffffff0d}.settings-popup-nav-item.active{border-left:3px solid var(--accent-color);background:#ffffff1a}.settings-popup-nav-item.active .settings-popup-nav-label{color:var(--accent-color)}.settings-popup-nav-label{cursor:pointer;flex:1}.settings-popup-pin{cursor:pointer;opacity:.6;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex}.settings-popup-pin svg{transition:all .2s}.settings-popup-pin:hover{opacity:1;background:#ffffff1a}.settings-popup-pin:hover svg{transform:scale(1.2)}.settings-popup-pin.pinned{opacity:1}.settings-popup-pin.pinned svg{color:var(--accent-color)}.settings-popup-main{flex:1;padding:20px;overflow-y:auto}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=768px){.settings-popup{border-radius:0;width:100%;height:100%;max-height:none}.settings-popup-content{flex-direction:column}.settings-popup-sidebar{border-right:none;border-bottom:1px solid var(--border-color);width:100%;height:auto;display:flex;overflow:auto hidden}.settings-popup-nav-item{white-space:nowrap;border-bottom:3px solid #0000;border-left:none;padding:12px 16px}.settings-popup-nav-item.active{border-left:none;border-bottom:3px solid var(--accent-color)}.settings-popup-pin{margin-left:8px}}
