.output-selector { margin-bottom: 16px; display: flex; flex-direction: column; gap: 6px; }
        .output-selector label { font-size: 0.8rem; font-weight: 600; color: #4b5563; }
        .output-selector select { padding: 10px; border-radius: 8px; border: 1px solid var(--border-color); background: #fff; font-size: 0.9rem; outline: none; }

        .drop-zone { border: 2px dashed var(--border-color); border-radius: 8px; padding: 30px 20px; text-align: center; cursor: pointer; transition: border-color 0.2s; background: #f9fafb; margin-bottom: 20px; }
        .drop-zone:hover { border-color: var(--primary); background: #fdfdff; }
        .drop-zone p { font-size: 0.9rem; color: #4b5563; margin-bottom: 6px; }
        .formats-hint { font-size: 0.75rem; color: #9ca3af; }

        .workspace { display: none; flex-direction: column; gap: 16px; }
        .file-info-card { background: #f8fafc; border: 1px solid #e2e8f0; padding: 12px 16px; border-radius: 8px; font-weight: bold; color: var(--primary); font-size: 0.95rem; word-break: break-all; }

        textarea { width: 100%; height: 160px; padding: 14px; border: 1px solid var(--border-color); border-radius: 8px; font-size: 0.95rem; resize: vertical; outline: none; background: #fff; font-family: monospace; }
        textarea:focus { border-color: var(--primary); }

        .actions { display: flex; gap: 10px; }
        .btn { flex: 1; padding: 12px; border: none; border-radius: 8px; font-size: 0.95rem; font-weight: 600; cursor: pointer; transition: background-color 0.2s; text-align: center; }
        .btn-primary { background-color: var(--primary); color: white; }
        .btn-primary:hover { background-color: var(--primary-hover); }
        .btn-secondary { background-color: #e5e7eb; color: #374151; }
        .btn-secondary:hover { background-color: #d1d5db; }

        .loading { text-align: center; color: #6b7280; font-size: 0.9rem; margin: 20px 0; font-style: italic; display: none; }