:root{--bg-color:#070a13;--bg-gradient:radial-gradient(circle at 50% 50%, #111827 0%, #030712 100%);--glass-bg:#0f172a8c;--glass-border:#ffffff12;--glass-highlight:#ffffff1f;--primary:#8b5cf6;--primary-glow:#8b5cf659;--secondary:#ec4899;--accent:#06b6d4;--accent-glow:#06b6d440;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--success:#10b981;--warning:#f59e0b;--error:#ef4444;--font-sans:"Outfit", "Noto Sans SC", system-ui, -apple-system, sans-serif;--transition-smooth:all .2s cubic-bezier(.4, 0, .2, 1);--border-radius-lg:16px;--border-radius-md:10px;--border-radius-sm:6px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg-color);background-image:var(--bg-gradient);color:var(--text-primary);-webkit-font-smoothing:antialiased;justify-content:center;align-items:center;width:100vw;height:100vh;line-height:1.5;display:flex;overflow:hidden}#app{flex-direction:column;gap:16px;width:100%;max-width:1720px;height:100%;padding:20px;display:flex}.app-header{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:flex-end;padding-bottom:12px;display:flex}.logo-area{align-items:center;gap:10px;display:flex}.logo-icon{filter:drop-shadow(0 0 10px var(--primary-glow));font-size:26px}.app-header h1{letter-spacing:-.5px;background:linear-gradient(135deg, #fff 30%, var(--primary) 70%, var(--secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;align-items:center;gap:8px;font-size:22px;font-weight:700;display:flex}.badge{color:#c084fc;letter-spacing:.5px;background:#8b5cf626;border:1px solid #8b5cf64d;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:600}.subtitle{color:var(--text-secondary);font-size:13px;font-weight:300}.app-container{flex:1;grid-template-columns:1fr 380px;gap:18px;min-height:0;display:grid}.panel{border-radius:var(--border-radius-lg);flex-direction:column;height:100%;display:flex;overflow:hidden}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);transition:var(--transition-smooth);box-shadow:0 10px 30px #0000004d}.glass-panel:hover{border-color:#ffffff1a;box-shadow:0 12px 40px #0006}.panel-header{border-bottom:1px solid var(--glass-border);background:#ffffff05;align-items:center;gap:10px;padding:16px 20px;display:flex}.panel-icon{font-size:18px}.panel-header h2{letter-spacing:.2px;color:var(--text-primary);font-size:15px;font-weight:600}.panel-body{flex-direction:column;flex:1;gap:20px;min-height:0;padding:20px;display:flex;overflow-y:auto}.panel-desc{color:var(--text-secondary);font-size:13px;line-height:1.6}.control-group{flex-direction:column;gap:10px;display:flex}.control-group label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);font-size:12px;font-weight:600}.mode-select-grid{grid-template-columns:1fr;gap:10px;display:grid}.mode-btn{border:1px solid var(--glass-border);border-radius:var(--border-radius-md);color:var(--text-secondary);cursor:pointer;text-align:left;transition:var(--transition-smooth);background:#ffffff08;align-items:center;gap:12px;padding:12px 14px;display:flex}.mode-btn:hover{background:#ffffff0f;border-color:#ffffff26;transform:translateY(-1px)}.mode-btn.active{border-color:var(--primary);color:var(--text-primary);background:linear-gradient(135deg,#8b5cf61f 0%,#ec489914 100%);box-shadow:0 4px 15px #8b5cf626}.btn-emoji{font-size:20px}.btn-text{flex-direction:column;display:flex}.btn-text strong{font-size:13px;font-weight:600}.btn-text span{color:var(--text-muted);font-size:11px}.style-select-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.style-btn{border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);background:#ffffff08;padding:8px;font-size:12px;font-weight:500}.style-btn:hover{background:#ffffff0f;border-color:#ffffff26}.style-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 4px 12px var(--primary-glow)}.prompt-box{border:1px solid var(--glass-border);border-radius:var(--border-radius-md);background:#00000040;flex-direction:column;display:flex;overflow:hidden}.prompt-box-header{border-bottom:1px solid var(--glass-border);color:var(--text-secondary);background:#ffffff05;justify-content:space-between;align-items:center;padding:8px 12px;font-size:11px;display:flex}.action-btn{border:1px solid var(--glass-border);color:var(--text-primary);border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition-smooth);background:#ffffff0d;align-items:center;gap:6px;padding:5px 10px;font-size:11px;font-weight:500;display:flex}.action-btn:hover:not(:disabled){background:#ffffff1a;border-color:#fff3}.action-btn:active:not(:disabled){transform:scale(.95)}.action-btn:disabled{opacity:.3;cursor:not-allowed}.danger-btn{color:#f87171;border-color:#ef444433}.danger-btn:hover:not(:disabled){background:#ef44441a;border-color:#ef444466}#prompt-textarea{width:100%;height:120px;color:var(--accent);resize:none;background:0 0;border:none;outline:none;padding:12px;font-family:monospace;font-size:12px;line-height:1.6}.prompt-tips{border-radius:var(--border-radius-md);background:#06b6d40a;border:1px solid #06b6d426;padding:12px 14px}.prompt-tips strong{color:var(--accent);margin-bottom:6px;font-size:12px;display:block}.prompt-tips ul{flex-direction:column;gap:6px;list-style-type:none;display:flex}.prompt-tips li{color:var(--text-secondary);padding-left:12px;font-size:11px;position:relative}.prompt-tips li:before{content:"•";color:var(--accent);position:absolute;top:0;left:0}.center-panel{flex-direction:column;display:flex}.drop-zone{border-radius:var(--border-radius-lg);cursor:pointer;transition:var(--transition-smooth);background:#ffffff03;border:2px dashed #ffffff26;flex:1;justify-content:center;align-items:center;margin:20px;display:flex}.drop-zone:hover,.drop-zone.dragover{border-color:var(--primary);background:#8b5cf608}.drop-content{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.upload-icon{color:var(--text-muted);filter:drop-shadow(0 0 10px #ffffff0d);transition:var(--transition-smooth)}.drop-zone:hover .upload-icon{color:var(--primary);transform:translateY(-4px)}.drop-content h3{color:var(--text-primary);font-size:16px;font-weight:600}.drop-content p{color:var(--text-secondary);font-size:12px}.divider{color:var(--text-muted);width:100px;font-size:11px;position:relative}.divider:before,.divider:after{content:"";background:#ffffff14;width:30px;height:1px;position:absolute;top:50%}.divider:before{left:0}.divider:after{right:0}.upload-btn{background:var(--primary);color:#fff;border-radius:var(--border-radius-md);cursor:pointer;box-shadow:0 4px 12px var(--primary-glow);transition:var(--transition-smooth);border:none;padding:10px 20px;font-size:13px;font-weight:600}.upload-btn:hover{background:#7c3aed;box-shadow:0 6px 16px #8b5cf666}.workspace{flex-direction:column;flex:1;display:flex;overflow:hidden}.workspace-top-bar{justify-content:space-between;align-items:center;padding:12px 20px 0;display:flex}.history-controls{gap:8px;display:flex}.canvas-wrapper{border-radius:var(--border-radius-lg);background-color:#1e293b;background-image:linear-gradient(45deg,#00000026 25%,#0000 25%),linear-gradient(-45deg,#00000026 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#00000026 75%),linear-gradient(-45deg,#0000 75%,#00000026 75%);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;border:1px solid #ffffff0d;flex:1;justify-content:center;align-items:center;min-height:0;margin:16px 20px;display:flex;position:relative;overflow:hidden}.canvas-container{border-radius:4px;flex-shrink:0;margin:44px auto;position:relative}.canvas-container canvas{image-rendering:pixelated;object-fit:contain;width:100%;height:100%;transition:filter .2s;position:absolute;top:0;left:0}#main-canvas{z-index:1}#grid-canvas{z-index:2;pointer-events:none}.brush-preview{pointer-events:none;z-index:10;border:1.5px solid #fff;border-radius:50%;display:none;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 6px #00000080,inset 0 0 4px #00000080}.canvas-wrapper.picker-active canvas{cursor:crosshair!important}.canvas-wrapper.eraser-active canvas{cursor:none!important}.workspace-controls{grid-template-columns:1fr 1fr;gap:16px;padding:0 20px 20px;display:grid}.control-card{border:1px solid var(--glass-border);border-radius:var(--border-radius-md);background:#ffffff05;flex-direction:column;gap:12px;padding:16px;display:flex}.control-card h3{color:var(--text-primary);border-bottom:1px solid #ffffff0d;align-items:center;gap:8px;padding-bottom:6px;font-size:13px;font-weight:600;display:flex}.card-icon{font-size:14px}.tool-selection-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.picker-btn{border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:var(--text-primary);cursor:pointer;transition:var(--transition-smooth);background:#ffffff0a;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:flex}.picker-btn:hover{background:#ffffff14;border-color:#fff3}.picker-btn.active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 0 10px var(--accent-glow)}.selected-color-preview-row{color:var(--text-secondary);border-radius:var(--border-radius-sm);background:#00000026;border:1px solid #ffffff05;align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:flex}.color-block{background:0 0;border:1px solid #fff3;border-radius:4px;width:20px;height:20px;box-shadow:0 0 8px #0000004d}#color-rgb-text{color:var(--text-primary);font-family:monospace;font-size:11px}.tool-sub-controls{flex-direction:column;gap:10px;animation:.2s ease-out fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.slider-group{flex-direction:column;gap:6px;display:flex}.slider-header{color:var(--text-secondary);justify-content:space-between;font-size:11px;display:flex}input[type=range]{-webkit-appearance:none;background:#334155;border-radius:3px;outline:none;width:100%;height:6px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--primary);cursor:pointer;width:14px;height:14px;transition:var(--transition-smooth);box-shadow:0 0 8px var(--primary-glow);border-radius:50%}input[type=range]::-webkit-slider-thumb:hover{background:var(--secondary);transform:scale(1.2)}.grid-inputs-row{align-items:flex-end;gap:12px;display:flex}.number-input-group{flex-direction:column;flex:1;gap:6px;display:flex}.number-input-group label{color:var(--text-secondary);font-size:10px;font-weight:500}.number-input-group input{border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:var(--text-primary);width:100%;transition:var(--transition-smooth);background:#0003;outline:none;padding:8px;font-size:12px}.number-input-group input:focus{border-color:var(--primary);box-shadow:0 0 8px var(--primary-glow)}.info-tag{border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:var(--accent);background:#ffffff08;padding:8px 10px;font-family:monospace;font-size:11px}.collapsible-section{flex-direction:column;gap:8px;display:flex}#advanced-grid-toggle{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:var(--transition-smooth);font-size:11px}#advanced-grid-toggle:hover{color:var(--text-primary)}.advanced-grid-grid{border-radius:var(--border-radius-sm);background:#0000001a;border:1px solid #ffffff05;grid-template-columns:1fr 1fr;gap:8px;padding:10px;display:grid}.right-panel .panel-body{gap:16px}.preview-box{border:1px solid var(--glass-border);border-radius:var(--border-radius-md);background:#0003;flex-direction:column;gap:12px;padding:16px;display:flex}.preview-header{justify-content:space-between;align-items:center;font-size:13px;font-weight:600;display:flex}.live-badge{color:#f87171;letter-spacing:.5px;background:#ef444426;border:1px solid #ef444466;border-radius:3px;padding:1px 5px;font-size:9px;font-weight:700;animation:1.5s infinite blink}@keyframes blink{0%{opacity:1}50%{opacity:.3}to{opacity:1}}.preview-viewport-wrapper{border-radius:var(--border-radius-md);background-color:#1e293b;background-image:linear-gradient(45deg,#00000026 25%,#0000 25%),linear-gradient(-45deg,#00000026 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#00000026 75%),linear-gradient(-45deg,#0000 75%,#00000026 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;border:1px solid #ffffff08;justify-content:center;align-items:center;height:220px;padding:12px;display:flex}.preview-viewport{justify-content:center;align-items:center;width:192px;height:208px;display:flex;position:relative}.preview-viewport canvas{image-rendering:pixelated;object-fit:contain;width:100%;height:100%}.preview-controls-row{grid-template-columns:140px 1fr;align-items:flex-end;gap:12px;display:grid}.preview-control-item{flex-direction:column;gap:6px;display:flex}.preview-control-item label{color:var(--text-secondary);font-size:10px}.preview-control-item select{border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:var(--text-primary);cursor:pointer;background:#0003;outline:none;padding:6px;font-size:11px}.slider-header-mini{color:var(--text-secondary);justify-content:space-between;font-size:10px;display:flex}.frame-tuning-box{border:1px solid var(--glass-border);border-radius:var(--border-radius-md);background:#00000026;flex-direction:column;gap:10px;padding:14px;display:flex}.tuning-interface{justify-content:space-between;align-items:center;gap:10px;display:flex}.tuning-select-group{flex-direction:column;gap:6px;width:95px;display:flex}.tuning-select-group label{color:var(--text-secondary);font-size:10px}.tuning-select-group select{border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:var(--text-primary);background:#00000040;outline:none;padding:6px;font-size:11px}.d-pad-wrapper{justify-content:center;align-items:center;display:flex}.d-pad{width:72px;height:72px;position:relative}.d-pad-btn{border:1px solid var(--glass-border);color:var(--text-primary);cursor:pointer;width:24px;height:24px;transition:var(--transition-smooth);background:#ffffff0a;border-radius:4px;justify-content:center;align-items:center;font-size:10px;display:flex;position:absolute}.d-pad-btn:hover{background:var(--accent);border-color:var(--accent);box-shadow:0 0 8px var(--accent-glow);color:#fff}.d-pad-btn:active{transform:scale(.9)}.d-pad-btn.up{top:0;left:24px}.d-pad-btn.down{bottom:0;left:24px}.d-pad-btn.left{top:24px;left:0}.d-pad-btn.right{top:24px;right:0}.d-pad-center{background:#ffffff05;border:1px solid #ffffff05;width:24px;height:24px;position:absolute;top:24px;left:24px}.tuning-status-group{flex-direction:column;align-items:flex-end;gap:8px;display:flex}#tune-status-text{color:var(--accent);font-family:monospace;font-size:11px;font-weight:600}.smart-align-btn{background:linear-gradient(135deg, var(--primary) 0%, var(--secondary) 50%, var(--accent) 100%);color:#fff;border-radius:var(--border-radius-md);cursor:pointer;box-shadow:0 4px 15px var(--primary-glow);transition:var(--transition-smooth);letter-spacing:.5px;border:none;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:10px;padding:10px 14px;font-size:12px;font-weight:600;display:flex}.smart-align-btn:hover:not(:disabled){transform:translateY(-1.5px);box-shadow:0 6px 20px #8b5cf680,0 0 10px #06b6d466}.smart-align-btn:active:not(:disabled){transform:scale(.97)}.smart-align-btn:disabled{opacity:.4;cursor:not-allowed}.export-card{border-radius:var(--border-radius-md);background:linear-gradient(135deg,#8b5cf614 0%,#06b6d40a 100%);border:1px solid #8b5cf633;flex-direction:column;gap:12px;padding:16px;display:flex}.export-card h3{color:#c084fc;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.export-desc{color:var(--text-secondary);font-size:11px;line-height:1.5}.export-format-settings{border-radius:var(--border-radius-sm);background:#00000026;border:1px solid #ffffff05;align-items:flex-end;gap:10px;padding:10px;display:flex}.info-tag-mini{color:var(--accent);background:#ffffff05;border-radius:4px;padding:8px;font-family:monospace;font-size:11px}.export-actions{flex-direction:column;gap:10px;display:flex}.export-btn{border-radius:var(--border-radius-md);cursor:pointer;transition:var(--transition-smooth);border:none;align-items:center;gap:12px;width:100%;padding:12px;display:flex}.primary-export{background:var(--primary);color:#fff;box-shadow:0 4px 15px var(--primary-glow)}.primary-export:hover:not(:disabled){background:#7c3aed;transform:translateY(-1px);box-shadow:0 6px 20px #8b5cf673}.secondary-export{border:1px solid var(--glass-border);color:var(--text-primary);background:#ffffff0d}.secondary-export:hover:not(:disabled){background:#ffffff1a;border-color:#fff3;transform:translateY(-1px)}.frame-export{color:#e0f2fe;background:#0ea5e921;border:1px solid #38bdf859}.frame-export:hover:not(:disabled){background:#0ea5e933;border-color:#7dd3fcb3;transform:translateY(-1px)}.export-btn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none!important;transform:none!important}.export-btn-text{text-align:left;flex-direction:column;align-items:flex-start;display:flex}.export-btn-text strong{font-size:12px;font-weight:600}.export-btn-text span{opacity:.7;font-size:9px}.instructions-card{border-radius:var(--border-radius-md);background:#ffffff03;border:1px solid #ffffff08;padding:14px}.instructions-card h3{color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:8px;font-size:12px;font-weight:600;display:flex}.instructions-card ol{flex-direction:column;gap:6px;padding-left:14px;display:flex}.instructions-card li{color:var(--text-secondary);font-size:10px;line-height:1.5}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}.api-config-card{border:1px solid var(--glass-border);border-radius:var(--border-radius-md);transition:var(--transition-smooth);background:#ffffff05;flex-direction:column;gap:10px;padding:12px;display:flex}.api-config-card h3{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:var(--transition-smooth);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.api-config-card h3:hover{color:var(--text-primary)}.api-config-fields{flex-direction:column;gap:8px;margin-top:4px;animation:.25s cubic-bezier(.4,0,.2,1) forwards slideDown;display:flex}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.field-group{flex-direction:column;gap:4px;display:flex}.field-group label{color:var(--text-muted);font-size:10px;font-weight:500}.field-group input{border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:var(--text-primary);transition:var(--transition-smooth);background:#00000040;outline:none;padding:8px;font-family:monospace;font-size:11px}.field-group input:focus{border-color:var(--primary);box-shadow:0 0 8px var(--primary-glow)}#custom-desc-input{border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);width:100%;height:64px;color:var(--text-primary);resize:none;transition:var(--transition-smooth);background:#0003;outline:none;padding:8px 10px;font-size:12px;line-height:1.5}#custom-desc-input:focus{border-color:var(--primary);box-shadow:0 0 8px var(--primary-glow)}.generate-sprite-btn{background:linear-gradient(135deg, var(--primary) 0%, var(--secondary) 50%, var(--accent) 100%);color:#fff;border-radius:var(--border-radius-md);cursor:pointer;box-shadow:0 4px 15px var(--primary-glow);transition:var(--transition-smooth);letter-spacing:.5px;border:none;justify-content:center;align-items:center;gap:8px;width:100%;padding:12px;font-size:13px;font-weight:600;display:flex}.generate-sprite-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 24px #8b5cf673,0 0 10px #06b6d44d}.generate-sprite-btn:active:not(:disabled){transform:scale(.98)}.generate-sprite-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.generation-result-card{border:1px solid var(--glass-border);border-radius:var(--border-radius-md);background:#00000026;flex-direction:column;margin-top:10px;display:flex;overflow:hidden}.result-header{border-bottom:1px solid var(--glass-border);color:var(--text-secondary);background:#ffffff03;padding:8px 12px;font-size:11px;font-weight:600}.result-body{flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:120px;padding:16px;display:flex;position:relative}.generation-loader{color:var(--text-secondary);flex-direction:column;align-items:center;gap:10px;font-size:11px;display:flex}.spinner{border:3px solid #ffffff0d;border-top:3px solid var(--primary);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#generation-img{border-radius:var(--border-radius-sm);object-fit:contain;border:1px solid #ffffff0f;max-width:100%;max-height:160px;box-shadow:0 4px 15px #0006}.load-to-canvas-btn{background:var(--success);color:#fff;border-radius:var(--border-radius-md);cursor:pointer;transition:var(--transition-smooth);border:none;justify-content:center;align-items:center;gap:6px;width:100%;padding:10px;font-size:12px;font-weight:600;display:flex;box-shadow:0 4px 12px #10b9814d}.load-to-canvas-btn:hover{background:#059669;transform:translateY(-1px);box-shadow:0 6px 16px #10b98180}.load-to-canvas-btn:active{transform:scale(.98)}.ref-image-zone{border-radius:var(--border-radius-md);cursor:pointer;min-height:84px;transition:var(--transition-smooth);background:#ffffff03;border:2px dashed #ffffff1f;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.ref-image-zone:hover{border-color:var(--accent);background:#06b6d405}.ref-placeholder{color:var(--text-muted);transition:var(--transition-smooth);flex-direction:column;align-items:center;gap:6px;font-size:11px;display:flex}.ref-image-zone:hover .ref-placeholder{color:var(--accent)}.ref-preview-wrapper{justify-content:center;align-items:center;width:100%;padding:10px;display:flex;position:relative}#ref-image-img{object-fit:contain;border-radius:var(--border-radius-sm);border:1px solid #ffffff14;max-width:100%;max-height:120px;box-shadow:0 4px 12px #0000004d}.clear-ref-btn{color:#fff;cursor:pointer;width:20px;height:20px;transition:var(--transition-smooth);z-index:5;background:#ef4444d9;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:600;line-height:1;display:flex;position:absolute;top:6px;right:6px;box-shadow:0 2px 6px #0000004d}.clear-ref-btn:hover{background:#ef4444;transform:scale(1.1)}.frame-controls-wrapper{pointer-events:none;z-index:4;width:100%;height:100%;position:absolute;top:0;left:0}.frame-control-badge{pointer-events:auto;-webkit-backdrop-filter:blur(8px);font-family:var(--font-family);box-sizing:border-box;background:#0f172abf;border:1px solid #ffffff14;border-radius:6px;align-items:center;gap:4px;height:28px;padding:3px 6px;transition:all .2s;display:flex;position:absolute;box-shadow:0 4px 12px #0000004d}.frame-control-badge:hover{background:#0f172ae6;border-color:#06b6d466;box-shadow:0 4px 16px #06b6d426}.frame-control-badge span.scale-label{color:#fff9;-webkit-user-select:none;user-select:none;font-size:10px;font-weight:600}.frame-control-badge input.frame-scale-input{color:#fff;text-align:center;background:#ffffff14;border:1px solid #ffffff26;border-radius:4px;outline:none;width:48px;padding:1px 2px;font-size:11px;font-weight:700}.frame-control-badge input.frame-scale-input:focus{border-color:var(--accent);background:#ffffff26}.frame-control-badge input.frame-scale-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.frame-control-badge input.frame-scale-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.frame-control-badge span.percent-sym{color:#ffffff80;margin-right:2px;font-size:10px;font-weight:600}.frame-control-badge button.sync-all-btn{color:#ffffffbf;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:4px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;transition:all .2s;display:flex}.frame-control-badge button.sync-all-btn:hover{border-color:var(--accent);color:#fff;background:#06b6d433}.frame-control-badge button.sync-all-btn:active{transform:scale(.9)}.frame-control-badge button.sync-all-btn svg{width:11px;height:11px}
