.container { width: 100%; } .dropzone { position: relative; min-height: 180px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 28px 20px; color: var(--surface-foreground); text-align: center; cursor: pointer; background: #0f1116; border: 1px dashed #353b45; border-radius: 3px; transition: border-color 120ms ease, background 120ms ease; } .dropzone input[type="file"] { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } .dropzone:hover { border-color: #4b6268; background: #12151a; } .dropzone.dragging { border-color: var(--primary); background: #131a1e; } .dropzone.disabled { cursor: not-allowed; opacity: .5; pointer-events: none; } .icon { display: inline-flex; margin-bottom: 12px; color: #697581; } .dropzone:hover .icon, .dropzone.dragging .icon { color: var(--primary); } .title { margin-bottom: 5px; color: #dce1e6; font-size: .82rem; font-weight: 600; } .subtitle { color: #697480; font-size: .69rem; line-height: 1.45; } .error { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 8px; padding: 8px 10px; color: #efa0b7; background: #1d1218; border: 1px solid #49303a; border-radius: 3px; font-size: .7rem; } .error button { margin-left: auto; color: var(--error); flex-shrink: 0; }