@import "https://fonts.googleapis.com/css2?family=Oxanium:wght@400;600;700&family=DM+Sans:ital,wght@0,400;0,500;0,600;1,400&family=Rationale&family=Orbitron:wght@700&family=Audiowide&family=Iceland&family=Cherry+Bomb+One&family=Kalam:wght@700&family=Limelight&family=Amarante&family=Special+Elite&family=Stick+No+Bills:wght@700&family=Emblema+One&family=Gravitas+One&family=MedievalSharp&family=New+Rocker&family=Sancreek&family=Eater&family=Honk&family=Bungee+Inline&family=M+PLUS+1p:wght@100;300&family=Kaisei+Decol:wght@700&family=Zen+Antique&family=M+PLUS+1+Code:wght@100;400;700&family=DotGothic16&family=Klee+One:wght@400;600&family=Noto+Sans+JP:wght@900&family=Zen+Kaku+Gothic+New:wght@900&display=swap";.display-section[data-v-ef0bfc61]{margin-top:var(--gap-sm)}.screen-buttons[data-v-ef0bfc61]{flex-direction:column;gap:4px;display:flex}.ctrl-fullscreen-btn[data-v-ef0bfc61]{border:1px solid var(--vj-border-bright);border-radius:var(--radius-md);background:linear-gradient(135deg, var(--vj-surface-raised) 0%, #00e5c80f 100%);width:100%;color:var(--vj-text);font-family:var(--font-display);letter-spacing:.06em;cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:12px;font-weight:600;transition:all .2s;display:flex}.ctrl-fullscreen-btn--screen[data-v-ef0bfc61]{justify-content:flex-start;padding:8px 12px;font-size:11px}.screen-res[data-v-ef0bfc61]{opacity:.4;margin-left:auto;font-size:9px}.ctrl-fullscreen-btn[data-v-ef0bfc61]:hover{border-color:var(--vj-accent);background:linear-gradient(135deg, var(--vj-accent-dim) 0%, #00e5c81f 100%);box-shadow:0 0 16px var(--vj-accent-glow);color:var(--vj-accent)}.user-menu[data-v-4bc5588d]{align-items:center;display:flex;position:relative}.user-signin-btn[data-v-4bc5588d]{white-space:nowrap;font-size:11px}.user-avatar-btn[data-v-4bc5588d]{cursor:pointer;outline-offset:2px;background:0 0;border:none;border-radius:50%;padding:0}.user-avatar[data-v-4bc5588d]{border:1.5px solid #ffffff4d;border-radius:50%;width:28px;height:28px;display:block}.user-avatar--fallback[data-v-4bc5588d]{color:#fffc;background:#ffffff26;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.user-dropdown[data-v-4bc5588d]{z-index:1000;background:#1a1a2e;border:1px solid #ffffff1f;border-radius:8px;min-width:200px;margin-top:6px;padding:8px 0;position:absolute;top:100%;right:0;box-shadow:0 8px 24px #00000080}.user-dropdown-info[data-v-4bc5588d]{border-bottom:1px solid #ffffff14;padding:8px 14px 10px}.user-dropdown-name[data-v-4bc5588d]{color:#ffffffe6;font-size:13px;font-weight:500;display:block}.user-dropdown-email[data-v-4bc5588d]{color:#ffffff80;margin-top:2px;font-size:11px;display:block}.user-dropdown-action[data-v-4bc5588d]{text-align:left;color:#ffffffb3;cursor:pointer;background:0 0;border:none;width:100%;padding:8px 14px;font-size:12px;display:block}.user-dropdown-action[data-v-4bc5588d]:hover{color:#ffffffe6;background:#ffffff0f}.sp-panel[data-v-319df551]{gap:var(--gap-sm);flex-direction:column;display:flex}.sp-back-row[data-v-319df551]{margin-bottom:var(--gap-xs);display:flex}.sp-back-btn[data-v-319df551]{align-items:center;gap:4px;display:flex}.sp-zoom-presets[data-v-319df551]{gap:var(--gap-sm);grid-template-columns:repeat(4,1fr);display:grid}.sp-zoom-btn[data-v-319df551]{border:1px solid var(--vj-border);border-radius:var(--radius-md);color:var(--vj-text-dim);cursor:pointer;background:0 0;flex-direction:column;align-items:center;gap:2px;padding:8px 0;transition:all .15s;display:flex}.sp-zoom-btn[data-v-319df551]:hover,.sp-zoom-btn.active[data-v-319df551]{color:var(--vj-accent);border-color:var(--vj-accent);background:var(--vj-accent-dim)}.sp-zoom-btn-label[data-v-319df551]{font-weight:700;line-height:1}.sp-zoom-btn-size[data-v-319df551]{font-size:10px;font-family:var(--font-display);letter-spacing:.04em;opacity:.7}.sp-zoom-slider[data-v-319df551]{align-items:center;gap:var(--gap-md);display:flex}.sp-zoom-value[data-v-319df551]{font-family:var(--font-display);color:var(--vj-text-dim);font-variant-numeric:tabular-nums;text-align:right;min-width:40px;font-size:11px}.sp-data-row[data-v-319df551]{gap:var(--gap-sm);grid-template-columns:1fr 1fr;display:grid}.sp-data-row .ctrl-btn[data-v-319df551]{justify-content:center;align-items:center;gap:6px;display:flex}.sp-input[data-v-319df551]{border:1px solid var(--vj-border);border-radius:var(--radius-sm);background:var(--vj-surface);width:100%;color:var(--vj-text);outline:none;padding:6px 10px;font-family:inherit;font-size:12px;transition:border-color .15s}.sp-input[data-v-319df551]:focus{border-color:var(--vj-accent)}.sp-input[data-v-319df551]::placeholder{color:var(--vj-text-dim);opacity:.5}.sp-search-status[data-v-319df551]{color:var(--vj-text-dim);padding:4px 0;font-size:11px}.sp-font-section[data-v-319df551]{flex-direction:column;gap:2px;display:flex}.sp-font-section-label[data-v-319df551]{font-size:10px;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--vj-text-dim);padding:4px 0 2px}.sp-font-item[data-v-319df551]{align-items:center;gap:var(--gap-sm);border-radius:var(--radius-sm);padding:5px 8px;transition:background .1s;display:flex}.sp-font-item[data-v-319df551]:hover{background:#ffffff0a}.sp-font-item--result[data-v-319df551]{border:1px solid var(--vj-border);margin-bottom:2px}.sp-font-name[data-v-319df551]{color:var(--vj-text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;overflow:hidden}.sp-font-item--builtin .sp-font-name[data-v-319df551]{color:var(--vj-text-dim)}.sp-font-meta[data-v-319df551]{font-size:10px;font-family:var(--font-display);color:var(--vj-text-dim);opacity:.6;flex-shrink:0}.sp-font-add[data-v-319df551]{border:1px solid var(--vj-accent);border-radius:var(--radius-sm);width:24px;height:24px;color:var(--vj-accent);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:700;transition:all .15s;display:flex}.sp-font-add[data-v-319df551]:hover{background:var(--vj-accent-dim)}.sp-font-delete[data-v-319df551]{border-radius:var(--radius-sm);width:20px;height:20px;color:var(--vj-text-dim);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.sp-font-delete[data-v-319df551]:hover{color:var(--vj-danger);background:#ff50501a}:root{--vj-void:#06080c;--vj-deep:#0a0e16;--vj-surface:#0f1520;--vj-surface-raised:#141c2a;--vj-surface-glass:#0e1420b8;--vj-border:#ffffff0f;--vj-border-bright:#ffffff1f;--vj-text:#d8dee9;--vj-text-dim:#6b7a8f;--vj-text-bright:#f0f4f8;--vj-accent:#00e5c8;--vj-accent-dim:#00e5c826;--vj-accent-glow:#00e5c84d;--vj-accent-text:#00e5c8;--vj-warm:#ff6b4a;--vj-warm-dim:#ff6b4a1f;--vj-active:#00e5c8;--vj-danger:#ff4d6a;--font-display:"Oxanium", "Helvetica Neue", sans-serif;--font-body:"DM Sans", "Hiragino Sans", sans-serif;--gap-xs:4px;--gap-sm:8px;--gap-md:12px;--gap-lg:16px;--gap-xl:24px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px}*,:before,:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{min-height:100dvh;margin:0}body{font-family:var(--font-body);color:var(--vj-text);background:var(--vj-void);font-size:13px;line-height:1.5}label,button,input,select{font:inherit}.eye-toggle{width:24px;height:20px;color:var(--vj-accent);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:flex}.eye-toggle:hover{background:var(--vj-accent-dim)}.eye-toggle--hidden{color:var(--vj-text-dim);opacity:.5}.ctrl-section{padding:var(--gap-md) var(--gap-lg);background:var(--vj-surface-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--vj-border-bright);border-radius:var(--radius-lg);min-width:0;overflow:hidden}.ctrl-section-header{margin-bottom:var(--gap-sm);align-items:center;gap:6px;display:flex}.ctrl-icon{width:14px;height:14px;color:var(--vj-accent);flex-shrink:0}.ctrl-section-title{font-family:var(--font-display);letter-spacing:.14em;color:var(--vj-text-dim);text-transform:uppercase;flex:1;font-size:10px;font-weight:600}.ctrl-btn{border:1px solid var(--vj-border-bright);border-radius:var(--radius-sm);background:var(--vj-surface-raised);color:var(--vj-text);font-family:var(--font-display);letter-spacing:.04em;cursor:pointer;justify-content:center;align-items:center;gap:4px;padding:7px 12px;font-size:11px;font-weight:600;transition:all .15s;display:inline-flex}.ctrl-btn:hover:not(:disabled){border-color:var(--vj-accent);background:var(--vj-accent-dim);color:var(--vj-text-bright)}.ctrl-btn:disabled{opacity:.35;cursor:not-allowed}.ctrl-btn--accent{background:var(--vj-accent-dim);color:var(--vj-accent);border-color:#00e5c840}.ctrl-btn--accent:hover:not(:disabled){box-shadow:0 0 12px var(--vj-accent-glow);background:#00e5c838}.ctrl-btn--fill{width:100%}.ctrl-btn--active{border-color:var(--vj-accent);box-shadow:0 0 8px var(--vj-accent-glow)}.ctrl-btn--muted{color:var(--vj-text-dim)}.ctrl-btn--muted:hover:not(:disabled){border-color:var(--vj-danger);color:var(--vj-danger);background:#ff4d6a1a}.ctrl-btn-text{font-family:var(--font-display);letter-spacing:.06em;color:var(--vj-text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600;transition:all .15s}.ctrl-btn-text:hover{color:var(--vj-accent);background:var(--vj-accent-dim)}.ctrl-btn-row{gap:var(--gap-sm);display:flex}.ctrl-input{border:1px solid var(--vj-border);border-radius:var(--radius-sm);background:var(--vj-deep);width:100%;color:var(--vj-text);outline:none;padding:7px 10px;font-size:12px;transition:border-color .15s,box-shadow .15s}.ctrl-input::placeholder{color:var(--vj-text-dim);opacity:.6}.ctrl-input:focus{border-color:var(--vj-accent);box-shadow:0 0 0 2px var(--vj-accent-dim)}.ctrl-field{margin-bottom:var(--gap-sm)}.ctrl-field:last-child{margin-bottom:0}.ctrl-field-label{font-family:var(--font-display);letter-spacing:.08em;color:var(--vj-text-dim);margin-bottom:var(--gap-xs);text-transform:uppercase;font-size:10px;font-weight:600;display:block}.ctrl-grid-two{gap:var(--gap-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ctrl-grid-three{gap:var(--gap-sm);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ctrl-slider-group{flex-direction:column;gap:6px;display:flex}.ctrl-slider-row{align-items:center;gap:var(--gap-sm);grid-template-columns:34px 1fr 44px;display:grid}.ctrl-slider-row--compact{grid-template-columns:56px 1fr 44px}.ctrl-slider-label{font-family:var(--font-display);letter-spacing:.06em;color:var(--vj-text-dim);font-size:10px;font-weight:600}.ctrl-slider-value{font-family:var(--font-display);color:var(--vj-text-dim);text-align:right;font-variant-numeric:tabular-nums;font-size:10px;font-weight:600}.ctrl-range{appearance:none;background:var(--vj-surface-raised);cursor:pointer;border-radius:2px;outline:none;width:100%;height:4px}.ctrl-range:disabled{opacity:.35;cursor:not-allowed}.ctrl-range::-webkit-slider-thumb{appearance:none;border:2px solid var(--thumb-color,var(--vj-accent));background:var(--vj-deep);cursor:pointer;border-radius:50%;width:12px;height:12px;transition:box-shadow .15s,transform .1s}.ctrl-range::-webkit-slider-thumb:hover{box-shadow:0 0 8px var(--thumb-glow,var(--vj-accent-glow));transform:scale(1.2)}.ctrl-range::-moz-range-thumb{border:2px solid var(--thumb-color,var(--vj-accent));background:var(--vj-deep);cursor:pointer;border-radius:50%;width:12px;height:12px}.ctrl-range--cyan{--thumb-color:#00e5c8;--thumb-glow:#00e5c866}.ctrl-range--rainbow{--thumb-color:#fff;--thumb-glow:#ffffff4d;background:linear-gradient(90deg,#e61a1a,#e6e61a,#1ae61a,#1ae6e6,#1a1ae6,#e61ae6,#e61a1a)}.ctrl-range--warm{--thumb-color:#ffb347;--thumb-glow:#ffb34766}.ctrl-range--cool{--thumb-color:#7ea8f7;--thumb-glow:#7ea8f766}.ctrl-live-badge{font-family:var(--font-display);letter-spacing:.1em;color:var(--vj-accent);background:var(--vj-accent-dim);border-radius:4px;padding:2px 6px;font-size:9px;font-weight:700;animation:2s ease-in-out infinite live-pulse}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.5}}.ctrl-url-row{gap:var(--gap-sm);display:flex}.ctrl-url-row .ctrl-input{flex:1}.ctrl-url-row .ctrl-btn{flex-shrink:0;width:36px;padding:0}.ctrl-file-input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.ctrl-file-upload{border:1px dashed var(--vj-border-bright);border-radius:var(--radius-sm);background:var(--vj-deep);color:var(--vj-text-dim);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:8px;font-size:11px;transition:all .15s;display:flex}.ctrl-file-upload:hover{border-color:var(--vj-accent);color:var(--vj-accent);background:var(--vj-accent-dim)}@media (width<=640px){.ctrl-grid-three{grid-template-columns:1fr}}.vj-select-trigger{border:1px solid var(--vj-border);border-radius:var(--radius-sm);background:var(--vj-surface-raised);width:100%;color:var(--vj-text);font-family:var(--font-display);cursor:pointer;outline:none;justify-content:space-between;align-items:center;padding:5px 8px;font-size:10px;font-weight:600;transition:border-color .15s;display:flex}.vj-select-trigger:hover,.vj-select-trigger:focus{border-color:var(--vj-accent)}.vj-select-trigger:after{content:"▾";opacity:.5;margin-left:4px;font-size:8px}.vj-select-content{z-index:100;min-width:var(--radix-select-trigger-width);border:1px solid var(--vj-border-bright);border-radius:var(--radius-sm);background:var(--vj-surface);max-height:240px;padding:4px;overflow-y:auto;box-shadow:0 4px 16px #0006}.vj-select-item{font-family:var(--font-display);color:var(--vj-text-dim);cursor:pointer;border-radius:3px;outline:none;padding:4px 8px;font-size:10px;font-weight:600;transition:all .1s}.vj-select-item:hover,.vj-select-item[data-highlighted]{color:var(--vj-text);background:var(--vj-accent-dim)}.vj-select-item[data-state=checked]{color:var(--vj-accent)}.vj-switch-label{cursor:pointer;align-items:center;gap:6px;display:flex}.vj-switch-root{background:var(--vj-surface-raised);border:1px solid var(--vj-border);cursor:pointer;border-radius:8px;flex-shrink:0;align-items:center;width:28px;height:16px;padding:0 1px;transition:background .15s,border-color .15s;display:flex}.vj-switch-root[data-state=checked]{background:var(--vj-accent-dim);border-color:var(--vj-accent)}.vj-switch-thumb{background:var(--vj-text-dim);border-radius:50%;width:12px;height:12px;transition:transform .15s,background .15s;display:block;transform:translate(0)}.vj-switch-root[data-state=checked] .vj-switch-thumb{background:var(--vj-accent);transform:translate(12px)}.vj-switch-text{font-family:var(--font-display);color:var(--vj-text-dim);letter-spacing:.04em;font-size:9px;font-weight:600}.vj-slider-touch-guard{width:100%}.vj-slider-root{touch-action:none;-webkit-user-select:none;user-select:none;align-items:center;width:100%;height:16px;display:flex;position:relative}.vj-slider-root--blocked{pointer-events:none}.vj-slider-track{background:var(--vj-surface-raised);border-radius:2px;flex:1;height:3px;position:relative}.vj-slider-range{border-radius:2px;height:100%;position:absolute}.vj-slider-range--cyan{background:var(--vj-accent);opacity:.6}.vj-slider-range--warm{background:var(--vj-warm);opacity:.6}.vj-slider-range--cool{background:var(--vj-accent);opacity:.4}.vj-slider-thumb{border:2px solid var(--vj-accent);background:var(--vj-surface);cursor:pointer;border-radius:50%;outline:none;width:12px;height:12px;transition:border-color .15s,box-shadow .15s;display:block}.vj-slider-thumb:hover,.vj-slider-thumb:focus{box-shadow:0 0 0 3px var(--vj-accent-dim)}.vj-slider-thumb--warm{border-color:var(--vj-warm)}.vj-slider-thumb--warm:hover,.vj-slider-thumb--warm:focus{box-shadow:0 0 0 3px var(--vj-warm-dim)}.vj-slider-thumb--cool{border-color:var(--vj-accent)}#app{min-height:100dvh}.app-shell{zoom:var(--app-zoom,1);background:radial-gradient(ellipse 80% 60% at 20% 10%, #00e5c808 0%, transparent 60%), radial-gradient(ellipse 60% 50% at 90% 80%, #ff6b4a06 0%, transparent 50%), var(--vj-void);flex-direction:column;min-height:100dvh;display:flex}.app-header{padding:10px var(--gap-lg);border-bottom:1px solid var(--vj-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#06080ccc;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.app-brand{align-items:center;gap:var(--gap-sm);display:flex}.brand-icon{color:var(--vj-accent);opacity:.85;align-items:center;display:flex}.app-brand h1{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--vj-text-bright);margin:0;font-size:1rem;font-weight:700}.app-header-right{align-items:center;gap:var(--gap-md);display:flex}.header-btn{border:1px solid var(--vj-border);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--vj-text-dim);cursor:pointer;background:0 0;justify-content:center;align-items:center;transition:all .15s;display:flex}.header-btn:hover,.header-btn--active{color:var(--vj-accent);border-color:var(--vj-accent);background:var(--vj-accent-dim)}.app-perf{font-family:var(--font-display);color:var(--vj-text-dim);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:10px;font-weight:600}.app-perf--warn{color:var(--vj-danger)}.app-clock{font-family:var(--font-display);color:var(--vj-text-dim);font-variant-numeric:tabular-nums;letter-spacing:.04em;font-size:12px;font-weight:600}.app-status-bar{background:var(--vj-surface);border:1px solid var(--vj-border);border-radius:100px;align-items:center;gap:6px;padding:4px 10px;display:flex}.status-dot{background:var(--vj-text-dim);border-radius:50%;width:6px;height:6px;transition:background .3s,box-shadow .3s}.status-dot.active{background:var(--vj-accent);box-shadow:0 0 6px var(--vj-accent-glow)}.status-text{color:var(--vj-text-dim);font-size:11px;font-family:var(--font-display);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;max-width:260px;overflow:hidden}.app-workspace{padding:var(--gap-lg);gap:var(--gap-lg);flex-direction:column;flex:1;display:flex}.workspace-stage{flex-shrink:0;width:100%}.stage-panels{gap:var(--gap-sm);margin-top:var(--gap-sm);grid-template-columns:1fr 1fr;display:grid}.workspace-controls{gap:var(--gap-sm);flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}@media (width>=960px){.app-workspace{flex-direction:row;align-items:stretch;overflow:visible}.workspace-stage{flex:1;min-width:0}.workspace-controls{width:380px;max-height:calc(100dvh - 60px - var(--gap-lg) * 2);top:calc(60px + var(--gap-lg));flex-shrink:0;position:sticky;overflow-y:auto}}@media (width>=1280px){.workspace-controls{width:400px}}
