.upload-zone{border:2.5px dashed var(--primary-light);border-radius:var(--radius-lg);padding:50px 40px;text-align:center;cursor:pointer;transition:all 0.25s cubic-bezier(0.4, 0, 0.2, 1);background:rgba(194, 100, 63, 0.04);position:relative;overflow:hidden;}
.upload-zone::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(217, 119, 87, 0.08) 0%,rgba(229, 138, 104, 0.15) 100%);opacity:0;transition:var(--transition);}
.upload-zone:hover::before,.upload-zone.dragover::before{opacity:1;}
.upload-zone:hover,.upload-zone.dragover{border-color:var(--primary-color);transform:scale(1.01);box-shadow:0 8px 30px rgba(217, 119, 87, 0.15);}
.upload-zone.dragover{box-shadow:0 0 30px rgba(217, 119, 87, 0.25);}
.upload-icon{font-size:4em;color:var(--primary-light);margin-bottom:20px;transition:var(--transition);position:relative;z-index:1;}
.upload-zone:hover .upload-icon{color:var(--primary-color);transform:translateY(-5px);}
.upload-text{font-size:1.2em;color:var(--text-secondary);margin-bottom:10px;font-weight:500;position:relative;z-index:1;}
.upload-hint{font-size:0.9em;color:var(--text-muted);position:relative;z-index:1;}
.storage-target{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:8px 16px;background:linear-gradient(135deg,rgba(217, 119, 87, 0.1) 0%,rgba(43, 43, 41, 0.3) 100%);border-radius:20px;font-size:0.85em;color:var(--claude-accent);font-weight:500;}
.storage-target i{font-size:1em;}
/* 存储切换器 */
.storage-switcher{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:20px;padding:16px;background:linear-gradient(135deg,rgba(255, 255, 255, 0.9) 0%,rgba(229, 138, 104, 0.3) 100%);border-radius:16px;border:1px solid rgba(217, 119, 87, 0.1);}
.storage-label{font-size:0.9em;color:var(--text-secondary);font-weight:500;}
.storage-options{display:flex;gap:8px;}
.folder-target-panel{margin-top:16px;padding:16px 18px;border-radius:var(--radius-lg);border:1px solid rgba(217, 119, 87, 0.12);background:linear-gradient(135deg,rgba(255, 255, 255, 0.9) 0%,rgba(43, 43, 41, 0.18) 100%);display:grid;gap:10px;}
.folder-target-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.folder-target-title{display:inline-flex;align-items:center;gap:8px;color:var(--text-primary);font-weight:600;}
.folder-target-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:rgba(217, 119, 87, 0.12);color:var(--primary-color);font-size:0.84em;font-weight:600;}
.folder-target-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.folder-target-row input{flex:1 1 260px;min-width:0;border:1px solid var(--input-border);border-radius:12px;background:var(--surface-1);color:var(--text-primary);padding:12px 14px;font-size:0.92em;}
.folder-target-row input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(217, 119, 87, 0.12);}
.folder-reset-btn{border:1px solid rgba(217, 119, 87, 0.18);border-radius:12px;background:var(--surface-1);color:var(--primary-color);padding:11px 16px;cursor:pointer;font-weight:600;transition:var(--transition);}
.folder-reset-btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(217, 119, 87, 0.12);}
.folder-target-tip{color:var(--text-muted);font-size:0.84em;}
.image-compress-panel{margin-top:16px;padding:18px;border-radius:var(--radius-lg);border:1.5px solid rgba(217, 119, 87, 0.18);background:linear-gradient(135deg,rgba(255, 255, 255, 0.94) 0%,rgba(229, 138, 104, 0.22) 48%,rgba(43, 43, 41, 0.22) 100%);box-shadow:0 10px 28px rgba(217, 119, 87, 0.08);}
.image-compress-panel.is-enabled{border-color:rgba(217, 119, 87, 0.48);box-shadow:0 12px 32px rgba(217, 119, 87, 0.14);}
.image-compress-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;}
.image-compress-title{display:flex;gap:12px;align-items:flex-start;color:var(--text-primary);}
.image-compress-title i{color:var(--primary-color);font-size:1.2em;margin-top:3px;}
.image-compress-title strong{display:block;font-size:1em;line-height:1.3;}
.image-compress-title span{display:block;color:var(--text-muted);font-size:0.84em;margin-top:3px;}
.compress-toggle{flex:0 0 auto;display:inline-flex;align-items:center;gap:10px;cursor:pointer;color:var(--text-secondary);font-weight:600;user-select:none;}
.compress-toggle input{display:none;}
.compress-toggle-track{position:relative;width:54px;height:30px;border-radius:999px;background:#dfe5ef;border:1px solid rgba(217, 119, 87, 0.12);transition:var(--transition);}
.compress-toggle-track::after{content:"";position:absolute;width:24px;height:24px;top:2px;left:2px;border-radius:50%;background:#ffffff;box-shadow:0 2px 8px rgba(0, 0, 0, 0.18);transition:var(--transition);}
.compress-toggle input:checked + .compress-toggle-track{background:linear-gradient(135deg, var(--primary-color), var(--claude-accent-strong));}
.compress-toggle input:checked + .compress-toggle-track::after{transform:translateX(24px);}
.image-compress-summary{margin-top:10px;color:var(--text-muted);font-size:0.86em;line-height:1.6;}
.image-upload-decision{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:10px;margin-top:14px;}
.image-upload-decision button{min-height:52px;padding:10px 12px;border:1.5px solid var(--input-border);border-radius:14px;background:var(--surface-1);color:var(--text-secondary);cursor:pointer;font-weight:700;transition:var(--transition);}
.image-upload-decision button:hover,.image-upload-decision button.active{border-color:var(--primary-color);color:var(--primary-color);box-shadow:0 8px 20px rgba(217, 119, 87, 0.1);}
.compress-controls{display:grid;gap:14px;margin-top:16px;}
.compress-format-grid{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:10px;}
.compress-format-btn,.compress-mode-btn{border:1.5px solid var(--input-border);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text-secondary);cursor:pointer;transition:all 0.25s cubic-bezier(0.4, 0, 0.2, 1);}
.compress-format-btn{min-height:54px;padding:10px 12px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600;}
.compress-format-btn:hover:not(:disabled),.compress-mode-btn:hover{border-color:var(--primary-light);transform:translateY(-1px);box-shadow:var(--shadow-sm);}
.compress-format-btn.active,.compress-mode-btn.active{border-color:var(--primary-color);color:var(--primary-color);background:rgba(194, 100, 63, 0.1);font-weight:600;}
