/* Fælles upload: Upload · Scan · Drag og slip */
.smart-upload { border: 1px dashed var(--border, #d8d0c4); border-radius: 12px; padding: 12px 14px;
  background: linear-gradient(180deg, rgba(77,184,214,.08), rgba(77,184,214,.02)); transition: border-color .15s, background .15s, box-shadow .15s; }
.smart-upload.drag-over, .smart-upload.drop-prompt { border-color: var(--orange, #f59a28); background: rgba(255,152,56,.10);
  box-shadow: 0 0 0 3px rgba(255,152,56,.16); }
.smart-upload.compact { padding: 10px 12px; }
.smart-upload-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.smart-upload-actions .btn { gap: 7px; font-size: 13.5px; padding: 8px 12px; }
.smart-upload-actions .btn .svg-inline { width: 16px; height: 16px; }
.smart-upload-msg:not(:empty) { margin-top: 8px; font-size: 13px; color: var(--muted, #6b7280); }
.smart-upload-msg.ok { color: #1c7a4a; font-weight: 600; }
.smart-upload-msg.loading { color: var(--navy, #213a4b); }
.smart-upload-pill:not(:empty) { margin-top: 8px; }
.smart-upload-text { margin-top: 8px; }
.smart-upload-text label { display: block; font-size: 12.5px; color: var(--muted, #6b7280); margin-bottom: 4px; }
.smart-upload-text textarea { width: 100%; min-height: 72px; font-size: 13px; padding: 8px 10px; border-radius: 8px;
  border: 1px solid var(--border, #d8d0c4); background: var(--bg, #faf8f4); color: var(--text, #1a1a1a); font-family: inherit; resize: vertical; }
.receipt-item { flex-wrap: wrap; }
.receipt-text { flex: 1 1 100%; font-size: 12px; margin: 4px 0 0; }
.receipt-text summary { cursor: pointer; color: var(--muted, #6b7280); }
.receipt-text pre { white-space: pre-wrap; margin: 4px 0 0; font-size: 11px; max-height: 120px; overflow: auto; }
