@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--c-0: #050506;--c-1: #0b0b0d;--c-2: #121214;--c-3: #1b1b1e;--c-4: #26262a;--c-5: #37373c;--c-6: #55555c;--c-7: #85858c;--c-8: #b4b4ba;--c-9: #e8e8eb;--c-10: #ffffff;--bg: var(--c-0);--panel: rgba(11, 11, 13, .72);--panel-border: rgba(255, 255, 255, .07);--text: var(--c-9);--text-dim: var(--c-7);--text-faint: var(--c-6);--accent: var(--c-10);--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", "Cascadia Code", Menlo, Consolas, monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--radius: 10px;--radius-sm: 7px;--blur: blur(10px);--shadow: 0 10px 40px rgba(0, 0, 0, .5);--dock-width: min(720px, 100%);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-sans);color:var(--text);background:radial-gradient(90% 70% at 50% 42%,#131316 0%,#0a0a0c 55%,var(--c-0) 100%) fixed;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow:hidden}.app{position:relative;height:100%;width:100%}.app__canvas{position:absolute;inset:0;z-index:0}.app__ui{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;padding:var(--space-5);pointer-events:none}.app__ui .header__brand,.app__ui .header__right,.app__ui .dev-panel,.app__ui .tray,.app__ui .promptbar,.app__ui .chips,.app__ui .inspector,.app__ui .lightbox{pointer-events:auto}.app__spacer{flex:1 1 auto}.app__dock{display:flex;flex-direction:column;gap:var(--space-3);align-items:center;width:100%}.header{display:flex;align-items:center;justify-content:space-between;width:100%}.header__brand{display:flex;align-items:center;gap:var(--space-3)}.header__mark{width:16px;height:16px;border-radius:4px;background:linear-gradient(135deg,var(--c-10),var(--c-6));box-shadow:inset 0 0 0 1px #ffffff1f}.header__wordmark{font-size:14px;font-weight:500;letter-spacing:.22em;text-transform:lowercase;color:var(--text)}.header__right{display:flex;align-items:center;gap:var(--space-5)}.header__meta{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint)}.lang-toggle{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:10px;letter-spacing:.14em}.lang-toggle__btn{padding:0;background:transparent;border:none;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:uppercase;color:var(--text-faint);transition:color .15s ease}.lang-toggle__btn:hover{color:var(--text-dim)}.lang-toggle__btn--active{color:var(--text)}.lang-toggle__sep{color:var(--c-4)}.gpu-badge-wrap{position:relative;display:inline-flex}.gpu-badge{display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--space-2);min-width:150px;padding:0;background:transparent;border:none;cursor:pointer;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);transition:color .15s ease}.gpu-badge:hover{color:var(--text-dim)}.gpu-pop{position:absolute;top:calc(100% + 10px);right:0;width:264px;padding:var(--space-3) var(--space-4);background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-sm);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;line-height:1.7;text-align:left;color:var(--text-dim);z-index:10;animation:pop-fade .16s ease}@keyframes pop-fade{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.gpu-badge--live{color:var(--text-dim)}.gpu-badge__dot{width:6px;height:6px;border-radius:50%;background:var(--c-5);flex:0 0 auto}.gpu-badge--live .gpu-badge__dot{background:var(--c-9);animation:badge-pulse 2s ease-in-out infinite}@keyframes badge-pulse{0%,to{opacity:1;box-shadow:0 0 #ffffff40}50%{opacity:.55;box-shadow:0 0 0 3px #fff0}}.dev-panel,.tray,.promptbar{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow)}.promptbar-wrap{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);width:var(--dock-width)}.promptbar{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3)}.promptbar__input{flex:1 1 auto;background:transparent;border:none;outline:none;color:var(--text);font-family:var(--font-sans);font-size:15px;padding:var(--space-4) var(--space-4)}.promptbar__input::placeholder{color:var(--text-faint);opacity:1;transition:opacity .3s ease}.promptbar__input--fading::placeholder{opacity:0}.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2)}.chips--hidden{visibility:hidden}.chip{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--text-dim);background:#0b0b0d8c;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:var(--space-1) var(--space-3);cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.chip:hover{color:var(--c-10);border-color:var(--c-7);background:#ffffff12}.promptbar__submit{flex:0 0 auto;display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-sans);font-size:14px;font-weight:600;letter-spacing:.02em;color:var(--c-10);background:var(--c-2);border:1px solid var(--c-4);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-6);cursor:pointer;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.promptbar__submit:hover:not(:disabled){background:var(--c-3);border-color:var(--c-5)}.promptbar__submit:disabled{opacity:.55;cursor:default}.promptbar__error{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--c-7);padding-bottom:var(--space-1)}.spinner{width:12px;height:12px;border-radius:50%;border:1.5px solid rgba(255,255,255,.25);border-top-color:var(--c-9);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tray{display:flex;align-items:center;gap:var(--space-4);width:var(--dock-width);padding:var(--space-3) var(--space-4)}.tray__label{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);white-space:nowrap}.tray__slots{display:flex;align-items:center;gap:var(--space-3);flex:1 1 auto;min-height:44px}.tray__empty{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint)}.swatch{width:44px;height:44px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.08);background:radial-gradient(circle at 35% 30%,var(--c-3) 0%,var(--c-1) 65%,var(--c-0) 100%);box-shadow:inset 0 0 0 1px #0009;overflow:hidden;cursor:default;transition:border-color .15s ease,transform .15s ease}.swatch--filled{position:relative;border-color:#ffffff38;cursor:pointer}.swatch--active{border-color:var(--c-9);box-shadow:inset 0 0 0 1px #0009,0 0 0 2px #ffffff47}.swatch__img{display:block;width:100%;height:100%;object-fit:cover}button.swatch:hover{border-color:var(--c-8);transform:translateY(-1px)}.swatch--filled:hover:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:var(--c-2);border:1px solid var(--panel-border);border-radius:6px;padding:4px 10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--text);pointer-events:none;z-index:6}.inspector{position:absolute;right:var(--space-5);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:var(--space-3);width:116px;padding:var(--space-3);background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow)}.inspector__title{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:break-word}.inspector__maps{display:flex;flex-direction:column;gap:var(--space-2)}.inspector__map{display:flex;flex-direction:column;gap:3px;padding:0;background:transparent;border:none;cursor:pointer}.inspector__img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--panel-border);transition:border-color .15s ease}.inspector__map:hover .inspector__img{border-color:var(--c-7)}.inspector__label{font-family:var(--font-mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);text-align:left}.inspector__download{width:100%}.lightbox{position:fixed;inset:0;z-index:20;display:grid;place-items:center;background:#050506d1;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);cursor:zoom-out}.lightbox__figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.lightbox__img{max-width:min(70vmin,512px);max-height:70vmin;border-radius:var(--radius);border:1px solid var(--panel-border);box-shadow:var(--shadow)}.lightbox__caption{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim)}.dev-panel{position:absolute;left:var(--space-5);top:64px;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);font-size:12px;opacity:.45;transition:opacity .2s ease}.dev-panel:hover,.dev-panel:focus-within{opacity:1}.dev-panel__tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--c-0);background:var(--c-7);padding:2px var(--space-2);border-radius:4px}.dev-panel__row{display:flex;gap:var(--space-2)}.dev-panel__status{color:var(--text-dim);font-family:var(--font-mono);font-size:11px}.dev-panel__status strong{color:var(--text);font-weight:600}.btn{font-family:var(--font-sans);font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--c-0);background:var(--c-9);border:1px solid transparent;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);cursor:pointer;transition:background .15s ease,opacity .15s ease}.btn:hover:not(:disabled){background:var(--c-10)}.btn:disabled{opacity:.5;cursor:default}.btn--ghost{color:var(--text);background:transparent;border-color:var(--panel-border)}.btn--ghost:hover:not(:disabled){background:#ffffff14}.loading{position:fixed;inset:0;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-5);background:radial-gradient(90% 70% at 50% 42%,#131316 0%,#0a0a0c 55%,var(--c-0) 100%);opacity:1;transition:opacity .4s ease}.loading--hide{opacity:0;pointer-events:none}.loading__brand{display:flex;align-items:center;gap:var(--space-3)}.loading__wordmark{font-size:17px;font-weight:500;letter-spacing:.26em;text-transform:lowercase;color:var(--text)}.loading__dots{display:flex;gap:7px}.loading__dots span{width:4px;height:4px;border-radius:50%;background:var(--c-7);animation:dot-pulse 1.2s ease-in-out infinite}.loading__dots span:nth-child(2){animation-delay:.15s}.loading__dots span:nth-child(3){animation-delay:.3s}@keyframes dot-pulse{0%,to{opacity:.25}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.loading__dots span{animation:none;opacity:.6}}.footer-credit{position:absolute;left:var(--space-5);bottom:5px;font-family:var(--font-mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-faint);opacity:.55;pointer-events:none;white-space:nowrap}@media(max-width:700px){.footer-credit{display:none}}@media(max-width:640px){.app__ui{padding:var(--space-4)}.header__meta{display:none}.tray__slots{overflow-x:auto}}
