@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--color-primary: #E82127;--color-primary-dark: #C01D22;--color-bg-dark: #0a0a0a;--color-bg-card: #1a1a1a;--color-bg-elevated: #242424;--color-text: #ffffff;--color-text-muted: #a0a0a0;--color-border: #2a2a2a;--color-success: #00d563;--color-warning: #ffb800;--gradient-primary: linear-gradient(135deg, #E82127 0%, #ff4757 100%);--gradient-dark: linear-gradient(180deg, #0a0a0a 0%, #1a1a1a 100%);--gradient-glass: linear-gradient(135deg, rgba(255, 255, 255, .1) 0%, rgba(255, 255, 255, .05) 100%);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 16px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .5);--shadow-glow: 0 0 40px rgba(232, 33, 39, .3);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--color-bg-dark);color:var(--color-text);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{min-height:100vh}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 2rem}.glass-card{background:#1a1a1ab3;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--color-border);border-radius:16px;padding:2rem;box-shadow:var(--shadow-md);transition:all var(--transition-base)}.glass-card:hover{border-color:#e821274d;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn{padding:.75rem 1.5rem;border:none;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left var(--transition-slow)}.btn:hover:before{left:100%}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow)}.btn-secondary{background:var(--color-bg-elevated);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:#2a2a2a;border-color:var(--color-primary)}input[type=file]{display:none}.file-upload-label{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--color-bg-elevated);border:2px dashed var(--color-border);border-radius:12px;cursor:pointer;transition:all var(--transition-base);font-weight:500}.file-upload-label:hover{border-color:var(--color-primary);background:#e821271a}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--color-bg-dark)}::-webkit-scrollbar-thumb{background:var(--color-bg-elevated);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#333}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.fade-in{animation:fadeIn var(--transition-base) ease-out}.spinner{width:40px;height:40px;border:4px solid var(--color-bg-elevated);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}input[type=color]{width:60px;height:60px;border:none;border-radius:12px;cursor:pointer;overflow:hidden;box-shadow:var(--shadow-sm);transition:all var(--transition-base)}input[type=color]:hover{transform:scale(1.05);box-shadow:var(--shadow-md)}input[type=color]::-webkit-color-swatch-wrapper{padding:0}input[type=color]::-webkit-color-swatch{border:none;border-radius:12px}input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:var(--color-bg-elevated);outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--gradient-primary);cursor:pointer;box-shadow:var(--shadow-sm);transition:all var(--transition-base)}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:var(--shadow-glow)}input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--gradient-primary);cursor:pointer;border:none;box-shadow:var(--shadow-sm);transition:all var(--transition-base)}input[type=range]::-moz-range-thumb:hover{transform:scale(1.2);box-shadow:var(--shadow-glow)}.app[data-v-f0fae7dd]{min-height:100vh;display:flex;flex-direction:column}.header[data-v-f0fae7dd]{background:linear-gradient(180deg,#1a1a1af2,#0a0a0ae6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--color-border);padding:.75rem 0;position:sticky;top:0;z-index:100}.header-content[data-v-f0fae7dd]{display:flex;justify-content:space-between;align-items:center}.logo[data-v-f0fae7dd]{display:flex;align-items:center;gap:.75rem}.logo h1[data-v-f0fae7dd]{font-size:1.25rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.logo-img[data-v-f0fae7dd]{width:32px;height:32px;border-radius:8px;object-fit:contain}.status-badge[data-v-f0fae7dd]{padding:.375rem .75rem;background:#e821271a;border:1px solid rgba(232,33,39,.3);border-radius:6px;font-size:.75rem;font-weight:500;color:var(--color-primary)}.main-content[data-v-f0fae7dd]{flex:1;padding:1rem 0}.workspace[data-v-f0fae7dd]{display:grid;grid-template-columns:260px 1fr 200px;gap:1rem;height:calc(100vh - 100px)}.sidebar[data-v-f0fae7dd],.sidebar-right[data-v-f0fae7dd]{display:flex;flex-direction:column;gap:.75rem;overflow-y:auto}.sidebar-section[data-v-f0fae7dd]{padding:1rem}.section-title[data-v-f0fae7dd]{font-size:.9rem;font-weight:600;margin-bottom:.75rem;display:flex;align-items:center;gap:.375rem}.icon[data-v-f0fae7dd]{font-size:1rem}.vehicle-section[data-v-f0fae7dd]{max-height:280px;overflow-y:auto}.vehicle-category[data-v-f0fae7dd]{margin-bottom:.75rem}.category-title[data-v-f0fae7dd]{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);margin-bottom:.5rem;padding-bottom:.375rem;border-bottom:1px solid var(--color-border)}.vehicle-list[data-v-f0fae7dd]{display:flex;flex-direction:column;gap:.25rem}.vehicle-item[data-v-f0fae7dd]{padding:.5rem .75rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:500;color:var(--color-text);text-align:left;width:100%}.vehicle-item[data-v-f0fae7dd]:hover{border-color:var(--color-primary)}.vehicle-item.active[data-v-f0fae7dd]{background:#e8212726;border-color:var(--color-primary)}.vehicle-item .vehicle-icon[data-v-f0fae7dd]{font-size:.875rem}input[type=file][data-v-f0fae7dd]{display:none}.file-upload-btn[data-v-f0fae7dd]{display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.625rem;background:var(--color-bg-elevated);border:2px dashed var(--color-border);border-radius:8px;cursor:pointer;transition:all .15s;font-size:.8rem;font-weight:500;color:var(--color-text);width:100%}.file-upload-btn[data-v-f0fae7dd]:hover{border-color:var(--color-primary);background:#e821271a}.layers-list[data-v-f0fae7dd]{max-height:180px;overflow-y:auto;margin-top:.5rem}.layer-item[data-v-f0fae7dd]{display:flex;align-items:center;gap:.5rem;padding:.375rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:4px;margin-bottom:.25rem;cursor:pointer;transition:all .15s}.layer-item[data-v-f0fae7dd]:hover,.layer-item.active[data-v-f0fae7dd]{border-color:var(--color-primary)}.layer-item.active[data-v-f0fae7dd]{background:#e821271a}.layer-thumb[data-v-f0fae7dd]{width:28px;height:28px;object-fit:cover;border-radius:3px}.layer-name[data-v-f0fae7dd]{flex:1;font-size:.7rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layer-actions[data-v-f0fae7dd]{display:flex;gap:2px}.layer-btn[data-v-f0fae7dd]{width:18px;height:18px;border:none;background:var(--color-bg-dark);color:var(--color-text-muted);border-radius:3px;cursor:pointer;font-size:.6rem;display:flex;align-items:center;justify-content:center}.layer-btn[data-v-f0fae7dd]:hover{background:var(--color-primary);color:#fff}.layer-btn.delete[data-v-f0fae7dd]:hover{background:#ff3b30}.layer-btn[data-v-f0fae7dd]:disabled{opacity:.3;cursor:not-allowed}.no-layers[data-v-f0fae7dd]{text-align:center;color:var(--color-text-muted);font-size:.75rem;padding:1rem}.property-row[data-v-f0fae7dd]{margin-bottom:.75rem}.property-row label[data-v-f0fae7dd]{display:block;font-size:.7rem;color:var(--color-text-muted);margin-bottom:.25rem}.property-row input[type=range][data-v-f0fae7dd]{width:100%}.property-actions[data-v-f0fae7dd]{display:flex;gap:.25rem;flex-wrap:wrap}.btn-sm[data-v-f0fae7dd]{padding:.375rem .5rem;font-size:.7rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text);cursor:pointer;transition:all .15s}.btn-sm[data-v-f0fae7dd]:hover{border-color:var(--color-primary)}.canvas-area[data-v-f0fae7dd]{display:flex;flex-direction:column;min-height:0}.canvas-container[data-v-f0fae7dd]{flex:1;display:flex;flex-direction:column;min-height:0}.canvas-header[data-v-f0fae7dd]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;flex-shrink:0}.canvas-info[data-v-f0fae7dd]{display:flex;gap:.375rem}.info-badge[data-v-f0fae7dd]{padding:.2rem .4rem;background:var(--color-bg-elevated);border-radius:3px;font-size:.65rem;color:var(--color-text-muted)}.canvas-wrapper[data-v-f0fae7dd]{flex:1;display:flex;justify-content:center;align-items:center;background:repeating-conic-gradient(#1a1a1a 0% 25%,#242424 0% 50%) 50% / 16px 16px;border-radius:8px;padding:1rem;overflow:auto;min-height:0}.design-canvas[data-v-f0fae7dd]{position:relative;background:#fff;border-radius:3px;box-shadow:0 4px 20px #0006;flex-shrink:0;overflow:hidden}.canvas-bg[data-v-f0fae7dd]{position:absolute;top:0;left:0;width:100%;height:100%;background:#fff}.masked-layers[data-v-f0fae7dd]{position:absolute;top:0;left:0;width:100%;height:100%;mask-size:100% 100%;-webkit-mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat}.layer-handles[data-v-f0fae7dd]{position:absolute;pointer-events:none;z-index:20}.layer-handles .handle[data-v-f0fae7dd],.layer-handles .rotate-handle[data-v-f0fae7dd]{pointer-events:auto}.image-layer[data-v-f0fae7dd]{position:absolute;cursor:move;border:2px solid transparent;box-sizing:border-box}.image-layer[data-v-f0fae7dd]:hover{border-color:#ffffff80}.image-layer.selected[data-v-f0fae7dd]{border-color:var(--color-primary);box-shadow:0 0 0 2px #e821274d}.image-layer img[data-v-f0fae7dd]{width:100%;height:100%;object-fit:fill;pointer-events:none;-webkit-user-select:none;user-select:none}.handle[data-v-f0fae7dd]{position:absolute;width:10px;height:10px;background:var(--color-primary);border:2px solid #fff;border-radius:2px}.handle.nw[data-v-f0fae7dd]{top:-5px;left:-5px;cursor:nwse-resize}.handle.ne[data-v-f0fae7dd]{top:-5px;right:-5px;cursor:nesw-resize}.handle.sw[data-v-f0fae7dd]{bottom:-5px;left:-5px;cursor:nesw-resize}.handle.se[data-v-f0fae7dd]{bottom:-5px;right:-5px;cursor:nwse-resize}.rotate-handle[data-v-f0fae7dd]{position:absolute;top:-28px;left:50%;transform:translate(-50%);width:20px;height:20px;background:var(--color-primary);border:2px solid #fff;border-radius:50%;cursor:grab;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff}.template-overlay[data-v-f0fae7dd]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10;mix-blend-mode:multiply}.canvas-footer[data-v-f0fae7dd]{margin-top:.5rem;flex-shrink:0}.tip[data-v-f0fae7dd]{font-size:.7rem;color:var(--color-text-muted);text-align:center}.export-size[data-v-f0fae7dd]{margin-bottom:.75rem}.select-input[data-v-f0fae7dd]{width:100%;padding:.5rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:.8rem}.btn-primary[data-v-f0fae7dd]{width:100%;padding:.75rem;background:var(--gradient-primary);border:none;border-radius:8px;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.375rem;transition:all .15s}.btn-primary[data-v-f0fae7dd]:hover{transform:translateY(-1px);box-shadow:0 4px 15px #e8212766}.export-info[data-v-f0fae7dd]{margin-top:.5rem;font-size:.7rem;color:var(--color-text-muted);text-align:center}@media(max-width:1100px){.workspace[data-v-f0fae7dd]{grid-template-columns:1fr;height:auto}}.color-picker-row[data-v-f0fae7dd]{display:flex;align-items:center;gap:1rem}.color-input[data-v-f0fae7dd]{width:40px;height:40px;border:none;border-radius:4px;cursor:pointer;background:none;padding:0}.color-value[data-v-f0fae7dd]{font-family:monospace;color:var(--color-text-muted)}.finish-options[data-v-f0fae7dd]{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.finish-btn[data-v-f0fae7dd]{padding:.5rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:.8rem;cursor:pointer;transition:all .2s}.finish-btn[data-v-f0fae7dd]:hover{background:var(--color-bg-hover)}.finish-btn.active[data-v-f0fae7dd]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}
