.stitch-wrapper{max-width:1400px}.upload-area{border:2px dashed var(--brand);border-radius:12px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .3s ease;background:rgba(var(--brand-rgb),.05);min-height:300px;display:flex;flex-direction:column;justify-content:center;align-items:center}.upload-area:hover{background:rgba(var(--brand-rgb),.1);border-color:var(--brand-strong)}.upload-area i{color:var(--brand);margin-bottom:1rem}.canvas-container{background:var(--bi-surface);border-radius:12px;padding:1.5rem;box-shadow:0 2px 12px #00000014}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem;max-height:400px;overflow-y:auto;padding:1rem;background:var(--bi-surface-2);border-radius:8px}.image-item{position:relative;aspect-ratio:1;background:var(--bi-surface);border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a;cursor:grab;transition:transform .2s ease}.image-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.image-item.dragging{opacity:.5;cursor:grabbing}.image-item img{width:100%;height:100%;object-fit:cover}.image-item .delete-btn{position:absolute;top:4px;right:4px;width:24px;height:24px;background:#dc3545e6;color:#fff;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .2s ease;font-size:12px}.image-item:hover .delete-btn{opacity:1}.image-item .index-badge{position:absolute;bottom:4px;left:4px;background:#000000b3;color:#fff;padding:2px 8px;border-radius:4px;font-size:12px}#previewContainer{background:var(--bi-surface-2);border-radius:8px;padding:1rem;text-align:center}#previewCanvas{max-width:100%;max-height:500px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.control-sidebar{background:var(--bi-surface);border-radius:12px;padding:1.5rem;box-shadow:0 2px 12px #00000014}.control-sidebar h6{color:#2d3436;font-weight:600;border-bottom:2px solid var(--bi-border);padding-bottom:.75rem}@media (max-width: 991px){.image-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));max-height:300px}}@media (max-width: 576px){.upload-area{padding:2rem 1rem;min-height:200px}.image-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.5rem}#previewCanvas{max-height:300px}}html[data-theme=dark] .control-sidebar h6{color:var(--bi-text)}html[data-theme=dark] .canvas-container,html[data-theme=dark] .control-sidebar{box-shadow:none;border:1px solid var(--bi-border)}
