winncare / frontend /src /components /UploadView.module.css
esra2001's picture
initial
01a34c2
Raw
History Blame Contribute Delete
2.23 kB
.root {
max-width: 640px;
margin: 0 auto;
display: flex;
flex-direction: column;
gap: 16px;
}
.titleRow {
display: flex;
align-items: center;
justify-content: space-between;
}
.root h2 { font-size: 1.25rem; font-weight: 600; }
.clearCorpusBtn {
background: transparent;
color: var(--error);
border: 1px solid var(--error);
font-size: .82rem;
padding: 5px 14px;
}
.clearCorpusBtn:hover:not(:disabled) { background: #fef2f2; }
.clearCorpusBtn:disabled { opacity: .5; cursor: not-allowed; }
.hint { font-size: .85rem; color: var(--muted); margin-top: -10px; }
.corpusSection { display: flex; flex-direction: column; gap: 8px; }
.corpusLabel { font-size: .82rem; font-weight: 600; color: var(--muted); text-transform: uppercase; letter-spacing: .5px; }
.categoryInput { max-width: 300px; }
.dropzone {
border: 2px dashed var(--border);
border-radius: var(--radius);
padding: 40px;
text-align: center;
cursor: pointer;
color: var(--muted);
transition: border-color .15s, background .15s;
user-select: none;
}
.dropzone:hover, .dragging {
border-color: var(--primary);
background: #eff6ff;
}
.list { list-style: none; display: flex; flex-direction: column; gap: 8px; }
.item {
display: flex;
align-items: center;
gap: 12px;
padding: 10px 14px;
border-radius: var(--radius);
background: var(--surface);
border: 1px solid var(--border);
box-shadow: var(--shadow);
}
.filename { flex: 1; font-size: .9rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.badge {
font-size: .8rem;
font-weight: 500;
white-space: nowrap;
}
.deleteBtn {
background: transparent;
color: var(--muted);
font-size: .85rem;
padding: 2px 8px;
border-radius: 4px;
border: 1px solid transparent;
flex-shrink: 0;
line-height: 1;
}
.deleteBtn:hover:not(:disabled) { color: var(--error); border-color: var(--error); background: #fef2f2; }
.deleteBtn:disabled { opacity: .4; cursor: not-allowed; }
.item[data-state='uploading'] .badge { color: var(--muted); }
.item[data-state='polling'] .badge { color: var(--warning); }
.item[data-state='done'] .badge { color: var(--success); }
.item[data-state='failed'] .badge { color: var(--error); }