@import "https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700;800;900&display=swap";@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--color-void:#000;--color-abyss:#000;--color-deep:#0f0f13;--color-surface:#050505;--color-elevated:#0a0a0a;--color-card:#050505;--color-hover:#fff;--glass-bg:#0003;--glass-border:#00ffd666;--glass-hover:var(--color-elevated);--glass-active:var(--accent);--glass-blur:4px;--glass-saturate:100%;--surface-ui:#1a1a20;--surface-ui-hover:#22222a;--surface-ui-accent:#00ffd61a;--surface-ui-border:#fff3;--accent:#00bfa5;--accent-muted:#00bfa526;--accent-600:#009688;--signal-green:var(--accent);--violet:#a020f0;--solar:#ff7518;--success:#00e676;--warning:#ff7518;--error:#ff3d00;--info:#00b0ff;--text-primary:#fff;--text-secondary:#ffffffb3;--text-tertiary:#fff6;--text-muted:#ffffff40;--text-on-accent:#000;--text-on-hover:#000;--border-width:1px;--border-subtle:1px solid #ffffff14;--border-default:2px solid #fff3;--border-emphasis:1px solid #fff6;--border-accent:2px solid var(--accent);--border-accent-strong:2px solid var(--accent);--shadow-color:var(--accent);--shadow-offset-color:transparent;--shadow-xs:2px 2px 0px var(--shadow-color);--shadow-sm:4px 4px 0px var(--shadow-color);--shadow-md:4px 4px 0px var(--shadow-offset-color);--shadow-lg:6px 6px 0px var(--shadow-offset-color);--shadow-xl:8px 8px 0px var(--shadow-offset-color);--shadow-2xl:12px 12px 0px var(--shadow-offset-color);--shadow-glow:4px 4px 0px var(--accent);--shadow-glow-strong:0 0 0 transparent;--font-display:"Orbitron", system-ui, sans-serif;--font-body:"Space Grotesk", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.333rem;--text-2xl:1.777rem;--text-3xl:2.369rem;--text-4xl:3.157rem;--text-5xl:4.209rem;--leading-none:1;--leading-tight:1.15;--leading-snug:1.3;--leading-normal:1.5;--leading-relaxed:1.65;--leading-loose:2;--tracking-tighter:-.04em;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.02em;--tracking-wider:.05em;--tracking-widest:.1em;--weight-light:300;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-black:900;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-none:0;--radius-sm:2px;--radius-md:4px;--radius-lg:6px;--radius-xl:8px;--radius-2xl:12px;--radius-full:9999px;--duration-fast:.15s;--duration-normal:.2s;--ease-out:cubic-bezier(0, 0, .2, 1);--transition-all:all var(--duration-normal) var(--ease-out);--transition-transform:transform var(--duration-normal) var(--ease-out);--transition-colors:color var(--duration-normal) var(--ease-out), background-color var(--duration-normal) var(--ease-out), border-color var(--duration-normal) var(--ease-out), box-shadow var(--duration-normal) var(--ease-out);--z-base:0;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-drawer:5000;--z-modal-backdrop:6000;--z-modal:6100;--z-tooltip:7000;--z-max:9999}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-void:#e4e4df;--color-abyss:#dcdcd6;--color-deep:#d4d4cd;--color-surface:#e4e4df;--color-elevated:#ecece7;--color-card:#ecece7;--color-hover:#000;--text-primary:#111;--text-secondary:#222;--text-tertiary:#666;--text-muted:#999;--text-on-accent:#000;--text-on-hover:#fff;--border-subtle:1px solid #0000001a;--border-default:1px solid #0003;--border-emphasis:1px solid #0009;--shadow-color:#0000001a;--shadow-offset-color:#0003}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);font-size:var(--text-base);color:var(--text-primary);background:var(--color-abyss);background-image:linear-gradient(var(--border-subtle) 1px, transparent 1px), linear-gradient(90deg, var(--border-subtle) 1px, transparent 1px), radial-gradient(circle at center, #00ffd60d 0%, transparent 80%);background-position:-1px -1px;background-size:20px 20px;min-height:100vh;overflow-x:hidden}.glass,.glass-subtle,.glass-strong{-webkit-backdrop-filter:blur(4px);border:1px solid var(--accent);background:#0006;box-shadow:4px 4px #00ffd633}.gradient-aurora{background:var(--accent)}.gradient-aurora-subtle{background:var(--color-surface);border:var(--border-accent)}.gradient-radial-glow{background:var(--color-surface)}.gradient-mesh{background:var(--color-abyss)}.display-xl,.display-lg,.display-md,.heading-xl,.heading-lg,.heading-md,.heading-sm{font-family:var(--font-display);text-transform:uppercase}.display-xl{font-size:var(--text-5xl);-webkit-text-stroke:1px var(--text-primary);color:#0000;font-weight:900;line-height:1}.display-lg{font-size:var(--text-4xl);font-weight:900;line-height:1}.display-md{font-size:var(--text-3xl);font-weight:900;line-height:1}.heading-xl{font-size:var(--text-2xl);letter-spacing:var(--tracking-tight);font-weight:700;line-height:1.1}.heading-lg{font-size:var(--text-xl);letter-spacing:var(--tracking-tight);font-weight:700;line-height:1.1}.heading-md{font-size:var(--text-lg);letter-spacing:var(--tracking-tight);font-weight:700;line-height:1.2}.heading-sm{font-size:var(--text-base);letter-spacing:var(--tracking-tight);font-weight:700;line-height:1.2}.body-lg{font-size:var(--text-lg);line-height:var(--leading-relaxed)}.body-md{font-size:var(--text-base);line-height:var(--leading-normal)}.body-sm{font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--text-secondary)}.caption{font-size:var(--text-xs);line-height:var(--leading-normal);color:var(--text-tertiary)}.label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);font-weight:700}.mono{font-family:var(--font-mono)}.stroke-text{-webkit-text-stroke:1px var(--text-primary);color:#0000}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:fadeIn var(--duration-normal) var(--ease-out) forwards}.animate-slide-up{animation:slideUp var(--duration-normal) var(--ease-out) forwards}::-webkit-scrollbar-track{background:var(--color-abyss);border-left:var(--border-subtle)}::-webkit-scrollbar-thumb{background:var(--text-muted);border:1px solid var(--color-abyss)}*{scrollbar-width:thin;scrollbar-color:var(--text-muted) var(--color-abyss)}::selection{background:var(--accent);color:var(--color-void)}::selection{background:var(--accent);color:var(--color-void)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn{clip-path:polygon(0 0,calc(100% - 4px) 0,100% 4px,100% 100%,4px 100%,0 calc(100% - 4px));justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-bold);text-transform:uppercase;line-height:var(--leading-none);border:var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:transform var(--duration-fast), box-shadow var(--duration-fast), background var(--duration-fast);box-shadow:var(--shadow-sm);text-decoration:none;display:inline-flex;position:relative}.btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none;box-shadow:none;transform:none}.btn-primary{background:var(--accent);color:#000;border-color:var(--accent);letter-spacing:.05em;font-weight:900;box-shadow:4px 4px #00ffd666}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-lg);background:var(--text-primary);color:var(--color-void);transform:translate(-4px,-4px)}.btn-primary:active:not(:disabled){box-shadow:var(--shadow-xs);transform:translate(0)}.btn-secondary{background:var(--color-surface);color:var(--text-primary);border-color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--text-primary);color:var(--color-void);box-shadow:var(--shadow-lg);transform:translate(-4px,-4px)}.btn-secondary:active:not(:disabled){box-shadow:var(--shadow-xs);transform:translate(0)}.btn-secondary.active{background:var(--accent);color:var(--color-void);border-color:var(--text-primary)}.btn-ghost{color:var(--text-secondary);box-shadow:none;background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--text-primary);color:var(--color-void);border-color:var(--text-primary);box-shadow:var(--shadow-md);transform:translate(-4px,-4px)}.btn-danger{background:var(--error);color:var(--color-void);border-color:var(--text-primary);box-shadow:var(--shadow-md)}.btn-danger:hover:not(:disabled){box-shadow:var(--shadow-lg);background:var(--text-primary);color:var(--error);transform:translate(-4px,-4px)}.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.btn-lg{padding:var(--space-4) var(--space-6);font-size:var(--text-base)}.btn-xl{padding:var(--space-5) var(--space-8);font-size:var(--text-lg)}.btn-icon{width:40px;height:40px;padding:0}.btn-icon.btn-sm{width:32px;height:32px}.btn-icon.btn-lg{width:48px;height:48px}.card{border-radius:var(--radius-md);box-shadow:var(--shadow-lg);transition:transform var(--duration-fast), box-shadow var(--duration-fast);clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px));-webkit-backdrop-filter:blur(4px);background:#0006;border:1px solid #00ffd64d;position:relative;overflow:hidden}.card-interactive{cursor:pointer}.card-interactive:hover{box-shadow:2px 2px 0px var(--text-primary);border-color:var(--text-primary);background:var(--color-elevated);transform:translate(-4px,-4px)}.card-interactive:active{box-shadow:var(--shadow-sm);transform:translate(0)}.card-interactive.active,.card-interactive:focus-visible{border-color:var(--accent);box-shadow:var(--shadow-glow)}.card-header{padding:var(--space-4) var(--space-5);border-bottom:var(--border-default);background:var(--text-primary);color:var(--color-void);text-transform:uppercase;font-weight:900}.card-body{padding:var(--space-5)}.card-footer{padding:var(--space-4) var(--space-5);border-top:var(--border-default)}.card-compact .card-header,.card-compact .card-footer{padding:var(--space-3) var(--space-4)}.card-compact .card-body{padding:var(--space-4)}.bento-grid{gap:var(--space-6);display:grid}.bento-grid-2{grid-template-columns:repeat(2,1fr)}.bento-grid-3{grid-template-columns:repeat(3,1fr)}.bento-grid-4{grid-template-columns:repeat(4,1fr)}.bento-item{padding:var(--space-5);box-shadow:var(--shadow-md);transition:transform var(--duration-fast), box-shadow var(--duration-fast);clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px));-webkit-backdrop-filter:blur(4px);background:#0006;border:1px solid #00ffd64d;position:relative}.bento-span-2{grid-column:span 2}.bento-span-3{grid-column:span 3}.bento-row-span-2{grid-row:span 2}.bento-item:hover{box-shadow:2px 2px 0px var(--text-primary);border-color:var(--text-primary);background:var(--color-elevated);transform:translate(-4px,-4px)}.input-wrapper{gap:var(--space-2);flex-direction:column;display:flex;position:relative}.input-label{font-size:var(--text-xs);color:var(--text-primary);letter-spacing:var(--tracking-wider);text-transform:uppercase;font-weight:900}.input{width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-primary);background:var(--color-surface);border:var(--border-default);box-shadow:var(--shadow-sm);transition:transform var(--duration-fast), box-shadow var(--duration-fast);clip-path:polygon(0 0,100% 0,100% calc(100% - 4px),calc(100% - 4px) 100%,0 100%)}.input::placeholder{color:var(--text-muted)}.input:focus{border-color:var(--accent);box-shadow:var(--shadow-md);outline:none;transform:translate(-4px,-4px)}.input:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.input-sm{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.input-lg{padding:var(--space-4) var(--space-5);font-size:var(--text-base)}textarea.input{resize:vertical;min-height:120px}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='4'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:var(--space-10)}.slider-wrapper{gap:var(--space-2);flex-direction:column;display:flex}.slider-header{justify-content:space-between;align-items:center;display:flex}.slider-label{font-size:var(--text-xs);color:var(--text-primary);text-transform:uppercase;font-weight:900}.slider-value{font-family:var(--font-mono);font-size:var(--text-xs);background:var(--text-primary);color:var(--color-void);padding:0 var(--space-1);border:1px solid var(--text-primary);font-weight:700}.slider{appearance:none;background:var(--color-surface);border:var(--border-subtle);cursor:pointer;outline:none;width:100%;height:12px}.slider::-webkit-slider-thumb{appearance:none;background:var(--accent);cursor:pointer;width:12px;height:20px;box-shadow:var(--shadow-xs);border:none}.slider::-webkit-slider-thumb:hover{box-shadow:var(--shadow-sm);transform:scale(1.2)}.toggle-wrapper{align-items:center;gap:var(--space-3);cursor:pointer;display:flex}.toggle{background:var(--color-surface);border:var(--border-default);width:56px;height:28px;transition:background var(--duration-fast);position:relative}.toggle:after{content:"";background:var(--text-primary);border:1px solid var(--text-primary);width:20px;height:20px;transition:transform var(--duration-fast);position:absolute;top:0;left:0}.toggle.active{background:var(--accent)}.toggle.active:after{background:var(--color-void);transform:translate(28px)}.toggle-label{font-size:var(--text-sm);color:var(--text-primary);text-transform:uppercase;font-weight:700}.chip{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);color:var(--text-primary);background:var(--color-surface);border:var(--border-subtle);text-transform:uppercase;box-shadow:var(--shadow-xs);font-weight:900;display:inline-flex}.chip-accent{background:var(--accent);color:var(--color-void);border-color:var(--text-primary)}.chip-violet{background:var(--violet);color:var(--color-void);border-color:var(--text-primary)}.chip-solar{background:var(--solar);color:var(--color-void);border-color:var(--text-primary)}.badge{padding:var(--space-1) var(--space-2);color:var(--color-void);background:var(--accent);border:1px solid var(--text-primary);box-shadow:2px 2px 0px var(--text-primary);justify-content:center;align-items:center;font-size:11px;font-weight:900;display:inline-flex}.status-dot{border:1px solid var(--text-primary);background:var(--text-muted);width:12px;height:12px}.status-dot.online{background:var(--success)}.status-dot.away{background:var(--warning)}.status-dot.busy{background:var(--error)}.status-dot.offline{background:var(--text-primary)}.tabs{gap:var(--space-2);border-bottom:var(--border-default);padding:0;display:flex}.tab{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);text-transform:uppercase;color:var(--text-secondary);background:var(--color-surface);border:var(--border-default);cursor:pointer;transition:background var(--duration-fast);border-bottom:none;flex:1;font-weight:900}.tab:hover:not(.active){background:var(--text-primary);color:var(--color-void)}.tab.active{color:var(--color-void);background:var(--accent);border-color:var(--text-primary);padding-bottom:calc(var(--space-3) + 4px);transform:translateY(4px)}.progress{background:var(--color-surface);border:var(--border-default);width:100%;height:16px;box-shadow:inset var(--shadow-sm);overflow:hidden}.progress-bar{background:var(--text-primary);height:100%;transition:width var(--duration-slow) var(--ease-out)}.progress-bar.indeterminate{background:repeating-linear-gradient(-45deg, var(--accent), var(--accent) 10px, var(--text-primary) 10px, var(--text-primary) 20px);background-size:200% 100%;width:30%;animation:1s linear infinite shimmer}.tooltip-content{padding:var(--space-2) var(--space-3);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;color:var(--color-void);background:var(--text-primary);border:1px solid var(--text-primary);box-shadow:var(--shadow-md);white-space:nowrap;opacity:0;visibility:hidden;z-index:var(--z-tooltip);font-weight:700;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%)}.tooltip:hover .tooltip-content{opacity:1;visibility:visible}.divider{background:var(--text-primary);width:100%;height:4px;margin:var(--space-4) 0}.divider-vertical{width:4px;height:auto;margin:0 var(--space-4);background:var(--text-primary);align-self:stretch}.divider-label{align-items:center;gap:var(--space-4);font-family:var(--font-mono);color:var(--text-primary);text-transform:uppercase;font-weight:700;display:flex}.divider-label:before,.divider-label:after{content:"";background:var(--text-primary);flex:1;height:4px}.skeleton{background:var(--text-muted);border:var(--border-default);animation:1s infinite alternate pulse}.avatar{background:var(--accent);border:var(--border-default);width:48px;height:48px;box-shadow:var(--shadow-sm);color:var(--color-void);justify-content:center;align-items:center;font-weight:900;display:flex;position:relative;overflow:hidden}.avatar img{object-fit:cover;filter:grayscale()contrast(150%);mix-blend-mode:hard-light;width:100%;height:100%}.avatar-status{border:1px solid var(--text-primary);background:var(--success);width:16px;height:16px;position:absolute;bottom:-4px;right:-4px}.viewport-effect-overlay{pointer-events:none;z-index:5;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.viewport-effect-overlay.scanlines:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000014 2px 4px);width:100%;height:100%;position:absolute;top:0;left:0}.viewport-effect-overlay.scanlines:after{content:"";pointer-events:none;background:linear-gradient(#0000 0%,#ffffff08 50%,#0000 100%);width:100%;height:6px;animation:4s linear infinite scanlineMove;position:absolute;top:0;left:0}@keyframes scanlineMove{0%{top:-6px}to{top:100%}}.viewport-effect-overlay.vhs{box-shadow:var(--shadow-md)}.viewport-effect-overlay.vhs:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 1px,#0000001f 1px 2px);width:100%;height:100%;position:absolute;top:0;left:0}.viewport-effect-overlay.vhs:after{content:"";pointer-events:none;background:linear-gradient(#0000 0%,#ffffff14 40%,#ffffff1f 50%,#ffffff14 60%,#0000 100%);width:100%;height:4px;animation:3s ease-in-out infinite vhsTracking;position:absolute;left:0}@keyframes vhsTracking{0%{opacity:0;top:-4px}10%{opacity:1}90%{opacity:1}to{opacity:0;top:100%}}.viewport-effect-overlay.vhs .vhs-noise{opacity:.02;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");width:100%;height:100%;animation:.1s steps(8,end) infinite vhsNoise;position:absolute;top:0;left:0}@keyframes vhsNoise{0%{transform:translate(0)translateY(0)}25%{transform:translate(-1px)translateY(1px)}50%{transform:translate(1px)translateY(-1px)}75%{transform:translate(-1px)translateY(-1px)}to{transform:translate(1px)translateY(1px)}}.viewport-effect-overlay.vhs .vhs-vignette{background:radial-gradient(#0000 50%,#00000040 100%);width:100%;height:100%;position:absolute;top:0;left:0}.viewport-effect-overlay.hologram{background:linear-gradient(#00ffd605 0%,#0000 30% 70%,#00ffd605 100%)}.viewport-effect-overlay.hologram:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 3px,#00ffd608 3px 6px);width:100%;height:100%;animation:.5s linear infinite hologramScan;position:absolute;top:0;left:0}@keyframes hologramScan{0%{background-position:0 0}to{background-position:0 6px}}.viewport-effect-overlay.hologram:after{content:"";pointer-events:none;background:0 0;width:100%;height:100%;animation:4s ease-in-out infinite hologramFlicker;position:absolute;top:0;left:0}@keyframes hologramFlicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.8}94%{opacity:1}96%{opacity:.9}97%{opacity:1}}.viewport-effect-overlay.hologram .hologram-glow{width:100%;height:100%;box-shadow:var(--shadow-md);border:var(--border-default);position:absolute;top:0;left:0}.viewport-effect-overlay.hologram .hologram-glitch{background:linear-gradient(90deg,#0000,#7c3aed1a,#0000);width:100%;height:0;animation:8s ease-in-out infinite hologramGlitchBar;position:absolute;left:0}@keyframes hologramGlitchBar{0%,90%,to{opacity:0;height:0;top:50%}92%{opacity:1;height:20px;top:30%}94%{opacity:0;height:0;top:30%}96%{opacity:1;height:15px;top:70%}98%{opacity:0;height:0;top:70%}}@media (prefers-reduced-motion:reduce){.viewport-effect-overlay.scanlines:after,.viewport-effect-overlay.vhs:after,.viewport-effect-overlay.vhs .vhs-noise,.viewport-effect-overlay.hologram:before,.viewport-effect-overlay.hologram:after,.viewport-effect-overlay.hologram .hologram-glitch{animation:none}}.neon-flicker{animation:3s ease-in-out infinite neon-flicker-anim}.neon-flicker-subtle{animation:4s ease-in-out infinite neon-flicker-subtle-anim}.neon-flicker-intense{animation:2s ease-in-out infinite neon-flicker-intense-anim}@keyframes neon-flicker-anim{0%,to{opacity:1;filter:brightness()}10%{opacity:.8;filter:brightness(.9)}12%{opacity:1;filter:brightness(1.1)}20%{opacity:.9;filter:brightness(.95)}50%{opacity:1;filter:brightness()}55%{opacity:.7;filter:brightness(.85)}57%{opacity:1;filter:brightness(1.15)}80%{opacity:.95;filter:brightness()}}@keyframes neon-flicker-subtle-anim{0%,to{opacity:1;filter:brightness()}33%{opacity:.95;filter:brightness(.98)}66%{opacity:.9;filter:brightness(1.05)}}@keyframes neon-flicker-intense-anim{0%,to{opacity:1;filter:brightness()}5%{opacity:.4;filter:brightness(.7)}6%{opacity:1;filter:brightness(1.3)}25%{opacity:.85;filter:brightness(.9)}26%{opacity:1;filter:brightness(1.1)}50%{opacity:.6;filter:brightness(.8)}52%{opacity:1;filter:brightness(1.2)}75%{opacity:.9;filter:brightness(.95)}}.neon-text-green{color:var(--accent);text-shadow:0 0 5px var(--accent), 0 0 10px var(--accent), 0 0 20px var(--accent), 0 0 40px #00ffd666}.neon-text-violet{color:var(--violet);text-shadow:0 0 5px var(--violet), 0 0 10px var(--violet), 0 0 20px var(--violet), 0 0 40px #7c3aed66}.neon-text-red{color:var(--error);text-shadow:0 0 5px var(--error), 0 0 10px var(--error), 0 0 20px var(--error), 0 0 40px #f366}.pulse-ring-container{justify-content:center;align-items:center;display:inline-flex;position:relative}.pulse-ring{border-radius:var(--radius-full);border:2px solid var(--accent);opacity:0;pointer-events:none;width:100%;height:100%;position:absolute}.pulse-ring-active .pulse-ring{animation:.6s cubic-bezier(.175,.885,.32,1.275) forwards pulse-ring-expand}.pulse-ring:nth-child(2){animation-delay:.1s}.pulse-ring:nth-child(3){animation-delay:.2s}@keyframes pulse-ring-expand{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(2)}}.pulse-ring-violet .pulse-ring{border-color:#0000}.pulse-ring-solar .pulse-ring{border-color:var(--solar)}.glass-glow-cyan{position:relative;overflow:hidden}.glass-glow-cyan:before{content:"";filter:none;pointer-events:none;width:150px;height:150px;transition:opacity var(--duration-normal) var(--ease-out);opacity:.5;background:radial-gradient(circle,#00ffd626 0%,#0000 70%);position:absolute;top:-40px;right:-40px}.glass-glow-cyan:hover:before{opacity:1}.glass-glow-violet{position:relative;overflow:hidden}.glass-glow-violet:before{content:"";filter:none;pointer-events:none;width:150px;height:150px;transition:opacity var(--duration-normal) var(--ease-out);opacity:.5;background:0 0;position:absolute;top:-40px;right:-40px}.glass-glow-violet:hover:before{opacity:1}.glass-glow-solar{position:relative;overflow:hidden}.glass-glow-solar:before{content:"";filter:none;pointer-events:none;width:150px;height:150px;transition:opacity var(--duration-normal) var(--ease-out);opacity:.5;background:radial-gradient(circle,#f973161f 0%,#0000 70%);position:absolute;top:-40px;right:-40px}.glass-glow-solar:hover:before{opacity:1}.glass-accent-line{position:relative}.glass-accent-line:after{content:"";background:linear-gradient(90deg, var(--accent) 0%, transparent 100%);opacity:.6;width:40%;height:2px;transition:width var(--duration-normal) var(--ease-out), opacity var(--duration-normal) var(--ease-out);position:absolute;bottom:0;left:0}.glass-accent-line:hover:after{opacity:1;width:60%}.status-live{border:var(--border-default);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--error);background:#ff336626;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.status-live:before{content:"";border-radius:var(--radius-full);background:var(--error);width:6px;height:6px;box-shadow:0 0 8px var(--error);animation:1.5s ease-in-out infinite status-pulse}.status-live.neon-flicker{text-shadow:0 0 5px var(--error), 0 0 10px #ff336680}.status-connected{border:var(--border-default);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--accent);background:#00ffd61a;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.status-connected:before{content:"";border-radius:var(--radius-full);background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent);animation:2s ease-in-out infinite status-pulse}.status-recording{border:var(--border-default);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:#fff;background:#f363;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.status-recording:before{content:"";border-radius:var(--radius-full);background:var(--error);width:8px;height:8px;box-shadow:0 0 12px var(--error);animation:1s ease-in-out infinite recording-blink}@keyframes status-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.9)}}@keyframes recording-blink{0%,to{opacity:1}50%{opacity:.3}}.mesh-gradient-animated{background:radial-gradient(circle at 20% 20%, #00ffd614 0%, transparent 50%), radial-gradient(circle at 80% 30%, #7c3aed0f 0%, transparent 50%), radial-gradient(circle at 40% 80%, #f973160a 0%, transparent 50%), var(--color-abyss);background-size:200% 200%;animation:20s ease-in-out infinite mesh-drift}@keyframes mesh-drift{0%,to{background-position:0 0,100% 0,50% 100%}33%{background-position:30% 30%,70% 20%,30% 70%}66%{background-position:10%,90% 40%,60% 90%}}.ripple-container{position:relative;overflow:hidden}.ripple{border-radius:var(--radius-full);pointer-events:none;background:#ffffff4d;animation:.6s ease-out forwards ripple-effect;position:absolute;transform:scale(0)}@keyframes ripple-effect{to{opacity:0;transform:scale(4)}}@media (prefers-reduced-motion:reduce){.neon-flicker,.neon-flicker-subtle,.neon-flicker-intense,.mesh-gradient-animated{animation:none}.pulse-ring-active .pulse-ring{opacity:0;animation:none}.status-live:before,.status-connected:before,.status-recording:before{animation:none}}:root{--bg-surface:var(--color-surface);--bg-panel:var(--color-elevated);--bg-card:var(--color-card);--text-primary:var(--text-primary);--text-secondary:var(--text-secondary);--text-muted:var(--text-muted);--brand-primary:var(--accent);--brand-secondary:var(--violet);--brand-error:var(--error);--brand-success:var(--success);--border-color:var(--border-default)}*,:before,:after{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body,body *{color:inherit}body{font-family:var(--font-body);background:var(--color-abyss);color:var(--text-primary);line-height:var(--leading-normal);min-height:100vh;margin:0;overflow-x:hidden}.pose-lab{background:var(--color-abyss);min-height:100vh;color:var(--text-primary);padding:var(--space-6);gap:var(--space-4);font-family:var(--font-body);flex-direction:column;display:flex}button{font-family:var(--font-body);border:var(--border-default);cursor:pointer;transition:transform var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);border-radius:var(--radius-md)}button:disabled{opacity:.4;cursor:not-allowed;box-shadow:none!important;transform:none!important}button.primary,.btn-primary{background:var(--accent);color:var(--color-void);padding:var(--space-3) var(--space-5);font-weight:var(--weight-bold);font-size:var(--text-sm);text-transform:uppercase;box-shadow:var(--shadow-sm);border:var(--border-default)}button.primary:hover:not(:disabled),.btn-primary:hover:not(:disabled){background:var(--text-primary);color:var(--color-void);border-color:var(--text-primary);box-shadow:var(--shadow-lg);background:var(--text-primary);border-color:var(--text-primary);transform:translate(-1px,-1px)}button.primary:active:not(:disabled),.btn-primary:active:not(:disabled){box-shadow:var(--shadow-xs);transform:translate(0)}button.secondary,.btn-secondary{background:var(--color-surface);color:var(--text-primary);border:var(--border-default);padding:var(--space-3) var(--space-5);font-weight:var(--weight-bold);font-size:var(--text-sm);text-transform:uppercase;box-shadow:var(--shadow-sm)}button.secondary:hover:not(:disabled),.btn-secondary:hover:not(:disabled){background:var(--text-primary);color:var(--color-void);border-color:var(--text-primary);box-shadow:var(--shadow-lg);transform:translate(-1px,-1px)}button.secondary.active{background:var(--accent);color:var(--color-void);border-color:var(--text-primary)}input,select,textarea{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-primary);background:var(--color-surface);border:var(--border-default);padding:var(--space-3) var(--space-4);transition:transform var(--duration-fast), box-shadow var(--duration-fast);border-radius:var(--radius-md)}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:var(--shadow-md);outline:none;transform:translate(-1px,-1px)}input[type=range]{appearance:none;background:var(--color-surface);border:var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;width:100%;height:12px;padding:0}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);border-radius:var(--radius-md);cursor:pointer;width:12px;height:20px;box-shadow:var(--shadow-xs);transition:transform var(--duration-fast);border:none}input[type=range]::-webkit-slider-thumb:hover{box-shadow:var(--shadow-sm);transform:scale(1.1)}input[type=checkbox],input[type=radio]{width:24px;height:24px;accent-color:var(--accent);cursor:pointer;border:var(--border-default);border-radius:var(--radius-md);appearance:none;background:var(--color-surface)}input[type=checkbox]:checked,input[type=radio]:checked{background:var(--accent);border-color:var(--text-primary)}a{color:var(--accent);transition:border-color var(--duration-fast);border-bottom:2px solid #0000;font-weight:700;text-decoration:none}a:hover{border-bottom-color:var(--accent)}code,pre{font-family:var(--font-mono);font-size:var(--text-sm)}code{padding:var(--space-1) var(--space-2);background:var(--text-primary);color:var(--color-void);border:1px solid var(--text-primary)}pre{padding:var(--space-4);background:var(--color-surface);border:var(--border-default);box-shadow:var(--shadow-md);overflow-x:auto}.text-accent{color:var(--accent)}.text-violet{color:var(--violet)}.text-solar{color:var(--solar)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-error{color:var(--error)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.bg-glass{background:var(--color-surface);border:var(--border-default);box-shadow:var(--shadow-lg)}.bg-surface{background:var(--color-surface);border:var(--border-default)}.bg-elevated{background:var(--color-elevated);border:var(--border-default)}.border-subtle{border:var(--border-subtle)}.border-accent{border:var(--border-accent)}.mt-auto{margin-top:auto}.mb-auto{margin-bottom:auto}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.w-full{width:100%}.hidden{display:none}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.grid{display:grid}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.transition-all{transition:var(--transition-all)}.transition-colors{transition:var(--transition-colors)}.transition-transform{transition:var(--transition-transform)}.shadow-sm{box-shadow:var(--shadow-sm);border:var(--border-default)}.shadow-md{box-shadow:var(--shadow-md);border:var(--border-default)}.shadow-lg{box-shadow:var(--shadow-lg);border:var(--border-default)}.shadow-glow{box-shadow:var(--shadow-glow);border:var(--border-accent)}.rounded-sm,.rounded-md,.rounded-lg,.rounded-xl,.rounded-full{border-radius:var(--radius-md)}.app-shell{background:radial-gradient(ellipse at 10% 10%, var(--shell-glow-1) 0%, transparent 50%), radial-gradient(ellipse at 90% 20%, var(--shell-glow-2) 0%, transparent 50%), radial-gradient(ellipse at 50% 90%, var(--shell-glow-3) 0%, transparent 50%), #1a1a1a;height:100dvh;color:var(--text-primary);flex-direction:column;display:flex;overflow:hidden}.app-header{height:60px;padding:0 var(--space-5);background:var(--color-surface);border-bottom:var(--border-default);box-shadow:var(--shadow-sm);z-index:var(--z-sticky);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.app-header__left{align-items:center;gap:var(--space-6);display:flex}.app-header__logo{align-items:center;gap:var(--space-3);font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);mix-blend-mode:difference;transition:transform var(--duration-fast);font-weight:900;display:flex}.app-header__logo:hover{transform:translate(4px)}.app-header__logo img{filter:drop-shadow(0 0 10px #00ffd666);width:32px;height:32px;transition:filter var(--duration-fast) var(--ease-out)}.app-header__logo:hover img{filter:drop-shadow(0 0 15px #00ffd699)}.mode-switch{gap:var(--space-1);padding:var(--space-1);background:var(--surface-ui);border-radius:var(--radius-md);display:flex}.mode-switch button{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:var(--border-default);color:var(--text-tertiary);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-all);background:0 0;font-size:.75rem;font-weight:500;display:flex}.mode-switch button svg{opacity:.7;transition:opacity .2s}.mode-switch button:hover svg,.mode-switch button.active svg{opacity:1}.mode-switch button:hover:not(.active){color:var(--text-secondary);background:var(--surface-ui-hover)}.mode-switch button.active{color:var(--accent);background:var(--surface-ui-accent);box-shadow:inset 0 0 0 1px var(--surface-ui-border)}.app-header__center{align-items:center;gap:var(--space-4);display:flex}.avatar-selector{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--surface-ui);border-radius:var(--radius-md);display:flex}.avatar-selector__label{font-size:var(--text-sm);color:var(--text-tertiary)}.avatar-selector__button{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--accent);background:var(--surface-ui);border:1px solid var(--text-primary);box-shadow:2px 2px 0px var(--text-primary);border-radius:var(--radius-md);cursor:pointer;transition:transform var(--duration-fast), box-shadow var(--duration-fast), background var(--duration-fast);font-weight:700}.avatar-selector__button:hover{background:var(--surface-ui-hover);box-shadow:3px 3px 0px var(--text-primary);transform:translate(-1px,-1px)}.avatar-selector__button.primary{background:var(--accent);color:var(--color-void);border:1px solid var(--text-primary);box-shadow:2px 2px 0px var(--text-primary);transition:transform var(--duration-fast), box-shadow var(--duration-fast);font-weight:900}.avatar-selector__button.primary:hover{box-shadow:3px 3px 0px var(--text-primary);transform:translate(-1px,-1px)}.app-header__right{align-items:center;gap:var(--space-4);display:flex}.status-indicator{align-items:center;gap:var(--space-2);font-size:var(--text-sm);display:flex}.status-dot{border-radius:var(--radius-md);background:var(--text-disabled);width:8px;height:8px;transition:var(--transition-all)}.status-dot.ready{background:var(--success);box-shadow:0 0 12px var(--success);animation:2s ease-in-out infinite pulse}.status-dot.loading{background:var(--warning);box-shadow:0 0 8px var(--warning);animation:1s ease-in-out infinite pulse}.status-text{color:var(--text-tertiary)}.layout{box-sizing:border-box;flex:1;height:calc(100dvh - 84px);min-height:0;display:flex;position:relative;overflow:hidden}@media (width>=961px){.layout:not(.sidebar-closed):not(.studio-layout){padding-right:380px}}@media (width<=960px){.layout.studio-layout{flex-direction:column}}.viewport{flex:1;justify-content:center;align-items:center;width:100%;padding:0;display:flex;position:relative;overflow:hidden}.canvas-container{touch-action:none;border-radius:var(--radius-md);width:100%;max-width:100%;height:100%;max-height:100%;position:relative;overflow:hidden}.canvas-container:before{content:"";opacity:.4;filter:none;pointer-events:none;z-index:0;background:radial-gradient(circle at 20% 20%,#00ffd61f,#0000 45%),radial-gradient(circle at 80% 30%,#00ffd614,#0000 50%),radial-gradient(circle at 50% 80%,#f973161a,#0000 55%);animation:12s ease-in-out infinite viewport-breathe;position:absolute;inset:-30%}.canvas-container:after{content:"";opacity:.15;mix-blend-mode:screen;pointer-events:none;z-index:0;background:radial-gradient(circle,#0000 30%,#0006 100%),repeating-linear-gradient(120deg,#ffffff05,#ffffff05 1px,#0000 1px 32px);position:absolute;inset:0}.viewport-halo{border-radius:var(--radius-md);opacity:.18;mix-blend-mode:screen;filter:none;pointer-events:none;z-index:0;background:conic-gradient(#00ffd61a,#00ffd60d,#00ffd61a);animation:36s linear infinite viewport-halo-spin;position:absolute;inset:-12%;-webkit-mask:radial-gradient(circle,#0000 58%,#000 62% 66%,#0000 70%);mask:radial-gradient(circle,#0000 58%,#000 62% 66%,#0000 70%)}.canvas-stage{border-radius:var(--radius-md);z-index:1;background:#0003;flex-shrink:0;display:block;position:relative}@keyframes viewport-breathe{0%{opacity:.35;transform:translate(0,0)scale(1)}50%{opacity:.5;transform:translate(2%,-1%)scale(1.03)}to{opacity:.35;transform:translate(0,0)scale(1)}}@keyframes viewport-grid-drift{0%{background-position:0 0,0 0}to{background-position:100% 40%,-80% 60%}}@keyframes viewport-halo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.canvas-container:before,.canvas-container:after,.viewport-halo{animation:none}}.viewport-overlay{pointer-events:none;z-index:10;position:absolute}.viewport-overlay.top-left{top:var(--space-5);left:var(--space-5);background:var(--glass-bg);padding:var(--space-2);border-radius:var(--radius-md);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg)}.viewport-overlay.top-right{top:var(--space-5);right:var(--space-5);pointer-events:auto;align-items:center;gap:var(--space-2);display:flex}.viewport-overlay.bottom-center{bottom:var(--space-5);left:50%;transform:translate(-50%)}.viewport-overlay.bottom-left{bottom:var(--space-5);left:var(--space-5);pointer-events:auto;align-items:center;gap:var(--space-3);display:flex}.viewport-overlay.bottom-right{bottom:var(--space-5);right:var(--space-5);pointer-events:auto;justify-content:center;align-items:center;display:flex}.camera-controls,.playback-controls{gap:var(--space-1);pointer-events:auto;display:flex}.icon-button{border:var(--border-default);border-radius:var(--radius-md);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;transition:var(--transition-all);background:0 0;justify-content:center;align-items:center;font-size:1rem;display:flex}@media (pointer:coarse){.icon-button{width:44px;height:44px;font-size:1.2rem}}.icon-button svg{transition:transform .2s,color .2s}.icon-button:hover{color:var(--text-primary);background:#ffffff14}.icon-button:hover svg{transform:scale(1.1)}.icon-button.active{color:var(--accent);background:#00ffd61a}.clock-widget{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);border:var(--border-default);background:#0006;padding:4px 12px;display:flex}.clock-time{letter-spacing:.04em;color:var(--text-primary);font-size:.85rem}.clock-time.is-hidden{color:var(--text-secondary);font-style:italic}.clock-toggle{width:32px;height:32px}.logo-overlay{opacity:.75;filter:drop-shadow(0 2px 8px #00000080);width:72px;height:auto;transition:opacity var(--duration-fast) var(--ease-out);display:block}.logo-overlay:hover{opacity:.9}.control-panel{-webkit-backdrop-filter:blur(12px);border-left:var(--border-default);background:#1a1a1ad9;flex-direction:column;height:100%;display:flex;overflow:hidden}.control-panel__tabs-wrapper{border-bottom:var(--border-default);background:#0003;flex-shrink:0;align-items:center;display:flex;position:relative}.control-panel__tabs{scroll-behavior:smooth;-ms-overflow-style:none;scrollbar-width:none;flex:1;display:flex;overflow-x:auto}.control-panel__tabs::-webkit-scrollbar{display:none}.tab-scroll-btn{width:28px;color:var(--text-secondary);cursor:pointer;z-index:2;background:#1a1a1af2;border:none;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:0;bottom:0}.tab-scroll-btn:hover{color:var(--accent);background:#282828f2}.tab-scroll-btn.left{border-right:var(--border-default);left:0;box-shadow:2px 0 8px #00000080}.tab-scroll-btn.right{border-left:var(--border-default);right:0;box-shadow:-2px 0 8px #00000080}.control-panel__tabs button{min-width:65px;padding:var(--space-3) var(--space-2);border:var(--border-default);color:var(--text-tertiary);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:var(--transition-all);background:0 0;border-bottom:2px solid #0000;flex-direction:column;flex:0 0 22.2222%;align-items:center;gap:.25rem;margin-bottom:-1px;font-size:.65rem;font-weight:500;display:flex}.control-panel__tabs button svg{opacity:.7;transition:opacity .2s,transform .2s}.control-panel__tabs button:hover svg,.control-panel__tabs button.active svg{opacity:1;transform:scale(1.1)}.control-panel__tabs button:hover:not(.active){color:var(--text-secondary);background:#ffffff05}.control-panel__tabs button.active{color:var(--accent);border-bottom-color:var(--accent);background:#00ffd608}.control-panel__content{padding-bottom:var(--space-8);flex:1;overflow:hidden auto}.tab-content{padding:var(--space-5);gap:var(--space-5);flex-direction:column;display:flex}.tab-section{gap:var(--space-3);flex-direction:column;display:flex}.tab-section h3{font-family:var(--font-display);color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.8rem;font-weight:600}.muted{color:var(--text-tertiary)}.muted.small{font-size:var(--text-xs)}.preset-grid{gap:var(--space-2);flex-direction:column;display:flex}.preset-card{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-all);text-align:left;background:#0003;border-left:3px solid #0000;display:flex;position:relative;overflow:hidden}.preset-card:before{content:"";opacity:0;transition:opacity var(--duration-fast) var(--ease-out);pointer-events:none;background:linear-gradient(90deg,#00ffd608 0%,#0000 50%);position:absolute;inset:0}.preset-card:hover:not(:disabled){border-color:var(--border-default);background:#0000004d;border-left-color:#00ffd666;transform:translate(2px)}.preset-card:hover:before{opacity:1}.preset-card.active{border-color:#00ffd633;border-left-color:var(--accent);box-shadow:var(--shadow-md);background:#00ffd60d}.preset-card:disabled{opacity:.4;cursor:not-allowed}.preset-card__indicator{display:none}.preset-card__content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.preset-card__content strong{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary)}.preset-card__content span{font-size:var(--text-xs);color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.background-grid{gap:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}.background-thumbnail{gap:var(--space-2);padding:var(--space-2);border:2px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-all);background:#0003;flex-direction:column;display:flex}.background-thumbnail:hover{border-color:var(--border-default);transform:translateY(-2px)}.background-thumbnail.active{border-color:var(--accent);box-shadow:var(--shadow-md)}.background-thumbnail__preview{aspect-ratio:16/9;border-radius:var(--radius-md);width:100%;overflow:hidden}.background-thumbnail__name{font-size:var(--text-xs);text-align:center;color:var(--text-tertiary)}.field{gap:var(--space-2);flex-direction:column;display:flex}.field span,.field label{font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--text-tertiary)}.field input,.field select,.text-input{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);border-radius:var(--radius-md);border:var(--border-default);color:var(--text-primary);font-family:var(--font-body);transition:var(--transition-all);background:#00000040}.field select{appearance:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%239ca3af' viewBox='0 0 256 256'%3E%3Cpath d='M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z'%3E%3C/path%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;padding-right:2.5rem}.field select option{background-color:var(--color-surface);color:var(--text-primary);padding:8px}.field input:focus,.field select:focus,.text-input:focus{border-color:var(--accent);box-shadow:var(--shadow-md);outline:none}.text-input{width:100%}.radio-group,.checkbox-group{gap:var(--space-2);flex-direction:column;display:flex}.radio-option,.checkbox-option{align-items:center;gap:var(--space-3);padding:var(--space-3);border:var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-all);background:#00000026;display:flex}.radio-option:hover,.checkbox-option:hover{border-color:var(--border-default);background:#00000040}.radio-option input,.checkbox-option input{cursor:pointer;width:16px;height:16px}.radio-option span,.checkbox-option span{font-size:var(--text-sm);color:var(--text-secondary)}.slider-control{gap:var(--space-2);flex-direction:column;display:flex}.slider-control label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--text-tertiary);justify-content:space-between;align-items:center;display:flex}.slider-control input[type=range],.full-width{width:100%}.large{padding:var(--space-4) var(--space-6)!important;font-size:var(--text-base)!important}.button-group{gap:var(--space-2);display:flex}.button-group button{flex:1}.actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.actions button{flex:45%}.drop-zone{border-radius:var(--radius-md);padding:var(--space-5);cursor:pointer;transition:var(--transition-all);align-items:center;gap:var(--space-4);text-align:left;background:#00ffd605;border:2px dashed #00ffd640;display:flex;position:relative;overflow:hidden}.drop-zone:before{content:"";opacity:0;transition:opacity var(--duration-normal) var(--ease-out);background:radial-gradient(circle,#00ffd60d 0%,#0000 70%);position:absolute;inset:0}.drop-zone:hover:before{opacity:1}.drop-zone.active{border-color:var(--accent);background:#00ffd61a;transform:scale(1.01)}.drop-zone.loaded{border-color:var(--success);background:#00ff9d0d}.drop-zone__icon{opacity:.7;flex-shrink:0;font-size:2rem}.drop-zone__text{flex-direction:column;flex:1;gap:4px;display:flex}.drop-zone__text strong{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary)}.drop-zone__text small{font-size:var(--text-xs);color:var(--text-tertiary)}.animation-list,.pose-list{gap:var(--space-2);flex-direction:column;display:flex}.animation-item,.pose-item{padding:var(--space-3);border:var(--border-default);border-radius:var(--radius-md);transition:var(--transition-all);background:#00000026;justify-content:space-between;align-items:center;display:flex}.animation-item:hover,.pose-item:hover{border-color:var(--border-default);background:#00000040}.animation-item__info,.pose-item__info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.animation-item__info strong,.pose-item__info strong{font-size:var(--text-sm);color:var(--text-primary)}.animation-item__info span,.pose-item__info span{font-size:var(--text-xs);color:var(--text-tertiary)}.pose-item__actions{gap:var(--space-2);display:flex}.progress-bar{border-radius:var(--radius-md);background:#ffffff0f;width:100%;height:6px;overflow:hidden}.progress-bar__fill{background:linear-gradient(90deg, var(--accent) 0%, var(--accent-600) 100%);border-radius:var(--radius-md);height:100%;transition:width var(--duration-slow) var(--ease-out)}.modal-overlay{z-index:var(--z-modal-backdrop);padding:var(--space-6);animation:fadeIn var(--duration-fast) var(--ease-out);background:#000c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--color-elevated);border:var(--border-default);border-radius:var(--radius-md);padding:var(--space-6);width:100%;max-width:560px;max-height:85vh;box-shadow:var(--shadow-2xl);animation:scaleIn var(--duration-normal) var(--ease-spring);position:relative;overflow-y:auto}.modal-close{top:var(--space-4);right:var(--space-4);border:var(--border-default);width:32px;height:32px;color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-md);transition:var(--transition-all);background:0 0;justify-content:center;align-items:center;font-size:1.25rem;display:flex;position:absolute}.modal-close:hover{color:var(--text-primary);background:#ffffff0d}.modal-body{color:var(--text-secondary);line-height:var(--leading-relaxed)}.modal-body h3{font-family:var(--font-display);color:var(--accent);margin-top:var(--space-5);margin-bottom:var(--space-2)}.calibration-wizard{gap:var(--space-4);flex-direction:column;display:flex}.calibration-wizard__meta{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.calibration-wizard__eyebrow{color:var(--accent);font-weight:600}.calibration-wizard__title{color:var(--text-primary);margin:0}.calibration-wizard__instruction{color:var(--text-secondary);line-height:var(--leading-relaxed);margin:0}.calibration-wizard__tip{text-align:center;margin:0}.app-shell.focus-mode .app-header,.app-shell.focus-mode .control-panel,.app-shell.focus-mode .control-toggle,.app-shell.focus-mode .control-drawer,.app-shell.focus-mode .viewport-overlay{opacity:.2;pointer-events:none;transition:opacity var(--duration-normal) var(--ease-out)}.app-shell.focus-mode .viewport-overlay.focus-sprint{opacity:1;pointer-events:auto}.viewport-overlay.focus-sprint{display:none}.sprint-gallery-overlay{z-index:var(--z-modal-backdrop);animation:fadeIn var(--duration-fast) var(--ease-out);background:#000000eb;flex-direction:column;display:flex;position:fixed;inset:0}.sprint-gallery-empty{justify-content:center;align-items:center;gap:var(--space-4);color:var(--text-tertiary);font-size:var(--text-lg);flex-direction:column;flex:1;display:flex}.sprint-gallery-main{justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-6);flex:1;min-height:0;display:flex}.sprint-gallery-image-wrapper{flex:1;justify-content:center;align-items:center;max-width:85%;max-height:100%;display:flex}.sprint-gallery-image{object-fit:contain;border-radius:var(--radius-md);max-width:100%;max-height:100%;box-shadow:var(--shadow-md);animation:scaleIn var(--duration-normal) var(--ease-spring)}.sprint-gallery-nav-arrow{border:var(--border-default);border-radius:var(--radius-md);width:56px;height:56px;color:var(--text-primary);cursor:pointer;background:#ffffff14;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.sprint-gallery-nav-arrow:hover{border-color:var(--accent);color:var(--accent);background:#ffffff26;transform:scale(1.05)}.sprint-gallery-nav-arrow:active{transform:scale(.95)}.sprint-gallery-bottom{border-top:var(--border-default);padding:var(--space-4) var(--space-6);gap:var(--space-3);background:#0009;flex-direction:column;flex-shrink:0;display:flex}.sprint-gallery-info{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.sprint-gallery-counter{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-tertiary)}.sprint-gallery-actions{gap:var(--space-2);display:flex}.sprint-gallery-thumbs{gap:var(--space-2);padding:var(--space-2) 0;scroll-behavior:smooth;display:flex;overflow-x:auto}.sprint-gallery-thumbs::-webkit-scrollbar{height:6px}.sprint-gallery-thumbs::-webkit-scrollbar-track{border-radius:var(--radius-md);background:#ffffff0d}.sprint-gallery-thumbs::-webkit-scrollbar-thumb{border-radius:var(--radius-md);background:#fff3}.sprint-gallery-thumbs::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sprint-gallery-thumb{border-radius:var(--radius-md);cursor:pointer;opacity:.6;background:0 0;border:2px solid #0000;flex-shrink:0;width:100px;height:70px;padding:0;transition:all .2s;overflow:hidden}.sprint-gallery-thumb:hover{opacity:1;border-color:#ffffff4d;transform:translateY(-2px)}.sprint-gallery-thumb.active{opacity:1;border-color:var(--accent);box-shadow:var(--shadow-md)}.sprint-gallery-thumb img{object-fit:cover;border-radius:var(--radius-md);width:100%;height:100%}.focus-sprint-modal h2{margin-top:0}.focus-sprint-actions{gap:var(--space-3);margin:var(--space-4) 0;flex-wrap:wrap;display:flex}.focus-sprint-carousel{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.focus-sprint-nav{border:var(--border-default);color:var(--text-primary);border-radius:var(--radius-md);cursor:pointer;width:40px;height:40px;transition:var(--transition-all);background:#00000059;justify-content:center;align-items:center;display:inline-flex}.focus-sprint-nav:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.focus-sprint-nav:not(:disabled):hover{border-color:var(--border-accent);box-shadow:var(--shadow-glow)}.focus-sprint-preview{border:var(--border-default);border-radius:var(--radius-md);padding:var(--space-3);gap:var(--space-3);background:#ffffff05;flex-direction:column;display:flex}.focus-sprint-preview img{border-radius:var(--radius-md);width:100%;display:block}.focus-sprint-preview-actions{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.focus-sprint-count{color:var(--text-tertiary);font-size:var(--text-xs)}.focus-sprint-gallery{gap:var(--space-3);padding-bottom:var(--space-2);grid-auto-columns:minmax(120px,1fr);grid-auto-flow:column;display:grid;overflow-x:auto}.focus-sprint-thumb{border:var(--border-default);border-radius:var(--radius-md);gap:var(--space-2);padding:var(--space-2);transition:var(--transition-all);background:#ffffff08;display:grid}.focus-sprint-thumb.active{border-color:var(--border-accent);box-shadow:var(--shadow-glow)}.focus-sprint-thumb-button{border:var(--border-default);cursor:pointer;background:0 0;padding:0}.focus-sprint-thumb img{border-radius:var(--radius-md);width:100%;display:block}.focus-sprint-thumb-save{border:var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-xs);padding:var(--space-1) var(--space-2);cursor:pointer;transition:var(--transition-all);background:#00000040}.focus-sprint-thumb-save:hover{border-color:var(--border-accent);color:var(--text-primary)}.focus-sprint-thumb:hover{border-color:var(--border-accent);box-shadow:var(--shadow-glow)}.modal-body ul{padding-left:var(--space-5);margin-bottom:var(--space-5)}.modal-body li{margin-bottom:var(--space-2);color:var(--text-tertiary)}.lead{font-size:var(--text-lg);margin-bottom:var(--space-5);color:var(--text-secondary)}.version-info{margin-top:var(--space-6);padding-top:var(--space-4);border-top:var(--border-default);color:var(--text-muted);text-align:center;font-size:var(--text-xs)}.onboarding-overlay{z-index:50;background:radial-gradient(circle,#0a0a14d9 0%,#030305f2 100%);justify-content:center;align-items:center;animation:.5s ease-out fadeIn;display:flex;position:absolute;inset:0}.onboarding-card{border:var(--border-default);border-radius:var(--radius-md);padding:var(--space-8);text-align:center;width:90%;max-width:520px;box-shadow:var(--shadow-md);background:#14141999;animation:.5s cubic-bezier(.2,.8,.2,1) scaleIn;position:relative;overflow:hidden;transform:translateY(0)}.onboarding-item{opacity:0;animation:.6s cubic-bezier(.2,.8,.2,1) forwards slideUpFade}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}@keyframes slideUpFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.onboarding-card:before{content:"";background:linear-gradient(90deg, transparent 0%, var(--accent) 50%, transparent 100%);opacity:.8;height:2px;position:absolute;top:0;left:0;right:0}.onboarding-icon{color:var(--accent);margin-bottom:var(--space-6);filter:drop-shadow(0 0 20px #00ffd64d);font-size:3.5rem;animation:.6s cubic-bezier(.2,.8,.2,1) forwards slideUpFade,4s ease-in-out .6s infinite float;display:inline-flex}.onboarding-card h2{font-family:var(--font-display);color:var(--text-primary);margin:0 0 var(--space-3) 0;letter-spacing:-.02em;background:linear-gradient(135deg,#fff 0%,#a5f3fc 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:2rem;font-weight:700}.onboarding-card p{color:var(--text-secondary);margin-bottom:var(--space-8);max-width:90%;margin-left:auto;margin-right:auto;font-size:1.05rem;line-height:1.6}.onboarding-actions{gap:var(--space-3);flex-direction:column;display:flex}.onboarding-btn{letter-spacing:.02em;border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;gap:12px;width:100%;padding:16px 24px;font-size:1rem;font-weight:600;transition:all .3s cubic-bezier(.2,.8,.2,1);display:flex;position:relative;overflow:hidden}.onboarding-btn.primary{border:var(--border-default);color:var(--accent);background:#00ffd61a}.onboarding-btn.primary:before{content:"";background:linear-gradient(90deg,#0000,#00ffd633,#0000);transition:transform .6s;position:absolute;inset:0;transform:translate(-100%)}.onboarding-btn.primary:hover{border-color:var(--accent);box-shadow:var(--shadow-md);background:#00ffd626;transform:translateY(-2px)}.onboarding-btn.primary:hover:before{transform:translate(100%)}.onboarding-btn.secondary{border:var(--border-default);color:var(--text-primary);background:#ffffff08}.onboarding-btn.secondary:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-2px)}.onboarding-divider{margin:var(--space-6) 0;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:12px;font-size:.8rem;display:flex}.onboarding-divider:before,.onboarding-divider:after{content:"";background:#ffffff1a;flex:1;height:1px}.tutorial-overlay-container{bottom:var(--space-8);z-index:1000;pointer-events:none;width:100%;padding:0 var(--space-4);justify-content:center;display:flex;position:absolute;left:50%;transform:translate(-50%)}.tutorial-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--space-6);width:480px;max-width:100%;box-shadow:var(--shadow-2xl);pointer-events:auto;animation:slideUp var(--duration-normal) var(--ease-spring);position:relative}.tutorial-progress-container{margin-bottom:var(--space-4);gap:4px;display:flex}.tutorial-progress-dot{border-radius:var(--radius-md);height:4px;transition:all var(--duration-normal) var(--ease-out);background:#ffffff1a;flex:1}.tutorial-progress-dot.active{background:var(--accent);box-shadow:0 0 8px var(--accent)}.tutorial-header{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.tutorial-step-indicator{color:var(--accent);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius-md);background:#00ffd61a;padding:4px 8px;font-size:.7rem}.tutorial-skip-btn{border:var(--border-default);color:var(--text-tertiary);cursor:pointer;font-size:var(--text-xs);padding:var(--space-2);border-radius:var(--radius-md);transition:var(--transition-colors);background:0 0}.tutorial-skip-btn:hover{color:var(--text-primary);background:#ffffff0d}.tutorial-card h3{margin:0 0 var(--space-2) 0;font-family:var(--font-display);color:var(--text-primary);font-size:var(--text-xl);letter-spacing:-.01em}.tutorial-card p{margin:0 0 var(--space-6) 0;color:var(--text-secondary);line-height:1.6;font-size:var(--text-sm)}.hotkey-hint{border:var(--border-default);border-radius:var(--radius-md);font-family:var(--font-mono);color:var(--text-primary);vertical-align:middle;border:var(--border-default);border-radius:var(--radius-md);font-size:.75em;font-family:var(--font-mono);vertical-align:middle;background:#ffffff1a;margin:0 2px;padding:2px 6px;font-size:.75em;display:inline-block}.tutorial-footer{margin-top:var(--space-2);justify-content:space-between;align-items:center;display:flex}.tutorial-nav-buttons{gap:var(--space-3);display:flex}.tutorial-card button{font-family:var(--font-body);font-weight:var(--weight-medium);cursor:pointer;transition:var(--transition-all);border-radius:var(--radius-md)}.tutorial-card button.primary{background:var(--accent);color:var(--color-abyss);border:var(--border-default);padding:var(--space-2) var(--space-5);font-weight:var(--weight-bold)}.tutorial-card button.primary:hover{background:var(--accent-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.tutorial-card button.secondary{color:var(--text-secondary);border:var(--border-default);padding:var(--space-2) var(--space-4);background:0 0}.tutorial-card button.secondary:hover{border-color:var(--text-secondary);color:var(--text-primary)}.tutorial-highlight{box-shadow:var(--shadow-md);transition:all .3s;position:relative;z-index:1001!important;border-color:var(--accent)!important}.control-toggle{bottom:var(--space-4);right:var(--space-4);z-index:1001;display:none;position:fixed}.control-drawer{display:none}.app-shell.stream-mode{display:block;background:0 0!important}.app-shell.stream-mode .layout{grid-template-columns:1fr;width:100vw;height:100vh;display:block}.app-shell.stream-mode .app-header,.app-shell.stream-mode .control-panel,.app-shell.stream-mode .viewport-overlay,.app-shell.stream-mode .control-toggle,.app-shell.stream-mode .ai-widget-container,.app-shell.stream-mode .session-hud,.app-shell.stream-mode .connection-progress-panel,.app-shell.stream-mode .toast-host{display:none!important}.app-shell.stream-mode .viewport{z-index:9999;width:100vw;height:100vh;position:fixed;top:0;left:0;padding:0!important}.app-shell.stream-mode .canvas-container{border-radius:var(--radius-md);box-shadow:none;background:0 0!important;width:100vw!important;max-width:none!important;height:100vh!important;max-height:none!important}.app-shell.stream-mode .canvas-stage{background:0 0!important}.app-shell.stream-mode .canvas-container:before,.app-shell.stream-mode .canvas-container:after,.app-shell.stream-mode .viewport-halo{display:none}.exit-stream-mode-btn{z-index:10000;padding:var(--space-3) var(--space-5);border:var(--border-default);color:var(--text-primary);border-radius:var(--radius-md);font-family:var(--font-display);font-size:var(--text-sm);cursor:pointer;opacity:0;background:#0009;font-weight:600;transition:all .2s;position:fixed;top:20px;right:20px}.exit-stream-mode-btn:hover,.app-shell.stream-mode:hover .exit-stream-mode-btn{opacity:1}.exit-stream-mode-btn:hover{background:var(--accent);color:var(--color-abyss);border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(2px)}.mobile-camera-toggle{display:none}.desktop-sidebar{z-index:100;transform-origin:100%;opacity:1;pointer-events:auto;width:380px;transition:all .4s cubic-bezier(.2,.8,.2,1);position:absolute;top:0;bottom:0;right:0;transform:scaleX(1);box-shadow:-4px 0 24px #0006}.desktop-sidebar.closed{opacity:0;pointer-events:none;transform:scaleX(.9)}@media (width<=960px){.app-header{padding:0 var(--space-4)}.app-header__left{gap:var(--space-4)}.app-header__logo span{display:none}.mode-switch button{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.layout{grid-template-columns:1fr;position:relative}.viewport{padding:var(--space-2);padding-bottom:calc(var(--space-2) + env(safe-area-inset-bottom))}.control-panel{display:none}.control-drawer .control-panel{border:var(--border-default);background:0 0;width:100%;height:100%;display:flex}.control-toggle{bottom:calc(var(--space-4) + env(safe-area-inset-bottom));right:var(--space-4);background:linear-gradient(135deg, var(--accent) 0%, var(--accent-600) 100%);width:48px;height:48px;color:var(--color-abyss);border-radius:var(--radius-md);box-shadow:var(--shadow-md);cursor:pointer;z-index:1100;transition:transform .2s var(--ease-spring);justify-content:center;align-items:center;display:flex;position:fixed}.control-toggle:active{transform:scale(.9)}.drawer-backdrop{z-index:998;animation:fadeIn var(--duration-fast) var(--ease-out);background:#0009;position:fixed;inset:0}.control-drawer{background:var(--glass-bg);border-top:1px solid var(--glass-border);border-radius:var(--radius-md);height:75vh;max-height:75vh;transition:all var(--duration-slow) var(--ease-spring);z-index:999;padding-bottom:calc(var(--space-16) + env(safe-area-inset-bottom));box-shadow:var(--shadow-md);transform-origin:bottom;opacity:0;pointer-events:none;display:block;position:fixed;bottom:24px;left:0;right:0;overflow-y:auto;transform:scaleY(0)}.control-drawer.open{opacity:1;pointer-events:auto;transform:scaleY(1)}.logo-overlay{width:56px}.viewport-overlay.top-left{top:var(--space-4);bottom:auto;left:var(--space-4);border:var(--border-default);box-shadow:none;z-index:900;background:0 0;flex-direction:column;align-items:flex-start;gap:12px;padding:0;display:flex;right:auto}.mobile-camera-toggle{border:var(--border-default);border-radius:var(--radius-md);width:40px;height:40px;color:var(--accent);box-shadow:var(--shadow-md);z-index:2;pointer-events:auto;background:#0006;transition:all .3s;display:flex}.viewport-overlay.top-left.mobile-open .mobile-camera-toggle{border-color:var(--accent);box-shadow:var(--shadow-md);background:#00ffd61a;transform:rotate(90deg)}.mobile-camera-toggle:active{transform:scale(.9)}.camera-controls{border-radius:var(--radius-md);border:var(--border-default);transform-origin:0 0;opacity:0;pointer-events:none;background:#1e1e23d9;flex-direction:column;gap:8px;padding:12px 8px;transition:all .3s cubic-bezier(.34,1.56,.64,1);position:absolute;inset:52px auto auto 0;transform:scale(.8)translateY(-20px)}@media (height<=500px){.camera-controls{grid-template-columns:repeat(2,1fr);width:120px;padding:16px;display:grid}.camera-controls>div[style*="width: 1px"]{grid-column:span 2;width:100%!important}.camera-controls>div[style*=border-left]{grid-column:span 2;justify-content:space-around;flex-direction:row!important}}.viewport-overlay.top-left.mobile-open .camera-controls{opacity:1;pointer-events:auto;transform:scale(1)translateY(0)}.camera-controls>div[style*="width: 1px"]{background:#ffffff1a!important;width:24px!important;height:1px!important;margin:4px 0!important}.camera-controls>div[style*=border-left]{border-top:var(--border-default);flex-direction:column;align-items:center;width:100%;border-left:none!important;gap:8px!important;margin-left:0!important;padding-top:8px!important;padding-left:0!important}.camera-controls button[title*=Pop\ out]{display:none}.viewport-overlay.bottom-right{bottom:calc(var(--space-20) + env(safe-area-inset-bottom));right:var(--space-4);display:flex}.viewport-overlay.top-right{top:var(--space-3);right:var(--space-3)}.viewport-overlay.bottom-left{bottom:calc(var(--space-20) + env(safe-area-inset-bottom));left:var(--space-4)}.viewport-overlay.bottom-center{bottom:calc(var(--space-24) + 60px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%)scale(.85)}.canvas-container:before{opacity:.28}.canvas-container:after{opacity:.14;animation-duration:28s}.viewport-halo{opacity:.12;animation-duration:48s;inset:-6%}.hide-mobile{display:none!important}}@media (width<=640px){.app-header__center{display:none}.preset-grid,.background-grid{grid-template-columns:1fr}}.sprint-button-glow{border-radius:var(--radius-md);border:1px solid var(--border-accent);width:44px;height:44px;color:var(--accent);cursor:pointer;box-shadow:var(--shadow-md);background:linear-gradient(135deg,#00ffd626,#00ffd60d);justify-content:center;align-items:center;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex}.sprint-button-glow:hover{box-shadow:var(--shadow-md);color:#fff;background:linear-gradient(135deg,#00ffd64d,#00ffd61a);border-color:#ffffff80;transform:scale(1.15)rotate(5deg)}.sprint-button-glow.active{color:#fff;box-shadow:var(--shadow-md);background:linear-gradient(135deg,#ff4d6d33,#ff9f4333);border-color:#ff4d6d99;transform:scale(1.05)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-md);background:#ffffff1f}::-webkit-scrollbar-thumb:hover{background:#fff3}.overlay-glitch{pointer-events:none;z-index:10;width:100%;height:100%;box-shadow:var(--shadow-md);mix-blend-mode:color-dodge;background:0 0;animation:2.5s infinite glitch-anim;position:absolute;top:0;left:0;overflow:hidden}@keyframes glitch-anim{0%{filter:hue-rotate();opacity:0;transform:translate(0)}2%{filter:hue-rotate(90deg);opacity:1;background:#ff00001a;transform:translate(-5px,2px)}4%{filter:hue-rotate(180deg);opacity:1;background:#00ffff1a;transform:translate(5px,-2px)}6%{filter:hue-rotate();opacity:0;transform:translate(0)}50%{opacity:0}51%{filter:invert();opacity:.8;transform:scale(1.02)}52%{opacity:0}85%{opacity:0}86%{opacity:1;background:#00ff001a;transform:skew(10deg)}87%{opacity:0}}.overlay-scanlines{pointer-events:none;z-index:11;opacity:.6;background:linear-gradient(#fff0,#fff0 50%,#0003 50%,#0003) 0 0/100% 4px;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.overlay-vignette{pointer-events:none;z-index:12;opacity:.8;background:radial-gradient(circle,#0000 50%,#000 150%);width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.overlay-crt{pointer-events:none;z-index:13;width:100%;height:100%;box-shadow:var(--shadow-md);background:linear-gradient(#12101000 50%,#0000001a 50%) 0 0/100% 3px,linear-gradient(90deg,#ff000008,#00ff0003,#0000ff08) 0 0/3px 100%;animation:.15s infinite crt-flicker,8s linear infinite crt-scan;position:absolute;top:0;left:0;overflow:hidden}.overlay-crt:after{content:" ";opacity:0;z-index:14;pointer-events:none;background:#1210101a;animation:.2s infinite crt-static;display:block;position:absolute;inset:0}@keyframes crt-flicker{0%{opacity:.9}50%{opacity:1}to{opacity:.95}}@keyframes crt-scan{0%{background-position:0 0}to{background-position:0 100%}}@keyframes crt-static{0%{opacity:.05}50%{opacity:.08}to{opacity:.04}}.btn{border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:600;transition:all .2s ease-in-out;display:inline-flex}.btn--primary{background-color:var(--color-primary);color:var(--color-background)}.btn--primary:hover{background-color:var(--color-primary-hover)}.btn--secondary{background-color:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn--secondary:hover{background-color:var(--color-surface-hover)}.btn--ghost{color:var(--color-text);background-color:#0000}.btn--ghost:hover{background-color:var(--color-surface)}.btn--small{padding:.25rem .75rem;font-size:.875rem}.btn--medium{padding:.5rem 1rem;font-size:1rem}.btn--large{padding:.75rem 1.5rem;font-size:1.125rem}.btn__icon{display:inline-flex}.input-wrapper{flex-direction:column;gap:.5rem;display:flex}.input-label{font-size:.875rem;font-weight:600}.input-field{align-items:center;display:flex;position:relative}.input-field input{border-radius:var(--radius-md);border:1px solid var(--color-border);background-color:var(--color-background);width:100%;color:var(--color-text);padding:.5rem 1rem;transition:all .2s ease-in-out}.input-field input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-transparent);outline:none}.input-icon{width:2.5rem;height:100%;color:var(--color-text-muted);justify-content:center;align-items:center;display:inline-flex;position:absolute}.input-icon--left{left:0}.input-icon--right{right:0}.credits-display-container{align-items:center;gap:8px;margin-right:8px;display:flex}.credits-display{border-radius:var(--radius-md);box-sizing:border-box;background:#0006;align-items:center;gap:8px;height:32px;padding:4px 12px;font-weight:600;display:flex}.xp-display,.sol-display{border:var(--border-default)}.credits-amount{font-family:Monaco,monospace;display:inline-block}.xp-amount{color:gold;text-align:right;min-width:50px}.sol-amount{color:#a855f7;text-align:center;min-width:110px}.claim-btn{border:var(--border-default);color:#d8b4fe;border-radius:var(--radius-md);cursor:pointer;box-sizing:border-box;background:#a855f733;align-items:center;gap:4px;height:32px;padding:4px 12px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.claim-btn:hover:not(:disabled){color:#fff;box-shadow:var(--shadow-md);background:#a855f766}.claim-btn:disabled{opacity:.5;cursor:not-allowed;color:#ffffff80;border-color:#ffffff1a}.wallet-dropdown-wrapper{align-items:center;display:flex;position:relative}.wallet-toggle-btn{cursor:pointer;border:var(--border-default);background:#a855f71a;transition:all .2s}.wallet-toggle-btn:hover{box-shadow:var(--shadow-md);background:#a855f740}.wallet-label{font-family:var(--font-display,"Orbitron", sans-serif);color:#d8b4fe;letter-spacing:.05em;margin-left:2px;font-size:.85rem;font-weight:600}.wallet-panel-dropdown{border:var(--border-default);border-radius:var(--radius-md);width:280px;box-shadow:var(--shadow-md);z-index:1000;background:#0f0f12e6;animation:.2s ease-out slideDown;position:absolute;top:calc(100% + 12px);right:0;overflow:hidden}.wallet-panel-header{border-bottom:var(--border-default);background:#a855f726;padding:12px 16px}.wallet-panel-header h4{color:#fff;font-family:var(--font-display,"Orbitron", sans-serif);letter-spacing:.05em;margin:0;font-size:1rem}.wallet-panel-body{flex-direction:column;gap:16px;padding:16px;display:flex}.wallet-balance-section{flex-direction:column;gap:4px;display:flex}.wallet-panel-label{color:#fff9;text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:4px;font-size:.75rem;display:flex}.wallet-panel-amount{color:#a855f7;text-shadow:0 0 10px #a855f74d;font-family:Monaco,monospace;font-size:1.75rem;font-weight:700}.wallet-panel-amount small{color:#a855f7b3;font-size:.9rem;font-family:var(--font-display,"Orbitron", sans-serif)}.wallet-price-section{border-top:1px dashed #ffffff1a;flex-direction:column;gap:8px;padding-top:16px;display:flex}.price-details{border-radius:var(--radius-md);border:var(--border-default);background:#ffffff08;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.coin-price{color:#fff;font-family:Monaco,monospace;font-weight:600}.fiat-value{color:#0f8;font-family:Monaco,monospace;font-size:.9rem;font-weight:600}.modal-backdrop{z-index:1000;background:#000000b3;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.modal-content{background:var(--bg-surface,#1e1e1e);border-radius:var(--radius-md);color:#fff;width:90%;max-width:500px;box-shadow:var(--shadow-md);padding:24px}.modal-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.close-btn{border:var(--border-default);color:#888;cursor:pointer;background:0 0}.form-group{margin-bottom:20px}.form-group label{margin-bottom:8px;font-weight:500;display:block}.form-group input{border-radius:var(--radius-md);color:#fff;background:#2a2a2a;border:1px solid #444;width:100%;padding:8px 12px}.avatar-grid{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:12px;display:grid}.avatar-option{border-radius:var(--radius-md);cursor:pointer;border:2px solid #0000;width:64px;height:64px;padding:0;overflow:hidden}.avatar-option.selected{border-color:var(--accent,#00bfa5)}.avatar-option img{object-fit:cover;width:100%;height:100%}.modal-footer{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.cancel-btn{color:#fff;border-radius:var(--radius-md);cursor:pointer;background:0 0;border:1px solid #555;padding:8px 16px}.save-btn{background:var(--accent,#00bfa5);color:#000;border:var(--border-default);border-radius:var(--radius-md);cursor:pointer;padding:8px 16px}.save-btn:disabled{opacity:.7;cursor:not-allowed}.profile-info-display{text-align:center;flex-direction:column;align-items:center;display:flex}.profile-avatar-large{border-radius:var(--radius-md);border:3px solid var(--accent,#00bfa5);background:#2a2a2a;justify-content:center;align-items:center;width:96px;height:96px;margin-bottom:16px;display:flex;overflow:hidden}.profile-avatar-large img{object-fit:cover;width:100%;height:100%}.profile-username{color:#fff;margin:0;font-size:1.5rem;font-weight:600}.profile-id{color:#888;margin:4px 0 16px;font-family:monospace;font-size:.85rem}.profile-stats{justify-content:center;gap:16px;width:100%;margin-bottom:24px;display:flex}.stat-card{border-radius:var(--radius-md);background:#2a2a2a;border:1px solid #333;flex-direction:column;align-items:center;min-width:100px;padding:12px 16px;display:flex}.stat-label{text-transform:uppercase;color:#888;letter-spacing:.5px;margin-bottom:4px;font-size:.75rem}.stat-value{color:#fff;font-size:1.25rem;font-weight:700}.discord-managed-notice{color:#5865f2;border-radius:var(--radius-md);background:#5865f21a;align-items:center;gap:8px;margin-bottom:16px;padding:8px 12px;font-size:.85rem;display:flex}.wallet-section-active,.wallet-section-placeholder{text-align:left;width:100%}.profile-not-loaded{text-align:center;color:#888;padding:32px 0}.profile-modal .modal-content{background:linear-gradient(135deg,#1e1e1e 0%,#2a2a2a 100%);border:1px solid #333}.profile-header-section{align-items:center;gap:20px;margin-bottom:24px;display:flex}.profile-avatar-large{width:80px;height:80px;position:relative}.profile-avatar-large img,.avatar-placeholder{border-radius:var(--radius-md);object-fit:cover;border:3px solid var(--accent,#00bfa5);width:100%;height:100%}.avatar-placeholder{background:#444;justify-content:center;align-items:center;font-size:32px;font-weight:700;display:flex}.level-badge{color:#000;border-radius:var(--radius-md);width:28px;height:28px;box-shadow:var(--shadow-md);background:gold;border:2px solid #1e1e1e;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex;position:absolute;bottom:-5px;right:-5px}.profile-identity{flex:1}.profile-username{color:#fff;margin:0;font-size:1.5rem}.role-badge{border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:.5px;background:#0003;border:1px solid #555;align-items:center;gap:6px;margin-top:8px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.role-badge.initiate{color:#888;border-color:#555}.progress-section{border-radius:var(--radius-md);background:#0003;margin-bottom:20px;padding:16px}.progress-label{color:#aaa;justify-content:space-between;margin-bottom:8px;font-size:12px;display:flex}.progress-bar-track{border-radius:var(--radius-md);background:#333;width:100%;height:8px;overflow:hidden}.progress-bar-fill{border-radius:var(--radius-md);background:linear-gradient(90deg,#646cff,#a64dff);height:100%;transition:width .5s}.next-level-hint{text-align:right;color:#666;margin-top:6px;margin-bottom:0;font-size:10px}.stats-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.stat-card{border-radius:var(--radius-md);text-align:center;background:#ffffff0d;flex-direction:column;justify-content:center;padding:16px;display:flex}.stat-value{color:#fff;margin-bottom:4px;font-size:24px;font-weight:700;display:block}.stat-label{color:#888;text-transform:uppercase;letter-spacing:.5px;font-size:12px;display:block}.user-menu-container{align-items:center;display:flex}.user-menu{border-radius:var(--radius-md);border:var(--border-default);box-sizing:border-box;background:#0006;align-items:center;height:32px;padding:4px;display:flex}.user-info-btn{border:var(--border-default);color:#fff;cursor:pointer;border-radius:var(--radius-md);background:0 0;align-items:center;gap:8px;padding:4px 8px;transition:background .2s;display:flex}.user-info-btn:hover{background:#ffffff1a}.user-avatar-small{border-radius:var(--radius-md);background:#333;justify-content:center;align-items:center;width:24px;height:24px;display:flex;overflow:hidden}.user-avatar-small img{object-fit:cover;width:100%;height:100%}.logout-btn{border:var(--border-default);color:#aaa;cursor:pointer;border-radius:var(--radius-md);background:0 0;justify-content:center;align-items:center;margin-left:4px;padding:6px;transition:color .2s,background .2s;display:flex}.logout-btn:hover{color:#fff;background:#ffffff1a}.login-btn{background:var(--primary-color,#646cff);color:#fff;border:var(--border-default);border-radius:var(--radius-md);cursor:pointer;padding:8px 16px;font-weight:600;transition:background .2s}.login-btn:hover{background:var(--primary-hover,#535bf2)}.connection-progress-panel{background:var(--bg-panel,#1a1a2e);border:1px solid var(--primary,#00ffd6);border-radius:var(--radius-md);min-width:320px;max-width:400px;box-shadow:var(--shadow-md);z-index:1000;padding:1.5rem;animation:.3s ease-out fadeIn;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.progress-header{border-bottom:var(--border-default);align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.progress-icon{font-size:1.5rem}.progress-title{color:var(--text-main,#fff);font-size:1.1rem;font-weight:600}.progress-status{color:var(--text-muted,#888);align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.9rem;display:flex}.status-dot{border-radius:var(--radius-md);background:#888;width:8px;height:8px}.status-dot.connected{background:#0f8;box-shadow:0 0 8px #0f8}.progress-item{margin-bottom:1rem}.progress-item:last-child{margin-bottom:0}.progress-label{align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.85rem;display:flex}.transfer-direction{font-size:1rem}.transfer-name{color:var(--text-main,#fff);flex:1;font-weight:500}.transfer-status{color:var(--text-muted,#888);font-size:.8rem}.status-ready{color:#0f8;align-items:center;gap:4px;display:flex}.status-failed{color:#f44;align-items:center;gap:4px;display:flex}.progress-bar-container{border-radius:var(--radius-md);background:#ffffff1a;height:6px;overflow:hidden}.progress-bar{border-radius:var(--radius-md);height:100%;transition:width .3s ease-out}.progress-bar.pending{background:#ffffff4d;width:10%}.progress-bar.transferring{background:linear-gradient(90deg, var(--primary,#00ffd6), #0f8)}.progress-bar.loading{background:linear-gradient(90deg,#fa0,#f60);animation:1s ease-in-out infinite pulse}.progress-bar.complete{background:#0f8}.progress-bar.error{background:#f44}.progress-bar.indeterminate{background:linear-gradient(90deg, transparent, var(--primary,#00ffd6), transparent);width:30%;animation:1.5s ease-in-out infinite indeterminate}@keyframes indeterminate{0%{transform:translate(-100%)}to{transform:translate(400%)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.progress-percent{text-align:right;color:var(--primary,#00ffd6);margin-top:.25rem;font-size:.75rem;font-weight:600}.voice-chat-controls{border-radius:var(--radius-md);border:var(--border-default);background:#ffffff08;padding:.85rem}.voice-header{justify-content:space-between;align-items:center;margin-bottom:.65rem;display:flex}.voice-title{color:var(--text-primary);font-size:.8rem;font-weight:600}.voice-status{border-radius:var(--radius-md);color:var(--success);border:var(--border-default);background:#00ff9d1f;padding:3px 8px;font-size:.65rem}.voice-status.speaking{color:#ffc800;background:#ffc80026;border-color:#ffc80040;animation:.5s ease-in-out infinite alternate pulse-speaking}@keyframes pulse-speaking{0%{opacity:.8}to{opacity:1}}.voice-main-controls{gap:.4rem;margin-bottom:.65rem;display:flex}.voice-toggle-btn{border:var(--border-default);border-radius:var(--radius-md);color:#fff;cursor:pointer;border:var(--border-default);background:linear-gradient(135deg,#1c6cff,#6c2bff);flex:1;padding:.6rem .85rem;font-family:inherit;font-size:.75rem;font-weight:600;transition:all .2s}.voice-toggle-btn:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-1px)}.voice-toggle-btn:disabled{opacity:.6;cursor:not-allowed}.voice-toggle-btn.enabled{border:var(--border-default);color:#ff7b7b;background:#ff444426}.voice-toggle-btn.enabled:hover:not(:disabled){box-shadow:none;background:#ff444438}.voice-mute-btn{border:var(--border-default);border-radius:var(--radius-md);border:var(--border-default);width:40px;height:40px;color:var(--text-primary);cursor:pointer;background:#ffffff0f;justify-content:center;align-items:center;padding:0;font-size:1.1rem;transition:all .2s;display:flex}.voice-mute-btn:hover{background:#ffffff1a;border-color:#ffffff26}.voice-mute-btn.muted{background:#ff444426;border-color:#ff444440}.voice-volume-control{margin-bottom:.65rem}.voice-volume-control label{color:var(--text-secondary);justify-content:space-between;margin-bottom:.35rem;font-size:.7rem;display:flex}.voice-volume-value{color:var(--text-primary);font-family:JetBrains Mono,monospace}.voice-volume-control input[type=range]{border-radius:var(--radius-md);appearance:none;cursor:pointer;background:#ffffff14;width:100%;height:6px}.voice-volume-control input[type=range]::-webkit-slider-thumb{appearance:none;border-radius:var(--radius-md);cursor:pointer;background:linear-gradient(135deg,#1c6cff,#6c2bff);border:none;width:8px;height:16px;transition:transform .15s}.voice-volume-control input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15)}.voice-peers-info{border:var(--border-default);border-radius:var(--radius-md);text-align:center;background:#00ff9d0f;margin-bottom:.5rem;padding:.5rem}.voice-peers-label{color:#00ff9d;font-size:.7rem}.voice-speaking-indicator{opacity:.25;justify-content:center;align-items:center;height:22px;transition:opacity .2s;display:flex}.voice-speaking-indicator.active{opacity:1}.voice-wave{align-items:center;gap:3px;height:18px;display:flex}.voice-wave span{border-radius:var(--radius-md);background:linear-gradient(#00ffd6,#6c2bff);width:4px;height:5px;animation:.5s ease-in-out infinite wave}.voice-speaking-indicator:not(.active) .voice-wave span{background:#ffffff26;height:5px;animation:none}.voice-wave span:first-child{animation-delay:0s}.voice-wave span:nth-child(2){animation-delay:.1s}.voice-wave span:nth-child(3){animation-delay:.2s}.voice-wave span:nth-child(4){animation-delay:.3s}.voice-wave span:nth-child(5){animation-delay:.4s}@keyframes wave{0%,to{height:5px}50%{height:16px}}.voice-chat-compact{align-items:center;gap:4px;display:flex;position:relative}.voice-btn{border:var(--border-default);border-radius:var(--radius-md);border:var(--border-default);color:#e6f3ff;cursor:pointer;width:34px;height:34px;box-shadow:var(--shadow-md);-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:#0f121cd9;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0;font-size:.95rem;transition:all .2s;display:flex}.voice-btn:hover:not(:disabled){background:#1e2332e6;border-color:#ffffff26;transform:scale(1.05)}.voice-btn:disabled{opacity:.5;cursor:not-allowed}.voice-btn.active{border:var(--border-default);box-shadow:var(--shadow-md);background:#00ff9d26}.voice-btn.active.speaking{animation:.5s ease-in-out infinite alternate pulse-glow}@keyframes pulse-glow{0%{box-shadow:var(--shadow-md)}to{box-shadow:var(--shadow-md)}}.voice-btn.muted{border:var(--border-default);background:#ff444426}.voice-spinner{font-size:.85rem;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.voice-peer-count{border-radius:var(--radius-md);color:#fff;min-width:15px;height:15px;box-shadow:var(--shadow-md);background:linear-gradient(135deg,#1c6cff,#6c2bff);justify-content:center;align-items:center;padding:0 4px;font-size:.6rem;font-weight:700;display:flex;position:absolute;top:-3px;right:-3px}@media (width<=640px){.voice-chat-controls{padding:.75rem}.voice-toggle-btn{min-height:48px;padding:.75rem 1rem;font-size:.85rem}.voice-mute-btn{width:48px;height:48px;font-size:1.3rem}.voice-volume-control input[type=range]{height:8px}.voice-volume-control input[type=range]::-webkit-slider-thumb{width:20px;height:20px}.voice-btn{width:44px;height:44px;font-size:1.1rem}}.voice-chat-controls,.voice-chat-compact{-webkit-user-select:none;user-select:none}.multiplayer-panel{gap:var(--space-4);padding:var(--space-5);background:var(--glass-bg);border-radius:var(--radius-md);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg);transition:border-color var(--duration-normal) var(--ease-out);flex-direction:column;display:flex;position:relative;overflow:hidden}.multiplayer-panel:hover{border-color:#7c3aed33}.multiplayer-panel:before{content:"";pointer-events:none;background:linear-gradient(#7c3aed0a 0%,#0000 100%);height:80px;position:absolute;top:0;left:0;right:0}.multiplayer-panel:after{content:"";filter:none;pointer-events:none;opacity:.5;width:150px;height:150px;transition:opacity var(--duration-normal) var(--ease-out);background:radial-gradient(circle,#7c3aed1f 0%,#0000 70%);position:absolute;top:-40px;right:-40px}.multiplayer-panel:hover:after{opacity:1}.mp-header{padding-bottom:var(--space-3);border-bottom:var(--border-default);z-index:1;justify-content:space-between;align-items:center;display:flex;position:relative}.mp-header h3{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-primary);letter-spacing:var(--tracking-tight);margin:0}.mp-status{font-size:var(--text-xs);font-weight:var(--weight-medium);padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);transition:var(--transition-all)}.mp-status.connected{color:var(--accent);border:var(--border-default);box-shadow:var(--shadow-md);background:#00ffd61a}.mp-status.disconnected{color:var(--text-muted);background:var(--glass-subtle);border:var(--border-default)}.mp-error{padding:var(--space-3) var(--space-4);background:var(--error-muted);border:var(--border-default);border-radius:var(--radius-md);color:var(--error);font-size:var(--text-sm);animation:slideDown var(--duration-normal) var(--ease-spring)}.mp-section{gap:var(--space-2);z-index:1;flex-direction:column;display:flex;position:relative}.mp-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--text-tertiary);font-weight:var(--weight-medium);margin-left:var(--space-1)}.mp-name-display{padding:var(--space-3) var(--space-4);border:var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-all);background:#0003;justify-content:space-between;align-items:center;display:flex}.mp-name-display:hover{border-color:var(--border-default);background:#0000004d}.mp-name-display span:first-child{font-weight:var(--weight-medium);color:var(--text-primary);font-size:var(--text-sm)}.mp-edit-hint{opacity:.3;font-size:var(--text-xs);transition:opacity var(--duration-fast) var(--ease-out)}.mp-name-display:hover .mp-edit-hint{opacity:.6}.mp-name-edit{gap:var(--space-2);display:flex}.mp-name-edit input{padding:var(--space-3) var(--space-4);border:1px solid var(--border-accent);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-sm);font-family:var(--font-body);transition:var(--transition-all);background:#00000040;outline:none;flex:1}.mp-name-edit input:focus{border-color:var(--accent);box-shadow:var(--shadow-md)}.mp-name-edit button{padding:var(--space-3) var(--space-4);background:var(--glass-bg);border:var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;transition:var(--transition-all);font-size:var(--text-sm)}.mp-name-edit button:hover{border-color:var(--border-accent);background:#00ffd61a}.mp-actions{gap:var(--space-2);flex-direction:column;display:flex}.mp-btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:var(--border-default);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-semibold);font-family:var(--font-body);cursor:pointer;transition:var(--transition-all);display:flex}.mp-btn.primary{background:linear-gradient(135deg, var(--violet) 0%, var(--violet-700) 100%);color:var(--text-on-accent);border:var(--border-default);box-shadow:var(--shadow-md)}.mp-btn.primary:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-2px)}.mp-btn.secondary{background:var(--glass-bg);color:var(--text-primary);border:var(--border-default)}.mp-btn.secondary:hover:not(:disabled){background:var(--glass-hover);border-color:var(--border-emphasis)}.mp-btn.danger{background:var(--error-muted);color:var(--error);border:var(--border-default)}.mp-btn.danger:hover:not(:disabled){background:#f363;border-color:#ff336659}.mp-btn.small{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);border-radius:var(--radius-md)}.mp-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.mp-join-form{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);border:var(--border-default);background:#00000026;flex-direction:column;display:flex}.mp-join-form input{padding:var(--space-3) var(--space-4);border:var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-sm);font-family:var(--font-mono);transition:var(--transition-all);background:#0003;outline:none}.mp-join-form input::placeholder{color:var(--text-muted)}.mp-join-form input:focus{border-color:var(--accent);box-shadow:var(--shadow-md)}.mp-join-buttons{gap:var(--space-2);display:flex}.mp-join-buttons .mp-btn{padding:var(--space-3);flex:1}.mp-room-info{padding:var(--space-3) var(--space-4);border:var(--border-default);border-radius:var(--radius-md);background:#00000026;justify-content:space-between;align-items:center;display:flex}.mp-room-id{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--accent);letter-spacing:var(--tracking-tight)}.mp-role{font-size:var(--text-xs);padding:var(--space-1) var(--space-2);background:var(--glass-subtle);border-radius:var(--radius-md);color:var(--text-tertiary);font-weight:var(--weight-medium)}.mp-peers-list{gap:var(--space-2);max-height:150px;padding-right:var(--space-1);flex-direction:column;display:flex;overflow-y:auto}.mp-peer{align-items:center;gap:var(--space-3);padding:var(--space-3);border:var(--border-default);border-radius:var(--radius-md);font-size:var(--text-sm);transition:var(--transition-all);background:#0000001a;display:flex}.mp-peer:hover{border-color:var(--border-default);background:#00000026}.mp-peer.local{background:#00ffd608;border-color:#00ffd633}.mp-peer-avatar{opacity:.9;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.mp-peer-name{color:var(--text-primary);gap:var(--space-2);font-weight:var(--weight-medium);flex:1;align-items:center;display:flex}.mp-you{font-size:var(--text-xs);color:var(--accent);font-weight:var(--weight-semibold);padding:2px var(--space-2);border-radius:var(--radius-md);background:#00ffd61a}.mp-peer-latency{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-mono)}.mp-peer-status{font-size:.5rem}.mp-peer-status.connected{color:var(--accent)}.mp-peer-status.disconnected,.mp-peer-status.error{color:var(--text-disabled)}.mp-footer{text-align:center;color:var(--text-muted);font-size:var(--text-xs);padding-top:var(--space-3);margin-top:var(--space-1);border-top:var(--border-default)}.multiplayer-compact{align-items:center;gap:var(--space-2);display:flex}.mp-status-badge{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--glass-bg);border-radius:var(--radius-md);border:1px solid var(--glass-border);box-shadow:var(--shadow-md);transition:var(--transition-all);display:flex}.mp-status-badge.connected{box-shadow:var(--shadow-md);border-color:#00ffd633}.mp-dot{border-radius:var(--radius-md);background:var(--accent);width:6px;height:6px;box-shadow:0 0 10px var(--accent);animation:2s ease-in-out infinite pulse}.mp-count{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-primary);font-family:var(--font-mono)}.mp-leave-btn{border:var(--border-default);background:var(--error-muted);width:20px;height:20px;color:var(--error);border-radius:var(--radius-md);font-size:var(--text-xs);cursor:pointer;transition:var(--transition-all);margin-left:var(--space-1);justify-content:center;align-items:center;display:flex}.mp-leave-btn:hover{background:#ff336640;transform:scale(1.1)}.mp-quick-join{border-radius:var(--radius-md);border:var(--border-default);width:44px;height:44px;color:var(--violet);cursor:pointer;box-shadow:var(--shadow-md);-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:linear-gradient(135deg,#7c3aed26,#00ffd61a);justify-content:center;align-items:center;font-size:1.2rem;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex}.mp-quick-join:hover:not(:disabled){box-shadow:var(--shadow-md);color:#fff;background:linear-gradient(135deg,#7c3aed4d,#00ffd633);border-color:#7c3aed80;transform:scale(1.15)rotate(5deg)}.mp-quick-join:active:not(:disabled){transform:scale(.95)rotate(-2deg)}.mp-quick-join:disabled{opacity:.4;cursor:not-allowed;transform:none}@media (width<=640px){.multiplayer-panel{padding:var(--space-4);gap:var(--space-3)}.mp-header h3{font-size:var(--text-sm)}.mp-btn{padding:var(--space-4) var(--space-4);font-size:var(--text-sm);min-height:48px}.mp-name-display,.mp-room-info{padding:var(--space-3) var(--space-4)}.mp-join-form input{padding:var(--space-3) var(--space-4);font-size:16px}.mp-peers-list{max-height:120px}.mp-peer{padding:var(--space-3)}}.multiplayer-panel,.multiplayer-compact{-webkit-user-select:none;user-select:none}.sparkle-field{pointer-events:none;width:100vw;height:100vh;z-index:var(--z-toast);position:fixed;top:0;left:0;overflow:hidden}.sparkle-field.contained{width:100%;height:100%;position:absolute}.sparkle{will-change:transform, opacity;animation:1.5s ease-in-out infinite sparkle-twinkle;position:absolute}@keyframes sparkle-twinkle{0%{opacity:0;transform:scale(.3)rotate(0)}25%{opacity:1;transform:scale(1)rotate(45deg)}50%{opacity:1;transform:scale(.8)rotate(90deg)}75%{opacity:.6;transform:scale(1.1)rotate(135deg)}to{opacity:0;transform:scale(.3)rotate(180deg)}}@media (prefers-reduced-motion:reduce){.sparkle{animation:2s ease-in-out infinite sparkle-fade}@keyframes sparkle-fade{0%,to{opacity:0}50%{opacity:1}}}.music-player-container{z-index:50;align-items:center;gap:12px;display:flex;position:relative}.music-trigger{border-radius:var(--radius-md);border:var(--border-default);width:40px;height:40px;box-shadow:var(--shadow-md);cursor:pointer;z-index:52;background:#0006;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex;position:relative;overflow:hidden}.music-trigger:hover{border-color:var(--accent);box-shadow:var(--shadow-md);transform:scale(1.1)}.music-trigger.active{border-color:var(--accent);background:#000c}.record-disc{width:100%;height:100%;color:var(--text-secondary);justify-content:center;align-items:center;transition:color .3s;display:flex}.music-trigger:hover .record-disc,.music-trigger.active .record-disc{color:var(--accent)}.record-disc.spin{animation:4s linear infinite record-spin}@keyframes record-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.music-drawer{opacity:0;border:var(--border-default);border-radius:var(--radius-md);transform-origin:0;pointer-events:none;background:#0006;align-items:center;width:0;height:40px;transition:all .4s cubic-bezier(.2,.8,.2,1);display:flex;overflow:hidden;transform:scaleX(.9)}.music-drawer.open{opacity:1;pointer-events:auto;width:340px;box-shadow:var(--shadow-md);border-color:#ffffff1a;transform:scaleX(1)}@media (width<=600px){.music-drawer.open{width:calc(100vw - 120px);min-width:200px}.music-drawer-content{gap:8px;min-width:auto;padding:0 8px}.drawer-track-title{max-width:80px}.drawer-volume{width:40px}}.music-drawer-content{white-space:nowrap;align-items:center;gap:12px;width:100%;min-width:340px;padding:0 16px;display:flex}.drawer-controls{gap:4px;display:flex}.drawer-info{flex-direction:column;flex:1;justify-content:center;gap:2px;max-width:120px;display:flex;overflow:hidden}.drawer-track-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;font-weight:600;overflow:hidden}.drawer-progress-bar{border-radius:var(--radius-md);background:#ffffff1a;width:100%;height:3px;overflow:hidden}.drawer-progress-fill{background:var(--accent);height:100%}.drawer-volume{align-items:center;gap:4px;width:60px;display:flex}.drawer-volume-slider{-webkit-appearance:none;border-radius:var(--radius-md);background:#fff3;outline:none;width:100%;height:3px}.drawer-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;border-radius:var(--radius-md);background:var(--text-secondary);cursor:pointer;border:none;width:6px;height:12px}.drawer-volume-slider::-webkit-slider-thumb:hover{background:var(--accent)}.drawer-actions{border-left:var(--border-default);gap:4px;padding-left:8px;display:flex}.control-btn{border:var(--border-default);color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);background:0 0;justify-content:center;align-items:center;transition:all .2s;display:flex}.control-btn:hover{color:var(--text-primary);background:#ffffff1a}.control-btn.small{padding:4px}.control-btn.tiny{padding:4px;font-size:.8rem}.control-btn.active{color:var(--accent)}.control-btn.danger:hover{color:#f44;background:#ff44441a}.music-mobile-modal-overlay{z-index:2000;background:radial-gradient(circle,#0a0a14b3 0%,#030305e6 100%);justify-content:center;align-items:center;padding:20px;animation:.3s ease-out fadeIn;display:flex;position:fixed;inset:0}.music-mobile-card{border:var(--border-default);border-radius:var(--radius-md);width:100%;max-width:360px;box-shadow:var(--shadow-md);background:#19191e99;flex-direction:column;gap:24px;padding:32px 24px;animation:.4s cubic-bezier(.2,.8,.2,1) scaleIn;display:flex;position:relative}.music-mobile-header{justify-content:space-between;align-items:center;display:flex}.music-mobile-header h4{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);align-items:center;gap:10px;margin:0;font-size:.9rem;font-weight:700;display:flex}.music-mobile-track-info{text-align:center;flex-direction:column;align-items:center;gap:12px;margin:10px 0;display:flex}.music-mobile-disc{border-radius:var(--radius-md);width:160px;height:160px;color:var(--text-secondary);box-shadow:var(--shadow-md);background:radial-gradient(circle at 30% 30%,#ffffff1a 0%,#0006 100%);border:4px solid #ffffff0d;justify-content:center;align-items:center;margin-bottom:8px;display:flex}.music-mobile-disc.spin{color:var(--accent);box-shadow:var(--shadow-md);border-color:#00ffd633;animation:8s linear infinite record-spin}.track-title.large{color:var(--text-primary);letter-spacing:-.01em;font-size:1.4rem;font-weight:700}.track-artist{opacity:.6}.progress-container.large{flex-direction:column;gap:8px;width:100%;display:flex}.time-row{justify-content:space-between;width:100%;display:flex}.progress-container.large .time-text{font-size:.75rem}.progress-container.large .progress-slider{height:6px}.player-controls.large{justify-content:space-between;align-items:center;width:100%;padding:0 4px;display:flex}.play-pause-large{background:var(--accent);width:72px;height:72px;color:var(--color-abyss);border-radius:var(--radius-md);box-shadow:var(--shadow-md);border:var(--border-default);cursor:pointer;justify-content:center;align-items:center;transition:transform .2s cubic-bezier(.2,.8,.2,1);display:flex}.play-pause-large:active{transform:scale(.9)}.music-mobile-volume{border-radius:var(--radius-md);background:#ffffff0d;align-items:center;gap:16px;margin-top:4px;padding:12px 20px;display:flex}.mobile-volume-slider{-webkit-appearance:none;border-radius:var(--radius-md);background:#ffffff1a;outline:none;flex:1;height:4px}.mobile-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;border-radius:var(--radius-md);background:var(--text-primary);width:10px;height:18px;box-shadow:var(--shadow-md);border:none}.mobile-actions-row{gap:12px;margin-top:8px;display:flex}.action-chip{border-radius:var(--radius-md);border:var(--border-default);color:var(--text-primary);cursor:pointer;background:#ffffff0a;flex:1;justify-content:center;align-items:center;gap:10px;padding:14px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.action-chip:active{background:#ffffff1a;transform:scale(.98)}.action-chip.danger{color:#ff6b6b;border-color:#ff6b6b33}.active-icon{color:var(--accent)!important}.avatar-library-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;padding:.5rem;display:grid;overflow-y:auto}.avatar-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;gap:.5rem;padding:.5rem;transition:all .2s;display:flex}.avatar-card:hover{border-color:var(--accent);background:#ffffff0d;transform:translateY(-2px)}.avatar-thumbnail{aspect-ratio:1;border-radius:var(--radius-md);background:#000;position:relative;overflow:hidden}.avatar-thumbnail img{object-fit:cover;width:100%;height:100%}.avatar-overlay{opacity:0;background:#00000080;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.avatar-card:hover .avatar-overlay{opacity:1}.avatar-info{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.avatar-meta{color:var(--text-secondary);font-size:.75rem}.spinner{border:4px solid #ffffff1a;border-left-color:var(--accent);border-radius:var(--radius-md);width:40px;height:40px;animation:1s linear infinite spin}.panel{background-color:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-md)}.panel__header{border-bottom:1px solid var(--color-border);padding:1rem}.panel__title{margin:0;font-size:1.25rem;font-weight:600}.panel__body{padding:1rem}.director-header{margin-bottom:20px}.director-header__content{justify-content:space-between;align-items:center;display:flex}.director-header__info{flex:1;min-width:0}.director-header__title-display{align-items:center;gap:8px;display:flex}.director-header__title{color:var(--text-bright);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.2rem;overflow:hidden}.director-header__title-edit{align-items:center;gap:8px;display:flex}.director-header__stats{gap:12px;margin-top:6px;display:flex}.director-header__stat-item{align-items:center;gap:4px;display:flex}.director-header__actions{flex-shrink:0;gap:8px;margin-left:12px;display:flex}.shot-list-container{flex-direction:column;gap:16px;padding-bottom:20px;padding-right:0;display:flex;overflow-y:visible}.shot-item-card{width:100%;position:relative}.shot-item__header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.shot-item__name-group{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.shot-item__index{color:var(--primary-color);flex-shrink:0}.shot-item__name-input{border:var(--border-default);color:var(--text-bright);text-overflow:ellipsis;background:0 0;border-bottom:1px solid #0000;outline:none;width:100%;padding:2px 4px;font-size:1rem;font-weight:700}.shot-item__name-input:focus{border-bottom:1px solid var(--primary-color)}.shot-item__actions{flex-shrink:0;gap:4px;display:flex}.shot-item__controls{grid-template-columns:1fr 1fr;gap:16px;display:grid}.shot-item__field-label{letter-spacing:.05em;margin-bottom:6px;font-size:.65rem;display:block}.shot-item__select{border-radius:var(--radius-md);background:var(--surface-raised,#1a1a1a);border:1px solid var(--border-subtle,#333);color:var(--text-bright,#fff);cursor:pointer;appearance:none;background-image:url(data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpolyline%20points%3D%226%209%2012%2015%2018%209%22%3E%3C%2Fpolyline%3E%3C%2Fsvg%3E);background-position:right .8rem center;background-repeat:no-repeat;background-size:1em;width:100%;padding:.6rem .8rem;font-size:.9rem}.shot-item__select optgroup,.shot-item__select option{color:var(--text-bright,#fff);background:#1a1a1a}.shot-item__duration-group{align-items:center;gap:10px;display:flex}.shot-item__duration-range{accent-color:var(--primary-color);flex:1}.shot-item__duration-label{width:35px;color:var(--primary-color);flex-shrink:0}.shot-item__checkbox-fields{grid-column:span 2;gap:20px;margin-top:4px;display:flex}.shot-item__checkbox-label{cursor:pointer;align-items:center;gap:10px;display:flex}.shot-item__checkbox{width:16px;height:16px;accent-color:var(--primary-color)}.empty-state{text-align:center;border:2px dashed var(--border-subtle);border-radius:var(--radius-md);background:#ffffff05;flex-direction:column;align-items:center;padding:60px 20px;display:flex}.empty-state__icon-container{border-radius:var(--radius-md);background:#ffffff0d;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:20px;display:flex}.empty-state__icon{opacity:.5}.empty-state__title{color:var(--text-bright);margin:0 0 8px}.empty-state__text{max-width:240px;margin:0 0 24px}.director-actions-footer{background:var(--surface-overlay);border-top:var(--border-default);box-shadow:var(--shadow-md);z-index:100;border-bottom-right-radius:12px;border-bottom-left-radius:12px;margin:20px -20px -20px;padding:20px;position:sticky;bottom:0}.director-actions-footer__grid{grid-template-columns:1.5fr 1fr;gap:12px;display:grid}.ai-widget-container{z-index:var(--z-drawer);width:340px;font-family:var(--font-body);transform-origin:0;opacity:0;pointer-events:none;flex-direction:column;transition:all .4s cubic-bezier(.2,.8,.2,1);display:flex;position:fixed;top:0;bottom:24px;left:0;transform:scaleX(0)}.ai-widget-container.open{opacity:1;pointer-events:auto;transform:scaleX(1)}.ai-drawer-toggle{background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-md);cursor:pointer;pointer-events:auto;width:44px;height:88px;box-shadow:var(--shadow-sm);transition:var(--transition-all);border-left:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:-44px;transform:translateY(-50%)}.ai-drawer-toggle:hover{background:var(--text-primary);width:48px}.ai-drawer-icon{color:var(--accent);transition:var(--transition-transform);font-size:1.5rem}.ai-drawer-toggle:hover .ai-drawer-icon{color:var(--color-void);transform:scale(1.1)}.ai-widget-content{background:var(--color-surface);border-right:var(--border-default);width:100%;height:100%;box-shadow:var(--shadow-md);flex-direction:column;display:flex;position:relative;overflow:hidden}.ai-widget-header{padding:var(--space-5) var(--space-6);border-bottom:var(--border-default);background:var(--text-primary);z-index:10;justify-content:space-between;align-items:center;display:flex;position:relative}.ai-label{font-family:var(--font-display);font-size:var(--text-sm);letter-spacing:.1em;text-transform:uppercase;color:var(--color-void);align-items:center;gap:var(--space-3);font-weight:900;display:flex}.ai-label .ai-icon{color:var(--color-void)}.ai-pulse-dot{border:1px solid var(--color-void);border-radius:var(--radius-md);background:var(--text-muted);width:12px;height:12px;transition:var(--transition-all);position:relative}.ai-pulse-dot.active{background:var(--success)}.ai-pulse-dot.loading{background:var(--warning)}.ai-header-controls{align-items:center;gap:var(--space-2);display:flex}.ai-header-btn{border-radius:var(--radius-md);background:var(--color-void);border:1px solid var(--color-void);width:32px;height:32px;color:var(--text-primary);transition:var(--transition-all);cursor:pointer;justify-content:center;align-items:center;display:flex}.ai-header-btn:hover,.ai-header-btn.active{background:var(--accent);color:var(--color-void)}.ai-chat-history{padding:var(--space-6);gap:var(--space-5);z-index:1;scrollbar-width:thin;scrollbar-color:var(--text-muted) var(--color-abyss);flex-direction:column;flex:1;display:flex;position:relative;overflow-y:auto}.ai-chat-history::-webkit-scrollbar{width:8px}.ai-chat-history::-webkit-scrollbar-thumb{background:var(--text-muted);border:1px solid var(--color-abyss);border-radius:var(--radius-md)}.ai-message{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);line-height:var(--leading-relaxed);max-width:90%;animation:ai-slide-up var(--duration-fast) var(--ease-out);border:var(--border-default);border-radius:var(--radius-md);position:relative}@keyframes ai-slide-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ai-message.user{background:var(--violet);color:var(--color-void);box-shadow:2px 2px 0px var(--text-primary);border-color:var(--text-primary);align-self:flex-end;font-weight:500}.ai-message.ai{background:var(--color-surface);color:var(--text-primary);box-shadow:2px 2px 0px var(--text-primary);align-self:flex-start}.ai-thought{font-size:var(--text-xs);color:var(--color-void);background:var(--accent);border:1px solid var(--text-primary);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);align-self:flex-start;align-items:center;gap:var(--space-2);font-family:var(--font-mono);text-transform:uppercase;box-shadow:2px 2px 0px var(--text-primary);font-weight:700;display:flex}.ai-empty-state{text-align:center;padding:var(--space-8);flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.ai-empty-icon{margin-bottom:var(--space-4);color:var(--text-primary)}.ai-input-form{padding:var(--space-5) var(--space-6);border-top:var(--border-default);background:var(--color-abyss);gap:var(--space-3);z-index:10;display:flex;position:relative}.ai-key-input{padding:var(--space-6);gap:var(--space-4);background:var(--color-surface);border-radius:var(--radius-md);border:var(--border-default);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.ai-key-row{gap:var(--space-2);display:flex}.ai-remember-key{align-items:center;gap:var(--space-3);font-size:var(--text-xs);text-transform:uppercase;color:var(--text-primary);cursor:pointer;font-weight:700;display:flex}.ai-security-note{color:var(--accent);font-size:var(--text-xs);align-items:center;gap:var(--space-1);text-transform:uppercase;font-weight:700;display:flex}.ai-clear-key-btn{background:var(--color-surface);border:var(--border-default);color:var(--error);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-xs);text-transform:uppercase;cursor:pointer;transition:var(--transition-all);font-weight:700}.ai-clear-key-btn:hover{background:var(--text-primary);color:var(--error);box-shadow:var(--shadow-xs)}.ai-activate-btn{width:100%;padding:var(--space-3) var(--space-4);background:var(--accent);color:var(--color-void);border:1px solid var(--text-primary);border-radius:var(--radius-md);font-size:var(--text-sm);text-transform:uppercase;cursor:pointer;transition:var(--transition-all);box-shadow:var(--shadow-sm);font-weight:900}.ai-activate-btn:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translate(-2px,-2px)}.ai-activate-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.ai-activate-btn.danger{background:var(--error);color:var(--color-void)}@media (width<=640px){.ai-widget-container{width:100%;max-width:320px}.ai-drawer-toggle{width:40px;height:72px;right:-40px}.ai-widget-header,.ai-input-form,.ai-chat-history{padding:var(--space-3)}.ai-input-form input{font-size:16px}}.session-hud{pointer-events:none;z-index:1500;font-family:var(--font-body);position:fixed;inset:0 0 24px}.reaction-bubbles{align-items:center;gap:var(--space-2);pointer-events:none;flex-direction:column;width:100%;max-width:400px;display:flex;position:absolute;bottom:100px;left:50%;transform:translate(-50%)}.reaction-bubble{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--glass-bg);border-radius:var(--radius-md);border:1px solid var(--glass-border);box-shadow:var(--shadow-md);pointer-events:none;animation:4s cubic-bezier(.2,.8,.2,1) forwards floatUp;display:flex}.reaction-icon-small{color:var(--accent);justify-content:center;align-items:center;display:flex}.reaction-icon-small svg{filter:drop-shadow(0 0 8px #00ffd666);width:20px;height:20px}.reaction-name{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-secondary);font-family:var(--font-display);letter-spacing:.02em}@keyframes floatUp{0%{opacity:0;transform:translateY(20px)scale(.8)}10%{opacity:1;transform:translateY(0)scale(1)}80%{opacity:1;transform:translateY(-120px)scale(1)}to{opacity:0;transform:translateY(-160px)scale(.9)}}.countdown-overlay{pointer-events:auto;z-index:100;background:#030305d9;flex-direction:column;justify-content:center;align-items:center;animation:.3s ease-out fadeIn;display:flex;position:absolute;inset:0}.countdown-number{font-size:8rem;font-weight:700;font-family:var(--font-display);color:var(--text-primary);text-shadow:0 0 60px #00ffd699;animation:1s cubic-bezier(.2,.8,.2,1) infinite countdownPulse}.countdown-text{font-size:var(--text-xl);font-family:var(--font-display);font-weight:var(--weight-medium);color:var(--accent);margin-top:var(--space-4);letter-spacing:var(--tracking-wide);text-transform:uppercase}@keyframes countdownPulse{0%{opacity:0;transform:scale(1.5)}20%{opacity:1;transform:scale(1)}85%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.photo-preview-overlay{pointer-events:auto;z-index:200;background:#030305e6;justify-content:center;align-items:center;animation:.3s ease-out fadeIn;display:flex;position:absolute;inset:0}.photo-preview-content{gap:var(--space-4);max-width:90vw;max-height:90vh;padding:var(--space-4);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--shadow-2xl);flex-direction:column;display:flex}.photo-preview-content img{border-radius:var(--radius-md);max-width:100%;max-height:calc(90vh - 100px);box-shadow:var(--shadow-md);border:var(--border-default)}.photo-preview-actions{justify-content:center;gap:var(--space-3);display:flex}.photo-preview-actions button{padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-family:var(--font-display);font-weight:var(--weight-medium);font-size:var(--text-sm);cursor:pointer;transition:var(--transition-all);align-items:center;gap:var(--space-2);display:flex}.photo-preview-actions button:first-child{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-600) 100%);color:var(--color-abyss);border:var(--border-default);box-shadow:var(--shadow-md)}.photo-preview-actions button:first-child:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.photo-preview-actions button:last-child{background:var(--glass-bg);color:var(--text-primary);border:1px solid var(--glass-border)}.photo-preview-actions button:last-child:hover{background:var(--glass-hover);border-color:var(--border-default)}.session-bar{bottom:var(--space-5);align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--glass-bg);border-radius:var(--radius-md);border:1px solid var(--glass-border);box-shadow:var(--shadow-md);pointer-events:auto;transition:var(--transition-all);z-index:100;display:flex;position:absolute;left:50%;transform:translate(-50%)}.session-bar button{border-radius:var(--radius-md);background:var(--glass-hover);border:1px solid var(--glass-border);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:var(--transition-all);justify-content:center;align-items:center;font-size:1.1rem;display:flex}.session-bar button:hover:not(:disabled){background:var(--glass-active);color:var(--text-primary);border-color:var(--border-default);transform:scale(1.1)}.session-bar button.active{color:var(--accent);box-shadow:var(--shadow-md);background:#00ffd61a;border-color:#00ffd64d}.session-participants{padding:0 var(--space-3);border-right:var(--border-default);margin-right:var(--space-1);align-items:center;display:flex}.participant-count{font-size:var(--text-sm);font-weight:var(--weight-medium);font-family:var(--font-mono);color:var(--text-secondary);align-items:center;gap:var(--space-2);display:flex}.session-reactions{position:relative}.reaction-trigger{color:var(--accent)!important}.reaction-picker{margin-bottom:var(--space-4);gap:var(--space-2);padding:var(--space-3);background:var(--glass-bg);border-radius:var(--radius-md);border:1px solid var(--glass-border);box-shadow:var(--shadow-xl);grid-template-columns:repeat(4,1fr);min-width:260px;animation:.2s cubic-bezier(.2,.8,.2,1) popIn;display:grid;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.reaction-picker:before{content:"";border-radius:var(--radius-md);pointer-events:none;background:radial-gradient(circle at 50% 0,#00ffd614,#0000 70%);position:absolute;inset:0}.reaction-item{border-radius:var(--radius-md);flex-direction:column;align-items:center;gap:4px;display:flex;padding:var(--space-2)!important;width:auto!important;height:auto!important;transition:var(--transition-all)!important;background:0 0!important;border:1px solid #0000!important}.reaction-item:hover{background:var(--glass-hover)!important;border-color:var(--border-subtle)!important;transform:translateY(-2px)!important}.reaction-icon{color:var(--accent);filter:drop-shadow(0 0 8px #00ffd64d);justify-content:center;align-items:center;font-size:1.5rem;display:flex}.reaction-label{color:var(--text-secondary);font-size:.65rem;font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:.05em}@keyframes popIn{0%{opacity:0;transform:translate(-50%)scale(.9)translateY(10px)}to{opacity:1;transform:translate(-50%)scale(1)translateY(0)}}.chat-toggle{position:relative}.unread-badge{border-radius:var(--radius-md);background:var(--error);color:#fff;min-width:16px;height:16px;box-shadow:var(--shadow-md);border:var(--border-default);justify-content:center;align-items:center;padding:0 4px;font-size:.6rem;font-weight:700;display:flex;position:absolute;top:0;right:0}.group-photo-btn{box-shadow:var(--shadow-md);background:linear-gradient(135deg, var(--warning) 0%, var(--warning-600) 100%)!important;color:#000!important;border:none!important}.group-photo-btn:hover:not(:disabled){box-shadow:var(--shadow-md);transform:scale(1.1)!important}.chat-draggable{z-index:2000}.chat-panel{background:var(--glass-bg);border-radius:var(--radius-md);border:1px solid var(--glass-border);width:320px;max-height:400px;box-shadow:var(--shadow-2xl);pointer-events:auto;flex-direction:column;animation:.2s cubic-bezier(.2,.8,.2,1) scaleIn;display:flex;overflow:hidden}.chat-panel:before{content:"";pointer-events:none;background:linear-gradient(#7c3aed14 0%,#0000 100%);height:60px;position:absolute;top:0;left:0;right:0}.chat-header{padding:var(--space-3) var(--space-4);border-bottom:var(--border-default);z-index:1;cursor:grab;justify-content:space-between;align-items:center;display:flex;position:relative}.chat-header:active{cursor:grabbing}.chat-header span{font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-primary);letter-spacing:var(--tracking-tight)}.chat-header button{border-radius:var(--radius-md);background:var(--glass-hover);border:var(--border-default);width:28px;height:28px;color:var(--text-tertiary);cursor:pointer;transition:var(--transition-all);justify-content:center;align-items:center;font-size:.9rem;display:flex}.chat-header button.drag-handle{cursor:grab}.chat-header button:hover{background:var(--glass-active);color:var(--text-primary);border-color:var(--border-default);transform:scale(1.05)}.chat-messages{padding:var(--space-3) var(--space-4);gap:var(--space-2);background:#0000000d;flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-empty{color:var(--text-muted);font-size:var(--text-sm);opacity:.7;flex:1;justify-content:center;align-items:center;font-style:italic;display:flex}.chat-message{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);max-width:85%;transition:var(--transition-all);box-shadow:var(--shadow-md);flex-direction:column;gap:2px;display:flex;position:relative}.chat-message:hover{transform:translateY(-1px)}.chat-message.local{border:var(--border-default);background:linear-gradient(135deg,#00ffd626,#00ffd60d);border-bottom-right-radius:2px;align-self:flex-end}.chat-message.remote{background:var(--surface-ui);border:var(--border-default);border-bottom-left-radius:2px;align-self:flex-start}.chat-name{font-size:.7rem;font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin-bottom:2px}.chat-message.local .chat-name{color:var(--accent);text-align:right}.chat-text{font-size:var(--text-sm);color:var(--text-primary);word-break:break-word;line-height:1.4}.chat-input-form{gap:var(--space-2);padding:var(--space-3);border-top:var(--border-default);background:#0000001a;display:flex}.chat-input-form input{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:var(--border-default);color:var(--text-primary);font-size:var(--text-sm);font-family:var(--font-body);transition:var(--transition-all);background:#0003;outline:none;flex:1}.chat-input-form input::placeholder{color:var(--text-muted)}.chat-input-form input:focus{border-color:var(--accent);box-shadow:var(--shadow-md);background:#0000004d}.chat-input-form button{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--accent) 0%, var(--accent-600) 100%);border:var(--border-default);width:36px;height:36px;color:var(--color-abyss);cursor:pointer;transition:var(--transition-all);box-shadow:var(--shadow-md);justify-content:center;align-items:center;font-size:1rem;display:flex}.chat-input-form button:hover:not(:disabled){box-shadow:var(--shadow-md);transform:scale(1.05)}.chat-input-form button:disabled{opacity:.5;cursor:not-allowed;background:var(--glass-subtle);color:var(--text-muted);box-shadow:none}@media (width<=640px){.session-bar{width:auto;min-width:240px;max-width:calc(100% - 100px);left:var(--space-4);bottom:calc(var(--space-4) + env(safe-area-inset-bottom));padding:6px 8px;transform:none}.session-bar button{width:36px;height:36px}.chat-panel{z-index:2100;width:auto;max-height:300px;position:fixed;bottom:80px;left:8px;right:8px}.chat-draggable{width:100%;top:auto!important;left:0!important}.reaction-picker{bottom:80px;left:var(--space-4);right:var(--space-4);min-width:0;margin-bottom:0;position:fixed;transform:none}}.ticker-tape-container{background:var(--surface-ui);width:100%;height:24px;color:var(--text-secondary);font-family:var(--font-mono);z-index:9999;pointer-events:none;border-top:var(--border-default);flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex;position:relative;overflow:hidden}.status-bar-content{white-space:nowrap;align-items:center;gap:8px;display:flex}.status-icon{color:var(--accent);align-items:center;display:flex}.studio-feed-container{background:0 0;flex-direction:column;flex:1;width:100%;height:100%;min-height:0;display:flex;overflow:hidden}.studio-feed-header{border-bottom:var(--border-default);z-index:10;box-sizing:border-box;background:#0a0a0c99;flex-shrink:0;justify-content:space-between;align-items:center;height:60px;padding:0 2rem;display:flex}.studio-feed-header h2{color:#fff;text-shadow:0 0 10px #ff5e5b66;font-size:1.25rem;font-weight:600;font-family:var(--font-display,"Orbitron", sans-serif);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:.75rem;margin:0;display:flex}.studio-feed-ticker{border-bottom:var(--border-default);white-space:nowrap;z-index:9;background:#a855f71a;flex-shrink:0;padding:4px 0;display:flex;overflow:hidden}.ticker-track{width:max-content;animation:30s linear infinite ticker;display:flex}.ticker-text{color:#d8b4fe;font-size:.85rem;font-family:var(--font-display,"Orbitron", sans-serif);letter-spacing:.05em;align-items:center;gap:8px;padding-right:2rem;display:flex}@keyframes ticker{0%{transform:translate(0,0)}to{transform:translate(-50%)}}.studio-feed-content{flex:1;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-auto-rows:max-content;align-content:start;gap:1.5rem;min-height:0;padding:1.5rem;display:grid;overflow:hidden auto}@media (width<=600px){.studio-feed-content{grid-template-columns:1fr;gap:1rem;padding:1rem}}.studio-feed-content::-webkit-scrollbar{width:8px}.studio-feed-content::-webkit-scrollbar-track{background:0 0}.studio-feed-content::-webkit-scrollbar-thumb{border-radius:var(--radius-md);background:#ffffff1a}.studio-feed-content::-webkit-scrollbar-thumb:hover{background:#fff3}.feed-item{border:var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-md);background:#14141999;flex-direction:column;height:100%;transition:all .3s cubic-bezier(.25,.8,.25,1);display:flex;overflow:hidden}.feed-item:hover{box-shadow:var(--shadow-md);border-color:#646cff4d;transform:translateY(-6px)}.feed-item-image{aspect-ratio:1;border-bottom:var(--border-default);background:linear-gradient(135deg,#1e1e23cc,#0f0f12e6);flex-shrink:0;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.feed-item-image img{object-fit:contain;width:100%;height:100%;transition:transform .5s}.feed-item:hover .feed-item-image img{transform:scale(1.03)}.feed-item-details{background:#0f0f1266;flex-direction:column;flex:1 0;padding:1.25rem;display:flex}.feed-item-creator-info{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.feed-item-creator-avatar{border-radius:var(--radius-md);width:28px;height:28px;box-shadow:var(--shadow-md);background-color:#ffffff1a;border:2px solid #646cff80;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.feed-item-creator-avatar img{object-fit:cover;width:100%;height:100%}.feed-item-creator{color:#fff;white-space:nowrap;text-overflow:ellipsis;letter-spacing:.05em;font-size:1.05rem;font-weight:600;font-family:var(--font-display,"Orbitron", sans-serif);overflow:hidden}.feed-item-desc{color:#fff9;margin-bottom:1.25rem;font-size:.85rem;line-height:1.5}.feed-item-actions{border-top:var(--border-default);justify-content:space-between;align-items:center;margin-top:auto;padding-top:1rem;display:flex}.action-btn{color:#ffffffb3;cursor:pointer;border-radius:var(--radius-md);background:#ffffff0d;border:1px solid #0000;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.action-btn:hover{color:#fff;background-color:#ffffff1a}.action-btn.upvoted{color:#ff5e5b;box-shadow:var(--shadow-md);background-color:#ff5e5b1a;border-color:#ff5e5b4d}.action-btn.upvoted:hover{background-color:#ff5e5b26}.tip-btn-small{color:gold;background-color:#ffd7000d;border-color:#ffd70033}.tip-btn-small:hover{box-shadow:var(--shadow-md);background-color:#ffd70026}.feed-empty,.feed-loading,.feed-error{color:#fff9;text-align:center;border-radius:var(--radius-md);background:#0a0a0c66;border:1px dashed #ffffff1a;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;gap:1.5rem;height:100%;padding:4rem;display:flex}.feed-empty p,.feed-loading p,.feed-error p{font-size:1.1rem;font-weight:500}.feed-image-modal-overlay{z-index:9999;background:#000000e6;justify-content:center;align-items:center;padding:2rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.feed-image-modal-content{object-fit:contain;border-radius:var(--radius-md);max-width:100%;max-height:100%;animation:.2s ease-out forwards scaleUp;transform:scale(.98);box-shadow:0 0 40px #000c}.feed-image-modal-close{color:#fff;cursor:pointer;z-index:10000;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex;position:absolute;top:1.5rem;right:1.5rem}.feed-image-modal-close:hover{background:#fff3;transform:scale(1.1)}@keyframes scaleUp{to{transform:scale(1)}}.studio-chat-panel{background:var(--glass-bg,#141419b3);border-left:1px solid var(--glass-border,#ffffff1a);box-sizing:border-box;flex-direction:column;flex-shrink:0;width:380px;height:100%;min-height:0;display:flex;overflow:hidden}@media (width<=960px){.studio-chat-panel{border-left:none;border-top:1px solid var(--glass-border,#ffffff1a);flex:none;width:100%;height:45vh}}.studio-chat-panel *{box-sizing:border-box}.chat-header{border-bottom:var(--border-default);z-index:20;box-sizing:border-box;background:#0a0a0c99;flex-shrink:0;justify-content:space-between;align-items:center;height:60px;padding:0 2rem;display:flex}.channel-info{align-items:center;gap:var(--space-2);color:var(--text-primary);font-weight:600;font-family:var(--font-display,sans-serif);display:flex}.online-count{align-items:center;gap:var(--space-2);color:var(--text-tertiary);font-size:.85rem;display:flex}.chat-messages{flex-direction:column;flex:1;gap:1rem;min-height:0;padding:1rem;display:flex;overflow-y:auto}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-thumb{border-radius:var(--radius-md);background:#ffffff1a}.chat-messages::-webkit-scrollbar-track{background:0 0}.message{gap:var(--space-3);flex-shrink:0;animation:.3s ease-out fadeIn;display:flex}.message-avatar{border-radius:var(--radius-md);background:var(--surface-ui);border:var(--border-default);flex-shrink:0;width:36px;height:36px;overflow:hidden}.message-avatar img{object-fit:cover;width:100%;height:100%}.avatar-placeholder{background:var(--accent);color:#000;justify-content:center;align-items:center;width:100%;height:100%;font-size:1rem;font-weight:700;display:flex}.message-content{flex-direction:column;flex:1;min-width:0;display:flex}.message-header{align-items:baseline;gap:var(--space-2);margin-bottom:4px;display:flex}.username{color:var(--signal-green,var(--accent));font-size:.9rem;font-weight:700;font-family:var(--font-display,sans-serif)}.timestamp{color:var(--text-tertiary);font-size:.7rem}.message p{color:var(--text-secondary);word-wrap:break-word;white-space:pre-wrap;margin:0;font-size:.9rem;line-height:1.5}.chat-input-area{padding:var(--space-4);border-top:1px solid var(--glass-border,#ffffff1a);align-items:center;gap:var(--space-2);z-index:10;background:#0003;flex-shrink:0;display:flex}.chat-input-wrapper{border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);border:var(--border-default);align-items:center;gap:var(--space-2);background:#0006;flex-direction:row;flex:1;min-height:48px;transition:all .2s;display:flex}.chat-input-wrapper:focus-within{border-color:var(--accent);box-shadow:var(--shadow-md);background:#0009}.chat-input-wrapper input{border:var(--border-default);padding:var(--space-2) var(--space-2);color:var(--text-primary);background:0 0;outline:none;flex:1;font-family:inherit;font-size:.9rem}.emoji-btn{border:var(--border-default);color:var(--text-tertiary);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-md);background:0 0;align-items:center;transition:all .2s;display:flex}.emoji-btn:hover{color:var(--text-primary);background:#ffffff0d}.send-btn{background:var(--accent);color:#000;border:var(--border-default);border-radius:var(--radius-md);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.send-btn:hover{filter:brightness(1.1);box-shadow:var(--shadow-md);transform:translateY(-1px)}.send-btn:disabled{opacity:.5;cursor:not-allowed;filter:none;box-shadow:none;transform:none}.chat-loading{height:100%;color:var(--text-tertiary);justify-content:center;align-items:center;font-size:.9rem;font-style:italic;display:flex}.pose-lab{color:#f0f4ff;background:#05060d;flex-direction:column;gap:2rem;max-width:1200px;min-height:100vh;margin:0 auto;padding:2rem;font-family:Space Grotesk,Clash Display,system-ui,sans-serif;display:flex}.pose-lab__header{text-align:center}.pose-lab__header h1{margin:0 0 .5rem;font-size:2.5rem}.pose-lab__header .muted{color:#f0f4ff99;font-size:1.1rem}.pose-lab__workflow{grid-template-columns:1fr 1fr 1fr;gap:2rem;margin:2rem 0;display:grid}.pose-lab__step{flex-direction:column;gap:1rem;display:flex}.step-number{border-radius:var(--radius-md);color:#00d9ff;background:#00d9ff33;border:2px solid #00d9ff;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;font-weight:700;display:flex}.step-content h3{margin:0 0 1rem;font-size:1.2rem}.drop-zone{border-radius:var(--radius-md);cursor:pointer;text-align:center;background:#ffffff08;border:2px dashed #fff3;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:200px;padding:2rem;transition:all .3s;display:flex}.drop-zone:hover{background:#00d9ff0d;border-color:#00d9ff80}.drop-zone--active{background:#00d9ff1a;border-color:#00d9ff;transform:scale(1.02)}.drop-zone--loaded{background:#00ff640d;border-color:#00ff6480}.drop-zone__icon{opacity:.8;font-size:3rem}.drop-zone__text{flex-direction:column;gap:.5rem;display:flex}.drop-zone__text strong{color:#f0f4ff;font-size:1.1rem}.drop-zone__text span{color:#f0f4ff99;font-size:.9rem}.pose-lab__canvas{aspect-ratio:1;border-radius:var(--radius-md);background:#0000004d;border:none;width:100%;overflow:hidden}.status-card{border:var(--border-default);border-radius:var(--radius-md);text-align:center;background:#ffffff0d;padding:1.5rem}.status-message{color:#00d9ff;margin:0;font-weight:500}.pose-lab__animation-controls{border:var(--border-default);border-radius:var(--radius-md);background:#00d9ff0d;margin:2rem 0;padding:1.5rem}.pose-lab__animation-controls h3{text-align:center;color:#00d9ff;margin:0 0 1rem}.pose-lab__actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.pose-lab__button,.pose-lab__actions button{border-radius:var(--radius-md);border:var(--border-default);color:inherit;cursor:pointer;background:#ffffff14;padding:1rem 2rem;font-size:1rem;font-weight:600;transition:all .2s}.pose-lab__actions button:hover:not(:disabled){background:#00d9ff26;border-color:#00d9ff}.pose-lab__actions button.active{background:#00d9ff33;border-color:#00d9ff}.pose-lab__actions button:disabled{opacity:.5;cursor:not-allowed}@media (width<=960px){.pose-lab__workflow{grid-template-columns:1fr}.drop-zone{min-height:150px}}
