Área de upload
Área de upload: um card em CSS. Copie as regras, ou o prompt que o reconstrói.
CSS
.card-053 {
display: flex;
flex-direction: column;
align-items: center;
gap: 6px;
width: 320px;
padding: 32px 24px;
background: #f8fafc;
border: 2px dashed #cbd5e1;
border-radius: 16px;
font-family: system-ui,sans-serif;
color: #475569;
text-align: center;
cursor: pointer;
transition: background .2s,border-color .2s
}
.card-053 input {
display: none
}
.card-053 svg {
color: #64748b;
margin-bottom: 6px;
transition: transform .2s,color .2s
}
.card-053 b {
font-size: 14px;
color: #0f172a
}
.card-053 span {
font-size: 12px;
color: #94a3b8
}
.card-053:hover {
background: #eff6ff;
border-color: #3b82f6
}
.card-053:hover svg {
color: #3b82f6;
transform: translateY(-3px)
}
.card-053 :is(a,button,input,select,textarea):focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
HTML
<label class="card-053">
<input type="file">
<svg viewBox="0 0 24 24" width="32" height="32" fill="none" stroke="currentColor" stroke-width="1.8"><path d="M12 16V4m0 0l-4 4m4-4l4 4M4 17v2a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-2"/></svg>
<b>Drop files here or click to browse</b>
<span>PNG, JPG or SVG up to 10 MB</span>
</label>Prompt
Crie uma área de upload de 320px como um label ao redor de um input de arquivo oculto: fundo #f8fafc, borda tracejada de 2px #cbd5e1, raio de 16px, padding 32px 24px, layout em coluna centralizado. Um SVG de seta de upload de 32px em #64748b, uma linha 14px bold "Drop files here or click to browse" em #0f172a e uma dica 12px em #94a3b8. No hover o fundo vira #eff6ff, a borda #3b82f6, e o ícone fica azul e sobe 3px.