.upload-method-tabs{display:flex;gap:10px;margin-bottom:15px;border-bottom:1px solid var(--glass-border);padding-bottom:10px}
.upload-method-tab{padding:8px 20px;background:transparent;border:none;color:#aaa;cursor:pointer;font-family:'Minecraft Font',sans-serif;transition:all .3s ease;border-radius:20px}
.upload-method-tab.active{background:var(--accent-color);color:white}
.upload-method-tab:hover:not(.active){background:rgba(255,255,255,0.1);color:white}
.upload-method-panel{display:none;animation:fadeIn .3s ease}
.upload-method-panel.active{display:block}
.file-upload-zone{border:2px dashed var(--glass-border);border-radius:16px;padding:30px;text-align:center;cursor:pointer;transition:all .3s ease;background:rgba(255,255,255,0.02)}
.file-upload-zone:hover{border-color:var(--accent-color);background:rgba(115,136,159,0.1)}
.file-upload-zone.drag-over{border-color:var(--verified-color);background:rgba(46,204,113,0.1)}
.file-upload-zone i{font-size:3em;color:var(--accent-color);margin-bottom:15px}
.file-upload-zone p{color:#ccc;margin-bottom:10px}
.file-upload-zone small{color:#888;font-size:.75em}
.upload-preview{margin-top:15px;display:flex;flex-wrap:wrap;gap:10px}
.preview-item{position:relative;width:80px;height:80px;border-radius:8px;overflow:hidden;border:2px solid var(--glass-border);background:rgba(0,0,0,0.3)}
.preview-item img{width:100%;height:100%;object-fit:cover}
.preview-item .preview-remove{position:absolute;top:2px;right:2px;width:20px;height:20px;background:rgba(231,76,60,0.9);border:none;border-radius:50%;color:white;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:10px}
.preview-item .preview-loading{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);display:flex;align-items:center;justify-content:center;font-size:1.2em;color:var(--accent-color)}
.gallery-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin-top:15px}
.gallery-preview-item{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;border:1px solid var(--glass-border)}
.gallery-preview-item img{width:100%;height:100%;object-fit:cover}
.gallery-preview-item .remove-gallery{position:absolute;top:5px;right:5px;width:24px;height:24px;background:rgba(231,76,60,0.9);border:none;border-radius:50%;color:white;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px}
.avatar-upload-preview{margin-top:10px;text-align:center}
.avatar-upload-preview img{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid var(--accent-color)}
.upload-progress-modal{position:fixed;bottom:20px;right:20px;background:var(--glass-bg);border-radius:12px;padding:15px 20px;backdrop-filter:blur(10px);border:1px solid var(--glass-border);z-index:10001;min-width:250px;display:none}
.upload-progress-modal.show{display:block;animation:slideInRight .3s ease}
.upload-progress-modal .progress-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.upload-progress-modal .progress-header i{color:var(--accent-color);font-size:1.2em}
.upload-progress-modal .progress-bar{height:6px;background:rgba(255,255,255,0.2);border-radius:3px;overflow:hidden}
.upload-progress-modal .progress-fill{width:0%;height:100%;background:var(--verified-color);transition:width .3s ease}
.upload-progress-modal .progress-text{font-size:.8em;color:#ccc;margin-top:8px}
@keyframes slideInRight{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}

.upload-method-panel{display:none}
.upload-method-panel.active{display:block !important}
#iconUploadPanel.active,#galleryUploadPanel.active,#squareIconUploadPanel.active{display:block !important}

.file-upload-zone {
  position: relative;
  display: block !important;
  border: 2px dashed var(--glass-border);
  border-radius: 16px;
  padding: 30px;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s ease;
  background: rgba(255,255,255,0.02);
  margin-top: 10px;
  overflow: hidden;
}

.file-upload-zone:hover {
  border-color: var(--accent-color);
  background: rgba(115,136,159,0.1);
}

.file-upload-zone.drag-over {
  border-color: var(--verified-color);
  background: rgba(46,204,113,0.1);
}

.file-upload-zone i {
  font-size: 3em;
  color: var(--accent-color);
  margin-bottom: 15px;
  display: block;
}

.file-upload-zone p {
  color: #ccc;
  margin-bottom: 10px;
  font-family: 'Minecraft Font', sans-serif;
  display: block;
}

.file-upload-zone small {
  color: #888;
  font-size: 0.75em;
  display: block;
}

.file-upload-zone input[type="file"] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  z-index: 10;
  font-size: 0;
  color: transparent;
  background: transparent;
  border: none;
  outline: none;
  padding: 0;
  margin: 0;
}

.file-upload-zone input[type="file"]::-webkit-file-upload-button {
  visibility: hidden;
  display: none;
}

.file-upload-zone input[type="file"]::before {
  content: "";
  display: none;
}

.file-upload-zone input[type="file"]:focus {
  outline: none;
}

#iconUploadPreview, #galleryUploadPreview, #squareIconUploadPreview {
  margin-top: 15px;
}

.preview-loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: var(--accent-color);
}

.preview-item {
  position: relative;
  width: 100px;
  height: 100px;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid var(--glass-border);
  display: inline-block;
  margin-right: 10px;
}

.preview-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.preview-remove {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 24px;
  height: 24px;
  background: rgba(231,76,60,0.9);
  border: none;
  border-radius: 50%;
  color: white;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
}

.image-preview, .gallery-preview-grid {
  margin-top: 15px;
}

#iconPreview, #galleryPreview, #squareIconPreview {
  display: block;
  margin-top: 15px;
}

#squareIconUploadZone {
  border: 2px dashed var(--glass-border) !important;
  border-radius: 16px !important;
  padding: 30px !important;
  text-align: center !important;
  cursor: pointer !important;
  background: rgba(255,255,255,0.02) !important;
  margin-top: 10px !important;
  display: block !important;
}

#squareIconUploadZone:hover {
  border-color: var(--accent-color) !important;
  background: rgba(115,136,159,0.1) !important;
}

#squareIconUploadZone.drag-over {
  border-color: var(--verified-color) !important;
  background: rgba(46,204,113,0.1) !important;
}

#squareIconUploadZone i {
  font-size: 3em !important;
  color: var(--accent-color) !important;
  margin-bottom: 15px !important;
}

#squareIconUploadZone p {
  color: #ccc !important;
  margin-bottom: 10px !important;
}

#squareIconUploadZone small {
  color: #888 !important;
  font-size: 0.75em !important;
}

#squareIconUploadPreview {
  margin-top: 15px !important;
}

#squareIconPreview {
  margin-top: 10px !important;
}