*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background:linear-gradient(135deg,#1a1a2e,#16213e);min-height:100vh;color:#fff}.app{display:flex;height:100vh}.sidebar{width:350px;background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-right:1px solid rgba(255,255,255,.1);padding:20px;overflow-y:auto}.main-content{flex:1;display:flex;flex-direction:column;position:relative}.canvas-container{flex:1;display:flex;align-items:center;justify-content:center;position:relative}.canvas-container canvas{max-width:100%;max-height:100%}h1{font-size:1.5rem;margin-bottom:20px;color:#00d4ff;text-shadow:0 0 20px rgba(0,212,255,.5)}h2{font-size:1rem;margin-bottom:10px;color:#a0a0a0}.upload-section{margin-bottom:25px}.upload-box{border:2px dashed rgba(255,255,255,.3);border-radius:12px;padding:20px;text-align:center;cursor:pointer;transition:all .3s ease;margin-bottom:10px}.upload-box:hover{border-color:#00d4ff;background:#00d4ff1a}.upload-box.has-file{border-color:#0f8;background:#00ff881a}.upload-box input{display:none}.upload-label{font-size:.9rem;color:#888}.file-name{font-size:.8rem;color:#0f8;margin-top:5px;word-break:break-all}.animation-list{margin-top:20px}.animation-item{padding:12px 16px;background:#ffffff0d;border-radius:8px;margin-bottom:8px;cursor:pointer;transition:all .3s ease;display:flex;justify-content:space-between;align-items:center}.animation-item:hover{background:#00d4ff33}.animation-item.active{background:#00d4ff4d;border:1px solid #00d4ff}.controls{padding:15px 20px;background:#0000004d;display:flex;gap:15px;align-items:center;flex-wrap:wrap}.btn{padding:10px 20px;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#00d4ff,#09c);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 5px 20px #00d4ff66}.btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.btn-secondary:hover{background:#fff3}.slider-group{display:flex;align-items:center;gap:10px}.slider-group label{font-size:.9rem;color:#888}.slider-group input[type=range]{width:120px}.slider-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.status-bar{padding:10px 20px;background:#00000080;font-size:.85rem;color:#888;display:flex;justify-content:space-between}.error-message{background:#f443;border:1px solid #ff4444;border-radius:8px;padding:15px;margin-top:15px;color:#f66}.success-message{background:#0f83;border:1px solid #00ff88;border-radius:8px;padding:15px;margin-top:15px;color:#0f8}.skin-list{margin-top:20px}.placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#555}.placeholder-icon{font-size:80px;margin-bottom:20px;opacity:.3}.placeholder-text{font-size:1.2rem;text-align:center;max-width:300px}.bg-options{display:flex;gap:10px;align-items:center}.bg-btn{width:30px;height:30px;border-radius:50%;border:2px solid rgba(255,255,255,.3);cursor:pointer;transition:all .3s ease}.bg-btn:hover,.bg-btn.active{border-color:#00d4ff;transform:scale(1.1)}.bg-dark{background:#1a1a2e}.bg-light{background:#f0f0f0}.bg-checker{background:repeating-conic-gradient(#808080 0% 25%,transparent 0% 50%) 50% / 20px 20px}.bg-green{background:#0f0}.folder-upload{background:linear-gradient(135deg,#00d4ff1a,#0099cc0d);border-color:#00d4ff66;padding:25px 20px}.folder-upload:hover{background:linear-gradient(135deg,#00d4ff33,#0099cc1a);border-color:#00d4ff}.folder-icon{font-size:40px;margin-bottom:8px}.upload-hint{font-size:.75rem;color:#666;margin-top:5px}.separator{display:flex;align-items:center;margin:20px 0;color:#555;font-size:.8rem}.separator:before,.separator:after{content:"";flex:1;height:1px;background:#ffffff1a}.separator span{padding:0 15px}.file-status{display:flex;gap:8px;margin-top:15px;flex-wrap:wrap}.file-status-item{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:15px;font-size:.75rem;background:#ffffff0d}.file-status-item.loaded{background:#0f83;color:#0f8}.file-status-item.missing{background:#ffffff0d;color:#666}
