@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_10004a8f-module__Cz2umG__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_10004a8f-module__Cz2umG__variable{--font-gl-sans:"Inter","Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/04c5164763c40239-s.690580e8.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/26f284dcc38c84c0-s.303a03d6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7e7f32a39836f228-s.0b4edfe7.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fa39153a3fc630ba-s.bff0868b.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6a5386fd6038edbe-s.719084df.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/051742360c26797e-s.p.102b7f24.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/04c5164763c40239-s.690580e8.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/26f284dcc38c84c0-s.303a03d6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7e7f32a39836f228-s.0b4edfe7.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fa39153a3fc630ba-s.bff0868b.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/6a5386fd6038edbe-s.719084df.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/051742360c26797e-s.p.102b7f24.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_b60fda4d-module__8GAj4W__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_b60fda4d-module__8GAj4W__variable{--font-gl-mono:"JetBrains Mono","JetBrains Mono Fallback"}
.gradient-lab{--surface:#1011159e;--surface-solid:#121317f0;--line:#ffffff14;--fill-1:#ffffff0d;--fill-2:#ffffff17;--fill-3:#ffffff24;--text:#ffffffed;--muted:#ffffff8f;--faint:#ffffff57;--accent:#fff;--danger:#ff5a5f;--sans:var(--font-gl-sans),"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--mono:var(--font-gl-mono),"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;--ease:cubic-bezier(.2,.7,.2,1)}.gradient-lab *{box-sizing:border-box;margin:0;padding:0}.gradient-lab{color:var(--text);font:13px/1.4 var(--sans);-webkit-font-smoothing:antialiased;background:#08090b;position:fixed;inset:0;overflow:hidden}.gradient-lab button,.gradient-lab input{font:inherit;color:inherit;background:0 0;border:0}.gradient-lab button{cursor:pointer}.gradient-lab button:disabled{cursor:default;opacity:.3}.gradient-lab :focus-visible{outline-offset:2px;outline:2px solid #fff9}.gradient-lab .gl-stage{place-items:center;display:grid;position:fixed;inset:0}.gradient-lab .gl-stage canvas{display:block}.gradient-lab .panel,.gradient-lab .dock,.gradient-lab .brand,.gradient-lab .ghost-btn,.gradient-lab .toast,.gradient-lab .rec{background:var(--surface);-webkit-backdrop-filter:blur(30px)saturate(160%);backdrop-filter:blur(30px)saturate(160%);border:1px solid var(--line)}.gradient-lab .gl-ui>*{transition:opacity .3s var(--ease),transform .3s var(--ease)}.gradient-lab.ui-hidden .gl-ui>:not(.toast):not(.rec){opacity:0;pointer-events:none}.gradient-lab.ui-hidden .panel.left{transform:translate(-10px)}.gradient-lab.ui-hidden .panel.right{transform:translate(10px)}.gradient-lab.ui-hidden .dock{transform:translate(-50%,10px)}.gradient-lab.is-recording .panel,.gradient-lab.is-recording .dock,.gradient-lab.is-recording .topbar{opacity:.25;pointer-events:none}.gradient-lab .icon-btn{width:36px;height:36px;color:var(--muted);border-radius:9px;flex:none;place-items:center;transition:background .15s,color .15s;display:grid}.gradient-lab .icon-btn:not(:disabled):hover{background:var(--fill-2);color:var(--text)}.gradient-lab .icon-btn.sm{border-radius:8px;width:30px;height:30px}.gradient-lab .icon-btn.on{color:var(--text);background:var(--fill-2)}.gradient-lab .primary-btn{background:var(--accent);color:#0b0c0e;border-radius:10px;justify-content:center;align-items:center;gap:8px;height:38px;padding:0 16px;font-weight:600;transition:transform .15s,opacity .15s;display:inline-flex}.gradient-lab .primary-btn:hover{opacity:.9}.gradient-lab .primary-btn:active{transform:scale(.98)}.gradient-lab .primary-btn.wide{width:100%;height:42px;margin-top:16px}.gradient-lab .ghost-btn{border-radius:10px;align-items:center;gap:8px;height:38px;padding:0 14px;font-weight:500;transition:background .15s;display:inline-flex}.gradient-lab .ghost-btn:hover{background:var(--surface-solid)}.gradient-lab .modal .ghost-btn{background:var(--fill-1);-webkit-backdrop-filter:none;backdrop-filter:none;height:32px;padding:0 12px;font-size:12.5px}.gradient-lab .modal .ghost-btn:hover{background:var(--fill-2)}.gradient-lab .topbar{z-index:20;pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:fixed;top:16px;left:16px;right:16px}.gradient-lab .topbar>*{pointer-events:auto}.gradient-lab .brand{letter-spacing:-.01em;border-radius:10px;align-items:center;gap:9px;height:38px;padding:0 14px 0 12px;font-weight:600;display:flex}.gradient-lab .brand-mark{background:conic-gradient(from 210deg,#ff7a59,#ffd36e,#6ee7ff,#9b7bff,#ff7a59);border-radius:4px;width:14px;height:14px}.gradient-lab .top-actions{gap:8px;display:flex}.gradient-lab .panel{z-index:10;border-radius:16px;flex-direction:column;display:flex;position:fixed;top:66px;bottom:80px}.gradient-lab .panel.left{width:272px;padding:10px;left:16px}.gradient-lab .panel.right{width:300px;padding:4px 16px 16px;right:16px;overflow-y:auto}.gradient-lab .panel,.gradient-lab .side-body,.gradient-lab .code{scrollbar-width:thin;scrollbar-color:#ffffff24 transparent}.gradient-lab .side-body{overscroll-behavior:contain;flex:1;margin:10px -4px 0;padding:0 4px;overflow:hidden auto}.gradient-lab .mode-grid,.gradient-lab .preset-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px;padding-bottom:4px;display:grid}.gradient-lab .mode-card,.gradient-lab .preset-card{text-align:left;border-radius:10px;min-width:0}.gradient-lab .thumb,.gradient-lab .preset-art{aspect-ratio:3/2;background:var(--fill-1);width:100%;box-shadow:inset 0 0 0 1px var(--line);transition:transform .2s var(--ease),box-shadow .2s;border-radius:9px;display:block}.gradient-lab .mode-card span,.gradient-lab .preset-meta{color:var(--muted);margin:6px 2px 0;font-size:12px;transition:color .15s;display:block}.gradient-lab .mode-card:hover .thumb,.gradient-lab .preset-card:hover .preset-art{transform:translateY(-1px)}.gradient-lab .mode-card:hover span,.gradient-lab .preset-card:hover .preset-meta{color:var(--text)}.gradient-lab .mode-card.active .thumb{box-shadow:0 0 0 2px #0b0c0e,0 0 0 3.5px var(--accent)}.gradient-lab .mode-card.active span{color:var(--text);font-weight:500}.gradient-lab .preset-meta{flex-direction:column;gap:1px;display:flex}.gradient-lab .preset-meta span,.gradient-lab .preset-meta small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gradient-lab .preset-meta small{color:var(--faint);font-size:11px}.gradient-lab .insp-head{align-items:flex-start;gap:8px;padding:14px 0 4px;display:flex}.gradient-lab .insp-head>div{flex:1}.gradient-lab .insp-head h2{letter-spacing:-.01em;font-size:16px;font-weight:600}.gradient-lab .insp-head p{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.55}.gradient-lab .sec{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.gradient-lab .sec-head{justify-content:space-between;align-items:center;min-height:30px;margin-bottom:8px;font-size:12.5px;font-weight:600;display:flex}.gradient-lab .sec-actions{gap:2px;margin-right:-6px;display:flex}.gradient-lab .sec .bar+.bar{margin-top:6px}.gradient-lab .bar{background:var(--fill-1);cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:9px;justify-content:space-between;align-items:center;height:34px;padding:0 12px;transition:background .15s;display:flex;position:relative;overflow:hidden}.gradient-lab .bar:hover{background:var(--fill-2)}.gradient-lab .bar-fill{background:var(--fill-2);pointer-events:none;position:absolute;inset:0 auto 0 0;box-shadow:inset -1.5px 0 #ffffff47}.gradient-lab .bar.dragging .bar-fill{background:var(--fill-3);box-shadow:inset -2px 0 #ffffffb3}.gradient-lab .bar-label,.gradient-lab .bar-value{pointer-events:none;position:relative}.gradient-lab .bar-value{font:12px var(--mono);color:var(--muted)}.gradient-lab .bar.dragging .bar-value{color:var(--text)}.gradient-lab .swatch-row{gap:6px;display:flex}.gradient-lab .sw{height:34px;transition:transform .15s var(--ease);border-radius:8px;flex:1;position:relative;box-shadow:inset 0 0 0 1px #ffffff1f}.gradient-lab .sw:hover{transform:translateY(-1px)}.gradient-lab .sw.selected{outline:2px solid var(--accent);outline-offset:2px}.gradient-lab .sw.add{color:var(--muted);box-shadow:none;border:1px dashed #fff3;place-items:center;display:grid}.gradient-lab .sw.add:hover{color:var(--text);border-color:#fff6}.gradient-lab .sw-lock{color:#fff;background:#00000073;border-radius:5px;place-items:center;width:16px;height:16px;display:grid;position:absolute;bottom:3px;right:3px}.gradient-lab .ramp{border-radius:3px;height:6px;margin:12px 0;box-shadow:inset 0 0 0 1px #ffffff14}.gradient-lab .swatch-editor{align-items:center;gap:6px;display:flex}.gradient-lab .chip{cursor:pointer;border-radius:8px;flex:none;width:30px;height:30px;position:relative;box-shadow:inset 0 0 0 1px #ffffff26}.gradient-lab .chip input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.gradient-lab .hex{background:var(--fill-1);min-width:0;height:30px;font:12.5px var(--mono);letter-spacing:.02em;border-radius:8px;flex:1;padding:0 10px}.gradient-lab .hex:focus{background:var(--fill-2);outline:none}.gradient-lab .seg{background:var(--fill-1);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.gradient-lab .seg.full{width:100%;display:flex}.gradient-lab .seg.full button{flex:1}.gradient-lab .seg button{white-space:nowrap;height:28px;color:var(--muted);border-radius:7px;padding:0 10px;font-size:12.5px;font-weight:500;transition:background .15s,color .15s}.gradient-lab .seg button:not(:disabled):hover{color:var(--text)}.gradient-lab .seg button.active{background:var(--fill-3);color:var(--text);box-shadow:0 1px 2px #00000040}.gradient-lab .dock{z-index:15;border-radius:14px;align-items:center;gap:2px;padding:5px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.gradient-lab .dock>i{background:var(--line);width:1px;height:20px;margin:0 6px}.gradient-lab .dock .seg{background:0 0;padding:0}.gradient-lab .fps{text-align:right;min-width:52px;font:11.5px var(--mono);color:var(--faint);padding:0 8px 0 2px}.gradient-lab .rec{z-index:30;opacity:0;pointer-events:none;border-radius:10px;align-items:center;gap:10px;height:38px;padding:0 6px 0 14px;font-weight:500;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%,-8px)}.gradient-lab.is-recording .rec{opacity:1;pointer-events:auto;transform:translate(-50%)}.gradient-lab .rec-dot{background:var(--danger);border-radius:50%;width:8px;height:8px;animation:1.2s infinite gl-pulse}.gradient-lab .rec-time{font:12px var(--mono);color:var(--muted);min-width:78px}.gradient-lab .rec-track{background:var(--fill-2);border-radius:2px;width:120px;height:4px;overflow:hidden}.gradient-lab .rec-fill{background:var(--accent);width:0;height:100%}.gradient-lab .rec-cancel{height:28px;color:var(--muted);border-radius:7px;padding:0 10px}.gradient-lab .rec-cancel:hover{background:var(--fill-2);color:var(--text)}@keyframes gl-pulse{50%{opacity:.35}}.gradient-lab .toast{z-index:50;background:var(--surface-solid);opacity:0;pointer-events:none;border-radius:10px;padding:9px 14px;position:fixed;bottom:80px;left:50%;transform:translate(-50%,6px)}.gradient-lab .toast.show{opacity:1;transform:translate(-50%)}.gradient-lab .modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000073;justify-content:center;align-items:center;padding:24px;animation:.2s gl-fade;display:flex;position:fixed;inset:0}.gradient-lab .modal{background:var(--surface-solid);border:1px solid var(--line);width:min(440px,100%);max-height:100%;animation:gl-pop .22s var(--ease);transition:width .25s var(--ease);border-radius:18px;flex-direction:column;padding:16px 18px 18px;display:flex;box-shadow:0 30px 80px #00000080}.gradient-lab .modal.wide{width:min(780px,100%);height:min(680px,100%)}.gradient-lab .modal-head{align-items:center;gap:12px;display:flex}.gradient-lab .modal-head h3{flex:1;font-size:15px;font-weight:600}.gradient-lab .modal-head .icon-btn{margin-right:-6px}.gradient-lab .modal-body,.gradient-lab .pane{flex-direction:column;flex:1;min-height:0;display:flex}.gradient-lab .field{margin-top:18px}.gradient-lab .field-label{color:var(--muted);margin-bottom:8px;font-size:12px;font-weight:500}.gradient-lab .field-hint{color:var(--faint);margin-top:8px;font-size:12px;line-height:1.5}.gradient-lab .field-hint.center{text-align:center}.gradient-lab .summary{background:var(--fill-1);font:12px var(--mono);color:var(--muted);border-radius:10px;justify-content:space-between;margin-top:20px;padding:10px 12px;display:flex}.gradient-lab .summary span:first-child{color:var(--text)}.gradient-lab .code-bar{justify-content:space-between;align-items:center;gap:8px;margin-top:18px;display:flex}.gradient-lab .code-actions{gap:6px;display:flex}.gradient-lab .code-pane .field-hint{margin:10px 2px}.gradient-lab .code{border:1px solid var(--line);min-width:0;min-height:0;font:11.5px/1.65 var(--mono);color:#fffc;white-space:pre;tab-size:2;background:#00000059;border-radius:12px;flex:1;padding:14px 16px;overflow:auto}@keyframes gl-fade{0%{opacity:0}}@keyframes gl-pop{0%{opacity:0;transform:translateY(6px)scale(.985)}}.gradient-lab .fatal{text-align:center;color:var(--muted);place-items:center;padding:24px;display:grid;position:fixed;inset:0}@media (max-width:1100px){.gradient-lab .panel.left{width:228px}.gradient-lab .panel.right{width:268px}.gradient-lab .fps{display:none}}@media (max-width:820px){.gradient-lab .panel.left{display:none}.gradient-lab .panel.right{width:auto;height:46vh;top:auto;bottom:76px;left:16px}.gradient-lab .dock .seg,.gradient-lab .ghost-btn span{display:none}}@media (prefers-reduced-motion:reduce){.gradient-lab *{transition:none!important;animation:none!important}}
