:root{--color-primary: #8B2DB4;--color-primary-dark: #6B1D94;--color-primary-light: #A84DD4;--color-accent: #FBF157;--color-accent-dark: #D4CC3A;--color-success: #34D399;--color-warning: #FBBF24;--color-danger: #F87171;--color-info: #60A5FA;--color-bg: #0a0a14;--color-bg-surface: rgba(15, 15, 30, .6);--color-bg-elevated: rgba(25, 25, 50, .5);--color-bg-card: rgba(30, 30, 60, .4);--color-text: #e8eaf0;--color-text-secondary: rgb(178, 184, 214);--color-text-muted: rgb(139, 143, 167);--color-border: rgba(255, 255, 255, .08);--color-border-subtle: rgba(255, 255, 255, .04);--glass-blur: 20px;--glass-border: 1px solid rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .4);--glass-shadow-lg: 0 16px 48px rgba(0, 0, 0, .5), 0 0 0 1px rgba(255, 255, 255, .05);--glow-primary: 0 0 20px rgba(139, 45, 180, .3);--glow-accent: 0 0 20px rgba(251, 241, 87, .15);--glow-success: 0 0 15px rgba(52, 211, 153, .2);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", Consolas, monospace;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-base: .9375rem;--font-size-lg: 1.125rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 20px;--radius-pill: 9999px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-smooth: .3s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text);background:transparent;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background-color:#0d0e1c;background-image:radial-gradient(at 40% 20%,hsla(265,70%,60%,.55) 0px,transparent 50%),radial-gradient(at 80% 0%,hsla(175,75%,45%,.5) 0px,transparent 50%),radial-gradient(at 0% 50%,hsla(230,60%,50%,.45) 0px,transparent 50%),radial-gradient(at 80% 50%,hsla(280,65%,55%,.45) 0px,transparent 50%),radial-gradient(at 0% 100%,hsla(190,70%,45%,.4) 0px,transparent 50%),radial-gradient(at 80% 100%,hsla(250,65%,55%,.45) 0px,transparent 50%),radial-gradient(at 0% 0%,hsla(270,75%,60%,.5) 0px,transparent 50%);background-attachment:fixed;pointer-events:none}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:.015;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");pointer-events:none}#app{display:flex;flex-direction:column;height:100vh}.panel{scrollbar-color:var(--color-primary) rgba(255,255,255,.05)}.panel::-webkit-scrollbar-track{background:#ffffff08;border-radius:10px}.panel::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:10px;border:2px solid transparent;background-clip:padding-box;transition:background var(--transition-fast)}.panel::-webkit-scrollbar-thumb:hover{background:var(--color-primary-light);background-clip:padding-box}.panel::-webkit-scrollbar-thumb:active{background:var(--color-primary-dark);background-clip:padding-box}.navbar{display:flex;align-items:center;padding:var(--space-sm) var(--space-lg);background:#0a0a14b3;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-bottom:var(--glass-border);gap:var(--space-lg);flex-shrink:0;position:relative;z-index:10}.navbar-brand{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-size-lg);font-weight:700;color:var(--color-accent);white-space:nowrap}.brand-icon{font-size:1.5rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .15s ease}.brand-icon:active{transform:scale(1.25) rotate(-15deg)}.navbar-tabs{display:flex;gap:var(--space-xs);flex-wrap:wrap}.tab-btn{padding:var(--space-sm) var(--space-md);border:none;border-radius:var(--radius-md) var(--radius-md) 0 0;background:transparent;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-smooth);border-bottom:2px solid transparent;position:relative}.tab-btn:hover{color:var(--color-text);background:#ffffff0a}.tab-btn.active{color:var(--color-accent);border-bottom-color:var(--color-accent);background:#fbf1570a}.navbar-actions{display:flex;align-items:center;gap:var(--space-sm);margin-left:auto;flex-shrink:0}.btn-status{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);border:var(--glass-border);border-radius:var(--radius-pill);background:#ffffff0a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-smooth);white-space:nowrap}.btn-status:hover{border-color:#ffffff26;color:var(--color-text);background:#ffffff12}.btn-reset{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);border:var(--glass-border);border-radius:var(--radius-pill);background:#ffffff0a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-smooth);white-space:nowrap}.btn-reset:hover:not(:disabled){border-color:#fbbf244d;color:var(--color-warning);background:#fbbf240f}.btn-reset:disabled{opacity:.35;cursor:not-allowed}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.disconnected{background:var(--color-danger);box-shadow:0 0 6px #f8717180}.status-dot.connecting{background:var(--color-warning);animation:pulse 1s infinite;box-shadow:0 0 6px #fbbf2480}.status-dot.connected{background:var(--color-success);box-shadow:0 0 6px #34d39980}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.panels{flex:1;overflow-y:auto;padding:var(--space-xl) var(--space-xl) 0 var(--space-xl)}.panel{display:none;max-width:800px;margin:0 auto}.panel.active,html[data-tab=sketch] #panel-sketch,html[data-tab=fx] #panel-fx,html[data-tab=eeprom] #panel-eeprom,html[data-tab=cart] #panel-cart,html[data-tab=package] #panel-package,html[data-tab=image] #panel-image,html[data-tab=music] #panel-music,html[data-tab=fxdata] #panel-fxdata{display:block}.panel h2{font-size:var(--font-size-xl);color:var(--color-accent);margin-bottom:var(--space-sm);font-weight:700;letter-spacing:-.02em}.panel-description{color:var(--color-text-secondary);margin-bottom:var(--space-xl)}.placeholder-note{padding:var(--space-xl);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-lg)}.action-group{background:var(--color-bg-surface);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg);box-shadow:var(--glass-shadow);position:relative;overflow:hidden;transition:border-color var(--transition-smooth),box-shadow var(--transition-smooth)}.action-group:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(139,45,180,.03) 0%,transparent 50%,rgba(56,100,220,.02) 100%);pointer-events:none}.action-group:hover{border-color:#ffffff1f;box-shadow:var(--glass-shadow),0 0 30px #8b2db40f}.action-group h3{font-size:var(--font-size-base);font-weight:600;color:var(--color-text);margin-bottom:var(--space-md);letter-spacing:-.01em;position:relative}.button-row{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.action-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-sm) var(--space-lg)}.options-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm) var(--space-lg);margin-left:auto;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.options-row label{display:inline-flex;align-items:center;gap:var(--space-xs);cursor:pointer;transition:color var(--transition-fast)}.options-row label:hover{color:var(--color-text)}.options-row input[type=checkbox]{accent-color:var(--color-primary-light)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05050fbf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-overlay.hidden{display:none}.modal-card{background:#0f0f1ed9;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-xl) var(--space-2xl);min-width:400px;max-width:500px;text-align:center;box-shadow:var(--glass-shadow-lg),var(--glow-primary)}.progress-card h3{margin-bottom:var(--space-lg);color:var(--color-accent);font-weight:700;letter-spacing:-.01em}.progress-bar-container{width:100%;height:8px;background:#ffffff0f;border-radius:var(--radius-pill);overflow:hidden;margin-bottom:var(--space-md)}.progress-bar{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-light),var(--color-accent));border-radius:var(--radius-pill);transition:width var(--transition-smooth);box-shadow:0 0 12px #8b2db466}.progress-status{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.progress-percent{font-size:var(--font-size-xl);font-weight:700;color:var(--color-accent);margin-top:var(--space-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-smooth);text-decoration:none;white-space:nowrap;-webkit-user-select:none;user-select:none;position:relative;letter-spacing:.01em}.btn:disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 100%);color:#fff;border-color:#8b2db466;box-shadow:0 2px 8px #8b2db440}.btn-primary:hover:not(:disabled){box-shadow:var(--glow-primary),0 4px 16px #8b2db44d;transform:translateY(-1px);filter:brightness(1.1)}.btn-primary:active:not(:disabled){transform:translateY(0);filter:brightness(.95)}.btn-secondary{background:#ffffff0d;color:var(--color-text);border-color:#ffffff1a}.btn-secondary:hover:not(:disabled){background:#ffffff14;border-color:#ffffff2e;transform:translateY(-1px)}.btn-accent{background:linear-gradient(135deg,var(--color-accent) 0%,#e8d84a 100%);color:#111;border-color:#fbf15766;box-shadow:0 2px 8px #fbf15726}.btn-accent:hover:not(:disabled){box-shadow:var(--glow-accent),0 4px 16px #fbf15733;transform:translateY(-1px);filter:brightness(1.05)}.btn-outline{background:#ffffff08;color:var(--color-text);border-color:#ffffff1a}.btn-outline:hover:not(:disabled){background:#ffffff12;border-color:#ffffff2e;transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,#f8717126,#f8717114);color:var(--color-danger);border-color:#f8717140}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#f8717140,#f871711f);box-shadow:0 0 16px #f8717126;transform:translateY(-1px)}.btn-sm{padding:var(--space-sm) var(--space-md);font-size:var(--font-size-xs)}.btn-lg{padding:var(--space-md) var(--space-xl);font-size:var(--font-size-base)}.btn-icon{width:36px;height:29px;padding:0;border-radius:var(--radius-md)}.btn-group{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.btn-connect{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 100%);color:#fff;border-color:#8b2db466;box-shadow:0 2px 8px #8b2db440}.btn-connect.connected{background:linear-gradient(135deg,var(--color-success) 0%,#2dd4a0 100%);border-color:#34d39966;box-shadow:var(--glow-success)}.file-input-row{margin-bottom:var(--space-md)}.file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.file-label{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);background:#ffffff08;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-smooth);white-space:nowrap;-webkit-user-select:none;user-select:none;overflow:hidden;text-overflow:ellipsis;max-width:100%;letter-spacing:.01em}.file-label:hover{background:#ffffff12;border-color:#ffffff2e;color:var(--color-text);transform:translateY(-1px)}.file-label:active{transform:translateY(0)}.file-label.has-file{border-color:#34d39959;color:var(--color-success);background:#34d3990f;box-shadow:0 0 12px #34d39914}.page-drop-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;align-items:center;justify-content:center;background:#0a0a14a6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:opacity var(--transition-fast)}.page-drop-overlay.active{display:flex}.page-drop-overlay .drop-overlay-border{position:absolute;top:12px;right:12px;bottom:12px;left:12px;border:2.5px dashed var(--color-primary-light);border-radius:var(--radius-xl);box-shadow:inset 0 0 60px #8b2db41a,var(--glow-primary);pointer-events:none}.page-drop-overlay .drop-overlay-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);color:var(--color-primary-light);font-size:var(--font-size-xl);font-weight:700;text-shadow:0 0 24px rgba(139,45,180,.6);animation:drop-pulse 1.8s ease-in-out infinite}.page-drop-overlay .drop-overlay-icon{font-size:3.5rem;filter:drop-shadow(0 0 16px rgba(139,45,180,.7))}.page-drop-overlay .drop-overlay-label{letter-spacing:.02em}.page-drop-overlay .drop-overlay-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:400;letter-spacing:.04em}.drop-overlay-file-types{display:flex;gap:var(--space-lg);margin-top:var(--space-lg);justify-content:center;flex-wrap:wrap}.file-type-card{width:90px;height:120px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.file-svg{width:100%;height:100%;color:var(--color-primary-light);filter:drop-shadow(0 4px 12px rgba(139,45,180,.25));transition:all .2s cubic-bezier(.34,1.56,.64,1)}.file-type-card:hover .file-svg{filter:drop-shadow(0 8px 20px rgba(139,45,180,.5))}.file-type-card:hover{transform:translateY(-4px)}.file-text{font-size:14px;font-weight:700;font-family:var(--font-family-mono);letter-spacing:-.01em}@keyframes drop-pulse{0%,to{opacity:.85;transform:translateY(0)}50%{opacity:1;transform:translateY(-6px)}}.cart-drop-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;pointer-events:none}.cart-drop-overlay.active{display:block}.cart-drop-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a0a14a6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);pointer-events:auto}.cart-drop-bin-banner{position:absolute;top:0;left:0;right:0;height:45%;display:flex;align-items:center;justify-content:center;color:var(--color-accent);font-size:var(--font-size-sm);font-weight:500;letter-spacing:.03em;pointer-events:none}.cart-drop-bin-banner span{display:inline-block;animation:drop-pulse 1.8s ease-in-out infinite}.cart-drop-bin-banner strong{color:var(--color-accent)}.cart-slot-list-container.cart-drag-hover,.cart-detail-panel.cart-drag-hover{position:relative;z-index:10000;outline:2.5px dashed var(--color-primary-light);outline-offset:-1px;box-shadow:0 0 30px #8b2db440,inset 0 0 40px #8b2db40f}.cart-detail-panel.cart-detail-drop-active{outline:2px dashed var(--color-primary);outline-offset:-2px;background:#8b2db414}.file-label.has-file:hover{background:#34d3991a;border-color:#34d39973}.card{background:var(--color-bg-surface);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--glass-shadow)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md)}.card-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-text)}.section{margin-bottom:var(--space-xl)}.section-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-accent);margin-bottom:var(--space-md);padding-bottom:var(--space-xs);border-bottom:1px solid var(--color-border)}.form-row{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md)}.form-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap}.checkbox-group{display:flex;flex-wrap:wrap;gap:var(--space-md)}.checkbox-label{display:inline-flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer}.checkbox-label:hover{color:var(--color-text)}.checkbox-label input[type=checkbox]{accent-color:var(--color-accent)}select,input[type=text],input[type=number]{padding:var(--space-sm) var(--space-md);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);background:#ffffff0a;color:var(--color-text);font-size:var(--font-size-sm);font-family:var(--font-family);transition:border-color var(--transition-smooth),box-shadow var(--transition-smooth)}select:focus,input:focus{outline:none;border-color:#8b2db480;box-shadow:0 0 0 3px #8b2db41a}.hex-viewer{font-family:var(--font-mono);font-size:var(--font-size-xs);background:#0a0a1499;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md);padding:var(--space-md);max-height:300px;overflow:auto;white-space:pre;line-height:1.4}.preview-canvas{background:repeating-conic-gradient(#222,#222 25%,#333 0%,#333 50%) 50% / 10px 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);image-rendering:pixelated}.preview-strip{display:flex;gap:var(--space-sm);overflow-x:auto;padding:var(--space-sm) 0}.slot-list{display:flex;flex-direction:column;gap:var(--space-sm);max-height:60vh;overflow-y:auto}.slot-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md);transition:all var(--transition-smooth);cursor:grab}.slot-item:hover{border-color:#fbf15733;background:#ffffff0d}.slot-item.dragging{opacity:.5;border-color:var(--color-primary)}.slot-item.category{border-left:3px solid var(--color-accent)}.slot-thumbnail{width:64px;height:32px;border-radius:var(--radius-sm);image-rendering:pixelated;background:#000;flex-shrink:0}.slot-info{flex:1;min-width:0}.slot-title{font-weight:600;font-size:var(--font-size-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slot-meta{font-size:var(--font-size-xs);color:var(--color-text-muted)}.slot-actions{display:flex;gap:var(--space-xs);flex-shrink:0}.slot-drop-zone{height:4px;border-radius:2px;background:var(--color-primary);margin:calc(-1 * var(--space-xs)) 0;opacity:0;transition:opacity var(--transition-fast)}.slot-drop-zone.active{opacity:1}.info-box{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);margin-top:var(--space-md);margin-bottom:var(--space-md);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.info-box h4{font-size:var(--font-size-sm);font-weight:600;color:var(--color-accent);margin:0 0 var(--space-sm) 0}.info-grid{display:grid;grid-template-columns:auto 1fr;gap:var(--space-xs) var(--space-lg);margin:0}.info-grid dt{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.info-grid dd{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text);margin:0;font-family:var(--font-mono)}.info-box.hidden{display:none}.toast-container{position:fixed;bottom:var(--space-xl);right:var(--space-xl);display:flex;flex-direction:column-reverse;gap:var(--space-sm);z-index:2000;pointer-events:none}.toast{padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;color:#fff;pointer-events:auto;animation:toast-in .3s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 24px #00000080;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08)}.toast.info{background:#60a5fad9}.toast.success{background:#34d399d9;color:#0a0a14}.toast.warning{background:#fbbf24e6;color:#0a0a14}.toast.error{background:#f87171d9}@keyframes toast-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.confirm-overlay{transition:opacity .2s ease;opacity:0}.confirm-overlay.visible{opacity:1}.confirm-card{max-width:440px;min-width:320px;text-align:center;transform:translateY(12px) scale(.97);transition:transform .2s cubic-bezier(.4,0,.2,1),opacity .2s ease;opacity:0}.confirm-card.visible{transform:translateY(0) scale(1);opacity:1}.confirm-title{margin:0 0 var(--space-md) 0;font-size:var(--font-size-lg);font-weight:700;color:var(--color-accent);letter-spacing:-.01em}.confirm-message{margin:0 0 var(--space-xl) 0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.6}.confirm-actions{display:flex;gap:var(--space-md);justify-content:center}.confirm-actions .btn{min-width:100px}.confirm-cancel-row{display:flex;justify-content:center;margin-top:var(--space-sm)}@media(max-width:768px){.navbar{flex-direction:column;align-items:flex-start;padding:var(--space-sm)}.navbar-tabs{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.navbar-actions{margin-left:0;width:100%;justify-content:flex-end}.panels{padding:var(--space-md)}.modal-card{min-width:unset;margin:var(--space-md)}}.cart-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0}.cart-toolbar-group{display:flex;align-items:center;gap:var(--space-xs)}.cart-confirm-delete-label{display:flex;align-items:center;gap:4px;font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;margin-left:var(--space-sm)}.cart-confirm-delete-label input[type=checkbox]{margin:0;cursor:pointer;accent-color:var(--color-primary-light)}.cart-patch-label{display:flex;align-items:center;gap:4px;font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;margin-left:var(--space-sm)}.cart-patch-label input[type=checkbox]{margin:0;cursor:pointer;accent-color:var(--color-primary)}.cart-toolbar-separator{width:1px;height:24px;background:var(--color-border);margin:0 var(--space-xs)}.cart-toolbar-divider{border:none;border-top:1px solid var(--color-border);margin:0}.cart-toolbar-search{margin-left:auto}.cart-toolbar-row2{margin-bottom:0;padding-bottom:var(--space-sm);border-bottom:none;border-top:1px solid var(--color-border)}.cart-search-input{width:180px;padding:var(--space-xs) var(--space-md);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);background:#ffffff0a;color:var(--color-text);font-size:var(--font-size-xs);font-family:var(--font-family);transition:border-color var(--transition-smooth),box-shadow var(--transition-smooth)}.cart-search-input:focus{outline:none;border-color:#8b2db480;box-shadow:0 0 0 3px #8b2db41a}.cart-search-input::placeholder{color:var(--color-text-muted)}.cart-content{display:flex;gap:0;min-height:400px;max-height:calc(100vh - 320px)}.cart-slot-list-container{position:relative;flex:1 1 0%;min-width:200px;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#0003}.cart-resize-handle{flex:0 0 6px;cursor:col-resize;border-radius:3px;margin:0 2px;transition:background .15s}.cart-resize-handle:hover,.cart-resize-handle.active{background:var(--color-border)}.cart-slot-list{display:flex;flex-direction:column;gap:2px;padding:var(--space-xs);overflow-y:auto;max-height:calc(100vh - 300px)}.cart-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-2xl);color:var(--color-text-muted);text-align:center;min-height:200px}.cart-empty-hint{font-size:var(--font-size-xs);margin-top:var(--space-sm);color:var(--color-text-muted);opacity:.7}.slot-item{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:var(--radius-sm);transition:all var(--transition-fast);cursor:grab;min-height:46px;-webkit-user-select:none;user-select:none}.slot-item:hover{background:#ffffff0d;border-color:#ffffff1a}.slot-item.cart-slot-selected{background:#8b2db41f;border-color:#8b2db459;box-shadow:inset 0 0 0 1px #8b2db426}.slot-item.category{border-left:3px solid var(--color-accent);background:#fbf15708;margin-top:var(--space-sm)}.slot-item.category:first-child{margin-top:0}.slot-item.category.cart-slot-selected{background:#fbf15714;border-color:#fbf15766;border-left-color:var(--color-accent)}.slot-item.bootloader-image{border-left:3px solid var(--color-info);background:#60a5fa0a;margin-top:0;cursor:default}.slot-item.bootloader-image.cart-slot-selected{background:#60a5fa1a;border-color:#60a5fa66;border-left-color:var(--color-info)}.slot-bootloader-label{color:var(--color-info)!important}.cart-bootloader-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 var(--space-md);line-height:1.5}.slot-item.dragging{opacity:.4;border-color:var(--color-primary)}.slot-item{position:relative}.slot-item.drag-above:before,.slot-item.drag-below:after{content:"";position:absolute;left:0;right:0;height:2px;background:var(--color-primary);border-radius:1px;box-shadow:0 0 8px #8b2db499,0 0 2px #8b2db4e6;pointer-events:none;z-index:20}.slot-item.drag-above:before{top:-3px}.slot-item.drag-below:after{bottom:-3px}.slot-number{font-size:var(--font-size-xs);color:var(--color-text-muted);min-width:28px;text-align:center;font-family:var(--font-mono);flex-shrink:0}.slot-thumbnail{width:64px;height:32px;border-radius:3px;image-rendering:pixelated;background:#000;flex-shrink:0;border:1px solid rgba(255,255,255,.08)}.slot-info{flex:1;min-width:0;overflow:hidden}.slot-title{font-weight:600;font-size:var(--font-size-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:var(--space-xs)}.slot-meta{font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slot-sizes{font-family:var(--font-mono);font-size:10px;opacity:.6}.slot-category-header{font-weight:700;font-size:var(--font-size-base);color:var(--color-accent)}.slot-badge{display:inline-block;padding:1px 5px;border-radius:3px;font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;flex-shrink:0}.slot-badge-fx{background:#60a5fa33;color:var(--color-info);border:1px solid rgba(96,165,250,.3)}.cart-search-hidden{display:none!important}.cart-search-highlight{border-color:#fbf1574d!important}.cart-detail-panel{position:relative;flex:0 0 380px;min-width:280px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);padding:var(--space-lg);overflow-y:auto;max-height:calc(100vh - 300px)}.cart-detail-empty{display:flex;align-items:center;justify-content:center;height:100%;min-height:200px;color:var(--color-text-muted);text-align:center}.cart-detail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border)}.cart-detail-header h3{margin:0;font-size:var(--font-size-lg);font-weight:600}.cart-meta-counter{font-size:var(--font-size-xs);font-family:var(--font-mono);color:var(--color-text-muted);padding:2px 8px;border-radius:var(--radius-sm);background:#ffffff0a}.cart-meta-counter.over-limit{color:var(--color-danger);background:#f871711a;border:1px solid rgba(248,113,113,.3)}.cart-detail-image-section{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-sm);margin:0 var(--space-md) var(--space-lg) var(--space-md)}.cart-detail-canvas{width:100%;aspect-ratio:2 / 1;background:#000;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);image-rendering:pixelated}.cart-detail-image-actions{display:flex;flex-direction:row;gap:var(--space-sm);justify-content:center}.cart-detail-fields{display:grid;grid-template-columns:auto 1fr;gap:var(--space-sm) var(--space-md);align-items:center;margin-bottom:var(--space-lg)}.cart-field-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);white-space:nowrap}.cart-field-input{width:100%;padding:var(--space-xs) var(--space-sm);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);background:#ffffff0a;color:var(--color-text);font-size:var(--font-size-sm);font-family:var(--font-family);transition:border-color var(--transition-smooth)}.cart-field-input:focus{outline:none;border-color:#8b2db480;box-shadow:0 0 0 2px #8b2db414}.cart-field-textarea{width:100%;padding:var(--space-xs) var(--space-sm);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);background:#ffffff0a;color:var(--color-text);font-size:var(--font-size-sm);font-family:var(--font-family);resize:vertical;min-height:90px;transition:border-color var(--transition-smooth)}.cart-field-textarea:focus{outline:none;border-color:#8b2db480;box-shadow:0 0 0 2px #8b2db414}.cart-detail-binaries{border-top:1px solid var(--color-border);padding-top:var(--space-md)}.cart-detail-binaries h4{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text);margin:0 0 var(--space-sm) 0}.cart-binary-row{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0}.cart-binary-row-indent{padding-left:calc(60px + 70px + var(--space-sm) * 2)}.cart-binary-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);min-width:60px}.cart-binary-size{font-size:var(--font-size-xs);font-family:var(--font-mono);color:var(--color-text-muted);min-width:70px;text-align:right}.cart-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) 0;margin-top:var(--space-sm);border-top:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.cart-mobile-resize-handle{display:none;height:10px;cursor:row-resize;align-items:center;justify-content:center;background:transparent;transition:background .15s;flex-shrink:0}.cart-mobile-resize-handle:before{content:"";display:block;width:48px;height:4px;border-radius:2px;background:var(--color-border);transition:background .15s,width .15s}.cart-mobile-resize-handle:hover:before,.cart-mobile-resize-handle.active:before{background:var(--color-primary);width:72px}@media(max-width:900px){.cart-content{flex-direction:column;max-height:none;overflow:visible}.cart-resize-handle{display:none}.cart-slot-list-container{flex:none}.cart-detail-panel{flex:none;max-height:none}.cart-slot-list{max-height:50vh}.cart-mobile-resize-handle{display:flex}.cart-detail-image-section{margin:0 var(--space-sm) var(--space-lg) var(--space-sm)}.cart-toolbar-search{margin-left:0;width:100%}.cart-search-input{width:100%}}.pkg-toolbar{display:flex;gap:var(--space-sm);margin-bottom:var(--space-lg);flex-wrap:wrap}.pkg-content{display:flex;gap:0;min-height:0}.pkg-left-pane,.pkg-right-pane{flex:1 1 0;min-width:0;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);overflow-y:auto;max-height:70vh}.pkg-resize-handle{flex:0 0 6px;cursor:col-resize;border-radius:3px;margin:0 2px;transition:background .15s}.pkg-resize-handle:hover,.pkg-resize-handle.active{background:var(--color-border)}.pkg-pane-title{margin:0 0 var(--space-md) 0;font-size:var(--font-size-md);color:var(--color-text)}.pkg-field-group{margin-bottom:var(--space-sm)}.pkg-label{display:block;font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-secondary);margin-bottom:2px;text-transform:uppercase;letter-spacing:.05em}.pkg-field-input,.pkg-field-textarea,.pkg-field-select{width:100%;padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#ffffff0a;color:var(--color-text);font-size:var(--font-size-sm);font-family:inherit;transition:border-color var(--transition-smooth);box-sizing:border-box}.pkg-field-input:focus,.pkg-field-textarea:focus,.pkg-field-select:focus{border-color:var(--color-primary-light);outline:none}.pkg-field-textarea{resize:vertical}.pkg-section{margin-top:var(--space-md)}.pkg-section-title{margin:0 0 var(--space-xs) 0;font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:600}.pkg-contributors-controls{display:flex;gap:var(--space-xs);margin-bottom:var(--space-xs)}.pkg-contributors-wrap{overflow-x:auto}.pkg-contributors-table{width:100%;border-collapse:collapse;font-size:var(--font-size-xs);margin:var(--space-md) 0}.pkg-contributors-table th,.pkg-contributors-table td{padding:4px 6px;text-align:left}.pkg-contributors-table th{color:var(--color-text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.pkg-contrib-input{width:100%;padding:3px 5px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-size:var(--font-size-xs);font-family:inherit;box-sizing:border-box}.pkg-contrib-input:focus{border-color:var(--color-primary-light);outline:none}.pkg-license-textarea{width:100%;padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#ffffff0a;color:var(--color-text);font-family:Courier New,monospace;font-size:var(--font-size-xs);resize:vertical;box-sizing:border-box}.pkg-license-textarea:focus{border-color:var(--color-primary-light);outline:none}.pkg-license-help{margin-top:var(--space-xs);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.pkg-license-help a{color:var(--color-primary-light)}.pkg-binary-toolbar{display:flex;gap:var(--space-xs);margin-bottom:var(--space-sm)}.pkg-binary-list{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--space-md);max-height:160px;overflow-y:auto}.pkg-binary-item{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-smooth)}.pkg-binary-item:hover{border-color:var(--color-primary-light)}.pkg-binary-item.selected{border-color:var(--color-primary);background:#8b2db41f;box-shadow:inset 0 0 0 1px var(--color-primary)}.pkg-binary-name{flex:1;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pkg-binary-device{font-size:var(--font-size-xs);color:var(--color-primary-light);font-weight:600}.pkg-binary-flags{font-size:10px;color:var(--color-text-secondary);font-family:monospace;white-space:nowrap}.pkg-binary-detail{border-top:1px solid var(--color-border);padding-top:var(--space-md)}.pkg-binary-empty{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-style:italic;text-align:center;padding:var(--space-lg) 0}.pkg-binary-form{display:flex;flex-direction:column;gap:var(--space-sm)}.pkg-binary-image-section{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-sm)}.pkg-binary-preview{display:block;width:100%;aspect-ratio:2 / 1;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#000;image-rendering:pixelated;object-fit:contain}.pkg-binary-preview-empty{visibility:hidden}.pkg-binary-image-buttons{display:flex;gap:var(--space-xs);justify-content:center}.pkg-binary-device-row{display:flex;align-items:center;gap:var(--space-sm)}.pkg-binary-device-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.pkg-binary-device-row .pkg-field-select{flex:1;background:var(--color-bg-surface);cursor:pointer}.pkg-binary-files{display:flex;flex-direction:column;gap:var(--space-xs)}.pkg-binary-file-row{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);flex-wrap:wrap}.pkg-binary-file-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);min-width:70px}.pkg-binary-file-size{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-family:monospace;min-width:50px}@media(max-width:900px){.pkg-content{flex-direction:column}.pkg-left-pane,.pkg-right-pane{flex:0 0 auto;max-height:none;overflow-y:visible;margin-bottom:var(--space-sm)}.pkg-resize-handle{display:none}.pkg-binary-top-row{flex-direction:column;align-items:stretch}.pkg-binary-image-section{align-items:stretch}}.hidden{display:none!important}.img-preview-section{margin-top:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm)}.img-preview-wrap{max-width:100%;overflow-x:auto;display:flex;justify-content:center}.img-preview-canvas{max-width:100%;max-height:256px;background:repeating-conic-gradient(#222,#222 25%,#333 0%,#333 50%) 50% / 10px 10px;border:1px solid var(--color-border);image-rendering:pixelated}.img-preview-canvas.fill-view{width:100%;max-height:none}.img-preview-controls{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap;justify-content:center}.img-dimensions{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);padding:2px 8px;border-radius:var(--radius-sm);background:#ffffff0a}.img-scale-btns{display:flex;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);overflow:hidden}.img-scale-btn{display:flex;align-items:center;cursor:pointer;padding:2px 10px;font-size:var(--font-size-xs);color:var(--color-text-secondary);background:transparent;border-right:1px solid rgba(255,255,255,.08);transition:background .15s,color .15s;-webkit-user-select:none;user-select:none;white-space:nowrap}.img-scale-btn:last-child{border-right:none}.img-scale-btn input[type=radio]{display:none}.img-scale-btn:has(input:checked){background:#ffffff1f;color:var(--color-text)}.img-scale-btn:hover:not(:has(input:checked)){background:#ffffff0f}.img-frame-info-row{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.img-sprite-settings{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border)}.img-settings-grid{display:grid;grid-template-columns:max-content auto max-content auto;align-items:center;column-gap:var(--space-md);row-gap:var(--space-sm);margin:var(--space-md) 0}.img-settings-label{margin:0;white-space:nowrap;justify-self:end}.img-settings-control{justify-self:start}.img-settings-threshold{display:flex;align-items:center;gap:var(--space-sm);justify-self:start}.img-settings-full-row{grid-column:1 / -1;margin:0}.img-settings-heading{margin:0 0 var(--space-md) 0;padding:0;font-size:var(--font-size-lg);font-weight:600}.img-accordion-toggle{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm) 0;margin:0;border:none;background:none;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;text-align:left;transition:color .2s ease}.img-accordion-toggle:hover{color:var(--color-text)}.img-accordion-icon{display:inline-flex;align-items:center;justify-content:center;width:1.2em;height:1.2em;transition:transform .2s ease;font-size:.75em;flex-shrink:0}.img-accordion-toggle[aria-expanded=true] .img-accordion-icon{transform:rotate(90deg)}.img-accordion-content{max-height:100000px;overflow:hidden;transition:max-height .2s ease,opacity .2s ease;opacity:1;margin-top:var(--space-sm)}.img-accordion-content.collapsed{max-height:0;opacity:0;margin-top:0}.img-num-input{width:72px;padding:var(--space-xs) var(--space-sm);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);background:#ffffff0a;color:var(--color-text);font-size:var(--font-size-sm);font-family:var(--font-mono);text-align:center;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.img-num-input::-webkit-outer-spin-button,.img-num-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.img-num-input::-moz-number-buttons{display:none}.img-num-input:focus{outline:none;border-color:#8b2db480;box-shadow:0 0 0 2px #8b2db414}.img-num-input-group{display:inline-flex;align-items:center;gap:4px}.img-num-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-sm);background:#ffffff0d;color:var(--color-text);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-smooth)}.img-num-btn:hover{background:#ffffff1a;border-color:#ffffff40}.img-num-btn:active{background:#ffffff14}.img-frame-info{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-sm)}.img-frame-strip{display:flex;align-items:flex-start;gap:var(--space-sm);overflow-x:auto;padding:var(--space-sm) 0;margin-top:var(--space-sm)}.img-frame-strip canvas{border:1px solid rgba(255,255,255,.08);image-rendering:pixelated;background:#000;flex-shrink:0}.img-frame-more{font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic;margin-top:var(--space-xs)}.img-select{flex:1;max-width:300px;padding:var(--space-sm) var(--space-md);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);background:#ffffff0a;color:var(--color-text);font-size:var(--font-size-sm);font-family:var(--font-family);cursor:pointer}.img-select:focus{outline:none;border-color:#8b2db480;box-shadow:0 0 0 3px #8b2db41a}.img-select option{background:#1a1a2e;color:#fff}.img-text-input{flex:1;max-width:200px;padding:var(--space-sm) var(--space-md);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);background:#ffffff0a;color:var(--color-text);font-size:var(--font-size-sm);font-family:var(--font-mono)}.img-text-input:focus{outline:none;border-color:#8b2db480;box-shadow:0 0 0 3px #8b2db41a}.img-slider{flex:1;max-width:200px;accent-color:var(--color-primary-light)}.img-threshold-value{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text-muted);min-width:30px;text-align:right}.img-code-block{font-family:var(--font-mono);font-size:var(--font-size-xs);background:#0a0a1499;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md);padding:var(--space-md);max-height:400px;overflow:auto;white-space:pre;line-height:1.4;color:var(--color-text);margin-bottom:var(--space-md);-moz-tab-size:2;tab-size:2}.img-output-info{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-lg);margin-bottom:var(--space-md);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.img-info-item{display:inline-flex;align-items:center;gap:var(--space-xs)}.img-info-value{font-family:var(--font-mono);color:var(--color-text);font-weight:600}.img-usage-options{margin-bottom:var(--space-md)}.img-format-warning{display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);background:#fbbf2414;border:1px solid rgba(251,191,36,.25);font-size:var(--font-size-sm);color:var(--color-warning);line-height:1.5}.img-format-warning-icon{font-size:var(--font-size-base);flex-shrink:0}.img-format-switch-link{color:var(--color-accent);text-decoration:underline;text-decoration-style:dotted;cursor:pointer;font-weight:600;white-space:nowrap}.img-format-switch-link:hover{color:#fff;text-decoration-style:solid}.img-first-frame-notice{display:flex;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);background:#60a5fa14;border:1px solid rgba(96,165,250,.2);font-size:var(--font-size-sm);color:var(--color-info)}.icon-btn-copy{position:absolute;top:var(--space-lg);right:var(--space-lg);width:32px;height:32px;padding:0;border:none;background:#ffffff14;color:var(--color-text-secondary);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-smooth);z-index:10}.icon-btn-copy:hover{background:#ffffff1f;color:var(--color-text);transform:scale(1.1)}.icon-btn-copy:active{transform:scale(.95)}@media(max-width:750px){.img-settings-grid{grid-template-columns:max-content auto}}#panel-music{max-width:1400px}.mus-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;margin-bottom:var(--space-md)}.mus-toolbar-group{display:flex;align-items:center;gap:var(--space-xs)}.mus-toolbar-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap}.mus-select{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#0000004d;color:var(--color-text);font-size:var(--font-size-xs);font-family:var(--font-family)}.mus-select:focus{border-color:var(--color-primary);outline:none}.mus-bpm-input{width:60px;padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#0000004d;color:var(--color-text);font-size:var(--font-size-xs);font-family:var(--font-family);text-align:center}.mus-bpm-input::-webkit-outer-spin-button,.mus-bpm-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.mus-bpm-input[type=number]{-moz-appearance:textfield}.mus-bpm-input:focus{border-color:var(--color-primary);outline:none}.mus-text-input{width:100%;padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#0000004d;color:var(--color-text);font-size:var(--font-size-xs);font-family:var(--font-family)}.mus-text-input:focus{border-color:var(--color-primary);outline:none}.mus-editor-layout{display:flex;gap:0;height:450px;margin-bottom:0;border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;background:#00000026}.mus-sidebar{flex:0 0 200px;border-right:1px solid var(--color-border);padding:var(--space-md);overflow-y:auto;background:var(--color-bg-surface)}.mus-sidebar-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text);margin:0 0 var(--space-sm) 0}.mus-voice-list{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-md)}.mus-voice-item{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#ffffff05;font-size:var(--font-size-xs)}.mus-voice-item.active{border-color:var(--color-primary);background:#8b2db41a}.mus-voice-color{width:12px;height:12px;border-radius:3px;flex-shrink:0}.mus-voice-name{flex:1;color:var(--color-text)}.mus-voice-btn{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-xs);padding:2px 4px;border-radius:3px;line-height:1}.mus-voice-btn:hover{color:var(--color-text);background:#ffffff0d}.mus-voice-btn.active{color:var(--color-accent)}.mus-array-name-section{border-top:1px solid var(--color-border-subtle);padding-top:var(--space-md);margin-top:var(--space-md)}.mus-array-name-section .mus-setting-label{display:block;margin-bottom:4px;font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.mus-loop-section{margin-top:var(--space-sm)}.mus-settings-section{border-top:1px solid var(--color-border-subtle);padding-top:var(--space-md);margin-top:var(--space-md)}.mus-accordion-summary{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text);cursor:pointer;list-style:none;display:flex;align-items:center;gap:var(--space-xs);padding:2px 0;-webkit-user-select:none;user-select:none}.mus-accordion-summary::-webkit-details-marker{display:none}.mus-accordion-summary:before{content:"▶";font-size:8px;color:var(--color-text-muted);transition:transform .15s;display:inline-block}details[open] .mus-accordion-summary:before{transform:rotate(90deg)}.mus-accordion-summary:hover{color:var(--color-text-secondary)}.mus-settings-content{margin-top:var(--space-xs);display:flex;flex-direction:column;gap:var(--space-xs)}.mus-controls-section{border-top:1px solid var(--color-border-subtle);padding-top:var(--space-md);margin-top:var(--space-md)}.mus-controls-summary{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text);cursor:pointer;list-style:none;display:flex;align-items:center;gap:var(--space-xs);padding:2px 0;-webkit-user-select:none;user-select:none}.mus-controls-summary::-webkit-details-marker{display:none}.mus-controls-summary:before{content:"▶";font-size:8px;color:var(--color-text-muted);transition:transform .15s;display:inline-block}details[open] .mus-controls-summary:before{transform:rotate(90deg)}.mus-controls-summary:hover{color:var(--color-text-secondary)}.mus-controls-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.mus-controls-list li{display:flex;gap:var(--space-xs);font-size:10px;line-height:1.3;color:var(--color-text-muted)}.mus-controls-list kbd{display:inline-block;padding:1px 4px;border-radius:3px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);font-family:var(--font-mono);font-size:9px;color:var(--color-text-secondary);white-space:nowrap;flex-shrink:0}.mus-control-desc{color:var(--color-text-muted)}.mus-setting-row{margin-bottom:var(--space-sm)}.mus-setting-label{display:block;font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.mus-slider-row{display:flex;align-items:center;gap:var(--space-xs)}.mus-slider{flex:1;accent-color:var(--color-primary)}.mus-slider-value{font-size:var(--font-size-xs);color:var(--color-text-muted);min-width:24px;text-align:right}.mus-pianoroll-container{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.mus-transport{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-bottom:1px solid var(--color-border);background:#0003;flex-shrink:0}.mus-transport-separator{width:1px;height:20px;background:var(--color-border);margin:0 var(--space-xs)}.mus-transport-spacer{flex:1}.mus-playback-position{font-family:Courier New,monospace;font-size:var(--font-size-sm);color:var(--color-accent);min-width:80px}.mus-zoom-slider{width:100px;accent-color:var(--color-primary)}.mus-mode-group{display:flex;gap:2px;flex-shrink:0}.mus-mode-btn{padding:3px 9px;font-size:11px;line-height:1.5;opacity:.5;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:opacity .15s,background .15s,color .15s,border-color .15s;white-space:nowrap}.mus-mode-btn:hover{opacity:.85;border-color:var(--color-border-strong, #555)}.mus-mode-btn.active{opacity:1;background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.mus-select-both-label{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--color-text-secondary);white-space:nowrap;cursor:pointer;flex-shrink:0}.mus-pianoroll-canvas{flex:1;width:100%;cursor:crosshair}.mus-minimap-canvas{width:100%;height:52px;flex-shrink:0;display:block;cursor:pointer}.mus-pianoroll-resize-handle{height:10px;cursor:row-resize;display:flex;align-items:center;justify-content:center;margin:0 0 var(--space-md) 0;background:transparent;transition:background .15s;position:relative}.mus-pianoroll-resize-handle:before{content:"";display:block;width:48px;height:4px;border-radius:2px;background:var(--color-border);transition:background .15s,width .15s}.mus-pianoroll-resize-handle:hover:before,.mus-pianoroll-resize-handle.active:before{background:var(--color-primary);width:72px}.mus-warnings-list{list-style:none;padding:0;margin:0;font-size:var(--font-size-sm);color:var(--color-warning)}.mus-warnings-list li{padding:var(--space-xs) 0;border-bottom:1px solid var(--color-border-subtle)}.mus-warnings-list li:last-child{border-bottom:none}.mus-midi-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.mus-midi-dialog{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);max-width:500px;width:90%;max-height:80vh;overflow-y:auto}.mus-midi-dialog h3{margin:0 0 var(--space-sm) 0;font-size:var(--font-size-md);color:var(--color-text)}.mus-midi-dialog p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--space-md) 0}.mus-midi-track-list{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-lg)}.mus-midi-track-row{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.mus-midi-track-row:hover{background:#ffffff0a}.mus-midi-track-row.selected{border-color:var(--color-primary);background:#8b2db41a}.mus-midi-track-info{flex:1}.mus-midi-track-name{font-weight:600;font-size:var(--font-size-sm);color:var(--color-text)}.mus-midi-track-meta{font-size:var(--font-size-xs);color:var(--color-text-muted)}.mus-midi-dialog .button-row{display:flex;gap:var(--space-sm);justify-content:flex-end}@media(max-width:900px){.mus-editor-layout{flex-direction:column;max-height:none;height:auto}.mus-sidebar{flex:0 0 auto;border-right:none;border-bottom:1px solid var(--color-border)}.mus-pianoroll-container{flex:0 0 auto;height:400px;overflow:hidden}}#panel-fxdata{max-width:1400px}.fxdata-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) 0;flex-wrap:wrap}.fxdata-toolbar-left{display:flex;align-items:baseline;gap:var(--space-md);flex-shrink:0}.fxdata-toolbar-left h2,.fxdata-toolbar-left .panel-description{margin:0}.fxdata-toolbar-right{display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap}.fxdata-editor-layout{display:flex;flex-direction:row;gap:0;height:calc(100vh - 200px);min-height:400px;overflow:hidden}.fxdata-resize-handle{flex:0 0 5px;width:5px;cursor:col-resize;background:transparent;transition:background var(--transition-fast);position:relative;z-index:10;-webkit-user-select:none;user-select:none}.fxdata-resize-handle:hover,.fxdata-resize-handle.dragging{background:#8b2db4b3;border-color:#8b2db499}.fxdata-resize-handle.fxdata-resize-vertical{flex:0 0 4px;width:100%;height:4px;cursor:row-resize;border:none;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}.fxdata-panel-left>.fxdata-resize-handle.fxdata-resize-vertical,.fxdata-panel-center>.fxdata-resize-handle.fxdata-resize-vertical{flex:0 0 0px;height:0px;margin:-3px 0;padding:3px 0;border:none;background:transparent;box-sizing:content-box;z-index:11}.fxdata-panel-left>.fxdata-resize-handle.fxdata-resize-vertical:hover,.fxdata-panel-center>.fxdata-resize-handle.fxdata-resize-vertical:hover,.fxdata-panel-left>.fxdata-resize-handle.fxdata-resize-vertical.dragging,.fxdata-panel-center>.fxdata-resize-handle.fxdata-resize-vertical.dragging{background:#8b2db4b3}.fxdata-panel{display:flex;flex-direction:column;overflow:hidden}.fxdata-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-xs) var(--space-sm);background:var(--color-bg-elevated);border-bottom:1px solid rgba(255,255,255,.06);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.fxdata-panel-left{flex:0 0 700px;width:700px;min-width:550px;max-width:800px;display:flex;flex-direction:column;gap:5px;overflow:hidden}.fxdata-entries-section{flex:1 1 60%;min-height:0;display:flex;flex-direction:column;background:var(--color-bg-surface);border:var(--glass-border);border-radius:var(--radius-md);overflow:hidden}.fxdata-project-section{flex:1 1 0;min-height:80px;display:flex;flex-direction:column;background:var(--color-bg-surface);border:var(--glass-border);border-radius:var(--radius-md);overflow:hidden}.fxdata-entries-list{flex:1;overflow-y:auto;padding:4px}.fxdata-empty-entries{padding:var(--space-lg);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.fxdata-entry-card{display:flex;align-items:center;gap:4px;padding:3px 2px 3px 0;border-radius:var(--radius-sm);border:1px solid transparent;transition:background var(--transition-fast),border-color var(--transition-fast);cursor:default;-webkit-user-select:none;user-select:none}.fxdata-entry-card:hover{background:#ffffff0a}.fxdata-entry-card.dragging{opacity:.4}.fxdata-entry-name.has-error,.fxdata-entry-value.has-error,.fxdata-entry-asset-select.has-error,.fxdata-entry-type-select.has-error{border-color:#f87171b3;background:#f8717114}.fxdata-entry-name.hover-highlight,.fxdata-entry-value.hover-highlight,.fxdata-entry-asset-select.hover-highlight{border-color:#f87171e6;background:#f871712e;outline:1px solid rgba(248,113,113,.5)}.fxdata-build-msg-linked{cursor:pointer;text-decoration:underline dotted rgba(248,113,113,.5)}.fxdata-build-msg-linked:hover{background:#ffffff1a!important;border-radius:3px}.fxdata-entry-card.drag-over{border-top-color:var(--color-primary)}.fxdata-entry-drag{cursor:grab;color:var(--color-text-muted);padding:0 4px;font-size:14px;flex-shrink:0;line-height:1}.fxdata-entry-drag:active{cursor:grabbing}.fxdata-entry-body{flex:1;display:flex;align-items:center;gap:4px;min-width:0;padding:2px 4px}.fxdata-entry-type-badge{font-size:10px;font-weight:600;padding:5px 8px;border-radius:var(--radius-md);flex-shrink:0;font-family:monospace;white-space:nowrap;border:1px solid rgba(255,255,255,.15);cursor:default;display:inline-flex;align-items:center;justify-content:center;width:115px;min-width:115px;box-sizing:border-box}.fxdata-type-data{background:#60a5fa2e;color:#60a5fa;border-color:#60a5fa59}.fxdata-type-asset{background:#34d3992e;color:#34d399;border-color:#34d39959}.fxdata-type-directive{background:#fbbf242e;color:#fbbf24;border-color:#fbbf2459}.fxdata-entry-name{width:180px;min-width:80px;flex-shrink:0;height:28px;background:#00000040;border:1px solid rgba(255,255,255,.08);border-radius:3px;color:var(--color-text);font-size:11px;font-family:monospace;padding:4px 6px;outline:none;transition:border-color var(--transition-fast);display:flex;align-items:center}.fxdata-entry-name:focus{border-color:var(--color-primary);background:#0006}.fxdata-entry-sep{color:var(--color-text-muted);font-size:14px;flex-shrink:0;text-align:center;width:12px}.fxdata-entry-value{flex:1;min-width:60px;height:28px;background:#00000040;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:11px;font-family:monospace;padding:4px 10px 4px 15px;outline:none;transition:border-color var(--transition-fast);display:flex;align-items:center}.fxdata-entry-value:focus{border-color:var(--color-primary);background:#0006;color:var(--color-text)}select.fxdata-entry-asset-select:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5'%3E%3Cpath fill='%23999' d='M0 0l4 5 4-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center}select.fxdata-entry-asset-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5'%3E%3Cpath fill='%23999' d='M0 0l4 5 4-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;padding-right:20px}select.fxdata-entry-asset-select option{background:var(--color-bg-elevated);color:var(--color-text)}.fxdata-entry-value.fxdata-asset-missing{color:#f87171}.fxdata-entry-browse{flex-shrink:0;width:28px;height:28px;aspect-ratio:1 / 1;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:14px;padding:0;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);white-space:nowrap;display:flex;align-items:center;justify-content:center}.fxdata-entry-browse:hover{background:#ffffff26;color:var(--color-text)}.fxdata-entry-delete{flex-shrink:0;width:28px;height:28px;background:#f8717114;border:1px solid rgba(248,113,113,.2);border-radius:100%;color:var(--color-danger);cursor:pointer;font-size:18px;padding:0;opacity:0;transition:opacity var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast);display:flex;align-items:center;justify-content:center;line-height:1}.fxdata-entry-card:hover .fxdata-entry-delete{opacity:.7}.fxdata-entry-delete:hover{opacity:1!important;background:#f8717126;border-color:#f8717166}.fxdata-type-dropdown{position:absolute;z-index:200;background:var(--color-bg-elevated);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);box-shadow:0 8px 24px #00000080;padding:4px;min-width:130px;max-height:340px;overflow-y:auto}.fxdata-type-group{margin-bottom:4px}.fxdata-type-group-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);padding:4px 8px 2px}.fxdata-type-dropdown button{display:block;width:100%;text-align:left;padding:4px 10px;background:none;border:none;border-radius:3px;color:var(--color-text-secondary);font-size:var(--font-size-xs);font-family:monospace;cursor:pointer;transition:background var(--transition-fast)}.fxdata-type-dropdown button:hover{background:#8b2db433;color:var(--color-text)}.fxdata-file-tree{flex:1;overflow-y:auto;padding:var(--space-xs)}.fxdata-file-item{display:flex;align-items:center;gap:var(--space-xs);padding:3px var(--space-xs);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-xs);color:var(--color-text-secondary);transition:background var(--transition-fast);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fxdata-file-item:hover{background:#ffffff0f;color:var(--color-text)}.fxdata-file-item.active{background:#8b2db433;color:var(--color-text)}.fxdata-file-item.entry-file{font-weight:600}.fxdata-file-icon{flex-shrink:0;width:8px;height:8px;min-width:8px;border-radius:2px;background:#a0a0a059}.fxdata-file-type-image{background:#34d399bf}.fxdata-file-type-binary{background:#60a5fabf}.fxdata-file-type-generic{background:#a0a0a066}.fxdata-file-name{overflow:hidden;text-overflow:ellipsis}.fxdata-file-remove{margin-left:auto;flex-shrink:0;width:20px;height:20px;background:#f8717114;border:1px solid rgba(248,113,113,.2);border-radius:100%;color:var(--color-danger);cursor:pointer;font-size:14px;padding:0;opacity:0;transition:opacity var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast);display:flex;align-items:center;justify-content:center;line-height:1}.fxdata-file-item:hover .fxdata-file-remove{opacity:.7}.fxdata-file-remove:hover{opacity:1!important;background:#f8717126;border-color:#f8717166}.fxdata-folder-section{border-radius:var(--radius-sm);margin-bottom:1px;transition:background var(--transition-fast)}.fxdata-folder-section.fxdata-drag-over{background:#8b2db426;outline:1px dashed rgba(139,45,180,.5)}.fxdata-file-tree.fxdata-root-drag-over{outline:1px dashed rgba(139,45,180,.4);outline-offset:-2px}.fxdata-folder-header{display:flex;align-items:center;gap:4px;padding:3px var(--space-xs);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-xs);color:var(--color-text-secondary);transition:background var(--transition-fast);-webkit-user-select:none;user-select:none}.fxdata-folder-header:hover{background:#ffffff0f;color:var(--color-text)}.fxdata-folder-header:hover .fxdata-file-remove{opacity:.7}.fxdata-folder-arrow{flex-shrink:0;font-size:9px;width:10px;color:var(--color-text-muted);transition:color var(--transition-fast)}.fxdata-folder-icon{flex-shrink:0;font-size:12px;line-height:1}.fxdata-folder-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:text;border-radius:2px;padding:1px 2px}.fxdata-folder-name:hover{background:#ffffff14;color:var(--color-text)}.fxdata-folder-content{padding-left:12px}.fxdata-file-item-nested{margin-bottom:0}.fxdata-inline-rename{flex:1;background:var(--color-bg-input, rgba(0, 0, 0, .3));border:1px solid rgba(139,45,180,.5);border-radius:var(--radius-sm);color:var(--color-text);font-size:var(--font-size-xs);font-family:inherit;padding:1px 4px;outline:none;min-width:0;max-width:100%}.fxdata-inline-rename:focus{border-color:#8b2db4cc;box-shadow:0 0 0 2px #8b2db433}.fxdata-dragging{opacity:.45}.fxdata-assets-actions{display:flex;align-items:center;gap:var(--space-sm);margin-left:auto}.fxdata-overwrite-label{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:400;text-transform:none;letter-spacing:normal;color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.fxdata-overwrite-label input[type=checkbox]{margin:0;cursor:pointer}.fxdata-assets-btn{background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:11px;font-weight:500;padding:2px 8px;cursor:pointer;white-space:nowrap;transition:background var(--transition-fast),border-color var(--transition-fast)}.fxdata-assets-btn:hover{background:#ffffff14;border-color:#fff3}#fxdata-btn-add-file{color:var(--color-success, #34D399);border-color:var(--color-success, #34D399)}#fxdata-btn-add-file:hover{background:#34d39926;border-color:var(--color-success, #34D399)}#fxdata-btn-add-folder{color:var(--color-warning, #FBBF24);border-color:var(--color-warning, #FBBF24)}#fxdata-btn-add-folder:hover{background:#fbbf2426;border-color:var(--color-warning, #FBBF24)}#fxdata-overwrite-toggle{accent-color:rgb(248,113,113)}.fxdata-overwrite-dialog-overlay{position:fixed;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#0000008c}.fxdata-overwrite-dialog{background:var(--color-bg);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);min-width:320px;max-width:440px;box-shadow:0 8px 32px #00000080}.fxdata-overwrite-dialog-counter{margin:0 0 var(--space-xs);font-size:11px;color:var(--color-text-muted, #999)}.fxdata-overwrite-dialog-msg{margin:0 0 var(--space-sm);font-size:14px;color:var(--color-text-secondary, #ccc);word-break:break-word}.fxdata-overwrite-dialog-check{accent-color:rgb(139,45,180);display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-muted, #999);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.fxdata-overwrite-dialog-check input[type=checkbox]{margin:0;cursor:pointer}.fxdata-overwrite-dialog-checks{display:flex;flex-direction:column;gap:8px;margin-bottom:var(--space-md)}.fxdata-overwrite-dialog-buttons{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-md)}.fxdata-overwrite-dialog-btn{padding:6px 16px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;border:1px solid rgba(255,255,255,.12);transition:background var(--transition-fast),border-color var(--transition-fast)}.fxdata-overwrite-dialog-btn-cancel{background:transparent;color:var(--color-text-secondary, #ccc)}.fxdata-overwrite-dialog-btn-cancel:hover{background:#ffffff14}.fxdata-overwrite-dialog-btn-yes{background:var(--color-primary, #8B2DB4);color:#fff;border-color:transparent}.fxdata-overwrite-dialog-btn-yes:hover{background:var(--color-primary-light, #A84DD4)}.fxdata-btn-add-folder{width:22px;height:22px;font-size:13px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;background:transparent;border:none;line-height:1;border-radius:var(--radius-sm);opacity:.8;transition:opacity var(--transition-fast),background var(--transition-fast)}.fxdata-btn-add-folder:hover{opacity:1;background:#ffffff14}.fxdata-btn-add{width:22px;height:22px;font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer}.fxdata-add-row{display:flex;align-items:center;justify-content:center;position:sticky;bottom:0;padding:10px 12px 18px;overflow:visible;z-index:1;background:transparent;transition:background .3s ease}.fxdata-add-row.stuck{background:linear-gradient(to bottom,transparent 0%,var(--color-bg-surface) 35%)}.fxdata-add-hub{display:flex;flex-direction:column;align-items:center;gap:0;position:relative;overflow:visible}.fxdata-add-chips-row{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;position:absolute;bottom:calc(100% + 14px);left:50%;width:max-content;transform:translate(-50%) translateY(10px);opacity:0;pointer-events:none;z-index:2;transition:opacity .25s ease,transform .35s cubic-bezier(.34,1.56,.64,1)}.fxdata-add-hub.open .fxdata-add-chips-row{transform:translate(-50%) translateY(0);opacity:1;pointer-events:auto}.fxdata-add-btn-row{display:flex;justify-content:center}.fxdata-add-main-btn{flex-shrink:0;width:28px;height:28px;border-radius:50%;border:2px solid rgba(139,45,180,.55);background:transparent;color:#b464dce6;font-size:0;cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;z-index:1;transition:border-color .25s ease,color .25s ease,box-shadow .25s ease,transform .25s ease}.fxdata-add-main-btn:hover{border-color:#b450dcd9;color:#c882f0;box-shadow:0 0 18px #8b2db459,0 0 6px #8b2db433 inset;transform:scale(1.06)}.fxdata-add-main-btn:active{transform:scale(.95)}.fxdata-add-plus{font-size:26px;display:block;transition:transform .35s cubic-bezier(.34,1.56,.64,1);font-weight:300;color:inherit}.fxdata-add-hub.open .fxdata-add-plus{transform:rotate(45deg)}.fxdata-add-flyout-chip{padding:5px 8px;height:28px;width:80px;box-sizing:border-box;white-space:nowrap;border-radius:var(--radius-md);font-size:10px;font-weight:600;font-family:monospace;cursor:pointer;border:1px solid transparent;background:transparent;display:inline-flex;align-items:center;justify-content:center;opacity:0;transform:scale(.55);pointer-events:none;transition:opacity .25s ease,transform .35s cubic-bezier(.34,1.56,.64,1),background .15s ease,border-color .15s ease}.fxdata-add-hub.open .fxdata-add-flyout-chip{opacity:1;transform:scale(1);pointer-events:auto}.fxdata-add-hub.open .fxdata-add-flyout-chip:nth-child(3){transition-delay:0s}.fxdata-add-hub.open .fxdata-add-flyout-chip:nth-child(2){transition-delay:.05s}.fxdata-add-hub.open .fxdata-add-flyout-chip:nth-child(4){transition-delay:.05s}.fxdata-add-hub.open .fxdata-add-flyout-chip:nth-child(1){transition-delay:.1s}.fxdata-add-hub.open .fxdata-add-flyout-chip:nth-child(5){transition-delay:.1s}.fxdata-add-hub:not(.open) .fxdata-add-flyout-chip{transition-delay:0s!important}.fxdata-add-flyout-chip.fxdata-type-data{background:#60a5fa2e;color:#60a5fa;border-color:#60a5fa59}.fxdata-add-flyout-chip.fxdata-type-data:hover{background:#60a5fa47;border-color:#60a5fa80}.fxdata-add-flyout-chip.fxdata-type-asset{background:#34d3992e;color:#34d399;border-color:#34d39959}.fxdata-add-flyout-chip.fxdata-type-asset:hover{background:#34d39947;border-color:#34d39980}.fxdata-add-flyout-chip.fxdata-type-directive{color:#fbbf24;border-color:#fbbf2459;background:#fbbf242e}.fxdata-add-flyout-chip.fxdata-type-directive:hover{background:#fbbf2447;border-color:#fbbf2480}.fxdata-chip-flying{position:fixed!important;z-index:9999!important;pointer-events:none!important;margin:0!important}.fxdata-entry-placeholder{min-height:36px;margin:1px 2px}@keyframes fxdata-placeholder-in{0%{opacity:0;transform:scaleY(.2);transform-origin:top center}to{opacity:1;transform:scaleY(1)}}@keyframes fxdata-placeholder-pulse{0%,to{border-color:#8b2db433;background:#8b2db40a}50%{border-color:#8b2db48c;background:#8b2db41a}}.fxdata-entry-type-select{font-size:10px;font-weight:600;padding:5px 22px 5px 8px;border-radius:var(--radius-md);flex-shrink:0;font-family:monospace;white-space:nowrap;border:1px solid rgba(255,255,255,.15);outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:115px;min-width:115px;box-sizing:border-box;height:28px;text-align:left;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5'%3E%3Cpath d='M0 0 L4 5 L8 0Z' fill='%23aaaaaa'/%3E%3C/svg%3E");background-position:right 7px center;background-repeat:no-repeat;background-size:8px 5px;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.fxdata-entry-type-select.fxdata-type-data{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5'%3E%3Cpath d='M0 0 L4 5 L8 0Z' fill='%2360a5fa'/%3E%3C/svg%3E")}.fxdata-entry-type-select.fxdata-type-directive{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5'%3E%3Cpath d='M0 0 L4 5 L8 0Z' fill='%23fbbf24'/%3E%3C/svg%3E")}.fxdata-entry-type-select:hover{background-color:#ffffff14}.fxdata-entry-type-select:focus{border-color:#8b2db480;outline:1px solid rgba(139,45,180,.3)}.fxdata-empty-tree,.fxdata-empty-structured,.fxdata-empty-preview,.fxdata-empty-map,.fxdata-empty-output{padding:var(--space-md);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.fxdata-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-xs)}.fxdata-editor-tabs{display:flex;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.fxdata-editor-tab{padding:var(--space-xs) var(--space-md);background:none;border:none;border-bottom:2px solid transparent;color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.fxdata-editor-tab:hover{color:var(--color-text-secondary);background:#ffffff08}.fxdata-editor-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.fxdata-editor-pane{display:none;flex:1;overflow:hidden}.fxdata-editor-pane.active{display:flex;flex-direction:column}.fxdata-source-header{display:flex;align-items:center;gap:var(--space-xs);padding:2px var(--space-sm);background:#0003;font-size:var(--font-size-xs);color:var(--color-text-muted);flex-shrink:0}.fxdata-source-filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fxdata-dirty{color:var(--color-warning);font-weight:700}.fxdata-source-textarea{flex:1;width:100%;border:none;outline:none;resize:none;padding:var(--space-sm);background:#0000004d;color:var(--color-text);font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;line-height:1.5;-moz-tab-size:4;tab-size:4;white-space:pre;overflow:auto}.fxdata-source-textarea::placeholder{color:var(--color-text-muted);opacity:.5}.fxdata-structured-list{flex:1;overflow-y:auto;padding:var(--space-xs)}.fxdata-struct-entry{background:var(--color-bg-card);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-sm);padding:var(--space-sm);margin-bottom:var(--space-xs);cursor:pointer;transition:border-color var(--transition-fast)}.fxdata-struct-entry:hover{border-color:#8b2db44d}.fxdata-struct-entry.active{border-color:var(--color-primary)}.fxdata-struct-entry.hover,.fxdata-struct-entry.hover-active{background:#8b2db426;border-color:#8b2db480}.fxdata-struct-header{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-size-sm)}.fxdata-struct-type{text-align:center;padding:1px 6px;border-radius:3px;font-size:var(--font-size-xs);font-weight:600;flex-shrink:0;width:50px}.fxdata-struct-name{font-weight:600;color:var(--color-text)}.fxdata-struct-offset{margin-left:auto;font-size:var(--font-size-xs);color:var(--color-text-muted);font-family:monospace}.fxdata-struct-details{margin-top:var(--space-xs);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.fxdata-struct-img-preview{margin-top:var(--space-xs);max-width:100%;image-rendering:pixelated;border:1px solid rgba(255,255,255,.1)}.fxdata-asset-preview h4{flex-shrink:0}.fxdata-preview-img{image-rendering:pixelated;max-width:100%;border:1px solid rgba(255,255,255,.1);background:#000;display:block;margin:auto}.fxdata-preview-info{margin-top:var(--space-sm);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.fxdata-data-preview-card{display:flex;align-self:stretch;flex-direction:column;gap:var(--space-xs);margin-top:var(--space-sm)}.fxdata-data-field{display:flex;align-items:baseline;gap:var(--space-sm);background:var(--color-bg-card);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-sm);justify-content:space-between}.fxdata-data-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;min-width:48px}.fxdata-data-value{font-size:var(--font-size-sm);color:var(--color-text);word-break:break-all}.fxdata-data-value-mono{font-family:Consolas,Monaco,Courier New,monospace}.fxdata-preview-hex{margin-top:var(--space-sm);font-family:monospace;font-size:11px;line-height:1.4;color:var(--color-text-muted);background:#0000004d;padding:var(--space-xs);border-radius:var(--radius-sm);max-height:200px;overflow-y:auto;word-break:break-all}.fxdata-memory-map{flex:1;overflow-y:auto;padding:var(--space-xs)}.fxdata-map-entry{display:flex;align-items:center;gap:var(--space-xs);padding:3px var(--space-xs);border-radius:3px;font-size:var(--font-size-xs);cursor:pointer;transition:background var(--transition-fast)}.fxdata-map-entry:hover{background:#ffffff0f}.fxdata-map-bar{height:10px;border-radius:2px;flex-shrink:0}.fxdata-map-bar.type-image{background:#34d399}.fxdata-map-bar.type-data{background:#60a5fa}.fxdata-map-bar.type-raw{background:#34d399}.fxdata-map-bar.type-string{background:#60a5fa}.fxdata-map-bar.type-align,.fxdata-map-bar.type-save{background:#fbbf24}.fxdata-map-name{color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.fxdata-map-size{color:var(--color-text-muted);font-family:monospace;flex-shrink:0}.fxdata-map-bar-container{position:relative;display:flex;flex-direction:column;gap:0;padding:var(--space-xs);height:100%;justify-content:flex-end}.fxdata-map-bar-track{position:relative;display:flex;height:28px;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);overflow:visible}.fxdata-map-bar-segment{flex-grow:1;min-width:1px;cursor:pointer;transition:filter var(--transition-fast),opacity var(--transition-fast);border-right:1px solid rgba(0,0,0,.2);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.fxdata-map-bar-segment:last-child{border-right:none}.fxdata-map-bar-segment:hover{filter:brightness(1.2);z-index:10}.fxdata-map-bar-segment.active{filter:brightness(1.3) drop-shadow(0 0 4px rgba(139,45,180,.6));z-index:20}.fxdata-map-bar-segment.type-image{background:#34d399}.fxdata-map-bar-segment.type-data{background:#60a5fa}.fxdata-map-bar-segment.type-raw{background:#34d399}.fxdata-map-bar-segment.type-string{background:#60a5fa}.fxdata-map-bar-segment.type-align,.fxdata-map-bar-segment.type-save,.fxdata-map-bar-segment.type-datasection{background:#fbbf24}.fxdata-map-label{padding:0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--font-size-xs);color:#ffffffe6;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.5);line-height:1}.fxdata-memory-summary{padding:var(--space-xs) var(--space-sm);border-top:1px solid rgba(255,255,255,.06);font-size:var(--font-size-xs);color:var(--color-text-secondary);background:var(--color-bg-elevated);flex-shrink:0}.fxdata-memory-summary dl{display:grid;grid-template-columns:auto 1fr;gap:2px var(--space-sm);margin:0}.fxdata-memory-summary dt{color:var(--color-text-muted)}.fxdata-memory-summary dd{margin:0;font-family:monospace;text-align:right}.fxdata-build-output{flex:1;overflow-y:auto;padding:var(--space-xs);font-size:var(--font-size-xs)}.fxdata-build-msg{padding:2px var(--space-xs);border-radius:3px;margin-bottom:2px;font-family:monospace;font-size:11px;line-height:1.4}.fxdata-build-msg.error{color:var(--color-danger);background:#f871711a}.fxdata-build-msg.warning{color:var(--color-warning);background:#fbbf241a}.fxdata-build-msg.info{color:var(--color-info)}.fxdata-build-msg.success{color:var(--color-success);background:#34d3991a}.fxdata-settings-bar{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);flex:1;overflow-y:auto}.fxdata-setting{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.fxdata-slider{width:120px;accent-color:var(--color-primary)}.fxdata-slider-value{min-width:28px;text-align:center;font-family:monospace;font-size:var(--font-size-xs)}.fxdata-image-controls{flex:0 0 auto;border-top:1px solid rgba(255,255,255,.06);padding:var(--space-xs) var(--space-sm);display:flex;flex-direction:column;gap:4px}.fxdata-image-controls-row{display:flex;align-items:center;gap:var(--space-sm)}.fxdata-global-note{font-size:9px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;opacity:.7}.fxdata-override-toggle{cursor:pointer;-webkit-user-select:none;user-select:none}.fxdata-checkbox{accent-color:var(--color-primary);margin:0}.fxdata-sprite-override-fields{display:flex;align-items:center;gap:var(--space-sm);padding-left:18px}.fxdata-sprite-input{width:52px;height:22px;background:#00000040;border:1px solid rgba(255,255,255,.08);border-radius:3px;color:var(--color-text);font-size:11px;font-family:monospace;padding:2px 4px;outline:none;text-align:center}.fxdata-sprite-input::-webkit-outer-spin-button,.fxdata-sprite-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.fxdata-sprite-input[type=number]{-moz-appearance:textfield}.fxdata-sprite-input:focus{border-color:var(--color-primary);background:#0006}.fxdata-frames-view{max-height:160px;overflow-y:auto;display:flex;flex-wrap:wrap;gap:4px;padding:4px 0}.fxdata-frame-cell{border:1px solid rgba(255,255,255,.1);background:#000;image-rendering:pixelated}.fxdata-frames-info{font-size:10px;color:var(--color-text-muted);padding:2px 0;width:100%}.fxdata-file-name.fxdata-name-overridden,.fxdata-entry-value.fxdata-name-overridden{color:#fbbf24}.fxdata-checkbox:checked{accent-color:#fbbf24}.fxdata-page-marker{border-top:1px dashed rgba(255,255,255,.15);font-size:9px;color:var(--color-text-muted);padding:1px var(--space-xs);margin:2px 0}.fxdata-panel-center{flex:1 1 0;min-width:200px;display:flex;flex-direction:column;gap:5px;overflow:hidden}.fxdata-panel-right{flex:0 0 300px;width:300px;min-width:180px;max-width:600px;display:flex;flex-direction:column;gap:5px;overflow:hidden}@keyframes fxdata-download-reveal{0%{opacity:0;transform:translateY(-6px) scaleY(.85)}60%{opacity:1;transform:translateY(2px) scaleY(1.02)}to{opacity:1;transform:translateY(0) scaleY(1)}}@keyframes fxdata-download-flash{0%{box-shadow:inset 0 0 #34d39900;background:var(--color-bg-surface)}25%{box-shadow:inset 0 0 0 2px #34d399bf;background:#34d3991f}to{box-shadow:inset 0 0 #34d39900;background:var(--color-bg-surface)}}.fxdata-download-container{flex:0 0 auto;display:flex;flex-direction:column;background:var(--color-bg-surface);border:var(--glass-border);border-radius:var(--radius-md);overflow:hidden;transform-origin:top center}.fxdata-download-container.revealing{animation:fxdata-download-reveal .35s cubic-bezier(.34,1.56,.64,1) both}.fxdata-download-container.flash{animation:fxdata-download-flash .6s ease-out both}.fxdata-content-container{flex:1 1 0;min-height:0;display:flex;flex-direction:column;background:var(--color-bg-surface);border:var(--glass-border);border-radius:var(--radius-md);overflow:hidden}.fxdata-center-preview-section{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--color-bg-surface);border:var(--glass-border);border-radius:var(--radius-md)}.fxdata-center-preview-section .fxdata-panel-header{flex-shrink:0}.fxdata-asset-preview{flex:1;overflow-y:auto;padding:var(--space-sm);display:flex;flex-direction:column;align-items:stretch}.fxdata-preview-hex-accordion{flex:0 0 auto;display:flex;flex-direction:column;border-top:1px solid rgba(255,255,255,.06)}.fxdata-preview-hex-accordion.fxdata-accordion-hidden{display:none}.fxdata-hex-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:2px var(--space-sm);background:#0003;border:none;color:var(--color-text-muted);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast);-webkit-user-select:none;user-select:none}.fxdata-hex-toggle:hover{background:#0000004d;color:var(--color-text-secondary)}.fxdata-preview-hex-body{display:none;max-height:120px;overflow-y:auto;padding:var(--space-xs);font-family:monospace;font-size:11px;line-height:1.4;color:var(--color-text-muted);background:#0000004d;word-break:break-all}.fxdata-preview-hex-body.open{display:block}.fxdata-tabbed-section{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.fxdata-tab-bar{display:flex;gap:0;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.06)}.fxdata-tab{flex:1;padding:4px var(--space-sm);background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-text-muted);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast);-webkit-user-select:none;user-select:none}.fxdata-tab:hover{color:var(--color-text-secondary)}.fxdata-tab.active{color:var(--color-text);border-bottom-color:var(--color-primary)}.fxdata-tab-content{display:none;flex:1;min-height:0;flex-direction:column;overflow:hidden}.fxdata-tab-content.active{display:flex}.fxdata-tab-content .fxdata-source-textarea{flex:1;min-height:0}.fxdata-tab-content .fxdata-structured-list{flex:1 1 auto;min-height:60px;overflow-y:auto}.fxdata-tab-content .fxdata-map-subheader{flex:0 0 auto}.fxdata-tab-content .fxdata-memory-map{flex:0 0 auto;max-height:120px}.fxdata-combined-section .fxdata-memory-summary{flex:0 0 auto}.fxdata-map-subheader{padding:3px var(--space-sm);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);background:var(--color-bg-elevated);border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.fxdata-build-accordion{flex:0 0 auto;display:flex;flex-direction:column;overflow:hidden}.fxdata-accordion-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-xs) var(--space-sm);background:var(--color-bg-elevated);border:none;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast);-webkit-user-select:none;user-select:none}.fxdata-accordion-toggle:hover{background:#ffffff0a;color:var(--color-text)}.fxdata-accordion-toggle.has-errors{color:var(--color-danger)}.fxdata-accordion-arrow{font-size:10px;transition:transform var(--transition-fast);flex-shrink:0}.fxdata-accordion-toggle[aria-expanded=true] .fxdata-accordion-arrow{transform:rotate(180deg)}.fxdata-accordion-body{display:none;max-height:240px;overflow-y:auto;padding:var(--space-xs);font-size:var(--font-size-xs)}.fxdata-accordion-body.open{display:block}.fxdata-build-actions{display:flex;gap:var(--space-xs);padding:var(--space-sm) var(--space-sm);border-bottom:1px solid rgba(255,255,255,.06);background:var(--color-bg-elevated);flex-wrap:wrap;flex-shrink:0;justify-content:center}.fxdata-mobile-resize-handle{display:none;height:10px;width:100%;cursor:row-resize;align-items:center;justify-content:center;background:transparent;transition:background .15s;flex-shrink:0}.fxdata-mobile-resize-handle:before{content:"";display:block;width:48px;height:4px;border-radius:2px;background:var(--color-border);transition:background .15s,width .15s}.fxdata-mobile-resize-handle:hover:before,.fxdata-mobile-resize-handle.active:before{background:var(--color-primary);width:72px}@media(max-width:900px){.fxdata-editor-layout{flex-direction:column;height:auto;overflow:visible;gap:5px}.fxdata-editor-layout>.fxdata-resize-handle{display:none}.fxdata-panel-left,.fxdata-panel-right{display:contents}.fxdata-panel-center{flex:0 0 auto;width:100%!important;max-height:none;min-height:300px;order:30}.fxdata-download-container{order:1;width:100%}.fxdata-entries-section{order:10;flex:0 0 auto;width:100%;max-height:400px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface)}.fxdata-panel-left>.fxdata-resize-handle.fxdata-resize-vertical{display:flex;order:11;width:100%;height:10px;flex:0 0 10px;margin:0;padding:0;align-items:center;justify-content:center;cursor:row-resize}.fxdata-panel-left>.fxdata-resize-handle.fxdata-resize-vertical:before{content:"";display:block;width:48px;height:4px;border-radius:2px;background:var(--color-border);transition:background .15s,width .15s}.fxdata-panel-left>.fxdata-resize-handle.fxdata-resize-vertical:hover:before,.fxdata-panel-left>.fxdata-resize-handle.fxdata-resize-vertical.dragging:before{background:var(--color-primary);width:72px}.fxdata-project-section{order:20;flex:0 0 auto;width:100%;max-height:300px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface)}.fxdata-center-preview-section{flex:1;min-height:0}.fxdata-content-container{order:40;flex:0 0 auto;height:400px;width:100%;overflow:hidden}.fxdata-mobile-resize-handle{display:flex}.fxdata-mobile-resize-handle[data-target=fxdata-project-section]{order:22}.fxdata-mobile-resize-handle[data-target=fxdata-preview-section]{order:32}.fxdata-mobile-resize-handle[data-target=fxdata-content-container]{order:41}}
