.converter-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
gap: 20px;
padding: 20px;
max-width: 1200px;
margin: 0 auto;
}
.converter-card {
background: #fff;
border-radius: 10px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
padding: 20px;
transition: transform 0.3s, box-shadow 0.3s;
}
.converter-card:hover {
transform: translateY(-5px);
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}
.converter-card h3 {
margin-top: 0;
color: #2c3e50;
font-size: 1.2rem;
text-align: center;
}
.converter-content {
display: flex;
flex-direction: column;
gap: 10px;
}
.file-input {
padding: 10px;
border: 1px dashed #3498db;
border-radius: 5px;
background: #f8fafc;
cursor: pointer;
}
.convert-btn {
padding: 10px;
background: #3498db;
color: white;
border: none;
border-radius: 5px;
cursor: pointer;
transition: background 0.3s;
}
.convert-btn:hover {
background: #2980b9;
}
select {
padding: 8px;
border: 1px solid #ddd;
border-radius: 5px;
}
/* Responsive Adjustments */
@media (max-width: 768px) {
.converter-grid {
grid-template-columns: 1fr;
}
}
document.querySelectorAll(‘.file-input’).forEach(input => {
input.addEventListener(‘change’, (e) => {
const fileName = e.target.files[0]?.name || ‘No file selected’;
console.log(`Selected file: ${fileName}`);
});
});
document.querySelectorAll(‘.convert-btn’).forEach(btn => {
btn.addEventListener(‘click’, (e) => {
const card = e.target.closest(‘.converter-card’);
const fileName = card.querySelector(‘.file-input’).files[0]?.name;
if (!fileName) {
alert(‘Please select a file first!’);
return;
}
alert(`Converting: ${fileName} (simulation)`);
// Actual conversion would happen here
});
});